/* Facilitator mode */
.ws{max-width:var(--wrap);margin:0 auto;padding:clamp(16px,3vw,32px) var(--gut) var(--sec)}
.ws-hero{margin:0 0 var(--sec-s);max-width:56em}.ws-hero .eyebrow{font-size:11.5px;letter-spacing:.16em;margin:0 0 8px}
.ws-hero h1,.ws-hero h2{font-size:clamp(26px,3.4vw,40px)!important;line-height:1.1;letter-spacing:-.04em;margin:0 0 12px;background:none;-webkit-text-fill-color:#fff;color:#fff}
.ws-hero .lead{font-size:clamp(15px,1.3vw,17px);line-height:1.65;color:#aebbd3;margin:0}
.ws button,.ws input,.ws select{font-family:var(--sans)}
.ws-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(14px,2vw,24px);align-items:start}
.ws-card{padding:clamp(16px,2.2vw,24px);border-radius:18px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));min-width:0}
.ws-card h2{font-size:17px;letter-spacing:-.02em;margin:0 0 14px}.ws-card h3{font-size:14.5px;margin:16px 0 8px;display:flex;gap:8px;align-items:center}.ws-card h3 i{font:700 11px var(--mono);font-style:normal;padding:2px 7px;border-radius:6px;background:rgba(82,255,198,.14);color:#52ffc6}
.ws label{display:block;font:700 10.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#8fa1c0}
.ws select,.ws input:not([type=checkbox]){display:block;width:100%;height:42px;margin-top:7px;padding:0 12px;border-radius:11px;border:1px solid rgba(255,255,255,.15);background:rgba(4,8,18,.55);color:#fff;font:400 15px var(--sans);text-transform:none;letter-spacing:0}
.ws :is(select,input,button):focus-visible{outline:2px solid #52ffc6;outline-offset:1px}
.ws-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ws-desc{margin:14px 0 0;font-size:14px;color:#9fb0cc}
.ws-hint{margin:8px 0 0;font-size:12.5px;line-height:1.5;color:#7f90ad}
.ws-rgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ws-chk{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ws-chk label,.ws-prompts label{display:flex;gap:10px;align-items:flex-start;font:400 14.5px/1.5 var(--sans);letter-spacing:0;text-transform:none;color:#d4deee;cursor:pointer}
.ws input[type=checkbox]{appearance:auto;width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:#52ffc6;display:inline-block}
.ws-preview{margin-top:18px;padding-top:4px;border-top:1px solid rgba(255,255,255,.08)}
.ws-preview ol{list-style:none;margin:0;padding:0;counter-reset:b}.ws-preview li{counter-increment:b;display:flex;gap:10px;justify-content:space-between;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.08);font-size:14px;color:#cfd9ec}.ws-preview li:before,.ws-rail li:before{content:none!important;display:none!important}.ws-preview li i{font:700 11px var(--mono);font-style:normal;color:#52ffc6;width:18px;flex:none}.ws-preview li span{flex:1}.ws-preview li b{font:600 12.5px var(--mono);color:#9fb0cc}
.ws-go{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:var(--sec-s)}
.ws button.primary,.ws a.primary{height:42px;padding:0 20px;border-radius:12px;border:0;background:linear-gradient(96deg,#52ffc6,#36e4ff);color:#03150f;font:700 14.5px var(--sans);cursor:pointer}
.ws button.big{height:48px;padding:0 28px;font-size:15.5px}
.ws button.ghost,.ws a.ghost{display:inline-flex;align-items:center;height:42px;padding:0 16px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);color:#dfe9f8;font:600 14px var(--sans);text-decoration:none;cursor:pointer}
.ws button.ghost:hover,.ws a.ghost:hover{border-color:#52ffc6}
/* run */
.ws-top{display:flex;gap:12px 20px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}
.ws-title .eyebrow{font-size:11px;letter-spacing:.14em;margin:0 0 6px}.ws-title h2{font-size:clamp(18px,2.2vw,24px);letter-spacing:-.03em;margin:0;line-height:1.2}
.ws-topbtns{display:flex;gap:8px;flex-wrap:wrap}
.ws-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.08);margin-bottom:16px;overflow:hidden}.ws-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#52ffc6,#36e4ff);transition:width .4s}
.ws-cols{display:grid;grid-template-columns:230px minmax(0,1fr) 320px;gap:16px;align-items:start}
.ws-rail,.ws-log{padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));position:sticky;top:var(--gh-off);min-width:0}
.ws-rail h3{font:700 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#7f90ad;margin:0 0 10px}
.ws-rail ol{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.ws-rail button{width:100%;display:grid;grid-template-columns:22px 1fr auto;gap:8px;align-items:center;text-align:left;padding:9px 8px;border-radius:11px;border:1px solid transparent;background:none;color:#aebbd3;font:500 13.5px/1.3 var(--sans);cursor:pointer}
.ws-rail button:hover{background:rgba(255,255,255,.05)}
.ws-rail .n{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.07);font:700 11px var(--mono)}.ws-rail .m{font:600 11px var(--mono);color:#7f90ad}
.ws-rail li.on button{background:rgba(82,255,198,.12);border-color:rgba(82,255,198,.35);color:#fff}.ws-rail li.on .n{background:#52ffc6;color:#03150f}
.ws-rail li.done .n{background:rgba(82,255,198,.2);color:#52ffc6}
.ws-timer{display:flex;gap:14px 24px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:clamp(14px,2vw,20px);border-radius:18px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(82,255,198,.08),rgba(166,120,255,.07));margin-bottom:14px}
.ws-clock{display:flex;flex-direction:column;gap:2px;min-width:0}.ws-clock b{font:700 clamp(38px,5vw,56px)/1 var(--mono);color:#52ffc6;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.ws-clock b.over{color:#ffc857}.ws-timer.low .ws-clock b{color:#ff9f8a}
.ws-clock span{font-size:13.5px;color:#aebbd3}
.ws-tbtns{display:flex;gap:8px;flex-wrap:wrap}.ws-tbtns button{height:42px;min-width:42px;padding:0 16px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#dfe9f8;font:600 14px var(--sans);cursor:pointer}.ws-tbtns button:disabled{opacity:.35;cursor:default}.ws-tbtns .primary{background:linear-gradient(96deg,#52ffc6,#36e4ff);color:#03150f;border:0}
.ws-block{padding:clamp(16px,2.2vw,24px);border-radius:18px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02))}
.ws-block h3{font-size:clamp(17px,1.8vw,20px);letter-spacing:-.02em;margin:0 0 12px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.ws-block h3 small{font:600 12px var(--mono);color:#52ffc6}
.ws-prompts{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ws-prompts input:checked+span{color:#7f90ad;text-decoration:line-through}
.ws-link{display:inline-block;margin-top:14px;color:#52ffc6;font-weight:600;font-size:14px}
.ws-log .ws-tabs{display:flex;gap:4px;margin-bottom:10px}.ws-tabs button{flex:1;min-width:0;padding:8px 4px;border-radius:10px;border:1px solid transparent;background:none;color:#9fb0cc;font:600 12.5px var(--sans);cursor:pointer;white-space:nowrap}
.ws-tabs button[aria-selected=true]{background:rgba(82,255,198,.12);border-color:rgba(82,255,198,.35);color:#52ffc6}.ws-tabs i{font-style:normal;font:700 10.5px var(--mono);opacity:.8;margin-left:2px}
.ws-lform{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.ws-lform input{margin:0!important;grid-column:1/-1}.ws-lform input:first-child{grid-column:1}.ws-lform input[hidden]{display:none}.ws-lform .primary{height:42px;padding:0 16px;border-radius:11px;border:0}
.ws-lform input#lown,.ws-lform input#ldate{grid-column:1/-1}
.ws-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px;max-height:340px;overflow:auto}
.ws-list li{display:flex;gap:8px;justify-content:space-between;align-items:flex-start;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.04);font-size:14px;line-height:1.45;color:#e3ebf8}
.ws-list li small{display:block;font-size:12px;color:#7f90ad;margin-top:2px}.ws-list li.empty{background:none;color:#6f819f;padding:4px 2px}
.ws-list button{flex:none;width:26px;height:26px;border-radius:8px;border:0;background:rgba(255,255,255,.07);color:#aebbd3;cursor:pointer;font-size:16px;line-height:1}
/* done */
.ws-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ws-sum ul{margin:0;padding-left:18px;font-size:14.5px;line-height:1.55}.ws-sum li{margin:0 0 8px}.ws-sum small{display:block;color:#7f90ad}
/* present */
#prs{position:fixed;inset:0;z-index:3000;background:radial-gradient(900px 500px at 80% -10%,rgba(166,120,255,.2),transparent 60%),#050812;padding:clamp(20px,4vw,56px);overflow:auto;display:flex;flex-direction:column;gap:clamp(12px,2vw,24px)}
#prs .prs-top{display:flex;justify-content:space-between;gap:12px;align-items:center;font:600 13px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#7f90ad}
#prs h2{font-size:clamp(28px,4.4vw,56px);letter-spacing:-.04em;line-height:1.1;margin:0;color:#fff}
#prs .prs-clock{font:700 clamp(56px,11vw,150px)/1 var(--mono);color:#52ffc6;font-variant-numeric:tabular-nums}
#prs ul{margin:0;padding-left:1.1em;font-size:clamp(18px,2.2vw,30px);line-height:1.45;color:#dfe9f8;max-width:42em}#prs li{margin:0 0 .5em}
#prs .ghost{height:40px;padding:0 16px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);color:#fff;font:600 14px var(--sans);cursor:pointer}
@media(max-width:1060px){.ws-cols{grid-template-columns:minmax(0,1fr) 300px}.ws-rail{grid-column:1/-1;position:static}.ws-rail ol{display:flex;overflow-x:auto;gap:6px;scrollbar-width:none}.ws-rail li{flex:none}.ws-rail button{width:auto;grid-template-columns:22px auto auto;white-space:nowrap}.ws-rail h3{display:none}.ws-rail .ws-hint{display:none}}
@media(max-width:860px){.ws-grid,.ws-cols,.ws-sum{grid-template-columns:minmax(0,1fr)}.ws-log{position:static}.ws-form,.ws-rgrid{grid-template-columns:minmax(0,1fr)}.ws-rail{position:static;padding:8px}.ws-rail li{margin:0;padding:0}.ws-tbtns{width:100%}.ws-tbtns button{flex:1}.ws-go>*{flex:1 1 100%;justify-content:center}}

.ws>section{padding:0;margin:0}.ws-done,.ws-run{margin:0}
