:root{--bg: #f6f1e7;--paper: #fffdf8;--ink: #26221b;--muted: #6f675a;--line: #e4dccb;--line-strong: #cfc4ad;--kraft: #b98a4e;--accent: #2f6b4f;--accent-ink: #ffffff;--accent-soft: #e3efe7;--warn: #9a5b00;--warn-soft: #fbefd9;--danger: #a3341f;--in: #2f6b4f;--shadow: 0 1px 2px rgba(60, 45, 20, .06), 0 4px 16px rgba(60, 45, 20, .06);--radius: 10px;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #1b1914;--paper: #24211b;--ink: #eee7da;--muted: #a99f8d;--line: #38332a;--line-strong: #4a4337;--kraft: #d1a46a;--accent: #6cc298;--accent-ink: #10231a;--accent-soft: #1f3529;--warn: #e7a84a;--warn-soft: #3a2d17;--danger: #f08a73;--in: #7fd1a7;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 16px rgba(0, 0, 0, .25);color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 var(--font)}h1,h2,h3{line-height:1.2;margin:0 0 .5rem}h2{font-size:1.35rem}h3{font-size:1rem}p{margin:0 0 .75rem}button,select,input{font:inherit;color:inherit}[hidden]{display:none!important}.muted{color:var(--muted)}.small{font-size:.85rem}.mt{margin-top:1.5rem}.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding:.75rem max(16px,calc((100vw - 1180px)/2));background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.6rem}.brand h1{font-size:1.15rem;margin:0;letter-spacing:-.01em}.brand p{margin:0;font-size:.8rem;color:var(--muted)}.tabs{display:flex;gap:.25rem}.tabs button{border:0;background:none;padding:.45rem .8rem;border-radius:8px;cursor:pointer;color:var(--muted);white-space:nowrap}.tabs button[aria-selected=true]{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}.tabs button:hover{color:var(--ink)}.status{margin-left:auto;display:flex;align-items:center;gap:.45rem;font-size:.85rem;color:var(--muted)}.status .dot{width:8px;height:8px;border-radius:50%;background:var(--line-strong)}.status.ok .dot{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.status.busy .dot{background:var(--warn);animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.35}}main{padding:1.5rem max(16px,calc((100vw - 1180px)/2)) 4rem}.primary,.ghost,.danger,.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:8px;padding:.5rem .9rem;cursor:pointer;border:1px solid transparent;font-weight:500;white-space:nowrap}.primary{background:var(--accent);color:var(--accent-ink)}.primary:hover{filter:brightness(1.08)}.ghost,.button{background:var(--paper);border-color:var(--line-strong)}.ghost:hover,.button:hover{border-color:var(--ink)}.danger{background:none;border-color:var(--danger);color:var(--danger)}button:disabled{opacity:.55;cursor:default}.link{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;margin-top:1rem}.actions.left{justify-content:flex-start;margin-top:.5rem}.hero{max-width:720px;margin:2rem auto;text-align:center}.hero h2{font-size:clamp(1.6rem,4vw,2.3rem);letter-spacing:-.02em;text-wrap:balance}.lede{font-size:1.05rem;color:var(--muted);text-wrap:pretty}.lede strong{color:var(--ink)}.drop{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin:2rem 0 1rem;padding:2.5rem 1.5rem;cursor:pointer;background:var(--paper);border:2px dashed var(--line-strong);border-radius:16px;transition:border-color .15s,background .15s}.drop:hover,.drop.over{border-color:var(--accent);background:var(--accent-soft)}.drop strong{font-size:1.1rem}.drop span{color:var(--muted);font-size:.9rem}.drop .drop-icon{font-size:1.8rem;color:var(--kraft)}.or{color:var(--muted)}.steps{list-style:none;padding:0;margin:2.5rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;text-align:left;counter-reset:s}.steps li{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;font-size:.9rem;color:var(--muted);counter-increment:s}.steps li:before{content:counter(s);display:grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--kraft);color:#fff;font-weight:700;font-size:.8rem;margin-bottom:.5rem}.steps b{color:var(--ink)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow)}#view-map .card{max-width:860px;margin:1rem auto}.map-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem 1rem;margin:1rem 0}.map-grid label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--muted)}.map-grid label.check{flex-direction:row;align-items:center;gap:.5rem;grid-column:1 / -1;color:var(--ink)}select,input[type=search]{background:var(--paper);border:1px solid var(--line-strong);border-radius:8px;padding:.45rem .6rem;color:var(--ink);max-width:100%}.preview-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px}.preview{width:100%;border-collapse:collapse;font-size:.85rem}.preview th,.preview td{padding:.4rem .6rem;border-bottom:1px solid var(--line);text-align:left}.preview tr:last-child td{border-bottom:0}.progress{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem 1rem;margin-bottom:1rem}.progress .bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden}.progress .bar span{display:block;height:100%;width:0;background:var(--accent);transition:width .2s}.progress p{margin:.5rem 0 0;font-size:.85rem;color:var(--muted)}.banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:var(--accent-soft);border:1px solid color-mix(in oklab,var(--accent) 30%,transparent);border-radius:var(--radius);padding:.75rem 1rem;margin-bottom:1rem}.banner p{margin:0}.banner.warn{background:var(--warn-soft);border-color:color-mix(in oklab,var(--warn) 35%,transparent);display:block}.toolbar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:.75rem}.toolbar input[type=search]{flex:1 1 180px;min-width:0}.seg{display:flex;background:var(--paper);border:1px solid var(--line-strong);border-radius:9px;padding:2px;overflow-x:auto;max-width:100%}.seg button{border:0;background:none;padding:.38rem .7rem;border-radius:7px;cursor:pointer;color:var(--muted);white-space:nowrap}.seg button.on{background:var(--ink);color:var(--paper)}.seg .count{font-variant-numeric:tabular-nums;opacity:.75;margin-left:.15rem}.table-wrap{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}table.tx{width:100%;border-collapse:collapse}.tx th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;padding:.6rem .75rem;border-bottom:1px solid var(--line-strong);position:sticky;top:0;background:var(--paper)}.tx td{padding:.5rem .75rem;border-bottom:1px solid var(--line);vertical-align:middle}.tx tr:last-child td{border-bottom:0}.tx tr.is-unsure td:first-child{box-shadow:inset 3px 0 var(--warn)}.tx .date{white-space:nowrap;font-variant-numeric:tabular-nums;font-family:var(--mono);font-size:.85rem}.tx .date .yr{display:block;color:var(--muted);font-size:.72rem}.tx .desc{min-width:220px}.tx .desc .raw{display:block;font-family:var(--mono);font-size:.82rem;word-break:break-word}.tx .desc .clean{display:block;color:var(--muted);font-size:.78rem}.tx .group{font-size:.7rem;font-weight:600;padding:0 .4rem;border-radius:99px;background:var(--warn-soft);color:var(--warn)}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.num{font-family:var(--mono);font-size:.88rem}.num.in{color:var(--in);font-weight:600}.tx select.cat{width:100%;min-width:190px}.why{display:inline-block;font-size:.75rem;padding:.15rem .5rem;border-radius:99px;background:var(--line);color:var(--muted);white-space:nowrap}.why.you,.why.rule{background:var(--ink);color:var(--paper)}.why.learned{background:color-mix(in oklab,var(--kraft) 25%,var(--paper));color:var(--ink)}.why.ai{background:var(--accent-soft);color:var(--accent)}.why.unsure{background:var(--warn-soft);color:var(--warn);font-weight:600}.why.confirm{border:1px solid color-mix(in oklab,var(--warn) 45%,transparent);cursor:pointer;font:inherit;font-size:.75rem}.why.confirm:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.empty{text-align:center;color:var(--muted);padding:2.5rem 1rem;margin:0}.more{display:block;margin:.75rem auto}.sum-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.sum-head h2{display:flex;align-items:center;gap:.5rem;margin:0}.sum-head .actions{margin:0}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.kpi{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow);display:flex;flex-direction:column}.kpi span{color:var(--muted);font-size:.85rem}.kpi strong{font-size:1.6rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.kpi small{color:var(--muted);font-size:.75rem}.sum-cols{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem;align-items:start}table.sum{width:100%;border-collapse:collapse;font-size:.9rem}.sum th{text-align:left;font-size:.75rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.4rem .5rem;border-bottom:1px solid var(--line-strong)}.sum td{padding:.45rem .5rem;border-bottom:1px solid var(--line)}.sum tfoot td{font-weight:700;border-bottom:0;border-top:2px solid var(--line-strong)}.top-list{list-style:none;padding:0;margin:0}.top-list li{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-bottom:1px solid var(--line)}.top-list strong{font-variant-numeric:tabular-nums}.disclaimer{margin-top:1rem}.model{border-top:1px solid var(--line);padding:1rem 0}.model:first-of-type{border-top:0;padding-top:0}.model .state{font-size:.85rem;margin:.25rem 0 .5rem}.tag{font-size:.7rem;font-weight:600;padding:.1rem .45rem;border-radius:99px;background:var(--line);color:var(--muted);vertical-align:middle}.rules{list-style:none;padding:0;margin:0;max-height:320px;overflow:auto}.rules li{display:grid;grid-template-columns:1fr auto auto;gap:.75rem;padding:.35rem 0;border-bottom:1px solid var(--line);font-size:.9rem}.toast{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:10;display:flex;gap:1rem;align-items:center;max-width:min(560px,calc(100vw - 32px));background:var(--ink);color:var(--paper);padding:.7rem 1rem;border-radius:10px;box-shadow:var(--shadow);font-size:.9rem}.toast .link{color:var(--paper);font-weight:600}@media(max-width:760px){.top{gap:.6rem}.tabs{order:3;width:100%;overflow-x:auto}.steps,.sum-cols{grid-template-columns:1fr}.tx th:nth-child(5),.tx td:nth-child(5){display:none}.tx select.cat{min-width:140px}}@media print{body{background:#fff;color:#000;font-size:11pt}.top,.tabs,.actions,#view-tx,#view-settings,.toast,.banner{display:none!important}#view-summary{display:block!important}main{padding:0}.card,.kpi{box-shadow:none;border-color:#ccc;break-inside:avoid}.sum-cols{grid-template-columns:1fr}}
