:root{--bg:#faf9f6;--panel:#fff;--fg:#1f1e1c;--muted:#6b6862;--line:#e4e1da;--hover:#f1efe9;--bad:#b3261e;--warn:#8a5a00;--radius:8px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1b1a18;--panel:#242320;--fg:#ece9e3;--muted:#a39f97;--line:#3a3833;--hover:#2e2c28;--bad:#f2867d;--warn:#e0b45a}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font:15px/1.55 -apple-system,BlinkMacSystemFont,PingFang TC,Noto Sans TC,Microsoft JhengHei,sans-serif}a{color:inherit}button,select,input,textarea{font:inherit;color:inherit}.jp{flex-direction:column;gap:20px;max-width:1200px;margin:0 auto;padding:24px 16px 64px;display:flex}.head{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}h1{margin:0;font-size:1.6rem;font-weight:500}h2{margin:0;font-size:1.15rem;font-weight:600}.lede{color:var(--muted);max-width:65ch;margin:4px 0 0}.actions{align-items:flex-start;gap:8px;display:flex}.tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:12px;display:grid}.tile{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:4px;padding:14px;display:flex}.tile:hover{border-color:var(--muted)}.label{color:var(--muted);font-size:.8rem}.num{font-variant-numeric:tabular-nums;font-size:1.8rem;line-height:1.1}.tile.is-bad .num{color:var(--bad)}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;display:flex}.tab{cursor:pointer;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 14px}.tab[aria-selected=true]{color:var(--fg);border-bottom-color:var(--fg)}.section{flex-direction:column;gap:12px;min-width:0;display:flex}.note{color:var(--muted);max-width:75ch;margin:0;font-size:.8rem}.filters,.chips{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.chips{gap:6px}.chip,.btn{background:var(--bg);cursor:pointer;border:1px solid var(--line);border-radius:var(--radius);padding:4px 10px;font-size:.85rem}.btn:disabled{opacity:.6;cursor:default}.chip[aria-pressed=true]{border-color:var(--fg);background:var(--panel)}.chip b{font-variant-numeric:tabular-nums;font-weight:600}.field{color:var(--muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.field select{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:2px 6px}:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.scroll{max-height:32rem;overflow:auto}.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.table th{background:var(--panel);text-align:left;color:var(--muted);white-space:nowrap;font-size:.8rem;font-weight:600;position:sticky;top:0}.table th,.table td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px 10px}.table tbody tr{cursor:pointer}.table tbody tr:hover,.table tbody tr.is-sel{background:var(--hover)}.nowrap{white-space:nowrap}.bad{color:var(--bad)}.warn{color:var(--warn)}.muted{color:var(--muted)}.empty,.hint{color:var(--muted);margin:0;padding:12px;font-size:.85rem}.detail{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:12px;margin:0;padding:18px;display:grid}.detail>div,.detail>label{flex-direction:column;gap:2px;min-width:0;display:flex}.detail dt,.detail .field>span{color:var(--muted);font-size:.8rem}.detail dd{overflow-wrap:anywhere;margin:0}.detail .dtitle{flex-flow:wrap;grid-column:1/-1;align-items:center;gap:6px}.detail .dtitle dd{font-size:1.1rem;font-weight:600}.detail .field{flex-direction:column;align-items:stretch}.detail textarea{resize:vertical;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);width:100%;padding:6px 8px}.login{flex-direction:column;gap:16px;max-width:360px;margin:18vh auto;padding:0 16px;display:flex}.login form{flex-direction:column;gap:12px;display:flex}.login label{color:var(--muted);flex-direction:column;gap:6px;display:flex}.login input{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:8px 10px}@media (max-width:40rem){.opt,.narrow-hide{display:none}.scroll{max-height:none}.tabs{grid-template-columns:1fr 1fr;display:grid}.tab{text-align:center}}.login .btn{text-align:center;padding:10px 14px;font-size:1rem;text-decoration:none;display:block}
