@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#252b38;background:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#252b38;--muted:#778195;--line:#e8ebf1;--blue:#1683bd;--blue-dark:#116e9f;--orange:#f47b20;--surface:#fff;--nav:#15283d;--shadow:0 12px 36px #1c31500b}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f5f7fb}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-root{min-height:100vh}.boot-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;color:var(--muted)}.brand-mark{width:48px;height:48px;display:grid;place-items:center;background:var(--blue);color:white;border-radius:15px;font:800 25px Manrope,sans-serif;box-shadow:0 8px 18px #1683bd33}
.login-layout{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,1.15fr);background:#fff}.login-brand{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:44px 54px;color:white;background:linear-gradient(145deg,#0d395a,#087daa 72%,#16a1b2)}.login-brand:before,.login-brand:after{content:"";position:absolute;border:1px solid #ffffff1c;border-radius:50%;width:580px;height:580px;right:-210px;bottom:-280px}.login-brand:after{width:420px;height:420px;right:-132px;bottom:-205px}.login-brand img{width:170px;max-height:60px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.login-brand-copy{position:relative;z-index:1;max-width:520px;margin:auto 0}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:700;opacity:.8}.login-brand h1{font:800 clamp(32px,4vw,56px)/1.08 Manrope,sans-serif;margin:17px 0}.login-brand p{font-size:16px;line-height:1.7;color:#e2f4fa;max-width:430px}.login-foot{font-size:12px;color:#d4eaf2;position:relative;z-index:1}.login-side{display:grid;place-items:center;padding:48px 28px}.login-card{width:min(100%,420px)}.login-card h2{font:800 30px Manrope,sans-serif;margin:0 0 8px}.login-card>p{color:var(--muted);margin:0 0 30px}.field{display:grid;gap:7px;margin:16px 0}.field label{font-size:13px;font-weight:700;color:#485164}.field input,.field select,.field textarea,.search-input{width:100%;border:1px solid #dfe4ec;border-radius:9px;padding:12px 13px;background:#fff;color:var(--ink);outline:none;transition:border .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus{border-color:#63a9ce;box-shadow:0 0 0 3px #1683bd18}.field textarea{min-height:84px;resize:vertical}.btn{border:0;border-radius:9px;padding:11px 15px;font-weight:700;transition:transform .15s,background .15s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 5px 12px #1683bd28}.btn-primary:hover{background:var(--blue-dark)}.btn-light{background:#f1f5f9;color:#3f4a5d}.btn-ghost{background:transparent;color:#657084}.btn-danger{background:#fff0f1;color:#ca4653}.btn-full{width:100%;margin-top:10px;padding:13px}.form-error{color:#b83e4b;background:#fff0f1;border:1px solid #ffdade;border-radius:8px;padding:10px 12px;font-size:13px;margin:14px 0}.hint{color:#8a93a2;font-size:12px;line-height:1.5;margin-top:18px}
.shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.sidebar{background:var(--nav);color:#e9f0f6;padding:24px 15px;display:flex;flex-direction:column;min-height:100vh}.side-brand{height:50px;display:flex;align-items:center;gap:11px;padding:0 12px 18px;border-bottom:1px solid #ffffff14;margin-bottom:22px}.side-brand .brand-mark{width:34px;height:34px;border-radius:10px;font-size:18px}.side-brand strong{font:800 15px Manrope,sans-serif;letter-spacing:.04em}.side-brand small{display:block;color:#91a3b7;font-size:10px;margin-top:2px;letter-spacing:.12em}.nav-label{padding:0 12px;margin:15px 0 8px;color:#8092a6;font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.nav-item{border:0;background:transparent;color:#bac7d5;text-align:left;display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:8px;width:100%;font-weight:600;font-size:13px}.nav-item:hover,.nav-item.active{background:#ffffff12;color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--orange)}.nav-icon{width:19px;text-align:center;font-size:16px}.sidebar-spacer{flex:1}.side-user{border-top:1px solid #ffffff16;padding:16px 10px 2px;display:flex;align-items:center;gap:10px}.avatar{height:34px;width:34px;display:grid;place-items:center;border-radius:50%;background:#1e91bd;color:white;font-weight:800;font-size:12px}.side-user-info{min-width:0;flex:1}.side-user-info strong{display:block;color:#f6f8fa;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-user-info span{color:#98a9bb;font-size:11px}.signout{border:0;color:#98a9bb;background:none;font-size:18px}.main-area{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:5}.crumb{font-size:12px;color:#939cab}.crumb strong{color:#394354;font-weight:700}.topbar-actions{display:flex;align-items:center;gap:14px}.status-pill{font-size:11px;font-weight:700;color:#198261;background:#eaf8f2;padding:7px 10px;border-radius:20px}.content{padding:31px 36px 60px;width:100%;max-width:none;margin:0}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.page-head h1{font:800 27px Manrope,sans-serif;margin:0 0 7px;letter-spacing:-.03em}.page-head p{margin:0;color:var(--muted);font-size:13px}.head-actions{display:flex;gap:9px}.welcome-banner{background:linear-gradient(112deg,#087fb3,#166194);border-radius:15px;color:white;padding:27px 30px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative;margin-bottom:26px;box-shadow:0 12px 24px #136a9720}.welcome-banner:after{content:"";position:absolute;right:10%;height:230px;width:230px;border:1px solid #ffffff21;border-radius:50%;box-shadow:0 0 0 35px #ffffff0b,0 0 0 70px #ffffff08}.welcome-banner h2{font:800 22px Manrope,sans-serif;margin:0 0 8px;position:relative;z-index:1}.welcome-banner p{margin:0;color:#d8eff8;font-size:13px;position:relative;z-index:1}.welcome-banner .date-label{z-index:1;color:#d8eff8;font-size:12px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:29px 0 14px}.section-heading h2{font:700 16px Manrope,sans-serif;margin:0}.section-heading span{font-size:12px;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.stat-card,.panel,.app-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.stat-card{padding:17px 18px}.stat-label{color:var(--muted);font-size:12px}.stat-value{font:800 25px Manrope,sans-serif;margin-top:9px}.stat-note{font-size:11px;color:#8993a2;margin-top:5px}.app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-card{padding:17px;cursor:pointer;text-align:left;border-color:var(--line);color:var(--ink);transition:transform .16s,border .16s,box-shadow .16s}.app-card:hover{transform:translateY(-2px);border-color:#9ccce1;box-shadow:0 14px 28px #1c315012}.app-card-top{display:flex;justify-content:space-between;align-items:flex-start}.app-glyph{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf5fb;color:#1683bd;font-size:20px}.app-arrow{color:#a4adba}.app-card h3{font:700 14px Manrope,sans-serif;margin:16px 0 6px}.app-card p{min-height:34px;color:var(--muted);font-size:12px;line-height:1.5;margin:0}.app-card-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0f2f5;margin-top:15px;padding-top:12px;color:#8a93a1;font-size:10px}.panel{overflow:hidden}.panel-toolbar{padding:14px 16px;display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:9px}.search-input{width:min(270px,40vw);font-size:12px;padding:9px 11px}.filter-select{padding:9px 11px;border:1px solid #dfe4ec;border-radius:8px;background:#fff;color:#556174;font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:600px}th{text-align:left;color:#8a93a1;background:#fafbfd;font-size:10px;text-transform:uppercase;letter-spacing:.07em;padding:12px 16px;font-weight:700;white-space:nowrap}td{font-size:12px;padding:13px 16px;border-top:1px solid #f0f2f5;color:#495365;vertical-align:middle}td strong{color:#303949}.badge{display:inline-flex;align-items:center;border-radius:20px;font-size:10px;font-weight:700;padding:5px 9px;background:#edf7f2;color:#24805c}.badge.off{background:#f1f2f5;color:#7c8492}.badge.blue{background:#eaf5fb;color:#197eaf}.table-empty{padding:42px 20px;text-align:center;color:#929baa;font-size:13px}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin:0 0 17px}.tab-btn{padding:10px 14px;border:0;background:none;color:#7b8493;font-weight:700;font-size:12px;border-bottom:2px solid transparent}.tab-btn.active{color:var(--blue);border-color:var(--blue)}.notice{background:#fff8e9;border:1px solid #f6e1b0;color:#856323;padding:15px 17px;border-radius:10px;font-size:13px;line-height:1.5}.notice strong{display:block;color:#6e5015;margin-bottom:3px}.skeleton{height:13px;border-radius:6px;background:linear-gradient(90deg,#edf0f4 25%,#f7f8fa 50%,#edf0f4 75%);background-size:200% 100%;animation:shine 1.4s infinite}@keyframes shine{to{background-position:-200% 0}}.loading-box{padding:22px}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#11243a72;display:grid;place-items:center;padding:20px}.modal{width:min(100%,540px);max-height:90vh;overflow:auto;background:white;border-radius:14px;box-shadow:0 24px 80px #10223844}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}.modal-head h2{font:800 17px Manrope;margin:0}.modal-close{border:0;background:none;color:#8490a0;font-size:23px}.modal-body{padding:6px 22px 18px}.modal-foot{display:flex;justify-content:flex-end;gap:9px;padding:15px 22px;border-top:1px solid var(--line)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.toast-region{position:fixed;right:22px;top:20px;z-index:50;display:grid;gap:9px}.toast{background:#202e3f;color:white;padding:12px 16px;border-radius:9px;box-shadow:0 8px 24px #16283c30;font-size:13px;animation:toast-in .2s ease}.toast.error{background:#b7434e}@keyframes toast-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}.mobile-menu{display:none;border:0;background:none;font-size:20px;color:#506075}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.subtle-link{color:var(--blue);font-weight:700;font-size:12px}.restricted{max-width:680px;padding:30px}
@media(max-width:1050px){.shell{grid-template-columns:215px 1fr}.content{padding:26px 24px}.stats-grid{grid-template-columns:repeat(2,1fr)}.app-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.login-layout{grid-template-columns:1fr}.login-brand{display:none}.login-side{min-height:100vh}.shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:12;width:250px;left:-260px;transition:left .2s;box-shadow:14px 0 40px #13283b35}.sidebar.open{left:0}.mobile-menu{display:block}.topbar{padding:0 17px;height:62px}.content{padding:23px 15px 45px}.page-head{align-items:flex-start}.page-head h1{font-size:22px}.welcome-banner{padding:22px 19px}.welcome-banner .date-label{display:none}.stats-grid{gap:9px}.stat-card{padding:14px}.stat-value{font-size:22px}.app-grid{grid-template-columns:1fr 1fr;gap:9px}.app-card{padding:13px}.app-card p{font-size:11px}.panel-toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{justify-content:space-between}.search-input{width:100%}.two-col{grid-template-columns:1fr}.status-pill{display:none}}
@media(max-width:420px){.app-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.head-actions{width:100%}.head-actions .btn{flex:1}}
.check-list{display:grid;gap:9px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:#fbfcfe;max-height:240px;overflow:auto}.check-option{display:flex;align-items:center;gap:8px;color:#4d596a;font-size:12px}.check-option input{accent-color:var(--blue)}.form-panel{align-self:start}.form-panel .panel-toolbar{color:#3e4859}.form-panel .modal-body{padding-top:10px}
.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;align-items:end;padding:17px}.filter-grid .field{margin:0}.filter-grid .field input{width:100%}@media(max-width:900px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.filter-grid{grid-template-columns:1fr}}
.sites-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.sites-chart-grid .sites-chart:first-child{grid-column:span 2}.sites-bars{padding:16px;display:grid;gap:11px}.sites-bar-row{display:grid;grid-template-columns:minmax(95px,1fr) minmax(80px,2fr) 34px;align-items:center;gap:10px;font-size:11px;color:#596476}.sites-bar-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sites-bar-row i{height:9px;background:linear-gradient(90deg,#137fb3,#65b3cc);border-radius:5px}.sites-bar-row b{text-align:right;color:#344052}@media(max-width:620px){.sites-chart-grid{grid-template-columns:1fr}.sites-chart-grid .sites-chart:first-child{grid-column:auto}}
.related-app-links{display:flex;align-items:center;gap:5px;margin-left:14px;max-width:min(45vw,620px);overflow:auto}.related-app-link{border:1px solid #dce7ee;background:#f5f9fb;color:#26799d;border-radius:16px;padding:6px 10px;font-size:10px;font-weight:700;white-space:nowrap}.related-app-link:hover{background:#e8f4f9;border-color:#a9cfdf}@media(max-width:900px){.related-app-links{max-width:32vw;margin-left:7px}.related-app-link{padding:5px 7px}}@media(max-width:620px){.toolbar-left{min-width:0}.crumb{white-space:nowrap}.related-app-links{max-width:28vw}}
.ti-filter-grid{margin-bottom:16px}.ti-filter-grid .filter-select{width:100%;min-width:0}.ti-filter-actions{align-self:end}.ti-stats{margin:0 0 16px}.ti-source-warning{margin:0 0 16px}.ti-source-warning ul{margin:7px 0 0;padding-left:20px}.ti-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ti-chart{min-width:0}.ti-chart .sites-bars{max-height:255px;overflow:auto}.ti-chart-grid.is-android{grid-template-columns:repeat(4,minmax(0,1fr))}.ti-chart-grid.is-android .ti-donut-layout{grid-template-columns:1fr}.ti-chart-grid.is-android .ti-donut{width:150px}.ti-chart-grid.is-android .ti-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.ti-chart-grid.is-locations{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1000px){.ti-chart-grid,.ti-chart-grid.is-android,.ti-chart-grid.is-locations{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.ti-chart-grid,.ti-chart-grid.is-android,.ti-chart-grid.is-locations{grid-template-columns:1fr}.ti-filter-actions .btn{width:100%}}
.asset-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 20px}.asset-detail-grid>div,.asset-extra-fields>div{padding:11px;border:1px solid var(--line);border-radius:8px;background:#fbfcfe;min-width:0}.asset-detail-grid small,.asset-extra-fields small{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.asset-detail-grid strong,.asset-extra-fields span{display:block;color:#394354;font-size:12px;overflow-wrap:anywhere}.asset-extra-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.asset-detail-grid+.two-col{margin:12px 0}.content .toolbar-left .search-input{min-width:220px}@media(max-width:720px){.asset-detail-grid,.asset-extra-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.content .toolbar-left{flex-wrap:wrap}.content .toolbar-left .search-input{width:100%;max-width:none}}
.asset-detail-modal{width:min(100%,900px)}.asset-detail-tabs{margin:0 0 16px;overflow:auto}.asset-detail-modal [data-asset-panel][hidden]{display:none}.asset-detail-modal h3{font:700 14px Manrope,sans-serif;margin:15px 0 10px}.asset-photo-section{margin:12px 0 18px}.asset-photo-frame{min-height:150px;max-height:340px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:#f8fafc;overflow:hidden;margin-bottom:12px}.asset-detail-photo{display:block;max-width:100%;max-height:330px;object-fit:contain}.asset-photo-empty{padding:44px 15px;color:var(--muted);font-size:12px;text-align:center}.asset-app-checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 12px;margin:12px 0 18px}.asset-app-checks label{display:flex;align-items:center;gap:7px;font-size:12px;color:#495365}.asset-app-checks input{width:auto}.accessory-checks{grid-template-columns:repeat(3,minmax(0,1fr));align-content:center}.asset-detail-modal [data-maintenance-history]{margin-top:18px}.asset-detail-modal textarea{min-height:76px}@media(max-width:720px){.asset-app-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.accessory-checks{grid-template-columns:1fr}.asset-detail-modal .modal-body{padding-left:14px;padding-right:14px}}
.ti-donut-layout{display:grid;grid-template-columns:minmax(130px,.9fr) minmax(160px,1.1fr);align-items:center;gap:14px;padding:18px}.ti-donut{width:min(220px,100%);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto}.ti-donut-center{width:58%;aspect-ratio:1;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 12px #20334b12}.ti-donut-center b{font:800 22px Manrope,sans-serif;color:#303949}.ti-donut-center span{font-size:10px;color:var(--muted)}.ti-legend{display:grid;gap:8px;max-height:220px;overflow:auto}.ti-legend-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:10px;color:#596476}.ti-legend-row i{width:9px;height:9px;border-radius:50%;background:var(--ti-chart-color)}.ti-legend-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ti-legend-row b{color:#344052}.ti-columns{display:flex;align-items:stretch;gap:10px;min-height:230px;padding:16px;overflow-x:auto}.ti-column-item{flex:1 0 58px;min-width:58px;display:grid;grid-template-rows:18px 1fr 34px;gap:7px;text-align:center;color:#596476;font-size:10px}.ti-column-item>b{font-size:10px;color:#344052}.ti-column-track{display:flex;align-items:flex-end;justify-content:center;height:150px;border-bottom:1px solid #e8ebf1;background:linear-gradient(to bottom,transparent 32%,#f3f5f8 32%,#f3f5f8 33%,transparent 33%,transparent 65%,#f3f5f8 65%,#f3f5f8 66%,transparent 66%)}.ti-column-track i{display:block;width:min(64%,40px);min-height:4px;border-radius:5px 5px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--ti-chart-color),white 20%),var(--ti-chart-color))}.ti-column-item>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}@media(max-width:720px){.ti-donut-layout{grid-template-columns:1fr}.ti-donut{width:170px}.ti-legend{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}

.related-app-choice-list .check-option{display:flex;align-items:center;justify-content:flex-start;text-align:left;width:100%;gap:8px}.related-app-choice-list .check-option input{width:14px;min-width:14px;height:14px;flex:0 0 14px;padding:0;margin:0;border-radius:3px}
.security-filters{display:flex;flex-wrap:wrap;justify-content:flex-start}.security-filters .search-input{flex:1 1 180px;width:auto;min-width:180px}.security-filters .filter-select{flex:0 1 180px}
.security-simulation{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;overflow:auto;padding:24px;background:#030303;color:#f5f5f5;text-align:center;animation:security-screen-in .18s ease-out}.security-simulation-content{display:flex;flex-direction:column;align-items:center;gap:14px}.security-simulation-skull{width:min(180px,42vw);filter:drop-shadow(0 0 28px #e639463a);animation:security-laugh .28s ease-in-out infinite alternate}.security-simulation h1{font:800 clamp(30px,7vw,58px)/1 Manrope,Arial,sans-serif;color:#ef3949;margin:2px 0;letter-spacing:.04em}.security-simulation p{margin:0;color:#f3f3f3;font-size:clamp(17px,3vw,24px)}.security-simulation strong{font:800 15px Manrope,Arial,sans-serif;color:#ff5965;letter-spacing:.22em}.security-simulation small{max-width:440px;margin-top:17px;color:#929292;font-size:12px;line-height:1.6}@keyframes security-laugh{from{transform:rotate(-5deg) translateY(0)}to{transform:rotate(5deg) translateY(-5px)}}@keyframes security-screen-in{from{opacity:0}to{opacity:1}}

.solar-toolbar{display:flex;align-items:center;gap:14px;padding:16px 18px;margin-bottom:16px}.solar-site-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#e8f3ff;color:#087fb3;font-size:13px;font-weight:800;flex:none}.solar-site-copy{min-width:180px;flex:1}.solar-site-copy strong,.solar-site-copy span{display:block}.solar-site-copy strong{font:700 15px Manrope,sans-serif;color:var(--ink)}.solar-site-copy span{font-size:11px;color:var(--muted);margin-top:4px}.solar-site-picker{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:700}.solar-site-picker select{min-width:220px}.solar-status{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:20px;background:#eaf8f2;color:#198261;font-size:11px;font-weight:700}.solar-status i{width:7px;height:7px;border-radius:50%;background:#37a979}.solar-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.solar-kpi{position:relative;min-width:0;padding:17px 18px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.solar-kpi>span{display:block;color:var(--muted);font-size:11px}.solar-kpi>strong{display:block;margin-top:8px;color:#263648;font:800 22px Manrope,sans-serif}.solar-kpi>small{display:block;margin-top:10px;color:#7f8998;font-size:10px}.solar-spark{height:31px;display:flex;align-items:flex-end;gap:2px;margin-top:9px;overflow:hidden}.solar-spark span{flex:1;min-width:2px;border-radius:2px 2px 0 0;opacity:.78}.solar-main-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.8fr);gap:15px}.solar-chart-panel,.solar-battery-panel,.solar-tracker-panel,.solar-flow-panel{padding:17px 18px}.solar-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.solar-panel-heading strong,.solar-panel-heading span{display:block}.solar-panel-heading strong{font:700 14px Manrope,sans-serif;color:#2d3748}.solar-panel-heading div>span{margin-top:4px;color:var(--muted);font-size:10px}.solar-legend{display:flex;flex-wrap:wrap;gap:12px;color:#6d7888;font-size:10px}.solar-legend span{display:flex;align-items:center;gap:5px}.solar-legend i{width:8px;height:8px;border-radius:50%}.solar-legend-consumption{background:#ff6b6b}.solar-legend-generation{background:#f5a623}.solar-legend-battery{background:#2f7ed8}.solar-history-chart{width:100%;height:auto;min-height:210px;overflow:visible}.solar-grid-line{stroke:#edf0f3;stroke-width:1}.solar-axis-label{fill:#7d8796;font:10px Arial,sans-serif}.solar-bar-consumption{fill:#ff7777}.solar-bar-generation{fill:#f5ad37}.solar-battery-line{fill:none;stroke:#2f7ed8;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.solar-chart-empty{display:grid;place-items:center;min-height:210px;color:var(--muted);font-size:12px}.solar-battery-mark,.solar-pv-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eaf3ff;color:#2f7ed8;font-size:14px;font-weight:800}.solar-pv-mark{background:#fff4df;color:#d98a16}.solar-battery-value{margin:22px 0 10px;color:#263648;font:800 38px Manrope,sans-serif}.solar-battery-track{height:9px;overflow:hidden;border-radius:8px;background:#e8edf3}.solar-battery-track i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#2f7ed8,#47bb8b)}.solar-battery-spec{display:grid;grid-template-columns:1fr 1fr;gap:17px 12px;margin-top:24px}.solar-battery-spec span{color:var(--muted);font-size:10px}.solar-battery-spec strong{display:block;margin-top:5px;color:#334155;font-size:12px}.solar-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.solar-tracker-row,.solar-flow-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #f0f2f5}.solar-tracker-row>div strong,.solar-tracker-row>div span{display:block}.solar-tracker-row>div strong,.solar-flow-row span{color:#3d495a;font-size:11px}.solar-tracker-row>div span{margin-top:4px;color:var(--muted);font-size:10px}.solar-tracker-row>b,.solar-flow-row strong{color:#334155;font-size:11px}.solar-totals{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.solar-total-card{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fff}.solar-total-dot{width:8px;height:8px;margin-top:4px;border-radius:50%;flex:none}.solar-total-dot.orange{background:#f5a623}.solar-total-dot.red{background:#ff6b6b}.solar-total-dot.green{background:#49b36d}.solar-total-dot.blue{background:#2f7ed8}.solar-total-card span:not(.solar-total-dot){display:block;color:var(--muted);font-size:10px}.solar-total-card strong{display:block;margin-top:6px;color:#334155;font:700 15px Manrope,sans-serif}.solar-details{margin-top:15px;padding:14px 17px}.solar-details summary{cursor:pointer;color:#566274;font-size:11px;font-weight:700}.solar-details pre{max-height:420px;overflow:auto;margin:12px 0 0;padding:14px;border-radius:8px;background:#f6f8fb;color:#4c586a;font:11px/1.5 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:1000px){.solar-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.solar-main-grid{grid-template-columns:1fr}.solar-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.solar-toolbar{align-items:flex-start;flex-wrap:wrap}.solar-site-copy{min-width:calc(100% - 65px)}.solar-site-picker{width:100%}.solar-site-picker select{width:100%;min-width:0}.solar-kpis,.solar-lower-grid{grid-template-columns:1fr}.solar-totals{grid-template-columns:1fr 1fr}.solar-chart-panel,.solar-battery-panel,.solar-tracker-panel,.solar-flow-panel{padding:14px}.solar-legend{gap:7px}.solar-battery-spec{gap:13px}

}
.odoo-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px}.odoo-filters .search-input{flex:1 1 220px;min-width:180px}.odoo-filters .filter-select{flex:0 1 190px}.ecommerce-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:14px 0}.ecommerce-card{padding:16px;min-width:0}.ecommerce-card h3{font:700 14px Manrope,sans-serif;line-height:1.4;color:var(--ink);overflow-wrap:anywhere}.ecommerce-placeholder{height:112px;border-radius:10px;background:#f3f6f9;display:grid;place-items:center;color:#8a98a8;font-size:36px}.ecommerce-add{display:flex;gap:8px;align-items:center}.ecommerce-add input{width:84px}.ecommerce-add .btn{flex:1}.ecommerce-card p{font-size:11px;line-height:1.5}@media(max-width:1100px){.ecommerce-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.ecommerce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.odoo-filters .filter-select{flex:1 1 140px}}@media(max-width:480px){.ecommerce-grid{grid-template-columns:1fr}}
.btn[hidden]{display:none!important}
.warehouse-list .check-option{justify-content:flex-start;text-align:left;width:100%;gap:8px}
.warehouse-list .check-option input{width:14px;min-width:14px;height:14px;flex:0 0 14px;padding:0;margin:0}
.category-apps .check-option{display:flex;align-items:flex-start;justify-content:flex-start;width:100%;gap:8px;text-align:left;font-weight:400;line-height:1.4}
.category-apps .check-option input[type="checkbox"]{width:14px;min-width:14px;height:14px;flex:0 0 14px;padding:0;margin:2px 0 0;accent-color:var(--blue)}
.password-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.password-label-row>label{margin:0}
.password-field-actions{display:flex;align-items:center;gap:6px}
.password-icon-btn{width:32px;height:30px;padding:5px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;background:#f8fafc;color:#526176}
.password-icon-btn:hover{background:#eaf5fb;color:var(--blue)}
.password-icon-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.request-form-panel{display:flex;flex-direction:column;gap:16px;padding:22px 26px 20px}
.request-form-panel .two-col{column-gap:20px;row-gap:16px;align-items:end}
.request-form-panel .panel-toolbar{padding:10px 0;border:0;background:transparent;flex-wrap:wrap}
.request-form-panel .panel-toolbar:last-child{padding-bottom:0}
.alta-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.alta-empty .btn{margin-top:14px}
@media(max-width:720px){.request-form-panel{gap:13px;padding:16px}.request-form-panel .two-col{column-gap:12px;row-gap:12px}}
.record-table-tools{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:#fff}
.record-table-tools label{display:flex;align-items:center;gap:10px;color:#687487;font-size:11px;font-weight:700}
.record-table-tools input{width:min(260px,45vw);padding:8px 10px;border:1px solid #dfe4ec;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-weight:400}
.record-table-count,.record-table-page{color:var(--muted);font-size:11px;white-space:nowrap}
.record-table-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-top:1px solid var(--line);background:#fff}
.record-table-pagination>div{display:flex;gap:8px}
.record-table-pagination .btn{padding:8px 12px;font-size:11px}
th[tabindex]{cursor:pointer;user-select:none}
.record-sort-indicator{color:var(--blue);white-space:nowrap}
table tbody tr[hidden]{display:none!important}
@media(max-width:600px){.record-table-tools{align-items:stretch;flex-direction:column}.record-table-tools label{align-items:stretch;flex-direction:column}.record-table-tools input{width:100%}.record-table-pagination{align-items:flex-start;flex-direction:column}}
.stats-grid:not(:last-child){margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.inventory-filter-toolbar{margin-bottom:18px;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}
.request-detail-modal{width:min(96vw,1400px);max-height:92vh}
.request-detail-modal .modal-body{max-height:calc(92vh - 105px);overflow:auto}
.audit-data{max-width:380px;max-height:260px;overflow:auto;margin:8px 0 0;padding:10px;border-radius:7px;background:#f6f8fb;color:#4c586a;font:11px/1.5 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.toolbar-left{flex:1;min-width:0}.related-app-links{flex:1 1 auto;min-width:0;max-width:none;flex-wrap:wrap;overflow:visible}.topbar-actions{flex-shrink:0}@media(max-width:900px){.related-app-links{max-width:none}}@media(max-width:620px){.topbar{height:auto;min-height:72px;flex-wrap:wrap;gap:8px;padding:12px 16px}.toolbar-left{flex-wrap:wrap}.related-app-links{flex-basis:100%;margin-left:0}}
.sites-filters{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.sites-filters .field{min-width:0}.sites-filters select,.sites-filters input{width:100%;min-width:0}.sites-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.sites-network-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(100px,1.3fr) minmax(100px,1.3fr);align-items:center;gap:12px;color:#596476;font-size:11px}.sites-network-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sites-network-row>div{position:relative;min-width:0;height:23px;padding:4px 7px;overflow:hidden;border-radius:5px;background:#f0f3f7}.sites-network-row>div i{position:absolute;inset:0 auto 0 0;max-width:100%;height:100%;border-radius:5px;background:#46a078;opacity:.25}.sites-network-row>div i.target{background:#547dca}.sites-network-row>div b{position:relative;color:#344052;font-size:10px}.sites-network-row small{grid-column:2/-1}@media(max-width:1000px){.sites-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.sites-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.sites-filters,.sites-stats{grid-template-columns:1fr 1fr}.sites-network-row{grid-template-columns:minmax(0,1fr) minmax(85px,1fr);gap:7px}.sites-network-row>div:last-of-type{grid-column:2}.sites-network-row small{grid-column:1/-1}}
.sites-metrics-section{margin:0 0 20px}.sites-metrics-section .section-heading{margin:0 0 12px}.sites-filter-panel{margin-bottom:20px}.sites-filter-panel .panel-toolbar{border-bottom:1px solid var(--line)}.sites-donut-layout{min-height:190px;padding:18px;display:grid;grid-template-columns:minmax(115px,150px) minmax(0,1fr);align-items:center;gap:18px}.sites-donut{width:min(100%,142px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center}.sites-donut>div{width:66%;height:66%;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #e9edf2}.sites-donut b{font:800 20px Manrope,sans-serif;color:#344052}.sites-donut small{color:var(--muted);font-size:10px}.sites-legend{display:grid;gap:8px;min-width:0}.sites-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:11px;color:#596476}.sites-legend i{width:9px;height:9px;border-radius:50%}.sites-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sites-legend b{color:#344052}.sites-chart-empty{padding:42px 16px;text-align:center;color:var(--muted);font-size:12px}@media(max-width:720px){.sites-donut-layout{grid-template-columns:minmax(92px,125px) minmax(0,1fr);gap:12px;padding:14px}.sites-donut b{font-size:16px}}
.sites-overview-charts{display:grid;gap:15px}.sites-emphasis-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:stretch}.sites-entity-chart .sites-chart,.sites-operation-chart .sites-chart{height:100%}.sites-vbar-scroll{overflow-x:auto;padding:14px 16px 10px}.sites-vbars{min-width:max-content;min-height:220px;display:flex;align-items:stretch;gap:12px}.sites-vbar-item{flex:0 0 58px;display:grid;grid-template-rows:18px minmax(130px,1fr) 42px;gap:5px;text-align:center;font-size:10px;color:#596476}.sites-vbar-item>b{font-size:10px;color:#344052}.sites-vbar-track{height:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #dfe4ec;background:linear-gradient(to top,#f8fafc 1px,transparent 1px);background-size:100% 25%}.sites-vbar-track i{width:65%;min-height:4px;border-radius:5px 5px 0 0}.sites-vbar-item>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-top:4px}.sites-emphasis-row .sites-chart{min-width:0}.sites-emphasis-row .sites-donut-layout{grid-template-columns:minmax(90px,120px) minmax(0,1fr);gap:10px;padding:14px}.sites-emphasis-row .sites-donut{max-width:116px}.sites-emphasis-row .sites-network-row{grid-template-columns:minmax(80px,1fr) minmax(76px,1fr) minmax(76px,1fr);gap:7px}.sites-emphasis-row .sites-bars{padding:12px}.sites-emphasis-row .sites-legend{gap:6px}.sites-emphasis-row .sites-legend>div{gap:5px;font-size:10px}.sites-emphasis-row .sites-network-row small{grid-column:1/-1}@media(max-width:1000px){.sites-emphasis-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.sites-emphasis-row{grid-template-columns:1fr}.sites-emphasis-row .sites-donut-layout{grid-template-columns:minmax(92px,125px) minmax(0,1fr)}}
.sites-primary-row{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr)) minmax(0,1.3fr);gap:14px;align-items:stretch}.sites-primary-row>.sites-chart{height:100%;min-width:0}.sites-primary-row .sites-donut-layout{grid-template-columns:minmax(82px,110px) minmax(0,1fr);gap:9px;padding:12px}.sites-primary-row .sites-donut{max-width:106px}.sites-primary-row .sites-legend{gap:6px}.sites-primary-row .sites-legend>div{grid-template-columns:9px minmax(0,1fr) auto;gap:5px;font-size:10px}.sites-primary-row .sites-network-row{grid-template-columns:minmax(50px,.8fr) repeat(2,minmax(56px,1fr));gap:6px;font-size:10px}.sites-primary-row .sites-network-row small{grid-column:1/-1}.sites-primary-row .sites-bars{padding:12px}.sites-primary-row .sites-vbar-scroll{padding:12px 10px 8px}.sites-primary-row .sites-vbars{gap:8px}.sites-primary-row .sites-vbar-item{flex-basis:48px}@media(max-width:1200px){.sites-primary-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.sites-primary-row{grid-template-columns:1fr}.sites-primary-row .sites-donut-layout{grid-template-columns:minmax(92px,125px) minmax(0,1fr)}}
.ti-metrics-heading{margin:0 0 10px}.ti-stats{margin-bottom:20px}
.dashboard-filter-panel{margin-bottom:20px}.dashboard-filter-panel .panel-toolbar{border-bottom:1px solid var(--line)}.dashboard-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.dashboard-filter-grid .field{min-width:0;margin:0}.dashboard-filter-grid .field input,.dashboard-filter-grid .field select{width:100%;min-width:0}@media(max-width:900px){.dashboard-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.dashboard-filter-grid{grid-template-columns:1fr}}
.initial-load-preview{max-height:52vh;overflow:auto}.initial-load-summary{display:flex;justify-content:space-between;gap:12px;margin:0 0 12px;color:#526073;font-size:12px}.initial-load-summary strong{color:#263548}.initial-load-errors{margin-bottom:12px}.initial-load-errors ul{margin:6px 0 0;padding-left:20px}.initial-load-preview .table-wrap{max-height:32vh;margin-bottom:8px}.success-notice{background:#edf8f2;border-color:#cfeadb;color:#27704f}.success-notice strong{color:#216344}
.organic-tabs{display:flex;gap:8px;margin:0 0 18px;border-bottom:1px solid var(--line)}.organic-tabs .tab-btn{border:0;background:transparent;color:#657084;padding:11px 14px;border-bottom:2px solid transparent;font-weight:700}.organic-tabs .tab-btn.active{color:var(--blue-dark);border-bottom-color:var(--orange)}.organic-dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:16px;margin-top:16px}.organic-panel{padding:18px;min-width:0}.organic-panel .panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.organic-panel .panel-title h2,.organic-lines .panel-title h3{font:700 15px Manrope,sans-serif;margin:0}.organic-bars{display:grid;gap:13px}.organic-bar-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(100px,2fr) 70px;gap:12px;align-items:center;font-size:12px}.organic-bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.organic-bar-row>div{height:9px;border-radius:9px;background:#edf1f5;overflow:hidden}.organic-bar-row i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#1683bd,#31a68c)}.organic-bar-row>b{text-align:right;font-variant-numeric:tabular-nums}.organic-filter{margin-bottom:14px}.organic-filter .panel-toolbar{display:flex;gap:9px;flex-wrap:wrap}.organic-filter .search-input{flex:1 1 240px}.organic-filter .filter-select{min-width:145px}.organic-line-row{display:grid;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(95px,1fr) minmax(140px,1.5fr) 42px;gap:8px;margin:9px 0}.organic-line-row select,.organic-line-row input{min-width:0;border:1px solid #dfe4ec;border-radius:8px;padding:10px;background:#fff;color:var(--ink)}.organic-lines .panel-title{display:flex;align-items:center;justify-content:space-between}.organic-panel .table-wrap{max-height:420px}@media(max-width:980px){.organic-dashboard-grid{grid-template-columns:1fr}}@media(max-width:720px){.organic-line-row{grid-template-columns:1fr 1fr}.organic-line-row select,.organic-line-row input:nth-of-type(3){grid-column:1/-1}.organic-tabs{overflow-x:auto}.organic-tabs .tab-btn{white-space:nowrap}.organic-filter .filter-select{flex:1 1 130px}}
.receipt-state-filter{position:relative;flex:0 1 190px}.receipt-state-filter>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;cursor:pointer;white-space:nowrap}.receipt-state-filter>summary::-webkit-details-marker{display:none}.receipt-state-filter>summary::after{content:"▾";color:#7c8796}.receipt-state-options{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:230px;max-height:280px;overflow:auto;padding:8px;background:#fff;border:1px solid #dfe4ec;border-radius:9px;box-shadow:0 12px 28px #10223824}.receipt-state-options label{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:6px;color:#495365;font-size:12px;cursor:pointer}.receipt-state-options label:hover{background:#f5f8fb}.receipt-state-options input{accent-color:var(--blue)}#receipt-panel{overflow:visible}
.alta-page-actions{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:9px;max-width:none}.alta-page-actions .btn{white-space:nowrap}@media(max-width:1500px){.alta-page-actions{flex-wrap:wrap}}@media(max-width:720px){.alta-page-actions{justify-content:flex-start}}

.organic-dashboard-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.organic-dashboard-stats .stat-card{min-width:0}@media(max-width:1200px){.organic-dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.organic-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.organic-dashboard-stats{grid-template-columns:1fr}}

.organic-dashboard-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;align-items:stretch}.organic-dashboard-charts>.organic-panel{height:100%;box-sizing:border-box}.organic-chart-legend{display:flex;gap:16px;flex-wrap:wrap;margin:-4px 0 14px;color:var(--muted);font-size:11px}.organic-chart-legend span{display:inline-flex;align-items:center;gap:6px}.organic-chart-legend i{width:9px;height:9px;border-radius:50%;background:#1683bd}.organic-chart-legend i.exit{background:#31a68c}.organic-chart-legend i.transfer{background:#f49b38}.organic-trend-list{display:grid;gap:14px}.organic-trend-row{display:grid;grid-template-columns:42px minmax(0,1fr) 30px;gap:10px;align-items:center;font-size:12px}.organic-trend-row>span{color:#596476;text-transform:capitalize}.organic-trend-row>b{text-align:right;font-variant-numeric:tabular-nums}.organic-trend-track{position:relative;height:10px;border-radius:8px;background:#edf1f5;overflow:hidden}.organic-trend-track i{position:absolute;top:0;bottom:0;background:#1683bd}.organic-trend-track i.exit{background:#31a68c}.organic-trend-track i.transfer{background:#f49b38}.organic-bar-row i.negative{background:linear-gradient(90deg,#e37a67,#c84d52)}.organic-chart-empty{padding:28px 12px;text-align:center;color:var(--muted);font-size:12px}@media(max-width:980px){.organic-dashboard-charts{grid-template-columns:1fr}}@media(max-width:560px){.organic-dashboard-charts>.organic-panel{padding:14px}.organic-bar-row{grid-template-columns:minmax(85px,1fr) minmax(70px,1.5fr) 82px;gap:8px;font-size:11px}.organic-chart-legend{gap:10px}}

.record-table-tools-filtered{display:flex;align-items:center;flex-wrap:nowrap;gap:10px}.record-table-tools-filtered>label{order:1;display:block;flex:2 1 380px;min-width:220px;font-size:0;color:transparent}.record-table-tools-filtered>label input{display:block;width:100%;max-width:none;min-width:180px;font-size:12px;color:var(--ink)}.record-table-tools-filtered .organic-record-filters{order:2;display:flex;align-items:center;gap:10px;flex:3 1 620px;min-width:0}.record-table-tools-filtered .organic-record-filters .filter-select{flex:1 1 130px;width:100%;min-width:120px}.record-table-tools-filtered .record-table-count{order:3;flex:0 0 auto}.organic-table-panel .table-wrap{border-top:1px solid var(--line)}@media(max-width:1080px){.record-table-tools-filtered{flex-wrap:wrap}.record-table-tools-filtered>label{flex:1 1 100%;min-width:0}.record-table-tools-filtered .organic-record-filters{flex:1 1 100%}}@media(max-width:620px){.record-table-tools-filtered .organic-record-filters{flex-wrap:wrap}.record-table-tools-filtered .organic-record-filters .filter-select{flex:1 1 145px}}
.organic-operation-modal{width:min(100%,820px);overflow-x:hidden}.organic-operation-modal .modal-body{min-width:0}.organic-operation-modal .organic-line-row{max-width:100%;min-width:0}

.dashboard-filter-panel{overflow:visible}.ti-multi-select{position:relative;z-index:1;width:100%;min-width:0}.ti-multi-select.is-open{z-index:40}.ti-multi-select-trigger{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer}.ti-multi-select-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ti-multi-select-arrow{flex:0 0 auto;color:#7c8796}.ti-multi-options{position:absolute;top:calc(100% + 5px);left:0;right:0;max-height:min(280px,50vh);overflow:auto;padding:7px;background:#fff;border:1px solid #dfe4ec;border-radius:9px;box-shadow:0 12px 28px #10223824}.ti-multi-options[hidden]{display:none}.ti-multi-clear{width:100%;padding:8px 9px;border:0;border-bottom:1px solid #edf0f4;background:#fff;color:#1683bd;text-align:left;font-size:12px;font-weight:700;cursor:pointer}.ti-multi-option{display:flex;align-items:flex-start;gap:8px;padding:8px 9px;border-radius:6px;color:#495365;font-size:12px;line-height:1.4;cursor:pointer}.ti-multi-option:hover{background:#f5f8fb}.ti-multi-option input{flex:0 0 auto;width:15px;height:15px;margin:1px 0 0;accent-color:var(--blue)}.ti-multi-option span{min-width:0;overflow-wrap:anywhere}
.ti-multi-options{box-sizing:border-box;overflow-x:hidden}.ti-multi-options>.ti-multi-option{display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;justify-content:start!important;align-items:center!important;gap:8px!important;width:100%!important;box-sizing:border-box!important;text-align:left!important;white-space:normal!important}.ti-multi-options>.ti-multi-option>input{grid-column:1;justify-self:start;width:15px!important;min-width:15px!important;max-width:15px!important;padding:0!important;margin:0!important}.ti-multi-options>.ti-multi-option>span{grid-column:2;display:block;width:auto!important;min-width:0;max-width:100%;text-align:left!important;white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere}
.assignment-history-section{margin:24px 0 28px}.assignment-history-section .section-heading{margin:0 0 12px}.assignment-history-table table{min-width:760px}.assignment-pdf-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}.assignment-pdf-actions .btn{padding:7px 9px;font-size:11px}.assignment-pdf-upload{position:relative;overflow:hidden}.assignment-pdf-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.organic-warehouse-notice{margin-bottom:16px}

.ti-chart-grid.is-lifecycle{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ti-lifecycle-note{margin:18px 16px 26px;line-height:1.65}
.ti-lifecycle-summary{margin:0 0 24px}
.ti-lifecycle-summary-toolbar{margin-top:8px;padding:16px}
.ti-lifecycle-year-filter{max-width:260px;margin:18px 16px 22px}
.ti-filter-grid .ti-lifecycle-year-filter{margin:0}
.ti-lifecycle-detail-heading{margin:0 16px 14px}
.ti-breakdown-panel{grid-column:span 2;min-width:0}
.ti-breakdown-total{color:var(--muted);font-size:11px;white-space:nowrap}
.ti-breakdown-chart{display:grid;gap:10px;padding:12px 16px 16px}
.ti-breakdown-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(50px,1.25fr) 42px 36px;align-items:center;gap:9px;min-width:0;font-size:11px;font-variant-numeric:tabular-nums}
.ti-breakdown-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#495365}
.ti-breakdown-row>i{height:10px;border-radius:6px;background:#eef2f6;overflow:hidden}
.ti-breakdown-row>i>b{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#1683bd,#54a8c8)}
.ti-breakdown-row>strong{text-align:right;color:#344054}
.ti-breakdown-row>em{text-align:right;color:var(--muted);font-style:normal}
@media(max-width:1100px){.ti-chart-grid.is-lifecycle{grid-template-columns:repeat(2,minmax(0,1fr))}.ti-breakdown-panel{grid-column:span 1}}
@media(max-width:720px){.ti-chart-grid.is-lifecycle{grid-template-columns:1fr}.ti-lifecycle-note{margin:16px 12px 22px}.ti-lifecycle-summary-toolbar{align-items:flex-start;flex-direction:column}.ti-lifecycle-year-filter{margin:16px 12px 20px}.ti-lifecycle-detail-heading{margin-left:12px}.ti-breakdown-panel{grid-column:1}.ti-breakdown-row{grid-template-columns:minmax(80px,1fr) minmax(40px,1.15fr) 38px 32px;gap:6px;font-size:10px}}
.fleet-calendar{margin-top:14px}.fleet-weekdays,.fleet-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.fleet-weekdays{padding:10px 12px 0;color:var(--muted);font-size:11px;text-align:center}.fleet-grid{gap:1px;background:var(--line);padding:1px;margin-top:8px}.fleet-day{background:#fff;min-height:105px;padding:8px;overflow:hidden}.fleet-day.outside{background:#f8fafc}.fleet-day>strong{display:block;font-size:12px;margin-bottom:5px}.fleet-event{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;border:0;border-radius:5px;background:#eaf5fb;color:#176b96;padding:4px 6px;margin:3px 0;font-size:10px;cursor:pointer}.fleet-tabs{overflow:auto}.fleet-tabs .tab-btn{white-space:nowrap}.fleet-tabs .tab-btn.active{color:var(--blue-dark);border-bottom:2px solid var(--orange)}@media(max-width:720px){.fleet-day{min-height:72px;padding:4px}.fleet-event{font-size:9px;padding:3px}.fleet-calendar>.panel-toolbar{flex-wrap:wrap}.fleet-tabs{gap:0}}

.settings-mfa-page{min-height:calc(100vh - 163px);display:grid;place-items:center;padding:24px}.settings-mfa-content{width:min(100%,560px)}.settings-mfa-page .page-head{margin-bottom:18px}.settings-mfa-card{padding:28px}.settings-mfa-card h2{font:800 20px Manrope,sans-serif;margin:0 0 14px}.settings-mfa-card>p{line-height:1.55;margin:0 0 18px}@media(max-width:720px){.settings-mfa-page{min-height:calc(100vh - 130px);padding:16px}.settings-mfa-card{padding:24px 20px}}
.avatar-button{border:0;padding:0;cursor:pointer;overflow:hidden}.avatar-button:hover{outline:2px solid #1683bd55;outline-offset:2px}.avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-avatar-preview{width:88px;height:88px;margin:0 auto 18px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#e8f3ff;color:#087fb3;font-size:24px;font-weight:800}.profile-avatar-preview img{width:100%;height:100%;object-fit:cover}.modal-body hr{border:0;border-top:1px solid var(--line);margin:20px 0}
.software-inventory-stats{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:16px}.software-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.software-chart-panel{padding:17px 18px;min-width:0}.software-chart-panel .panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:16px}.software-chart-panel .panel-title h2{margin:0;font:700 14px Manrope,sans-serif}.software-chart-panel .panel-title .muted{font-size:10px;text-align:right}.software-chart-bars{display:grid;gap:13px}.software-chart-row{min-width:0}.software-chart-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px;color:#536174;font-size:11px}.software-chart-label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.software-chart-label strong{color:#344052;font-size:11px}.software-chart-track{height:8px;border-radius:6px;background:#edf1f5;overflow:hidden}.software-chart-track i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#1683bd,#62b5cb)}.software-chart-empty{display:grid;place-items:center;min-height:110px;color:var(--muted);font-size:12px}.software-inventory-filters{gap:10px}.software-inventory-filters .search-input{flex:1;min-width:220px}.software-inventory-filters .filter-select{min-width:200px}.software-inventory-filters>span{white-space:nowrap}@media(max-width:1000px){.software-inventory-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.software-chart-grid{grid-template-columns:1fr}.software-inventory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.software-inventory-filters{align-items:stretch;flex-direction:column}.software-inventory-filters .search-input,.software-inventory-filters .filter-select{width:100%;min-width:0}}
.security-simulation:fullscreen{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;border:0}
.security-download{width:min(100%,420px);margin-top:10px;padding:16px 18px;border:1px solid #ffffff20;border-radius:12px;background:#101114;text-align:left;box-shadow:0 12px 36px #0008}.security-download-heading{display:flex;align-items:center;gap:12px}.security-download-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;background:#15364a;color:#58c5ff;font-size:25px;font-weight:700}.security-download-heading>span:nth-child(2){display:grid;gap:3px;flex:1}.security-download-heading b{color:#f4f4f4;font-size:13px;font-weight:650}.security-download-heading small,.security-download-status{color:#a1a1aa;font-size:11px}.security-download-percent{color:#e5e7eb;font-size:12px;font-variant-numeric:tabular-nums}.security-download-track{height:7px;margin:15px 0 9px;overflow:hidden;border-radius:999px;background:#33363d}.security-download-track>span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1683bd,#52c7ff);transition:width .3s ease}.security-download-status{display:block}@media(max-width:480px){.security-download{padding:14px}}
