:root{--bg-canvas:#081a12;--surface-default:#112f23;--surface-raised:#1c4231;--surface-interactive:#204a37;--text-primary:#f2ebdd;--text-secondary:#a9b7ae;--text-muted:#8ea295;--text-on-accent:#0b1f17;--border-default:#38654f;--border-strong:#6e987c;--accent:#f4c552;--good:#70c88a;--bad:#e88b84;--info:#6bacd8;--track:#081510;--r:6px;--r-card:10px;--sans:"Noto Sans TC", -apple-system, "PingFang TC", "Microsoft JhengHei", sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--glow:0 0 8px #f4c55259;--shadow-hud:0 6px 9px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg-canvas) radial-gradient(ellipse 120% 60% at 50% -10%, #1d463080 0%, transparent 60%) no-repeat;color:var(--text-primary);font:15px/1.7 var(--sans);-webkit-font-smoothing:antialiased;margin:0}main{max-width:680px;margin:0 auto;padding:24px 16px 48px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.label{letter-spacing:2.7px;color:var(--text-muted);margin:24px 0 8px;font-size:10px;font-weight:700}small{color:var(--text-muted);font-size:13px;line-height:1.6;display:block}button{font:700 16px/1.5 var(--sans);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--r);cursor:pointer;background:0 0;padding:12px 14px;transition:border-color .15s,background .15s}button:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-interactive)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--surface-interactive);border-color:var(--accent);width:100%;color:var(--accent);margin:16px 0 8px}button.primary:hover{background:var(--surface-raised);box-shadow:var(--glow)}button.link{font:13px/1.6 var(--sans);color:var(--text-muted);border:none;padding:0;text-decoration:underline}button.link:hover{color:var(--accent);background:0 0}.brand{text-align:center;padding:8px 0 4px}.brand h1{letter-spacing:2px;margin:0;font-size:32px;font-weight:900}.brand h1 b{color:var(--accent)}.brand .sub{letter-spacing:4px;color:var(--accent);justify-content:center;align-items:center;gap:12px;margin:4px 0 12px;font-size:11px;font-weight:700;display:flex}.brand .sub:before,.brand .sub:after{content:"";background:var(--border-default);width:48px;height:1px}.tagline{color:var(--text-secondary);text-align:center;margin:0 0 8px;font-size:14px}.intro{color:var(--text-muted);text-align:left;margin:0 0 10px;font-size:13px;line-height:1.9}.intro:last-of-type{margin-bottom:20px}fieldset{border:none;margin:0;padding:0}legend{padding:0}.pick{background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--r-card);cursor:pointer;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.pick:hover{border-color:var(--border-strong)}.pick:has(input:checked){background:var(--surface-interactive);border:2px solid var(--accent);padding:11px 13px}.pick input{accent-color:var(--accent);margin-top:6px}.pick b{font-weight:700}.pick:has(input:checked) b{color:var(--accent)}.field{margin:16px 0;display:block}.field>span{letter-spacing:2.7px;color:var(--text-muted);font-size:10px;font-weight:700;display:block}.field input{width:100%;font:16px/1.5 var(--sans);color:var(--text-primary);background:var(--surface-default);border:1px solid var(--border-default);border-radius:var(--r);margin-top:6px;padding:10px 12px;display:block}.field input[type=number]{font-family:var(--mono);letter-spacing:1px}.field input:focus{border-color:var(--accent);box-shadow:var(--glow);outline:none}.hud{z-index:2;background:var(--surface-default);border-bottom:1px solid var(--border-default);box-shadow:var(--shadow-hud);margin:0 -16px;padding:10px 16px 12px;position:sticky;top:0}.hud-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.daychip{font:700 20px/1 var(--mono);color:var(--accent);background:var(--surface-raised);border:1px solid var(--accent);border-radius:var(--r);padding:8px 10px}.daychip small{color:var(--text-muted);font-size:12px;display:inline}.who{flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:flex}.chip{font:600 13px/20px var(--mono);color:var(--text-secondary);background:var(--surface-raised);border-radius:4px;padding:0 8px;font-style:normal}.chip.gold{color:var(--text-on-accent);background:var(--accent)}.track{background:var(--track);border-radius:4px;height:4px;margin:10px 0;overflow:hidden}.track i{background:var(--accent);height:100%;display:block}.stats{grid-template-columns:repeat(3,1fr);gap:6px;margin:0;display:grid;position:relative}.stats div{background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--r);text-align:center;cursor:help;padding:4px 6px}.stats div:hover,.stats div:focus{border-color:var(--border-strong);outline:none}.tip{z-index:5;text-align:left;color:var(--text-secondary);background:var(--surface-default);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-hud);cursor:auto;padding:8px 10px;font-size:13px;line-height:1.6;display:none;position:absolute;top:calc(100% + 6px);left:0;right:0}.tip b{color:var(--accent);letter-spacing:1px;font-size:12px;display:block}.stats div:hover .tip,.stats div:focus .tip,.stats div:focus-within .tip{display:block}.stats dd{font:700 18px/1.3 var(--mono);font-variant-numeric:tabular-nums;margin:0}.stats dd small{color:var(--text-muted);font-size:11px;display:inline}.stats dt{letter-spacing:2.4px;color:var(--text-muted);font-size:9px}.log{margin:16px 0}.log p{color:var(--text-secondary);margin:3px 0;font-size:14px}.log p.old{color:var(--text-muted);opacity:.7}.log p.delta{font-family:var(--mono);letter-spacing:.5px;font-size:13px}.log .up{color:var(--good)}.log .down{color:var(--bad)}.history{margin:8px 0 16px}.history summary{cursor:pointer;letter-spacing:1.5px;color:var(--text-muted);border:1px solid var(--border-default);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.history summary:hover{color:var(--accent);border-color:var(--border-strong)}.history[open] summary{margin-bottom:10px}.history .hday{border-left:1px solid var(--border-default);margin-left:4px;padding:0 0 10px 12px}.history .hday b{font:700 11px/2 var(--mono);letter-spacing:1px;color:var(--text-muted);display:block}.history p{color:var(--text-secondary);margin:2px 0;font-size:13px}.history p.delta{font-family:var(--mono);font-size:12px}.card{background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--r);margin:16px 0;padding:14px 16px}.card h2{letter-spacing:1.3px;color:var(--info);margin:0 0 6px;font-size:16px;font-weight:700}.card h2:before{content:"■ "}.card p{margin:0 0 14px;font-size:16px;line-height:1.8}.card.node{border-color:var(--accent)}.card.node h2{color:var(--accent)}.tag{font:600 12px/18px var(--mono);color:var(--text-on-accent);background:var(--accent);border-radius:4px;margin-bottom:8px;padding:0 8px;display:inline-block}.options,.actions{gap:8px;display:grid}.choice{text-align:left;background:var(--surface-default);width:100%}.choice .key{font-family:var(--mono);color:var(--accent);margin-right:8px}.choice b{display:block}.choice .reason{color:var(--bad);letter-spacing:1px;font-size:12px}.choice .cost{font-family:var(--mono);color:var(--text-muted);font-size:12px}.choice .otag{font:600 11px/16px var(--mono);color:var(--text-secondary);background:var(--surface-raised);border:1px solid var(--border-default);vertical-align:1px;border-radius:4px;margin-left:8px;padding:0 6px}footer{border-top:1px solid var(--border-default);font:500 12px/1.6 var(--mono);color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;margin-top:32px;padding-top:12px;display:flex}.night-title{text-align:center;letter-spacing:6px;color:var(--accent);margin:8px 0 24px;font-size:13px;font-weight:700}.night{min-height:40vh}.night p{color:var(--text-secondary);margin:.7em 0;font-size:16px;animation:.35s ease-out in}.night .count{font:700 26px/1.4 var(--mono);color:var(--text-primary);background:var(--surface-raised);border:1px solid var(--border-default);border-left:3px solid var(--accent);border-radius:var(--r);letter-spacing:1px;padding:10px 14px}.night .running{font-family:var(--mono);color:var(--text-muted);font-size:14px}.night .final{font:900 24px/1.5 var(--sans);letter-spacing:2px;color:var(--accent);text-align:center;margin-top:1.2em}.controls{gap:8px;margin-top:24px;display:flex}.controls button{flex:1}@keyframes in{0%{opacity:0;transform:translateY(6px)}}.share{background:var(--surface-default);border:1px solid var(--border-default);border-left:3px solid var(--accent);border-radius:var(--r);white-space:pre-wrap;font:500 14px/1.9 var(--mono);color:var(--text-primary);padding:16px}.rail{display:none}.railbrand{letter-spacing:1px;font-size:19px;font-weight:900;line-height:1.4}.railbrand b{color:var(--accent)}.railbrand span{letter-spacing:3px;color:var(--accent);font-size:9px;font-weight:700;display:block}.timeline{margin:0;padding:0;list-style:none}.tl{border-left:1px solid var(--border-default);color:var(--text-secondary);align-items:baseline;gap:8px;margin-left:5px;padding:7px 0 7px 14px;font-size:13px;display:flex;position:relative}.tl b{font-family:var(--mono);color:var(--text-muted);font-size:12px}.tl:before{content:"";background:var(--border-default);border-radius:50%;width:7px;height:7px;position:absolute;top:14px;left:-4px}.tl.past{color:var(--text-muted);opacity:.6}.tl.now{color:var(--accent);font-weight:700}.tl.now b{color:var(--accent)}.tl.now:before{background:var(--accent);box-shadow:var(--glow)}.railfoot{font:500 11px/1.8 var(--mono);color:var(--text-muted);margin-top:20px}@media (width>=560px){.stats{grid-template-columns:repeat(6,1fr)}}@media (width>=900px){main{max-width:940px}.shell{grid-template-columns:200px 1fr;align-items:start;gap:28px;display:grid}.rail{display:block;position:sticky;top:24px}.col{min-width:0}.hud{border:1px solid var(--border-default);border-radius:var(--r);margin:0}}
