:root{color-scheme:light;--bg:#f7f9f7;--surface:#fff;--ink:#24322b;--secondary:#627068;--muted:#6f7d73;--border:#e0e7e0;--brand:#315e4b;--strong:#234536;--soft:#eaf2eb;--danger:#ad3b35}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:var(--brand)}:focus-visible{outline:2px solid #547e61;outline-offset:3px}::selection{background:#dce9de}h1,h2,h3,p{margin-top:0}h2{font-size:17px;letter-spacing:-.3px}h2,h3{font-weight:600}h3{font-size:14px}small{display:block;font-size:11px;color:var(--muted);margin-top:4px}hr{border:0;border-top:1px solid var(--border);margin:24px 0}.app-shell{display:flex;min-height:100svh}.app-main{min-width:0;flex:1 1}.main-content{max-width:1540px;margin:auto;padding:40px clamp(24px,3.5vw,56px) 60px}.sidebar{width:246px;min-width:246px;height:100svh;position:sticky;top:0;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;padding:29px 16px 18px;overflow:auto}.brand{display:flex;align-items:center;gap:10px;margin:0 8px 28px;color:var(--ink);text-decoration:none;font-size:23px;letter-spacing:-.8px;font-weight:650}.brand small{font-size:9px;letter-spacing:.1px;font-weight:400;margin-top:0}.logo{display:grid;place-items:center;width:38px;height:38px;background:#254e43;border-radius:10px;color:white;font-size:23px;letter-spacing:-2px}.workspace-id{border:1px solid var(--border);border-radius:10px;padding:13px 12px;background:#fbfcfa;margin-bottom:29px}.workspace-id strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-id .eyebrow{font-size:9px}.eyebrow,.workspace-id small{font-size:10px}.eyebrow{display:block;color:var(--brand);font-weight:600;letter-spacing:1.5px;margin-bottom:9px}.nav-label{font-size:9px;letter-spacing:1.3px;color:#778279;margin:0 12px 10px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:11px;min-height:42px;padding:9px 12px;border-radius:8px;color:#68766d;font-size:12px;text-decoration:none}.sidebar nav a:hover{background:#f3f6f1}.sidebar nav a[aria-current]{background:#eaf1e7;color:#345d35;font-weight:650}.nav-arrow{margin-left:auto;opacity:0}.sidebar nav a[aria-current] .nav-arrow{opacity:1}.sidebar-bottom{margin-top:auto;padding-top:40px}.security-note{display:flex;gap:10px;background:#f4f7f2;border:1px solid #e9eee6;border-radius:9px;padding:13px 10px;margin-bottom:24px;color:#617a62}.security-note strong{font-size:10px}.security-note small{font-size:9px}.account{display:flex;align-items:center;gap:10px;border-top:1px solid var(--border);padding:18px 2px;margin-top:18px}.account strong{font-size:11px}.account small{font-size:9px}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#f0efe6;color:#777348;font-size:11px}.mobile-header{display:none}.mobile-drawer{margin:0;border:0;padding:0;width:min(310px,88vw);max-height:100svh;height:100svh;background:white}.mobile-drawer::backdrop{background:#1c30265c}.mobile-drawer .sidebar{width:100%;height:100%;border:0;padding-top:45px}.drawer-close{position:absolute;right:12px;top:8px;z-index:1}.skip-link{position:fixed;top:-100px;left:20px;z-index:10;background:white;padding:12px}.skip-link:focus{top:10px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);padding-bottom:24px;margin-bottom:28px}.page-heading h1{font-size:clamp(28px,2.5vw,36px);font-weight:550;letter-spacing:-1.2px;line-height:1.2;margin:0 0 10px;overflow-wrap:anywhere}.page-heading p{font-size:13px;color:var(--secondary);line-height:1.7;margin:0;overflow-wrap:anywhere}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 15px;border-radius:8px;border:1px solid var(--border);font-size:12px;font-weight:500;text-decoration:none;background:white;color:var(--secondary);white-space:nowrap}.primary{background:var(--brand);border-color:var(--brand);color:white}.primary:hover:not(:disabled){background:var(--strong)}.secondary:hover:not(:disabled){background:#f3f6f1;border-color:#c9d8c8}.full{width:100%}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.back{display:inline-block;font-size:12px;text-decoration:none;margin-bottom:22px}.overview-banner{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#eaf1e7;border:1px solid #dce7d9;border-radius:12px;padding:28px 32px;margin-bottom:24px}.overview-banner h2{font-size:27px;font-weight:500;line-height:1.2;letter-spacing:-.8px;margin-bottom:12px}.overview-banner p{max-width:420px;font-size:12px;color:#617368;margin:0}.overview-banner>svg{margin-right:35px;color:#87a48a}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-card{border:1px solid var(--border);border-radius:12px;background:white;padding:22px}.stat-card>span{display:flex;align-items:center;gap:10px;color:var(--secondary);font-size:12px}.stat-card>span svg{color:var(--brand)}.stat-card>strong{display:block;font-size:36px;font-weight:500;letter-spacing:-1px;margin:15px 0}.stat-card>a{font-size:11px;text-decoration:none}.stat-card h3{font-size:19px;font-weight:500;margin:15px 0 8px}.stat-card p{font-size:11px;color:var(--muted);margin:0}.soft{background:#f3f6f1!important}.panel{background:white;border:1px solid var(--border);border-radius:12px;padding:24px;min-width:0}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.panel-header h2{margin:0}.panel-header p{font-size:12px;color:var(--muted);margin:5px 0 0}.footnote{font-size:11px;color:var(--muted);margin-top:20px}.table-scroll{position:relative;overflow:auto;border:1px solid #edf1eb;border-radius:9px}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{padding:13px 15px;border-bottom:1px solid var(--border);background:#f7f9f5;color:#69786b;font-size:10px;font-weight:600;letter-spacing:.65px;text-transform:uppercase;white-space:nowrap}td{padding:17px 15px;border-bottom:1px solid #edf1eb;color:var(--secondary)}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcf9}.record-name{color:var(--ink);font-weight:550;text-decoration:none}.record-name:hover,.table-link:hover{text-decoration:underline}.table-link{font-size:12px;text-decoration:none;white-space:nowrap}.document-cell{display:flex;align-items:center;gap:11px;min-width:190px}.document-cell .record-name{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-icon{display:grid;place-items:center;flex-shrink:0;width:35px;height:40px;border:1px solid #dce7d9;border-radius:7px;background:#edf4e9;color:#57734c;font-size:9px;font-weight:650}.file-icon.pdf{background:#f9f0e9;border-color:#eddfd2;color:#aa7956}.badge{display:inline-block;font-size:10px;padding:4px 8px;border-radius:5px;background:#f0f3ef;color:#617369;white-space:nowrap}.badge.positive{background:#e8f3e9;color:#38714c}.badge.muted{background:#f0f1ef;color:#717970}.nowrap{white-space:nowrap}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;color:var(--muted);font-size:11px}.pagination>div{display:flex;gap:8px}.filters{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.filters>button{margin-top:26px}.client-picker{width:100%;max-width:480px}.client-picker>label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.client-picker .pagination{margin-top:10px}.client-picker .pagination button{min-height:30px;padding:5px 10px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}.metadata dt{font-size:11px;color:var(--muted);margin-bottom:7px}.metadata dd{margin:0;font-size:13px;overflow-wrap:anywhere}.status-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin:18px 0;gap:12px}.muted-text{font-size:12px;color:var(--muted);line-height:1.7}.hash{display:block;overflow-wrap:anywhere;font-size:11px;background:var(--bg);border:1px solid var(--border);border-radius:7px;padding:12px}.form-panel{max-width:850px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label,.upload-form>label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600}.span-2{grid-column:1/-1}input,select{width:100%;min-width:0;min-height:45px;border:1px solid #dce3de;border-radius:8px;padding:10px 12px;background:white;color:var(--ink)}input:focus,select:focus{border-color:#688e78}.upload-form{display:flex;flex-direction:column;gap:24px}.upload-form .client-picker{max-width:none}.file-drop{padding:28px 22px;background:#f8faf6;border:1px dashed #b5c9b5;border-radius:10px;text-align:center;align-items:center;overflow-wrap:anywhere}.file-drop span{font-size:11px;font-weight:400;color:var(--muted)}.file-drop input{background:white;margin-top:12px}.file-drop input,.file-drop strong{font-size:12px;max-width:100%}.guidance{padding-left:18px;font-size:12px;color:var(--secondary)}.guidance li{margin:14px 0}.error,.notice,.success{border:1px solid #f2d4ce;border-radius:9px;background:#fff3f1;padding:15px 17px;color:#a53829;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.notice{background:#faf8ee;border-color:#e5dfc6;color:#746534}.success{background:#eef6ec;border-color:#d5e7d1;color:var(--strong)}.notice h2,.success h2{margin-bottom:8px}.empty,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:48px 24px}.empty p,.error-state p{font-size:13px;color:var(--secondary);max-width:480px}.empty h2,.error-state h2{margin:8px 0 0}.error-state>svg{color:var(--danger)}.empty-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:16px;background:#f0f5ed;color:#749171}.loading{min-height:180px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--secondary);font-size:13px}.spinner{width:18px;height:18px;border:2px solid #d7e5d8;border-top:2px solid var(--brand);border-radius:50%;animation:spin 1s linear infinite}.center{max-width:800px;margin:10vh auto;padding:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:1100px){.detail-grid{grid-template-columns:minmax(0,1fr)}.overview-banner>svg{margin-right:0}.stats-grid{gap:12px}.stat-card{padding:18px}.sidebar{width:220px;min-width:220px}.main-content{padding:30px 24px}}@media (max-width:760px){.desktop-sidebar{display:none}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid var(--border);background:white}.mobile-header .brand{margin:0;font-size:21px}.mobile-header .logo{width:32px;height:32px;font-size:20px}.main-content{padding:25px 20px 40px}.page-heading{align-items:flex-start;flex-direction:column;gap:18px}.page-heading>.primary{width:100%}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid .stat-card:last-child{grid-column:1/-1}.overview-banner{padding:23px;gap:15px}.overview-banner>svg{width:60px;height:60px;flex-shrink:0}.overview-banner h2{font-size:25px}.panel{padding:18px}.panel-header{align-items:flex-start}.form-grid,.metadata{grid-template-columns:1fr}.filters{flex-direction:column;gap:12px}.filters>button{margin-top:0}.client-picker{max-width:none}input,select{font-size:16px}.pagination{flex-wrap:wrap}.span-2{grid-column:auto}.table-scroll{margin:0 -2px}.document-cell .record-name{max-width:180px}}@media (prefers-reduced-motion:reduce){*,:before{animation:none!important;transition:none!important}}