:root{--bg:#040811;--panel:#091523eF;--panel2:#0d1d2f;--line:#1d3952;--text:#e8f4ff;--muted:#86a3bc;--cyan:#28e7ff;--green:#5df2ad;--yellow:#ffd166;--red:#ff6475;--purple:#a78bfa;--radius:18px;--shadow:0 22px 70px #0008}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0,#0a2440 0,transparent 33%),linear-gradient(#030711,#07111d);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;min-height:100vh}#matrix{position:fixed;inset:0;width:100%;height:100%;z-index:-2;opacity:.16}.scanlines{position:fixed;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,#fff0 0,#fff0 3px,#07111f44 4px);opacity:.25}.app-shell{max-width:1660px;margin:auto;padding:20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#07111feb;border:1px solid #1b4861;border-radius:20px;padding:12px 16px;box-shadow:var(--shadow);backdrop-filter:blur(15px);position:sticky;top:10px;z-index:50}.brand img{width:min(500px,45vw);height:78px;object-fit:contain;object-position:left center}.topbar nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.topbar nav a,.user-chip{color:var(--text);text-decoration:none;border:1px solid var(--line);background:#0a1726;padding:9px 12px;border-radius:10px;font-size:.88rem}.topbar nav a:hover{border-color:var(--cyan);color:var(--cyan)}.danger-link{color:#ffc4cb!important}.hero{margin:22px 0;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:28px;border-radius:24px;background:linear-gradient(135deg,#0c1d31ee,#07121fee);border:1px solid #267295;box-shadow:var(--shadow)}.eyebrow{color:var(--cyan);font-size:.75rem;text-transform:uppercase;letter-spacing:.22em;font-weight:900}.hero h1{font-size:clamp(2rem,4vw,3.7rem);margin:.3rem 0}.hero p{color:var(--muted);max-width:850px;line-height:1.6}.hero-score{min-width:190px;text-align:center;padding:22px;border-radius:18px;border:1px solid #2d8b6a;background:#10332488}.hero-score strong{display:block;font-size:2.6rem;color:var(--green)}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:18px 0}.stat,.panel{background:linear-gradient(145deg,#0c1c2dee,#08131fee);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px #0004}.stat{padding:18px}.stat span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.stat strong{display:block;font-size:2rem;margin-top:7px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;padding:14px;margin:18px 0;background:#081421e6;border:1px solid var(--line);border-radius:16px}.btn,input,select,textarea{font:inherit}.btn{border:1px solid var(--line);color:var(--text);background:#0d1b2b;padding:10px 13px;border-radius:10px;text-decoration:none;cursor:pointer}.btn:hover{transform:translateY(-1px);border-color:var(--cyan)}.btn.primary{background:linear-gradient(135deg,#1689a8,#0e647d);border-color:var(--cyan)}.btn.success{background:linear-gradient(135deg,#178254,#105c3e);border-color:var(--green)}.btn.danger{border-color:#763b46;color:#ffc4cb}.field,input,select,textarea{background:#07121f;color:var(--text);border:1px solid var(--line);border-radius:9px;padding:9px;outline:none}.field:focus,input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #28e7ff18}.grow{flex:1}.site{margin:16px 0;overflow:hidden}.site-head{display:flex;align-items:center;gap:14px;padding:18px 20px;background:linear-gradient(90deg,#24d9ff12,transparent);border-bottom:1px solid var(--line)}.site-head h2{margin:0;font-size:1.2rem}.site-range{font-family:Consolas,monospace;color:var(--cyan);font-size:.88rem}.site-progress{margin-left:auto;color:var(--muted)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:1100px}th{text-align:left;padding:12px;background:#06101c;color:#9ab5ce;text-transform:uppercase;font-size:.7rem;letter-spacing:.1em}td{padding:9px 11px;border-top:1px solid #183147;vertical-align:top}td input,td select,td textarea{width:100%}td textarea{min-height:42px;resize:vertical}.status-Completed,.status-Good{color:var(--green)}.status-Pending{color:var(--yellow)}.status-Review{color:#ff9b72}.status-Planned{color:var(--purple)}.site-notes{padding:12px 18px 18px}.site-notes textarea{width:100%;min-height:64px}.progress{height:8px;border:1px solid #183147;background:#04101a;border-radius:999px;overflow:hidden;margin-top:10px}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green))}.login-wrap{min-height:calc(100vh - 150px);display:grid;place-items:center}.login-card{width:min(460px,94vw);padding:28px}.login-logo{width:100%;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{color:var(--muted);font-size:.82rem}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:6px}.full{grid-column:1/-1}.modal{border:1px solid var(--line);border-radius:18px;background:#081421;color:var(--text);width:min(760px,94vw);padding:0}.modal::backdrop{background:#000b;backdrop-filter:blur(5px)}.modal-head,.modal-body,.modal-foot{padding:18px 20px}.modal-head{font-size:1.25rem;font-weight:800;border-bottom:1px solid var(--line)}.modal-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line)}.flash{margin:14px 0;padding:13px 16px;border-radius:12px;border:1px solid}.flash.success{background:#123a2a;border-color:#2e8e67}.flash.error{background:#3a1820;border-color:#8d3b4b}.flash.warning{background:#3b3215;border-color:#827027}.audit{padding:20px}.audit-row{display:grid;grid-template-columns:170px 160px 1fr 130px;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:.88rem}.muted{color:var(--muted)}.empty{text-align:center;padding:50px;color:var(--muted)}@media(max-width:1000px){.stats{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.topbar{position:relative;top:0;display:block}.brand img{width:100%;max-width:500px}.topbar nav{margin-top:10px}.audit-row{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}}@media(max-width:560px){.app-shell{padding:10px}.stats{grid-template-columns:1fr}.hero{padding:20px}.brand img{height:auto}}@media print{#matrix,.scanlines,.topbar nav,.toolbar,.actions,.site-notes{display:none!important}body{background:#fff;color:#000}.panel,.hero,.stat{box-shadow:none;background:#fff;border-color:#aaa}input,select,textarea{border:0;background:transparent;color:#000;padding:0;appearance:none}}
a{color:var(--cyan)} textarea[readonly]{opacity:.9}


/* V3.3 Configuration Vault */
.vault-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 22px}
.vault-stat{position:relative;overflow:hidden;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(13,29,47,.96),rgba(7,18,31,.96));box-shadow:0 10px 30px rgba(0,0,0,.25)}
.vault-stat:after{content:"";position:absolute;right:-25px;bottom:-35px;width:100px;height:100px;border:1px solid rgba(40,231,255,.15);border-radius:50%}
.vault-stat span{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
.vault-stat strong{display:block;margin-top:6px;font-size:2rem;color:var(--cyan)}
.vault-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
.vault-card{display:flex;flex-direction:column;min-height:245px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:linear-gradient(150deg,rgba(11,28,46,.97),rgba(6,17,29,.98));box-shadow:0 16px 42px rgba(0,0,0,.30);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.vault-card:hover{transform:translateY(-3px);border-color:rgba(40,231,255,.65);box-shadow:0 22px 60px rgba(0,0,0,.42),0 0 0 1px rgba(40,231,255,.06)}
.vault-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(29,57,82,.8);background:linear-gradient(90deg,rgba(40,231,255,.08),transparent)}
.device-badge{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(40,231,255,.35);color:var(--cyan);background:rgba(40,231,255,.08)}
.device-badge.pfsense{color:#ffb86b;border-color:rgba(255,184,107,.4);background:rgba(255,184,107,.08)}
.device-badge.opnsense{color:#ff7a8d;border-color:rgba(255,122,141,.4);background:rgba(255,122,141,.08)}
.device-badge.cisco-router,.device-badge.cisco-switch,.device-badge.cisco-wlc{color:#8fd3ff;border-color:rgba(143,211,255,.4);background:rgba(143,211,255,.08)}
.vault-access{color:var(--muted);font-size:.76rem}
.vault-card-body{display:grid;gap:16px;padding:18px 18px 8px;flex:1}
.vault-title-wrap h3{margin:0 0 5px;font-size:1.15rem}
.vault-title-wrap h3 a{color:var(--text);text-decoration:none}
.vault-title-wrap h3 a:hover{color:var(--cyan)}
.vault-location{color:var(--cyan);font-size:.84rem}
.vault-file{display:grid;gap:6px;padding:12px;border:1px solid rgba(29,57,82,.75);border-radius:12px;background:rgba(3,12,22,.55)}
.vault-label{color:var(--muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.1em}
.vault-file code{color:#dceeff;font-family:Consolas,monospace;font-size:.8rem;overflow-wrap:anywhere;line-height:1.45}
.vault-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;color:var(--muted);font-size:.78rem}
.vault-meta span{padding-left:10px;border-left:2px solid rgba(40,231,255,.2)}
.vault-actions{display:flex;align-items:center;gap:10px;padding:14px 16px 16px;border-top:1px solid rgba(29,57,82,.75);background:rgba(4,13,23,.52)}
.vault-actions .btn{min-width:110px;text-align:center}
@media(max-width:1100px){.vault-grid{grid-template-columns:1fr}}
@media(max-width:780px){.vault-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.vault-summary{grid-template-columns:1fr}.vault-meta{grid-template-columns:1fr}.vault-actions{flex-direction:column;align-items:stretch}.vault-actions .btn{width:100%}}


/* =========================================================
   V3.4 UNIXTECHLAB GREEN CYBER COMMAND THEME
   ========================================================= */
:root{
  --bg:#020803;
  --panel:#07150aee;
  --panel2:#0a2110;
  --line:#1d5a2b;
  --text:#effff1;
  --muted:#91b99a;
  --cyan:#59ff67;
  --green:#59ff67;
  --yellow:#d7ff68;
  --red:#ff6677;
  --purple:#a5ff80;
  --shadow:0 24px 80px rgba(0,0,0,.62);
}

body{
  background:
    radial-gradient(circle at 15% 0%,rgba(54,255,81,.14),transparent 30%),
    radial-gradient(circle at 90% 10%,rgba(122,255,88,.09),transparent 26%),
    linear-gradient(180deg,#010502 0%,#041006 45%,#020703 100%);
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    linear-gradient(rgba(76,255,90,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(76,255,90,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),rgba(0,0,0,.15));
}

#matrix{opacity:.22;filter:drop-shadow(0 0 5px rgba(73,255,86,.75))}
.scanlines{
  background:repeating-linear-gradient(
    0deg,
    transparent 0,
    transparent 3px,
    rgba(32,80,38,.26) 4px
  );
}

.topbar{
  background:
    linear-gradient(135deg,rgba(4,18,7,.97),rgba(3,10,4,.97));
  border:1px solid rgba(91,255,108,.45);
  box-shadow:
    0 25px 70px rgba(0,0,0,.62),
    inset 0 0 35px rgba(48,255,78,.04),
    0 0 28px rgba(53,255,74,.07);
}

.brand-green{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-decoration:none;
}

.brand-green img{
  width:min(690px,54vw);
  height:100px;
  object-fit:contain;
  object-position:left center;
  filter:
    drop-shadow(0 0 10px rgba(83,255,97,.28))
    drop-shadow(0 0 28px rgba(83,255,97,.12));
}

.brand-status{
  position:absolute;
  right:8px;
  bottom:6px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:5px 9px;
  border:1px solid rgba(89,255,103,.35);
  border-radius:999px;
  color:#8eff99;
  background:rgba(3,20,6,.8);
  font-family:Consolas,monospace;
  font-size:.64rem;
  letter-spacing:.12em;
}

.brand-status i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#59ff67;
  box-shadow:0 0 12px #59ff67;
  animation:utlPulse 1.6s ease-in-out infinite;
}

@keyframes utlPulse{
  0%,100%{opacity:.55;transform:scale(.9)}
  50%{opacity:1;transform:scale(1.15)}
}

.topbar nav a,.user-chip{
  border-color:rgba(89,255,103,.28);
  background:linear-gradient(180deg,rgba(11,36,15,.85),rgba(5,18,8,.9));
}

.topbar nav a:hover{
  color:#9cff9f;
  border-color:#59ff67;
  box-shadow:0 0 20px rgba(89,255,103,.12);
}

.hero{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(9,36,15,.96),rgba(3,14,6,.97));
  border:1px solid rgba(89,255,103,.48);
  box-shadow:
    0 25px 75px rgba(0,0,0,.5),
    inset 0 0 60px rgba(57,255,76,.03);
}

.hero:before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  right:-110px;
  top:-165px;
  border:1px solid rgba(89,255,103,.14);
  border-radius:50%;
  box-shadow:
    0 0 0 35px rgba(89,255,103,.025),
    0 0 0 75px rgba(89,255,103,.018);
}

.hero h1{
  text-shadow:
    0 0 22px rgba(89,255,103,.08),
    0 2px 0 rgba(0,0,0,.45);
}

.eyebrow{color:#62ff71;text-shadow:0 0 13px rgba(89,255,103,.35)}

.hero-score{
  border-color:rgba(89,255,103,.58);
  background:
    radial-gradient(circle at 50% 0,rgba(89,255,103,.12),transparent 60%),
    rgba(8,35,14,.82);
  box-shadow:
    inset 0 0 28px rgba(89,255,103,.05),
    0 0 28px rgba(89,255,103,.08);
}

.hero-score strong{color:#6cff79;text-shadow:0 0 18px rgba(89,255,103,.4)}

.stat,.panel{
  background:
    linear-gradient(145deg,rgba(9,31,13,.96),rgba(4,15,7,.97));
  border-color:rgba(67,190,83,.34);
  box-shadow:
    0 14px 42px rgba(0,0,0,.34),
    inset 0 0 30px rgba(89,255,103,.018);
}

.stat:hover,.panel:hover{
  border-color:rgba(89,255,103,.48);
}

.stat strong{
  color:#70ff7c;
  text-shadow:0 0 15px rgba(89,255,103,.22);
}

.toolbar{
  background:
    linear-gradient(180deg,rgba(7,28,11,.96),rgba(3,14,6,.97));
  border-color:rgba(76,218,91,.34);
  box-shadow:0 14px 40px rgba(0,0,0,.28);
}

.btn{
  border-color:rgba(75,194,89,.35);
  background:
    linear-gradient(180deg,rgba(13,42,18,.96),rgba(6,22,9,.97));
}

.btn:hover{
  border-color:#59ff67;
  color:#b6ffba;
  box-shadow:
    0 0 0 1px rgba(89,255,103,.08),
    0 0 22px rgba(89,255,103,.12);
}

.btn.primary{
  color:#031006;
  font-weight:800;
  background:
    linear-gradient(135deg,#7dff71,#39d94a);
  border-color:#b5ffad;
  box-shadow:
    0 0 24px rgba(89,255,103,.18),
    inset 0 1px 0 rgba(255,255,255,.38);
}

.btn.primary:hover{
  color:#020803;
  filter:brightness(1.08);
}

.btn.success{
  color:#031006;
  font-weight:800;
  background:linear-gradient(135deg,#8aff76,#4edb58);
  border-color:#b5ffad;
}

input,select,textarea,.field{
  background:rgba(2,13,5,.92);
  border-color:rgba(59,154,70,.45);
}

input:focus,select:focus,textarea:focus,.field:focus{
  border-color:#59ff67;
  box-shadow:
    0 0 0 3px rgba(89,255,103,.09),
    0 0 20px rgba(89,255,103,.07);
}

.site-head{
  background:
    linear-gradient(90deg,rgba(89,255,103,.10),transparent 68%);
}

.site-range,.vault-location,a{color:#66ff72}

.progress i{
  background:
    linear-gradient(90deg,#aaff79,#47f05a,#1fb83a);
  box-shadow:0 0 16px rgba(89,255,103,.35);
}

.vault-stat,.vault-card{
  border-color:rgba(62,183,77,.38);
  background:
    linear-gradient(150deg,rgba(8,33,13,.98),rgba(3,14,6,.99));
}

.vault-stat strong{color:#6dff78}

.vault-card:hover{
  border-color:#59ff67;
  box-shadow:
    0 24px 65px rgba(0,0,0,.48),
    0 0 34px rgba(89,255,103,.08);
}

.vault-card-top{
  background:
    linear-gradient(90deg,rgba(89,255,103,.10),transparent);
}

.device-badge{
  color:#8cff95;
  border-color:rgba(89,255,103,.45);
  background:rgba(89,255,103,.08);
}

.device-badge.pfsense{
  color:#baff72;
  border-color:rgba(186,255,114,.48);
  background:rgba(186,255,114,.08);
}

.device-badge.opnsense{
  color:#67ffb2;
  border-color:rgba(103,255,178,.46);
  background:rgba(103,255,178,.08);
}

.vault-file{
  border-color:rgba(67,177,80,.34);
  background:rgba(1,10,3,.62);
}

.vault-actions{
  background:rgba(2,12,4,.6);
  border-color:rgba(58,157,70,.3);
}

.login-card{
  border-color:rgba(89,255,103,.48);
  box-shadow:
    0 25px 85px rgba(0,0,0,.66),
    0 0 45px rgba(89,255,103,.08);
}

.login-logo{
  filter:
    drop-shadow(0 0 14px rgba(89,255,103,.22))
    drop-shadow(0 0 32px rgba(89,255,103,.10));
}

.flash.success{
  background:rgba(10,58,18,.92);
  border-color:#47c85a;
}
.flash.warning{
  background:rgba(52,59,10,.92);
  border-color:#a6c447;
}
.flash.error{
  background:rgba(59,12,18,.94);
  border-color:#bc4653;
}

@media(max-width:1000px){
  .brand-green img{width:100%;height:auto;max-width:690px}
  .brand-status{position:static;margin-top:8px}
}


/* =========================================================
   V3.5 SECURE ACCESS GATEWAY
   ========================================================= */
.security-login{
  min-height:calc(100vh - 150px);
  display:grid;
  place-items:center;
  padding:38px 0;
}

.security-gateway{
  width:min(1180px,96vw);
  display:grid;
  grid-template-columns:1.1fr .9fr;
  overflow:hidden;
  border:1px solid rgba(89,255,103,.48);
  border-radius:26px;
  background:
    linear-gradient(135deg,rgba(4,20,7,.985),rgba(1,8,3,.99));
  box-shadow:
    0 35px 120px rgba(0,0,0,.75),
    0 0 0 1px rgba(89,255,103,.04),
    0 0 60px rgba(89,255,103,.08);
}

.security-side{
  position:relative;
  min-height:680px;
  padding:38px;
  border-right:1px solid rgba(89,255,103,.25);
  background:
    radial-gradient(circle at 15% 15%,rgba(89,255,103,.12),transparent 30%),
    linear-gradient(160deg,rgba(8,37,13,.94),rgba(2,13,4,.98));
  overflow:hidden;
}

.security-side:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(89,255,103,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(89,255,103,.035) 1px,transparent 1px);
  background-size:28px 28px;
  mask-image:linear-gradient(to bottom,#000,transparent);
}

.security-side:after{
  content:"";
  position:absolute;
  width:500px;
  height:500px;
  left:-250px;
  bottom:-280px;
  border:1px solid rgba(89,255,103,.15);
  border-radius:50%;
  box-shadow:
    0 0 0 45px rgba(89,255,103,.025),
    0 0 0 90px rgba(89,255,103,.018);
}

.security-side>*{position:relative;z-index:1}

.security-badge{
  display:inline-flex;
  padding:7px 11px;
  border:1px solid rgba(89,255,103,.38);
  border-radius:999px;
  color:#8fff99;
  background:rgba(5,25,8,.72);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.15em;
}

.security-logo{
  width:100%;
  max-width:650px;
  margin:26px 0 30px;
  filter:
    drop-shadow(0 0 14px rgba(89,255,103,.20))
    drop-shadow(0 0 32px rgba(89,255,103,.08));
}

.security-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:20px 0 32px;
}

.security-grid>div{
  padding:15px;
  border:1px solid rgba(89,255,103,.22);
  border-radius:13px;
  background:rgba(1,14,4,.62);
}

.security-grid span{
  display:block;
  color:var(--muted);
  font-size:.64rem;
  letter-spacing:.13em;
}

.security-grid strong{
  display:block;
  margin-top:5px;
  color:#73ff7f;
  font-family:Consolas,monospace;
  font-size:.88rem;
}

.security-copy h2{
  margin:0 0 10px;
  font-size:1.7rem;
}

.security-copy p{
  max-width:600px;
  color:var(--muted);
  line-height:1.7;
}

.security-terminal{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-top:34px;
  padding:13px 15px;
  border:1px solid rgba(89,255,103,.24);
  border-radius:11px;
  background:rgba(0,9,2,.78);
  font-family:Consolas,monospace;
  font-size:.72rem;
  color:#85ff90;
}

.security-form-panel{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:52px;
  background:
    radial-gradient(circle at 100% 0,rgba(89,255,103,.08),transparent 35%),
    rgba(2,12,4,.96);
}

.security-lock{
  display:grid;
  place-items:center;
  width:70px;
  height:70px;
  margin-bottom:22px;
  border:1px solid rgba(89,255,103,.45);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(17,61,23,.9),rgba(5,24,8,.95));
  color:#76ff82;
  font-size:2.2rem;
  box-shadow:
    inset 0 0 24px rgba(89,255,103,.06),
    0 0 24px rgba(89,255,103,.08);
}

.security-form-panel h1{
  margin:.35rem 0 .45rem;
  font-size:clamp(2.1rem,4vw,3.5rem);
}

.security-form{
  display:grid;
  gap:18px;
  margin-top:26px;
}

.security-form label{
  display:grid;
  gap:8px;
  color:#dffff0;
  font-weight:700;
}

.input-shell{
  display:grid;
  grid-template-columns:46px 1fr;
  align-items:center;
  overflow:hidden;
  border:1px solid rgba(89,255,103,.34);
  border-radius:13px;
  background:rgba(0,10,2,.88);
  transition:.18s ease;
}

.input-shell:focus-within{
  border-color:#59ff67;
  box-shadow:
    0 0 0 3px rgba(89,255,103,.08),
    0 0 24px rgba(89,255,103,.08);
}

.input-icon{
  display:grid;
  place-items:center;
  align-self:stretch;
  border-right:1px solid rgba(89,255,103,.22);
  color:#6fff7a;
  font-family:Consolas,monospace;
  font-weight:900;
}

.input-shell input{
  width:100%;
  min-height:54px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none!important;
}

.security-submit{
  width:100%;
  min-height:56px;
  margin-top:4px;
  font-size:1rem;
  letter-spacing:.02em;
}

.security-foot{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid rgba(89,255,103,.18);
  color:var(--muted);
  font-size:.74rem;
}

.security-foot span{
  display:flex;
  align-items:center;
  gap:7px;
}

.security-foot i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#59ff67;
  box-shadow:0 0 12px #59ff67;
}

@media(max-width:980px){
  .security-gateway{grid-template-columns:1fr}
  .security-side{min-height:auto;border-right:0;border-bottom:1px solid rgba(89,255,103,.24)}
}

@media(max-width:620px){
  .security-side,.security-form-panel{padding:24px}
  .security-grid{grid-template-columns:1fr}
  .security-terminal,.security-foot{flex-direction:column}
}

/* V3.6 Folder Vault */
.vault-folder-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start;margin-top:18px}
.vault-folders{position:sticky;top:135px;display:grid;gap:9px;padding:16px;border:1px solid rgba(89,255,103,.36);border-radius:18px;background:linear-gradient(160deg,rgba(7,29,11,.98),rgba(2,12,4,.99));box-shadow:0 18px 50px rgba(0,0,0,.38),inset 0 0 30px rgba(89,255,103,.02)}
.vault-folder-title{padding:4px 5px 12px;color:#9dffa5;font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.vault-folder{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;min-height:50px;padding:8px 10px;border:1px solid rgba(89,255,103,.18);border-radius:12px;color:var(--text);text-decoration:none;background:rgba(2,14,4,.58);transition:.18s ease}
.vault-folder:hover{transform:translateX(3px);border-color:rgba(89,255,103,.55);background:rgba(8,36,13,.82);box-shadow:0 0 22px rgba(89,255,103,.07)}
.vault-folder.active{border-color:#59ff67;background:linear-gradient(135deg,rgba(27,89,34,.92),rgba(7,34,12,.94));box-shadow:inset 0 0 22px rgba(89,255,103,.05),0 0 24px rgba(89,255,103,.09)}
.vault-folder-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(89,255,103,.34);border-radius:9px;color:#77ff82;background:rgba(89,255,103,.07);font-family:Consolas,monospace;font-size:.72rem;font-weight:900}
.vault-folder-label{font-size:.88rem;font-weight:700}.vault-folder-count{display:grid;place-items:center;min-width:28px;height:26px;padding:0 7px;border-radius:999px;color:#9aff9f;background:rgba(89,255,103,.10);border:1px solid rgba(89,255,103,.20);font-size:.72rem;font-weight:900}
.vault-folder-content{min-width:0}.vault-current-folder{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid rgba(89,255,103,.34);border-radius:18px;background:linear-gradient(135deg,rgba(8,34,13,.96),rgba(3,15,6,.98));box-shadow:0 14px 40px rgba(0,0,0,.3)}
.vault-current-folder h2{margin:.25rem 0 0;font-size:1.7rem}.vault-folder-total{padding:8px 12px;border:1px solid rgba(89,255,103,.32);border-radius:999px;color:#95ff9d;background:rgba(89,255,103,.08);font-size:.8rem;font-weight:800}
@media(max-width:1050px){.vault-folder-shell{grid-template-columns:1fr}.vault-folders{position:relative;top:0;grid-template-columns:repeat(2,minmax(0,1fr))}.vault-folder-title{grid-column:1/-1}}
@media(max-width:620px){.vault-folders{grid-template-columns:1fr}.vault-current-folder{align-items:flex-start;flex-direction:column}}


/* =========================================================
   V3.7 INFRASTRUCTURE COMMAND DASHBOARD
   ========================================================= */
.command-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  margin:24px 0 18px;
  padding:30px;
  border:1px solid rgba(89,255,103,.38);
  border-radius:22px;
  background:
    radial-gradient(circle at 78% 40%,rgba(89,255,103,.12),transparent 28%),
    linear-gradient(135deg,rgba(7,38,13,.97),rgba(2,14,5,.98));
  box-shadow:0 18px 52px rgba(0,0,0,.36),inset 0 0 36px rgba(89,255,103,.025);
}
.command-hero h1{margin:.3rem 0 .6rem;font-size:clamp(2rem,4vw,3.7rem);line-height:.98}
.command-hero p{max-width:780px;margin:0;color:var(--muted);font-size:1rem;line-height:1.65}
.command-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.command-readiness{display:flex;align-items:center;gap:16px;min-width:280px}
.readiness-ring{
  --size:142px;
  position:relative;
  display:grid;
  place-items:center;
  width:var(--size);
  height:var(--size);
  flex:0 0 var(--size);
  border-radius:50%;
  background:conic-gradient(#59ff67 calc(var(--progress)*1%),rgba(89,255,103,.10) 0);
  box-shadow:0 0 28px rgba(89,255,103,.14);
}
.readiness-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#041208;border:1px solid rgba(89,255,103,.22)}
.readiness-ring div{position:relative;z-index:1;display:grid;text-align:center}
.readiness-ring strong{font-size:2rem}.readiness-ring span{color:#94d99c;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}
.readiness-copy{display:grid;gap:5px}.readiness-copy span{color:#80ff8b;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.readiness-copy strong{max-width:125px;font-size:.95rem}

.command-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}
.command-kpi{display:grid;gap:5px;padding:17px;border:1px solid rgba(89,255,103,.22);border-radius:15px;background:rgba(3,20,7,.88);color:var(--text);text-decoration:none;transition:.18s ease}
.command-kpi:hover{transform:translateY(-3px);border-color:rgba(89,255,103,.62);box-shadow:0 12px 28px rgba(0,0,0,.28)}
.command-kpi span{color:#9ee5a5;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.command-kpi strong{font-size:2rem}.command-kpi small{color:var(--muted)}
.command-kpi.success strong{color:#75ff80}.command-kpi.warning strong{color:#ffd46a}

.command-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr);gap:18px;margin:18px 0}
.command-grid-main{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr)}
.command-panel{min-width:0;padding:22px;border:1px solid rgba(89,255,103,.25);border-radius:18px;background:linear-gradient(150deg,rgba(5,27,9,.96),rgba(2,13,5,.98));box-shadow:0 14px 38px rgba(0,0,0,.28)}
.command-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:20px}
.command-panel-head h2{margin:.25rem 0 0;font-size:1.35rem}.command-panel-head>a{color:#75ff80;text-decoration:none;font-size:.8rem;font-weight:800}

.pipeline-list{display:grid;gap:17px}.pipeline-row{display:grid;gap:8px}.pipeline-label{display:flex;justify-content:space-between;color:#b8e8bd;font-size:.84rem}.pipeline-label strong{color:#fff}
.pipeline-track,.mini-track{height:10px;overflow:hidden;border:1px solid rgba(89,255,103,.18);border-radius:999px;background:rgba(255,255,255,.045)}
.pipeline-track i,.mini-track i{display:block;height:100%;border-radius:inherit;background:#59ff67;box-shadow:0 0 16px rgba(89,255,103,.35)}
.pipeline-track i.warning{background:#ffd260}.pipeline-track i.danger{background:#ff6d6d}.pipeline-track i.planned{background:#54a7ff}

.health-list{display:grid;gap:11px}.health-item{display:grid;grid-template-columns:13px 1fr;gap:12px;align-items:start;padding:13px;border:1px solid rgba(89,255,103,.15);border-radius:12px;background:rgba(0,0,0,.18)}
.health-dot{width:10px;height:10px;margin-top:4px;border-radius:50%;background:#59ff67;box-shadow:0 0 10px currentColor}
.health-item.warn .health-dot{background:#ffd260}.health-item.alert .health-dot{background:#ff6666}
.health-item div{display:grid;gap:3px}.health-item strong{font-size:.84rem}.health-item small{color:var(--muted);line-height:1.4}

.site-readiness-list{display:grid}.site-readiness-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(180px,.9fr) auto;gap:16px;align-items:center;padding:14px 4px;border-bottom:1px solid rgba(89,255,103,.12);color:var(--text);text-decoration:none}
.site-readiness-row:last-child{border-bottom:0}.site-readiness-row:hover{background:rgba(89,255,103,.035)}
.site-readiness-main{display:grid;gap:4px}.site-readiness-main span{color:var(--muted);font-size:.76rem}
.site-readiness-progress{display:grid;gap:7px}.site-readiness-progress>div:first-child{display:flex;justify-content:space-between;color:#a5d8ac;font-size:.72rem}.mini-track{height:7px}
.site-readiness-alert{padding:6px 9px;border-radius:999px;font-size:.68rem;font-weight:900;white-space:nowrap}.site-readiness-alert.attention{color:#ffd97d;background:rgba(255,196,67,.08);border:1px solid rgba(255,196,67,.25)}.site-readiness-alert.clear{color:#8dff96;background:rgba(89,255,103,.08);border:1px solid rgba(89,255,103,.22)}

.vault-folder-dashboard{display:grid;gap:8px}.vault-folder-dashboard-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(89,255,103,.15);border-radius:11px;color:var(--text);text-decoration:none;background:rgba(0,0,0,.14)}
.vault-folder-dashboard-row:hover{border-color:rgba(89,255,103,.42);background:rgba(89,255,103,.045)}
.vault-folder-dashboard-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(89,255,103,.28);border-radius:8px;color:#75ff80;background:rgba(89,255,103,.06);font:800 .68rem Consolas,monospace}
.vault-folder-dashboard-row span:nth-child(2){font-size:.84rem}.vault-folder-dashboard-row strong{font-size:1rem}
.vault-dashboard-footer{display:flex;justify-content:space-between;gap:15px;margin-top:15px;padding-top:14px;border-top:1px solid rgba(89,255,103,.13);color:var(--muted);font-size:.72rem}.vault-dashboard-footer strong{color:#dfffe3}

.activity-stream{display:grid}.activity-event{position:relative;display:grid;grid-template-columns:12px 130px 1fr;gap:12px;padding:0 0 17px}.activity-event:not(:last-child):before{content:"";position:absolute;left:5px;top:10px;bottom:0;width:1px;background:rgba(89,255,103,.22)}
.activity-node{position:relative;z-index:1;width:11px;height:11px;margin-top:3px;border-radius:50%;background:#59ff67;box-shadow:0 0 10px rgba(89,255,103,.55)}.activity-time{color:#87b98d;font:700 .69rem Consolas,monospace}
.activity-copy{display:grid;gap:3px}.activity-copy strong{font-size:.82rem}.activity-copy span{color:var(--muted);font-size:.73rem}

.quick-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-action-grid a{display:grid;grid-template-columns:40px 1fr;column-gap:10px;padding:14px;border:1px solid rgba(89,255,103,.16);border-radius:12px;color:var(--text);text-decoration:none;background:rgba(0,0,0,.15)}
.quick-action-grid a:hover{border-color:rgba(89,255,103,.5);background:rgba(89,255,103,.04)}.quick-action-grid a>span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:9px;color:#72ff7e;background:rgba(89,255,103,.07);border:1px solid rgba(89,255,103,.22)}
.quick-action-grid strong{font-size:.8rem}.quick-action-grid small{color:var(--muted);font-size:.7rem;line-height:1.35}

@media(max-width:1180px){
  .command-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .command-grid,.command-grid-main{grid-template-columns:1fr}
}
@media(max-width:760px){
  .command-hero{grid-template-columns:1fr}.command-readiness{justify-content:flex-start}
  .command-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-readiness-row{grid-template-columns:1fr}.site-readiness-alert{justify-self:start}
  .quick-action-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .command-kpis{grid-template-columns:1fr}.command-readiness{align-items:flex-start;flex-direction:column}
  .activity-event{grid-template-columns:12px 1fr}.activity-time{grid-column:2}.activity-copy{grid-column:2}
}

/* =========================================================
   V4.0 INFRASTRUCTURE OPERATIONS PLATFORM
   ========================================================= */
.mega-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.nav-group{position:relative}.nav-group>button{border:0;background:transparent;color:inherit;padding:10px 9px;font:inherit;cursor:pointer}.nav-menu{display:none;position:absolute;z-index:50;top:100%;left:0;min-width:230px;padding:8px;border:1px solid rgba(89,255,103,.3);border-radius:12px;background:#031006;box-shadow:0 18px 45px rgba(0,0,0,.55)}.nav-menu a{display:block;padding:10px;border-radius:8px}.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu{display:block}
.ops-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0 18px;padding:27px;border:1px solid rgba(89,255,103,.35);border-radius:20px;background:radial-gradient(circle at 85% 30%,rgba(89,255,103,.1),transparent 30%),linear-gradient(135deg,rgba(7,37,13,.97),rgba(2,13,5,.99));box-shadow:0 15px 44px rgba(0,0,0,.32)}.ops-hero h1{margin:.3rem 0 .6rem;font-size:clamp(2rem,4vw,3.4rem)}.ops-hero p{max-width:800px;color:var(--muted);line-height:1.6}.ops-total{display:grid;place-items:center;min-width:150px;padding:18px;border:1px solid rgba(89,255,103,.28);border-radius:16px;background:rgba(0,0,0,.18)}.ops-total strong{font-size:2.6rem}.ops-total span{color:#9adca1;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}
.ops-form-panel{margin:18px 0;padding:18px;border:1px solid rgba(89,255,103,.26);border-radius:16px;background:rgba(3,22,7,.93)}.ops-form-panel>summary{cursor:pointer;color:#86ff90;font-weight:900;font-size:1rem}.ops-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:18px}.ops-form-grid label{display:grid;gap:7px;color:#a9dbaf;font-size:.76rem;font-weight:800}.ops-form-grid input,.ops-form-grid select,.ops-form-grid textarea{width:100%;padding:11px 12px;border:1px solid rgba(89,255,103,.22);border-radius:9px;background:#041208;color:#effff1;font:inherit}.ops-form-grid textarea{min-height:95px;resize:vertical}.ops-form-grid .code-area{min-height:320px;font-family:Consolas,monospace}.span-2{grid-column:1/-1}.form-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.ops-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:18px 0}.ops-card{display:flex;flex-direction:column;gap:13px;min-width:0;padding:19px;border:1px solid rgba(89,255,103,.2);border-radius:15px;background:linear-gradient(145deg,rgba(5,28,10,.95),rgba(2,13,5,.98));box-shadow:0 12px 30px rgba(0,0,0,.25)}.ops-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.ops-card h2{margin:0;font-size:1.25rem}.ops-card p{margin:0;color:#b8daba;line-height:1.5}.ops-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ops-meta span{display:grid;gap:3px;padding:9px;border:1px solid rgba(89,255,103,.11);border-radius:8px;color:#85ad8a;font-size:.67rem;text-transform:uppercase}.ops-meta strong{overflow-wrap:anywhere;color:#effff1;font-size:.76rem;text-transform:none}
.status-badge,.risk-badge{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;border:1px solid rgba(89,255,103,.25);color:#9bffa3;background:rgba(89,255,103,.07);font-size:.67rem;font-weight:900}.risk-badge.critical,.status-badge.failed,.status-badge.down{color:#ff8a8a;border-color:rgba(255,80,80,.4);background:rgba(255,60,60,.08)}.risk-badge.high,.status-badge.warning,.status-badge.in-progress,.status-badge.investigating{color:#ffd66f;border-color:rgba(255,205,70,.35);background:rgba(255,190,40,.07)}.status-badge.completed,.status-badge.passed,.status-badge.resolved,.status-badge.approved,.status-badge.up,.status-badge.active{color:#8cff96}.risk-badge.low{color:#80c7ff}
.ops-table-wrap{overflow:auto;margin:18px 0;border:1px solid rgba(89,255,103,.22);border-radius:15px}.ops-table{width:100%;border-collapse:collapse;background:rgba(2,15,5,.94)}.ops-table th,.ops-table td{padding:13px;text-align:left;border-bottom:1px solid rgba(89,255,103,.12);vertical-align:top}.ops-table th{color:#93e99b;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.ops-table td{color:#d7efda;font-size:.8rem}
.notice-panel{margin:16px 0;padding:14px 16px;border-left:4px solid #59ff67;border-radius:9px;background:rgba(89,255,103,.06);color:#cdeed1;line-height:1.5}.notice-panel code{color:#8cff96}.runbook-content pre{overflow:auto;max-height:500px;padding:14px;border:1px solid rgba(89,255,103,.15);border-radius:9px;background:#020b04;color:#dcffe0;white-space:pre-wrap}
.timeline-board{display:grid;gap:12px;margin:18px 0}.timeline-card{display:grid;grid-template-columns:85px 1fr auto;align-items:center;gap:18px;padding:17px;border:1px solid rgba(89,255,103,.2);border-radius:14px;background:rgba(3,22,7,.92)}.timeline-date{display:grid;place-items:center;padding:10px;border:1px solid rgba(89,255,103,.23);border-radius:11px}.timeline-date strong{font-size:1.2rem}.timeline-date span{color:#87ba8d;font-size:.7rem}.timeline-card h2{margin:7px 0 3px}.timeline-card p,.timeline-card small{color:var(--muted)}
.topology-canvas{display:grid;gap:14px;margin:18px 0;padding:22px;border:1px solid rgba(89,255,103,.2);border-radius:18px;background:radial-gradient(circle,rgba(89,255,103,.045) 1px,transparent 1px);background-size:20px 20px}.topology-link{display:grid;grid-template-columns:minmax(190px,1fr) minmax(180px,.8fr) minmax(190px,1fr);align-items:center;gap:16px}.topology-node{display:grid;gap:5px;padding:15px;border:1px solid rgba(89,255,103,.28);border-radius:13px;background:#041409;box-shadow:0 0 20px rgba(89,255,103,.05)}.topology-node span,.topology-node small{color:var(--muted)}.topology-line{display:grid;place-items:center;gap:5px;color:#8cff96;font-size:.72rem}.topology-line i{display:block;width:100%;height:3px;background:#59ff67;box-shadow:0 0 10px #59ff67}.topology-line.down i{background:#ff5b5b;box-shadow:0 0 10px #ff5b5b}.topology-line.unknown i{background:#87908a;box-shadow:none}
.platform-expansion{margin:20px 0;padding:22px;border:1px solid rgba(89,255,103,.25);border-radius:18px;background:linear-gradient(145deg,rgba(5,27,9,.96),rgba(2,13,5,.98))}.platform-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.platform-module-grid a{display:grid;gap:5px;padding:15px;border:1px solid rgba(89,255,103,.16);border-radius:11px;color:var(--text);text-decoration:none;background:rgba(0,0,0,.14)}.platform-module-grid a:hover{transform:translateY(-2px);border-color:rgba(89,255,103,.5)}.platform-module-grid span{color:#65ff72;font:900 .72rem Consolas,monospace}.platform-module-grid small{color:var(--muted);line-height:1.35}
@media(max-width:1100px){.ops-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.ops-hero{align-items:flex-start;flex-direction:column}.ops-form-grid,.ops-card-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.ops-meta{grid-template-columns:1fr}.timeline-card,.topology-link{grid-template-columns:1fr}.platform-module-grid{grid-template-columns:1fr}.nav-menu{position:fixed;left:12px;right:12px;top:80px}}


/* =========================================================
   V4.1 OUTLOOK-STYLE MAINTENANCE CALENDAR
   ========================================================= */
.maintenance-hero{align-items:center}
.maintenance-kpis{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:10px}
.maintenance-kpis>div{display:grid;place-items:center;padding:15px;border:1px solid rgba(89,255,103,.25);border-radius:14px;background:rgba(0,0,0,.18)}
.maintenance-kpis strong{font-size:2rem}
.maintenance-kpis span{color:#8bcf92;font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}

.calendar-workspace{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:18px;margin:18px 0}
.calendar-main,.calendar-sidebar{min-width:0;border:1px solid rgba(89,255,103,.24);border-radius:18px;background:linear-gradient(150deg,rgba(5,26,9,.97),rgba(2,12,4,.99));box-shadow:0 14px 38px rgba(0,0,0,.3)}
.calendar-main{overflow:hidden}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;border-bottom:1px solid rgba(89,255,103,.18)}
.calendar-nav{display:flex;align-items:center;gap:9px}
.calendar-nav h2{margin:0 0 0 8px;font-size:1.35rem}
.calendar-nav-btn{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(89,255,103,.25);border-radius:9px;color:#9aff9f;text-decoration:none;background:rgba(89,255,103,.05);font-size:1.7rem;line-height:1}
.calendar-nav-btn:hover{border-color:#59ff67;background:rgba(89,255,103,.1)}

.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid rgba(89,255,103,.18)}
.calendar-weekdays>div{padding:10px 8px;text-align:center;color:#99dba0;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border-right:1px solid rgba(89,255,103,.09)}
.calendar-weekdays>div:last-child{border-right:0}

.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-day{position:relative;min-height:145px;padding:8px;border-right:1px solid rgba(89,255,103,.1);border-bottom:1px solid rgba(89,255,103,.1);background:rgba(2,14,5,.42);transition:.15s ease}
.calendar-day:nth-child(7n){border-right:0}
.calendar-day:hover{background:rgba(89,255,103,.035)}
.calendar-day.outside-month{background:rgba(0,0,0,.22);opacity:.56}
.calendar-day.is-today{box-shadow:inset 0 0 0 2px rgba(89,255,103,.6);background:rgba(89,255,103,.045)}
.calendar-day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.calendar-day-head>span{color:#8cff96;font-size:.58rem;font-weight:900;text-transform:uppercase}
.calendar-day-number{display:grid;place-items:center;width:27px;height:27px;border:0;border-radius:50%;background:transparent;color:#effff1;font:800 .78rem inherit;cursor:pointer}
.calendar-day-number:hover,.is-today .calendar-day-number{background:#59ff67;color:#041208}

.calendar-events{display:grid;gap:4px}
.calendar-event{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:5px;align-items:center;padding:5px 6px;border-left:3px solid #59ff67;border-radius:5px;background:rgba(89,255,103,.10);color:#effff1;text-decoration:none;overflow:hidden}
.calendar-event:hover{filter:brightness(1.18)}
.calendar-event .event-time{color:#a8dfae;font-size:.55rem;white-space:nowrap}
.calendar-event strong{overflow:hidden;font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}
.calendar-event small{grid-column:1/-1;overflow:hidden;color:#90b995;font-size:.55rem;text-overflow:ellipsis;white-space:nowrap}
.calendar-event.event-upgrade,.calendar-event.event-firmware{border-left-color:#4fa3ff;background:rgba(50,130,255,.12)}
.calendar-event.event-certificate-renewal{border-left-color:#c28cff;background:rgba(154,92,255,.12)}
.calendar-event.event-reboot{border-left-color:#ffb04f;background:rgba(255,160,50,.11)}
.calendar-event.event-isp-work{border-left-color:#ff6d6d;background:rgba(255,80,80,.11)}
.calendar-event.status-completed{opacity:.68}
.calendar-event.status-cancelled{text-decoration:line-through;opacity:.45}
.calendar-more{padding:4px;border:0;background:transparent;color:#7dcb85;font-size:.6rem;font-weight:800;text-align:left;cursor:pointer}

.calendar-sidebar{padding:17px}
.calendar-sidebar-head h2{margin:.25rem 0 14px}
.upcoming-list{display:grid;gap:8px}
.upcoming-event{display:grid;grid-template-columns:48px 1fr;gap:10px;padding:10px;border:1px solid rgba(89,255,103,.14);border-radius:11px;color:#effff1;text-decoration:none;background:rgba(0,0,0,.13)}
.upcoming-event:hover{border-color:rgba(89,255,103,.45);background:rgba(89,255,103,.035)}
.upcoming-date{display:grid;place-items:center;align-self:start;padding:7px;border:1px solid rgba(89,255,103,.24);border-radius:9px;background:rgba(89,255,103,.05)}
.upcoming-date strong{font-size:1.25rem}
.upcoming-date span{color:#8ddd95;font-size:.57rem;font-weight:900}
.upcoming-event>div:last-child{display:grid;gap:4px;min-width:0}
.upcoming-event>div:last-child>strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}
.upcoming-event small{color:#88ad8d;font-size:.61rem}

.calendar-event-form{scroll-margin-top:120px}
.calendar-day-modal[hidden]{display:none}
.calendar-day-modal{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.72);backdrop-filter:blur(6px)}
.calendar-day-modal-card{position:relative;width:min(520px,94vw);max-height:78vh;overflow:auto;padding:22px;border:1px solid rgba(89,255,103,.45);border-radius:17px;background:#031207;box-shadow:0 24px 70px rgba(0,0,0,.65)}
.calendar-modal-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:#9aff9f;font-size:1.8rem;cursor:pointer}
#calendar-modal-events{display:grid;gap:8px;margin-top:15px}
.calendar-modal-event{padding:10px}

@media(max-width:1200px){
  .calendar-workspace{grid-template-columns:1fr}
  .calendar-sidebar{order:-1}
  .upcoming-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .month-calendar{overflow-x:auto}
  .calendar-weekdays,.calendar-days{min-width:900px}
  .upcoming-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .maintenance-kpis{grid-template-columns:repeat(3,1fr);width:100%}
  .calendar-toolbar{align-items:flex-start;flex-direction:column}
  .calendar-nav{flex-wrap:wrap}
  .calendar-nav h2{width:100%;margin:6px 0 0}
  .upcoming-list{grid-template-columns:1fr}
}

/* V4.1.1 calendar date selection */
.calendar-day[data-date]{cursor:pointer}
.calendar-day[data-date]:focus-visible{
  outline:2px solid #59ff67;
  outline-offset:-2px;
  background:rgba(89,255,103,.06)
}
.calendar-day[data-date]:hover .calendar-day-number{
  background:rgba(89,255,103,.14);
  color:#9aff9f
}


/* =========================================================
   V4.2 USER PROFILES, BADGES AND ACCOUNT ADMINISTRATION
   ========================================================= */
.profile-chip{text-decoration:none}.profile-cover{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0 18px;padding:28px;border:1px solid rgba(89,255,103,.36);border-radius:22px;background:radial-gradient(circle at 85% 20%,rgba(89,255,103,.12),transparent 28%),linear-gradient(135deg,rgba(7,38,13,.97),rgba(2,14,5,.99));box-shadow:0 18px 50px rgba(0,0,0,.34)}
.profile-identity{display:flex;align-items:center;gap:20px}.profile-identity h1{margin:.25rem 0 .35rem;font-size:clamp(2rem,4vw,3.6rem)}.profile-handle{margin:0;color:#acd7b1}.profile-status,.user-status-line{margin-top:10px;color:#87ff91;font-size:.78rem}
.profile-avatar-large,.profile-avatar-medium{display:grid;place-items:center;overflow:hidden;border:2px solid var(--avatar-color,#39ff72);border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--avatar-color,#39ff72) 22%,#031207),#020904);box-shadow:0 0 28px color-mix(in srgb,var(--avatar-color,#39ff72) 35%,transparent);color:#fff;font-weight:950;text-decoration:none}
.profile-avatar-large{width:132px;height:132px;font-size:2.5rem}.profile-avatar-medium{width:68px;height:68px;font-size:1.35rem;flex:0 0 68px}.profile-avatar-large img,.profile-avatar-medium img{width:100%;height:100%;object-fit:cover}
.profile-dashboard{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px}.profile-about{align-self:start}.profile-about>p{color:#c5e5c9;line-height:1.65}.profile-details{display:grid;gap:9px;margin-top:18px}.profile-details span{display:grid;gap:3px;padding:10px;border:1px solid rgba(89,255,103,.12);border-radius:9px;color:#82ad87;font-size:.67rem;text-transform:uppercase}.profile-details strong,.profile-details a{overflow-wrap:anywhere;color:#effff1;font-size:.77rem;text-transform:none}
.profile-main-column{display:grid;gap:18px}.profile-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.profile-stat-grid>div{display:grid;place-items:center;padding:15px;border:1px solid rgba(89,255,103,.2);border-radius:13px;background:rgba(3,21,7,.9)}.profile-stat-grid strong{font-size:1.8rem}.profile-stat-grid span{color:#8ac590;font-size:.62rem;text-align:center;text-transform:uppercase}
.profile-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.profile-section-head h2{margin:.25rem 0}.badge-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.profile-badge{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--badge-color) 35%,transparent);border-radius:12px;background:color-mix(in srgb,var(--badge-color) 7%,#031006)}.profile-badge>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:var(--badge-color);background:color-mix(in srgb,var(--badge-color) 11%,#020a04);border:1px solid color-mix(in srgb,var(--badge-color) 45%,transparent);font-size:1.25rem;box-shadow:0 0 14px color-mix(in srgb,var(--badge-color) 18%,transparent)}.profile-badge div{display:grid;gap:3px}.profile-badge small{color:#90b996;font-size:.65rem}
.profile-activity{display:grid;gap:10px;margin-top:15px}.profile-activity>div{display:grid;grid-template-columns:12px 1fr;column-gap:10px;padding-bottom:9px;border-bottom:1px solid rgba(89,255,103,.1)}.profile-activity strong{font-size:.8rem}.profile-activity small{grid-column:2;color:#8cae90;font-size:.67rem}
.profile-edit-panel{scroll-margin-top:120px}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important}.check-label input{width:auto!important}
.user-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.user-directory-card{display:grid;gap:13px;padding:18px;border:1px solid rgba(89,255,103,.22);border-radius:16px;background:linear-gradient(145deg,rgba(5,28,10,.96),rgba(2,13,5,.99))}.user-directory-card.disabled{opacity:.58}.user-directory-top{display:grid;grid-template-columns:68px 1fr auto;align-items:center;gap:12px}.user-directory-top h2{margin:0;font-size:1.15rem}.user-directory-top h2 a{color:#effff1;text-decoration:none}.user-directory-top p{margin:4px 0 0;color:#8fb995;font-size:.72rem}.user-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.user-card-meta span{display:grid;gap:3px;padding:8px;border:1px solid rgba(89,255,103,.1);border-radius:8px;color:#7fa986;font-size:.62rem;text-transform:uppercase}.user-card-meta strong{overflow-wrap:anywhere;color:#eaffed;font-size:.7rem;text-transform:none}
.mini-badge-row{display:flex;align-items:center;gap:6px;min-height:30px}.mini-badge-row span{display:grid;place-items:center;width:27px;height:27px;border:1px solid color-mix(in srgb,var(--badge-color) 40%,transparent);border-radius:50%;color:var(--badge-color);background:color-mix(in srgb,var(--badge-color) 8%,#031006)}.mini-badge-row small{color:#8fb995}
.user-admin-editor{margin:18px 0}.badge-admin-fieldset{padding:14px;border:1px solid rgba(89,255,103,.2);border-radius:12px}.badge-admin-fieldset legend{padding:0 7px;color:#8eff98;font-weight:900}.badge-checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.badge-checkbox-grid>label{display:grid;grid-template-columns:auto 32px 1fr!important;align-items:center;gap:8px;padding:9px;border:1px solid color-mix(in srgb,var(--badge-color) 25%,transparent);border-radius:9px;background:color-mix(in srgb,var(--badge-color) 5%,#031006)}.badge-checkbox-grid input{width:auto!important}.badge-checkbox-grid>label>span{color:var(--badge-color);font-size:1.1rem}.badge-checkbox-grid div{display:grid;gap:2px}.badge-checkbox-grid small{color:#8ba790;font-size:.6rem}
.badge-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.badge-catalog-card{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;padding:16px;border:1px solid color-mix(in srgb,var(--badge-color) 35%,transparent);border-radius:14px;background:color-mix(in srgb,var(--badge-color) 5%,#031006)}.badge-catalog-card>span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:var(--badge-color);border:1px solid color-mix(in srgb,var(--badge-color) 40%,transparent);font-size:1.4rem}.badge-catalog-card h2{margin:0;font-size:1rem}.badge-catalog-card p{margin:4px 0;color:#a8c6ac;font-size:.72rem}.badge-catalog-card small{color:#789d7d;font-size:.64rem}
@media(max-width:1050px){.profile-dashboard{grid-template-columns:1fr}.profile-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.badge-admin-fieldset .badge-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.profile-cover,.profile-identity{align-items:flex-start;flex-direction:column}.profile-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-gallery,.user-directory-grid,.badge-catalog{grid-template-columns:1fr}.badge-checkbox-grid{grid-template-columns:1fr!important}.user-directory-top{grid-template-columns:68px 1fr}.user-directory-top>.status-badge{grid-column:1/-1}.user-card-meta{grid-template-columns:1fr}}


/* =========================================================
   V4.2.2 COMBINED LAYOUT + CALENDAR HOTFIX
   ========================================================= */

/* Hard constraints prevent uploaded avatars from breaking cards. */
.profile-avatar-medium,
.profile-avatar-large {
  position: relative;
  overflow: hidden !important;
  flex: 0 0 auto;
}

.profile-avatar-medium {
  width: 68px !important;
  height: 68px !important;
  max-width: 68px !important;
  max-height: 68px !important;
}

.profile-avatar-large {
  width: 132px !important;
  height: 132px !important;
  max-width: 132px !important;
  max-height: 132px !important;
}

.profile-avatar-medium img,
.profile-avatar-large img,
.user-directory-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.user-directory-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.user-directory-card {
  min-width: 0 !important;
  overflow: hidden !important;
}

.user-directory-top {
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
}

.user-directory-top > div {
  min-width: 0 !important;
}

.user-directory-top h2,
.user-directory-top p,
.user-card-meta strong {
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.user-card-meta {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

.user-card-meta span {
  min-width: 0 !important;
}

/* Whole calendar cell is clickable without relying on JavaScript. */
.calendar-day {
  position: relative !important;
}

.calendar-day-hitbox {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  border-radius: inherit;
}

.calendar-day-head,
.calendar-events {
  position: relative;
  z-index: 2;
  pointer-events: none;
}

.calendar-day-head a,
.calendar-events a,
.calendar-events button {
  pointer-events: auto;
}

.calendar-day:hover {
  background: rgba(89,255,103,.055) !important;
}

.calendar-day:hover .calendar-day-number {
  background: rgba(89,255,103,.15) !important;
  color: #9aff9f !important;
}

@media (max-width: 760px) {
  .user-directory-grid {
    grid-template-columns: 1fr !important;
  }

  .user-directory-top {
    grid-template-columns: 68px minmax(0,1fr) !important;
  }

  .user-directory-top > .status-badge {
    grid-column: 1 / -1 !important;
  }

  .user-card-meta {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   V4.2.3 LAYOUT STABILITY AND NO-JUMP CALENDAR
   ========================================================= */

/* Profile alignment */
.profile-dashboard{
  grid-template-columns:300px minmax(0,1fr) !important;
  align-items:start !important;
}

.profile-about{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}

.profile-main-column{
  min-width:0 !important;
  align-content:start !important;
}

.profile-stat-grid{
  align-items:stretch !important;
}

.profile-stat-grid>div{
  min-height:72px !important;
}

.profile-badges-panel,
.profile-main-column>.panel{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}

.profile-section-head{
  align-items:center !important;
}

.profile-section-head>strong{
  display:grid !important;
  place-items:center !important;
  min-width:34px !important;
  height:28px !important;
  padding:0 9px !important;
  border:1px solid rgba(89,255,103,.24) !important;
  border-radius:999px !important;
  color:#9aff9f !important;
  background:rgba(89,255,103,.07) !important;
  font-size:.72rem !important;
}

.badge-gallery{
  align-items:stretch !important;
}

.profile-badge{
  min-height:62px !important;
}

.profile-activity>div{
  min-height:42px !important;
  align-items:start !important;
}

/* Calendar stays in place while selecting dates */
.calendar-workspace,
.calendar-main,
.calendar-sidebar,
.month-calendar,
.calendar-days,
.calendar-day{
  scroll-margin-top:0 !important;
}

.calendar-day{
  cursor:pointer !important;
}

.calendar-day-hitbox{
  cursor:pointer !important;
}

.calendar-event-form{
  scroll-margin-top:0 !important;
}

html{
  scroll-behavior:auto !important;
}

/* Keep controls aligned */
.calendar-toolbar{
  min-height:66px !important;
}

.calendar-nav{
  min-width:0 !important;
}

.calendar-nav h2{
  white-space:nowrap !important;
}

.maintenance-kpis>div{
  min-width:92px !important;
}

@media(max-width:1050px){
  .profile-dashboard{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:760px){
  .calendar-toolbar{
    min-height:auto !important;
  }

  .calendar-nav h2{
    white-space:normal !important;
  }
}

/* V4.3 profile alignment and live presence */
.profile-dashboard{display:grid!important;grid-template-columns:320px minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
.profile-about{grid-column:1!important;grid-row:1!important;align-self:start!important;margin:0!important;height:auto!important;min-height:0!important}
.profile-main-column{grid-column:2!important;grid-row:1!important;display:grid!important;grid-template-rows:auto auto auto!important;gap:18px!important;align-content:start!important;min-width:0!important}
.profile-stat-grid,.profile-badges-panel,.profile-main-column>.panel{margin:0!important}
.profile-section-head{align-items:center!important;min-height:52px!important}
.profile-activity{margin-top:12px!important}.profile-activity>div{min-height:52px!important;padding:10px 0!important}
.presence-pill{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:5px 9px;border:1px solid rgba(89,255,103,.28);border-radius:999px;color:#9aff9f;background:rgba(89,255,103,.07);font-size:.67rem;font-weight:900;text-transform:uppercase}
.presence-pill i,.header-presence-dot{display:inline-block;width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#59ff67;box-shadow:0 0 10px rgba(89,255,103,.9)}
.presence-pill.busy{color:#ffd36d;border-color:rgba(255,199,73,.36);background:rgba(255,190,40,.08)}.presence-pill.busy i,.header-presence-dot.busy{background:#ffbf3f;box-shadow:0 0 10px rgba(255,191,63,.85)}
.presence-pill.away{color:#78c7ff;border-color:rgba(73,163,255,.35);background:rgba(73,163,255,.08)}.presence-pill.away i,.header-presence-dot.away{background:#4fa3ff;box-shadow:0 0 10px rgba(79,163,255,.85)}
.presence-pill.dnd{color:#ff8a8a;border-color:rgba(255,82,82,.38);background:rgba(255,65,65,.08)}.presence-pill.dnd i,.header-presence-dot.dnd{background:#ff5151;box-shadow:0 0 10px rgba(255,81,81,.85)}
.presence-pill.offline{color:#9aab9d;border-color:rgba(145,160,149,.25);background:rgba(120,130,122,.07)}.presence-pill.offline i,.header-presence-dot.offline{background:#667068;box-shadow:none}
.profile-presence-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.profile-presence-line small{color:#87aa8b;font-size:.69rem}.profile-presence-note{margin-top:8px;color:#d9ffdd;font-size:.8rem}
.user-live-state{display:grid;justify-items:end;gap:4px}.user-live-state small{color:#7fa785;font-size:.58rem}.header-presence-dot{margin-right:6px;vertical-align:middle}
.user-card-meta{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:900px){.profile-dashboard{grid-template-columns:1fr!important}.profile-about,.profile-main-column{grid-column:1!important}.profile-about{grid-row:1!important}.profile-main-column{grid-row:2!important}.user-card-meta{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.user-live-state{grid-column:1/-1;justify-items:start}.user-card-meta{grid-template-columns:1fr!important}}


/* =========================================================
   V4.4 NETWORK PROJECT CENTER
   ========================================================= */
.project-center-hero{align-items:center}
.project-summary-kpis{display:grid;grid-template-columns:repeat(4,minmax(88px,1fr));gap:9px}
.project-summary-kpis>div{display:grid;place-items:center;padding:14px;border:1px solid rgba(89,255,103,.24);border-radius:13px;background:rgba(0,0,0,.16)}
.project-summary-kpis strong{font-size:1.85rem}.project-summary-kpis span{color:#8bca91;font-size:.61rem;font-weight:900;text-transform:uppercase}
.project-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0}
.project-filter-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.project-filter-form input,.project-filter-form select{padding:10px 11px;border:1px solid rgba(89,255,103,.22);border-radius:9px;background:#041208;color:#effff1}
.project-filter-form input{min-width:270px}
.project-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:18px 0}
.project-card{display:flex;flex-direction:column;gap:15px;min-width:0;padding:19px;border:1px solid rgba(89,255,103,.21);border-radius:16px;color:#effff1;text-decoration:none;background:linear-gradient(145deg,rgba(5,28,10,.96),rgba(2,13,5,.99));box-shadow:0 13px 34px rgba(0,0,0,.27);transition:.18s ease}
.project-card:hover{transform:translateY(-4px);border-color:rgba(89,255,103,.58);box-shadow:0 18px 42px rgba(0,0,0,.36),0 0 24px rgba(89,255,103,.07)}
.project-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.project-number{color:#74ff80;font:900 .7rem Consolas,monospace;letter-spacing:.08em}.project-card h2{margin:5px 0 7px;font-size:1.25rem}.project-card p{margin:0;color:#a9cdae;line-height:1.5}
.project-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.project-card-meta span{display:grid;gap:3px;padding:8px;border:1px solid rgba(89,255,103,.1);border-radius:8px;color:#7fa785;font-size:.61rem;text-transform:uppercase}.project-card-meta strong{overflow-wrap:anywhere;color:#eaffed;font-size:.7rem;text-transform:none}
.overdue{color:#ff7777!important}.project-progress{display:grid;gap:7px;margin-top:auto}.project-progress>div:first-child{display:flex;justify-content:space-between;color:#98c99d;font-size:.7rem}.project-progress-track{height:8px;overflow:hidden;border:1px solid rgba(89,255,103,.18);border-radius:999px;background:rgba(255,255,255,.04)}.project-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2edc59,#8cff73);box-shadow:0 0 12px rgba(89,255,103,.38)}.project-progress small{color:#ffb45d}

.project-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:center;margin:24px 0 14px;padding:28px;border:1px solid rgba(89,255,103,.35);border-radius:21px;background:radial-gradient(circle at 85% 25%,rgba(89,255,103,.11),transparent 27%),linear-gradient(135deg,rgba(7,38,13,.97),rgba(2,14,5,.99))}
.project-detail-hero h1{margin:.3rem 0 .55rem;font-size:clamp(2rem,4vw,3.5rem)}.project-detail-hero p{max-width:850px;color:#accfb1;line-height:1.6}.project-detail-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.health-badge{display:inline-flex;padding:5px 8px;border:1px solid rgba(89,255,103,.25);border-radius:999px;color:#9aff9f;background:rgba(89,255,103,.07);font-size:.67rem;font-weight:900}.health-badge.at-risk,.health-badge.blocked{color:#ffcf68;border-color:rgba(255,194,58,.35);background:rgba(255,194,58,.07)}
.project-progress-ring{--size:140px;display:grid;place-items:center;width:var(--size);height:var(--size);border-radius:50%;background:conic-gradient(#59ff67 calc(var(--progress)*1%),rgba(89,255,103,.09) 0);box-shadow:0 0 26px rgba(89,255,103,.13)}.project-progress-ring:before{content:"";position:absolute}.project-progress-ring>div{display:grid;place-items:center;width:116px;height:116px;border-radius:50%;background:#041208;border:1px solid rgba(89,255,103,.2)}.project-progress-ring strong{font-size:1.8rem}.project-progress-ring span{color:#8fc395;font-size:.63rem;text-transform:uppercase}
.project-detail-toolbar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:18px}
.project-info-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;margin:18px 0}.project-info-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px}.project-info-list span{display:grid;gap:3px;padding:10px;border:1px solid rgba(89,255,103,.11);border-radius:9px;color:#82aa87;font-size:.65rem;text-transform:uppercase}.project-info-list strong{overflow-wrap:anywhere;color:#effff1;font-size:.75rem;text-transform:none}.project-notes{margin-top:15px;padding-top:13px;border-top:1px solid rgba(89,255,103,.12)}.project-notes p{color:#b7dabb;line-height:1.6}
.project-progress-track.large{height:13px;margin:16px 0}.project-task-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.project-task-stats span{display:grid;place-items:center;padding:12px;border:1px solid rgba(89,255,103,.12);border-radius:9px;color:#83aa88;font-size:.63rem;text-transform:uppercase}.project-task-stats strong{color:#effff1;font-size:1.4rem}
.project-board{display:grid;grid-template-columns:repeat(4,minmax(250px,1fr));gap:13px;margin:18px 0;overflow-x:auto}.project-board-column{min-width:250px;padding:12px;border:1px solid rgba(89,255,103,.17);border-radius:14px;background:rgba(2,16,5,.9)}.project-board-column-head{display:flex;align-items:center;justify-content:space-between;padding:3px 3px 11px}.project-board-column-head h2{margin:0;font-size:.92rem}.project-board-column-head span{display:grid;place-items:center;min-width:27px;height:25px;border-radius:999px;color:#96ff9e;background:rgba(89,255,103,.08);font-size:.68rem}.project-board-tasks{display:grid;gap:9px}.project-task-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(89,255,103,.16);border-radius:10px;background:linear-gradient(145deg,rgba(6,31,11,.95),rgba(2,12,5,.98))}.project-task-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-task-top>span:first-child{color:#82bd89;font-size:.61rem;text-transform:uppercase}.project-task-card h3{margin:0;font-size:.85rem}.project-task-card p{margin:0;color:#9fbea3;font-size:.7rem;line-height:1.45}.project-task-meta{display:flex;justify-content:space-between;gap:8px;color:#78977d;font-size:.61rem}.project-task-actions select{width:100%;padding:7px;border:1px solid rgba(89,255,103,.18);border-radius:7px;background:#031006;color:#effff1}.task-delete{border:0;background:transparent;color:#ff7777;font-size:.62rem;cursor:pointer}
.project-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.project-inline-form{display:grid;grid-template-columns:1fr 150px 1fr auto;gap:8px;margin:14px 0}.project-inline-form input,.project-inline-form select,.project-update-form textarea,.project-update-form select{padding:9px;border:1px solid rgba(89,255,103,.18);border-radius:8px;background:#031006;color:#effff1}.linked-device-list,.project-update-stream{display:grid;gap:8px}.linked-device-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:9px;border:1px solid rgba(89,255,103,.11);border-radius:9px}.linked-device-list small{color:#7fa985}.project-update-form{display:grid;grid-template-columns:140px 1fr auto;gap:8px;margin:14px 0}.project-update-form textarea{min-height:70px;resize:vertical}.project-update-stream>div{padding:11px;border-left:3px solid rgba(89,255,103,.42);background:rgba(0,0,0,.12)}.project-update-stream p{margin:7px 0;color:#c5e3c8;line-height:1.5}.project-update-stream small{color:#789b7d}.update-type{color:#8cff96;font-size:.62rem;font-weight:900;text-transform:uppercase}
@media(max-width:1150px){.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-info-grid,.project-bottom-grid{grid-template-columns:1fr}.project-board{grid-template-columns:repeat(4,280px)}}
@media(max-width:760px){.project-summary-kpis{grid-template-columns:repeat(2,1fr);width:100%}.project-toolbar{align-items:flex-start;flex-direction:column}.project-filter-form{width:100%}.project-filter-form input{min-width:0;width:100%}.project-card-grid{grid-template-columns:1fr}.project-detail-hero{grid-template-columns:1fr}.project-info-list{grid-template-columns:1fr}.project-task-stats{grid-template-columns:repeat(2,1fr)}.project-inline-form,.project-update-form{grid-template-columns:1fr}.linked-device-list>div{grid-template-columns:1fr}}

/* V4.4.1 Project Visual Upgrade */
.project-info-grid-aligned{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important}
.project-overview-card,.project-work-card{min-height:100%!important;display:flex!important;flex-direction:column!important}
.project-card-section-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;min-height:58px!important;margin-bottom:14px!important;padding-bottom:12px!important;border-bottom:1px solid rgba(89,255,103,.12)!important}
.project-card-section-head h2{margin:.25rem 0 0!important;font-size:1.15rem!important}
.project-status-light{display:inline-flex!important;align-items:center!important;gap:7px!important;width:max-content!important;padding:6px 10px!important;border:1px solid rgba(89,255,103,.32)!important;border-radius:999px!important;color:#9aff9f!important;background:rgba(89,255,103,.07)!important;font-size:.66rem!important;font-weight:900!important;text-transform:uppercase!important;white-space:nowrap!important}
.project-status-light i{width:9px!important;height:9px!important;border-radius:50%!important;background:#59ff67!important;box-shadow:0 0 12px rgba(89,255,103,.95)!important;animation:project-light-pulse 1.8s ease-in-out infinite!important}
.project-status-light.amber{color:#ffd36b!important;border-color:rgba(255,195,55,.38)!important;background:rgba(255,190,45,.08)!important}.project-status-light.amber i{background:#ffc23f!important;box-shadow:0 0 12px rgba(255,194,63,.9)!important}
.project-status-light.red{color:#ff8a8a!important;border-color:rgba(255,75,75,.4)!important;background:rgba(255,65,65,.08)!important}.project-status-light.red i{background:#ff4f4f!important;box-shadow:0 0 12px rgba(255,79,79,.95)!important}
.project-status-light.blue{color:#8fcaff!important;border-color:rgba(79,163,255,.38)!important;background:rgba(79,163,255,.08)!important}.project-status-light.blue i{background:#4fa3ff!important;box-shadow:0 0 12px rgba(79,163,255,.9)!important}
.project-status-light.purple{color:#c5a3ff!important;border-color:rgba(174,123,255,.38)!important;background:rgba(174,123,255,.08)!important}.project-status-light.purple i{background:#ad7cff!important;box-shadow:0 0 12px rgba(173,124,255,.9)!important}
.project-status-light.complete{color:#c7ff80!important;border-color:rgba(165,255,90,.38)!important;background:rgba(165,255,90,.08)!important}.project-status-light.complete i{background:#9dff57!important;box-shadow:0 0 12px rgba(157,255,87,.95)!important}
@keyframes project-light-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.84)}}
.project-pulse-strip{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;margin:18px 0!important}
.project-pulse-item{display:grid!important;place-items:center!important;gap:5px!important;min-height:82px!important;padding:12px!important;border:1px solid rgba(89,255,103,.18)!important;border-radius:12px!important;background:rgba(3,21,7,.9)!important}
.project-pulse-item strong{font-size:1.55rem!important}.project-pulse-item small{color:#83aa88!important;font-size:.62rem!important;font-weight:800!important;text-align:center!important;text-transform:uppercase!important}
.project-bottom-grid-aligned{align-items:stretch!important}.project-linked-devices-panel,.project-journal-panel{min-height:100%!important;display:flex!important;flex-direction:column!important}
.section-count{display:grid!important;place-items:center!important;min-width:32px!important;height:28px!important;padding:0 8px!important;border:1px solid rgba(89,255,103,.24)!important;border-radius:999px!important;color:#9aff9f!important;background:rgba(89,255,103,.07)!important;font-size:.7rem!important;font-weight:900!important}
.project-board-column{display:flex!important;flex-direction:column!important;min-height:360px!important}.project-board-tasks{flex:1!important}.project-board-tasks>.empty{min-height:230px!important;display:grid!important;place-items:center!important;border:1px dashed rgba(89,255,103,.13)!important;border-radius:10px!important;background:rgba(0,0,0,.08)!important}
@media(max-width:1180px){.project-pulse-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:900px){.project-info-grid-aligned{grid-template-columns:1fr!important}.project-pulse-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.project-card-section-head{flex-direction:column!important}.project-pulse-strip{grid-template-columns:1fr!important}}

/* V4.4.2 precision project alignment */
.project-info-grid.project-info-grid-aligned{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px!important;align-items:stretch!important}
.project-overview-card,.project-work-card{display:grid!important;grid-template-rows:72px minmax(0,1fr)!important;min-height:365px!important;height:100%!important;padding:0!important;overflow:hidden!important}
.project-overview-card .project-card-section-head,.project-work-card .project-card-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:72px!important;height:72px!important;margin:0!important;padding:14px 16px!important;border-bottom:1px solid rgba(89,255,103,.18)!important}
.project-overview-card .project-card-section-head>div,.project-work-card .project-card-section-head>div{display:grid!important;align-content:center!important;gap:3px!important;min-width:0!important}
.project-overview-card .project-card-section-head h2,.project-work-card .project-card-section-head h2{margin:0!important;line-height:1.1!important;font-size:1.12rem!important}
.project-overview-body,.project-work-body{display:flex!important;flex-direction:column!important;min-height:0!important;height:100%!important;padding:16px!important}
.project-overview-body{justify-content:space-between!important}.project-work-body{justify-content:flex-start!important}
.project-info-list{margin:0!important;align-content:start!important}.project-info-list span{min-height:58px!important;align-content:center!important}
.project-notes{margin-top:16px!important;padding-top:14px!important;border-top:1px solid rgba(89,255,103,.15)!important}.project-notes h3{margin:0 0 10px!important}.project-notes p{margin:0!important}
.project-work-card .project-progress-track.large{margin:0 0 16px!important}.project-task-stats{margin-top:0!important;align-items:stretch!important}.project-task-stats span{min-height:68px!important}
.project-pulse-strip{align-items:stretch!important}.project-pulse-item{min-height:86px!important;height:100%!important}
.project-board{align-items:stretch!important}.project-board-column{min-height:410px!important;height:100%!important}.project-board-column-head{min-height:46px!important;align-items:center!important}.project-board-tasks{display:flex!important;flex-direction:column!important;min-height:0!important}.project-board-tasks>.empty{flex:1!important;min-height:290px!important}
.project-bottom-grid.project-bottom-grid-aligned{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important}.project-linked-devices-panel,.project-journal-panel{min-height:310px!important;height:100%!important;padding:0!important;overflow:hidden!important}.project-linked-devices-panel>.project-card-section-head,.project-journal-panel>.project-card-section-head{height:68px!important;min-height:68px!important;margin:0!important;padding:14px 16px!important}.project-linked-devices-panel>:not(.project-card-section-head),.project-journal-panel>:not(.project-card-section-head){margin-left:16px!important;margin-right:16px!important}.project-inline-form,.project-update-form{margin-top:16px!important}
@media(max-width:900px){.project-info-grid.project-info-grid-aligned,.project-bottom-grid.project-bottom-grid-aligned{grid-template-columns:1fr!important}.project-overview-card,.project-work-card{min-height:0!important}}
/* V4.5 Project Delivery Suite and Server Vault */
.delivery-hero,.delivery-tabs,.section-heading,.site-server-head,.server-card-top,.credential-bar,.phase-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.delivery-hero{padding:2.2rem;border:1px solid #1d4452;border-radius:24px;background:radial-gradient(circle at 85% 10%,rgba(25,220,190,.14),transparent 35%),linear-gradient(135deg,#081826,#0b2230);margin-bottom:1rem}.delivery-hero h1,.vault-hero h1{font-size:clamp(2rem,4vw,3.5rem);margin:.25rem 0}.delivery-tabs{position:sticky;top:0;z-index:5;justify-content:flex-start;padding:.65rem;border:1px solid #183948;border-radius:14px;background:rgba(5,18,28,.94);backdrop-filter:blur(16px);margin-bottom:1.5rem}.delivery-tabs a{padding:.65rem 1rem;border-radius:10px;color:#a8c3cd}.delivery-tabs a:hover,.delivery-tabs a.active{background:#123644;color:#67f5cf}.delivery-tabs span{background:#173d4b;padding:.1rem .4rem;border-radius:99px}.delivery-section{scroll-margin-top:90px;margin:1.75rem 0}.phase-grid,.server-grid,.template-grid,.secret-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.phase-card,.server-card{border:1px solid #193d4b;border-radius:18px;padding:1.2rem;background:linear-gradient(145deg,rgba(11,34,46,.95),rgba(6,20,30,.98));box-shadow:0 16px 40px rgba(0,0,0,.2)}.phase-index,.file-icon,.template-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #2d6c75;border-radius:12px;color:#62f3d0;background:#0b3038}.phase-head{justify-content:flex-start}.phase-head .status-badge{margin-left:auto}.phase-controls,.upload-panel,.credential-form,.comment-form{display:grid;gap:.7rem}.phase-controls{grid-template-columns:1fr 80px auto;margin-top:1rem}.approval-gate{margin-top:1rem;padding:.65rem;border:1px dashed #b98e34;border-radius:10px;color:#f3cf77}.gantt{overflow:auto}.gantt-row{display:grid;grid-template-columns:180px minmax(500px,1fr) 100px;gap:1rem;align-items:center;padding:.55rem 0}.gantt-track{position:relative;height:18px;border-radius:99px;background:repeating-linear-gradient(90deg,#102b37 0,#102b37 1px,transparent 1px,transparent 10%)}.gantt-track i{position:absolute;top:3px;height:12px;border-radius:99px;background:linear-gradient(90deg,#1cc59f,#63f5d0)}.gantt-track i.task{background:linear-gradient(90deg,#4b85f2,#8bb8ff)}.attachment-list,.notification-list,.comment-stream{display:grid;gap:.6rem}.attachment-list a{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #173b49;border-radius:13px;background:#091d29}.attachment-list small{display:block;color:#7f9da8}.discussion-grid{display:grid;grid-template-columns:minmax(280px,.7fr) 1.3fr;gap:1rem}.comment-card>div{display:flex;justify-content:space-between}.comment-card time{color:#6f909c}.notification-bell{position:relative;font-size:1.1rem}.notification-bell b{position:absolute;right:-7px;top:-8px;min-width:18px;padding:2px 4px;border-radius:99px;background:#ff5267;color:white;font-size:.65rem}.notification-item{display:flex;gap:1rem}.notification-item>span{width:8px;border-radius:99px;background:#264754}.notification-item.unread>span{background:#43edbd;box-shadow:0 0 14px #43edbd}.vault-shield{text-align:center;font-size:2.5rem}.vault-shield strong,.vault-shield span{display:block;font-size:1rem}.site-server-group{margin:1.5rem 0}.site-server-head{padding:.7rem 0;border-bottom:1px solid #183946}.server-card-top{justify-content:flex-start}.server-card-top .status-badge{margin-left:auto}.server-light{width:11px;height:11px;border-radius:50%;background:#71828b}.server-light.online{background:#36e2a3;box-shadow:0 0 12px #36e2a3}.server-light.offline{background:#ef5269}.server-light.maintenance{background:#f2b64d}.server-ip{font-family:ui-monospace,monospace;color:#69f0cb;font-size:1.15rem;margin:1rem 0}.server-card dl{display:grid;gap:.35rem}.server-card dl div{display:flex;justify-content:space-between;border-bottom:1px solid #15323e;padding:.4rem 0}.server-card dt{color:#75939e}.server-card dd{margin:0}.credential-bar{margin-top:1rem;padding-top:1rem;border-top:1px solid #193a47}.reauth-card{max-width:560px;margin:2rem auto}.secret-card input{font-family:ui-monospace,monospace;color:#68f2cf}.template-card>div{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.template-card>div span{padding:.3rem .55rem;border-radius:99px;background:#11333f;color:#8fb3bd}.template-card form{display:grid;gap:.5rem}@media(max-width:800px){.discussion-grid{grid-template-columns:1fr}.delivery-hero{align-items:flex-start;flex-direction:column}.delivery-tabs{overflow:auto}.gantt-row{grid-template-columns:130px minmax(380px,1fr) 90px}}
/* V4.5.1 updater and idle-session guard */
.idle-modal[hidden]{display:none}.idle-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:1rem;background:rgba(2,8,14,.78);backdrop-filter:blur(12px)}.idle-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.5rem;width:min(620px,100%);padding:2rem;border:1px solid #286272;border-radius:24px;background:linear-gradient(145deg,#0b2431,#071722);box-shadow:0 30px 100px #000,0 0 40px rgba(56,229,190,.12)}.idle-ring{display:grid;place-items:center;width:120px;height:120px;border-radius:50%;background:conic-gradient(#45ecc1 0 72%,#173b47 72%);position:relative}.idle-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:#091c27}.idle-ring strong{position:relative;font:700 1.55rem ui-monospace,monospace;color:#70f5d3}.idle-actions{display:flex;gap:.7rem;flex-wrap:wrap}.updater-hero{background:radial-gradient(circle at 85% 20%,rgba(48,238,188,.16),transparent 32%),linear-gradient(145deg,#091b29,#0b2932)}.updater-status{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.2rem .7rem;padding:1rem;border:1px solid #245463;border-radius:14px}.updater-status i{grid-row:1/3;width:12px;height:12px;border-radius:50%;background:#46edb7;box-shadow:0 0 16px #46edb7}.updater-status span{color:#7798a4;font-size:.78rem}.updater-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem;margin:1.5rem 0}.update-drop{text-align:center;border-style:dashed}.update-drop input{margin:1rem 0}.update-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border-radius:18px;background:#0e3942;color:#62f0c9;font-size:2rem}.update-checks{display:grid;gap:.65rem;padding:0;list-style:none}.update-checks li:before{content:"✓";color:#53edbd;margin-right:.6rem}.update-list{display:grid;gap:.65rem}.update-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem}.update-row small{display:block;color:#7898a3;margin-top:.2rem}.status-badge.staged{color:#77dfff}.status-badge.installed{color:#5aefbc}.status-badge.failed{color:#ff7184}@media(max-width:700px){.idle-card{grid-template-columns:1fr;text-align:center}.idle-ring{margin:auto}.idle-actions{justify-content:center}.updater-grid{grid-template-columns:1fr}.update-row{grid-template-columns:1fr auto}.update-row form{grid-column:1/-1}}
/* V4.6 Security Command Center */
.mfa-card{max-width:560px;margin:auto}.mfa-setup{max-width:760px;margin:1.5rem auto}.recovery-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}.recovery-codes code{padding:.7rem;border:1px solid #24505d;border-radius:9px;background:#071923;color:#63edc8;text-align:center}.security-center-hero{background:radial-gradient(circle at 86% 15%,rgba(60,237,186,.18),transparent 30%),linear-gradient(145deg,#081c29,#0a2931)}.security-score{display:grid;place-items:center;width:140px;height:140px;border:8px solid #2be0ad;border-radius:50%;box-shadow:0 0 32px rgba(43,224,173,.23)}.security-score strong{font-size:2.8rem;line-height:1}.security-score span{font-size:.72rem;color:#83a5af}.security-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:1rem 0}.security-kpis>div{text-align:center;padding:1rem;border:1px solid #1d4350;border-radius:14px;background:#091d29}.security-kpis strong{display:block;font-size:1.8rem;color:#63edc8}.security-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.security-check-list{display:grid;gap:.55rem}.security-check-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.7rem;border-radius:10px;background:#0a202b}.security-check-list i{display:grid;place-items:center;width:25px;height:25px;border-radius:50%}.security-check-list .pass i{background:#164b40;color:#5bf0c4}.security-check-list .fail i{background:#542633;color:#ff8192}.security-check-list .fail strong{color:#ff8192}.session-list,.security-event-list{display:grid;gap:.6rem}.session-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.session-row small{display:block;color:#7f9da8}.session-row p{margin:.25rem 0;color:#66838e;font-size:.75rem}.session-row form{display:flex;gap:.45rem}.security-event{display:flex;align-items:center;gap:1rem;border-left:4px solid #55737d}.security-event.warning{border-left-color:#e5ae49}.security-event.critical{border-left-color:#ff526d}.security-event>span{width:70px;font-size:.7rem;text-transform:uppercase}.security-event small{display:block;color:#76949e}@media(max-width:800px){.security-kpis{grid-template-columns:repeat(2,1fr)}.security-layout{grid-template-columns:1fr}.session-row{align-items:flex-start;flex-direction:column}}
/* V5.0 Infrastructure Source of Truth */
.records-hero{background:radial-gradient(circle at 84% 12%,rgba(69,234,194,.17),transparent 32%),linear-gradient(145deg,#081c29,#0a2b32)}.records-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.7rem;margin:1rem 0}.records-kpis>div{padding:1rem;text-align:center;border:1px solid #1c4350;border-radius:14px;background:#091e2a}.records-kpis strong{display:block;font-size:1.8rem;color:#63edc9}.records-kpis .attention strong{color:#ffbe55}.records-module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}.records-module{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}.records-module>span{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#103b44;color:#62efca;font-size:1.5rem}.records-module h2{margin:0}.records-module p{margin:.3rem 0;color:#819fa9}.quick-create-grid{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.record-form-stack{display:grid;gap:.5rem}.prefix-grid,.service-catalog,.virtual-grid,.circuit-grid,.config-recovery-grid,.credential-lifecycle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.8rem}.prefix-card>div:first-child,.service-card-head,.circuit-card>div,.lifecycle-card>div{display:flex;align-items:center;gap:.7rem;justify-content:space-between}.prefix-card>div:first-child strong{font:700 1.25rem ui-monospace,monospace;color:#65efcc}.prefix-card dl,.service-card dl{display:grid;gap:.3rem}.prefix-card dl div,.service-card dl div{display:flex;justify-content:space-between;border-bottom:1px solid #173643;padding:.35rem 0}.prefix-card dt,.service-card dt{color:#7796a0}.prefix-card dd,.service-card dd{margin:0}.table-wrap table small{display:block;color:#76949e}.service-form-grid,.security-layout{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.service-card-head{justify-content:flex-start}.service-card-head .risk-badge{margin-left:auto}.dependency-list{display:grid;gap:.5rem}.dependency-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem}.dependency-row small{grid-column:1/-1;color:#7896a0}.virtual-card strong{font-family:ui-monospace,monospace;color:#66edca}.virtual-card.vm{border-left:3px solid #5b91f2}.circuit-card>div{justify-content:flex-start}.circuit-card .status-badge{margin-left:auto}.certificate-list{display:grid;gap:.6rem}.certificate-row{display:flex;justify-content:space-between;gap:1rem}.certificate-row.expiring{border-left:4px solid #ffb74f}.certificate-row>div:last-child{text-align:right}.config-recovery-card .failed{color:#ff7084}.lifecycle-card.due{border-left:4px solid #ffad49}.health-list{display:grid;gap:.65rem}.health-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem}.health-score{display:grid;place-items:center;width:80px;height:80px;border-radius:50%;border:6px solid #49e4b8}.health-score.medium{border-color:#efb64f}.health-score.low{border-color:#ff6278}.health-checks{display:flex;gap:.4rem;flex-wrap:wrap}.health-checks span{padding:.25rem .5rem;border-radius:99px;font-size:.72rem}.health-checks .pass{background:#143f37;color:#65edc7}.health-checks .missing{background:#482632;color:#ff8191}@media(max-width:800px){.records-module-grid,.service-form-grid{grid-template-columns:1fr}.dependency-row{grid-template-columns:1fr}.certificate-row{flex-direction:column}.certificate-row>div:last-child{text-align:left}}
