:root{--bg:#0b1838;--card:#122447;--ink:#f6f7fa;--muted:#c0cadb;--accent:#e8b23a;--line:#425477;--success:#a4cf8c;--danger:#ffb5a5;--radius:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header,main{max-width:1120px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line)}a{color:var(--accent);text-underline-offset:4px}.brand{font-size:22px;font-weight:750;text-decoration:none}h1{font-size:clamp(36px,6vw,65px);line-height:1.12;letter-spacing:-.04em;margin:15px 0 24px}h2{font-size:clamp(23px,3vw,30px);line-height:1.25;margin:8px 0 18px}h3{font-size:23px;margin:10px 0}.lead{font-size:22px;max-width:760px}.intro{padding:30px 0 15px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.1em;color:var(--accent);margin:0 0 8px}.small{font-size:14px;color:var(--muted)}.notice{border-left:4px solid var(--accent);padding:14px 18px;background:var(--card);font-size:15px;max-width:850px}.steps{padding:0;display:grid;grid-template-columns:repeat(4,1fr);list-style:none;gap:10px;margin:20px 0 26px}.steps li{font-size:14px;border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--muted)}.steps li[aria-current=step]{border-color:var(--accent);color:var(--accent);font-weight:700}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;margin-bottom:24px;min-width:0}.story-grid,.workspace{display:grid;grid-template-columns:1fr 1fr;gap:24px}.simple-list{padding-left:20px}.simple-list li{margin:12px 0}.rules{background:transparent}.action-panel{border-color:var(--accent)}button,input{font:inherit}button{cursor:pointer;border-radius:10px;border:1px solid var(--line);padding:12px 18px;min-height:48px;white-space:normal}button.primary{background:var(--accent);color:var(--bg);font-weight:750;border-color:var(--accent)}button.secondary{background:transparent;color:var(--ink)}button:hover{filter:brightness(1.08)}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.messages{max-height:420px;overflow:auto;padding-right:5px}.message{border:1px solid var(--line);border-radius:12px;padding:14px;margin:14px 0;font-size:16px}.message.user{border-color:var(--accent)}.message small{display:block;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.08em;margin-bottom:5px}.summary-line{font-weight:700}.task{border-top:1px solid var(--line);padding:15px 0}.task strong{display:block}.task p{font-size:14px;margin:4px 0;color:var(--muted)}.task .flag{color:var(--danger);font-weight:700}.task .okay{color:var(--success)}.option{padding:22px;border:1px solid var(--line);border-radius:12px;margin:20px 0}.option ul{padding-left:20px}.option li{margin:12px 0}.option .reason{color:var(--success)}.option .price{font-size:24px;font-weight:750}.option details{margin-top:14px}.response-row{padding:18px 0;border-top:1px solid var(--line)}.response-row button{margin:6px 10px 6px 0}.success{border-color:var(--success)}summary{cursor:pointer;font-weight:700;padding:6px 0}.advanced{margin-top:20px}.input-row{display:flex;gap:10px;margin:8px 0 18px}input[type=text],input:not([type]){background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;min-width:0;width:100%;padding:10px}label{display:block}.read-aloud{font-size:14px}#audit{padding-left:20px}#audit li{font-size:14px;margin:14px 0}.need{font-size:14px;border-bottom:1px solid var(--line);padding:10px 0}.need small{display:block;color:var(--muted)}footer{font-size:13px;color:var(--muted);padding:15px 0 30px}footer span{display:block;margin-top:20px}.evidence{max-width:1050px}.evidence table{width:100%;border-collapse:collapse;font-size:15px}.evidence td,.evidence th{border:1px solid var(--line);padding:14px;text-align:left;vertical-align:top}@media(max-width:760px){.story-grid,.workspace{grid-template-columns:1fr;gap:0}.steps{grid-template-columns:1fr 1fr}.panel{padding:20px}header,main{padding:18px}.lead{font-size:19px}.input-row{flex-wrap:wrap}.evidence table,.evidence tbody,.evidence tr,.evidence td,.evidence th{display:block;width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
