:root{--ink:#17221f;--muted:#66736f;--paper:#f4f3ef;--card:#fff;--green:#0d624f;--green2:#e3f1eb;--lime:#c9f36a;--line:#dfe3df;--amber:#ad6819;--red:#b43d3d;--shadow:0 18px 55px rgba(25,42,36,.1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.brand-panel{background:var(--green);color:#fff;padding:9vh 10vw 8vh 7vw;position:relative;overflow:hidden}.brand-panel:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(255,255,255,.17);border-radius:50%;right:-180px;bottom:-100px;box-shadow:0 0 0 85px rgba(255,255,255,.035),0 0 0 170px rgba(255,255,255,.025)}.brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--lime);color:var(--green);font-weight:900;letter-spacing:-1px}.brand-panel h1{font-size:clamp(3.4rem,6vw,6.3rem);letter-spacing:-.065em;line-height:.9;margin:16vh 0 30px;max-width:800px}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:var(--lime);margin:24px 0 10px}.eyebrow.dark{color:var(--green)}.lede{font-size:1.18rem;color:#d7e7e1;max-width:580px;line-height:1.6}.trust-row{position:absolute;left:7vw;bottom:5vh;display:flex;gap:26px;color:#b9d0c8;font-size:.78rem}.trust-row span:before{content:"✓";color:var(--lime);margin-right:7px}.auth-card{display:flex;flex-direction:column;justify-content:center;padding:8vh clamp(30px,8vw,130px);background:#fbfaf7}.auth-card h2{font-size:2.3rem;letter-spacing:-.04em;margin:5px 0}.muted,.hint{color:var(--muted)}.auth-card form{margin-top:35px}.auth-card label{display:grid;gap:8px;margin:17px 0;font-size:.83rem;font-weight:700}.auth-card input,.auth-card select,.auth-card textarea,.content input,.content select,.content textarea{border:1px solid #cad1cd;background:#fff;border-radius:10px;padding:13px 14px;outline:none;width:100%}.auth-card input:focus,.content input:focus,.content textarea:focus,.content select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(13,98,79,.12)}.button{border:0;border-radius:10px;padding:13px 18px;font-weight:750}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#084c3e}.button.secondary{background:#edf0ed;color:var(--ink)}.button.danger{background:#fae8e6;color:var(--red)}.button.wide{width:100%;display:flex;justify-content:center;gap:20px}.demo-box{background:var(--green2);border-radius:10px;padding:14px;margin-top:22px;font-size:.8rem;line-height:1.5}.switch{text-align:center;margin-top:26px;color:var(--muted);font-size:.85rem}.link-button{background:none;border:0;color:var(--green);font-weight:800;padding:0}.mobile-brand{display:none}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.check-grid label{display:flex;align-items:center;gap:7px;margin:0;font-weight:500}.check-grid input{width:auto}fieldset{border:0;padding:0;margin:18px 0}legend{font-size:.83rem;font-weight:700;margin-bottom:10px}
#app{min-height:100vh;padding-left:248px}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#102e26;color:#fff;padding:26px 18px;display:flex;flex-direction:column;z-index:5}.logo{display:flex;align-items:center;gap:12px;padding:0 8px 30px}.brand-mark.small{width:40px;height:40px;border-radius:11px;font-size:.8rem}.logo strong{font-size:1.05rem}.logo small,.sidebar-foot small{display:block;color:#9db3ac;font-size:.7rem;margin-top:2px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{border:0;background:none;color:#adc0ba;text-align:left;border-radius:9px;padding:12px 14px;font-weight:650}.sidebar nav button.active,.sidebar nav button:hover{color:#fff;background:rgba(255,255,255,.09)}.sidebar nav button span{display:inline-block;width:25px}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:20px 6px 0;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:var(--green);font-size:.75rem;font-weight:900}.sidebar-foot strong{font-size:.8rem}.sidebar-foot button{background:none;border:0;color:#fff;font-size:1.1rem}.topbar{height:92px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 38px;position:sticky;top:0;z-index:4}.topbar .eyebrow{margin:0}.topbar h2{margin:3px 0 0;font-size:1.45rem}.notification-button{margin-left:auto;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;position:relative}.notification-button span{position:absolute;right:-5px;top:-6px;background:var(--red);color:#fff;border-radius:20px;font-size:.65rem;padding:2px 6px}.icon-button{display:none}.content{padding:34px 38px;max-width:1480px;margin:auto}.hero{background:linear-gradient(110deg,#0d624f,#15483d);color:#fff;padding:34px;border-radius:18px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.hero h1{font-size:2.3rem;letter-spacing:-.04em;margin:4px 0 9px}.hero p{color:#cbded8;margin:0;max-width:650px}.progress-ring{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--lime) var(--progress),rgba(255,255,255,.14) 0);position:relative}.progress-ring:after{content:"";position:absolute;inset:9px;background:#185344;border-radius:50%}.progress-ring strong{position:relative;z-index:1;font-size:1.55rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.stat,.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px}.stat span{color:var(--muted);font-size:.78rem;font-weight:700}.stat strong{display:block;font-size:1.8rem;margin-top:8px}.stat small{color:var(--muted)}.grid-2{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.card h3,.card h2{margin:0}.card-head p{margin:5px 0 0}.status{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:5px 9px;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status.compliant,.status.approved{background:#dcf3e8;color:#187255}.status.pending,.status.pending_review{background:#fff1d9;color:var(--amber)}.status.non_compliant,.status.rejected,.status.expired{background:#fae4e2;color:var(--red)}.status.draft,.status.incomplete{background:#e9eeec;color:#66736f}.action-list,.activity-list{display:grid;gap:0}.action-row,.activity-row{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.action-row:first-child,.activity-row:first-child{border-top:0}.action-icon{width:38px;height:38px;border-radius:10px;background:var(--green2);display:grid;place-items:center;color:var(--green)}.action-row strong,.activity-row strong{font-size:.84rem}.action-row small,.activity-row small{display:block;color:var(--muted);margin-top:3px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.section-head h1{margin:0;font-size:2rem;letter-spacing:-.04em}.section-head p{margin:7px 0 0;color:var(--muted)}.form-section{margin-bottom:18px}.form-section h3{border-bottom:1px solid var(--line);padding-bottom:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{font-size:.78rem;font-weight:750;display:grid;gap:7px}.form-grid label.full{grid-column:1/-1}.form-actions{position:sticky;bottom:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid var(--line);padding:13px;border-radius:13px;display:flex;justify-content:flex-end;gap:10px;box-shadow:var(--shadow)}.trade-pills{display:flex;gap:7px;flex-wrap:wrap}.pill{background:var(--green2);color:var(--green);border-radius:20px;padding:7px 11px;font-size:.72rem;font-weight:700}.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.document-card{border:1px solid var(--line);border-radius:13px;padding:17px;background:#fff}.document-card .doc-icon{width:38px;height:44px;background:var(--green2);border-radius:8px;display:grid;place-items:center;color:var(--green);font-weight:900;margin-bottom:14px}.document-card h4{margin:0 0 7px}.document-card p{font-size:.75rem;color:var(--muted);min-height:36px}.document-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.document-card footer button{border:0;background:none;color:var(--green);font-weight:800;font-size:.75rem}.upload-zone{border:2px dashed #b9c8c2;border-radius:14px;padding:28px;text-align:center;background:#f8faf8;margin-bottom:20px}.upload-zone input{max-width:380px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;color:var(--muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;padding:11px;border-bottom:1px solid var(--line)}.data-table td{padding:14px 11px;border-bottom:1px solid var(--line);font-size:.82rem}.data-table tr[data-id]{cursor:pointer}.data-table tr[data-id]:hover{background:#f5f8f6}.detail-layout{display:grid;grid-template-columns:1fr 320px;gap:20px}.review-box{background:#f7f8f6;border-radius:11px;padding:14px;margin:12px 0}.review-actions{display:flex;gap:8px;margin-top:10px}.note-input{margin-top:8px}.empty{text-align:center;color:var(--muted);padding:40px 20px}.toast{position:fixed;right:25px;bottom:25px;background:var(--ink);color:#fff;border-radius:10px;padding:13px 18px;z-index:20;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:none}.toast.error{background:var(--red)}dialog{border:0;border-radius:16px;padding:0;width:min(680px,calc(100vw - 32px));box-shadow:0 30px 100px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(12,25,21,.55)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.dialog-head h3{margin:0}.dialog-head button{border:0;background:none;font-size:1.5rem}.dialog-head+div{padding:20px;max-height:70vh;overflow:auto}.notice{padding:12px;border-left:3px solid var(--amber);background:#fff7e8;font-size:.8rem;margin:12px 0}.audit-row{padding:12px 0;border-bottom:1px solid var(--line);font-size:.8rem}.audit-row small{display:block;color:var(--muted);margin-top:4px}
@media(max-width:980px){.auth-shell{grid-template-columns:1fr}.brand-panel{display:none}.mobile-brand{display:flex;align-items:center;gap:10px;font-weight:800}.auth-card{min-height:100vh;padding:40px max(24px,8vw)}.stats{grid-template-columns:1fr 1fr}.grid-2,.detail-layout{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){#app{padding-left:0}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.topbar{padding:0 20px}.icon-button{display:block;border:0;background:none;font-size:1.3rem;margin-right:14px}.content{padding:24px 18px}.hero{align-items:flex-start}.progress-ring{width:80px;height:80px;flex:none}.stats{grid-template-columns:1fr 1fr}.document-grid,.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.trust-row{display:none}}@media(max-width:460px){.stats{grid-template-columns:1fr}.hero{display:block}.progress-ring{margin-top:20px}.document-grid{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}}
