:root{--bg:oklch(16% .01 260);--panel:oklch(20% .012 260);--line:oklch(30% .012 260);--ink:oklch(96% .01 90);--muted:oklch(68% .015 260);--dim:oklch(42% .015 260);--accent:oklch(82% .15 85);--ok:oklch(78% .15 150);--warn:oklch(78% .15 60);--bad:oklch(70% .18 25);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:ui-sans-serif,-apple-system,SF Pro Text,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,select,input,textarea{font:inherit;color:inherit}button{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;padding:.45rem .9rem}button:hover:not(:disabled){border-color:var(--muted)}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--accent);color:oklch(20% .02 85);border-color:#0000;font-weight:600}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.setup{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) 340px;gap:1.5rem 2rem;max-width:1240px;min-height:100vh;margin:0 auto;padding:2.5rem 2rem;display:grid}.masthead{grid-column:1/-1}.masthead h1{letter-spacing:-.02em;margin:0;font-size:1.6rem}.masthead h1 span{color:var(--accent);margin-left:.15em}.masthead p{color:var(--muted);max-width:62ch;margin:.4rem 0 0;line-height:1.5}.editor{flex-direction:column;gap:.5rem;min-height:0;display:flex}.editor>label,legend{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem}.editor textarea{resize:none;background:var(--panel);border:1px solid var(--line);border-radius:12px;flex:1;min-height:420px;padding:1.25rem 1.4rem;font-size:1.05rem;line-height:1.65}.meta{color:var(--dim);font-variant-numeric:tabular-nums;font-size:.85rem}.panel{flex-direction:column;gap:1rem;display:flex}fieldset{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:.75rem;margin:0;padding:.9rem 1rem 1rem;display:flex}fieldset label{flex-direction:column;gap:.35rem;font-size:.9rem;display:flex}fieldset label .row{justify-content:space-between;display:flex}fieldset label output{color:var(--muted);font-variant-numeric:tabular-nums}fieldset label.check{flex-direction:row;align-items:flex-start;gap:.6rem}fieldset label.check small{color:var(--muted);margin-top:.1rem;font-size:.78rem;display:block}select{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.4rem .5rem}input[type=range]{accent-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent);margin-top:.2rem}.model-row{grid-template-columns:auto 1fr auto;align-items:center;gap:.25rem .6rem;font-size:.88rem;display:grid}.model-row .dot{background:var(--dim);border-radius:50%;width:8px;height:8px}.model-row[data-state=loading] .dot{background:var(--warn)}.model-row[data-state=ready] .dot{background:var(--ok)}.model-row[data-state=error] .dot{background:var(--bad)}.model-row .detail{color:var(--muted);font-variant-numeric:tabular-nums}.model-row progress{width:100%;height:4px;accent-color:var(--accent);grid-column:1/-1}.error{color:var(--bad);overflow-wrap:anywhere;margin:0;font-size:.85rem}.go{padding:.8rem;font-size:1rem}.hint{color:var(--dim);margin:0;font-size:.8rem}@media (width<=860px){.setup{grid-template-columns:1fr}}.stage{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.prompter{letter-spacing:-.005em;contain:strict;flex:1;font-weight:600;line-height:1.32;position:relative;overflow:hidden}.prompter.mirror{transform:scaleX(-1)}.prompter-content{will-change:transform;max-width:22em;margin:0 auto;padding:0 .6em;position:relative}.prompter p{margin:0 0 .9em}.prompter span{color:oklch(93% .01 90);cursor:pointer;transition:color .18s linear}.prompter span.spoken{color:oklch(42% .01 260)}.prompter span.current{color:var(--accent)}.focus-line{left:0;right:0;top:var(--focus);pointer-events:none;z-index:1;background:linear-gradient(oklch(82% .15 85/.06),#0000);border-top:1px solid oklch(82% .15 85/.25);height:1.32em;position:absolute}.prompter:after{content:"";pointer-events:none;background:linear-gradient(#0000,#000);height:30%;position:absolute;inset:auto 0 0}.hud{color:var(--muted);font-variant-numeric:tabular-nums;background:oklch(12% .01 260);border-top:1px solid oklch(25% .01 260);align-items:center;gap:1rem;padding:.6rem 1rem;font-size:.85rem;display:flex}.hud .level{--level:0;background:linear-gradient(90deg, var(--ok) calc(var(--level) * 100%), oklch(28% .01 260) 0);border-radius:3px;width:56px;height:6px}.hud .state:before{content:"●";margin-right:.35em}.hud .state[data-state=tracking]{color:var(--ok)}.hud .state[data-state=off-script]{color:var(--accent)}.hud .state[data-state=searching]{color:var(--warn)}.hud .state[data-state=paused]{color:var(--dim)}.hud .judge{color:var(--ok)}.hud .judge[data-off=true]{color:var(--dim)}.hud .transcript{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--dim);flex:1;font-style:italic;overflow:hidden}.hud .latency{color:var(--dim)}.hud button{padding:.3rem .7rem;font-size:.85rem}@media (width<=640px){.setup{gap:1rem;padding:1.25rem 1rem}.editor textarea{min-height:260px}.hud{gap:.6rem;padding:.5rem .6rem;font-size:.78rem}.hud .latency,.hud .judge{display:none}.go{bottom:calc(1rem + env(safe-area-inset-bottom));position:sticky;box-shadow:0 8px 30px #000}}.hud .net{color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.1rem .55rem}.hud .net[data-offline=true]{color:var(--ok);border-color:color-mix(in oklch, var(--ok) 50%, transparent)}.hint.ready{color:var(--ok)}.pace{top:calc(1rem + env(safe-area-inset-top));color:var(--warn);opacity:0;pointer-events:none;z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:oklch(78% .15 60/.16);border:1px solid oklch(78% .15 60/.5);border-radius:14px;flex-direction:column;align-items:center;gap:.1rem;padding:.55rem 1.2rem;font-size:.85rem;transition:opacity .3s,translate .3s;display:flex;position:absolute;left:50%;translate:-50% -12px}.pace strong{letter-spacing:.01em;font-size:1.15rem}.pace[data-show=true]{opacity:1;translate:-50%}.prompter span.xmatch{text-underline-offset:.14em;-webkit-text-decoration:underline oklch(78% .15 150);text-decoration:underline oklch(78% .15 150);text-decoration-thickness:.08em}.prompter span.ghost{outline:2px dashed var(--warn);outline-offset:.08em;border-radius:.15em;animation:.9s ease-in-out infinite alternate ghost}@keyframes ghost{0%{outline-color:oklch(78% .15 60/.35)}to{outline-color:var(--warn)}}.xray-log{top:calc(.8rem + env(safe-area-inset-top));pointer-events:none;z-index:2;flex-direction:column;gap:.35rem;width:min(380px,70vw);margin:0;padding:0;list-style:none;display:flex;position:absolute;right:.8rem}.xray-log li{border-left:3px solid var(--muted);color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:oklch(17% .012 260/.96);border-radius:8px;padding:.4rem .65rem;font-size:.88rem;line-height:1.35;animation:.22s ease-out log-in;box-shadow:0 6px 24px #000a}.xray-log li[data-tone=ok]{border-left-color:var(--ok)}.xray-log li[data-tone=warn]{border-left-color:var(--warn)}.xray-log li:nth-child(n+3){opacity:.6}.xray-log li:nth-child(n+4){opacity:.35}@keyframes log-in{0%{opacity:0;translate:0 -6px}}.xray-strip{background:oklch(10% .01 260);border-top:1px solid oklch(25% .01 260);align-items:center;gap:.75rem;min-height:2.6rem;padding:.6rem 1rem;font-size:.8rem;display:flex}.xray-label{color:var(--dim);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.xray-heard{flex:1;justify-content:flex-end;gap:.3rem;min-width:0;display:flex;overflow:hidden}.xray-heard .chip{white-space:nowrap;border-radius:6px;padding:.15rem .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.xray-heard .chip.past{color:var(--muted);background:oklch(30% .01 260/.35)}.xray-heard .chip.hit{color:var(--ok);background:oklch(78% .15 150/.16)}.xray-heard .chip.miss{color:var(--dim);background:oklch(30% .01 260/.5);-webkit-text-decoration:line-through oklch(50% .01 260);text-decoration:line-through oklch(50% .01 260)}.xray-decision{color:var(--ink);white-space:nowrap}.xray-decision[data-d=holding],.xray-decision[data-d=filler-wait]{color:var(--accent)}.xray-decision[data-d=proposed],.xray-decision[data-d=confirming]{color:var(--warn)}.xray-decision[data-d=confirmed]{color:var(--ok)}.xray-latency{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}@media (width<=640px){.xray-latency{display:none}.xray-strip{gap:.5rem;padding:.4rem .6rem}}.stage:has(.xray-strip) .hud .transcript{visibility:hidden}.rules-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-top:1rem;display:flex}.rules-head label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem}.demos{color:var(--dim);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.demos button{padding:.25rem .6rem;font-size:.82rem}.editor textarea.rules{flex:none;min-height:180px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem;line-height:1.55}.rules-errors{color:var(--bad);margin:0;font-size:.85rem}#rules-help{margin:0;line-height:1.45}.stage-main{flex:1;min-height:0;display:flex}.stage-main>.prompter{flex:1;min-width:0}.compliance{z-index:2;background:oklch(13% .01 260);border-right:1px solid oklch(25% .01 260);flex:none;width:300px;font-size:.9rem;overflow-y:auto}.compliance summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.9rem 1rem .6rem;list-style:none;display:flex}.compliance summary::-webkit-details-marker{display:none}.compliance-title{color:var(--ink);font-weight:650}.compliance-count{color:var(--muted);font-variant-numeric:tabular-nums;gap:.5rem;display:flex}.compliance-count b{color:var(--bad);font-weight:650}.compliance-items{gap:.25rem;margin:0;padding:0 .6rem .6rem;list-style:none;display:grid}.compliance-items li{border-radius:8px;grid-template-columns:1.1rem minmax(0,1fr);column-gap:.55rem;padding:.55rem .5rem;display:grid}.compliance-items .box{border:1.5px solid var(--dim);border-radius:4px;grid-row:span 2;width:1rem;height:1rem;margin-top:.15rem}.compliance-items .name{color:var(--ink)}.compliance-items .detail{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.compliance-items .meter{background:linear-gradient(90deg, var(--accent) calc(var(--p) * 100%), oklch(30% .01 260) 0);border-radius:2px;grid-column:2;height:3px;margin-top:.35rem}.compliance-items li[data-status=done] .box,.compliance-items li[data-status=late] .box{border-color:var(--ok);background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3 3 7-7' fill='none' stroke='%23111' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 80% no-repeat}.compliance-items li[data-status=done] .detail{color:var(--ok)}.compliance-items li[data-status=late] .detail{color:var(--warn)}.compliance-items li[data-status=due]{background:oklch(82% .15 85/.1)}.compliance-items li[data-status=due] .box{border-color:var(--accent)}.compliance-items li[data-status=due] .detail{color:var(--accent)}.compliance-items li[data-status=missed]{background:oklch(70% .18 25/.12)}.compliance-items li[data-status=missed] .box{border-color:var(--bad)}.compliance-items li[data-status=missed] .detail{color:var(--bad)}.compliance-alerts{border-top:1px solid oklch(25% .01 260);gap:.35rem;margin:0;padding:.4rem 1rem 1rem;list-style:none;display:grid}.compliance-alerts li{color:var(--muted);background:oklch(20% .012 260);border-radius:6px;padding:.35rem .6rem;font-size:.82rem}.compliance-alerts li[data-tone=bad]{color:oklch(95% .02 25);background:oklch(45% .15 25/.55)}.compliance-alerts li[data-tone=warn]{color:var(--warn)}.compliance-alerts li[data-tone=ok]{color:var(--ok)}.compliance-alerts li:first-child[data-tone=bad]{animation:.32s ease-out alert-in}@keyframes alert-in{0%{opacity:0;translate:0 -4px}}@media (prefers-reduced-motion:reduce){.compliance-alerts li{animation:none!important}}@media (width<=900px){.stage-main.with-compliance{flex-direction:column}.compliance{border-bottom:1px solid oklch(25% .01 260);border-right:none;width:auto;max-height:40vh}.compliance details:not([open]) summary{padding-bottom:.9rem}}.call-record{background:var(--panel);width:min(640px,100vw - 2rem);max-height:calc(100vh - 3rem);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:1.5rem 1.6rem 1.3rem}.call-record::backdrop{background:oklch(0% 0 0/.6)}.call-record h2{margin:0 0 .4rem;font-size:1.3rem}.record-meta{color:var(--muted);margin:0 0 1rem}.call-record table{border-collapse:collapse;width:100%;font-size:.92rem}.call-record th,.call-record td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .4rem}.call-record thead th{color:var(--muted);font-size:.8rem;font-weight:600}.call-record tbody th{font-weight:500}.call-record small{color:var(--dim);font-size:.78rem;display:block}.call-record td:last-child{font-variant-numeric:tabular-nums}.call-record tr[data-status=done] td:nth-child(2){color:var(--ok)}.call-record tr[data-status=late] td:nth-child(2){color:var(--warn)}.call-record tr[data-status=missed] td:nth-child(2),.call-record tr[data-status=violation] td:nth-child(2){color:var(--bad)}.record-note{color:var(--dim);margin:.9rem 0 1rem;font-size:.82rem}.record-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.masthead h1 .home{color:inherit;text-decoration:none}.masthead{position:relative}.masthead .join{background:var(--accent);color:oklch(20% .02 85);border-radius:8px;padding:.5rem .9rem;font-weight:650;text-decoration:none;position:absolute;top:0;right:0}.demo-status{border:1px solid var(--line);color:var(--muted);border-radius:12px;margin:0;padding:.8rem 1rem}.demo-status[data-state=ready]{color:var(--ok);border-color:color-mix(in oklch, var(--ok) 40%, transparent)}.demo-status[data-state=error]{color:var(--bad)}.record-cta{background:oklch(82% .15 85/.1);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;padding:.9rem 1rem;display:flex}.record-cta p{flex:100%;margin:0}.button-link{border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:.45rem .9rem;text-decoration:none;display:inline-block}.button-link.primary{background:var(--accent);color:oklch(20% .02 85);border-color:#0000;font-weight:650}@media (width<=640px){.masthead .join{margin-top:.8rem;display:inline-block;position:static}}
