:root{--ground:#eceef2;--card:#fff;--ink:#0b0d12;--muted:#6b7280;--line:#e2e5ea;--accent:#3157e0;--accent-soft:#e7ecfd;--good:#15803d;--good-soft:#e6f4ea;--warn:#a16207;--warn-soft:#fbf3dc;--bad:#b91c1c;--bad-soft:#fbe9e9;--btn:#0b0d12;--btn-ink:#fff;--me:#3157e0;--me-ink:#fff;--client:#fff;--shadow:0 1px 2px rgba(11,13,18,.04),0 10px 30px rgba(11,13,18,.06);--r-card:28px;--r-bubble:18px;--f-display:"Inter Tight","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;--f-body:"Inter Tight","Helvetica Neue",Helvetica,Arial,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#060a14;--card:#0d1322;--ink:#f1f4fa;--muted:#8a94a8;--line:#1b2337;--accent:#5d86ff;--accent-soft:#16224a;--good:#34d399;--good-soft:#0f2a22;--warn:#fbbf24;--warn-soft:#2a2210;--bad:#f87171;--bad-soft:#2a1416;--btn:#f1f4fa;--btn-ink:#060a14;--me:#3d63e6;--me-ink:#fff;--client:#121a2c;--shadow:0 1px 2px rgba(0,0,0,.3),0 10px 30px rgba(0,0,0,.35);color-scheme:dark}}:root[data-theme=dark]{--ground:#060a14;--card:#0d1322;--ink:#f1f4fa;--muted:#8a94a8;--line:#1b2337;--accent:#5d86ff;--accent-soft:#16224a;--good:#34d399;--good-soft:#0f2a22;--warn:#fbbf24;--warn-soft:#2a2210;--bad:#f87171;--bad-soft:#2a1416;--btn:#f1f4fa;--btn-ink:#060a14;--me:#3d63e6;--me-ink:#fff;--client:#121a2c;--shadow:0 1px 2px rgba(0,0,0,.3),0 10px 30px rgba(0,0,0,.35);color-scheme:dark}*{box-sizing:border-box}body,html{height:100%;margin:0}body{background:var(--ground);color:var(--ink);font:15px/1.55 var(--f-body)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.screen{min-height:100%;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:28px}.brand{font:600 12px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;gap:8px;align-items:center}.brand .mark{font-size:20px;line-height:1;color:var(--ink);letter-spacing:0}.center,.report,.start{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.report{max-width:840px}.toprow{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.toprow .tag{font:600 12px/1 var(--f-body);letter-spacing:.14em;color:var(--muted)}.toprow .tag,h1{text-transform:uppercase}h1{font:500 clamp(30px,6.4vw,56px)/1.02 var(--f-display);margin:8px 0 0;letter-spacing:-.02em;text-wrap:balance}.lead{font-size:17px;max-width:62ch;margin:0}.sheet{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow);padding:24px;display:flex;flex-direction:column;gap:14px;min-width:0}.sheet h2{font:600 12px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0}.levels{list-style:none;margin:0;padding:0;display:grid;grid-gap:12px;gap:12px}.levels li{display:grid;grid-template-columns:auto 1fr;grid-gap:14px;gap:14px;align-items:baseline}.levels b{font:600 12px/1 var(--f-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--accent);background:var(--accent-soft);padding:6px 9px;border-radius:999px}.rules{margin:0;padding-left:18px;display:grid;grid-gap:6px;gap:6px;max-width:62ch}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-weight:600}.field input,.field textarea{border:1px solid var(--line);background:var(--ground);padding:13px 16px;border-radius:14px;width:100%}.btn{border:0;background:var(--btn);color:var(--btn-ink);padding:13px 22px;font-weight:600;border-radius:999px;white-space:nowrap}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn.small{padding:8px 14px;font-size:13px}.btn.danger{background:transparent;color:var(--bad);border:1.5px solid var(--bad)}.note{font-size:13px;color:var(--muted);margin:0}.alert{border-radius:14px;background:var(--accent-soft);padding:10px 14px;font-size:14px}.alert.bad{background:var(--bad-soft)}.alert.good{background:var(--good-soft)}.game{height:100dvh;display:grid;grid-template-rows:auto 1fr}.bar{background:var(--card);border-bottom:1px solid var(--line);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:12px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.bar .brand{flex:0 0 auto}.steps{display:flex;gap:6px;flex:1 1 380px;min-width:0}.step{flex:1 1;min-width:0;padding:7px 10px;border-radius:999px;background:var(--ground);font-size:12px;font-weight:500;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step span{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-right:5px;opacity:.7}.step.done{background:var(--good-soft);color:var(--good)}.step.now{background:var(--btn);color:var(--btn-ink)}.clock{font:600 14px/1 var(--f-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:8px 12px;border-radius:999px;background:var(--ground)}.main{display:grid;grid-template-columns:minmax(270px,350px) minmax(0,1fr);min-height:0}.brief{overflow:auto;gap:14px;padding:18px 18px 18px max(16px,env(safe-area-inset-left,0px))}.brief,.brief-card{display:flex;flex-direction:column}.brief-card{background:var(--card);border-radius:var(--r-card);box-shadow:var(--shadow);padding:22px;gap:12px}.brief .eyebrow{font:600 12px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.brief h2{font:500 28px/1.05 var(--f-display);margin:0;text-transform:uppercase;letter-spacing:-.01em}.brief p{margin:0}.client-card{background:var(--card);border-radius:20px;box-shadow:var(--shadow);padding:16px;font-size:14px;display:grid;grid-gap:4px;gap:4px}.client-card strong{font-weight:600}.meta{font-size:13px;color:var(--muted)}.next{display:flex;flex-direction:column;gap:8px;margin-top:auto}.chat{display:grid;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:0;min-width:0}.log{overflow:auto;padding:18px max(16px,env(safe-area-inset-right,0px)) 12px 8px;display:flex;flex-direction:column;gap:12px}.log>*{flex-shrink:0}.msg{max-width:min(640px,88%);display:flex;flex-direction:column;gap:5px;min-width:0}.msg .who{font:600 11px/1 var(--f-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.msg .bubble{padding:12px 16px;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:var(--r-bubble)}.msg.client .bubble{background:var(--client);box-shadow:var(--shadow);border-top-left-radius:6px}.msg.me{align-self:flex-end;align-items:flex-end}.msg.me .bubble{background:var(--me);color:var(--me-ink);border-top-right-radius:6px}.msg.typing .bubble{color:var(--muted);font-style:italic}.divider{align-self:stretch;display:flex;align-items:center;gap:10px;font:600 11px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-block:6px}.divider:after,.divider:before{content:"";flex:1 1;border-top:1px solid var(--line)}.divider.score{color:var(--good)}.data{align-self:stretch;background:var(--card);border-radius:22px;box-shadow:var(--shadow);min-width:0;overflow:hidden}.data h3{margin:0;padding:14px 16px;font:600 12px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}.data .scroll{overflow-x:auto}.data table{border-collapse:collapse;width:100%;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.data td,.data th{padding:9px 12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.data td:first-child,.data th:first-child{text-align:left;white-space:normal;min-width:220px}.data th{font-weight:600;color:var(--muted);font-size:12px}.data tbody tr:nth-child(2n){background:color-mix(in srgb,var(--ground) 45%,transparent)}.data tfoot td{font-weight:700}.data ul{margin:0;padding:12px 16px 14px 32px;font-size:13px;display:grid;grid-gap:4px;gap:4px}.composer{padding:10px max(16px,env(safe-area-inset-right,0px)) 14px 8px;display:flex;flex-direction:column;gap:8px}.composer .row{display:flex;gap:8px;align-items:flex-end;background:var(--card);border-radius:22px;box-shadow:var(--shadow);padding:8px}.composer textarea{flex:1 1;min-width:0;resize:none;border:0;background:transparent;padding:10px 12px;min-height:44px;max-height:200px;outline:none}.composer .row:focus-within{box-shadow:0 0 0 2px var(--accent),var(--shadow)}.composer .hint{font-size:12px;color:var(--muted);padding-left:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.retry{align-self:flex-start}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.stat{background:var(--card);border-radius:20px;box-shadow:var(--shadow);padding:16px;min-width:0}.stat .k{font:600 11px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.stat .v{font:700 24px/1.25 var(--f-display);margin-top:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.actions{display:flex;gap:10px;flex-wrap:wrap}.admin{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:18px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.newform{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;grid-gap:10px;gap:10px;align-items:end}.linkbox{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--good-soft);border-radius:14px;padding:10px 14px;font-size:14px;min-width:0}.linkbox code{overflow-wrap:anywhere;font-size:13px;min-width:0}.list{display:grid;grid-gap:10px;gap:10px}.row-c{background:var(--card);border-radius:20px;box-shadow:var(--shadow);padding:14px 16px;display:grid;grid-template-columns:minmax(0,1.6fr) auto auto auto auto;grid-gap:14px;gap:14px;align-items:center;cursor:pointer;border:2px solid transparent;text-align:left;width:100%}.row-c.sel{border-color:var(--accent)}.row-c .nm{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-c .sub{font-size:12px}.pill,.row-c .sub{color:var(--muted)}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font:600 11px/1.2 var(--f-body);letter-spacing:.06em;text-transform:uppercase;background:var(--ground);white-space:nowrap}.pill.in_progress{background:var(--accent-soft);color:var(--accent)}.pill.finished{background:var(--good-soft);color:var(--good)}.pill.revoked{background:var(--bad-soft);color:var(--bad)}.score{font:700 22px/1 var(--f-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.score small{font-weight:500}.score small,.verdict{font-size:12px;color:var(--muted)}.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:14px;gap:14px}.bars{display:grid;grid-gap:8px;gap:8px}.barrow{display:grid;grid-template-columns:130px minmax(0,1fr) 28px;grid-gap:10px;gap:10px;align-items:center;font-size:13px}.track{height:8px;background:var(--ground);overflow:hidden}.fill,.track{border-radius:999px}.fill{height:100%;background:var(--accent)}.ul{margin:0;padding-left:18px;display:grid;grid-gap:4px;gap:4px}.quote,.ul{font-size:14px}.quote{border-left:3px solid var(--accent);padding:4px 0 4px 12px}.quote i{display:block;color:var(--muted);font-style:normal;font-size:13px;margin-top:2px}.transcript{display:flex;flex-direction:column;gap:10px;max-height:70vh;overflow:auto;padding-right:4px}.big{font:700 44px/1 var(--f-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:820px){.main{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.brief{padding:12px max(16px,env(safe-area-inset-right,0px)) 4px max(16px,env(safe-area-inset-left,0px));max-height:40vh}.brief-card{padding:16px;gap:8px}.brief h2{font-size:22px}.brief .client-card,.brief .meta{display:none}.composer,.log{padding-left:max(16px,env(safe-area-inset-left,0px))}.step{font-size:0;padding:7px 0;text-align:center}.step span{font-size:12px;margin:0;opacity:1}.newform{grid-template-columns:minmax(0,1fr)}.row-c{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}.grid2{grid-template-columns:minmax(0,1fr)}.barrow{grid-template-columns:100px minmax(0,1fr) 28px}}@media (prefers-reduced-motion:no-preference){.msg{animation:rise .2s ease-out}@keyframes rise{0%{transform:translateY(5px);opacity:.5}to{transform:none;opacity:1}}}