/* Кабинет и анкета подбора. Только var(--…) — сырые цвета ловит build.py --check. */
#kabinet-root{margin-top:var(--space-6);display:grid;gap:var(--space-4);max-width:860px}
.kab-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:clamp(20px,3vw,36px);box-shadow:var(--shadow-1)}
.kab-card h2{margin:0 0 var(--space-3)}
.kab-msg{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-card);background:var(--color-surface-sunken);font-size:var(--font-small-size)}
.kab-msg--warn{background:var(--color-part-bg);color:var(--color-part)}
.kab-msg--ok{background:var(--color-yes-bg);color:var(--color-yes)}
#tg-login{margin:var(--space-5) 0 var(--space-4);min-height:44px}

.kab-form{display:grid;gap:var(--space-5)}
.kab-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.kab-field{display:grid;gap:var(--space-2);font-size:var(--font-small-size);font-weight:600}
.kab-field select,.kab-field textarea{font:400 var(--font-body-size)/1.4 var(--font-family);color:var(--color-text);background:var(--color-surface);
  border:1.5px solid var(--color-border);border-radius:var(--radius-small);padding:var(--space-3) var(--space-4);min-height:48px;width:100%}
.kab-field select:focus,.kab-field textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-surface-brand)}
.kab-group{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:var(--space-2)}
.kab-group legend{font-weight:600;font-size:var(--font-small-size);margin-bottom:var(--space-2);padding:0}
.kab-option{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);
  border-radius:var(--radius-card);cursor:pointer;background:var(--color-surface);transition:border-color var(--motion-fast) var(--motion-ease)}
.kab-option:hover{border-color:var(--color-border-strong)}
.kab-option:has(input:checked){border-color:var(--color-primary);background:var(--color-surface-brand)}
.kab-option input{margin-top:4px;accent-color:var(--color-primary)}
.kab-option span{display:grid;gap:2px;font-size:var(--font-small-size)}
.kab-option small{color:var(--color-text-muted);font-size:var(--font-caption-size)}
.kab-consent{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--font-small-size)}
.kab-consent input{margin-top:4px;accent-color:var(--color-primary)}
.kab-form .btn{justify-self:start}
.kab-form .btn:disabled{opacity:.6;cursor:progress;transform:none}

.kab-summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}
.kab-summary p{margin:var(--space-1) 0 0;font-weight:600}
.kab-matches{display:grid;gap:var(--space-4)}
.kab-match{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:clamp(18px,2.6vw,28px)}
.kab-match header{display:flex;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;align-items:baseline}
.kab-match h3{margin:0}
.kab-match h3 a{color:var(--color-text);text-decoration:none}
.kab-badges{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;font-size:var(--font-caption-size);color:var(--color-text-muted)}
.kab-label{margin:var(--space-4) 0 var(--space-1);font-size:var(--font-caption-size);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}
.kab-list{margin:0;padding-left:var(--space-5);font-size:var(--font-small-size)}
.kab-list--yes li::marker{color:var(--color-yes)}
.kab-match footer{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;margin-top:var(--space-4)}
.kab-footer{padding:var(--space-4) var(--space-5)}
.kab-link{background:none;border:0;padding:0;font:inherit;color:var(--color-link);text-decoration:underline;cursor:pointer}
@media (max-width:760px){.kab-row{grid-template-columns:1fr}}
