.shell .dsx-top{padding:14px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-default);background:#fff;position:sticky;top:0;z-index:30}.shell .dsx-top .top-r{display:flex;align-items:center;gap:16px;font-size:13.5px;color:var(--ink-700)}.shell .dsx-top .top-r a{color:var(--green-700);text-decoration:none;font-weight:500}.shell .dsx-top .top-r a:hover{text-decoration:underline}.shell .dsx-logo{display:flex;align-items:center;gap:10px;text-decoration:none}a.dsx-logo{cursor:pointer}a.dsx-logo:hover .name{color:var(--green-700)}a.dsx-logo:focus-visible{outline:2px solid var(--green-600,#2f7a55);outline-offset:4px;border-radius:8px}.shell .dsx-logo .mark{flex:none;background:var(--green-brand);border-radius:6px;width:28px;height:28px;position:relative}.shell .dsx-logo .mark svg{position:absolute;inset:0}.shell .dsx-logo .name{font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:-.03em;color:var(--ink-900)}.shell .dsx-logo .name .stop{color:var(--green-700);font-style:italic}.shell .dsx-stage{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:46px 20px 90px;width:100%}.shell .dsx-screen{width:100%;animation:dsx-scin .32s var(--ease-enter)}@keyframes dsx-scin{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.shell .dsx-col{max-width:524px;margin:0 auto}.shell .dsx-col.wide{max-width:720px}.shell .funnel-dots{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:26px}.shell .funnel-dots i{width:7px;height:7px;border-radius:50%;background:var(--paper-4);transition:background var(--motion-base),width var(--motion-base);display:block}.shell .funnel-dots i.on{background:var(--green-500);width:22px;border-radius:9999px}.shell .funnel-dots i.past{background:var(--green-300)}.shell .dsx-card{background:var(--paper-0);border:1px solid var(--border-default);border-radius:22px;padding:32px;box-shadow:var(--shadow-card)}.shell .lead{margin-bottom:24px}.shell .lead .kick{font-family:var(--font-mono);font-size:12px;color:var(--ink-500);display:inline-flex;align-items:center;gap:9px;margin-bottom:14px}.shell .lead .kick .pulse{width:8px;height:8px;border-radius:50%;background:var(--green-500);animation:pulse 1.8s ease-in-out infinite}.shell .lead h1{font-family:var(--font-display);font-weight:500;font-size:34px;line-height:1.06;letter-spacing:-.02em;margin:0 0 11px;color:var(--ink-900)}.shell .lead h1 em{font-style:italic;color:var(--green-700)}.shell .lead p{font-size:15px;line-height:1.55;color:var(--ink-700);margin:0;max-width:50ch}.shell .lead p b{font-weight:600;color:var(--ink-900)}@media (max-width:560px){.shell .lead h1{font-size:28px}.shell .dsx-card{padding:24px}.shell .dsx-stage{padding:30px 16px 64px}}.shell .grp{margin-bottom:24px}.shell .grp-head{font-size:13px;font-weight:600;color:var(--ink-900);margin-bottom:14px;padding-bottom:9px;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:baseline}.shell .grp-head .meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-500);font-weight:400}.shell .disc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:540px){.shell .disc-row{grid-template-columns:1fr}}.shell .disc{position:relative;border:1.5px solid var(--border-default);border-radius:15px;padding:18px 17px;background:#fff;cursor:pointer;text-align:left;transition:all var(--motion-fast);font-family:inherit;width:100%}.shell .disc:hover{border-color:var(--ink-700)}.shell .disc.on{border-color:var(--green-600);background:var(--green-50)}.shell .disc.on:after{content:"✓";position:absolute;top:13px;right:14px;width:21px;height:21px;border-radius:50%;background:var(--green-600);color:#fff;display:grid;place-items:center;font-size:12px}.shell .disc .dt{font-size:15.5px;font-weight:600;color:var(--ink-900);letter-spacing:-.01em}.shell .disc.on .dt{color:var(--green-800)}.shell .disc .dd{font-size:12.5px;color:var(--ink-500);margin-top:5px;line-height:1.45;max-width:22ch}.shell .soft-prompt{display:flex;gap:13px;align-items:flex-start;margin-top:14px;padding:15px 17px;background:#fff;border:1px solid var(--green-300);border-radius:14px;animation:dsx-fade .28s var(--ease-enter)}.shell .soft-prompt .sp-ic{flex:none;width:32px;height:32px;border-radius:9px;background:var(--green-50);border:1px solid var(--green-300);display:grid;place-items:center;color:var(--green-700);font-size:15px}.shell .soft-prompt .sp-b{flex:1}.shell .soft-prompt .sp1{font-size:13.5px;font-weight:600;color:var(--ink-900)}.shell .soft-prompt .sp2{font-size:12.5px;color:var(--ink-700);margin-top:3px;line-height:1.5}.shell .soft-prompt .sp-act{display:flex;gap:8px;margin-top:11px}@keyframes dsx-fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.shell .field-error{display:flex;align-items:center;gap:6px;overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height var(--motion-base) var(--ease-standard),opacity var(--motion-base),margin-top var(--motion-base);font-size:12px;color:var(--error-700)}.shell .field-error.show{max-height:40px;opacity:1;margin-top:6px}.shell .field-error:before{content:"!";flex:none;width:14px;height:14px;border-radius:50%;background:var(--error-500);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center}.shell .pw-wrap{position:relative}.shell .pw-wrap .peek{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:11px;color:var(--ink-500);cursor:pointer;background:none;border:0;padding:4px 6px}.shell .pw-wrap .peek:hover{color:var(--ink-900)}.shell .pw-wrap .input{padding-right:54px}.shell .dsx-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:26px}.shell .dsx-actions.end{justify-content:flex-end}.shell .dsx-actions .a-right{display:flex;gap:8px;align-items:center}.shell .back-link{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink-500);cursor:pointer;background:none;border:0;font-weight:500;padding:8px 4px;font-family:inherit}.shell .back-link:hover,.shell .code-to{color:var(--ink-900)}.shell .code-to{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;background:var(--paper-1);border:1px solid var(--border-default);border-radius:11px;font-size:13.5px;margin-bottom:22px}.shell .code-to .em{font-weight:600}.shell .code-to .edit{font-family:var(--font-mono);font-size:11px;color:var(--green-700);cursor:pointer;margin-left:4px;background:none;border:0}.shell .code-boxes{display:flex;gap:10px;margin-bottom:6px}@media (max-width:480px){.shell .code-boxes{gap:7px}}.shell .code-boxes input{flex:1;min-width:0;aspect-ratio:1/1.18;text-align:center;font-family:var(--font-mono);font-size:26px;font-weight:500;color:var(--ink-900);border:1.5px solid var(--border-default);border-radius:13px;background:#fff;transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background var(--motion-fast)}.shell .code-boxes input:focus{outline:none;border-color:var(--green-500);box-shadow:var(--shadow-focus)}.shell .code-boxes input.filled{border-color:var(--green-400);background:var(--green-50)}.shell .code-boxes.err input{border-color:var(--error-500);background:var(--error-50)}.shell .code-boxes.err{animation:dsx-shake .4s}@keyframes dsx-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(7px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}.shell .code-msg{min-height:20px;font-size:13px;margin-bottom:18px;display:flex;align-items:center;gap:7px}.shell .code-msg.err{color:var(--error-700)}.shell .code-msg.err:before{content:"!";width:14px;height:14px;border-radius:50%;background:var(--error-500);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center}.shell .code-msg.ok{color:var(--green-700)}.shell .resend{font-size:13px;color:var(--ink-500);display:flex;align-items:center;gap:8px}.shell .resend a,.shell .resend button{color:var(--green-700);font-weight:500;cursor:pointer;text-decoration:none;background:none;border:0;padding:0;font-size:inherit;font-family:inherit}.shell .resend a.disabled,.shell .resend button.disabled,.shell .resend button:disabled{color:var(--ink-400);cursor:default;pointer-events:none}.shell .verify-ok{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 0 4px}.shell .verify-ok .ring{width:66px;height:66px;border-radius:50%;background:var(--green-600);display:grid;place-items:center;color:#fff;font-size:30px;margin-bottom:18px;animation:dsx-pop .5s var(--ease-enter)}@keyframes dsx-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.shell .verify-ok h2{font-family:var(--font-display);font-weight:500;font-size:24px;margin:0 0 6px;color:var(--ink-900)}.shell .verify-ok p{font-size:14px;color:var(--ink-700);margin:0}.shell .dsx-interim{margin-top:22px;padding:16px 18px;border:1px dashed var(--paper-5);border-radius:14px;background:var(--paper-1);font-size:13px;color:var(--ink-500);text-align:center;font-family:var(--font-mono)}.shell .toast-wrap{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);z-index:90;opacity:0;pointer-events:none;transition:opacity var(--motion-base),transform var(--motion-base)}.shell .toast-wrap.show{opacity:1;transform:translateX(-50%) translateY(0)}.shell .toast-in{display:flex;align-items:center;gap:12px;background:var(--ink-900);color:#fff;padding:13px 18px;border-radius:12px;box-shadow:var(--shadow-modal);font-size:14px}.shell .toast-in .ti{width:22px;height:22px;border-radius:50%;background:var(--green-500);display:grid;place-items:center;color:#fff;font-size:13px;flex:none}.shell .dsx-foot{padding:18px 28px 24px;border-top:1px solid var(--border-default);color:var(--ink-500);font-family:var(--font-mono);font-size:11px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.shell.dsx-shell{display:flex;flex-direction:column;min-height:100vh;background:var(--paper-1);color:var(--text-primary);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;--font-sans:var(--font-geist-sans);font-family:var(--font-sans)}.shell.dsx-shell a{color:inherit}.shell.dsx-shell ::-moz-selection{background:var(--green-200);color:var(--ink-900)}.shell.dsx-shell ::selection{background:var(--green-200);color:var(--ink-900)}@media (prefers-reduced-motion:reduce){.shell.dsx-shell *,.shell.dsx-shell :after,.shell.dsx-shell :before{animation-duration:0!important;animation-iteration-count:1!important;transition-duration:0!important;scroll-behavior:auto!important}}.shell .wsteps{margin-bottom:28px}.shell .wsteps ol{list-style:none;margin:0;padding:0;display:flex;align-items:flex-start;position:relative}.shell .wsteps li{flex:1;display:flex;flex-direction:column;align-items:center;gap:9px;position:relative;cursor:default}.shell .wsteps li.clickable{cursor:pointer}.shell .wsteps li .track{position:absolute;top:16px;height:2px;background:var(--paper-4);left:-50%;right:50%;z-index:0;transition:background var(--motion-slow) var(--ease-standard)}.shell .wsteps li:first-child .track{display:none}.shell .wsteps li.current .track,.shell .wsteps li.done .track{background:var(--green-500)}.shell .wsteps li .wn{position:relative;z-index:1;width:34px;height:34px;border-radius:50%;background:#fff;border:1.5px solid var(--paper-4);display:grid;place-items:center;font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--ink-500);transition:background var(--motion-base),border-color var(--motion-base),color var(--motion-base),box-shadow var(--motion-base)}.shell .wsteps li.current .wn{border-color:var(--green-600);color:var(--green-700);box-shadow:var(--shadow-focus)}.shell .wsteps li.done .wn{background:var(--green-600);border-color:var(--green-600);color:#fff}.shell .wsteps li.done .wn .num{display:none}.shell .wsteps li.done .wn:after{content:"✓";animation:dsx-checkpop .42s var(--ease-enter)}@keyframes dsx-checkpop{0%{transform:scale(0);opacity:0}55%{transform:scale(1.25)}to{transform:scale(1);opacity:1}}.shell .wsteps li .wl{font-size:12.5px;font-weight:500;color:var(--ink-500);text-align:center;letter-spacing:-.005em;transition:color var(--motion-base)}.shell .wsteps li.current .wl{color:var(--ink-900);font-weight:600}.shell .wsteps li.done .wl{color:var(--ink-700)}.shell .wsteps .mbar,.shell .wsteps .mobi{display:none}@media (max-width:560px){.shell .wsteps ol{display:none}.shell .wsteps .mobi{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.shell .wsteps .mobi .mt{font-family:var(--font-display);font-weight:500;font-size:21px;letter-spacing:-.015em;color:var(--ink-900)}.shell .wsteps .mobi .mc{font-family:var(--font-mono);font-size:11.5px;color:var(--green-700);font-weight:500}.shell .wsteps .mbar{display:block;height:6px;border-radius:4px;background:var(--paper-3);overflow:hidden}.shell .wsteps .mbar i{display:block;height:100%;background:var(--green-500);border-radius:4px;transition:width var(--motion-slow) var(--ease-standard)}}.shell .pane{animation:dsx-fade .26s var(--ease-enter)}.shell .phead{margin-bottom:24px}.shell .phead .pk{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-500);margin-bottom:10px}.shell .phead h1{font-family:var(--font-display);font-weight:500;font-size:30px;line-height:1.08;letter-spacing:-.02em;margin:0 0 10px;color:var(--ink-900)}.shell .phead p{font-size:14.5px;line-height:1.55;color:var(--ink-700);margin:0;max-width:52ch}.shell .phead p b{font-weight:600;color:var(--ink-900)}@media (max-width:560px){.shell .phead h1{font-size:25px}}.shell .frow{display:grid;grid-template-columns:1fr 1fr;gap:15px}.shell .frow .full{grid-column:span 2}@media (max-width:540px){.shell .frow{grid-template-columns:1fr}.shell .frow .full{grid-column:auto}}.shell .scope-list{display:flex;flex-direction:column;gap:10px}.shell .scope-opt{display:flex;align-items:center;gap:15px;padding:16px 18px;border:1.5px solid var(--border-default);border-radius:15px;background:#fff;cursor:pointer;text-align:left;width:100%;font-family:inherit;transition:all var(--motion-fast)}.shell .scope-opt:hover{border-color:var(--ink-700)}.shell .scope-opt.on{border-color:var(--green-600);background:var(--green-50)}.shell .scope-opt .sradio{flex:none;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--paper-5);display:grid;place-items:center;margin-top:1px}.shell .scope-opt.on .sradio{border-color:var(--green-600)}.shell .scope-opt.on .sradio:after{content:"";width:9px;height:9px;border-radius:50%;background:var(--green-600)}.shell .scope-opt .sb{flex:1;min-width:0}.shell .scope-opt .sb .st{display:block;font-size:15px;font-weight:600;color:var(--ink-900);letter-spacing:-.01em}.shell .chip-row{display:flex;flex-wrap:wrap;gap:8px}.shell .chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--border-default);background:#fff;border-radius:9999px;font-size:13.5px;color:var(--ink-700);cursor:pointer;transition:all var(--motion-fast);font-family:inherit}.shell .chip:hover{border-color:var(--ink-900)}.shell .chip.on{border-color:var(--green-600);background:var(--green-50);color:var(--green-800);font-weight:500}.shell .chip.on:before{content:"✓";color:var(--green-700);font-weight:600}.shell .reg-note{margin-top:13px;font-size:12.5px;color:var(--ink-500);line-height:1.5;display:flex;gap:9px;align-items:flex-start;padding:12px 15px;background:var(--paper-2);border-radius:11px}.shell .reg-note b{color:var(--ink-900);font-weight:600}.shell .rate-read-big{font-family:var(--font-display);font-weight:500;font-size:30px;letter-spacing:-.02em;color:var(--ink-900)}.shell .rate-read-big .u{font-family:var(--font-mono);font-size:13px;color:var(--ink-500);font-weight:400;margin-left:5px}.shell .rate-bar{margin-top:12px;height:7px;border-radius:4px;background:var(--paper-3);position:relative;overflow:hidden}.shell .rate-bar span{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,var(--green-400),var(--green-600));border-radius:4px;transition:left var(--motion-base) var(--ease-standard),right var(--motion-base) var(--ease-standard)}.shell .rate-scale{margin-top:6px;font-family:var(--font-mono);font-size:11px;color:var(--ink-500);display:flex;justify-content:space-between}.shell .rate-inputs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.shell .rate-affix{position:relative}.shell .rate-affix .pre{left:14px;font-size:15px}.shell .rate-affix .pre,.shell .rate-affix .suf{position:absolute;top:50%;transform:translateY(-50%);font-family:var(--font-mono);color:var(--ink-500);pointer-events:none}.shell .rate-affix .suf{right:14px;font-size:12px}.shell .rate-affix .input{padding-left:26px;padding-right:40px;font-variant-numeric:tabular-nums}.shell .carried{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--green-300);background:var(--green-50);border-radius:13px}.shell .carried .cl{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--green-700)}.shell .carried .cv{font-size:15px;font-weight:600;color:var(--ink-900);margin-top:3px}.shell .carried .edit{font-family:var(--font-mono);font-size:12px;color:var(--green-700);cursor:pointer;background:none;border:0;flex:none}.shell .carried .edit:hover{text-decoration:underline}.shell .save-link{font-family:var(--font-mono);font-size:12px;color:var(--ink-500);cursor:pointer;background:none;border:0;display:inline-flex;align-items:center;gap:7px;padding:6px 2px}.shell .save-link:hover{color:var(--ink-900)}.shell .save-link:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green-500)}.shell .save-link.saved{color:var(--green-700)}.shell .save-link.saved:before{background:var(--green-600)}.shell .done-head{text-align:center;margin-bottom:28px}.shell .done-head .ring{width:64px;height:64px;border-radius:50%;background:var(--green-600);display:grid;place-items:center;color:#fff;font-size:29px;margin:0 auto 20px;animation:dsx-pop .5s var(--ease-enter)}.shell .done-head h1{font-family:var(--font-display);font-weight:500;font-size:34px;line-height:1.05;letter-spacing:-.02em;margin:0 0 11px;color:var(--ink-900)}.shell .done-head h1 em{font-style:italic;color:var(--green-700)}.shell .done-head p{font-size:15px;line-height:1.55;color:var(--ink-700);margin:0 auto;max-width:44ch}.shell .summary{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border-default);border-radius:16px;overflow:hidden;background:#fff;margin-bottom:22px}.shell .srow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid var(--border-subtle)}.shell .srow:last-child{border-bottom:0}.shell .srow .sk{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-500);padding-top:2px;flex:none;width:118px}.shell .srow .sv{font-size:14px;color:var(--ink-900);text-align:right;flex:1;line-height:1.5}.shell .srow .sv .vsub{display:block;font-size:12.5px;color:var(--ink-500);margin-top:2px}.shell .srow .edit{font-family:var(--font-mono);font-size:11px;color:var(--green-700);cursor:pointer;background:none;border:0;flex:none;align-self:center}@media (max-width:480px){.shell .srow .sk{width:86px}}.shell .handoff{position:relative;border:1px solid var(--green-300);background:var(--paper-0);border-radius:18px;padding:24px;box-shadow:var(--shadow-card);overflow:hidden}.shell .handoff:before{content:"";position:absolute;top:0;left:24px;right:24px;height:3px;background:var(--green-600);border-radius:0 0 3px 3px}.shell .handoff .hk{font-family:var(--font-mono);font-size:11px;color:var(--green-700);text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:8px;margin-bottom:13px}.shell .handoff .hk:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green-500);animation:pulse 1.8s ease-in-out infinite}.shell .handoff h2{font-family:var(--font-display);font-weight:500;font-size:23px;letter-spacing:-.015em;margin:0 0 8px;color:var(--ink-900)}.shell .handoff p{font-size:13.5px;color:var(--ink-700);line-height:1.55;margin:0 0 18px}.shell .handoff p b{color:var(--ink-900);font-weight:600}.shell .handoff .nextlist{display:flex;flex-direction:column;gap:9px;margin:0 0 20px}.shell .handoff .nx{display:flex;align-items:center;gap:11px;font-size:13px;color:var(--ink-700)}.shell .handoff .nx .nxn{flex:none;width:22px;height:22px;border-radius:50%;background:#fff;border:1.5px solid var(--green-300);color:var(--green-700);display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;font-weight:600}.shell .handoff .hrow{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.shell .handoff .micro{font-family:var(--font-mono);font-size:11px;color:var(--ink-500)}