/* ============================================================
   SyncDS — Assessment flow (wizard). Loads AFTER home.css.
   ============================================================ */
.as-page .stage{background:radial-gradient(1100px 620px at 50% -8%,rgba(70,120,200,0.13),transparent 62%),radial-gradient(1200px 800px at 50% 116%,rgba(142,199,63,0.11),transparent 60%),linear-gradient(180deg,#070b13 0%,#05080f 55%,#04060c 100%);min-height:100vh;display:flex;flex-direction:column}
.as-page .orbs{opacity:0.5}

.as-bar{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px clamp(18px,4vw,44px);border-bottom:1px solid rgba(255,255,255,0.07)}
.as-logo img{height:38px;width:auto;display:block}
.as-bar-right{display:flex;align-items:center;gap:22px}
.as-quiet{font-family:'DM Mono',monospace;font-size:11.5px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-dim);text-decoration:none;transition:color 160ms ease}
.as-quiet:hover{color:var(--brand-green-bright)}

.as-main[hidden],.as-optin[hidden]{display:none}
.as-main{position:relative;z-index:4;flex:1;display:flex;align-items:center;justify-content:center;padding:clamp(36px,6vw,84px) clamp(18px,4vw,44px)}
.as-wrap{width:100%;max-width:1020px}
.as-wrap-narrow{max-width:760px}
.as-main h1{margin:18px 0 0;font-weight:300;letter-spacing:-0.026em;line-height:1.04;font-size:clamp(34px,4.6vw,58px);color:#fff;text-wrap:balance}
.as-main h1 b{font-weight:600;color:var(--brand-green-bright)}
.as-lede{margin:20px 0 0;font-size:clamp(15px,1.5vw,17.5px);line-height:1.62;color:rgba(243,246,251,0.8);max-width:62ch;text-wrap:pretty}
.as-fine{margin:30px 0 0;font-family:'DM Mono',monospace;font-size:11px;line-height:1.7;letter-spacing:0.02em;color:var(--ink-dim)}

/* ---------- path choice ---------- */
.as-paths{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:38px}
@media (max-width:820px){.as-paths{grid-template-columns:1fr}}
.as-path{position:relative;text-align:left;appearance:none;cursor:pointer;display:grid;gap:12px;padding:30px 30px 28px;border-radius:var(--radius-lg);color:var(--ink);font-family:inherit;background:var(--card-bg,rgba(255,255,255,0.04));border:1px solid rgba(255,255,255,0.13);transition:transform 260ms cubic-bezier(0.2,0.8,0.2,1),border-color 200ms ease,background 200ms ease,box-shadow 260ms ease}
.as-path:hover{transform:translateY(-4px);border-color:rgba(163,216,59,0.5);background:rgba(163,216,59,0.07);box-shadow:0 30px 60px -30px rgba(0,0,0,0.8)}
.as-path:focus-visible{outline:2px solid rgba(163,216,59,0.7);outline-offset:3px}
.as-path-num{font-family:'DM Mono',monospace;font-size:11.5px;letter-spacing:0.14em;color:var(--brand-green)}
.as-path h2{margin:0;font-size:clamp(20px,2.2vw,26px);font-weight:400;letter-spacing:-0.02em;line-height:1.2;color:#fff;max-width:22ch}
.as-path p{margin:0;font-size:14.5px;line-height:1.6;color:var(--ink-muted);text-wrap:pretty}
.as-path-meta{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-dim)}
.as-path-go{position:absolute;top:28px;right:28px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);transition:all 220ms ease}
.as-path-go svg{width:15px;height:15px;color:var(--ink-muted);transition:color 220ms ease}
.as-path:hover .as-path-go{background:var(--cta);border-color:transparent;transform:translateX(3px)}
.as-path:hover .as-path-go svg{color:var(--cta-ink)}

/* ---------- progress ---------- */
.as-progress{margin-bottom:26px}
.as-progress-row{display:flex;justify-content:space-between;gap:12px;font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:10px}
.as-track{height:3px;border-radius:99px;background:rgba(255,255,255,0.09);overflow:hidden}
.as-fill{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--cta) 0%,var(--brand-green-bright) 100%);transition:width 420ms cubic-bezier(0.2,0.8,0.2,1)}

/* ---------- question card ---------- */
.as-card{padding:clamp(26px,3.4vw,44px)}
.as-card h2{margin:0;font-size:clamp(22px,2.7vw,32px);font-weight:300;letter-spacing:-0.022em;line-height:1.18;color:#fff;text-wrap:balance}
.as-card .as-help{margin:12px 0 0;font-size:14px;line-height:1.55;color:var(--ink-muted)}
.as-body{margin-top:26px;display:grid;gap:14px}
.as-anim{animation:asIn 340ms cubic-bezier(0.2,0.8,0.2,1) both}
@keyframes asIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.as-fields{display:grid;gap:14px}
.as-field{display:grid;gap:8px}
.as-field label{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-dim)}
.as-field input{width:100%;box-sizing:border-box;font-family:inherit;font-size:15px;color:var(--ink);background:rgba(255,255,255,0.045);border:1px solid rgba(255,255,255,0.14);border-radius:var(--radius-sm);padding:13px 15px;transition:border-color 160ms ease,background 160ms ease,box-shadow 160ms ease}
.as-field input::placeholder{color:rgba(243,246,251,0.3)}
.as-field input:focus{outline:none;border-color:rgba(163,216,59,0.55);background:rgba(255,255,255,0.07);box-shadow:0 0 0 3px rgba(163,216,59,0.14)}
@media (min-width:620px){.as-fields.as-two{grid-template-columns:1fr 1fr}}
.as-numrow{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px}
.as-numrow .as-n{font-family:'DM Mono',monospace;font-size:12px;color:var(--brand-green);width:18px}

