.reflector-page{min-height:100vh}.reflector-header{min-height:82px;padding:14px max(22px,calc((100% - 1380px)/2));background:#282e35;display:flex;align-items:center;justify-content:space-between;gap:22px;color:#f8f6f0;border-bottom:3px solid #a95738}.reflector-header .brand small{color:#b9c3bd}.reflector-header nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.reflector-header nav a{font-size:10px;font-weight:850;letter-spacing:.9px;color:#e5e8e2;padding:10px 12px;border:1px solid #59615e;border-radius:3px}.reflector-header nav a.selected{background:#a95738;border-color:#a95738;color:#fff}.reflector-shell{width:min(1180px,calc(100% - 36px));margin:0 auto}.breadcrumb{padding:23px 0 13px;color:#6d756e;font-size:10px;letter-spacing:1.4px;font-weight:850}.breadcrumb span{padding:0 8px;color:#a95738}.reflector-hero{min-height:248px;padding:clamp(24px,5vw,52px);display:flex;align-items:center;justify-content:space-between;gap:30px;background:radial-gradient(ellipse at 80% 100%,#a9573833,transparent 42%),linear-gradient(115deg,#343d46,#282e35 78%);border-radius:6px;color:#f8f6f0;box-shadow:0 9px 26px #252c3218}.reflector-hero .eyebrow{font-size:10px;letter-spacing:1.6px;color:#c5d5ca;font-weight:850;display:flex;align-items:center;gap:10px}.reflector-hero h1{font-size:clamp(42px,7vw,74px);letter-spacing:-2px;line-height:1;margin:19px 0 10px;font-weight:800}.reflector-hero h1 em{font-style:normal;color:#d6946b}.reflector-hero p{color:#d0d4cd;font-size:14px;margin:0 0 20px}.target-line{display:flex;align-items:baseline;gap:14px}.target-line span,.hero-status .label{font-size:9px;letter-spacing:1.2px;color:#c1cbc2;font-weight:850}.target-line strong{font-size:15px;letter-spacing:.6px}.hero-status{width:min(310px,38%);padding:20px;background:#1b211f9c;border:1px solid #ffffff26;border-radius:5px;display:flex;flex-direction:column;gap:11px}.hero-status .state{font-size:13px;color:#d1d4cd}.hero-status .state.active{color:#a7d0ae}.hero-status .state.inactive{color:#f0aaa0}.hero-status .state i{width:9px;height:9px;border-radius:50%;background:#9aa29a}.hero-status .state.active i{background:#8bbd94}.hero-status .state.inactive i{background:#d67c70}.hero-status small{font-size:11px;color:#c1c9c1;line-height:1.4}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:17px 0 39px}.summary-grid article{background:#fff;border:1px solid #dedfd8;border-top:3px solid #54745d;border-radius:5px;padding:18px 20px;box-shadow:0 2px 8px #282e3509}.summary-grid article:nth-child(2){border-top-color:#a95738}.summary-grid article:nth-child(3){border-top-color:#42647d}.summary-grid article span{display:block;color:#69736a;font-size:9px;font-weight:850;letter-spacing:1px}.summary-grid article strong{display:block;color:#303730;font-size:19px;margin:10px 0 5px;overflow-wrap:anywhere}.summary-grid article small{color:#68716a;font-size:11px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:13px}.section-head .kicker{color:#42647d;font-size:9px;font-weight:900;letter-spacing:1.4px}.section-head h2{font-size:24px;letter-spacing:-.6px;margin:5px 0 0;color:#282e35}.live-label{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.8px;font-weight:850;color:#69736a}.reflector-page .table-panel{border-radius:5px}.reflector-page table{min-width:650px}.reflector-page .table-panel td.callsign{font-weight:850}.data-note{font-size:11px;line-height:1.6;color:#737b73;margin:12px 2px 40px}.reflector-shell footer{min-height:75px;border-top:1px solid #dedfd8;background:transparent;color:#68716a;padding:18px 0;display:flex;justify-content:space-between;font-size:11px}.reflector-shell footer a{color:#8e472f;font-weight:800;margin:0}.reflector-page .empty-state{padding:28px 12px}@media(max-width:700px){.reflector-header{align-items:flex-start;flex-direction:column;padding:17px 18px}.reflector-header nav{width:100%}.reflector-header nav a{padding:9px}.reflector-hero{align-items:stretch;flex-direction:column;padding:27px 23px}.hero-status{width:100%}.summary-grid{grid-template-columns:1fr;gap:9px;margin-bottom:31px}.summary-grid article{padding:14px 17px}.summary-grid article strong{margin:7px 0 3px}.section-head{align-items:flex-start;flex-direction:column}.reflector-shell footer{align-items:flex-start;flex-direction:column;gap:8px}}

.connection-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:-19px 0 38px}
.connection-panel{background:#fff;border:1px solid #dedfd8;border-radius:5px;padding:19px 21px;box-shadow:0 2px 8px #282e3509;min-width:0}
.connection-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.connection-head .kicker{color:#42647d;font-size:9px;font-weight:900;letter-spacing:1.25px}
.connection-head h2{font-size:19px;color:#282e35;margin:5px 0 0}
.count-badge{min-width:38px;height:34px;display:grid;place-items:center;border-radius:18px;background:#e8eee8;color:#456c4c;font-size:14px}
.user-list,.gateway-links{list-style:none;margin:15px 0 0;padding:0}
.user-list li,.gateway-links li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #e7e8e2;font-size:12px}
.user-list li strong{color:#303730;font-size:13px}
.user-list li span,.gateway-links li strong{font-size:9px;letter-spacing:.5px;font-weight:850;color:#68716a}
.user-list li.muted-row,.gateway-links li.muted-row{color:#737b73;justify-content:flex-start}
.connection-note{font-size:10px;color:#737b73;line-height:1.5;margin:12px 0 0}
.gateway-badge{font-size:9px;font-weight:900;letter-spacing:.7px;border-radius:3px;padding:7px 9px;background:#eef0ec;color:#68716a;white-space:nowrap}
.gateway-badge.connected{background:#e8eee8;color:#456c4c}.gateway-badge.partial{background:#f5eddf;color:#8d682e}.gateway-badge.offline{background:#f5e8e5;color:#a84745}
.gateway-name{display:block;color:#303730;font-size:14px;margin-top:14px}.gateway-callsign{display:block;color:#68716a;font-size:10px;margin-top:4px}
.gateway-links li{font-size:11px}.gateway-links li strong.link-up{color:#54745d}.gateway-links li strong.link-down{color:#a84745}
@media(max-width:700px){.connection-layout{grid-template-columns:1fr;margin-top:-12px}}

/* Refined shared chrome for the three reflector dashboards. */
.reflector-header{min-height:88px;padding:0 24px;background:#282e35;border-bottom:3px solid #a95738;color:#f8f6f0}
.reflector-header-inner{width:min(1380px,100%);min-height:85px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.reflector-brand{display:flex;flex-direction:column;gap:6px;line-height:1;text-decoration:none;flex:none}
.reflector-brand strong,.footer-identity strong{font-size:27px;letter-spacing:-1.2px;font-weight:900;color:#fff}
.reflector-brand strong span,.footer-identity strong span{color:#d6946b}
.reflector-brand small{font-size:8px;letter-spacing:1.25px;font-weight:800;color:#bec8c0}
.reflector-brand small i{font-style:normal;color:#d6946b;padding:0 3px}
.reflector-header nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.reflector-header nav a{min-height:39px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:4px;color:#dce2dc;font-size:10px;font-weight:850;letter-spacing:.75px;transition:background .15s ease,border-color .15s ease,color .15s ease}
.reflector-header nav a:hover{background:#ffffff10;border-color:#68716b;color:#fff}
.reflector-header nav a.selected{background:#a95738;border-color:#a95738;color:#fff;box-shadow:inset 0 -2px 0 #e0a17d}
.reflector-header nav a.system-link{margin-left:9px;border-color:#66716c;color:#f0f1ec;gap:8px}
.reflector-header nav a.system-link span{color:#e1a17e;font-size:13px}
.reflector-header nav a:focus-visible,.reflector-brand:focus-visible,.reflector-footer a:focus-visible{outline:2px solid #d6946b;outline-offset:3px}
.reflector-footer{margin-top:48px;background:#282e35;border-top:3px solid #a95738;color:#f4f2eb}
.reflector-footer-inner{width:min(1180px,calc(100% - 40px));min-height:154px;margin:0 auto;padding:27px 0 18px;display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:start;gap:22px 40px}
.footer-identity{display:flex;flex-direction:column;gap:6px}
.footer-identity strong{font-size:22px}
.footer-identity small{font-size:11px;color:#c2c8bf}
.reflector-footer nav{display:flex;align-items:center;justify-content:flex-end;gap:9px 22px;flex-wrap:wrap;padding-top:7px}
.reflector-footer nav a{color:#e1e4dd;font-size:10px;font-weight:800;letter-spacing:.25px}
.reflector-footer nav a:hover{color:#e3a27e}
.reflector-footer nav a span{color:#d6946b;margin-left:3px}
.footer-meta{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #48504b;padding-top:12px;color:#aeb7af;font-size:9px;letter-spacing:.55px}
.footer-meta span:first-child{font-weight:850;color:#d0d6cf}
.reflector-shell{padding-bottom:4px}
@media(max-width:760px){
 .reflector-header{padding:0 18px}
 .reflector-header-inner{min-height:0;padding:16px 0 13px;align-items:flex-start;flex-direction:column;gap:14px}
 .reflector-header nav{width:100%;gap:5px}
 .reflector-header nav a{min-height:35px;padding:0 11px}
 .reflector-header nav a.system-link{margin-left:auto}
 .reflector-footer{margin-top:34px}
 .reflector-footer-inner{width:calc(100% - 36px);grid-template-columns:1fr;gap:16px;padding:22px 0 15px}
 .reflector-footer nav{justify-content:flex-start;padding-top:0}
 .footer-meta{grid-column:auto;flex-direction:column;gap:5px}
}
@media(max-width:420px){
 .reflector-header nav a{font-size:9px;padding:0 9px}
 .reflector-header nav a.system-link{margin-left:0}
 .footer-identity strong{font-size:20px}
}
