:root{--bg:#f5f6f7;--surface:#fff;--border:#c9ced4;--text:#16191d;--text-soft:#4a5259;--accent:#0b5fa5;--accent-fg:#fff;--danger:#a3231d;--ok:#1d6b3f;--shadow:0 1px 2px #0000000f;--tabs-bg:#e4e7ea;--tabs-on:#fff;--tabs-shadow:0 1px 3px #0000001f;--bubble-bg:#eceef1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#15181c;--surface:#1e2329;--border:#3a424b;--text:#f2f4f6;--text-soft:#b6bfc8;--accent:#66b2ff;--accent-fg:#0d1117;--danger:#ff8a80;--ok:#7ddba3;--shadow:none;--tabs-bg:#2a3037;--tabs-on:#454d56;--tabs-shadow:none;--bubble-bg:#2a3037}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:17px/1.7 Noto Sans TC,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang TC,Microsoft JhengHei,sans-serif}.page{max-width:880px;margin:0 auto;padding-block:32px;padding-inline:16px}.page--narrow{max-width:560px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}h1{text-wrap:balance;margin:0;font-size:28px;line-height:1.3}h2{margin:0 0 16px;font-size:20px;line-height:1.4}.crumb{margin:0 0 12px}.crumb a,a{color:var(--accent)}.muted{color:var(--text-soft);margin:4px 0 0}.ver{margin-left:12px;font-size:15px}.sect{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;margin-bottom:20px;padding:24px}.sect-idx{min-width:1.8em;color:var(--text-soft);font-weight:400;display:inline-block}.field-wrap+.field-wrap{margin-top:20px}.field label{align-items:baseline;gap:8px;margin-bottom:6px;font-weight:600;display:flex}.req{color:var(--danger)}.saving{color:var(--text-soft);font-size:15px;font-weight:400}.field input:not([type=checkbox]),.field select,.field textarea,textarea{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:10px 12px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--bg);color:var(--text-soft);cursor:not-allowed}.field--error input,.field--error select,.field--error textarea{border-color:var(--danger);border-width:2px}.checks{flex-wrap:wrap;gap:8px 20px;display:flex}.check{align-items:center;gap:6px;font-weight:400;display:flex}.hint{color:var(--text-soft);margin:6px 0 0;font-size:15px}.err{color:var(--danger);margin:6px 0 0;font-size:15px;font-weight:600}.prov{color:var(--danger);margin:6px 0 0;font-size:15px}.prov--ok{color:var(--ok)}.btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;padding:10px 20px;font-weight:600}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--accent);color:var(--accent-fg);border-color:#0000}.btn--danger{background:var(--danger);color:#fff;border-color:#0000}.actions{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.banner{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin:0 0 20px;padding:12px 16px}.banner--err{border-color:var(--danger);color:var(--danger);border-width:2px;font-weight:600}.tbl{border-collapse:collapse;background:var(--surface);width:100%}.tbl th,.tbl td{text-align:left;border-bottom:1px solid var(--border);padding:12px 14px}.tbl th{color:var(--text-soft);font-size:15px}.tbl td{font-variant-numeric:tabular-nums}.pill{border:1px solid var(--border);border-radius:999px;padding:3px 12px;font-size:15px;font-weight:600;display:inline-block}.g-draft{color:var(--text-soft)}.g-review{color:var(--accent);border-color:currentColor}.g-pass{color:var(--ok);border-color:currentColor}.g-fail{color:var(--danger);border-color:currentColor}.hist{margin:0;padding:0;list-style:none}.hist li{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px;padding:8px 0;display:flex}.hist time{color:var(--text-soft);font-variant-numeric:tabular-nums}.hist-act{font-weight:600}.unconf{margin:8px 0 16px}@media (width<=520px){h1{font-size:24px}.tbl{display:block;overflow-x:auto}}.field--group{border:0;min-inline-size:0;margin:0;padding:0}.field--group legend{align-items:baseline;gap:8px;margin-bottom:6px;padding:0;font-weight:600;display:flex}.sect--readonly{background:var(--bg)}.sect-tag{color:var(--text-soft);border:1px solid var(--border);border-radius:999px;margin-left:12px;padding:2px 10px;font-size:15px;font-weight:400}.tabs{background:var(--tabs-bg);border-radius:999px;gap:4px;max-width:100%;margin-bottom:20px;padding:4px;display:inline-flex}.tab{appearance:none;font:inherit;color:var(--text-soft);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:9px 22px;font-weight:600;transition:background-color .15s,color .15s}.tab:hover:not(.tab--on):not(.tab--off){color:var(--text)}.tab--on{background:var(--tabs-on);color:var(--text);box-shadow:var(--tabs-shadow)}.tab--off{opacity:.45;cursor:not-allowed}.tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=420px){.tabs{width:100%;display:flex}.tab{flex:1;padding-inline:8px}}.chat{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;margin-bottom:20px;padding:20px}.chat-log{flex-direction:column;gap:14px;min-height:200px;max-height:55vh;padding-right:4px;display:flex;overflow-y:auto}.bubble{max-width:82%}.bubble p{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;margin:0;padding:10px 14px}.bubble-who{color:var(--text-soft);margin-bottom:4px;font-size:14px;display:block}.bubble--assistant p{background:var(--bubble-bg)}.bubble--user{align-self:flex-end}.bubble--user .bubble-who{text-align:right}.bubble--user p{background:var(--accent);color:var(--accent-fg)}.bubble--wait p{color:var(--text-soft);font-style:italic}.chat-input{border-top:1px solid var(--border);align-items:flex-end;gap:12px;margin-top:16px;padding-top:16px;display:flex}.chat-input textarea{resize:vertical;flex:1}.chat-input .btn{white-space:nowrap}@media (width<=420px){.bubble{max-width:100%}}.stage{border-left:4px solid var(--accent);background:var(--surface);border-radius:0 6px 6px 0;margin:0 0 20px;padding:12px 16px}.stage--done{border-left-color:var(--ok)}.stage--warn{border-left-color:var(--danger);color:var(--danger);font-weight:600}.site{background:var(--surface);border-bottom:1px solid var(--border);top:env(safe-area-inset-top,0px);z-index:10;position:sticky}.site-inner{flex-wrap:wrap;align-items:center;gap:24px;max-width:880px;margin:0 auto;padding:12px 16px;display:flex}.site-name{color:var(--text);white-space:nowrap;font-size:18px;font-weight:600;text-decoration:none}.site-nav{flex:1;gap:20px;display:flex}.site-nav a{color:var(--text-soft);white-space:nowrap;border-bottom:2px solid #0000;padding:4px 0;text-decoration:none}.site-nav a:hover{color:var(--text)}.site-nav a.on{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.site-me{align-items:center;gap:12px;font-size:15px;display:flex}.site-email{color:var(--text-soft)}.linkish{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;text-decoration:underline}@media (width<=520px){.site-inner{gap:12px}.site-email{display:none}}.chat-progress{margin-bottom:16px}.chat-progress-bar{background:var(--bg);border-radius:999px;height:6px;overflow:hidden}.chat-progress-bar span{background:var(--accent);border-radius:999px;height:100%;transition:width .3s;display:block}.chat-progress p{color:var(--text-soft);margin:8px 0 0;font-size:15px}.intro{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:20px;padding:20px 24px}.intro summary{cursor:pointer;list-style:revert;font-size:18px;font-weight:600}.intro summary::marker{color:var(--text-soft)}.intro[open] summary{margin-bottom:12px}.intro ol{margin:0;padding-left:1.4em}.intro li{margin-bottom:8px}.intro li:last-child{margin-bottom:0}
