:root{--ink:#182329;--muted:#708087;--line:#dce6e6;--paper:#f6f9f8;--panel:#fff;--teal:#0f6e68;--teal-dark:#084e4b;--danger:#b94b44;--warning:#b47826;--success:#22735a;--shadow:0 18px 45px rgb(31 60 62/7%)}*{box-sizing:border-box}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a{color:var(--teal);text-decoration:none}a:hover{color:var(--teal-dark)}button,input,select{font:inherit}button{cursor:pointer}.app-frame{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{padding:26px 18px 18px;background:#102c2e;color:#eaf5f2;display:flex;flex-direction:column;gap:24px}.brand{display:flex;gap:10px;align-items:center;color:#fff;font-weight:750;letter-spacing:-.02em}.brand-mark{display:inline-grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#b8ddc6;color:#123b3a;font-size:13px;font-weight:850}.eyebrow,.sidebar-caption{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:750;color:#7f9999}.nav{display:grid;grid-gap:5px;gap:5px}.nav a{padding:10px 12px;border-radius:10px;color:#b8ceca;font-size:14px}.nav a:focus-visible,.nav a:hover{color:#fff;background:rgb(255 255 255/9%)}.sidebar-footer{margin-top:auto;display:grid;grid-gap:18px;gap:18px}.tenant-current{display:grid;grid-gap:2px;gap:2px;color:#eaf5f2;font-size:13px}.tenant-current select{width:100%;padding:7px 8px;border:1px solid rgb(255 255 255/15%);border-radius:8px;color:#fff;background:#193c3e}.link-button{border:0;padding:0 12px;color:#9dc0bc;background:none;text-align:left}.main{min-width:0}.topbar{min-height:76px;padding:18px clamp(20px,4vw,54px);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:rgb(255 255 255/70%)}.topbar strong{display:block;margin-top:2px;font-size:15px}.badge,.user-chip{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:750;letter-spacing:.02em}.user-chip{border:1px solid var(--line);color:var(--muted)}.operator-banner{padding:10px clamp(20px,4vw,54px);color:#6f5a24;background:#fff4da;border-bottom:1px solid #f1dfaf;font-size:13px;display:flex;justify-content:space-between;gap:15px}.content{width:min(1260px,100%);margin:0 auto;padding:clamp(24px,4vw,52px)}.page-heading{margin-bottom:28px;display:flex;justify-content:space-between;align-items:end;gap:22px}h1,h2,p{margin-top:0}h1{font-size:clamp(29px,4vw,48px);line-height:1.05;letter-spacing:-.055em}h1,h2{margin-bottom:8px}h2{font-size:18px;letter-spacing:-.025em}.page-heading p{max-width:680px;margin-bottom:0;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 15px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;font-weight:720;font-size:13px;white-space:nowrap}.button:hover{border-color:#a7c4c1;background:#f6fbfa}.button.primary{color:#fff;border-color:var(--teal);background:var(--teal);box-shadow:0 6px 16px rgb(15 110 104/16%)}.button.primary:hover{background:var(--teal-dark)}.button:disabled{cursor:wait;opacity:.56}.button.wide{width:100%}.button-row{display:flex;gap:8px;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:13px;gap:13px;margin-bottom:18px}.stat-card{display:grid;grid-gap:3px;gap:3px;min-height:136px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--panel);box-shadow:var(--shadow);color:var(--ink)}.stat-card span{color:var(--muted);font-size:13px}.stat-card strong{font-size:36px;line-height:1;letter-spacing:-.06em}.muted,.stat-card small{color:var(--muted);font-size:12px}.stat-card.danger{border-top:3px solid var(--danger)}.stat-card.warning{border-top:3px solid #cf9e4d}.stat-card.success{border-top:3px solid var(--success)}.stat-card.neutral{border-top:3px solid #94a9aa}.dashboard-grid,.deadline-grid,.detail-grid,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin-bottom:18px}.panel,.state-card{padding:22px;border:1px solid var(--line);border-radius:15px;background:var(--panel);box-shadow:var(--shadow)}.state-card.danger{border-color:#efc9c5;background:#fffaf9}.state-card.warning{border-color:#ead7b5;background:#fffdf7}.state-card.success{border-color:#c2e1d5;background:#f9fffc}.action-row,.case-header,.finding,.history-row,.notification-row,.observation,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading{margin-bottom:17px}.section-heading h2{margin-bottom:0}.action-list,.case-list,.discrepancy-list,.notification-list,.observation-list,.timeline{display:grid;grid-gap:8px;gap:8px}.action-row,.notification-row{padding:12px 0;border-top:1px solid var(--line);color:var(--ink)}.action-row:first-child,.notification-row:first-child{border-top:0}.action-row span,.finding span,.notification-row span{display:grid;grid-gap:2px;gap:2px}.action-row small,.finding small,.notification-row small,.observation small{color:var(--muted);font-size:12px}.badge{background:#edf3f2;color:#526567}.badge.danger{background:#fde5e1;color:#9f3730}.badge.warning{background:#fff0d2;color:#855914}.badge.success{background:#dff3e9;color:#1e684e}.timeline-row{display:flex;gap:12px;padding:9px 0}.timeline-dot{width:9px;height:9px;margin-top:7px;border-radius:50%;background:#61a8a0;box-shadow:0 0 0 5px #e6f2ef}.timeline-row p{margin:2px 0 0;color:var(--muted);font-size:12px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;min-width:790px}td,th{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:13px}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em}tr:last-child td{border-bottom:0}td small{display:block;margin-top:3px}.domain-link{font-weight:750}.ascii,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.ascii{color:var(--muted)}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:15px;flex-wrap:wrap}.toolbar input,.toolbar select,input,select{min-height:40px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fff}label{display:grid;grid-gap:6px;gap:6px;font-size:13px;font-weight:700}label input{width:100%;margin-top:2px;font-weight:400}.toolbar input{width:min(320px,100%)}.state-card h2{margin-bottom:12px}.state-card>p:last-child{margin-bottom:0}.big-date{display:block;margin-bottom:5px;font-size:28px;letter-spacing:-.05em}.form-grid{align-items:start}.inline-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.inline-form label{flex:1 1 220px}.form-error{color:var(--danger);font-size:12px}.form-success{color:var(--success);font-size:12px}.form-stack{display:grid;grid-gap:14px;gap:14px;max-width:560px}.dropzone{padding:26px;border:1px dashed #9cc3bd;border-radius:12px;color:var(--teal-dark);background:#f5fbf9}.dropzone input{margin-top:10px;border:0;padding:0;background:transparent}.dropzone small{display:block;margin-top:8px;color:var(--muted);font-weight:400}.import-summary{display:flex;gap:13px;flex-wrap:wrap;margin:16px 0;color:var(--muted);font-size:12px}.compact{margin-bottom:15px}.compact table{min-width:600px}.callout{padding:15px 18px;border-left:3px solid #68aaa0;border-radius:9px;color:#42635f;background:#eaf6f3;font-size:13px}.callout p{margin:3px 0 0}.stepper{display:flex;gap:8px;margin-bottom:18px;padding:9px;overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.stepper span{padding:7px 9px;color:var(--muted);font-size:12px;white-space:nowrap}.stepper .done{color:var(--success)}.stepper .active{border-radius:7px;color:var(--teal-dark);background:#e1f2ef;font-weight:750}.history-row{padding:12px 0;border-top:1px solid var(--line)}.history-row:first-of-type{border-top:0}.finding{justify-content:start;padding:12px 0;border-top:1px solid var(--line)}.finding:first-of-type{border-top:0}.observation{padding:10px 0;border-top:1px solid var(--line)}.observation:first-child{border-top:0}.case-card{display:grid;grid-gap:16px;gap:16px}.case-header{align-items:start}.case-header h2{margin:0}.case-meta{display:flex;gap:30px;flex-wrap:wrap}.case-meta span{display:grid;grid-gap:3px;gap:3px}.case-meta small{color:var(--muted)}.client-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.client-card{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow);color:var(--ink)}.client-card:hover{border-color:#9fc4be;transform:translateY(-1px)}.client-card h2{margin:0}.client-metrics{display:flex;gap:26px;margin:22px 0 15px}.client-metrics span{display:grid;grid-gap:1px;gap:1px}.client-metrics strong{font-size:25px}.client-metrics small{color:var(--muted);font-size:11px}.back-link{display:block;margin-bottom:11px;font-size:13px}.loading-grid{display:grid;grid-gap:16px;gap:16px;padding:50px}.skeleton{height:150px;border-radius:15px;background:linear-gradient(100deg,#e7eeee 20%,#f8fbfb 40%,#e7eeee 60%);background-size:200% 100%;animation:shimmer 1.4s infinite}.skeleton.large{height:100px}.skeleton.wide{height:300px}@keyframes shimmer{to{background-position:-200% 0}}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 15%,#d8eee7,transparent 34%),#f4f8f6}.login-card{width:min(460px,100%);display:grid;grid-gap:17px;gap:17px;padding:clamp(25px,6vw,48px);border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 25px 80px rgb(32 69 66/13%)}.login-card .brand{color:var(--ink)}.login-card h1{margin-bottom:0;font-size:36px}.login-card form{display:grid;grid-gap:14px;gap:14px}.login-card small{text-align:center}.wide{width:100%}@media (max-width:980px){.app-frame{grid-template-columns:1fr}.sidebar{position:relative;padding:14px 20px}.sidebar-caption,.sidebar-footer{display:none}.nav{display:flex;overflow-x:auto;gap:4px}.nav a{white-space:nowrap}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:28px 20px}}@media (max-width:680px){.page-heading{display:grid;align-items:start}.client-grid,.dashboard-grid,.deadline-grid,.detail-grid,.form-grid{grid-template-columns:1fr}.stats-grid{gap:8px}.stat-card{min-height:112px;padding:14px}.stat-card strong{font-size:28px}.topbar{padding:15px 20px}.operator-banner{display:grid}.content{padding:24px 14px}.panel,.state-card{padding:17px}h1{font-size:34px}.client-metrics{gap:16px}}