/* LICENA — License Roadmap (wizard + checklist). Mobile-first; tokens from
   styles.css only. Status colors reuse the existing palette: verify green,
   gold, danger, steel. */

.rm-wrap{max-width:680px;margin:0 auto;padding:26px 18px 60px}

/* ---- shared card ---- */
.rw-card{background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:22px 18px;box-shadow:var(--shadow)}
.rw-card h1{font-size:clamp(24px,5.6vw,34px);margin:8px 0 10px}
.rw-card h2{font-size:clamp(19px,4.6vw,24px);margin:14px 0 6px}
.rw-sub{color:var(--steel);font-size:14.5px;line-height:1.55;margin:4px 0 14px}
.rw-q{font-family:'Archivo',sans-serif;font-weight:700;font-size:14.5px;margin:18px 0 8px}
.rw-center{text-align:center}
.rm-intro{padding:34px 20px}
.rm-intro .btn{margin-top:8px}

/* ---- questionnaire ---- */
.rw-prog{display:flex;justify-content:space-between;align-items:baseline;
  font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--steel)}
.rw-prog-note{text-transform:uppercase;letter-spacing:.12em;font-size:10.5px}
.rw-bar{height:5px;background:var(--paper);border-radius:99px;margin:8px 0 4px;overflow:hidden}
.rw-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-deep));border-radius:99px;transition:width .3s}
.rw-opts{display:flex;flex-direction:column;gap:8px;margin:6px 0 2px}
.rw-chip{display:block;width:100%;text-align:left;padding:13px 14px;border-radius:12px;
  border:1.5px solid var(--line);background:var(--card);color:var(--ink);
  font-size:14.5px;line-height:1.35;
  transition:border-color .12s, background .12s}
