*{box-sizing:border-box}body{margin:0;font:14px Inter,system-ui,Segoe UI,Arial,sans-serif;background:#f3f6fb;color:#10213e}aside{position:fixed;inset:0 auto 0 0;width:245px;background:linear-gradient(180deg,#10283f,#0b1d31);color:#fff;padding:22px 16px;box-shadow:4px 0 20px #10213e12}.brand{display:flex;gap:10px;align-items:center;padding:0 8px 18px}.brandicon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#1677ff;font-size:20px}.brand h2{margin:0;font-size:20px}.brand small{opacity:.65}.company-chip{margin:0 7px 18px;padding:10px 12px;border:1px solid #ffffff18;background:#ffffff0b;border-radius:9px;font-size:12px;color:#cbd8e8}nav a{display:flex;gap:11px;align-items:center;color:#dce8f5;text-decoration:none;padding:11px 12px;border-radius:8px;margin:3px 0;font-weight:600}nav a:hover{background:#1677ff;color:#fff}.sidefoot{position:absolute;bottom:20px;left:24px;color:#8fa4ba;font-size:12px}.sidefoot small{opacity:.7}main{margin-left:245px;padding:0 28px 35px;max-width:1800px}header{height:62px;display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid #e5ebf3;margin:0 -28px 20px;padding:0 28px;background:#fff}.top-company{color:#61708a}.top-company b{color:#1a3153}.dot{margin:0 7px}.role{margin-left:10px;padding:5px 9px;background:#eaf2ff;color:#1267cf;border-radius:999px;text-transform:capitalize;font-size:11px;font-weight:700}.page-title{display:flex;align-items:center;justify-content:space-between;margin:8px 0 20px}.page-title h1{margin:0;font-size:31px;letter-spacing:-.5px}.page-title p,.section-head p{margin:5px 0 0;color:#708099}.quicklinks{display:flex;gap:9px}section,.card{background:#fff;border:1px solid #dfe7f1;border-radius:13px;box-shadow:0 2px 7px #20395b0b}.cards{display:grid;gap:11px}.status-cards{grid-template-columns:repeat(7,minmax(135px,1fr));margin-bottom:12px}.finance-cards{grid-template-columns:repeat(5,1fr);margin-bottom:12px}.card{padding:17px 16px;min-height:102px;position:relative;overflow:hidden}.card small{color:#53647d;font-weight:650}.card strong{display:block;font-size:25px;margin-top:7px;letter-spacing:-.4px}.card em{display:block;color:#8a98ab;font-size:11px;font-style:normal;margin-top:4px}.status-cards .card{display:flex;gap:11px;align-items:center}.metric-icon{flex:0 0 39px;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:18px;font-weight:800}.accent-green .metric-icon{background:#1cad62}.accent-blue .metric-icon{background:#1e7bf0}.accent-orange .metric-icon{background:#f5a313}.accent-red .metric-icon{background:#eb4149}.accent-purple .metric-icon{background:#7c4ce0}.accent-yellow .metric-icon{background:#f1b51c}.profit:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#1cad62}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}section{padding:18px;margin:12px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.section-head h2{margin:0;font-size:19px}.section-head a{color:#1672df;text-decoration:none;font-weight:650;font-size:12px}.bar-row,.package-list>div{display:grid;grid-template-columns:100px 1fr 45px;align-items:center;gap:10px;margin:14px 0}.bar{height:8px;background:#edf1f6;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:#2580ee;border-radius:99px}.bar-active{background:#20ae63!important}.bar-available{background:#2580ee!important}.bar-suspended{background:#f4a91c!important}.bar-cancelled{background:#ea454d!important}.package-list span{display:grid}.package-list small{color:#8997aa;font-size:10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid #e8edf4;white-space:nowrap}th{background:#f7f9fc;color:#53647d;font-size:12px}tr:last-child td{border-bottom:0}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.badge{display:inline-block;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:700}.badge.overdue{background:#ffe5e7;color:#c92c35}.badge.upcoming{background:#fff2cf;color:#9b6900}.activity-list{display:grid}.activity-item{display:grid;grid-template-columns:14px 1fr auto;gap:9px;align-items:center;padding:10px 3px;border-bottom:1px solid #edf1f5}.activity-item:last-child{border:0}.activity-dot{width:9px;height:9px;background:#2380ef;border-radius:50%}.activity-item p{margin:2px 0;color:#60708a}.activity-item time{color:#8794a8;font-size:12px}.empty{text-align:center;color:#8794a8;padding:24px!important}h1{font-size:30px}h2{color:#10213e}.gridform{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gridform label{display:grid;gap:5px}input,select,button,.btn{padding:9px 11px;border:1px solid #ccd7e5;border-radius:7px;background:#fff;font:inherit}button,.btn{background:#1672df;color:#fff;border:0;cursor:pointer;text-decoration:none;display:inline-block;font-weight:650}.btn.green{background:#19a65b}.danger{background:#d9363e}.inline{display:inline}.search{display:flex;gap:8px;margin:14px 0}.search input{min-width:340px}.flash{padding:11px 14px;border-radius:8px;margin:10px 0}.ok{background:#dff6e7}.bad{background:#ffe0e0}.login{display:grid;place-items:center;height:100vh;background:#eef3f9}.loginbox{width:360px;background:#fff;padding:30px;border-radius:14px;box-shadow:0 10px 40px #22334422}.loginbox label{display:grid;gap:5px;margin:14px 0}.loginbox button{width:100%}@media(max-width:1350px){.status-cards{grid-template-columns:repeat(4,1fr)}.finance-cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){aside{position:static;width:auto}.sidefoot{display:none}main{margin:0;padding:0 15px 25px}header{margin:0 -15px 15px;padding:0 15px}.status-cards,.finance-cards,.cards,.gridform,.dashboard-grid{grid-template-columns:1fr 1fr}.page-title{align-items:flex-start;gap:12px}.quicklinks{flex-direction:column}}@media(max-width:560px){.status-cards,.finance-cards,.cards,.gridform,.dashboard-grid{grid-template-columns:1fr}.page-title{display:block}.quicklinks{margin-top:12px}.top-company{font-size:11px}}
/* v4 dashboard — compact, colorful, cache-busted */
.dash-head{display:flex;align-items:center;justify-content:space-between;margin:4px 0 12px}.dash-head h1{margin:0;font-size:29px}.dash-head p{margin:3px 0 0;color:#708099}.compact{gap:10px}.status-cards.compact{grid-template-columns:repeat(7,minmax(120px,1fr));margin-bottom:10px}.finance-cards.compact{grid-template-columns:repeat(5,1fr);margin-bottom:10px}.card.metric{min-height:82px;padding:12px 13px;border:0;box-shadow:0 4px 14px #17385e12}.card.metric small{color:#31435e}.card.metric strong{font-size:24px;margin-top:2px}.card.metric .metric-icon{width:36px;height:36px;flex-basis:36px;font-size:14px;box-shadow:0 4px 10px #00000018}.card.metric.green{background:linear-gradient(135deg,#ecfbf2,#f8fffb);border-left:4px solid #18a85b}.card.metric.green .metric-icon{background:#18a85b}.card.metric.blue{background:linear-gradient(135deg,#edf5ff,#fbfdff);border-left:4px solid #1976e9}.card.metric.blue .metric-icon{background:#1976e9}.card.metric.orange{background:linear-gradient(135deg,#fff6e6,#fffdfa);border-left:4px solid #f2a012}.card.metric.orange .metric-icon{background:#f2a012}.card.metric.red{background:linear-gradient(135deg,#ffedef,#fffafa);border-left:4px solid #e43d48}.card.metric.red .metric-icon{background:#e43d48}.card.metric.purple{background:linear-gradient(135deg,#f3edff,#fcfaff);border-left:4px solid #7548da}.card.metric.purple .metric-icon{background:#7548da}.card.metric.yellow{background:linear-gradient(135deg,#fff8dc,#fffefa);border-left:4px solid #e7ae16}.card.metric.yellow .metric-icon{background:#e7ae16}.card.finance{min-height:78px;padding:12px 15px;border:0}.card.finance strong{font-size:23px;margin-top:5px}.card.finance.blue{background:linear-gradient(135deg,#eaf4ff,#f9fcff);border-top:3px solid #2480ef}.card.finance.purple{background:linear-gradient(135deg,#f1ebff,#fbf9ff);border-top:3px solid #8054df}.card.finance.cyan{background:linear-gradient(135deg,#e8fbff,#f9feff);border-top:3px solid #10a8c5}.card.finance.green{background:linear-gradient(135deg,#e9faef,#f9fffb);border-top:3px solid #20aa61}.card.finance.pink{background:linear-gradient(135deg,#fff0f6,#fffafd);border-top:3px solid #e54883}.dash-panels{display:grid;grid-template-columns:.75fr .75fr 1.5fr;grid-template-areas:"inventory packages renewals" "activity activity renewals";gap:10px;align-items:stretch}.dash-panels section{margin:0;padding:14px}.dash-panels .mini:first-child{grid-area:inventory}.dash-panels .mini:nth-child(2){grid-area:packages}.renew-panel{grid-area:renewals}.activity-panel{grid-area:activity}.dash-panels .section-head{margin-bottom:8px}.dash-panels .section-head h2{font-size:16px}.dash-panels .section-head p{font-size:11px}.dash-panels .bar-row,.dash-panels .package-list>div{grid-template-columns:75px 1fr 30px;gap:7px;margin:8px 0;font-size:11px}.dash-panels .bar{height:7px}.dash-panels th,.dash-panels td{padding:8px 7px;font-size:11px}.dash-panels .activity-item{padding:6px 2px;font-size:11px}.dash-panels .activity-item p{margin:1px 0;font-size:10px}.dash-panels .activity-item time{font-size:10px}.dash-panels .empty{padding:15px!important}.quicklinks .btn{padding:8px 12px}@media(max-width:1450px){.status-cards.compact{grid-template-columns:repeat(4,1fr)}.dash-panels{grid-template-columns:1fr 1fr;grid-template-areas:"inventory packages" "renewals renewals" "activity activity"}}@media(max-width:900px){.status-cards.compact,.finance-cards.compact{grid-template-columns:1fr 1fr}.dash-panels{display:grid;grid-template-columns:1fr;grid-template-areas:"inventory" "packages" "renewals" "activity"}}
/* v4.1 renewal/status enhancements */
.badge.urgent{background:#fff0c2;color:#9a5b00}.badge.status-active{background:#dcfce7;color:#137a3b}.badge.status-available{background:#dbeafe;color:#155fbd}.badge.status-suspended{background:#fff0c2;color:#9a5b00}.badge.status-cancelled{background:#fee2e2;color:#b42318}.muted{color:#8a98aa}.price-source{display:block;color:#7b8798;font-size:10px;margin-top:2px}.hint{font-size:12px;color:#64748b;margin:8px 0 0}.renew-panel table{font-size:12px}.renew-panel td,.renew-panel th{padding:8px 9px}
/* v4.2 clickable KPIs + renewal actions + SIM workspace */
.metric-link{text-decoration:none;color:inherit;transition:transform .12s ease,box-shadow .12s ease}.metric-link:hover{transform:translateY(-2px);box-shadow:0 8px 22px #17385e20!important}.renew-btn{background:#19a65b;padding:6px 10px;font-size:11px}.secondary{background:#eef3f8;color:#29415f;border:1px solid #d9e2ed}.row-sub{display:block;margin-top:4px;color:#7a899d;font-size:10px}.sim-filters{display:grid;grid-template-columns:minmax(260px,1.5fr) 180px 180px auto auto;gap:8px;margin:12px 0}.sim-filters input,.sim-filters select{min-width:0}.sim-table{padding:14px}.sim-table .section-head{margin-bottom:8px}.sim-table td{vertical-align:middle}.actions{display:flex;gap:6px;align-items:center}.sim-add{padding:14px}.sim-add .section-head{margin-bottom:10px}@media(max-width:1000px){.sim-filters{grid-template-columns:1fr 1fr}.actions{display:block}.actions>*{margin:2px 0}}
