:root{--ink:#172641;--blue:#002fa7;--muted:#5a6476;--line:#dce1e9;--wash:#f7f7f8;--bg:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans SC','PingFang SC',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.6;font-variant-numeric:tabular-nums}header,main,footer{max-width:1180px;margin:auto;padding:0 32px}header{display:flex;justify-content:space-between;align-items:center;height:96px;border-bottom:1px solid var(--line)}a{color:var(--blue);text-underline-offset:4px}nav{display:flex;gap:28px}.brand{display:flex;gap:10px;align-items:center;font-size:25px;font-weight:750;text-decoration:none;color:var(--ink)}.brand-mark{background:var(--blue);color:white;border-radius:50%;width:36px;height:36px;text-align:center;line-height:34px}button,input,textarea,select{font:inherit}button,.file-button{cursor:pointer;background:white;color:var(--ink);border:1px solid #bdc7d6;border-radius:7px;padding:11px 19px;font-weight:650}button:hover{border-color:var(--blue);color:var(--blue)}button:disabled{opacity:.55;cursor:wait}.primary{background:var(--blue);color:white;border-color:var(--blue)}.primary:hover{background:#002584;color:white}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #5f88ee;outline-offset:3px}input,textarea,select{width:100%;color:var(--ink);background:white;border:1px solid #bdc7d6;padding:12px;border-radius:6px}textarea{resize:vertical;min-height:90px}label{display:block;font-weight:600;margin-bottom:18px}label input,label textarea{margin-top:8px}.intro{padding:62px 0 38px;display:flex;justify-content:space-between;align-items:center;gap:32px}.beta{font-size:14px;color:var(--blue);margin:0 0 17px}h1{font-size:clamp(36px,4.8vw,62px);line-height:1.18;letter-spacing:-2px;margin:0 0 20px;font-weight:750}.lead{font-size:18px;margin:0;max-width:620px;color:var(--muted)}.path-art{display:flex;align-items:center;color:var(--blue);gap:10px;transform:rotate(-9deg);padding-right:10px}.path-art span{border:1px solid #a2b7e7;border-radius:50%;font-size:27px;padding:17px 19px}.path-art span:nth-of-type(2){background:var(--blue);color:white}.path-art i{width:25px;height:1px;background:#a2b7e7}.path-art b{font-size:40px;line-height:.9}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line)}.tabs button{border:0;border-radius:0;padding:15px 2px;background:none;color:var(--muted)}.tabs button[aria-pressed=true]{color:var(--blue);border-bottom:3px solid var(--blue)}#status{font-size:14px;min-height:24px;color:var(--muted);overflow-wrap:anywhere}#status.error{color:#a51919}.play-layout{display:grid;grid-template-columns:230px 1fr;gap:40px;margin-bottom:36px}aside>p{font-size:14px}aside .starter{display:flex;justify-content:space-between;width:100%;margin:10px 0;text-align:left;border:1px solid var(--line)}.starter.active{border-color:var(--blue);color:var(--blue);background:#f3f6ff}.quiet{font-size:13px;color:var(--muted);line-height:1.75;font-weight:400}.stage{background:var(--wash);border-top:4px solid var(--blue);border-radius:0 0 12px 12px;padding:30px 36px;min-height:390px}.stage-top{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}h2{font-size:29px;line-height:1.35;margin:22px 0 12px}#story-intro{font-size:18px;max-width:60ch}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0 10px}.fiction{font-size:12px;color:var(--muted);margin-top:25px}.scene{font-size:22px;font-weight:650}.choice{display:block;text-align:left;width:100%;margin:10px 0;background:white;padding:15px 18px}.choice.selected{border:2px solid var(--blue);background:#f0f4ff}.consequence{border-left:3px solid var(--blue);padding:10px 18px;background:white}.result-label{color:var(--blue);font-size:14px;margin-top:28px}.result-title{font-size:36px;font-weight:750;line-height:1.3}.create-head{display:flex;justify-content:space-between;align-items:center}.idea{background:var(--wash);padding:24px;margin:20px 0 30px;border-left:4px solid var(--blue)}.two-fields{display:grid;grid-template-columns:1fr 2fr;gap:24px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:650}details p{max-width:80ch}fieldset{border:1px solid var(--line);padding:20px;margin:25px 0}legend{font-weight:750;padding:0 8px}.choice-editor{display:grid;grid-template-columns:1fr 2fr;gap:20px}.check{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400}.check input{width:18px;height:18px;flex-shrink:0;margin:4px 0 0}.publish-box{border-top:1px solid var(--line);padding:22px 0}#published{padding:24px;border:2px solid var(--blue);margin:25px 0}#published-link{overflow-wrap:anywhere}.saved-row{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:14px 0}.saved-row a{overflow-wrap:anywhere}.saved-row button{flex-shrink:0}.file-button{position:relative;display:inline-block;margin:0}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}.privacy{margin:18px 0}footer{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:40px;padding-top:26px;padding-bottom:30px;font-size:13px;color:var(--muted)}#lineage{font-size:13px;overflow-wrap:anywhere;margin-top:22px}#game:focus{outline:none}[hidden]{display:none!important}@media(max-width:760px){header,main,footer{padding-left:20px;padding-right:20px}header{height:76px}nav{gap:16px;font-size:14px}.intro{padding:35px 0 25px;gap:0}.path-art{display:none}h1{letter-spacing:-1px}.lead{font-size:16px}.play-layout{grid-template-columns:1fr;gap:18px}aside{display:flex;gap:10px;flex-wrap:wrap}aside>p{width:100%;margin:0}aside .starter{width:auto;gap:25px;margin:0}aside .quiet{display:none}#lineage{width:100%;margin:0}.stage{padding:22px;min-height:360px}h2{font-size:25px}.scene{font-size:20px}.result-title{font-size:29px}.two-fields,.choice-editor{grid-template-columns:1fr;gap:0}.create-head{align-items:flex-start;gap:10px}.create-head button{margin-top:22px;white-space:nowrap;padding:8px}.saved-row{align-items:flex-start}.saved-row button{font-size:12px;padding:8px}.idea{padding:20px}fieldset{padding:15px}.tabs{gap:22px}}
@media(max-width:760px){.intro{padding:22px 0 18px}.beta{margin-bottom:10px;font-size:12px}h1{font-size:32px;margin-bottom:12px}.lead{font-size:14px}.tabs button{padding:12px 0;font-size:14px}#status{margin:10px 0;font-size:12px}aside>p:first-child{display:none}aside .starter{font-size:13px;padding:8px 12px;gap:12px}.stage h2{font-size:23px;margin-top:15px}#story-intro{font-size:16px}.stage{padding:20px}.play-layout{gap:16px}.actions{margin-top:20px}}