/* radio cards */
.as-opt{position:relative;display:block;cursor:pointer}
.as-opt input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.as-opt span{display:flex;align-items:center;gap:13px;padding:16px 20px;border-radius:var(--radius-md);font-size:15.5px;line-height:1.35;color:var(--ink-muted);background:rgba(255,255,255,0.035);border:1px solid rgba(255,255,255,0.12);transition:transform 200ms ease,border-color 180ms ease,background 180ms ease,color 180ms ease}
.as-opt span::before{content:"";flex:none;width:15px;height:15px;border-radius:50%;border:1.5px solid rgba(255,255,255,0.3);transition:all 180ms ease}
.as-opt:hover span{transform:translateY(-2px);border-color:rgba(255,255,255,0.24);color:var(--ink)}
.as-opt input:checked+span{color:#fff;background:rgba(163,216,59,0.13);border-color:rgba(163,216,59,0.55)}
.as-opt input:checked+span::before{border-color:var(--brand-green-bright);background:var(--brand-green-bright);box-shadow:inset 0 0 0 3.5px rgba(6,14,3,0.9)}
.as-opt input:focus-visible+span{outline:2px solid rgba(163,216,59,0.65);outline-offset:2px}

/* scale */
.as-scale{display:grid;gap:18px;justify-items:center;padding:6px 0 0}
.as-scale-val{font-family:'DM Mono',monospace;font-size:clamp(46px,6vw,72px);line-height:1;color:var(--brand-green-bright);letter-spacing:-0.02em}
.as-scale input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:3px;border-radius:99px;background:rgba(255,255,255,0.14);outline:none}
.as-scale input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--cta);border:2px solid #0b1220;cursor:grab;box-shadow:0 0 0 4px rgba(163,216,59,0.2)}
.as-scale input[type=range]::-moz-range-thumb{width:22px;height:22px;border:2px solid #0b1220;border-radius:50%;background:var(--cta);cursor:grab;box-shadow:0 0 0 4px rgba(163,216,59,0.2)}
.as-scale input[type=range]:focus-visible{box-shadow:0 0 0 3px rgba(163,216,59,0.3)}
.as-scale-labels{display:flex;justify-content:space-between;width:100%;font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-dim)}

/* opt-in + nav */
.as-optin{display:flex;align-items:center;gap:12px;margin-top:20px;cursor:pointer;font-size:14.5px;color:var(--ink-muted)}
.as-optin input{appearance:none;-webkit-appearance:none;flex:none;width:19px;height:19px;margin:0;border-radius:6px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.22);cursor:pointer;transition:all 160ms ease}
.as-optin input:checked{background:var(--cta);border-color:transparent}
.as-optin input:checked::after{content:"";position:absolute;width:10px;height:6px;border-left:2px solid var(--cta-ink);border-bottom:2px solid var(--cta-ink);transform:translate(4px,4px) rotate(-45deg)}
.as-optin input{position:relative;display:grid;place-items:center}
.as-optin:hover{color:var(--ink)}
.as-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:26px}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,0.16);color:var(--ink-muted);cursor:pointer;font-family:inherit}
.btn-ghost:hover{color:#fff;border-color:rgba(255,255,255,0.3)}
.as-nav .btn[disabled]{opacity:0.42;pointer-events:none}
.as-kbd{margin:18px 0 0;font-family:'DM Mono',monospace;font-size:10.5px;letter-spacing:0.08em;text-transform:uppercase;color:rgba(243,246,251,0.28);text-align:center}

/* ---------- completion ---------- */
.as-done{display:grid;gap:18px;justify-items:start}
.as-tick{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(163,216,59,0.16);border:1px solid rgba(163,216,59,0.5)}
.as-tick svg{width:27px;height:27px;color:var(--brand-green-bright)}
.as-done h1{margin:6px 0 0;outline:none}
.as-next{padding:28px 30px;width:100%;box-sizing:border-box}
.as-next ol{margin:16px 0 0;padding:0 0 0 4px;list-style:none;counter-reset:n;display:grid;gap:14px}
.as-next li{counter-increment:n;display:grid;grid-template-columns:auto 1fr;gap:14px;font-size:15px;line-height:1.6;color:var(--ink-muted)}
.as-next li::before{content:counter(n,decimal-leading-zero);font-family:'DM Mono',monospace;font-size:11.5px;letter-spacing:0.1em;color:var(--brand-green);padding-top:4px}
.as-ps{margin:0;font-size:14.5px;color:var(--ink-dim)}
.as-done-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}
