/* Companion dashboard enhancement. Preserves the existing Guardian theme and login. */
.guardian-security-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px;margin:14px 0}
.guardian-security-panel{background:#f6f9fd;border:1px solid #dce6f4;border-radius:12px;padding:12px;min-width:0}
.guardian-security-panel h4{margin:0 0 7px;color:#032b5b;font-size:0.95rem}
.guardian-security-panel .guardian-value{font-weight:700;word-break:break-word;font-size:0.97rem;color:#173452}
.guardian-security-panel .guardian-detail{font-size:0.84rem;color:#43566e;margin-top:6px;line-height:1.45}
.guardian-security-panel.needs-attention{border-left:4px solid #b13b2b;background:#fff9f6}
.guardian-security-panel.reported-good{border-left:4px solid #2f7e5f}
.guardian-security-panel.unknown{border-left:4px solid #7a8493}
.guardian-guide{padding:11px 13px;border:1px solid #d8e5f1;border-radius:10px;background:#f8fbff;line-height:1.5;margin:14px 0;font-size:0.93rem}
.guardian-guide strong{color:#032b5b}
.guardian-summary-note{font-size:0.86rem;color:#52657b;margin-top:10px}
@media (max-width:600px){.guardian-security-grid{grid-template-columns:1fr}}

/* Guardian V3 branding: preserves the existing login and private API. */
.guardian-brand-mark{background:#082a51 url('/assets/guardian-icon-192.png') center/cover no-repeat!important;min-width:46px;min-height:46px;border-radius:12px;box-shadow:0 0 15px #149ee96a}
header .header-wrap{gap:14px}
header .header-wrap b{letter-spacing:.01em}
.guardian-security-panel{border-color:#b5d8ec;box-shadow:0 3px 12px #08294a13}
.guardian-security-panel.reported-good{border-left:5px solid #228f66;background:#f3fffa}
.guardian-security-panel.needs-attention{border-left:5px solid #c34b32;background:#fff9f6}
.guardian-security-panel.unknown{border-left:5px solid #778ea9}
.guardian-security-panel h4{font-size:1rem}
.guardian-value{line-height:1.4}
#activationCopy,#enrollForm button[type="submit"]{font-weight:750}
#activationValue{display:inline-block;padding:12px;background:#e7f4ff;border:1px solid #56a8ca;border-radius:8px;color:#052654;user-select:all}

/* V4: Larger dashboard headings and clearer cards */
.guardian-security-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:15px}
.guardian-security-panel{padding:19px;border-radius:15px;box-shadow:0 5px 24px #07284c13}
.guardian-security-panel h4{font-size:1.05rem}.guardian-security-panel .guardian-value{font-size:1.1rem;line-height:1.55}
.guardian-security-panel .guardian-detail{font-size:.95rem;line-height:1.6}
.guardian-brand-mark{background-image:url('/assets/guardian-icon-192.png')!important;width:54px;height:54px}
#activationBox{border:2px solid #198fd6;border-radius:14px;padding:18px;background:#eff9ff}
#activationValue{font-size:1.65rem!important;letter-spacing:.09em!important}
@media(max-width:620px){#activationValue{font-size:1.19rem!important}}

/* V7: glossy, readable and responsive — no overrides to auth, API or tokens. */
body{background:linear-gradient(155deg,#e6f6ff,#f5f9ff 48%,#ebf1fa)}
header{background:linear-gradient(100deg,#031c3e,#064989 65%,#067ab9)!important;box-shadow:0 7px 28px #03294e2c}
.hero{background:linear-gradient(110deg,#052951,#07518f,#007c9c)!important;color:white;border:1px solid #49bafa!important;border-radius:20px;box-shadow:0 12px 30px #00284722}
.hero h1{font-size:clamp(1.5rem,3vw,2.3rem)}.guardian-hero-caption{color:#d7f6ff;line-height:1.5}
.summary article{border-radius:16px!important;border:1px solid #a8d8f6!important;background:#f6fcff!important;box-shadow:0 5px 18px #06376212}
.summary strong{color:#04508f!important}
.tabs{display:flex;flex-wrap:wrap;gap:9px}.tabs button{font-size:1rem;padding:11px 16px!important;min-height:44px;border-radius:12px!important}
.tabs button.selected{background:linear-gradient(110deg,#0754a4,#0785c1)!important;color:white!important;box-shadow:0 4px 16px #0b6bb544}
.panel{border:1px solid #b9dbe9;border-radius:20px;box-shadow:0 5px 20px #04447414}
.guardian-network-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.guardian-kicker{color:#0576b0;font-size:.76rem;letter-spacing:.14em;font-weight:800}
.guardian-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:18px 0}
.guardian-stat{background:linear-gradient(140deg,#edfaff,#dcefff);border:1px solid #a9d8f2;border-radius:15px;padding:16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.guardian-stat small{font-weight:800;color:#07416e}.guardian-stat strong{font-size:1.8rem;color:#064989}.guardian-stat span{font-size:.8rem;color:#456078}
.guardian-network-note{padding:15px;background:#eef8ff;border:1px solid #9bcbe7;border-left:5px solid #128acb;border-radius:12px;line-height:1.5;margin:12px 0 20px}
.guardian-search-label{display:block;font-weight:800;color:#143c60;margin-bottom:6px}
#networkSearch{width:100%;max-width:520px;min-height:46px;border:1px solid #97c4df;background:white;color:#173655;border-radius:12px;padding:10px 15px;font:inherit}
#networkSearch:focus{outline:3px solid #79d2ff;outline-offset:2px}
.guardian-ip-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:16px 0}
.guardian-ip-device,.guardian-ip-card{padding:17px;background:#fff;border:1px solid #bedbea;border-radius:15px;box-shadow:0 5px 16px #03294f12;min-width:0}
.guardian-ip-device h3{margin:0 0 4px;color:#042c56}.guardian-ip-group{padding:10px 0;border-top:1px solid #dcecf5}
.guardian-ip-group h4{font-size:.97rem;margin:0 0 9px;color:#064989}.guardian-ip-pills{display:flex;flex-wrap:wrap;gap:6px}
.guardian-ip-pill{font-family:ui-monospace,Consolas,monospace;padding:6px 9px;border-radius:8px;background:#e6f6ff;border:1px solid #acd5ea;color:#053c69;overflow-wrap:anywhere;font-size:.86rem}
.guardian-ip-explain,.guardian-ip-detail,.guardian-empty-note{font-size:.9rem;color:#496479;line-height:1.5;margin:.6rem 0 0}
.guardian-ip-heading{display:flex;align-items:start;justify-content:space-between;gap:8px}.guardian-ip-heading strong{color:#043a69}.guardian-tag{border-radius:99px;background:#dff3ff;color:#0b4b7d;padding:4px 10px;font-size:.76rem;font-weight:800;white-space:nowrap}
.guardian-tag.guardian-warning{background:#fff0d4;color:#8e5000}.guardian-subheading{margin-top:30px;color:#06345e}
@media(max-width:700px){.guardian-ip-list{grid-template-columns:1fr}.guardian-network-heading{align-items:stretch}.guardian-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.guardian-stat{padding:12px}}

/* V9 identity & guidance layout */
.guardian-privacy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:15px;margin-top:20px}
.guardian-privacy-box{background:#f2faff;border:1px solid #c2e3f6;border-radius:16px;padding:21px;display:flex;flex-direction:column;gap:11px}
.guardian-privacy-box h3{margin:0;color:#032b5b;font-size:1.16rem}
.guardian-privacy-box p{margin:0;color:#243e59;line-height:1.5}
.guardian-privacy-box button{background:#0754a4;color:#fff;border:0;border-radius:9px;padding:11px;font:inherit;font-weight:700;cursor:pointer;min-height:42px}
.guardian-privacy-box button:hover{background:#0875c3}.guardian-privacy-box a{color:#064989;font-weight:700;overflow-wrap:anywhere}
.guardian-privacy-box label{color:#123d63;font-weight:700}.guardian-privacy-box input{padding:12px;font:inherit;border-radius:8px;border:1px solid #94bfe1;min-width:0}
.guardian-privacy-box button:focus-visible{outline:3px solid #e3a02c;outline-offset:3px}
@media(max-width:540px){.guardian-privacy-grid{grid-template-columns:1fr}}
