/* VeraTrain interactive scenario (loaded on sample-scenario.html only, after style.css). All classes start st-. */
.st{--d0:#0B1114;--d1:#121B1F;--d2:#16232A;--ln:#26343A;--ln2:#33464F;--tx:#E6EAEC;--sf:#B5BFC5;--mu:#8A949A;--sky:#5CC8E8;--sky2:#8FDDF2;--mint:#3DDC97;--mint2:#5BE8AB;--coral:#F08A7A;--amber:#F4C95D;--mono:ui-monospace,Menlo,Consolas,monospace;background:var(--d0);color:var(--tx)}
.st h1,.st h2,.st h3{color:#fff}
.st a{color:var(--sky2)}
.st .btn{border-radius:10px;font-weight:600;font-family:inherit;font-size:16px}
.st .btn-sky{background:linear-gradient(180deg,var(--sky2),#2FA6C9);color:#04141A;box-shadow:0 8px 26px rgba(92,200,232,.25),inset 0 1px 0 rgba(255,255,255,.35)}
.st .btn-ghost{border-color:#3A4A51;color:var(--tx);background:rgba(255,255,255,.03)}
.st-mono{font:600 12px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase}

/* Hero */
.st-hero{position:relative;overflow:hidden;padding:64px 0 72px;background:radial-gradient(820px 460px at 85% 20%,rgba(92,200,232,.16),transparent 60%),radial-gradient(600px 380px at 0 100%,rgba(61,220,151,.08),transparent 60%),var(--d0);border-bottom:1px solid var(--ln)}
.st-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse at 70% 30%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse at 70% 30%,#000 20%,transparent 75%);pointer-events:none}
.st-hero .wrap{position:relative}
.st-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid #24505E;background:rgba(92,200,232,.08);color:var(--sky2);padding:7px 14px;border-radius:30px;margin:0 0 22px}
.st-pulse{width:8px;height:8px;border-radius:50%;background:var(--sky);box-shadow:0 0 0 4px rgba(92,200,232,.18)}
.st-hero h1{font-size:clamp(32px,4.4vw,52px);line-height:1.08;letter-spacing:-.02em;font-weight:700;margin:0 0 18px;max-width:820px}
.st-hero h1 span{color:var(--sky2)}
.st-lead{font-size:18px;line-height:1.6;color:#C3CCD1;max-width:640px;margin:0 0 26px}
.st-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px;padding:0;list-style:none}
.st-meta li{font:12px/1 var(--mono);color:var(--sf);border:1px solid var(--ln2);background:rgba(255,255,255,.02);border-radius:8px;padding:9px 12px}
.st-meta b{color:#fff;font-weight:600}
.st-notice{max-width:760px;border:1px solid #6B5A25;background:rgba(244,201,93,.07);color:#E9DDB6;border-radius:12px;padding:14px 18px;font-size:14px;margin:0}
.st-notice strong{color:var(--amber)}

/* Layout */
.st-main{padding:56px 0 88px}
.st-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start}
.st-col{display:grid;gap:24px;min-width:0}

/* Ticket window */
.st-win{border:1px solid var(--ln);border-radius:16px;background:linear-gradient(160deg,#131E23,#0E171A);overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.st-wb{display:flex;align-items:center;gap:7px;padding:12px 16px;background:var(--d1);border-bottom:1px solid var(--ln)}
.st-wb i{width:10px;height:10px;border-radius:50%;background:var(--ln2)}
.st-wb span{margin-left:10px;font:12px/1 var(--mono);color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-tk{padding:24px 26px 26px}
.st-from{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.st-av{flex:0 0 36px;height:36px;border-radius:50%;background:rgba(92,200,232,.15);border:1px solid #24505E;display:grid;place-items:center;font:600 13px/1 var(--mono);color:var(--sky2)}
.st-from b{display:block;color:#fff;font-size:15px}.st-from span{font:12px/1.4 var(--mono);color:var(--mu)}
.st-msg{background:var(--d2);border:1px solid var(--ln2);border-radius:4px 14px 14px 14px;padding:16px 18px;font-size:17px;line-height:1.55;color:#fff;margin:0 0 20px}
.st-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:0}
.st-kv div{border:1px solid var(--ln);border-radius:10px;padding:12px 14px;background:rgba(255,255,255,.02)}
.st-kv dt{font:600 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mu);margin:0 0 8px}
.st-kv dd{margin:0;color:#fff;font-size:15px}
.st-kv .up{color:var(--amber)}

/* Questions */
.st-q{position:relative;border:1px solid var(--ln);border-radius:16px;background:var(--d1);padding:26px 26px 24px;transition:border-color .2s}
.st-q.is-ok{border-color:#2F6B52}.st-q.is-no{border-color:#6E3A31}
.st-qh{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;color:var(--sky)}
.st-state{font:600 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mu);border:1px solid var(--ln2);border-radius:20px;padding:6px 10px}
.st-q.is-ok .st-state{color:var(--mint2);border-color:#2F6B52}.st-q.is-no .st-state{color:var(--coral);border-color:#6E3A31}
.st-q h3{font-size:21px;line-height:1.35;margin:0 0 18px}
.st-ch{display:grid;gap:10px}
.st-c{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--d2);border:1px solid var(--ln2);border-radius:12px;padding:14px 16px;font:inherit;font-size:16px;line-height:1.45;color:var(--tx);cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.st-c:hover:not([disabled]){border-color:var(--sky);background:#1A2A31;transform:translateX(2px)}
.st-c[disabled]{cursor:default;opacity:.55}
.st-key{flex:0 0 32px;height:32px;border-radius:8px;border:1px solid var(--ln2);display:grid;place-items:center;font:600 13px/1 var(--mono);color:var(--sky2);background:var(--d0)}
.st-c .t{flex:1;min-width:0}
.st-c .mark{flex:0 0 auto;font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.st-c.is-best{opacity:1;border-color:var(--mint);background:rgba(61,220,151,.08);box-shadow:0 0 0 1px var(--mint),0 0 24px rgba(61,220,151,.15)}
.st-c.is-best .st-key{background:var(--mint);border-color:var(--mint);color:#04130B}.st-c.is-best .mark{color:var(--mint2)}
.st-c.is-picked:not(.is-best){opacity:1;border-color:var(--coral);background:rgba(240,138,122,.08)}
.st-c.is-picked:not(.is-best) .st-key{background:var(--coral);border-color:var(--coral);color:#1A0805}.st-c.is-picked:not(.is-best) .mark{color:var(--coral)}
.st-fb{margin:16px 0 0;border-left:3px solid var(--mint);background:rgba(61,220,151,.07);border-radius:0 10px 10px 0;padding:14px 16px;color:#D5DCE0;font-size:15px;line-height:1.55}
.st-fb.no{border-left-color:var(--coral);background:rgba(240,138,122,.07)}
.st-fb .st-mono{display:block;margin:0 0 6px;color:var(--mint2)}.st-fb.no .st-mono{color:var(--coral)}
.st-rv{margin:14px 0 0;border-top:1px dashed var(--ln2);padding-top:14px}
.st-rv summary{cursor:pointer;font:600 12px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sky2)}
.st-rv p{margin:10px 0 0;color:var(--sf);font-size:15px;line-height:1.6}

/* Side panel */
.st-side{position:sticky;top:24px;display:grid;gap:16px}
.st-card{border:1px solid var(--ln);border-radius:16px;background:var(--d1);padding:22px}
.st-card h2{font-size:18px;margin:0 0 14px}
.st-card .st-mono{color:var(--sky);margin:0 0 12px}
.st-bar{display:flex;gap:6px;margin:0 0 10px}.st-bar i{flex:1}
.st-bar i{height:8px;border-radius:8px;background:var(--ln2);transition:background .25s}
.st-bar i.ok{background:var(--mint)}.st-bar i.no{background:var(--coral)}
.st-count{font:13px/1 var(--mono);color:var(--sf);margin:0}
.st-learn{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.st-learn li{display:flex;gap:10px;font-size:14px;color:#D5DCE0;line-height:1.45}
.st-learn li::before{content:"";flex:0 0 8px;height:8px;margin-top:6px;border-radius:2px;background:var(--sky)}
.st-small{font-size:13px;color:var(--mu);margin:12px 0 0;line-height:1.5}

/* Result */
.st-res{border:1px solid #24505E;border-radius:16px;padding:28px;background:radial-gradient(500px 260px at 90% 0,rgba(92,200,232,.16),transparent 70%),var(--d1);display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center}
.st-ring{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--mint) 0 var(--p,0%),var(--ln2) var(--p,0%) 100%)}
.st-ring.p0{--p:0%}.st-ring.p10{--p:10%}.st-ring.p20{--p:20%}.st-ring.p30{--p:30%}.st-ring.p40{--p:40%}.st-ring.p50{--p:50%}.st-ring.p60{--p:60%}.st-ring.p70{--p:70%}.st-ring.p80{--p:80%}.st-ring.p90{--p:90%}.st-ring.p100{--p:100%}
.st-ring div{width:96px;height:96px;border-radius:50%;background:var(--d1);display:grid;place-items:center;text-align:center;font:700 30px/1 var(--mono);color:#fff}
.st-ring small{display:block;font:600 10px/1 var(--mono);letter-spacing:.12em;color:var(--mu);margin-top:6px}
.st-res h2{font-size:26px;margin:0 0 8px}.st-res p{color:var(--sf);margin:0}
.st-res .btnrow{margin-top:18px}

/* Sources */
.st-src{border-top:1px solid var(--ln);margin-top:8px;padding-top:20px;font-size:14px;color:var(--sf)}
.st-src ul{margin:8px 0 12px;padding-left:20px}.st-src li{margin:0 0 6px}
.st-src p{margin:0 0 8px}

@media(max-width:960px){.st-grid{grid-template-columns:1fr}.st-side{position:static;order:-1}}
@media(max-width:600px){.st-res{grid-template-columns:1fr;justify-items:start}.st-q,.st-tk{padding:20px}.st-c{padding:12px 14px}.st-q h3{font-size:19px}}
@media(prefers-reduced-motion:reduce){.st-c,.st-q,.st-bar i{transition:none}.st-c:hover:not([disabled]){transform:none}}
.st-kicker{color:var(--sky);margin:0 0 8px}

/* VeraTrain client area (pages in /clients/) */
.st-page{padding:48px 0 88px}
.st-crumbs{font:12px/1.4 var(--mono);color:var(--mu);margin:0 0 18px;display:flex;flex-wrap:wrap;gap:8px}
.st-crumbs a{color:var(--sky2);text-decoration:none}.st-crumbs a:hover{text-decoration:underline}
.st-hero.sm{padding:44px 0 48px}
.st-hero.sm h1{font-size:clamp(28px,3.6vw,42px)}
.st-prose{max-width:780px}
.st-prose h2{font-size:24px;margin:36px 0 12px}.st-prose h2:first-child{margin-top:0}
.st-prose h3{font-size:18px;margin:22px 0 8px}
.st-prose p,.st-prose li{color:#C9D0D4;font-size:16px;line-height:1.65}
.st-prose ul,.st-prose ol{padding-left:22px}.st-prose li{margin:0 0 8px}
.st-prose strong{color:#fff}
.st-sec{margin:0 0 40px}
.st-sec>h2{font-size:26px;margin:0 0 8px}
.st-sub{color:var(--sf);margin:0 0 24px;max-width:700px}
.st-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.st-tc{border:1px solid var(--ln);border-radius:16px;background:var(--d1);padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0}
.st-tc:hover{border-color:var(--ln2)}
.st-tc .st-mono{color:var(--sky);margin:0}
.st-tc h3{font-size:19px;margin:0;line-height:1.3}.st-tc h3 a{color:#fff;text-decoration:none}.st-tc h3 a:hover{text-decoration:underline}
.st-tc p{color:var(--sf);font-size:15px;margin:0}
.st-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px}
.st-links a{font:600 12px/1 var(--mono);letter-spacing:.04em;color:var(--tx);text-decoration:none;border:1px solid var(--ln2);border-radius:8px;padding:8px 10px;background:var(--d2)}
.st-links a:hover{border-color:var(--sky);color:#fff}
.st-path{list-style:none;counter-reset:p;margin:0;padding:0;display:grid;gap:10px;max-width:820px}
.st-path li{counter-increment:p;display:flex;gap:16px;align-items:flex-start;border:1px solid var(--ln);border-radius:12px;background:var(--d1);padding:14px 16px;color:#D5DCE0}
.st-path li::before{content:counter(p,decimal-leading-zero);flex:0 0 auto;font:700 14px/1.5 var(--mono);color:var(--sky)}
.st-path a{color:#fff;font-weight:600}
.st-path span{display:block;color:var(--sf);font-size:14px}
.st-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:0 0 16px}
.st-panel{border:1px solid var(--ln);border-radius:16px;background:var(--d1);padding:22px;min-width:0}
.st-panel h3{font-size:17px;margin:0 0 12px}
.st-panel .st-mono{color:var(--sky);margin:0 0 10px}
.st-panel ul{margin:0;padding-left:20px}.st-panel li{color:#D5DCE0;font-size:15px;margin:0 0 8px;line-height:1.5}
.st-panel.warn{border-color:#6B5A25}.st-panel.warn .st-mono{color:var(--amber)}
.st-tw{overflow-x:auto;border:1px solid var(--ln);border-radius:14px;margin:0 0 16px}
.st-tbl{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.st-tbl th,.st-tbl td{text-align:left;vertical-align:top;padding:12px 16px;border-bottom:1px solid var(--ln);color:#D5DCE0}
.st-tbl thead th{background:var(--d2);font:600 11px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sky2)}
.st-tbl tbody tr:last-child td,.st-tbl tbody tr:last-child th{border-bottom:0}
.st-tbl .say{color:var(--mint2)}.st-tbl .not{color:#F2B1A6}
.st-tbl td.blank{min-width:110px}
.st-gl{margin:0;display:grid;gap:10px;max-width:820px}
.st-gl div{border:1px solid var(--ln);border-radius:12px;background:var(--d1);padding:14px 16px}
.st-gl dt{color:#fff;font-weight:600;margin:0 0 4px}.st-gl dd{margin:0;color:var(--sf);font-size:15px;line-height:1.55}
.st-actions{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 0}
.st-next{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;border-top:1px solid var(--ln);margin-top:32px;padding-top:20px}
.st-next a{color:var(--sky2);font-weight:600}
.st-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none}
.st-chips li{font:12px/1 var(--mono);color:var(--sf);border:1px solid var(--ln2);border-radius:20px;padding:7px 11px}
.st-lines{list-style:none;padding:0;margin:0}.st-lines li{border-bottom:1px dashed var(--ln2);padding:10px 0;color:#D5DCE0;font-size:15px}
.st-lines li:last-child{border-bottom:0}
.st-print-only{display:none}
@media print{
 .st,.st-hero,.st-main,.st-page,.st-q,.st-card,.st-panel,.st-tc,.st-win,.st-gl div,.st-path li{background:#fff!important;color:#000!important;box-shadow:none!important;border-color:#999!important}
 .st h1,.st h2,.st h3,.st p,.st li,.st td,.st th,.st dt,.st dd,.st span,.st b,.st strong,.st a{color:#000!important}
 .st-hero::before{display:none}
 .st-side,.st-res,.st-ch,.st-fb,.st-actions,.st-next,.st-crumbs,.st-badge,.st-links,.btnrow{display:none!important}
 .st-rv{display:block!important}.st-rv[hidden]{display:block!important}
 .st-tbl{min-width:0}.st-tbl thead th{background:#eee!important}
 .st-print-only{display:block}
 .st-grid{display:block}.st-hero{padding:0 0 12px!important;border:0}.st-page{padding:12px 0!important}
}
