:root{--ink:#10211c;--paper:#f4f1e8;--card:#fffef9;--line:#d8d6ca;--orange:#ff5a1f;--lime:#c9f64b;--muted:#69736f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans TC",sans-serif}.shell{max-width:1240px;margin:auto;padding:40px 28px 56px}header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:26px}h1{font-size:clamp(2.4rem,5vw,5.3rem);line-height:.92;letter-spacing:-.07em;margin:8px 0 0;font-weight:900}h1 span{color:var(--orange)}.eyebrow{font:700 .74rem "Roboto Mono";letter-spacing:.18em;margin:0;color:var(--muted)}.coros{border:1px solid var(--ink);background:var(--ink);color:white;border-radius:999px;padding:10px 17px;display:flex;gap:10px;align-items:center;cursor:pointer}.coros span:last-child{display:grid;text-align:left}.coros small{color:#c8d0cd}.pulse{width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px #c9f64b33}.grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:18px}.panel{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 12px 45px #17251f0a}.section-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.section-title>span{font:700 .75rem "Roboto Mono";background:var(--lime);border-radius:50%;width:30px;height:30px;display:grid;place-items:center}.section-title h2,.result-head h2{font-size:1.3rem;margin:0}.section-title p{font-size:.86rem;color:var(--muted);margin:3px 0 0}.section-title.compact{margin-top:34px;border-top:1px solid var(--line);padding-top:25px}.target-label{display:block;font-size:.84rem;color:var(--muted);margin-bottom:6px}.time-row{display:flex;gap:14px;align-items:center;margin-bottom:24px}.time-row label{display:flex;align-items:baseline;border-bottom:2px solid var(--ink)}.time-row input{width:78px;border:0;background:transparent;font:700 3rem "Roboto Mono";color:var(--ink);outline:none}.time-row span{font-size:.9rem}.time-row i{font:700 2rem "Roboto Mono";font-style:normal}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{display:flex;justify-content:space-between;align-items:center;background:#f5f5ef;border-radius:12px;padding:12px 14px;font-size:.86rem}.form-grid label span{white-space:nowrap}.form-grid input{width:58px;text-align:right;border:0;border-bottom:1px solid #bfc3bb;background:transparent;font:700 .95rem "Roboto Mono";outline:none}.primary{width:100%;border:0;background:var(--orange);color:white;border-radius:12px;padding:15px 18px;margin-top:22px;font-weight:700;font-size:1rem;cursor:pointer;display:flex;justify-content:center;gap:12px}.result{background:var(--ink);color:white}.result-head{display:flex;justify-content:space-between}.result-head .eyebrow{color:#9fb0aa}.result-head>span{font-size:.75rem;color:var(--ink);background:var(--lime);border-radius:999px;padding:6px 10px;height:min-content}.gauge-wrap{position:relative;max-width:320px;margin:8px auto 0}.gauge{width:100%;overflow:visible}.track,.fill{fill:none;stroke-width:14;stroke-linecap:round}.track{stroke:#294038}.fill{stroke:var(--orange);stroke-dasharray:64 100;transition:stroke-dasharray .6s ease}.score{position:absolute;inset:44% 0 auto;text-align:center}.score strong{font:700 3.8rem "Roboto Mono"}.score>span{font:700 1.3rem "Roboto Mono";color:var(--orange)}.score small{display:block;color:#b9c4c0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.metrics div{background:#1b3029;padding:13px;border-radius:12px}.metrics small{display:block;color:#9fb0aa;font-size:.72rem}.metrics b{font:700 1rem "Roboto Mono"}.coach{border-left:3px solid var(--lime);padding-left:15px;margin:24px 2px}.coach span{color:var(--lime);font-size:.76rem;font-weight:700}.coach p{line-height:1.7;margin:5px 0;font-size:.9rem}.factors h3{font-size:.83rem;margin-bottom:14px}.factor{margin:11px 0}.factor>div:first-child{display:flex;justify-content:space-between;font-size:.78rem}.factor b{color:#bac7c2}.bar{height:5px;background:#2d423b;border-radius:5px;margin-top:6px}.bar i{display:block;height:100%;width:60%;background:var(--lime);border-radius:5px;transition:width .5s}.note{font-size:.69rem;color:#80928b;line-height:1.5;margin:22px 0 0}dialog{max-width:470px;border:0;border-radius:22px;padding:30px;background:var(--card);color:var(--ink);box-shadow:0 24px 80px #0006}dialog::backdrop{background:#07130ecc;backdrop-filter:blur(4px)}dialog h2{font-size:1.7rem;margin:8px 0}dialog p{color:var(--muted);line-height:1.6}dialog small{display:block;color:var(--muted);margin-top:12px}.close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:1.6rem;cursor:pointer}.sync-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sync-list span{padding:10px;border-radius:8px;background:#eef0e7;font-size:.82rem}.sync-list span:before{content:"✓ ";color:#56a328;font-weight:900}@media(max-width:850px){.shell{padding:24px 15px}.grid{grid-template-columns:1fr}header{align-items:center}h1{font-size:2.6rem}.coros b{font-size:.75rem}.coros small{font-size:.65rem}.form-grid{grid-template-columns:1fr}.panel{padding:22px}.metrics b{font-size:.83rem}}@media(max-width:430px){.metrics{grid-template-columns:1fr}.score{inset:41% 0 auto}}
