:root{--ink:#14211d;--muted:#65716c;--paper:#f4f5f1;--white:#fff;--green:#78d6a7;--green-dark:#0c6a48;--line:#dfe4df;--gold:#d4a94e;--red:#c95454;--nav:#111b18;--nav-soft:#1d2a25;--shadow:0 14px 40px #10211b14}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#eaf2ee;flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 8px 24px;display:flex}.brand-mark{width:40px;height:40px;color:var(--green);letter-spacing:-1px;border:1px solid #78d6a780;place-items:center;font-weight:800;display:grid}.brand strong{letter-spacing:.09em;font-size:14px;display:block}.brand span{color:#91a099;margin-top:3px;font-size:11px;display:block}.nav-label{letter-spacing:.16em;color:#73837b;margin:20px 12px 7px;font-size:9px}.nav-item{color:#aebbb5;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;width:100%;height:41px;padding:0 12px;font-size:13px;display:flex}.nav-item>span{color:#85968e;text-align:center;width:25px;font-size:14px}.nav-item:hover{background:var(--nav-soft);color:#fff}.nav-item.active{color:#fff;box-shadow:inset 3px 0 var(--green);background:#25352e}.nav-item.active>span{color:var(--green)}.nav-item span:first-child:has(+span){width:auto}.nav-count{color:#f4c788;background:#49372b;border-radius:12px;margin-left:auto;padding:2px 7px;font-size:10px}.sidebar-footer{border-top:1px solid #29372f;align-items:center;gap:10px;margin-top:auto;padding:18px 8px 2px;display:flex}.status-dot{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #78d6a71f}.sidebar-footer strong,.sidebar-footer small{display:block}.sidebar-footer strong{font-size:11px}.sidebar-footer small{color:#7f9188;margin-top:2px;font-size:10px}main{min-width:0}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:10;background:#ffffffdb;align-items:center;gap:20px;height:88px;padding:0 32px;display:flex;position:sticky;top:0}.menu-button{display:none}.page-heading{margin-right:auto}.eyebrow,.section-kicker{letter-spacing:.16em;color:var(--green-dark);font-size:9px;font-weight:750}.page-heading h1{margin:5px 0 0;font-size:22px}.top-actions{align-items:center;gap:12px;display:flex}.search{border:1px solid var(--line);color:#819087;background:#f4f6f3;border-radius:8px;align-items:center;gap:7px;height:40px;padding:0 11px;display:flex}.search input{width:225px;color:var(--ink);background:0 0;border:0;outline:0}.icon-button{border:1px solid var(--line);color:#26352f;background:#fff;border-radius:8px;width:40px;height:40px;position:relative}.pulse{background:var(--red);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;right:9px}.profile-button{text-align:left;background:0 0;border:0;align-items:center;gap:9px;display:flex}.profile-button>span{width:38px;height:38px;color:var(--green-dark);background:#dcece4;border-radius:9px;place-items:center;font-weight:750;display:grid}.profile-button strong,.profile-button small{display:block}.profile-button strong{font-size:12px}.profile-button small{color:var(--muted);margin-top:2px;font-size:10px}.scope-banner{color:#285641;background:#eaf7f0;border:1px solid #bfe3d0;border-radius:8px;gap:8px;margin:18px 32px 0;padding:11px 14px;font-size:12px;display:flex}.content{max-width:1500px;margin:0 auto;padding:28px 32px 48px}.hero-row{justify-content:space-between;align-items:end;margin-bottom:24px;display:flex}.hero-row h2{margin:6px 0 8px;font-family:Georgia,serif;font-size:31px;font-weight:500}.hero-row p:not(.section-kicker){color:var(--muted);margin:0;font-size:13px}.hero-row.compact h2{font-size:27px}.primary-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:7px;height:40px;padding:0 17px;font-weight:650}.primary-button:hover{background:var(--green-dark)}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px;display:grid}.metric{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;padding:18px;position:relative;overflow:hidden}.metric:before{content:"";background:var(--green);width:3px;position:absolute;top:0;bottom:0;left:0}.metric.warning:before{background:var(--gold)}.metric span,.metric small{color:var(--muted);font-size:11px;display:block}.metric strong{margin:9px 0 7px;font-family:Georgia,serif;font-size:30px;font-weight:500;display:block}.metric small{color:var(--green-dark)}.dashboard-grid{grid-template-columns:1.55fr .85fr;gap:14px;display:grid}.panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;overflow:hidden}.panel.wide{min-width:0}.panel-title{border-bottom:1px solid #edf0ed;justify-content:space-between;align-items:end;padding:18px 20px 14px;display:flex}.panel-title h3{margin:4px 0 0;font-size:16px}.text-button{color:var(--green-dark);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:#738078;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid var(--line);background:#fafbf9;padding:11px 16px;font-size:9px}td{white-space:nowrap;border-bottom:1px solid #edf0ed;padding:14px 16px}td strong,td small{display:block}td small{color:var(--muted);margin-top:3px}.badge{border-radius:15px;padding:4px 8px;font-size:9px;font-weight:750;display:inline-block}.badge.green{color:#28734f;background:#e6f6ed}.badge.amber{color:#926318;background:#fff2da}.badge.neutral{color:#607068;background:#eef1ef}.alert-list{margin:0;padding:3px 18px 14px;list-style:none}.alert-list li{border-bottom:1px solid #edf0ed;align-items:center;gap:10px;padding:13px 0;display:flex}.alert-list li:last-child{border:0}.severity{border-radius:50%;place-items:center;width:27px;height:27px;font-size:11px;font-weight:800;display:grid}.severity.critical{color:var(--red);background:#fae7e7}.severity.warning{color:#996415;background:#fff1d7}.severity.info{color:#277256;background:#e4f0ec}.alert-list strong,.alert-list small{display:block}.alert-list strong{font-size:11px}.alert-list small{color:var(--muted);margin-top:3px;font-size:10px}.alert-list time{color:#8a9690;margin-left:auto;font-size:9px}.renewal-list{padding:5px 20px 14px}.renewal-list>div{border-bottom:1px solid #edf0ed;grid-template-columns:46px 1fr auto 75px;align-items:center;gap:12px;padding:12px 0;display:grid}.renewal-list>div:last-child{border:0}.date-box{border:1px solid var(--line);width:40px;height:43px;color:var(--muted);border-radius:7px;place-items:center;font-size:8px;display:grid}.date-box b{color:var(--ink);margin-bottom:-7px;font-family:Georgia,serif;font-size:17px}.renewal-list p{margin:0}.renewal-list p strong,.renewal-list p small{display:block}.renewal-list p strong{font-size:11px}.renewal-list p small{color:var(--muted);margin-top:3px;font-size:10px}.renewal-list>div>b{font-size:11px}.quick-grid{grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.quick-grid button{border:1px solid var(--line);height:74px;color:var(--green-dark);cursor:pointer;background:#fafbf9;border-radius:8px;font-weight:750}.quick-grid button:hover{border-color:var(--green);background:#eff9f3}.quick-grid span{color:var(--ink);margin-top:7px;font-size:10px;display:block}.filters{border-bottom:1px solid var(--line);gap:9px;padding:16px;display:flex}.search.large{margin-right:auto}.search.large input{width:270px}.filter-button{border:1px solid var(--line);color:#4d5d55;cursor:pointer;background:#fff;border-radius:7px;height:40px;padding:0 13px}.table-footer{height:56px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 16px;font-size:10px;display:flex}.table-footer div{align-items:center;gap:7px;display:flex}.table-footer button,.table-footer b{border:1px solid var(--line);background:#fff;border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.table-footer b{background:var(--ink);color:#fff}.modal{z-index:50;background:#0a141094;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal[hidden]{display:none}.modal-card{background:#fff;border-radius:12px;width:min(600px,100%);padding:28px;position:relative;box-shadow:0 30px 90px #0000004d}.modal-card h2{font-family:Georgia,serif;font-weight:500}.modal-card>p{color:var(--muted);font-size:12px}.modal-close{color:#68756e;background:0 0;border:0;font-size:25px;position:absolute;top:12px;right:16px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin:23px 0;display:grid}.form-grid label{font-size:10px;font-weight:700}.form-grid input{border:1px solid var(--line);border-radius:7px;width:100%;height:40px;margin-top:6px;padding:0 10px;display:block}.modal-actions{justify-content:flex-end;gap:9px;display:flex}@media (width<=1050px){.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.top-actions .search{display:none}}@media (width<=760px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:30;width:248px;transition:all .2s;position:fixed;left:-260px}.sidebar.open{left:0}.menu-button{background:0 0;border:0;font-size:20px;display:block}.topbar{padding:0 18px}.scope-banner{margin:12px 18px 0;display:block}.scope-banner span{margin-top:4px;display:block}.content{padding:22px 18px}.metric-grid{grid-template-columns:1fr}.hero-row{align-items:flex-start;gap:18px}.profile-button div{display:none}.form-grid{grid-template-columns:1fr}.renewal-list>div{grid-template-columns:45px 1fr}.renewal-list>div>b,.renewal-list>div>.badge{display:none}}.auth-view{background:radial-gradient(circle at 80% 10%,#78d6a721,#0000 32%),linear-gradient(145deg,#0d1814,#1b3026);grid-template-columns:minmax(300px,480px);place-content:center;gap:28px;min-height:100vh;padding:36px;display:grid}.auth-view[hidden]{display:none}.auth-brand{color:#fff;align-items:center;gap:12px;display:flex}.auth-brand strong,.auth-brand small{display:block}.auth-brand strong{letter-spacing:.09em;font-size:14px}.auth-brand small{color:#9db0a7;font-size:11px}.auth-card{background:#fff;border-radius:14px;padding:34px;box-shadow:0 28px 80px #00000047}.auth-card h1{margin:8px 0 10px;font:500 38px/1.1 Georgia,serif}.auth-card>p:not(.form-error){color:var(--muted);margin:0 0 26px}.auth-card label{margin-top:14px;font-size:11px;font-weight:750;display:block}.auth-card input,.workspace-select{border:1px solid var(--line);width:100%;height:43px;color:var(--ink);background:#fff;border-radius:8px;margin-top:7px;padding:0 12px;display:block}.auth-submit{width:100%;margin-top:8px}.form-error{min-height:18px;color:var(--red);margin:10px 0 0;font-size:11px}.demo-button{border:1px solid var(--line);width:100%;height:40px;color:var(--green-dark);cursor:pointer;background:#fff;border-radius:7px;margin-top:12px;font-weight:700}.auth-note{text-align:center;color:var(--muted);margin-top:18px;display:block}.workspace-control{align-items:center;gap:8px;min-width:220px;display:flex}.workspace-select{height:40px;margin:0}.empty-state{text-align:center;color:var(--muted);padding:64px 24px}.empty-state strong{color:var(--ink);margin-bottom:8px;font:500 22px Georgia,serif;display:block}.loading-screen{background:var(--paper);min-height:100vh;color:var(--green-dark);place-items:center;font-weight:700;display:grid}.toast{z-index:80;background:var(--ink);color:#fff;box-shadow:var(--shadow);border-radius:8px;padding:13px 16px;font-size:12px;position:fixed;bottom:24px;right:24px}.toast.error{background:#7f2e2e}.toast[hidden]{display:none}.secondary-button{border:1px solid var(--line);height:40px;color:var(--ink);cursor:pointer;background:#fff;border-radius:7px;padding:0 16px;font-weight:650}.connection-pill{color:var(--green-dark);background:#e9f7ef;border-radius:20px;align-items:center;gap:7px;padding:6px 9px;font-size:10px;display:inline-flex}.connection-pill:before{content:"";background:var(--green-dark);border-radius:50%;width:7px;height:7px}.data-source{color:var(--green-dark);align-self:center;font-size:10px;font-weight:700}.screen-note{color:var(--muted);margin:-12px 0 18px;font-size:11px}.screen-note strong{color:var(--green-dark)}.state-card{text-align:center;border:1px solid var(--line);max-width:680px;box-shadow:var(--shadow);background:#fff;border-radius:12px;margin:70px auto;padding:46px}.state-card h2{margin:12px 0 8px;font:500 28px Georgia,serif}.state-card p{color:var(--muted);line-height:1.6}.state-icon{width:44px;height:44px;color:var(--green-dark);background:#e9f7ef;border-radius:50%;place-items:center;margin:0 auto;font-size:20px;display:grid}.empty-cell{color:var(--muted);text-align:center;padding:34px 16px}.modal-card select{border:1px solid var(--line);background:#fff;border-radius:7px;width:100%;height:40px;margin-top:6px;padding:0 10px;display:block}.spinner{border:3px solid #d8e7df;border-top-color:var(--green-dark);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}button:disabled{opacity:.48;cursor:not-allowed}.is-busy{opacity:.65;pointer-events:none}.clickable-row{cursor:pointer;transition:background .15s}.clickable-row:hover,.clickable-row:focus{background:#f0f8f3;outline:none}.record-link{color:var(--ink);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.record-link strong,.record-link small{display:block}.record-link strong{color:var(--green-dark)}.record-link small{color:var(--muted);margin-top:4px;font-size:10px}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:-6px 0 20px;font-size:11px;display:flex}.breadcrumbs button{color:var(--green-dark);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.breadcrumbs button:hover{text-decoration:underline}.breadcrumbs strong{color:var(--ink)}.detail-hero{justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;display:flex}.detail-hero h2{margin:6px 0 8px;font:500 32px/1.15 Georgia,serif}.detail-hero p:not(.section-kicker){color:var(--muted);margin:0;font-size:13px}.detail-metrics{margin-bottom:18px}.summary-grid{grid-template-columns:1.2fr .8fr;gap:14px;margin-bottom:14px;display:grid}.summary-card{padding:20px}.summary-card dl,.detail-card dl{margin:15px 0 0}.summary-card dl{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.summary-card dl div,.detail-card dl div{min-width:0}.summary-card dt,.detail-card dt{color:var(--muted);margin-bottom:5px;font-size:10px}.summary-card dd,.detail-card dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:12px}.summary-card dd{font-weight:700}.detail-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.detail-card{min-width:0}.detail-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;padding:4px 20px 22px;display:grid}.detail-card .record-link strong{font-weight:700}.expiry-card{border-color:#cae7d8}.expiry-pair{grid-template-columns:1fr 1fr;gap:10px;padding:18px 20px 4px;display:grid}.expiry-pair section{background:#eef8f2;border-radius:9px;padding:16px}.expiry-pair span,.expiry-pair strong,.expiry-pair small{display:block}.expiry-pair span{color:var(--muted);font-size:10px}.expiry-pair strong{margin:8px 0 5px;font:500 21px Georgia,serif}.expiry-pair small{color:var(--green-dark);font-size:10px;font-weight:700}.detail-history{margin-top:14px}.wizard-card{width:min(860px,100%);max-height:calc(100vh - 32px);overflow:auto}.wizard-card h2{margin-bottom:12px}.wizard-progress{grid-template-columns:repeat(5,1fr);gap:7px;margin:18px 0 24px;display:grid}.wizard-progress span{background:#e5e9e6;border-radius:6px;height:5px}.wizard-progress span.active{background:var(--green-dark)}.wizard-step-label{justify-content:space-between;gap:14px;margin-bottom:18px;display:flex}.wizard-step-label strong{font-size:13px}.wizard-step-label span{color:var(--muted);font-size:11px}.wizard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.wizard-grid label{min-width:0;font-size:10px;font-weight:700}.wizard-grid label.full{grid-column:1/-1}.wizard-grid input,.wizard-grid select,.wizard-grid textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:7px;margin-top:6px;padding:0 10px;display:block}.wizard-grid input,.wizard-grid select{height:41px}.wizard-grid textarea{resize:vertical;min-height:76px;padding:10px}.conditional-fields{display:contents}.conditional-fields[hidden]{display:none}.wizard-review{grid-template-columns:1fr 1fr;gap:12px;display:grid}.review-section{border:1px solid var(--line);background:#fafbf9;border-radius:8px;padding:15px}.review-section h4{margin:0 0 10px;font-size:12px}.review-section p{color:var(--muted);margin:5px 0;font-size:11px}.review-section strong{color:var(--ink)}.wizard-save-progress{color:var(--green-dark);background:#eef8f2;border-radius:8px;margin:12px 0;padding:12px 14px;font-size:11px;font-weight:700}.detail-actions{align-items:center;gap:10px;display:flex}.card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.card-actions .text-button{font-size:10px}.confirmation-copy{color:var(--muted);background:#f6f8f6;border-radius:8px;grid-column:1/-1;margin:4px 0;padding:16px}.compact-button{height:32px;padding:0 11px;font-size:10px}.row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row-actions .text-button{font-size:10px}.reports-heading{align-items:flex-end}.report-controls{margin-bottom:16px;padding:20px}.report-picker{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,.55fr) 1fr;align-items:end;gap:22px;padding-bottom:18px;display:grid}.report-picker label,.filter-grid label{color:var(--muted);font-size:10px;font-weight:700}.report-picker select,.filter-grid select,.filter-grid input{border:1px solid var(--line);width:100%;height:40px;color:var(--ink);background:#fff;border-radius:7px;margin-top:6px;padding:0 10px;display:block}.report-picker strong{font:500 18px Georgia,serif;display:block}.report-picker p{color:var(--muted);margin:5px 0 0;font-size:11px}.filter-grid{grid-template-columns:repeat(5,minmax(120px,1fr)) auto;align-items:end;gap:10px;padding-top:18px;display:grid}.report-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.report-metric{min-height:96px}.report-results{margin-bottom:24px}.sidebar-scrim{display:none}.screen-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px;display:flex}.screen-heading h2{margin:6px 0 8px;font:500 31px/1.1 Georgia,serif}.screen-heading p:not(.section-kicker){color:var(--muted);margin:0;font-size:13px}.current-access{justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;padding:20px;display:flex}.current-access h3{margin:5px 0;font:500 24px Georgia,serif}.current-access p{color:var(--muted);margin:0;font-size:11px}.access-lock{color:var(--green-dark);background:#e9f7ef;border-radius:20px;padding:8px 11px;font-size:10px;font-weight:700}.access-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.access-card{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:0;padding:17px}.access-card.current{border-color:var(--green);box-shadow:inset 0 3px var(--green)}.access-card>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.access-card>div span{font-size:12px;font-weight:800}.access-card>div strong{color:var(--green-dark);letter-spacing:.08em;font-size:8px}.access-card p{min-height:44px;color:var(--muted);font-size:10px;line-height:1.45}.access-card ul{color:var(--ink);margin:12px 0 0;padding-left:16px;font-size:9px;line-height:1.55}@media (width<=1050px){.filter-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=850px){.workspace-control{min-width:150px}.detail-card-grid,.summary-grid,.wizard-review,.report-picker,.filter-grid,.report-summary{grid-template-columns:1fr}.access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){body{overflow-x:hidden}.sidebar{overflow-y:auto;box-shadow:20px 0 60px #00000047}.sidebar-scrim{z-index:20;background:#070f0c7a;border:0;display:block;position:fixed;inset:0 0 0 248px}.sidebar-scrim[hidden]{display:none}.topbar{gap:10px;height:auto;min-height:76px;padding:12px 16px}.page-heading{min-width:0}.page-heading h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-actions{gap:7px}.workspace-select{max-width:150px}.detail-hero,.screen-heading,.current-access{flex-direction:column;align-items:flex-start}.detail-actions,.card-actions{justify-content:flex-start}.modal{align-items:flex-start;padding:12px;overflow-y:auto}.modal-card{max-height:none;margin:8px 0;padding:24px 20px}button,select,input{min-height:42px}}@media (width<=560px){.auth-view{padding:20px}.auth-card{padding:26px 22px}.detail-hero{align-items:flex-start}.summary-card dl,.detail-card dl,.expiry-pair,.wizard-grid{grid-template-columns:1fr}.wizard-grid label.full{grid-column:auto}.topbar{align-items:center}.topbar .eyebrow{display:none}.top-actions{margin-left:auto}.top-actions .workspace-select,.top-actions .icon-button{display:none}.profile-button{padding:0}.signout-button{min-width:62px}.scope-banner{margin:10px 12px 0}.content{padding:18px 12px 36px}.hero-row,.detail-hero,.screen-heading{flex-direction:column}.hero-row .primary-button,.detail-actions .primary-button,.screen-heading .primary-button,.detail-actions{width:100%}.detail-actions .secondary-button{flex:auto}.access-grid{grid-template-columns:1fr}.access-card p{min-height:0}.filters{flex-direction:column}.search.large,.search.large input{width:100%}.toast{bottom:12px;left:12px;right:12px}}
