:root{--ink:#1b2430;--ink-muted:#5a6675;--line:#d8dee6;--canvas:#f3f5f7;--surface:#ffffff;--accent:#1f5fa9;--alert:#7a2e2e;--bar:3.25rem;--nav:240px}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif;background:var(--canvas);color:var(--ink)}.centered{margin:15vh auto 0;max-width:30rem;padding:0 1.5rem;text-align:center}.centered h1{font-size:1.35rem;margin:0 0 .5rem}.note{color:var(--ink-muted)}.alert,.note{margin:0 0 1.25rem}.alert{color:var(--alert)}button{font:600 15px/1 inherit;padding:.85rem 1.4rem;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:inherit;cursor:pointer}button:hover{background:#eef2f6}button.quiet{font-weight:500;font-size:13px;padding:.4rem .7rem;color:var(--ink-muted)}.panel{padding:1.5rem}.page{display:flex;flex-direction:column;height:100%}.topbar{display:flex;align-items:center;gap:.75rem;height:var(--bar);padding:0 1rem;border-bottom:1px solid var(--line);background:var(--surface);flex:0 0 auto}.brand{font-weight:600;text-decoration:none;color:var(--ink);margin-right:auto}.nav-toggle{font-size:13px;padding:.4rem .7rem}.shell{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.nav{display:none;border-bottom:1px solid var(--line);background:var(--surface);padding:.75rem 1rem 1rem;overflow-y:auto}.nav-open{display:block}.group{margin:0 0 1rem}.group-title{font:600 11px/1.4 inherit;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .4rem}.nav ul{list-style:none;margin:0;padding:0}.item{display:block;padding:.4rem .5rem;border-radius:6px;color:var(--ink);text-decoration:none;font-size:14px}.item:hover{background:#eef2f6;color:var(--accent)}.item-on{background:#e6eef8;color:var(--accent);font-weight:600}.detail{display:block;font-size:12px;color:var(--ink-muted)}.content{flex:1 1 auto;min-height:0;min-width:0;display:flex;flex-direction:column}.content>.note{padding:1.5rem}.frame{width:100%;border:0}.frame,.pivot{flex:1 1 auto;background:var(--surface)}.pivot{min-height:0;overflow:auto;padding:1.5rem}.pivot-header{margin:0 0 1.25rem;padding:0 0 .75rem;border-bottom:1px solid var(--line);font-size:14px}.pivot-boot{list-style:none;margin:0;padding:0}.pivot-line{margin:0}.pivot-work{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:start}.pivot-work h2,.pivot-work h3,.pivot-work legend{margin:0 0 .35rem;padding:0;font-size:13px;font-weight:600}.pivot-work h3{margin-top:.6rem;font-weight:500}.pivot-work ul{list-style:none;margin:0;padding:0}.pivot-work label{display:block;font-size:13px}.pivot-work input[type=date],.pivot-work input[type=search],.pivot-work input[type=text],.pivot-work select{display:block;margin-top:.2rem;padding:.3rem .4rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px}.pivot-work fieldset{margin:0;padding:0;border:0;min-width:0}.pivot-work button:disabled,.pivot-work select:disabled{cursor:default;opacity:.55}.pivot-palette input[type=search]{width:100%}.pivot-list{margin-top:.75rem}.pivot-list>h2{margin-top:.9rem}button.pivot-item,div.pivot-item{display:flex;flex-direction:column;align-items:flex-start;width:100%;margin:0 0 .25rem;padding:.35rem .5rem;border:1px solid var(--line);border-radius:6px;font-weight:500;font-size:13px;text-align:left}.pivot-item-off{opacity:.55}.pivot-detail{font-size:12px;font-weight:400}button.pivot-chip-name,button.pivot-small{padding:.25rem .5rem;border-radius:6px;font-weight:500;font-size:13px}.pivot-menu{display:flex;flex-wrap:wrap;gap:.3rem;align-items:flex-end;margin:0 0 .5rem;padding:.4rem;border:1px solid var(--line);border-radius:6px}.pivot-zones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.pivot-zone{min-height:5rem;padding:.5rem;border:1px solid var(--line);border-radius:8px}.pivot-chip{margin:0 0 .3rem}.pivot-chip-invalid>.pivot-chip-name{outline:2px solid var(--alert);outline-offset:1px}.pivot-why{margin:.25rem 0 0;font-size:12px;color:var(--alert)}.pivot-values{margin-top:.75rem;padding:.75rem;border:1px solid var(--line);border-radius:8px}.pivot-values ul{max-height:14rem;margin-bottom:.5rem;overflow:auto}.pivot-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin:.75rem 0;padding:.75rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pivot-controls select{display:inline-block}.pivot-name{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin:0 0 1rem;font-size:14px}.pivot-name input{display:block;margin-top:.25rem;padding:.4rem .5rem;border:1px solid var(--line);border-radius:6px;font:inherit;color:inherit;background:var(--surface)}.pivot-reports{margin:0 0 1rem;padding:.75rem;border:1px solid var(--line);border-radius:8px;font-size:14px}.pivot-reports-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.pivot-reports h2,.pivot-viewing{margin:0;font-size:15px}.pivot-viewing{margin-bottom:.75rem}.pivot-reports ul{list-style:none;margin:.5rem 0 0;padding:0}.pivot-reports li{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:center;padding:.4rem 0;border-top:1px solid var(--line)}.pivot-reports-name{font-weight:600}.pivot-reports-failed{flex-basis:100%;color:var(--alert)}.pivot-reports .alert,.pivot-reports .note{margin:.5rem 0 0}.pivot-invalid{margin:0 0 .75rem;padding:.6rem .75rem;border:1px solid var(--alert);border-radius:8px;color:var(--alert);font-size:14px}.pivot-count{margin:0 0 .5rem;font-size:13px}.pivot-grid-wrap{overflow:auto}.pivot-grid-dim{opacity:.45}.pivot-grid{border-collapse:collapse;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pivot-grid td,.pivot-grid th{padding:.3rem .6rem;border:1px solid var(--line);white-space:nowrap}.pivot-grid th{font-weight:600;text-align:left;background:var(--canvas)}.pivot-grid td{text-align:right}.pivot-grid td:focus{outline:2px solid var(--accent);outline-offset:-2px}.pivot-grid-total td,.pivot-grid-total th{font-weight:600;border-top:2px solid var(--ink)}.pivot-inspecting{display:flex;gap:1rem;align-items:flex-start}.pivot-inspecting>.pivot-grid-wrap{flex:1 1 auto;min-width:0}.pivot-inspector{flex:0 0 20rem;border:1px solid var(--line);background:var(--surface);font-size:13px}.pivot-inspector h2{margin:0 0 .5rem;font-size:15px}.pivot-lens{border:1px solid var(--line);border-radius:4px;padding:0 .35rem;font-size:12px;font-weight:400}.pivot-inspector-value,.pivot-provisional{margin:0 0 .5rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pivot-inspector dl{margin:0 0 .75rem}.pivot-inspector dt{font-weight:600}.pivot-inspector dd{margin:0 0 .35rem;overflow-wrap:anywhere}.pivot-inspector-fields dd{color:var(--ink-muted)}.pivot-grid td[aria-selected=true]{background:var(--canvas)}@media (min-width:720px){.nav-toggle{display:none}.shell{flex-direction:row}.nav{display:block;position:-webkit-sticky;position:sticky;top:0;align-self:flex-start;flex:0 0 var(--nav);width:var(--nav);max-height:calc(100vh - var(--bar));border-bottom:0;border-right:1px solid var(--line)}}.uploads{flex:1 1 auto;min-height:0;overflow:auto;padding:1.5rem;background:var(--surface)}.upload-lender{display:block;margin:0 0 1rem;font-size:14px}.upload-lender select{display:block;margin-top:.2rem;padding:.3rem .4rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit}.upload-zone{display:block;width:100%;margin:0 0 1.25rem;padding:2rem 1rem;border:2px dashed var(--line);font-weight:500}.upload-zone>span{pointer-events:none}.upload-zone-over{border-color:var(--accent);background:#e6eef8;color:var(--accent)}.upload-zone:disabled{cursor:default;opacity:.55}.upload-working{margin:0 0 1.25rem;padding:2rem 1rem;border:2px dashed var(--line);border-radius:8px;text-align:center}.upload-alert{margin:0 0 1rem}.upload-alert .alert{margin:0 0 .5rem}.upload-actions{display:flex;gap:.5rem}.upload-offline{margin:0 0 1rem;padding:.5rem .75rem;border:1px solid var(--alert);border-radius:6px;color:var(--alert)}.upload-notice{margin:0 0 1rem;font-weight:500}.upload-log{list-style:none;margin:0;padding:0}.upload-row{padding:.75rem 0;border-top:1px solid var(--line);font-size:14px}.upload-row-head{display:flex;flex-wrap:wrap;gap:.25rem .75rem;align-items:baseline}.upload-file{font-weight:600;overflow-wrap:anywhere}.upload-in-use,.upload-word{font-size:12px;font-weight:600;padding:0 .4rem;border:1px solid var(--line);border-radius:4px}.upload-in-use{border-color:var(--accent);color:var(--accent)}.upload-status,.upload-warnings{margin:.25rem 0 0}.upload-warnings{padding-left:1.25rem;color:var(--ink-muted)}.upload-skeleton{height:3rem;margin:0 0 .75rem;border-radius:8px;background:var(--canvas)}.upload-skeleton-zone{height:6rem}