
.app-body{background:#08110e;color:var(--text);min-height:100vh}.app-sidebar{position:fixed;right:0;top:0;bottom:0;width:270px;background:#07100d;border-left:1px solid var(--line);z-index:100;padding:24px 18px;display:flex;flex-direction:column}.app-brand{display:flex;align-items:center;gap:12px;padding:0 8px 24px;border-bottom:1px solid var(--line)}.app-brand strong,.app-brand small{display:block}.app-brand strong{letter-spacing:3px}.app-brand small{font-size:11px;color:var(--muted)}.side-nav{display:grid;gap:5px;margin-top:25px;overflow:auto}.side-nav a{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:12px;color:#afc0b7;font-size:14px}.side-nav a span{width:24px;text-align:center;color:#769487}.side-nav a:hover,.side-nav a.active{background:linear-gradient(90deg,rgba(25,195,125,.16),rgba(25,195,125,.035));color:white}.side-nav a.active{box-shadow:inset -3px 0 var(--emerald)}.side-nav a.active span{color:var(--emerald)}.sidebar-footer{margin-top:auto;display:flex;gap:11px;align-items:center;border-top:1px solid var(--line);padding:20px 10px 0}.sidebar-footer strong,.sidebar-footer small{display:block;font-size:11px}.sidebar-footer small{color:var(--muted)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--emerald);box-shadow:0 0 12px var(--emerald)}.app-shell{margin-right:270px;min-height:100vh}.app-topbar{height:78px;position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:20px;padding:0 30px;background:rgba(8,17,14,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.sidebar-toggle{display:none}.top-search{max-width:520px;flex:1;display:flex;align-items:center;gap:9px;background:#0d1d17;border:1px solid var(--line);border-radius:13px;padding:0 14px}.top-search input{border:0;background:none;padding:11px}.top-actions{margin-right:auto;display:flex;align-items:center;gap:9px}.icon-btn{position:relative;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:#0d1d17;color:white;display:grid;place-items:center;cursor:pointer}.notification-badge{position:absolute;top:-4px;left:-4px;background:#d55858;border-radius:50%;min-width:17px;height:17px;font-size:10px;display:grid;place-items:center}.profile-chip{display:flex;align-items:center;gap:10px;border:0;background:none;color:white;text-align:right;cursor:pointer}.profile-chip>span{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--emerald2),#173b2c);display:grid;place-items:center;font-weight:700}.profile-chip strong,.profile-chip small{display:block}.profile-chip small{color:var(--muted);font-size:10px}.app-main{padding:34px 30px 70px;max-width:1600px;margin:auto}.app-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:30px}.app-page-head h1{font-size:36px;line-height:1.25;margin:0}.app-page-head p{color:var(--muted);margin:7px 0 0}.head-actions{display:flex;gap:10px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.kpi-card{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(145deg,#10231c,#0b1814);border:1px solid var(--line);border-radius:18px;padding:22px}.kpi-card span,.kpi-card small,.kpi-card strong{display:block}.kpi-card span{color:var(--muted);font-size:13px}.kpi-card strong{font-size:29px;margin:4px 0}.kpi-card small{color:#7f948a;font-size:11px}.kpi-card i{width:48px;height:48px;border-radius:14px;background:rgba(25,195,125,.1);color:var(--emerald);display:grid;place-items:center;font-style:normal;font-size:20px}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.app-panel{background:linear-gradient(145deg,#0f211a,#0b1814);border:1px solid var(--line);border-radius:20px;padding:22px}.span-2{grid-column:span 2}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-head h2{font-size:21px;margin:0}.panel-head a{font-size:12px;color:var(--emerald)}.project-list{display:grid}.project-row{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.project-row:last-child{border:0}.project-icon{width:42px;height:42px;border-radius:12px;background:#183629;display:grid;place-items:center;color:var(--gold);font-weight:700}.project-meta{flex:1}.project-meta strong,.project-meta small{display:block}.project-meta small{font-size:11px;color:var(--muted)}.progress,.shipment-progress{height:6px;background:#09110e;border-radius:20px;overflow:hidden;margin-top:10px}.progress i,.shipment-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--emerald2),var(--emerald));border-radius:20px}.project-percent{text-align:left}.project-percent b,.project-percent small{display:block}.project-percent small{font-size:10px;color:var(--emerald)}.ai-chip,.live-chip{padding:4px 9px;border-radius:8px;background:rgba(25,195,125,.12);color:var(--emerald);font-size:11px}.risk-card{padding:15px;border-radius:14px;margin-top:12px;background:#0b1814;border-right:3px solid}.risk-card.high{border-color:#d65b5b}.risk-card.medium{border-color:var(--gold)}.risk-card b,.risk-card p{display:block;margin:0}.risk-card p{color:var(--muted);font-size:12px;margin:5px 0}.risk-card button,.risk-card a{border:0;background:none;color:var(--emerald);font:inherit;font-size:12px;padding:0;cursor:pointer}.money-list>div{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.money-list>div:last-child{border:0}.money-list b,.money-list small{display:block}.money-list small{color:var(--muted);font-size:10px}.money-list strong{font-size:12px}.money-in,.money-out{width:31px;height:31px;border-radius:9px;display:grid;place-items:center}.money-in{background:rgba(25,195,125,.12);color:var(--emerald)}.money-out{background:rgba(213,173,87,.12);color:var(--gold)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.timeline:before{content:"";height:2px;background:var(--line);position:absolute;top:11px;right:8%;left:8%}.timeline>div{position:relative;text-align:center;padding:0 10px}.timeline i{position:relative;z-index:2;width:22px;height:22px;border:5px solid #132a21;background:#52645b;border-radius:50%;display:block;margin:0 auto 14px}.timeline .done i{background:var(--emerald)}.timeline .current i{background:var(--gold);box-shadow:0 0 18px rgba(213,173,87,.45)}.timeline b,.timeline small{display:block}.timeline b{font-size:12px}.timeline small{color:var(--muted);font-size:10px}.filter-bar,.service-categories{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.filter-bar button,.service-categories button{border:1px solid var(--line);background:#0c1c16;color:var(--muted);padding:9px 15px;border-radius:10px;cursor:pointer}.filter-bar button.active,.service-categories button.active{background:rgba(25,195,125,.13);color:var(--emerald);border-color:rgba(25,195,125,.35)}.filter-bar input{margin-right:auto;max-width:260px}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#0d1d17}.project-cover{height:145px;padding:18px;display:flex;justify-content:space-between;align-items:flex-start;background:radial-gradient(circle at 70% 30%,rgba(25,195,125,.22),transparent 35%),linear-gradient(145deg,#173a2b,#0a1612)}.project-cover span{background:rgba(0,0,0,.28);padding:5px 10px;border-radius:8px;font-size:11px}.project-cover b{font-size:22px;color:var(--gold)}.project-card-body{padding:20px}.project-card-body h3{margin:0}.project-card-body p{color:var(--muted);font-size:12px}.card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}.card-metrics span{padding:9px;background:#09130f;border-radius:9px}.card-metrics small,.card-metrics b{display:block;font-size:10px}.card-metrics small{color:var(--muted)}.project-card-body>a{color:var(--emerald);font-size:12px}.save-state{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:8px}.wizard{max-width:1050px;margin:auto}.wizard-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:18px}.wizard-steps button{border:0;border-bottom:2px solid var(--line);background:none;color:var(--muted);padding:15px;display:flex;gap:10px;align-items:center;justify-content:center}.wizard-steps button b{width:28px;height:28px;border-radius:50%;background:#10251c;display:grid;place-items:center}.wizard-steps button.active{color:white;border-color:var(--emerald)}.wizard-steps button.active b{background:var(--emerald);color:#04130c}.wizard-panel{background:#0d1d17;border:1px solid var(--line);border-radius:20px;padding:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.wizard-panel label,.settings-content label{display:grid;gap:7px;color:var(--muted);margin-bottom:17px}.map-placeholder,.upload-zone{min-height:260px;border:1px dashed rgba(25,195,125,.38);border-radius:18px;background:radial-gradient(circle,rgba(25,195,125,.08),transparent 60%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.map-placeholder>span,.upload-zone>span{font-size:42px;color:var(--emerald)}.map-placeholder small,.upload-zone p{color:var(--muted)}.map-placeholder button,.upload-zone button{border:1px solid var(--line);background:#10281e;color:white;padding:9px 17px;border-radius:10px;cursor:pointer}.file-list{display:grid;gap:9px;margin-top:14px}.file-list>div{padding:12px;background:#09140f;border-radius:10px;display:flex;justify-content:space-between}.wizard-actions{display:flex;justify-content:space-between;margin-top:25px}.ai-analysis{text-align:center;padding:35px}.ai-orb{width:85px;height:85px;border-radius:50%;display:grid;place-items:center;margin:auto;background:radial-gradient(circle,var(--emerald),#0c3c29 55%,#08140f 70%);box-shadow:0 0 65px rgba(25,195,125,.28);font-weight:900}.analysis-items{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.analysis-items span{background:#0a1612;padding:12px;border-radius:10px;color:var(--muted)}.analysis-result{padding-top:25px}.market-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.market-grid article{background:#0d1d17;border:1px solid var(--line);border-radius:18px;padding:22px}.market-icon{width:48px;height:48px;border-radius:14px;background:rgba(25,195,125,.1);color:var(--emerald);display:grid;place-items:center;font-size:20px}.market-grid h3{font-size:17px}.market-grid p{color:var(--muted);font-size:12px}.market-grid small{display:block;color:var(--gold);min-height:35px}.market-grid button{width:100%;margin-top:15px;border:1px solid var(--line);background:#132a21;color:white;padding:10px;border-radius:10px;cursor:pointer}.approval-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}.approval-summary div{background:#0d1d17;border:1px solid var(--line);padding:19px;border-radius:15px}.approval-summary strong{font-size:25px;color:var(--gold);margin-left:8px}.approval-summary span{color:var(--muted)}.approval-list{display:grid;gap:12px}.approval-list article{display:grid;grid-template-columns:70px 1fr auto;gap:18px;align-items:center;background:#0d1d17;border:1px solid var(--line);border-radius:17px;padding:20px}.approval-type{background:#132a21;border-radius:10px;padding:8px;text-align:center;color:var(--emerald);font-size:11px}.approval-type.urgent{background:rgba(214,91,91,.12);color:#ef8585}.approval-info h3,.approval-info p{margin:0}.approval-info p,.approval-info div{color:var(--muted);font-size:11px}.approval-info div{display:flex;gap:25px;margin-top:8px}.approval-actions{display:flex;gap:8px}.approval-actions button,.table-tools button{border:1px solid var(--line);background:#10231c;color:white;padding:9px 14px;border-radius:9px;cursor:pointer}.approval-actions .approve{background:var(--emerald);color:#04130c}.table-tools{display:flex;gap:8px}.table-tools input{max-width:160px;padding:8px}.data-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:850px}.data-table th,.data-table td{text-align:right;padding:15px 12px;border-bottom:1px solid var(--line);font-size:12px}.data-table th{color:var(--muted);font-weight:400}.table-status{display:inline-block;padding:4px 9px;border-radius:8px;font-size:10px}.table-status.paid{background:rgba(25,195,125,.12);color:var(--emerald)}.table-status.pending{background:rgba(213,173,87,.12);color:var(--gold)}.table-status.draft{background:rgba(255,255,255,.07);color:var(--muted)}.table-status.live{background:rgba(69,142,230,.12);color:#79b4ff}.tracking-layout{display:grid;grid-template-columns:2fr 1fr;gap:18px}.live-map{height:360px;position:relative;overflow:hidden;border-radius:14px;background:linear-gradient(35deg,#0b1c16,#10281f);border:1px solid var(--line)}.map-road{position:absolute;background:rgba(255,255,255,.06);height:10px;width:130%;transform:rotate(-22deg);top:45%;right:-15%}.map-road.r2{transform:rotate(28deg);top:60%}.map-center{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:75px;height:75px;border-radius:50%;display:grid;place-items:center;background:#143d2b;color:var(--gold);border:1px solid var(--gold)}.map-pin{position:absolute;padding:6px 9px;border-radius:8px;background:#152d24;border:1px solid var(--emerald);font-size:10px}.p1{top:20%;right:25%}.p2{bottom:17%;left:18%}.p3{top:55%;right:12%}.qr-box{text-align:center}.fake-qr{width:180px;height:180px;margin:10px auto;background:conic-gradient(#fff 25%,#07110e 0 50%,#fff 0 75%,#07110e 0);background-size:18px 18px;border:12px solid white;box-shadow:inset 0 0 0 6px #07110e}.qr-box b,.qr-box small{display:block}.qr-box small{color:var(--muted)}.qr-box button{margin-top:12px;border:1px solid var(--line);background:#10271e;color:white;padding:8px 14px;border-radius:9px}.shipment-list{display:grid;gap:12px;margin-top:18px}.shipment-list article{display:grid;grid-template-columns:50px 1fr auto;gap:16px;align-items:center;background:#0d1d17;border:1px solid var(--line);padding:17px;border-radius:16px}.shipment-icon{width:46px;height:46px;border-radius:13px;background:#153228;color:var(--emerald);display:grid;place-items:center}.shipment-list h3,.shipment-list p{margin:0}.shipment-list p,.shipment-list small{color:var(--muted);font-size:11px}.notification-list{display:grid;gap:10px;max-width:1100px}.notification-list article{display:grid;grid-template-columns:48px 1fr auto;gap:15px;align-items:center;background:#0d1d17;border:1px solid var(--line);border-radius:15px;padding:17px}.notification-list article.unread{border-right:3px solid var(--emerald);background:#0f241c}.notif-icon{width:42px;height:42px;border-radius:12px;background:#132d23;display:grid;place-items:center;color:var(--emerald)}.notif-icon.urgent{color:#ef8585}.notif-icon.ai{color:var(--gold)}.notification-list h3,.notification-list p{margin:0}.notification-list p,.notification-list small{color:var(--muted);font-size:11px}.notification-list a,.notification-list button{border:0;background:none;color:var(--emerald);cursor:pointer}.settings-layout{display:grid;grid-template-columns:230px 1fr;gap:18px;max-width:1100px}.settings-nav{display:flex;flex-direction:column;gap:5px}.settings-nav button{border:0;background:none;color:var(--muted);text-align:right;padding:12px 14px;border-radius:10px}.settings-nav button.active{background:#11271e;color:var(--emerald)}.avatar-editor{display:flex;align-items:center;gap:15px;margin:15px 0 25px}.avatar-editor span{width:70px;height:70px;border-radius:20px;background:#16402e;display:grid;place-items:center;font-size:23px}.avatar-editor button,.security-card button{border:1px solid var(--line);background:#10241c;color:white;padding:9px 13px;border-radius:9px}.toggle-list{display:grid;gap:12px}.toggle-list label{display:flex;grid-template-columns:none;align-items:center;gap:10px;background:#09140f;padding:14px;border-radius:10px}.toggle-list input{width:auto}.security-card{display:flex;justify-content:space-between;align-items:center;padding:17px;border-bottom:1px solid var(--line)}.security-card p{color:var(--muted);font-size:12px;margin:2px 0}.toast{position:fixed;left:25px;bottom:25px;z-index:300;background:#153529;border:1px solid rgba(25,195,125,.4);padding:13px 18px;border-radius:12px;box-shadow:var(--shadow);transform:translateY(100px);opacity:0;transition:.3s}.toast.show{transform:none;opacity:1}.modal-backdrop{position:fixed;inset:0;z-index:250;background:rgba(0,0,0,.65);display:grid;place-items:center}.modal-backdrop[hidden]{display:none}.modal{position:relative;width:min(500px,calc(100% - 30px));background:#0d1d17;border:1px solid var(--line);border-radius:20px;padding:28px}.modal-close{position:absolute;left:15px;top:12px;border:0;background:none;color:white;font-size:25px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-grid a{padding:15px;background:#10271e;border-radius:11px}.auth-body{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#07110e}.auth-visual{padding:45px 7vw;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 70% 35%,rgba(25,195,125,.19),transparent 35%),linear-gradient(145deg,#0a1c15,#06100d)}.auth-visual h1{font-size:clamp(45px,6vw,78px);line-height:1.2;margin:15px 0}.auth-visual p{max-width:620px;color:var(--muted);font-size:17px}.auth-panel{display:grid;place-items:center;padding:30px}.auth-panel form{width:min(420px,100%)}.auth-panel h2{font-size:35px;margin:0}.auth-panel>form>p{color:var(--muted)}.auth-panel label{display:grid;gap:7px;margin:17px 0;color:var(--muted)}.password-wrap{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.password-wrap input{border:0}.password-wrap button{border:0;background:none;color:var(--emerald);padding:12px}.form-inline{display:flex;justify-content:space-between;align-items:center;font-size:12px}.form-inline label{display:flex;margin:0;align-items:center}.form-inline input{width:auto}.form-inline a{color:var(--emerald)}.auth-submit{width:100%;margin-top:20px}.demo-note{font-size:10px;text-align:center}.back-home{display:block;text-align:center;color:var(--muted);font-size:12px}.head-actions{white-space:nowrap}
@media(max-width:1200px){.kpi-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.market-grid{grid-template-columns:repeat(3,1fr)}.projects-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:span 1}}
@media(max-width:900px){.app-sidebar{transform:translateX(100%);transition:.3s}.app-sidebar.open{transform:none}.app-shell{margin-right:0}.sidebar-toggle{display:block;border:0;background:none;color:white;font-size:22px}.app-topbar{padding:0 16px}.profile-chip div{display:none}.app-main{padding:25px 16px}.dashboard-grid,.tracking-layout,.settings-layout{grid-template-columns:1fr}.market-grid{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:1fr}.timeline:before{display:none}.timeline>div{display:flex;text-align:right;gap:12px;margin:8px}.timeline i{margin:0}.auth-body{grid-template-columns:1fr}.auth-visual{display:none}}
@media(max-width:620px){.app-page-head{align-items:flex-start;flex-direction:column}.app-page-head h1{font-size:29px}.head-actions{width:100%}.head-actions .btn{flex:1}.kpi-grid,.dashboard-grid,.projects-grid,.market-grid,.approval-summary,.form-grid,.analysis-items{grid-template-columns:1fr}.wizard-steps button span{display:none}.wizard-panel{padding:18px}.approval-list article{grid-template-columns:1fr}.approval-actions{justify-content:flex-end}.shipment-list article,.notification-list article{grid-template-columns:45px 1fr}.shipment-list article>.table-status,.notification-list article>a,.notification-list article>button{grid-column:2}.top-search{display:none}.quick-grid{grid-template-columns:1fr}.filter-bar input{margin-right:0;max-width:none}.app-main{padding-bottom:90px}}
.contract-select{width:100%;text-align:right;border:1px solid var(--line);background:#0b1814;color:white;padding:14px;border-radius:12px;margin-bottom:10px;cursor:pointer}.contract-select.active{border-color:var(--emerald);background:#10291f}.contract-select b,.contract-select small{display:block}.contract-select small{color:var(--muted)}.milestone-item{padding:14px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.milestone-item header{display:flex;justify-content:space-between}.milestone-item small{color:var(--muted)}.milestone-actions{display:flex;gap:7px;margin-top:10px}.milestone-actions button{border:1px solid var(--line);background:#132a21;color:white;padding:7px 10px;border-radius:8px}.pay-button{border:0;background:var(--emerald);color:#04130c;padding:7px 12px;border-radius:8px;font-weight:700}.verify-box{padding:16px;border:1px dashed var(--emerald);border-radius:12px;margin-top:12px;word-break:break-all}

/* SAHM v7 Governance */
.governance-list{display:grid;gap:10px}.governance-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#0a1712}.governance-row b,.governance-row small{display:block}.governance-row small{color:var(--muted);font-size:11px}.governance-row button{border:1px solid var(--line);background:#123024;color:var(--emerald);padding:8px 12px;border-radius:9px}.workflow-visual{display:grid;grid-template-columns:1fr;gap:5px;text-align:center}.workflow-visual span{padding:8px;border-radius:9px;background:#0a1813;border:1px solid var(--line)}.workflow-visual i{color:var(--gold);font-style:normal}.governance-section{margin-top:18px}.roles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.role-card{text-align:right;background:#0a1712;color:white;border:1px solid var(--line);border-radius:14px;padding:17px;cursor:pointer}.role-card:hover{border-color:var(--emerald);transform:translateY(-2px)}.role-card>span{color:var(--gold);font-size:10px}.role-card h3{margin:7px 0 0}.role-card p,.role-card div{color:var(--muted);font-size:11px}.empty-state{color:var(--muted);padding:25px;text-align:center}.permissions-modal{width:min(800px,calc(100% - 30px));max-height:85vh;overflow:auto}.permissions-modal form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.permissions-modal fieldset{border:1px solid var(--line);border-radius:12px;padding:14px}.permissions-modal legend{color:var(--gold);padding:0 8px}.permissions-modal label{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;margin:8px 0}.permissions-modal label input{width:auto}.permissions-modal label small{grid-column:2;color:var(--muted);font-size:9px}.permissions-modal .btn{grid-column:1/-1}@media(max-width:1000px){.roles-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.roles-grid,.permissions-modal form{grid-template-columns:1fr}.governance-row{grid-template-columns:1fr auto}.governance-row button{grid-column:1/-1}}

.notif-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.notif-actions button,.notif-actions a{border:1px solid var(--line)!important;background:#10271e!important;color:var(--emerald)!important;padding:7px 10px!important;border-radius:8px}.notification-filters>a{margin-right:auto}.empty-state{text-align:center;color:var(--muted);padding:40px}.rules-list{display:grid;gap:10px}.rule-card{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:14px;background:#09140f;border:1px solid var(--line);border-radius:12px}.rule-card b,.rule-card small{display:block}.rule-card small{color:var(--muted);font-size:10px}.rule-switch{grid-column:1/-1;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.rule-switch input{width:auto}.notification-kpis{margin-bottom:20px}

.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.document-card{background:#0d1d17;border:1px solid var(--line);border-radius:18px;padding:20px}.document-card-head{display:flex;justify-content:space-between;align-items:center}.document-type{color:var(--gold);font-size:11px}.document-card h3{margin:16px 0 4px}.document-card>p{color:var(--muted);font-size:12px}.document-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:15px 0}.document-meta span{background:#09140f;padding:8px;border-radius:8px;font-size:9px;color:var(--muted)}.document-meta b{display:block;color:white;font-size:11px}.hash-line{display:block;color:#71877c;direction:ltr;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:15px}.document-actions button,.document-actions a{border:1px solid var(--line);background:#10271e;color:white;padding:7px 10px;border-radius:8px;font-size:10px;cursor:pointer}.document-actions .approve{background:var(--emerald);color:#04130c}.verify-card{width:min(600px,100%);background:#0d1d17;border:1px solid var(--line);border-radius:22px;padding:30px}.verify-ok,.verify-fail{width:75px;height:75px;border-radius:50%;display:grid;place-items:center;margin:auto;font-size:38px}.verify-ok{background:rgba(25,195,125,.14);color:var(--emerald)}.verify-fail{background:rgba(214,91,91,.14);color:#ef8585}.verify-card h2{text-align:center}.verify-card dl{display:grid;grid-template-columns:150px 1fr;gap:0}.verify-card dt,.verify-card dd{padding:11px;border-bottom:1px solid var(--line);margin:0}.verify-card dt{color:var(--muted)}.hash-full{word-break:break-all;direction:ltr;text-align:left;font-size:10px}
@media(max-width:1100px){.document-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.document-grid{grid-template-columns:1fr}.verify-card dl{grid-template-columns:1fr}.verify-card dd{padding-top:0}}

.architecture-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.module-list{display:grid;gap:9px}.module-card{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;padding:12px;background:#09140f;border:1px solid var(--line);border-radius:11px}.module-card b,.module-card small{display:block}.module-card small{color:var(--muted);font-size:9px}.data-table td small{display:block;color:var(--muted);font-size:9px}.table-action{border:1px solid var(--line);background:#10271e;color:var(--emerald);padding:7px 10px;border-radius:8px}.analytics-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.analytics-cards div{background:#09140f;border:1px solid var(--line);border-radius:12px;padding:15px}.analytics-cards span,.analytics-cards strong{display:block}.analytics-cards span{color:var(--muted);font-size:10px}.analytics-cards strong{font-size:22px;margin-top:4px}.status-bars{display:grid;gap:15px}.status-bars>div>span{display:flex;justify-content:space-between}.status-bars small{color:var(--muted)}.status-bars i{height:7px;display:block;background:#07110e;border-radius:10px;overflow:hidden}.status-bars em{height:100%;display:block;background:linear-gradient(90deg,var(--emerald2),var(--emerald));border-radius:10px}
@media(max-width:1100px){.architecture-grid{grid-template-columns:1fr 1fr}.analytics-cards{grid-template-columns:1fr 1fr}}@media(max-width:700px){.architecture-grid{grid-template-columns:1fr}.analytics-cards{grid-template-columns:1fr 1fr}}

.readiness-panel{margin-bottom:18px}.readiness-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.readiness-grid>div{display:grid;grid-template-columns:1fr auto;gap:4px;padding:12px;background:#09140f;border:1px solid var(--line);border-radius:10px}.readiness-grid small{grid-column:1/-1;color:var(--muted);font-size:9px;word-break:break-all}.ready-ok b{color:var(--emerald)}.ready-bad b{color:#ef8585}@media(max-width:1000px){.readiness-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.readiness-grid{grid-template-columns:1fr}}

.operations-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.operations-tabs button{border:1px solid var(--line);background:#0c1c16;color:var(--muted);padding:10px 16px;border-radius:10px;cursor:pointer}.operations-tabs button.active{background:rgba(25,195,125,.13);color:var(--emerald);border-color:rgba(25,195,125,.35)}.asset-grid,.worker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.asset-card,.worker-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#09140f;border:1px solid var(--line);border-radius:15px;padding:17px}.asset-icon,.worker-card>span:first-child{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;background:#153228;color:var(--emerald)}.asset-card h3,.asset-card p,.worker-card h3,.worker-card p{margin:0}.asset-card p,.worker-card p,.asset-card small,.worker-card small{color:var(--muted);font-size:10px}.asset-rates{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.asset-rates span{background:#07110e;padding:8px;border-radius:8px;color:var(--muted);font-size:9px}.asset-rates b{display:block;color:white}.worker-card{grid-template-columns:auto 1fr auto}
@media(max-width:1100px){.asset-grid,.worker-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.asset-grid,.worker-grid{grid-template-columns:1fr}}

.service-cards,.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-cards article,.property-grid article{background:#09140f;border:1px solid var(--line);border-radius:15px;padding:17px}.service-cards article>span{color:var(--gold);font-size:10px}.service-cards h3,.property-grid h3{margin:8px 0 3px}.service-cards p,.service-cards small,.property-grid p,.property-grid small{color:var(--muted);font-size:10px}.property-grid article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.property-icon{width:46px;height:46px;border-radius:13px;background:#153228;color:var(--emerald);display:grid;place-items:center}.ticket-list{display:grid;gap:10px}.ticket-list article{display:grid;grid-template-columns:45px 1fr auto;gap:14px;align-items:center;background:#09140f;border:1px solid var(--line);border-radius:14px;padding:15px}.ticket-list h3,.ticket-list p{margin:0}.ticket-list p,.ticket-list small{color:var(--muted);font-size:10px}@media(max-width:1050px){.service-cards,.property-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.service-cards,.property-grid{grid-template-columns:1fr}.ticket-list article{grid-template-columns:42px 1fr}.ticket-list article>.table-status{grid-column:2}}

.role-dashboard .role-hero{background:linear-gradient(135deg,#10271e,#0b1814);border:1px solid var(--line);border-radius:22px;padding:24px;margin-bottom:18px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.role-dashboard .role-hero h1{margin:4px 0 8px}.role-dashboard .role-hero p{margin:0;color:var(--muted)}
.role-badge{padding:9px 14px;border-radius:999px;background:rgba(25,195,125,.12);border:1px solid rgba(25,195,125,.28);color:var(--emerald);font-size:11px}
.role-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.role-actions a{padding:14px;border-radius:12px;background:#0e2019;border:1px solid var(--line);color:white;text-align:center}.role-actions a:hover{border-color:rgba(25,195,125,.4);color:var(--emerald)}
.role-dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.role-task-list{display:grid;gap:10px}.role-task-list label{display:flex;gap:10px;align-items:center;padding:12px;background:#09140f;border-radius:10px}.role-task-list input{accent-color:var(--emerald)}
.role-chart{width:100%;height:260px;display:block}.role-mini-status{display:flex;justify-content:space-between;gap:10px;margin-top:10px;color:var(--muted);font-size:10px}
.side-nav .nav-group-label{display:block;padding:16px 14px 6px;color:var(--gold);font-size:9px;letter-spacing:.08em}
@media(max-width:900px){.role-dashboard-grid{grid-template-columns:1fr}.role-actions{grid-template-columns:1fr 1fr}.role-dashboard .role-hero{grid-template-columns:1fr}}
@media(max-width:560px){.role-actions{grid-template-columns:1fr}}

.field-helper{display:block;margin-top:7px;color:var(--muted);font-size:10px;line-height:1.7}

.opportunity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.opportunity-card{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;background:#09140f;border:1px solid var(--line);border-radius:16px;padding:20px}.opportunity-card h3{margin:10px 0 5px}.opportunity-card p,.opportunity-card small{color:var(--muted)}@media(max-width:800px){.opportunity-grid{grid-template-columns:1fr}.opportunity-card{grid-template-columns:1fr}}

.award-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.award-card{background:#09140f;border:1px solid var(--line);border-radius:17px;padding:18px;cursor:pointer}.award-card:hover{border-color:rgba(25,195,125,.4)}.award-card h3,.award-card p{margin:5px 0}.award-card p{color:var(--muted);font-size:10px}.award-progress{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:16px 0}.award-progress>span,.milestone-meter{height:8px;background:#06100c;border-radius:999px;overflow:hidden}.award-progress i,.milestone-meter i{display:block;height:100%;background:linear-gradient(90deg,var(--emerald),var(--gold));border-radius:999px}.award-footer{display:flex;justify-content:space-between;align-items:center}.award-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.award-summary div{background:#09140f;padding:13px;border-radius:11px}.award-summary span,.award-summary b{display:block}.award-summary span{color:var(--muted);font-size:9px}.milestone-board{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}.milestone-card{background:#09140f;border:1px solid var(--line);border-radius:14px;padding:16px}.milestone-head,.milestone-actions{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.milestone-meter{margin:14px 0}.milestone-card small{color:var(--muted)}.milestone-actions{margin-top:13px}.milestone-actions button,[data-approve-payment],[data-pay-payment]{border:1px solid var(--line);background:#10231c;color:white;border-radius:8px;padding:7px 10px;cursor:pointer}@media(max-width:1000px){.award-grid{grid-template-columns:1fr 1fr}.award-summary{grid-template-columns:1fr 1fr}}@media(max-width:650px){.award-grid,.milestone-board,.award-summary{grid-template-columns:1fr}}

.settlement-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.escrow-meter{height:12px;background:#06100c;border-radius:999px;overflow:hidden;margin:8px 0 18px}.escrow-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--emerald),var(--gold));transition:.4s}.release-card{display:flex;justify-content:space-between;align-items:center;padding:13px;background:#09140f;border-radius:11px;margin-bottom:9px}.release-card b,.release-card small{display:block}.release-card small{color:var(--muted);margin-top:4px}.release-card button{border:1px solid rgba(25,195,125,.35);background:rgba(25,195,125,.1);color:var(--emerald);padding:8px 11px;border-radius:8px}.proof-grid{display:grid;gap:10px}.proof-card{display:grid;grid-template-columns:55px 1fr;gap:12px;align-items:center;background:#09140f;border-radius:12px;padding:12px}.proof-qr{width:55px;height:55px;display:grid;place-items:center;border:1px dashed var(--emerald);color:var(--emerald);border-radius:9px}.proof-card b,.proof-card p,.proof-card small{display:block;margin:0}.proof-card p,.proof-card small{color:var(--muted);font-size:10px}.proof-card a{font-size:10px;color:var(--gold)}.settlement-timeline{display:grid;gap:12px}.settlement-timeline article{display:grid;grid-template-columns:16px 1fr;gap:10px}.settlement-timeline i{width:10px;height:10px;border-radius:50%;background:var(--emerald);margin-top:5px;box-shadow:0 0 12px rgba(25,195,125,.4)}.settlement-timeline b,.settlement-timeline p,.settlement-timeline small{display:block;margin:0}.settlement-timeline p,.settlement-timeline small{color:var(--muted);font-size:10px}@media(max-width:950px){.settlement-grid{grid-template-columns:1fr}}

.governance-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gov-card{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#09140f;border-radius:12px;padding:13px;margin-bottom:9px}.gov-card b,.gov-card p,.gov-card small{display:block;margin:0}.gov-card p,.gov-card small{color:var(--muted);font-size:10px}.gov-card button,.closure-box button{border:1px solid var(--line);background:#10231c;color:white;border-radius:8px;padding:8px 10px}.closure-box{background:#09140f;border-radius:12px;padding:18px}.rating-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rating-form label{font-size:10px;color:var(--muted)}.rating-form input,.rating-form textarea{width:100%;margin-top:6px;background:#09140f;border:1px solid var(--line);border-radius:9px;padding:10px;color:white}.rating-form .full{grid-column:1/-1}@media(max-width:900px){.governance-grid{grid-template-columns:1fr}}

.pm-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.wbs-tree ul{list-style:none;padding-right:18px}.wbs-tree>ul{padding-right:0}.wbs-node{display:grid;grid-template-columns:65px 1fr 50px;gap:10px;align-items:center;padding:9px 11px;background:#09140f;border-radius:9px;margin-bottom:7px}.wbs-node span{color:var(--gold);font-size:10px}.wbs-node small{color:var(--emerald)}.gantt-board{display:grid;gap:9px}.gantt-row{display:grid;grid-template-columns:150px 1fr 45px;gap:10px;align-items:center}.gantt-row>span{font-size:10px}.gantt-track{height:15px;background:#07110e;border-radius:999px;position:relative;overflow:hidden}.gantt-track i{position:absolute;top:0;height:100%;background:linear-gradient(90deg,var(--emerald),var(--gold));border-radius:999px}.gantt-track i.critical{background:linear-gradient(90deg,#ef6767,var(--gold))}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.kanban-column{background:#09140f;border:1px solid var(--line);border-radius:14px;padding:12px;min-height:260px}.kanban-column h3{font-size:13px;margin:0 0 12px}.kanban-list{min-height:210px;display:grid;align-content:start;gap:9px}.kanban-card{background:#10231c;border:1px solid var(--line);border-radius:11px;padding:12px;cursor:grab}.kanban-card b,.kanban-card p,.kanban-card small{display:block;margin:0}.kanban-card p,.kanban-card small{color:var(--muted);font-size:9px}.priority{display:inline-flex;margin:8px 0;padding:4px 7px;border-radius:999px;font-size:8px;background:rgba(255,255,255,.06)}.priority.critical{color:#ff8585}.priority.high{color:var(--gold)}.pm-ai-summary{background:#09140f;border-right:3px solid var(--emerald);padding:18px;border-radius:12px;color:var(--muted)}.pm-ai-summary b{color:white}@media(max-width:1100px){.pm-layout{grid-template-columns:1fr}.kanban-board{grid-template-columns:1fr 1fr}}@media(max-width:650px){.kanban-board{grid-template-columns:1fr}.gantt-row{grid-template-columns:100px 1fr 40px}}

.workflow-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:18px}.workflow-map{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.workflow-map span{padding:11px 14px;background:#09140f;border:1px solid var(--line);border-radius:999px}.workflow-map b{color:var(--gold)}.wf-approval-card{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#09140f;border-radius:12px;padding:13px;margin-bottom:9px}.wf-approval-card b,.wf-approval-card p,.wf-approval-card small{display:block;margin:0}.wf-approval-card p,.wf-approval-card small{color:var(--muted);font-size:10px}.wf-approval-card button{border:1px solid var(--line);background:#10231c;color:white;border-radius:8px;padding:7px 10px}@media(max-width:900px){.workflow-layout{grid-template-columns:1fr}}

.controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.control-card{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#09140f;border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:9px}.control-card b,.control-card p{display:block;margin:0}.control-card p{color:var(--muted);font-size:10px;margin-top:4px}@media(max-width:900px){.controls-grid{grid-template-columns:1fr}}

.executive-grid,.operations-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:18px}.operations-grid{grid-template-columns:1fr 1fr}.operations-grid .app-panel:last-child{grid-column:1/-1}.intel-alert,.ops-card{background:#09140f;border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:9px}.intel-alert.critical{border-color:#ef6767}.intel-alert.high{border-color:var(--gold)}.intel-alert b,.intel-alert p,.intel-alert small{display:block;margin:0}.intel-alert p,.intel-alert small{color:var(--muted);font-size:10px}.ops-card{display:flex;justify-content:space-between;gap:12px;align-items:center}.ops-card b,.ops-card p{display:block;margin:0}.ops-card p{color:var(--muted);font-size:10px}.digital-twin-view{display:grid;grid-template-columns:180px 1fr;gap:18px;margin-top:18px}.twin-score{display:grid;place-items:center;text-align:center;background:#09140f;border-radius:50%;width:160px;height:160px;border:1px solid rgba(25,195,125,.35)}.twin-score strong{font-size:38px;color:var(--emerald)}.twin-score span{font-size:10px;color:var(--muted)}.twin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.twin-metrics div{background:#09140f;border-radius:11px;padding:13px}.twin-metrics span,.twin-metrics b{display:block}.twin-metrics span{font-size:9px;color:var(--muted)}.twin-metrics b{font-size:20px;margin-top:5px}.health-score{color:var(--emerald);font-weight:700}@media(max-width:1000px){.executive-grid,.operations-grid{grid-template-columns:1fr}.operations-grid .app-panel:last-child{grid-column:auto}.digital-twin-view{grid-template-columns:1fr}.twin-score{margin:auto}.twin-metrics{grid-template-columns:1fr 1fr}}@media(max-width:600px){.twin-metrics{grid-template-columns:1fr}}

.integration-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.integration-connectors{display:grid;grid-template-columns:1fr 1fr;gap:10px}.integration-card{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#09140f;border:1px solid var(--line);border-radius:12px;padding:13px}.integration-card b,.integration-card p,.integration-card small{display:block;margin:0}.integration-card p,.integration-card small{font-size:10px;color:var(--muted)}.integration-layout label{display:block;color:var(--muted);font-size:10px;margin-bottom:10px}.integration-layout select,.integration-layout textarea{width:100%;margin-top:6px;background:#09140f;border:1px solid var(--line);border-radius:9px;padding:11px;color:white}.integration-response{direction:ltr;text-align:left;background:#06100c;border:1px solid var(--line);border-radius:11px;padding:14px;min-height:170px;overflow:auto;color:#b9d7c8}@media(max-width:950px){.integration-layout{grid-template-columns:1fr}.integration-connectors{grid-template-columns:1fr}}