.rw-chip:hover{border-color:var(--steel)}
.rw-chip.on{border-color:var(--gold-deep);background:#FBF4E3;font-weight:600}
.rw-nav{display:flex;justify-content:space-between;gap:10px;margin-top:20px}
.rw-nav .btn{flex:0 0 auto;text-decoration:none}   /* ссылка-кнопка «назад к плану» не должна выглядеть подчёркнутой ссылкой */
.rw-nav .btn-primary{margin-left:auto;padding:12px 22px}
.btn-ghost{background:transparent;border:1.5px solid var(--line);border-radius:10px;padding:12px 18px}
.rw-shake{animation:rwshake .3s}
@keyframes rwshake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.rw-disc{color:var(--steel);font-size:11.5px;line-height:1.5;margin:18px 0 0;
  border-top:1px solid var(--line);padding-top:12px}

/* ---- roadmap hero + progress ---- */
.rm-hero{margin:4px 0 16px}
.rm-hero h1{font-size:clamp(22px,5.4vw,30px);margin:8px 0 14px}
.rm-journey{display:flex;justify-content:space-between;align-items:baseline;font-size:14px}
.rm-journey strong{font-family:'IBM Plex Mono',monospace;font-size:15px}
.rm-bar{height:10px;background:#fff;border:1px solid var(--line);border-radius:99px;margin:7px 0 8px;overflow:hidden}
.rm-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--verify),#3E9A72);border-radius:99px;transition:width .4s}
.rm-meta{color:var(--steel);font-size:12px}

/* ---- "your next step" ---- */
.rm-next{background:var(--ink);color:#fff;border-radius:16px;padding:20px 18px;margin:0 0 18px;
  box-shadow:0 10px 26px rgba(21,39,61,.25)}
.rm-next-k{font-family:'Archivo',sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:11px;
  font-weight:700;color:var(--gold)}
.rm-next h2{color:#fff;font-size:clamp(18px,4.6vw,22px);margin:8px 0 8px}
.rm-next p{color:#C6D0DA;font-size:14px;line-height:1.55;margin:0 0 14px}
.rm-pos{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink2);margin-top:6px}
.rm-next-ctas{display:flex;flex-wrap:wrap;gap:10px;margin:2px 0 14px}
.rm-next-ctas .rm-cta,.rm-next-ctas .rm-app{margin:0;background:var(--gold);color:var(--ink);
  box-shadow:0 6px 16px rgba(224,161,22,.3)}
.rm-next-ctas .rm-cta:hover,.rm-next-ctas .rm-app:hover{background:#EAB33B}
.rm-next-ctas .rm-app{display:inline-block;padding:11px 18px;border-radius:10px;
  text-decoration:none;font-size:14px;font-family:'Archivo',sans-serif;font-weight:700}
.rm-appx{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 2px}
.rm-appx .btn{padding:11px 18px;font-size:13.5px;text-decoration:none;display:inline-block}
.rm-next .btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}
.rm-next .rm-src{color:#C6D0DA;margin:0 0 14px}
.rm-next p.rm-next-note{font-size:11.5px;color:#8FA1B3;margin:12px 0 0;
  border-top:1px solid rgba(255,255,255,.12);padding-top:10px}
.rm-wyw{background:var(--card);border:1.5px dashed var(--gold-deep);border-radius:14px;
  padding:16px 18px;margin:-6px 0 18px}
.rm-wyw h3{font-family:'Archivo',sans-serif;font-size:13px;text-transform:uppercase;
  letter-spacing:.12em;color:var(--gold-deep);margin:0 0 6px}
.rm-wyw p{color:var(--ink2);font-size:13.5px;line-height:1.5;margin:0 0 12px}
.rm-wyw .rm-next-ctas{margin-bottom:2px}

/* ---- step list ---- */
.rm-list{display:flex;flex-direction:column;gap:10px}
.rm-here{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--gold-deep);font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;margin:4px 0 -2px}
.rm-step{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.rm-step-head{display:flex;align-items:center;gap:12px;width:100%;text-align:left;
  background:none;color:var(--ink);padding:14px;font-size:14.5px}
.rm-dot{flex:0 0 30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:600;background:var(--paper);color:var(--steel);
  border:1.5px solid var(--line)}
.rm-step-t{flex:1;font-weight:600;font-family:'Archivo',sans-serif;letter-spacing:-.01em}
.rm-badge{flex:0 0 auto;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  padding:4px 8px;border-radius:99px;background:var(--paper);color:var(--steel);white-space:nowrap}
.rm-step-body{display:none;padding:2px 16px 16px 56px}
.rm-step.open .rm-step-body{display:block}
@media (max-width:480px){.rm-step-body{padding-left:16px}}
.rm-d{font-size:13.5px;line-height:1.55;color:var(--ink2);margin:6px 0}
.rm-h{font-family:'Archivo',sans-serif;font-weight:700;font-size:12px;text-transform:uppercase;
  letter-spacing:.1em;color:var(--steel);margin:14px 0 2px}
.rm-note{background:#FBF4E3;border:1px solid #EAD9A8;border-radius:10px;padding:10px 12px;
  font-size:13px;line-height:1.5;margin:8px 0}
.rm-src{display:block;font-size:12.5px;color:var(--ink2);text-decoration:underline;margin:10px 0 0;line-height:1.5}
.rm-src-v{color:var(--steel);text-decoration:none}
.rm-cta{display:inline-block;margin:12px 0 2px;padding:11px 18px;border-radius:10px;text-decoration:none;font-size:14px}
.rm-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;
  border-top:1px solid var(--line);padding-top:12px}
.rm-actions .rm-done{padding:10px 16px;font-size:13.5px;border-radius:10px}
.rm-done-lbl{color:var(--verify);font-weight:700;font-size:13.5px}
.rm-status{margin-left:auto;border:1.5px solid var(--line);border-radius:9px;padding:8px 10px;
  font-family:inherit;font-size:12.5px;background:var(--card);color:var(--ink)}

/* status accents */
.rm-step.st-c .rm-dot{background:var(--verify-soft);color:var(--verify);border-color:var(--verify)}
.rm-step.st-c .rm-badge{background:var(--verify-soft);color:var(--verify)}
.rm-step.st-a .rm-dot{border-color:var(--gold-deep);color:var(--gold-deep)}
.rm-step.st-a .rm-badge{background:#FBF4E3;color:var(--gold-deep)}
.rm-step.st-r .rm-badge{background:#FBF4E3;color:var(--gold-deep)}
.rm-step.st-p .rm-badge{background:#E7EDF4;color:var(--ink2)}
.rm-step.st-w{opacity:.85}

/* ---- save block / restart ---- */
.rm-save{background:var(--card);border:1.5px dashed var(--gold-deep);border-radius:14px;
  padding:18px;text-align:center;margin-top:18px}
.rm-save h3{font-size:16px;margin:0 0 6px}
.rm-save .btn{display:inline-block;text-decoration:none}
.rm-save p{color:var(--steel);font-size:13.5px;line-height:1.5;margin:0 0 12px}
.linkbtn.rm-restart{display:block;margin:18px auto 0;background:none;color:var(--steel);
  font-size:13px;text-decoration:underline}

/* ---- landing entry band (index.html) ---- */
.rm-entry{background:var(--ink);color:#fff;padding:34px 0}
.rm-entry-in{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.rm-entry-txt{flex:1 1 380px}
.rm-entry-k{font-family:'Archivo',sans-serif;text-transform:uppercase;letter-spacing:.18em;
  font-size:11px;font-weight:700;color:var(--gold)}
.rm-entry h2{color:#fff;font-size:clamp(21px,4.6vw,28px);margin:8px 0 8px}
.rm-entry p{color:#C6D0DA;font-size:14.5px;line-height:1.55;margin:0;max-width:56ch}
.rm-entry-cta{flex:0 0 auto;background:var(--gold);color:var(--ink);text-decoration:none;
  box-shadow:0 8px 20px rgba(224,161,22,.3)}
.rm-entry-cta:hover{background:#EAB33B}

/* «Мои курсы» в шапке роадмапа и помощника. Собственный класс, а НЕ .top-login:
   тот скрыт медиазапросом лендинга на телефонах, где выход из страницы нужен
   больше всего. Прижата вправо, переключатель языка сразу за ней. */
.top-cab{margin-left:auto;color:#cdd8e3;text-decoration:none;font-family:'Archivo',sans-serif;
  font-weight:600;font-size:14px;white-space:nowrap;transition:color .12s ease}
.top-cab:hover{color:#fff}
.top-cab + .langs{margin-left:0}
/* ≤620px шапка переносится (styles.css): переключатель языка уходит на свою
   строку и снова прижимается вправо — как это уже сделано для .top-cta. */
@media (max-width:620px){ .top-cab + .langs{margin-left:auto} }

/* ---- cabinet entry card (app.html) ---- */
/* Fixed navy on purpose: --ink is the primary TEXT token and flips to near-white
   under css/cabinet-dark.css, which turned this card into white text on a white
   fill (2026-09-11). Navy + hairline border reads on both themes; the gold
   button keeps dark text for the same reason. */
.rm-cab{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#15273D;
  border:1px solid rgba(255,255,255,.14);
  color:#fff;border-radius:16px;padding:18px 20px;margin:14px 0 18px}
.rm-cab-txt{flex:1 1 260px}
.rm-cab h3{color:#fff;font-family:'Archivo',sans-serif;font-size:15.5px;margin:0 0 4px}
.rm-cab p{color:#C6D0DA;font-size:13px;line-height:1.5;margin:0}
.rm-cab .btn{flex:0 0 auto;background:var(--gold);color:#15273D;text-decoration:none;
  padding:11px 18px;font-size:13.5px}

/* wizard dropdown (state / classification) */
.rw-select{display:block;width:100%;margin:6px 0 2px;padding:13px 14px;border-radius:12px;
  border:1.5px solid var(--line);background:var(--card);color:var(--ink);
  font-family:inherit;font-size:15px;line-height:1.35;appearance:auto}
.rw-select:focus{border-color:var(--gold-deep)}

/* ---- v2 dashboard (spec §26): the situation readable in seconds ---- */
.rm-dash{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 18px}
@media (max-width:860px){.rm-dash{grid-template-columns:repeat(2,1fr)}}
.rm-dc{background:var(--card);border:1.5px solid var(--line);border-radius:12px;
  padding:12px 14px;display:flex;flex-direction:column;gap:3px;min-width:0}
.rm-dk{font-family:'Archivo',sans-serif;font-weight:700;font-size:10.5px;text-transform:uppercase;
  letter-spacing:.12em;color:var(--steel)}
.rm-dc strong{font-size:13.5px;line-height:1.4;color:var(--ink);font-weight:700;overflow-wrap:anywhere}
.rm-dd{display:block;font-size:12px;color:var(--ink2);line-height:1.4;font-weight:400}
.rm-dc-date{border-color:var(--gold-deep);background:#FBF4E3}
.rm-drem{font-size:12px;color:var(--gold-deep);font-weight:700;line-height:1.4}

/* ---- ready-to-work checklist (spec §16–19) ---- */
.rm-rtw{background:var(--card);border:1.5px solid var(--line);border-radius:14px;
  padding:18px;margin-top:18px}
.rm-rtw h3{font-size:16.5px;margin:0 0 6px}
.rm-rtw-i{color:var(--ink2);font-size:13.5px;line-height:1.55;margin:0 0 12px}
.rm-rtw-it{border-top:1px solid var(--line);padding:12px 0}
.rm-rtw-it.done{opacity:.72}
.rm-rtw-ck{display:flex;gap:12px;align-items:flex-start;cursor:pointer;
  font-size:13.5px;line-height:1.55;color:var(--ink2)}
.rm-rtw-ck input{margin-top:3px;width:17px;height:17px;flex:0 0 auto;accent-color:var(--gold-deep)}
.rm-rtw-ck strong{color:var(--ink)}
.rm-rtw-ck a{color:var(--ink2);text-decoration:underline}
.rm-rtw-done{background:var(--verify-soft);border:1.5px solid var(--verify);border-radius:12px;
  padding:14px 16px;margin-top:12px;font-size:13.5px;line-height:1.55;color:var(--ink)}
.rm-exp-st{background:#EEF3F8;border-color:#C9D6E4}

/* v3: overdue CSLB deadline on the dashboard (90-day correction / 18-month window) */
.rm-dc-over{border-color:var(--danger);background:var(--danger-soft)}
.rm-dc-over .rm-dd{color:var(--danger);font-weight:700}

/* ── Intake V3: Experience Builder + evidence readiness ─────────────────── */
.rm-compare{display:inline-block;margin:10px 0 2px;font-size:13.5px;color:var(--ink);
  text-decoration:underline}
.rm-exp-list{display:flex;flex-direction:column;gap:14px;margin:10px 0 4px}
.rm-exp-card{border:1px solid var(--line);border-radius:12px;padding:14px 14px 16px;background:#fff}
.rm-exp-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;
  font-family:'Archivo',sans-serif;font-weight:700;font-size:13px;color:var(--steel)}
.rm-exp-month{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.rm-exp-month .rm-my{flex:1 1 220px;min-width:0}
.rm-exp-cur{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--ink);
  white-space:nowrap}
.rm-exp-cur input{width:18px;height:18px;accent-color:var(--ink)}
.rm-exp-add{margin-top:6px}
.rm-ready{margin-top:16px;border:1px solid var(--line);border-radius:12px;padding:14px 16px;
  background:#fff}
.rm-ready-h{font-family:'Archivo',sans-serif;font-weight:700;font-size:12px;text-transform:uppercase;
  letter-spacing:.1em;color:#8A5C06;margin-bottom:10px}
.rm-ready-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.rm-ready-grid span{display:block;font-size:12.5px;color:var(--steel)}
.rm-ready-grid b{font-family:'Archivo',sans-serif;font-size:19px;letter-spacing:-.01em}
.rm-ready-caution{margin:12px 0 0;font-size:13.5px;line-height:1.55;color:var(--ink)}
.rm-ready-warn{margin:10px 0 0;padding-left:18px;font-size:13px;line-height:1.5;color:var(--danger)}
.rm-ready-warn li{margin:3px 0}
.rm-waiver{border-color:var(--gold);background:#FDF6E6}
.rm-waiver-h{font-family:'Archivo',sans-serif;font-weight:700;font-size:13px;margin:10px 0 4px}
.rm-waiver ul{margin:4px 0 8px;padding-left:18px;font-size:13.5px;line-height:1.5}
@media (max-width:560px){ .rm-ready-grid{grid-template-columns:1fr} }

/* V3 fix 2026-08-31: secondary business types behind "Other business type" */
.rm-ent-more{margin:10px 0 0;padding:12px 14px 14px;border:1px dashed var(--line);
  border-radius:12px;background:#fff}
.rm-ent-more[hidden]{display:none}
/* Remove-period control: roadmap.html does not load cabinet.css, whose dark
   .linkbtn base this class name comes from — style it for the light card. */
.rm-exp-hd .linkbtn{background:none;color:var(--steel);font-size:13px;
  text-decoration:underline;padding:4px 6px;border-radius:6px}
.rm-exp-hd .linkbtn:hover{color:var(--danger)}
.rm-note[hidden]{display:none}

/* ══ CONVERSATIONAL INTAKE V3 (owner spec 2026-09-04) ═══════════════════════
   One question open at a time; answered blocks fold into "✓ answer · Change"
   rows. Palette unchanged (deep blue / white / gold); every state — selected,
   hover, focus, error — is explicit, and motion respects the OS setting. */
.cv-flow{padding:18px 16px 20px}
.cv-prog{margin:0 0 14px}
.cv-prog>span{display:block;font-family:'Archivo',sans-serif;font-size:10.5px;
  text-transform:uppercase;letter-spacing:.12em;color:var(--steel);margin-bottom:6px}
.cv-u{margin:0 0 4px}
.cv-open{padding:6px 0 10px}
.cv-h{font-size:clamp(18px,4.4vw,23px);line-height:1.3;margin:14px 0 6px;outline:none}
.cv-h:focus-visible{outline:3px solid var(--ink);outline-offset:4px;border-radius:6px}
.cv-flow .rw-select:focus-visible,.cv-flow .linkbtn:focus-visible,.cv-flow .btn:focus-visible,
.cv-flow summary:focus-visible,.cv-flow input:focus-visible,.rm-step :focus-visible,
.rm-rtw input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}

/* answer cards */
.cv-opts{display:flex;flex-direction:column;gap:9px;margin:8px 0 4px}
.cv-card{position:relative;display:block;width:100%;text-align:left;
  padding:14px 44px 14px 15px;border-radius:12px;border:1.5px solid var(--line);
  background:var(--card);color:var(--ink);font-size:15px;line-height:1.35;
  min-height:48px;cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.cv-card:hover{border-color:var(--steel);background:#EEF2F7}
.cv-card:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-color:var(--gold-deep);
  box-shadow:none}
.cv-card.on{border-color:var(--gold-deep);background:#FBF4E3;font-weight:600;
  box-shadow:0 2px 10px rgba(224,161,22,.16)}
.cv-ct{display:block}
.cv-cs{display:block;font-size:13px;line-height:1.45;color:var(--ink2);font-weight:400;margin-top:3px}
.cv-ck{position:absolute;right:14px;top:50%;transform:translateY(-50%);
  width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:700;color:#fff;background:var(--gold-deep);opacity:0;
  transition:opacity .16s ease}
.cv-card.on .cv-ck{opacity:1}

/* answered blocks, folded */
.cv-row{border-bottom:1px solid var(--line)}
.cv-rowin{display:flex;align-items:flex-start;gap:10px;padding:11px 2px}
.cv-rowt{flex:1;min-width:0;font-size:13.5px;line-height:1.5}
.cv-tick{color:var(--verify);font-weight:700;margin-right:7px}
.cv-rowl{color:var(--steel)}
.cv-rowv{display:block;margin-left:20px;color:var(--ink);font-weight:600;overflow-wrap:anywhere}
.cv-rown{display:block;margin-left:20px;color:var(--ink2);font-weight:400;font-size:12.5px;margin-top:2px}
.cv-chg{flex:0 0 auto;background:none;color:var(--ink2);font-size:13px;text-decoration:underline;
  padding:6px;border-radius:6px;min-height:32px}
.cv-chg:hover{color:var(--gold-deep)}
.cv-sticky{padding:4px 0 8px;border-bottom:1px solid var(--line)}

/* the likely path: one line, explanation on demand */
.cv-path{border-left:3px solid var(--gold-deep);padding:4px 0 4px 14px;margin:10px 0 6px}
.cv-path-l{font-size:15px;line-height:1.45;color:var(--ink)}
.cv-path-l b{font-family:'Archivo',sans-serif;font-weight:700}
.cv-path .cv-why{margin:4px 0 0}
.cv-path-b{font-size:13.5px;line-height:1.55;color:var(--ink2);margin:6px 0 4px}
.cv-path-a{background:none;color:var(--ink2);font-size:13px;text-decoration:underline;
  padding:4px 0;display:inline-block}

/* state + classification, always in view above the conversation */
.cv-ctx{font-family:'Archivo',sans-serif;font-weight:700;font-size:12px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ink2);margin:0 0 10px}
/* periods from another state's questionnaire, offered — never copied silently */
.cv-import p{margin:6px 0 10px}
.cv-import-a{display:flex;flex-wrap:wrap;gap:8px}
.cv-import-a .btn{padding:10px 16px;font-size:13.5px}

/* secondary "no" answers: one small line each */
.cv-rowmin .cv-rowin{padding:7px 2px}
.cv-rowmin .cv-rowt{font-size:13px}
.cv-rowmin .cv-rowv{display:inline;margin-left:6px}

/* buttons the spec allows, and inline errors */
.cv-save,.cv-go{margin-top:14px;padding:13px 22px;border-radius:11px;font-size:15px}
.cv-go{width:100%}
.cv-acts{display:flex;flex-direction:column;gap:9px;margin:10px 0 2px}
.cv-acts .btn{width:100%;padding:13px 18px;font-size:14.5px}
.cv-err{color:var(--danger);font-size:12.5px;line-height:1.45;margin:5px 0 0}
.cv-form{border:1px solid var(--line);border-radius:12px;padding:14px 14px 16px;
  background:#fff;margin:10px 0 4px}
.cv-dur{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink2);margin:8px 0 2px}
.cv-why{margin:10px 0 4px;font-size:13px}
.cv-why summary{cursor:pointer;color:var(--ink2);text-decoration:underline;padding:4px 0}
.cv-why summary::-webkit-details-marker{color:var(--steel)}
.cv-more{margin-top:12px}
.cv-more summary{cursor:pointer;font-size:13.5px;color:var(--ink2);text-decoration:underline}

/* saved work periods, compact */
.cv-per{position:relative;border:1px solid var(--line);border-radius:12px;
  padding:12px 14px;background:#fff}
.cv-per-n{font-family:'Archivo',sans-serif;font-weight:700;font-size:14.5px;color:var(--ink)}
.cv-per-d{font-size:13px;color:var(--ink2);margin-top:3px}
.cv-per-m{font-size:12.5px;color:var(--steel);margin-top:2px}
.cv-per-a{display:flex;gap:14px;margin-top:8px}
.cv-per-a .linkbtn{background:none;color:var(--ink2);font-size:12.5px;text-decoration:underline;
  padding:4px 0;min-height:30px}
.cv-per-a .cv-del:hover{color:var(--danger)}

/* summary + final call to action */
.cv-sum{margin-top:16px;border-top:1px solid var(--line);padding-top:6px}
.cv-sum-line{font-size:14.5px;line-height:1.55;color:var(--ink);font-weight:600;margin:6px 0 4px;
  overflow-wrap:anywhere}
.cv-all{margin:8px 0 4px}
.cv-all>summary{cursor:pointer;font-size:14px;color:var(--ink2);text-decoration:underline;padding:6px 0}
.cv-all .cv-u{margin:0}

/* month + year fields (experience only): two selects, no grid, no "Done" */
.rm-my{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8px;margin:6px 0 2px}
.rm-my .rw-select{margin:0}
.rm-my select:disabled{opacity:.5;cursor:not-allowed}
.rm-compare-b ul{margin:6px 0 8px;padding-left:18px;font-size:13.5px;line-height:1.5}
.rm-final-l{margin:4px 0 8px;padding-left:18px;font-size:13.5px;line-height:1.5}
.rm-final-l li{margin:3px 0}
.rm-final-l a{color:var(--ink2);text-decoration:underline}
.rm-dba-x{font-size:12.5px;color:var(--ink2);margin:4px 0 8px}
.rm-dba-o{display:flex;flex-wrap:wrap;gap:8px}
.rm-dba-b{padding:9px 14px;border-radius:10px;border:1.5px solid var(--line);background:#fff;
  color:var(--ink);font-size:13.5px;min-height:40px}
.rm-dba-b:hover{background:#EEF2F7;border-color:var(--steel)}
.rm-dba-b.on{border-color:var(--gold-deep);background:#FBF4E3;font-weight:600}
.rm-dba-n{margin:8px 0 0;font-size:13px}
.rm-compare-b li{margin:3px 0}

/* the reveal: a question appears, it never jumps into place */
@keyframes cvIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cv-open,.cv-sum{animation:cvIn .32s ease both}
.cv-picked{opacity:.75;transition:opacity .2s ease}
@media (prefers-reduced-motion:reduce){
  .cv-open,.cv-sum{animation:none}
  .cv-card,.cv-ck,.cv-picked{transition:none}
}
@media (max-width:400px){
  .cv-flow{padding:16px 13px 18px}
}

/* ── Experience period card: three short groups (owner spec 2026-09-05) ──── */
.cv-grp{border-top:1px solid var(--line);margin:16px 0 0;padding-top:14px}
.cv-grp:first-child{border-top:0;margin-top:0;padding-top:0}
.cv-grp-h{display:flex;align-items:center;gap:9px;font-family:'Archivo',sans-serif;
  font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--steel);margin:0 0 4px}
.cv-grp-h span{flex:0 0 22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:0}
.cv-ta{min-height:84px;resize:vertical;line-height:1.5;font-family:inherit}
/* document types: several may be true at once, so they wrap as compact chips */
.cv-multi{flex-direction:row;flex-wrap:wrap;gap:8px}
.cv-multi .cv-card{width:auto;flex:1 1 44%;padding:12px 38px 12px 13px;font-size:14px;min-height:44px}
.cv-per-v{font-size:12.5px;color:var(--ink2);margin-top:3px}
.cv-per-w{font-size:12.5px;color:var(--gold-deep);font-weight:600;margin-top:5px}
.rm-ready-info{margin:10px 0 0;padding-left:18px;font-size:13px;line-height:1.5;color:var(--ink2)}
.rm-ready-info li{margin:3px 0}
@media (max-width:400px){ .cv-multi .cv-card{flex:1 1 100%} }
.cv-form [hidden]{display:none}
/* Experience Builder opened from the plan's experience step (2026-09-10) */
.rm-expb-t{margin-top:10px}
.rm-expb{margin-top:14px;border-top:1px solid var(--line);padding-top:4px}
.rm-expb .cv-h{font-size:17px;margin-top:14px}
.rm-expb .cv-open{animation:none}
.rm-xq b{color:var(--ink)}
/* preliminary experience estimate: the CSLB-decides line (2026-09-10) */
.rm-ready-disc{color:var(--ink2);font-size:12.5px}
/* hand-set status note, open-items warning, official-link button, "change my answers" (2026-09-10) */
.rm-manual{font-size:12.5px;color:var(--ink2);margin:8px 0 0}
.rm-deps{background:#FFF4E5;border-color:#F0C98A}
.rm-appx{display:flex;flex-wrap:wrap;gap:8px}
.rm-official{padding:12px 16px}
.rm-edit{margin-right:16px}
.rm-fix{margin-top:12px;padding:12px 14px;border:1px solid #F0C98A;background:#FFF4E5;border-radius:10px}
.rm-fix-q{margin:0 0 6px;font-weight:600}
.rm-fix .rm-note{margin:0 0 10px}
.cv-back{margin:0 0 10px}
.rm-cf{margin:6px 0 10px}
