/* RFTUK Guardian Console UI — October 2026. A presentation-only additive layer.
   Intentionally preserves all existing API/login forms/IDs and privacy controls.
   Linked LAST after guardian.css, guardian-security.css and guardian-antivirus.css.
*/
:root{color-scheme:dark;--rft-night:#041025;--rft-panel:#0a2042;--rft-panel2:#0d2a53;--rft-stroke:#275e9d;--rft-txt:#f2faff;--rft-muted:#afcee9;--rft-blue:#207dff;--rft-cyan:#12cbf8;--rft-green:#43dc9c;--rft-warn:#ffc46d}
html{background:#041025}body{background:radial-gradient(ellipse at 72% -13%,#145bb4 0%,#071c39 38%,#041025 81%)!important;color:var(--rft-txt)!important;min-height:100vh}
body:before{content:"";position:fixed;top:0;right:0;width:48vw;height:240px;background:radial-gradient(ellipse,#00cfff16,transparent 70%);pointer-events:none;z-index:-1}
header{background:linear-gradient(115deg,#051329,#09234b 65%,#0b4079)!important;border-bottom:1px solid #245a9b;box-shadow:0 12px 30px #0006!important;position:relative}
header .header-wrap{max-width:1390px;gap:16px}header b{color:#fff;font-size:clamp(17px,2vw,21px)}header small{color:#b6d9f9;opacity:1}header .mark.guardian-brand-mark{background:#07224c url('/assets/guardian-icon-192.png') center/contain no-repeat!important;width:56px;height:56px;min-width:56px;min-height:56px;padding:0;border:1px solid #13cbfa;border-radius:14px;box-shadow:0 0 24px #0dceef55!important}header .top-status{background:#0b305b;border:1px solid #2d80b3;color:#cdf6ff}
main{max-width:1390px;margin:23px auto;padding:0 20px 45px}
h1,h2,h3,h4{color:var(--rft-txt)!important}h1{font-size:clamp(26px,3vw,36px);letter-spacing:-.02em}h2{font-size:clamp(20px,2vw,26px)}.subtext,.sub,.footnote,.guardian-summary-note{color:var(--rft-muted)!important}a{color:#83e7ff}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #94f1ff;outline-offset:3px}
.auth-card{background:linear-gradient(155deg,#0d2b54,#07172e)!important;border:1px solid #3276b4!important;box-shadow:0 12px 60px #0009,0 0 25px #087cf622!important;border-radius:20px;padding:32px}.auth-card h1{color:#fff}.auth-card .shield{color:var(--rft-cyan)}
#main>.hero{background:linear-gradient(108deg,#061c3c,#0c407b 62%,#0b2851)!important;border:1px solid #1985c5!important;border-radius:20px;box-shadow:0 12px 36px #0007, inset 0 1px #8cfaff30!important;padding:clamp(18px,2.8vw,30px)!important;color:#fff;position:relative;overflow:hidden}
#main>.hero:after{content:"";position:absolute;right:-50px;top:-75px;width:240px;height:240px;border:2px solid #14cfff2b;border-radius:50%;box-shadow:0 0 0 28px #0de4ff10,0 0 0 60px #0c78df15;pointer-events:none}
#main>.hero>*{position:relative;z-index:1}#main>.hero .eyebrow{color:#83e9ff!important;letter-spacing:.16em;font-size:12px}#main>.hero h1{color:#fff!important}#main>.hero .guardian-hero-caption{color:#c8e6ff;max-width:620px}#main>.hero .btn{background:linear-gradient(130deg,#123b72,#176db5)!important;border:1px solid #359bd8!important;color:#fff!important}
#main>p>a.btn{display:inline-block;background:linear-gradient(110deg,#0d4282,#107ebf)!important;border:1px solid #3f9dc8!important;border-radius:12px!important;color:#fff!important;text-decoration:none;box-shadow:0 4px 18px #03a4ff26}
.summary{gap:12px}.summary article{background:linear-gradient(160deg,#0d305a,#081e3c)!important;border:1px solid #225a93!important;border-radius:16px!important;padding:18px!important;box-shadow:inset 0 1px #75e6ff22,0 7px 20px #0005!important;min-width:0}.summary article:before{content:"";display:block;width:28px;height:3px;background:linear-gradient(90deg,#14d9ff,#2d79ff);border-radius:30px;margin-bottom:12px}.summary small,.summary span{color:#bcdbf3!important}.summary strong{font-size:clamp(26px,3.2vw,38px)!important;color:#f7fcff!important}
.tabs{display:flex;gap:8px;flex-wrap:wrap;overflow:visible;margin:20px 0 16px;padding:10px;background:linear-gradient(180deg,#092246,#06182f)!important;border:1px solid #245a91!important;border-radius:17px;box-shadow:0 6px 24px #0004}.tabs button{color:#c2e3ff!important;background:#082449!important;border:1px solid #1d4c80!important;border-radius:12px!important;min-height:44px;padding:11px 15px!important;white-space:normal;text-align:left;line-height:1.35}.tabs button.selected{color:#fff!important;background:linear-gradient(105deg,#136ce4,#0cbdeb)!important;border:1px solid #52d8ff!important;box-shadow:0 5px 20px #00a5fa59!important}.tabs button:hover:not(.selected){background:#103968!important;color:white!important}
.panel{background:linear-gradient(170deg,#0a2448,#081831)!important;border:1px solid #265993!important;border-radius:18px!important;padding:clamp(17px,2.5vw,26px)!important;color:#e9f5ff!important;box-shadow:0 12px 28px #0005,inset 0 1px #6bd9ff18!important;min-width:0}
.panel .guardian-guide,.panel .guardian-network-note,.panel .token-box,.panel .empty{background:#0c3156!important;border:1px solid #2c77a4!important;border-radius:12px!important;color:#c6e5ff!important}
.device-card,.event-card,.guardian-ip-device,.guardian-ip-card,.guardian-privacy-box,.guardian-av-box,.guardian-security-panel,.guardian-stat{background:linear-gradient(155deg,#0d315c,#091d3b)!important;border:1px solid #2d6098!important;border-radius:15px!important;color:#eaf6ff!important;box-shadow:0 5px 15px #0003!important;min-width:0}
.device-card h3,.guardian-privacy-box h3,.guardian-security-panel h4,.guardian-ip-device h3,.guardian-stat strong,.guardian-ip-heading strong{color:#f5fbff!important}.device-card .pairs div{background:#102e55!important;color:#e8f6ff!important}.device-card .pairs b{color:#fff!important}.device-card .pairs span,.guardian-privacy-box p,.guardian-ip-explain,.guardian-ip-detail,.guardian-empty-note,.guardian-security-panel .guardian-detail,.guardian-stat span{color:#bcd9ef!important}.guardian-security-panel .guardian-value{color:#fff!important}.guardian-security-panel.reported-good{border-left:5px solid #38d69b!important}.guardian-security-panel.needs-attention{border-left:5px solid #ff8585!important}.guardian-security-panel.unknown{border-left:5px solid #779cc5!important}
.guardian-stat small,.guardian-tag,.guardian-kicker,.guardian-search-label,.guardian-ip-group h4{color:#9ddfff!important}.guardian-ip-pill,.guardian-tag{background:#0f416c!important;border:1px solid #286a9b!important;color:#d9f4ff!important}.guardian-privacy-box a{color:#9ae7ff!important}
.guardian-privacy-box button,button[type=submit],.btn,.guardian-av-link{background:linear-gradient(120deg,#1061db,#07b0ef)!important;color:#fff!important;border:1px solid #63d2ff!important;border-radius:10px!important;min-height:43px}.btn.muted,.small-btn{background:#13395d!important;border:1px solid #337eae!important;color:#edf8ff!important}.btn.danger{background:#7d303e!important;border-color:#e47688!important}
label{color:#dcefff!important}input,select{background:#0b2949!important;border:1px solid #407bae!important;color:#fff!important;border-radius:10px!important}input::placeholder{color:#b1c9df!important}.token-box code{background:#04162c!important;color:#fff!important}.badge{background:#1a4770!important;color:#e3f5ff!important}.event-card.high,.event-card.critical{border-left:5px solid #ff8585!important}.event-card.warning{border-left:5px solid #f7be68!important}.footnote{opacity:.95}
@media(min-width:1050px){
 #main{display:grid;grid-template-columns:255px minmax(0,1fr);column-gap:18px;align-items:start}
 #main>.hero{grid-column:1 / -1;grid-row:1}
 #main>p{grid-column:1 / -1;grid-row:2;margin:10px 0 15px}
 #main>.summary{grid-column:1 / -1;grid-row:3;margin-bottom:6px}
 #main>.tabs{grid-column:1;grid-row:4 / 6;flex-direction:column;position:sticky;top:14px;margin:0;max-height:calc(100vh - 28px);overflow-y:auto;align-self:start;min-width:0}
 #main>.tabs button{width:100%}
 #main>.panel{grid-column:2;grid-row:4;margin:0 0 12px}
 #main>.footnote{grid-column:2;grid-row:5}
}
@media(max-width:1049px){#main>.tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}#main>.tabs button{flex:0 0 auto;text-align:center}}
@media(max-width:680px){main{padding:0 12px 32px}.summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.summary article{padding:13px!important}.summary strong{font-size:29px!important}.device-grid,.guardian-ip-list,.guardian-security-grid,.guardian-privacy-grid{grid-template-columns:1fr}.guardian-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.enroll-form{grid-template-columns:1fr}header .header-wrap{gap:9px}header .mark.guardian-brand-mark{width:45px;height:45px;min-width:45px;min-height:45px}header b{font-size:17px}.top-status{display:none}.panel{padding:16px!important}}
@media(max-width:400px){.summary{grid-template-columns:1fr 1fr}.summary article{padding:10px!important}.summary strong{font-size:25px!important}.summary small{font-size:12px}.guardian-metrics{grid-template-columns:1fr}#main>.hero{padding:16px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* GUARDIAN LAYOUT REPAIR 2026-10-24
   Replace the old fixed grid/sidebar which could squeeze the content to one side.
   Centred dashboard with responsive navigation; all panels retain their IDs. */
html,body{width:100%;max-width:100%;overflow-x:clip}
header{width:100%}
header .header-wrap{width:min(100%,1320px);max-width:1320px;margin-inline:auto;padding-inline:clamp(12px,2vw,20px);box-sizing:border-box}
main{width:min(100%,1320px)!important;max-width:1320px!important;box-sizing:border-box;margin:24px auto 40px!important;padding:0 clamp(12px,2.6vw,24px)!important;display:block!important}
#main{display:flex!important;flex-direction:column;align-items:stretch;gap:15px;width:100%;max-width:100%;min-width:0;margin:0 auto!important;box-sizing:border-box}
#main>*{grid-column:auto!important;grid-row:auto!important;min-width:0;max-width:100%;width:100%;box-sizing:border-box}
#main>.hero{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin:0!important;width:100%}
#main>.hero>div{min-width:0;flex:1 1 350px}
#main>p{margin:0!important}
#main>.summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0!important}
#main>.tabs{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;position:static!important;top:auto!important;max-height:none!important;overflow:visible!important;align-self:stretch!important;min-width:0;width:100%!important;margin:0!important;gap:8px}
#main>.tabs button{flex:1 1 145px!important;min-width:0;max-width:100%;text-align:center!important;width:auto!important;white-space:normal}
#main>.panel{display:block;margin:0!important;max-width:100%;min-width:0;width:100%;overflow-wrap:anywhere}
#main[hidden],#main>.panel[hidden]{display:none!important}
#main>.footnote{margin:0!important;max-width:100%}
.device-grid,.guardian-security-grid,.guardian-privacy-grid,.guardian-ip-list{min-width:0;max-width:100%}
.device-card,.guardian-security-panel,.guardian-privacy-box,.guardian-ip-card{min-width:0}
@media(max-width:1020px){#main>.summary{grid-template-columns:repeat(2,minmax(0,1fr))}#main>.tabs{flex-wrap:nowrap!important;overflow-x:auto!important;overscroll-behavior-x:contain;scrollbar-width:thin}#main>.tabs button{flex:0 0 auto!important;min-width:128px!important}}
@media(max-width:580px){main{margin-top:12px!important}#main{gap:11px}#main>.summary{grid-template-columns:repeat(2,minmax(0,1fr))}#main>.summary article{padding:12px!important}#main>.hero{padding:16px!important}#main>.hero h1{font-size:clamp(24px,7vw,33px)}#main>.panel{padding:16px!important}.device-grid,.guardian-security-grid,.guardian-privacy-grid,.guardian-ip-list{grid-template-columns:minmax(0,1fr)}.enroll-form{grid-template-columns:minmax(0,1fr)}header .header-wrap b{font-size:17px}}
