:root{--bg:#03101e;--panel:#061a2e;--panel2:#08233c;--line:#155a8a;--cyan:#19c8ff;--cyan2:#0079ff;--text:#f4fbff;--muted:#9eb8cc;--green:#2ee79d;--danger:#ff5263;--gold:#ffb84c;--shadow:0 18px 45px rgba(0,0,0,.42)}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:radial-gradient(circle at 80% 10%,#0b2743 0,transparent 25%),linear-gradient(180deg,#03111f,#020b14 72%);color:var(--text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}.btn{border-radius:9px}.btn-glow{color:#fff;border:1px solid #52d7ff;background:linear-gradient(180deg,#157cff,#0097f8);box-shadow:0 0 18px rgba(0,174,255,.45),inset 0 0 18px rgba(60,210,255,.16)}.btn-glow:hover{color:#fff;filter:brightness(1.12)}.btn-outline-glow{border:1px solid #1d8fc6;color:#dff8ff;background:rgba(3,24,42,.72)}.btn-outline-glow:hover{color:#fff;border-color:#45d6ff;background:#0b3353}.panel-card,.stat-card{background:linear-gradient(180deg,rgba(7,34,57,.96),rgba(3,19,34,.94));border:1px solid rgba(37,169,230,.68);box-shadow:var(--shadow)}
.navbar-toggler{border-color:#1b6b99}.navbar-toggler-icon{filter:invert(1)}
.form-message{min-height:22px;color:#ff8f9d;font-size:.9rem;margin-bottom:8px}.form-message.success{color:#49eaa2}
.portal-shell{display:flex;min-height:100vh}.portal-sidebar{width:260px;flex:0 0 260px;background:linear-gradient(180deg,#04172a,#03101d);border-right:1px solid #12476c;padding:18px 12px;z-index:1045}.sidebar-head{padding:0 12px 18px;border-bottom:1px solid #174667}.sidebar-head img{width:220px;max-width:100%;height:80px;object-fit:contain}.sidebar-head h3{font-size:1.35rem;margin:8px 0 3px}.sidebar-head p{color:#9db5c6;font-size:.82rem;margin:0}.portal-nav{display:flex;flex-direction:column;gap:4px;padding-top:14px}.portal-nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;color:#d7e6f0;border-radius:8px}.portal-nav a i{width:22px;color:#aaddff;font-size:1.05rem}.portal-nav a:hover,.portal-nav a.active{background:linear-gradient(90deg,#1379ff,#0f5bb4);color:#fff;box-shadow:0 0 18px rgba(21,146,255,.45);border:1px solid #35caff}.portal-nav a.active i{color:#fff}.portal-nav hr{border-color:#24506c;margin:10px}.nav-badge{margin-left:auto;background:#ff3b52;border-radius:50%;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem}.portal-main{min-width:0;flex:1}.portal-topbar{height:78px;display:flex;align-items:center;gap:18px;padding:0 24px;position:sticky;top:0;z-index:1020;background:rgba(2,15,27,.93);backdrop-filter:blur(15px);border-bottom:1px solid #154d73}.portal-search{flex:1;max-width:780px;height:45px;border:1px solid #176390;border-radius:10px;display:flex;align-items:center;gap:12px;padding:0 15px;background:#06182a}.portal-search i{color:#c5e9ff;font-size:1.2rem}.portal-search input{flex:1;border:0;background:transparent;outline:0;color:white}.topbar-actions{margin-left:auto;display:flex;gap:14px;align-items:center}.icon-action{position:relative;width:43px;height:43px;border-radius:10px;border:1px solid #1b5479;background:#06182a;color:white}.icon-action span{position:absolute;right:-5px;top:-8px;background:#ff3f55;border-radius:50%;font-size:.7rem;width:20px;height:20px;display:grid;place-items:center}.user-chip{display:flex;align-items:center;gap:10px}.user-chip .avatar,.profile-avatar{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#0b75ff,#16d8ff);font-weight:800;box-shadow:0 0 18px rgba(32,192,255,.45)}.user-chip .avatar{width:44px;height:44px}.user-chip strong,.user-chip small{display:block}.user-chip small{color:#8fb5cc}.portal-content{padding:16px;max-width:1800px;margin:auto}.portal-hero{height:250px;border:1px solid #1b88c3;border-radius:15px;overflow:hidden;position:relative}.portal-hero img{width:100%;height:100%;object-fit:cover}.portal-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,15,27,.94),rgba(2,15,27,.25))}.portal-hero-overlay{position:absolute;z-index:2;left:36px;top:50%;transform:translateY(-50%);max-width:740px}.portal-hero h1{font-size:clamp(2rem,4vw,4rem);font-weight:850;line-height:1}.portal-hero h1 span{display:block;color:#57d9ff}.portal-hero p{font-size:1.1rem;color:#d0e3ef}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.stat-card{padding:17px;border-radius:11px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.stat-card>i{font-size:2.2rem;color:#30ccff}.stat-card strong{display:block;font-size:1.65rem}.stat-card span{display:block;color:#c4d7e3}.stat-card small{color:#39eba5}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.panel-card{border-radius:11px;padding:14px;min-width:0}.span-2{grid-column:span 2}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid rgba(71,160,210,.25)}.panel-title h3{font-size:1.05rem;margin:0}.panel-title h3 i{color:#30ccff}.panel-title a,.panel-title button{font-size:.8rem;color:#38d6ff;background:none;border:0}.compact-item,.list-line,.friend-row,.request-row,.queue-row,.status-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(79,145,184,.18)}.compact-item img{width:110px;height:64px;object-fit:cover;border-radius:8px}.compact-item div,.list-line div,.friend-row div,.request-row div{min-width:0;flex:1}.compact-item strong,.compact-item span,.compact-item small,.list-line strong,.list-line span,.friend-row strong,.friend-row span,.request-row strong,.request-row span{display:block}.compact-item span,.compact-item small,.list-line span,.friend-row span,.request-row span{color:#9db7c8;font-size:.78rem}.circle-avatar{width:42px;height:42px;border-radius:50%;flex:0 0 42px;display:grid;place-items:center;background:linear-gradient(145deg,#174d74,#0ca7da);font-weight:800}.property-mini{display:flex;gap:14px;align-items:center;padding-top:12px}.property-mini img{width:50%;max-width:260px;height:100px;object-fit:cover;border-radius:9px}.property-mini strong,.property-mini span,.property-mini small{display:block}.property-mini span,.property-mini small{color:#9db5c7}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:12px}.quick-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:92px;border:1px solid #1f6d98;border-radius:9px;background:#061b2e;text-align:center;font-size:.8rem}.quick-grid i{font-size:1.6rem;color:#37d1ff}.alert-row{display:flex;gap:10px;padding:11px;margin-top:8px;border-radius:8px;border:1px solid}.alert-row i{font-size:1.2rem}.alert-row strong,.alert-row span{display:block}.alert-row span{font-size:.78rem;color:#b6cad7}.alert-row.danger{border-color:#8d3343;background:#35151d}.alert-row.warning{border-color:#74541f;background:#332712}.alert-row.info{border-color:#195a85;background:#082941}.queue-row strong{flex:1;font-size:.86rem}.queue-row small{color:#809caf}.status-row span{flex:1}.status-row b{color:#37e59a}.fake-chart{height:220px;display:flex;align-items:flex-end;gap:8px;padding:18px 8px 8px;border-bottom:1px solid #1c5a82;background:repeating-linear-gradient(to top,transparent 0 43px,rgba(37,121,167,.14) 44px)}.fake-chart i{flex:1;background:linear-gradient(#25d1ff,#0569d1);border-radius:3px 3px 0 0}.fake-chart i:nth-child(1){height:30%}.fake-chart i:nth-child(2){height:42%}.fake-chart i:nth-child(3){height:36%}.fake-chart i:nth-child(4){height:55%}.fake-chart i:nth-child(5){height:63%}.fake-chart i:nth-child(6){height:51%}.fake-chart i:nth-child(7){height:82%}.fake-chart i:nth-child(8){height:70%}.fake-chart i:nth-child(9){height:58%}.fake-chart i:nth-child(10){height:76%}.fake-chart i:nth-child(11){height:66%}.fake-chart i:nth-child(12){height:74%}.big-number{font-size:2rem;font-weight:850;padding:15px 0}.big-number small{font-size:.8rem;color:#2fe19a}.bars{height:120px;display:flex;gap:7px;align-items:flex-end}.bars i{width:18px;background:linear-gradient(#35d7ff,#2569db);height:55%}.bars i:nth-child(2n){height:85%}.page-heading{min-height:115px;border-radius:13px;padding:20px 24px;margin-bottom:12px;background:linear-gradient(90deg,rgba(4,23,39,.9),rgba(4,23,39,.28)),url('/assets/city-banner.webp') center/cover;border:1px solid #1b6795}.page-heading h1{font-size:2.4rem;font-weight:800;margin:0 0 4px}.page-heading p{margin:0;color:#c0d3df}.profile-hero{min-height:170px;display:flex;align-items:center;gap:25px;background:linear-gradient(90deg,rgba(4,22,38,.92),rgba(4,22,38,.2)),url('/assets/nexverse-city.webp') center/cover}.profile-avatar{width:125px;height:125px;font-size:3rem;flex:0 0 125px;border:3px solid #36cfff}.profile-hero h2{font-size:2rem}.profile-hero h2 i{color:#20c7ff}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.kv,.switch-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(79,145,184,.2)}.kv span{color:#a9bdcb}.setting-label{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:12px;margin-top:12px}.form-select,.form-control{background:#061a2c!important;border-color:#1e5f88!important;color:#fff!important}.form-select option{background:#061a2c}.wallet-number{font-size:2rem;color:#39d7ff;font-weight:850;padding:20px 0}.friends-layout{display:grid;grid-template-columns:1.1fr 1.3fr 1fr;gap:12px}.request-row{display:grid;grid-template-columns:auto 1fr auto auto}.search-panel h3{font-size:1.1rem}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filter-bar .form-control{max-width:310px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;padding-top:12px}.content-card{overflow:hidden;border:1px solid #14689a;border-radius:10px;background:#06192a}.content-card img{width:100%;height:135px;object-fit:cover}.content-card>div{padding:12px}.content-card h3{font-size:1rem;margin:6px 0}.content-card p{font-size:.82rem;color:#afc3d1;margin-bottom:5px}.content-card small{color:#79a7bf}.map-layout{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(300px,.85fr);gap:12px}.city-map{height:560px;position:relative;border-radius:10px;overflow:hidden}.city-map>img{width:100%;height:100%;object-fit:cover;filter:saturate(1.15) brightness(.72)}.map-pin{position:absolute;padding:9px 13px;border:1px solid #27c7ff;border-radius:8px;background:#082641;box-shadow:0 0 15px rgba(26,190,255,.45);font-weight:700}.map-pin i{color:#31d5ff;margin-right:5px}.pin-central{left:45%;top:43%}.pin-beach{left:8%;top:16%}.pin-lake{right:8%;top:15%}.pin-tech{right:19%;bottom:12%}.district-card img{width:100%;height:190px;object-fit:cover;border-radius:8px}.district-card h2{margin-top:13px}.district-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.district-stats div{border:1px solid #205d84;border-radius:8px;padding:10px;text-align:center}.district-stats b,.district-stats span{display:block}.district-stats span{font-size:.75rem;color:#a8bdcc}.ordinance h2{font-size:1.25rem;color:#4bd7ff;margin-top:20px}.ordinance p{color:#bed0db}.table-controls{display:flex;gap:8px;padding:12px 0}.table-controls .form-control{flex:1}.table-controls .form-select{max-width:220px}.portal-table{--bs-table-bg:transparent;--bs-table-color:#e6f4fb;--bs-table-border-color:rgba(59,127,167,.22);font-size:.86rem}.portal-table thead th{color:#a5bdd0;font-weight:600}.portal-table tbody tr:hover{background:rgba(20,113,172,.18)}.status-pill{display:inline-flex;padding:4px 8px;border:1px solid #219acb;border-radius:999px;background:#082a42;color:#7ee3ff}
@media(max-width:1199px){.portal-sidebar{width:275px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:repeat(2,1fr)}.friends-layout{grid-template-columns:1fr 1fr}.friends-layout>section:last-child{grid-column:1/-1}.map-layout{grid-template-columns:1fr}.city-map{height:470px}}
@media(max-width:767px){.portal-topbar{padding:0 12px}.portal-search{display:none}.portal-content{padding:10px}.portal-hero{height:210px}.portal-hero-overlay{left:18px;right:18px}.portal-hero h1{font-size:2.2rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.content-grid,.friends-layout{grid-template-columns:1fr}.span-2,.friends-layout>section:last-child{grid-column:auto}.quick-grid{grid-template-columns:repeat(2,1fr)}.profile-hero{align-items:flex-start;flex-direction:column}.profile-avatar{width:90px;height:90px;flex-basis:90px}.profile-hero .btn{width:100%}.page-heading h1{font-size:1.8rem}.table-controls{flex-direction:column}.table-controls .form-select{max-width:none}.map-panel{padding:8px}.city-map{height:380px}.map-pin{font-size:.75rem;padding:6px 8px}.pin-central{left:34%;top:45%}.setting-label{grid-template-columns:1fr}.request-row{grid-template-columns:auto 1fr auto}.request-row .btn-outline-glow{display:none}}

/* === NexVerse Reference Home R6 === */
body[data-section="public"]{margin:0;min-width:320px;color:#f6fbff;background:#020914;overflow-x:hidden}
.nv-home{min-height:100svh;background:#020914}
.nv-home-container{width:min(3060px,82vw);margin:0 auto;padding-inline:0!important}
.nv-home-header{height:clamp(64px,4.7vw,88px);min-height:64px;padding:0;background:rgba(2,12,25,.76);border-bottom:1px solid rgba(81,163,213,.28);backdrop-filter:blur(14px);box-shadow:0 8px 26px rgba(0,0,0,.22);z-index:1050}
.nv-home-brand{height:100%;display:flex;align-items:center;padding:0;margin:0 clamp(28px,4vw,90px) 0 0}
.nv-home-brand img{width:clamp(230px,15vw,420px);height:auto;max-height:84%;object-fit:contain;object-position:left center;background:transparent!important;filter:drop-shadow(0 0 9px rgba(34,177,255,.18))}
.nv-home-nav{height:100%;align-items:stretch;gap:clamp(2px,.55vw,14px)}
.nv-home-nav .nav-link{position:relative;display:flex;align-items:center;padding:0 clamp(10px,.9vw,22px)!important;color:#f8fbff!important;font-size:clamp(14px,.86vw,18px);font-weight:500}
.nv-home-nav .nav-link:hover,.nv-home-nav .nav-link.active{color:#45e6ff!important}
.nv-home-nav .nav-link.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;background:#1fe0ff;box-shadow:0 0 14px #11c9ff}
.nv-home-tools{display:flex;align-items:center;gap:14px;margin-left:22px}
.nv-icon-button{width:42px;height:42px;border:0;background:transparent;color:#fff;display:grid;place-items:center;font-size:21px;padding:0}
.nv-tool-divider{width:1px;height:30px;background:rgba(205,229,245,.25)}
.nv-lang-button{height:42px;border:0;border-radius:8px;padding:0 6px;display:flex;align-items:center;gap:8px;background:transparent;color:#fff;font-size:15px}
.nv-home-hero{position:relative;min-height:100svh;padding-top:clamp(64px,4.7vw,88px);overflow:hidden;background:#020914}
.nv-home-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;z-index:0;user-select:none;pointer-events:none}
.nv-home-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,9,18,.37) 0%,rgba(2,9,18,.18) 43%,rgba(2,9,18,.08) 70%,rgba(2,9,18,.26) 100%),linear-gradient(180deg,rgba(1,7,14,.05) 0%,rgba(1,7,14,.02) 54%,rgba(1,7,14,.22) 68%,rgba(2,9,20,.72) 100%);pointer-events:none}
.nv-home-stage{position:relative;z-index:2;padding-top:clamp(58px,5vw,92px);padding-bottom:34px}
.nv-home-stage>.row{--bs-gutter-x:clamp(34px,4vw,78px);--bs-gutter-y:24px;padding-left:clamp(70px,7vw,240px)}
.nv-home-copy{max-width:1120px;padding-top:0}
.nv-home-copy h1{margin:0;font-size:clamp(62px,3.9vw,110px);line-height:.92;font-weight:850;letter-spacing:-3px;text-shadow:0 5px 22px rgba(0,0,0,.64)}
.nv-home-copy h1 span{display:block;font-size:1.13em;line-height:.95;background:linear-gradient(180deg,#fff 4%,#c8efff 32%,#1db7ef 68%,#20d9ff 100%);-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(22,167,230,.28))}
.nv-home-copy h2{margin:18px 0 10px;font-size:clamp(24px,1.45vw,38px);font-weight:500;letter-spacing:-.3px}
.nv-home-copy p{max-width:840px;margin:0;color:#eef4f8;font-size:clamp(16px,1.02vw,23px);line-height:1.48;text-shadow:0 2px 10px rgba(0,0,0,.68)}
.nv-hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:20px}
.nv-primary-action,.nv-secondary-action{height:clamp(50px,3.2vw,62px);min-width:clamp(230px,16vw,330px);padding:0 24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:clamp(15px,.9vw,19px);font-weight:650}
.nv-primary-action{color:#00151f;background:linear-gradient(180deg,#2ed7ff,#0aa9ef);border:1px solid #72e6ff;box-shadow:0 0 18px rgba(0,174,255,.44)}
.nv-primary-action:hover{color:#00151f;filter:brightness(1.06)}
.nv-secondary-action{color:#fff;background:rgba(2,15,29,.72);border:1px solid #3aa8d8}
.nv-secondary-action:hover{color:#fff;border-color:#52dcff;background:rgba(4,31,50,.84)}
.nv-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px;max-width:1060px}
.nv-stat-card{height:88px;padding:11px 16px;border:1px solid rgba(44,133,184,.72);border-radius:8px;background:linear-gradient(180deg,rgba(4,25,45,.88),rgba(2,14,27,.92));box-shadow:0 9px 22px rgba(0,0,0,.27);display:flex;align-items:center;gap:12px}
.nv-stat-icon{width:42px;flex:0 0 42px;text-align:center;font-size:28px;color:#39d7ff;text-shadow:0 0 10px rgba(20,198,255,.36)}
.nv-stat-card strong{display:block;font-size:20px;line-height:1;font-weight:800}
.nv-stat-card span{display:block;margin-top:3px;font-size:12px;color:#eef7fb}
.nv-stat-card small{display:block;margin-top:2px;color:#39e8a7;font-size:10px}
.nv-auth-card{width:clamp(360px,23vw,600px);max-width:100%;margin-left:auto;margin-top:2px;padding:22px 24px 20px;border:1px solid rgba(50,124,165,.72);border-radius:12px;background:linear-gradient(180deg,rgba(11,28,45,.93),rgba(6,18,31,.96));box-shadow:0 16px 40px rgba(0,0,0,.45),0 0 18px rgba(22,167,230,.12)}
.nv-auth-logo{display:block;width:min(270px,78%);height:auto;max-height:96px;object-fit:contain;margin:0 auto 6px;background:transparent!important;filter:drop-shadow(0 0 7px rgba(22,161,255,.16))}
.nv-auth-card h3{text-align:center;margin:0 0 14px;font-size:clamp(19px,1.1vw,26px);font-weight:700}
.nv-auth-intro{display:none}
.nv-field{height:46px;margin-bottom:13px;border:1px solid #4a6377;border-radius:6px;background:rgba(3,18,34,.64);display:flex;align-items:center;overflow:hidden}
.nv-field>i{width:44px;text-align:center;color:#e7f4fc;font-size:17px}
.nv-field input{height:100%;min-width:0;flex:1;border:0!important;outline:0;background:transparent!important;color:#fff!important;font-size:15px;padding:0 8px 0 0}
.nv-field input::placeholder{color:#a2aeb8}
.nv-field input:-webkit-autofill,.nv-field input:-webkit-autofill:hover,.nv-field input:-webkit-autofill:focus{-webkit-text-fill-color:#fff!important;box-shadow:0 0 0 1000px #071b2c inset!important;transition:background-color 9999s ease-out 0s}
.nv-field button{width:42px;height:100%;border:0;background:transparent;color:#dff6ff}
.nv-login-button{width:100%;height:48px;border-radius:6px;border:1px solid #42cfff;color:#fff;background:linear-gradient(180deg,#23c4ff,#0795ef);box-shadow:0 0 16px rgba(0,189,255,.31);font-size:16px;font-weight:600}
.nv-check-row{display:flex;align-items:center;gap:8px;margin:12px 0 6px;color:#edf4f8;font-size:13px}
.nv-check-row input{width:16px;height:16px;accent-color:#10aef7}
.nv-auth-links{display:grid;grid-template-columns:1fr 1px 1fr;gap:14px;align-items:center;margin-top:16px}
.nv-auth-links span{width:1px;height:24px;background:#596f80;justify-self:center}
.nv-auth-links a,.nv-auth-footer a{color:#34d8ff;font-size:13px}
.nv-auth-links a:last-child{text-align:right}
.nv-auth-footer{text-align:center;margin-top:12px}
.nv-auth-card .form-message{margin:4px 0 2px;min-height:14px;font-size:11px}
.nv-places{margin-top:30px;width:100%;padding:14px 0 24px;border-top:1px solid rgba(80,157,199,.30);background:linear-gradient(180deg,rgba(2,13,27,.34),rgba(2,12,24,.68));backdrop-filter:blur(7px)}
.nv-places-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}
.nv-places-head h2{margin:0;font-size:clamp(26px,1.55vw,38px);font-weight:750}
.nv-places-head p{margin:2px 0 0;color:#d3dde5;font-size:clamp(12px,.72vw,16px)}
.nv-places-head a{color:#31d9ff;font-size:clamp(12px,.72vw,16px)}
.nv-place-card{position:relative;height:clamp(190px,12vw,310px);border:1px solid #287caa;border-radius:8px;overflow:hidden;background:#051725;box-shadow:0 10px 24px rgba(0,0,0,.30)}
.nv-place-card img{width:100%;height:100%;object-fit:cover}
.nv-place-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(1,7,13,.10) 56%,rgba(1,7,13,.95) 100%)}
.nv-place-badge{display:none}
.nv-place-overlay{position:absolute;z-index:3;left:16px;right:16px;bottom:12px;padding-right:54px}
.nv-place-overlay h3{font-size:clamp(18px,1vw,26px);margin:0 0 2px;font-weight:700}
.nv-place-overlay p{margin:0;color:#f0f5f8;font-size:clamp(12px,.64vw,15px);line-height:1.2}
.nv-place-meta{position:absolute;right:0;bottom:2px;display:block;color:#eef9ff;font-size:clamp(11px,.58vw,14px)}
.nv-place-meta i{margin-right:4px;color:#fff}
.nv-place-arrow{display:none}
@media(min-width:1200px){.nv-home-stage>.row>.col-xl-8{flex:0 0 72%;max-width:72%}.nv-home-stage>.row>.col-xl-4{flex:0 0 28%;max-width:28%;display:flex;justify-content:flex-end}}
@media(min-width:2560px){.nv-home-stage{padding-top:86px}.nv-home-copy h1{font-size:104px}.nv-home-copy h2{font-size:36px}.nv-home-copy p{font-size:22px}.nv-home-stats{max-width:1660px;gap:20px}.nv-stat-card{height:104px}.nv-stat-card strong{font-size:26px}.nv-stat-card span{font-size:15px}.nv-stat-card small{font-size:12px}.nv-auth-card{padding:30px 32px 26px}.nv-auth-logo{width:350px;max-height:120px}.nv-field{height:56px}.nv-login-button{height:58px}.nv-place-card{height:300px}}
@media(max-width:1599px){.nv-home-container{width:min(1380px,86vw)}.nv-home-stage>.row{padding-left:60px}.nv-home-copy h1{font-size:60px}.nv-home-copy h2{font-size:24px}.nv-home-copy p{font-size:16px;max-width:690px}.nv-primary-action,.nv-secondary-action{height:50px;min-width:230px;font-size:14px}.nv-home-stats{margin-top:26px}.nv-stat-card{height:78px}.nv-auth-card{width:360px;padding:20px}.nv-auth-logo{width:235px}.nv-field{height:43px}.nv-login-button{height:44px}.nv-place-card{height:200px}}
@media(max-width:1199px){.nv-home-header{height:auto;min-height:68px}.nv-home-container{width:min(100% - 30px,1080px)}.nv-home-brand{height:68px}.nv-home-brand img{width:230px;max-height:62px}.nv-home-header .navbar-collapse{padding:14px 0 18px;border-top:1px solid rgba(60,144,188,.25)}.nv-home-nav{height:auto;align-items:stretch}.nv-home-nav .nav-link{padding:10px 12px!important}.nv-home-nav .nav-link.active:after{left:0;right:auto;bottom:2px;width:3px;height:28px}.nv-home-tools{margin:8px 0 0}.nv-home-hero{min-height:auto;padding-top:68px}.nv-home-stage{padding-top:38px}.nv-home-stage>.row{padding-left:0}.nv-auth-card{width:100%;max-width:none;margin-top:8px}.nv-home-stats{grid-template-columns:repeat(2,1fr);max-width:none}.nv-place-card{height:230px}}
@media(max-width:767px){.nv-home-container{width:calc(100% - 22px)}.nv-home-brand img{width:190px}.nv-home-stage{padding-top:26px}.nv-home-bg{object-position:57% center}.nv-home-copy h1{font-size:48px;letter-spacing:-2px}.nv-home-copy h2{font-size:22px;margin-top:14px}.nv-home-copy p{font-size:15px}.nv-hero-actions{display:grid;grid-template-columns:1fr;gap:9px}.nv-primary-action,.nv-secondary-action{width:100%;min-width:0}.nv-home-stats{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.nv-stat-card{height:76px;padding:8px}.nv-stat-icon{width:34px;flex-basis:34px;font-size:22px}.nv-stat-card strong{font-size:18px}.nv-auth-card{padding:18px 15px}.nv-auth-logo{width:210px}.nv-places{padding:12px 0;background:rgba(2,12,24,.62)}.nv-places-head{align-items:flex-start;flex-direction:column;gap:6px}.nv-places-head h2{font-size:25px}.nv-place-card{height:210px}.nv-place-meta{position:static;margin-top:5px}}


/* === NexVerse Home R8 refinements === */
.nv-home-brand img{width:clamp(180px,10vw,285px);max-height:72%}
.nv-auth-card{width:clamp(340px,18vw,440px)}
.nv-auth-logo{width:min(230px,72%);max-height:82px}
.nv-places{margin-top:30px;padding:18px;border:1px solid rgba(78,163,210,.28);border-radius:18px;background:linear-gradient(180deg,rgba(4,19,34,.52),rgba(2,12,24,.78));box-shadow:0 18px 48px rgba(0,0,0,.26);backdrop-filter:blur(12px)}
.nv-places-head{margin-bottom:14px}
.nv-place-card{height:clamp(190px,11.2vw,280px);border-radius:14px;border:1px solid rgba(64,175,226,.42);background:#071827;box-shadow:0 13px 30px rgba(0,0,0,.30)}
.nv-place-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(.98) brightness(.88);transform:scale(1.015);transition:transform .35s ease,filter .35s ease}
.nv-place-card:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,15,27,.28),transparent 42%),linear-gradient(180deg,rgba(2,11,21,.04) 26%,rgba(2,11,21,.18) 55%,rgba(2,9,17,.94) 100%);box-shadow:inset 0 0 40px rgba(5,26,43,.26)}
.nv-place-card:after{display:none}
.nv-place-card:hover img{transform:scale(1.045);filter:saturate(1) contrast(1) brightness(.94)}
.nv-place-overlay{z-index:2;left:18px;right:18px;bottom:14px}
.nv-place-overlay h3{text-shadow:0 2px 8px rgba(0,0,0,.72)}
.nv-place-overlay p{color:rgba(239,248,253,.86)}
.nv-place-meta{color:#dff8ff}
.nv-site-footer{position:relative;z-index:3;padding:22px 0 28px;background:linear-gradient(180deg,rgba(2,9,18,.94),rgba(2,8,16,1)),#020914;border-top:1px solid rgba(72,160,207,.18)}
.nv-footer-inner{min-height:86px;display:grid;grid-template-columns:minmax(280px,1fr) auto minmax(250px,.8fr);align-items:center;gap:30px;padding:17px 22px;border:1px solid rgba(67,157,205,.24);border-radius:16px;background:linear-gradient(180deg,rgba(7,25,42,.82),rgba(4,16,29,.9));box-shadow:0 15px 36px rgba(0,0,0,.26)}
.nv-footer-brand{display:flex;align-items:center;gap:16px;min-width:0}
.nv-footer-brand img{width:142px;height:auto;max-height:48px;object-fit:contain}
.nv-footer-brand strong,.nv-footer-brand span{display:block}
.nv-footer-brand strong{font-size:14px;color:#f6fbff}
.nv-footer-brand span{margin-top:2px;font-size:12px;color:#8faebe}
.nv-footer-links{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}
.nv-footer-links a,.nv-footer-links button{border:0;padding:0;background:transparent;color:#c2d5df;text-decoration:none;font:inherit;font-size:12px;cursor:pointer}
.nv-footer-links a:hover,.nv-footer-links button:hover{color:#37dcff}
.nv-footer-copy{text-align:right;color:#6f91a5;font-size:11px}
.nv-cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:3000;display:flex;justify-content:center;pointer-events:none}
.nv-cookie-banner[hidden]{display:none!important}
.nv-cookie-content{width:min(980px,100%);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;border:1px solid rgba(61,188,239,.34);border-radius:16px;background:linear-gradient(180deg,rgba(8,28,46,.96),rgba(4,16,29,.98));box-shadow:0 22px 60px rgba(0,0,0,.5),0 0 26px rgba(20,174,234,.11);backdrop-filter:blur(18px);pointer-events:auto}
.nv-cookie-copy{display:flex;align-items:flex-start;gap:14px;min-width:0}
.nv-cookie-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border:1px solid rgba(56,205,255,.34);border-radius:12px;background:rgba(13,106,151,.2);color:#3ad9ff;font-size:18px}
.nv-cookie-copy strong{display:block;margin:0 0 4px;color:#fff;font-size:15px}
.nv-cookie-copy p{max-width:620px;margin:0;color:#afc5d1;font-size:12px;line-height:1.45}
.nv-cookie-copy a{display:inline-block;margin-top:5px;color:#35d8ff;font-size:11px}
.nv-cookie-actions{display:flex;gap:9px;flex:0 0 auto}
.nv-cookie-primary,.nv-cookie-secondary{min-height:40px;border-radius:8px;padding:0 15px;font-size:12px;font-weight:650}
.nv-cookie-primary{border:1px solid #56ddff;color:#02131d;background:linear-gradient(180deg,#35d6ff,#0ba9ef);box-shadow:0 0 16px rgba(0,184,255,.22)}
.nv-cookie-secondary{border:1px solid rgba(113,169,198,.45);color:#e9f6fb;background:rgba(8,27,44,.82)}
@media(min-width:2560px){.nv-home-brand img{width:285px;max-height:66%}.nv-auth-card{width:440px;padding:26px 28px 24px}.nv-auth-logo{width:240px;max-height:86px}.nv-place-card{height:270px}}
@media(max-width:1199px){.nv-home-brand img{width:205px;max-height:56px}.nv-auth-card{width:100%;max-width:520px;margin-left:0}.nv-places{padding:15px}.nv-footer-inner{grid-template-columns:1fr;gap:16px}.nv-footer-links{justify-content:flex-start}.nv-footer-copy{text-align:left}}
@media(max-width:767px){.nv-home-brand img{width:178px}.nv-places{padding:12px;border-radius:14px}.nv-place-card{height:205px}.nv-site-footer{padding:14px 0 20px}.nv-footer-inner{padding:16px;gap:14px}.nv-footer-brand img{width:118px}.nv-footer-links{gap:14px 18px}.nv-cookie-banner{left:12px;right:12px;bottom:12px}.nv-cookie-content{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.nv-cookie-actions{width:100%}.nv-cookie-primary,.nv-cookie-secondary{flex:1}}


/* === NexVerse Home R9: full-width footer + integrated place crops === */
.nv-site-footer{
  width:100%;
  margin:0;
  padding:0;
  background:linear-gradient(180deg,rgba(2,9,18,.97),#020812);
  border-top:1px solid rgba(72,160,207,.2);
  box-shadow:0 -12px 30px rgba(0,0,0,.18);
}
.nv-site-footer .nv-home-container{
  width:100%;
  max-width:none;
  padding:0 clamp(28px,5.2vw,180px)!important;
}
.nv-footer-inner{
  min-height:94px;
  width:100%;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  padding:18px 0;
}
.nv-places{
  margin-top:28px;
  padding:16px 14px 18px;
  border:1px solid rgba(74,157,202,.2);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(3,15,28,.48),rgba(2,10,20,.7));
  backdrop-filter:none;
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.nv-place-card{
  height:clamp(190px,10.8vw,265px);
  overflow:hidden;
  border:1px solid rgba(71,171,222,.3);
  border-radius:12px;
  background:#06111e;
  box-shadow:0 10px 24px rgba(0,0,0,.24);
}
.nv-place-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:none!important;
  transform:none!important;
  image-rendering:auto;
}
.nv-places .row>div:nth-child(1) .nv-place-card img{object-position:10% 72%}
.nv-places .row>div:nth-child(2) .nv-place-card img{object-position:52% 42%}
.nv-places .row>div:nth-child(3) .nv-place-card img{object-position:88% 68%}
.nv-place-card:hover img{transform:scale(1.012)!important}
.nv-place-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(1,7,14,.01) 0%,rgba(1,7,14,.03) 46%,rgba(1,7,14,.76) 100%);
  box-shadow:none;
}
.nv-place-card:after{display:none!important}
.nv-place-overlay{z-index:2;left:16px;right:16px;bottom:12px}
.nv-place-overlay h3{font-size:clamp(17px,.95vw,23px);text-shadow:0 2px 8px rgba(0,0,0,.72)}
.nv-place-overlay p{color:rgba(244,249,252,.9)}
@media(max-width:1199px){
  .nv-site-footer .nv-home-container{padding:0 24px!important}
  .nv-footer-inner{padding:18px 0}
}
@media(max-width:767px){
  .nv-site-footer .nv-home-container{padding:0 14px!important}
  .nv-footer-inner{padding:16px 0}
  .nv-places{padding:12px}
  .nv-place-card{height:210px}
  .nv-places .row>div:nth-child(1) .nv-place-card img{object-position:13% 70%}
  .nv-places .row>div:nth-child(2) .nv-place-card img{object-position:52% 45%}
  .nv-places .row>div:nth-child(3) .nv-place-card img{object-position:87% 69%}
}


/* === NexVerse Home R10: 4 cards, bilingual public UI, legal notice === */
.nv-language-menu{min-width:140px;padding:6px;background:rgba(5,18,31,.98);border:1px solid rgba(63,168,218,.35);box-shadow:0 12px 30px rgba(0,0,0,.35)}
.nv-language-menu .dropdown-item{border-radius:6px;color:#dff6ff;font-size:13px;background:transparent}
.nv-language-menu .dropdown-item:hover{color:#06131d;background:#35d6ff}
.nv-places .row{--bs-gutter-x:12px;--bs-gutter-y:12px}
.nv-places .nv-place-card{height:clamp(180px,9vw,235px);background-image:url('/assets/place-sprite.webp?v=ref-r10');background-repeat:no-repeat;background-size:400% 100%;background-color:#06111e}
.nv-places .row>div:nth-child(1) .nv-place-card{background-position:0 50%}
.nv-places .row>div:nth-child(2) .nv-place-card{background-position:33.333% 50%}
.nv-places .row>div:nth-child(3) .nv-place-card{background-position:66.666% 50%}
.nv-places .row>div:nth-child(4) .nv-place-card{background-position:100% 50%}
.nv-places .nv-place-card>img{display:none}
.nv-places .nv-place-card:hover{filter:brightness(1.04)}
.nv-place-meta{font-size:11px}
.nv-legal-page{min-height:100svh;padding:clamp(110px,7vw,150px) 0 56px;background:linear-gradient(180deg,rgba(2,9,18,.88),#020812),url('/assets/nexverse-home-bg.webp?v=ref-r10') center/cover fixed}
.nv-legal-container{max-width:1180px}
.nv-legal-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;color:#43d9ff;text-decoration:none;font-size:13px}
.nv-legal-card{padding:clamp(24px,3vw,44px);border:1px solid rgba(60,169,219,.32);border-radius:18px;background:linear-gradient(180deg,rgba(7,25,42,.94),rgba(3,14,26,.97));box-shadow:0 24px 70px rgba(0,0,0,.4)}
.nv-legal-kicker{color:#3bdcff;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.nv-legal-card h1{margin:8px 0 5px;font-size:clamp(34px,3vw,54px)}
.nv-legal-lead{color:#aac1cf}
.nv-imprint-warning{display:flex;gap:12px;margin:24px 0;padding:14px 16px;border:1px solid rgba(255,190,72,.38);border-radius:10px;background:rgba(111,70,8,.18);color:#ffe2a5}
.nv-imprint-warning i{font-size:20px}.nv-imprint-warning strong,.nv-imprint-warning span{display:block}.nv-imprint-warning span{margin-top:2px;font-size:12px;color:#d7c29a}
.nv-legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.nv-legal-grid article,.nv-legal-section{padding:18px;border:1px solid rgba(65,143,184,.2);border-radius:12px;background:rgba(3,16,29,.62)}
.nv-legal-card h2{margin:0 0 8px;color:#55dbff;font-size:17px}.nv-legal-card p{margin:0;color:#c7d7e0;line-height:1.65}
.nv-legal-section{margin-top:12px}
@media(max-width:767px){.nv-legal-grid{grid-template-columns:1fr}.nv-legal-page{padding-top:90px}.nv-legal-card{padding:20px}.nv-places .nv-place-card{height:190px}}

.nv-provider-address{white-space:pre-line}
.nv-legal-card a{color:#46d9ff;text-decoration:none}
.nv-legal-card a:hover{text-decoration:underline}

.nv-privacy-note{margin-top:12px!important;color:#8fb1c3!important}
.nv-legal-section code{color:#75e5ff;background:rgba(40,151,201,.12);border:1px solid rgba(64,177,223,.18);padding:1px 5px;border-radius:5px}
.nv-legal-card[hidden]{display:none!important}


/* === R11: separate public navigation pages === */
.nv-public-page{min-height:100svh;background:#020812;color:#fff}
.nv-public-page-hero{position:relative;min-height:54vh;overflow:hidden;padding-top:92px;display:flex;align-items:center}
.nv-public-page-hero .nv-home-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nv-public-page-hero .nv-home-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,8,18,.94) 0%,rgba(2,9,19,.75) 42%,rgba(2,9,19,.42) 100%),linear-gradient(180deg,rgba(1,7,15,.12),#020812 100%)}
.nv-public-page-stage{position:relative;z-index:2;padding-top:56px;padding-bottom:64px}
.nv-public-page-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(61,210,255,.45);border-radius:14px;background:rgba(8,37,57,.72);color:#3bdcff;font-size:26px;box-shadow:0 0 24px rgba(42,194,246,.12)}
.nv-public-kicker{margin:18px 0 5px;color:#3bdcff;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700}
.nv-public-title{max-width:980px;margin:0;font-size:clamp(44px,4.6vw,82px);font-weight:800;letter-spacing:-.04em}
.nv-public-text{max-width:900px;margin:18px 0 0;color:#c7d6df;font-size:clamp(16px,1.05vw,21px);line-height:1.65}
.nv-public-coming{display:inline-flex;align-items:center;gap:9px;margin-top:24px;padding:11px 14px;border:1px solid rgba(62,195,241,.32);border-radius:9px;background:rgba(4,26,43,.7);color:#aeeeff;font-size:13px}
.nv-public-content{padding:30px 0 54px}
.nv-public-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.nv-public-card{overflow:hidden;border:1px solid rgba(65,161,207,.28);border-radius:14px;background:linear-gradient(180deg,rgba(7,25,42,.96),rgba(3,14,26,.98));box-shadow:0 14px 34px rgba(0,0,0,.25)}
.nv-public-card img{width:100%;height:190px;object-fit:cover;display:block}
.nv-public-card>div{padding:17px}
.nv-public-card span{display:inline-block;margin-bottom:8px;color:#39d8ff;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.nv-public-card h2{margin:0 0 6px;font-size:20px}
.nv-public-card p{margin:0;color:#b8cad5;font-size:13px;line-height:1.5}
.nv-public-card small{display:block;margin-top:9px;color:#6e9aae}
@media(max-width:1199px){.nv-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nv-public-page-hero{min-height:48vh}}
@media(max-width:767px){.nv-public-page-hero{padding-top:70px;min-height:44vh}.nv-public-page-stage{padding-top:38px;padding-bottom:42px}.nv-public-grid{grid-template-columns:1fr}.nv-public-card img{height:210px}}


/* === R12: functional public search === */
.nv-search-open{overflow:hidden}
.nv-search-overlay{position:fixed;inset:0;z-index:5000;display:grid;place-items:start center;padding:clamp(92px,9vh,150px) 20px 30px}
.nv-search-overlay[hidden]{display:none!important}
.nv-search-backdrop{position:absolute;inset:0;background:rgba(0,6,14,.76);backdrop-filter:blur(10px)}
.nv-search-panel{position:relative;z-index:1;width:min(760px,100%);border:1px solid rgba(61,191,239,.34);border-radius:18px;background:linear-gradient(180deg,rgba(8,29,47,.98),rgba(3,14,26,.99));box-shadow:0 28px 90px rgba(0,0,0,.56),0 0 34px rgba(26,181,234,.1);padding:20px}
.nv-search-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}
.nv-search-head h2{margin:1px 0 0;color:#fff;font-size:22px}
.nv-search-kicker{color:#3ad9ff;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.nv-search-close{width:38px;height:38px;border:1px solid rgba(111,176,205,.32);border-radius:9px;background:rgba(3,18,31,.7);color:#dff7ff}
.nv-search-field{height:54px;display:flex;align-items:center;gap:12px;border:1px solid rgba(83,171,214,.52);border-radius:11px;background:#061727;padding:0 13px}
.nv-search-field>i{color:#3bdcff;font-size:18px}
.nv-search-field input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff;font-size:15px}
.nv-search-field input::placeholder{color:#7694a6}
.nv-search-field kbd{border:1px solid rgba(117,163,187,.28);border-radius:5px;background:#0b2638;color:#91adbc;font-size:10px;padding:3px 6px;box-shadow:none}
.nv-search-hint{margin:9px 2px 12px;color:#7f9eaf;font-size:11px}
.nv-search-results{display:grid;gap:7px;max-height:min(480px,55vh);overflow:auto}
.nv-search-result{display:grid;grid-template-columns:42px 1fr 26px;align-items:center;gap:11px;padding:10px 11px;border:1px solid transparent;border-radius:10px;color:#eaf7fc;text-decoration:none;background:rgba(4,20,34,.5)}
.nv-search-result:hover,.nv-search-result:focus{border-color:rgba(58,206,255,.37);background:rgba(13,54,79,.68);color:#fff;outline:0}
.nv-search-result>i:first-child{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(58,202,249,.24);border-radius:9px;background:rgba(9,55,79,.45);color:#3bdcff}
.nv-search-result span{min-width:0}.nv-search-result strong,.nv-search-result small{display:block}.nv-search-result strong{font-size:14px}.nv-search-result small{margin-top:2px;color:#7fa0b1;font-size:11px}.nv-search-result>i:last-child{color:#4acff2}
.nv-search-empty{padding:28px 12px;text-align:center;color:#7598aa}.nv-search-empty i{display:block;margin-bottom:8px;font-size:25px;color:#3bdcff}.nv-search-empty strong,.nv-search-empty span{display:block}.nv-search-empty strong{color:#dceef6;font-size:14px}.nv-search-empty span{margin-top:4px;font-size:11px}
@media(max-width:767px){.nv-search-overlay{padding:78px 10px 20px}.nv-search-panel{padding:14px;border-radius:14px}.nv-search-field{height:50px}.nv-search-results{max-height:56vh}}


/* === R13: inline navigation search instead of modal === */
.nv-nav-search{position:relative;display:flex;align-items:center}
.nv-nav-search-box{position:relative;width:clamp(260px,18vw,360px);height:42px;display:flex;align-items:center;gap:9px;border:1px solid rgba(72,181,226,.42);border-radius:9px;background:rgba(4,22,37,.96);box-shadow:0 0 18px rgba(24,172,225,.10);padding:0 8px 0 12px}
.nv-nav-search-box[hidden]{display:none!important}
.nv-nav-search-box>i{color:#42d8ff;font-size:15px}
.nv-nav-search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff;font-size:13px}
.nv-nav-search-box input::placeholder{color:#7695a6}
.nv-nav-search-close{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:#91afbf}
.nv-nav-search-close:hover{background:rgba(55,190,238,.12);color:#fff}
.nv-nav-search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:5200;padding:7px;border:1px solid rgba(61,171,216,.32);border-radius:11px;background:rgba(4,18,31,.99);box-shadow:0 18px 45px rgba(0,0,0,.44)}
.nv-nav-search-results[hidden]{display:none!important}
.nv-nav-search-result{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:9px;padding:8px;border-radius:8px;color:#eaf7fc;text-decoration:none}
.nv-nav-search-result:hover{background:rgba(14,58,83,.78);color:#fff}
.nv-nav-search-result>i{width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(60,195,243,.22);border-radius:8px;color:#3bdcff;background:rgba(7,46,68,.5)}
.nv-nav-search-result strong,.nv-nav-search-result small{display:block}
.nv-nav-search-result strong{font-size:12px}
.nv-nav-search-result small{margin-top:1px;color:#7597a9;font-size:10px}
.nv-nav-search-empty{padding:12px;text-align:center;color:#7898a9;font-size:11px}
@media(max-width:1199px){.nv-nav-search{width:100%}.nv-nav-search-box{width:min(100%,420px)}}
@media(max-width:767px){.nv-nav-search-box{width:100%;height:40px}}


/* === R14: registration hero logo + registration field corrections === */
.nv-register-hero-logo{
  display:block;
  width:clamp(260px,24vw,620px);
  max-width:78%;
  height:auto;
  margin:10px 0 18px;
  object-fit:contain;
  filter:drop-shadow(0 0 22px rgba(0,174,255,.28));
}
.nv-register-rules label{margin:0}
.nv-register-rules a{color:#39d9ff;text-decoration:none}
.nv-register-rules a:hover{text-decoration:underline}
@media(max-width:1199px){
  .nv-register-hero-logo{width:min(520px,82%);max-width:82%}
}
@media(max-width:767px){
  .nv-register-hero-logo{width:min(430px,94%);max-width:94%;margin:8px 0 14px}
}


/* === R15: NexVerse neon brand on public heroes + left alignment === */
.nv-hero-neon-logo{
  display:block;
  width:clamp(300px,25vw,650px);
  max-width:78%;
  height:auto;
  margin:4px 0 14px;
  object-fit:contain;
  filter:drop-shadow(0 0 22px rgba(0,174,255,.30));
}
.nv-public-neon-logo{
  display:block;
  width:clamp(250px,19vw,500px);
  max-width:70%;
  height:auto;
  margin:12px 0 18px;
  object-fit:contain;
  filter:drop-shadow(0 0 20px rgba(0,174,255,.24));
}
.nv-home-stage>.row{
  padding-left:0!important;
  margin-left:0!important;
  margin-right:0!important;
}
.nv-home-stage>.row>.col-xl-8{
  padding-left:14px!important;
}
.nv-home-stage>.row>.col-xl-4{
  padding-right:14px!important;
}
.nv-home-copy,
.nv-home-stats{
  margin-left:0!important;
}
@media(max-width:1199px){
  .nv-home-stage>.row>.col-xl-8,
  .nv-home-stage>.row>.col-xl-4{padding-left:0!important;padding-right:0!important}
  .nv-hero-neon-logo{width:min(540px,84%);max-width:84%}
  .nv-public-neon-logo{width:min(460px,78%);max-width:78%}
}
@media(max-width:767px){
  .nv-hero-neon-logo{width:min(430px,96%);max-width:96%;margin:2px 0 12px}
  .nv-public-neon-logo{width:min(390px,90%);max-width:90%}
}


/* === R16: registration auth footer spacing === */
body[data-active="register"] .nv-auth-footer{
  margin-top:22px;
  padding-top:15px;
  border-top:1px solid rgba(79,139,173,.24);
}
body[data-active="register"] .nv-auth-footer a{
  display:inline-block;
  line-height:1.4;
}
@media(max-width:767px){
  body[data-active="register"] .nv-auth-footer{
    margin-top:18px;
    padding-top:13px;
  }
}


/* === R17: forgot-password page === */
.nv-forgot-page{min-height:100svh;background:#020812;color:#fff}
.nv-forgot-hero{position:relative;min-height:100svh;overflow:hidden;padding-top:78px;display:flex;align-items:center}
.nv-forgot-hero>.nv-home-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nv-forgot-stage{position:relative;z-index:2;display:flex;justify-content:center;padding-top:50px;padding-bottom:70px}
.nv-forgot-card{width:min(480px,100%);padding:28px;border:1px solid rgba(56,166,218,.4);border-radius:16px;background:linear-gradient(180deg,rgba(7,27,45,.96),rgba(3,14,26,.98));box-shadow:0 24px 70px rgba(0,0,0,.48),0 0 24px rgba(22,176,232,.09);text-align:center}
.nv-forgot-logo{display:block;width:min(320px,78%);height:auto;margin:0 auto 8px;filter:drop-shadow(0 0 18px rgba(0,177,255,.25))}
.nv-forgot-icon{width:54px;height:54px;margin:0 auto 12px;display:grid;place-items:center;border:1px solid rgba(57,207,255,.36);border-radius:14px;background:rgba(11,68,96,.42);color:#3bdcff;font-size:23px}
.nv-forgot-card h1{margin:0 0 8px;font-size:clamp(26px,2vw,34px)}
.nv-forgot-card>p{margin:0 auto 22px;max-width:390px;color:#a9c0cd;font-size:13px;line-height:1.55}
.nv-forgot-label{display:block;margin:0 0 7px;text-align:left;color:#d8e8f0;font-size:12px}
.nv-forgot-field{margin-bottom:12px}
.nv-forgot-message{min-height:18px;margin:10px 0 0;font-size:11px}
.nv-forgot-footer{margin-top:20px;padding-top:15px;border-top:1px solid rgba(79,139,173,.24)}
.nv-forgot-footer a{display:inline-flex;align-items:center;gap:7px;color:#39d9ff;text-decoration:none;font-size:12px}
.nv-forgot-footer a:hover{text-decoration:underline}
@media(max-width:767px){.nv-forgot-hero{padding-top:68px}.nv-forgot-stage{padding-top:34px;padding-bottom:40px}.nv-forgot-card{padding:21px 16px}.nv-forgot-logo{width:min(280px,84%)}}


/* === R18: forgot-password uses official NexVerse logo === */
.nv-forgot-logo{
  width:min(240px,68%);
  max-height:86px;
  object-fit:contain;
  margin:0 auto 16px;
  filter:drop-shadow(0 0 14px rgba(0,174,255,.18));
}
@media(max-width:767px){
  .nv-forgot-logo{width:min(210px,72%);max-height:74px}
}


/* === R19: Citizen Portal master layout / one design source === */
:root{
  --nv-portal-sidebar:258px;
  --nv-portal-topbar:76px;
  --nv-portal-max:1760px;
  --nv-portal-gap:14px;
  --nv-portal-radius:12px;
  --nv-portal-border:rgba(33,173,235,.48);
  --nv-portal-border-soft:rgba(53,137,178,.28);
  --nv-portal-bg:#02111d;
  --nv-portal-panel:#06243a;
  --nv-portal-panel-2:#051c2f;
  --nv-portal-cyan:#23cfff;
  --nv-portal-text:#f4fbff;
  --nv-portal-muted:#8eafc0;
}
body[data-section="citizen"]{
  background:var(--nv-portal-bg);
}
body[data-section="citizen"] .portal-shell{
  min-height:100svh;
  background:
    radial-gradient(circle at 70% 8%,rgba(19,92,140,.16),transparent 28%),
    linear-gradient(180deg,#031522 0%,#020d17 100%);
}
body[data-section="citizen"] .portal-sidebar{
  width:var(--nv-portal-sidebar);
  background:linear-gradient(180deg,#03192a 0%,#02111d 100%);
  border-right:1px solid var(--nv-portal-border-soft);
}
body[data-section="citizen"] .sidebar-head{
  padding:18px 20px 16px;
  border-bottom:1px solid rgba(49,137,178,.18);
}
body[data-section="citizen"] .sidebar-head img{
  width:190px;
  max-height:64px;
  object-fit:contain;
}
body[data-section="citizen"] .portal-nav{
  padding:14px 11px 24px;
}
body[data-section="citizen"] .portal-nav a{
  min-height:48px;
  margin:3px 0;
  padding:0 13px;
  border:1px solid transparent;
  border-radius:8px;
  display:flex;
  align-items:center;
  gap:12px;
  color:#c6d9e4;
  font-size:13px;
}
body[data-section="citizen"] .portal-nav a i{
  width:18px;
  color:#7dcdec;
}
body[data-section="citizen"] .portal-nav a.active{
  color:#fff;
  border-color:#27bdf7;
  background:linear-gradient(90deg,#1179df,#159eea);
  box-shadow:0 0 20px rgba(12,166,236,.16);
}
body[data-section="citizen"] .portal-nav a.active i{color:#fff}
body[data-section="citizen"] .portal-main{
  margin-left:var(--nv-portal-sidebar);
  min-height:100svh;
}
body[data-section="citizen"] .portal-topbar{
  height:var(--nv-portal-topbar);
  padding:0 28px;
  border-bottom:1px solid var(--nv-portal-border-soft);
  background:rgba(2,16,28,.95);
  backdrop-filter:blur(16px);
}
body[data-section="citizen"] .portal-search{
  width:min(780px,46vw);
  height:42px;
  border:1px solid rgba(33,174,235,.55);
  border-radius:8px;
  background:#041c2e;
}
body[data-section="citizen"] .portal-content{
  width:min(var(--nv-portal-max),calc(100% - 56px));
  margin:0 auto;
  padding:28px 0 52px;
}
body[data-section="citizen"] .portal-hero,
body[data-section="citizen"] .portal-page-head,
body[data-section="citizen"] .panel-card,
body[data-section="citizen"] .stat-card,
body[data-section="citizen"] .content-card{
  border:1px solid var(--nv-portal-border);
  border-radius:var(--nv-portal-radius);
  background:linear-gradient(180deg,rgba(7,38,61,.94),rgba(4,25,42,.98));
  box-shadow:0 10px 28px rgba(0,0,0,.16);
}
body[data-section="citizen"] .portal-page-head{
  min-height:126px;
  display:flex;
  align-items:center;
  gap:18px;
  margin:0 0 16px;
  padding:22px 24px;
}
body[data-section="citizen"] .portal-page-head-icon{
  width:54px;
  height:54px;
  flex:0 0 54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(42,206,255,.4);
  border-radius:12px;
  background:rgba(15,101,142,.25);
  color:var(--nv-portal-cyan);
  font-size:24px;
}
body[data-section="citizen"] .portal-page-kicker{
  display:block;
  margin-bottom:2px;
  color:var(--nv-portal-cyan);
  text-transform:uppercase;
  letter-spacing:.11em;
  font-size:10px;
  font-weight:700;
}
body[data-section="citizen"] .portal-page-head h1{
  margin:0;
  color:var(--nv-portal-text);
  font-size:clamp(28px,2vw,38px);
  line-height:1.05;
  font-weight:800;
}
body[data-section="citizen"] .portal-page-head p{
  margin:7px 0 0;
  color:var(--nv-portal-muted);
  font-size:13px;
  line-height:1.5;
}
body[data-section="citizen"] .portal-hero{
  overflow:hidden;
  min-height:180px;
}
body[data-section="citizen"] .stats-grid{
  gap:var(--nv-portal-gap);
}
body[data-section="citizen"] .stat-card{
  min-height:92px;
  padding:14px 16px;
}
body[data-section="citizen"] .dashboard-grid,
body[data-section="citizen"] .content-grid,
body[data-section="citizen"] .friends-layout,
body[data-section="citizen"] .card-grid{
  gap:var(--nv-portal-gap);
}
body[data-section="citizen"] .panel-card{
  padding:15px;
}
body[data-section="citizen"] .panel-title{
  min-height:34px;
  margin-bottom:10px;
  padding-bottom:9px;
  border-bottom:1px solid rgba(68,139,174,.23);
}
body[data-section="citizen"] .panel-title h3{
  margin:0;
  color:#f3fbff;
  font-size:13px;
  font-weight:700;
}
body[data-section="citizen"] .panel-title h3 i{color:var(--nv-portal-cyan)}
body[data-section="citizen"] .panel-title a,
body[data-section="citizen"] .panel-title button{
  color:#42d9ff;
  font-size:10px;
}
body[data-section="citizen"] .content-card{
  overflow:hidden;
}
body[data-section="citizen"] .content-card img{
  height:165px;
  object-fit:cover;
}
body[data-section="citizen"] .filter-bar,
body[data-section="citizen"] .table-controls{
  border:1px solid var(--nv-portal-border-soft);
  border-radius:10px;
  background:rgba(5,31,50,.72);
  padding:10px;
}
body[data-section="citizen"] .form-control,
body[data-section="citizen"] .form-select{
  min-height:40px;
  border:1px solid rgba(62,145,185,.38);
  background:#041b2c;
  color:#e9f8ff;
}
body[data-section="citizen"] .form-control:focus,
body[data-section="citizen"] .form-select:focus{
  border-color:#27c9ff;
  box-shadow:0 0 0 2px rgba(39,201,255,.1);
  background:#041b2c;
  color:#fff;
}
body[data-section="citizen"] .btn-glow{
  border-color:#2ecfff;
  background:linear-gradient(180deg,#22cfff,#0c8de0);
  color:#03131d;
}
body[data-section="citizen"] .btn-outline-glow{
  border-color:rgba(50,187,238,.55);
  color:#bdeeff;
  background:rgba(4,30,48,.56);
}
body[data-section="citizen"] .map-layout{
  gap:var(--nv-portal-gap);
}
body[data-section="citizen"] .city-map{
  border-radius:10px;
  overflow:hidden;
}
body[data-section="citizen"] .profile-hero{
  min-height:105px;
  display:flex;
  align-items:center;
}
body[data-section="citizen"] .ordinance h2{
  margin-top:18px;
  color:#5ddfff;
  font-size:15px;
}
body[data-section="citizen"] .ordinance h2:first-child{margin-top:0}
@media(min-width:2560px){
  body[data-section="citizen"] .portal-content{width:min(1860px,calc(100% - 80px))}
  body[data-section="citizen"] .portal-topbar{padding-left:34px;padding-right:34px}
}
@media(max-width:1199px){
  body[data-section="citizen"] .portal-main{margin-left:0}
  body[data-section="citizen"] .portal-content{width:min(100% - 32px,1200px);padding-top:20px}
  body[data-section="citizen"] .portal-topbar{height:auto;min-height:68px;padding:10px 16px}
  body[data-section="citizen"] .portal-search{width:min(100%,560px)}
}
@media(max-width:767px){
  body[data-section="citizen"] .portal-content{width:min(100% - 20px,760px);padding:14px 0 30px}
  body[data-section="citizen"] .portal-page-head{min-height:0;padding:16px;gap:12px}
  body[data-section="citizen"] .portal-page-head-icon{width:44px;height:44px;flex-basis:44px;font-size:20px}
  body[data-section="citizen"] .portal-page-head h1{font-size:25px}
  body[data-section="citizen"] .portal-page-head p{font-size:12px}
  body[data-section="citizen"] .panel-card{padding:12px}
}


/* === R20: fullscreen citizen/admin portal + aligned topbar + footer === */
body[data-section="citizen"] .portal-shell,
body[data-section="admin"] .portal-shell{
  width:100%;
  min-height:100svh;
}
body[data-section="citizen"] .portal-main,
body[data-section="admin"] .portal-main{
  min-height:100svh;
  width:calc(100% - var(--nv-portal-sidebar));
  margin-left:var(--nv-portal-sidebar);
  display:flex;
  flex-direction:column;
}
body[data-section="citizen"] .portal-topbar,
body[data-section="admin"] .portal-topbar{
  width:100%;
  min-height:var(--nv-portal-topbar);
  padding:0 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid var(--nv-portal-border-soft);
  background:rgba(2,16,28,.96);
}
body[data-section="citizen"] .portal-topbar .portal-search,
body[data-section="admin"] .portal-topbar .portal-search{
  flex:1 1 auto;
  width:auto;
  max-width:820px;
}
body[data-section="citizen"] .topbar-actions,
body[data-section="admin"] .topbar-actions{
  margin-left:auto;
  flex:0 0 auto;
}
body[data-section="citizen"] .portal-content,
body[data-section="admin"] .portal-content{
  width:100%;
  max-width:none;
  margin:0;
  padding:22px 28px 34px;
  flex:1 0 auto;
}
body[data-section="citizen"] .portal-hero,
body[data-section="admin"] .portal-hero,
body[data-section="citizen"] .portal-page-head,
body[data-section="admin"] .portal-page-head,
body[data-section="citizen"] .stats-grid,
body[data-section="admin"] .stats-grid,
body[data-section="citizen"] .dashboard-grid,
body[data-section="admin"] .dashboard-grid,
body[data-section="citizen"] .content-grid,
body[data-section="admin"] .content-grid,
body[data-section="citizen"] .friends-layout,
body[data-section="admin"] .friends-layout,
body[data-section="citizen"] .card-grid,
body[data-section="admin"] .card-grid{
  width:100%;
  max-width:none;
}
.portal-footer{
  width:100%;
  margin-top:auto;
  border-top:1px solid rgba(58,144,186,.24);
  background:linear-gradient(180deg,rgba(2,15,26,.98),rgba(1,10,18,1));
}
.portal-footer-inner{
  min-height:84px;
  width:100%;
  display:grid;
  grid-template-columns:minmax(280px,1fr) auto minmax(260px,1fr);
  align-items:center;
  gap:24px;
  padding:14px 28px;
}
.portal-footer-brand{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
}
.portal-footer-brand img{
  width:120px;
  max-height:50px;
  height:auto;
  object-fit:contain;
}
.portal-footer-brand strong,
.portal-footer-brand span{
  display:block;
}
.portal-footer-brand strong{
  color:#f2f9fd;
  font-size:12px;
}
.portal-footer-brand span{
  margin-top:2px;
  color:#7898a9;
  font-size:10px;
}
.portal-footer-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  flex-wrap:wrap;
}
.portal-footer-links a{
  color:#9db7c5;
  text-decoration:none;
  font-size:10px;
}
.portal-footer-links a:hover{
  color:#39d9ff;
}
.portal-footer-copy{
  text-align:right;
  color:#617f90;
  font-size:10px;
}
@media(min-width:2560px){
  body[data-section="citizen"] .portal-content,
  body[data-section="admin"] .portal-content,
  body[data-section="citizen"] .portal-topbar,
  body[data-section="admin"] .portal-topbar,
  .portal-footer-inner{
    padding-left:36px;
    padding-right:36px;
  }
}
@media(max-width:1199px){
  body[data-section="citizen"] .portal-main,
  body[data-section="admin"] .portal-main{
    width:100%;
    margin-left:0;
  }
  body[data-section="citizen"] .portal-topbar,
  body[data-section="admin"] .portal-topbar{
    min-height:68px;
    padding:10px 18px;
    flex-wrap:wrap;
  }
  body[data-section="citizen"] .portal-topbar .portal-search,
  body[data-section="admin"] .portal-topbar .portal-search{
    order:2;
    flex-basis:100%;
    max-width:none;
  }
  body[data-section="citizen"] .portal-content,
  body[data-section="admin"] .portal-content{
    padding:18px 18px 28px;
  }
  .portal-footer-inner{
    grid-template-columns:1fr;
    gap:12px;
    padding:16px 18px;
  }
  .portal-footer-links{justify-content:flex-start}
  .portal-footer-copy{text-align:left}
}
@media(max-width:767px){
  body[data-section="citizen"] .portal-topbar,
  body[data-section="admin"] .portal-topbar{
    padding:8px 10px;
  }
  body[data-section="citizen"] .portal-content,
  body[data-section="admin"] .portal-content{
    padding:12px 10px 22px;
  }
  .portal-footer-inner{
    padding:14px 10px;
  }
  .portal-footer-brand img{width:104px}
}


/* === R21: remove double sidebar offset / close content gap === */
body[data-section="citizen"] .portal-main,
body[data-section="admin"] .portal-main{
  margin-left:0!important;
  width:auto!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
body[data-section="citizen"] .portal-topbar,
body[data-section="admin"] .portal-topbar,
body[data-section="citizen"] .portal-content,
body[data-section="admin"] .portal-content,
body[data-section="citizen"] .portal-footer,
body[data-section="admin"] .portal-footer{
  margin-left:0!important;
}


/* === R22: service welcome === */
.nv-service-welcome{
  width:100%;
  min-height:100svh;
  background:#020812;
}
.nv-service-welcome-bg{
  width:100%;
  min-height:100svh;
  background-image:url('/assets/service-welcome-bg.jpeg?v=ref-r22');
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
}
@media(max-width:1199px){
  .nv-service-welcome-bg{
    min-height:100svh;
    background-position:center center;
  }
}
@media(max-width:767px){
  .nv-service-welcome-bg{
    min-height:100svh;
    background-size:cover;
    background-position:center center;
  }
}


/* === R129: Admin typography and spacing polish === */
body[data-section="admin"]{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body[data-section="admin"] .sidebar-head h3{
  margin:8px 0 2px;
  color:#f4fbff;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.01em;
}
body[data-section="admin"] .sidebar-head p{
  margin:0;
  color:#789cad;
  font-size:10.5px;
  line-height:1.45;
}
body[data-section="admin"] .portal-nav a{
  gap:11px;
  min-height:42px;
  padding:0 12px;
  font-size:12.5px;
  font-weight:500;
  line-height:1.3;
  letter-spacing:.005em;
}
body[data-section="admin"] .portal-nav a i{
  width:17px;
  min-width:17px;
  font-size:13px;
}
body[data-section="admin"] .portal-topbar{
  min-height:58px;
}
body[data-section="admin"] .portal-search input{
  font-size:12.5px;
  line-height:1.35;
}
body[data-section="admin"] .user-chip{
  gap:8px;
}
body[data-section="admin"] .user-chip strong{
  display:block;
  color:#f5fbff;
  font-size:12.5px;
  font-weight:700;
  line-height:1.15;
}
body[data-section="admin"] .user-chip small{
  display:block;
  margin-top:2px;
  color:#7f9faf;
  font-size:9.5px;
  line-height:1.2;
}
body[data-section="admin"] #portalLogout{
  min-height:30px;
  padding:4px 9px;
  font-size:10.5px;
  font-weight:600;
}
body[data-section="admin"] .portal-hero-overlay h1{
  margin-bottom:8px;
  font-size:clamp(34px,2.45vw,54px);
  font-weight:800;
  line-height:1.06;
  letter-spacing:-.025em;
}
body[data-section="admin"] .portal-hero-overlay p{
  max-width:780px;
  margin:0;
  color:#b7ccd8;
  font-size:13px;
  line-height:1.55;
}
body[data-section="admin"] .stat-card{
  padding:13px 15px;
}
body[data-section="admin"] .stat-card>i{
  font-size:21px;
}
body[data-section="admin"] .stat-card strong{
  display:block;
  margin-bottom:3px;
  font-size:20px;
  font-weight:800;
  line-height:1;
  letter-spacing:-.02em;
}
body[data-section="admin"] .stat-card span{
  display:block;
  color:#b8cbd6;
  font-size:10.5px;
  font-weight:500;
  line-height:1.35;
}
body[data-section="admin"] .stat-card small{
  font-size:9.5px;
  line-height:1.3;
  white-space:nowrap;
}
body[data-section="admin"] .panel-card{
  padding:14px 15px 15px;
}
body[data-section="admin"] .panel-title{
  gap:14px;
  margin-bottom:9px;
}
body[data-section="admin"] .panel-title h3{
  margin:0;
  font-size:12.5px;
  font-weight:700;
  line-height:1.25;
  letter-spacing:-.005em;
}
body[data-section="admin"] .panel-title h3 i{
  margin-right:4px;
}
body[data-section="admin"] .panel-title a,
body[data-section="admin"] .panel-title button{
  flex:0 0 auto;
  font-size:9.5px;
  font-weight:600;
  line-height:1.2;
}
body[data-section="admin"] .panel-card p{
  margin:0;
  max-width:72ch;
  color:#abc0cc;
  font-size:11px;
  line-height:1.55;
}
body[data-section="admin"] .status-row{
  gap:14px;
  padding:8px 0;
  font-size:10.5px;
  line-height:1.4;
}
body[data-section="admin"] .status-row span{
  min-width:0;
  overflow-wrap:anywhere;
}
body[data-section="admin"] .status-row strong{
  font-weight:700;
}
body[data-section="admin"] .status-row b{
  flex:0 0 auto;
  font-size:10px;
}
body[data-section="admin"] .page-heading h1{
  margin-bottom:6px;
  font-size:clamp(24px,1.7vw,34px);
  line-height:1.1;
}
body[data-section="admin"] .page-heading p,
body[data-section="admin"] #adminApiStatus,
body[data-section="admin"] .form-message{
  font-size:11px;
  line-height:1.5;
}
body[data-section="admin"] .portal-table th{
  font-size:10.5px;
  font-weight:700;
  line-height:1.3;
}
body[data-section="admin"] .portal-table td{
  font-size:11px;
  line-height:1.45;
}
body[data-section="admin"] .portal-footer-brand strong{
  font-size:10.5px;
}
body[data-section="admin"] .portal-footer-brand span,
body[data-section="admin"] .portal-footer-links a,
body[data-section="admin"] .portal-footer-copy{
  font-size:9px;
  line-height:1.35;
}
@media(max-width:1199px){
}
@media(max-width:767px){
  body[data-section="admin"] .portal-hero-overlay h1{
    font-size:32px;
  }
  body[data-section="admin"] .portal-hero-overlay p{
    font-size:12px;
  }
}


/* === R141: API key management === */
body[data-section="admin"] .admin-key-manager{
  display:grid;
  gap:14px;
  margin-bottom:14px;
}
body[data-section="admin"] .admin-key-intro{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:14px;
  border:1px solid rgba(49,157,205,.26);
  border-radius:10px;
  background:rgba(3,20,34,.55);
}
body[data-section="admin"] .admin-key-intro strong,
body[data-section="admin"] .admin-key-intro span{
  display:block;
}
body[data-section="admin"] .admin-key-intro strong{
  color:#eef9fe;
  font-size:13px;
}
body[data-section="admin"] .admin-key-intro span{
  margin-top:3px;
  color:#91afbf;
  font-size:10.5px;
  line-height:1.45;
}
body[data-section="admin"] .admin-key-form{
  display:grid;
  gap:14px;
  padding:15px;
  border:1px solid rgba(40,198,244,.32);
  border-radius:10px;
  background:rgba(4,25,42,.72);
}
body[data-section="admin"] .admin-key-form[hidden],
body[data-section="admin"] .admin-key-secret[hidden]{
  display:none!important;
}
body[data-section="admin"] .admin-key-form label,
body[data-section="admin"] .admin-key-form legend{
  color:#cfe6f1;
  font-size:11px;
  font-weight:600;
}
body[data-section="admin"] .admin-key-form .form-control{
  margin-top:6px;
}
body[data-section="admin"] .admin-key-form fieldset{
  margin:0;
  padding:0;
  border:0;
}
body[data-section="admin"] .admin-scope-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:8px;
}
body[data-section="admin"] .admin-scope-grid label{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 9px;
  border:1px solid rgba(55,139,177,.22);
  border-radius:7px;
  background:rgba(2,17,29,.62);
  color:#a9c3d0;
  font-size:10px;
  font-weight:500;
}
body[data-section="admin"] .admin-key-secret{
  padding:14px;
  border:1px solid rgba(255,190,72,.48);
  border-radius:10px;
  background:rgba(102,66,8,.18);
}
body[data-section="admin"] .admin-key-secret strong,
body[data-section="admin"] .admin-key-secret span{
  display:block;
}
body[data-section="admin"] .admin-key-secret strong{
  color:#ffe3a4;
  font-size:12px;
}
body[data-section="admin"] .admin-key-secret span,
body[data-section="admin"] #adminApiKeyNote{
  margin-top:3px;
  color:#d1bc91;
  font-size:10px;
  line-height:1.45;
}
body[data-section="admin"] .admin-key-secret-row{
  display:flex;
  gap:8px;
  align-items:center;
  margin-top:10px;
}
body[data-section="admin"] .admin-key-secret-row code{
  flex:1 1 auto;
  min-width:0;
  padding:9px 10px;
  overflow:auto;
  border:1px solid rgba(255,203,94,.26);
  border-radius:7px;
  background:#071019;
  color:#ffe5ad;
  font-size:10px;
  white-space:nowrap;
}
body[data-section="admin"] .admin-empty-state{
  display:grid;
  justify-items:center;
  gap:6px;
  padding:34px 18px;
  text-align:center;
  border:1px dashed rgba(61,151,194,.28);
  border-radius:10px;
  color:#8eabba;
}
body[data-section="admin"] .admin-empty-state i{
  color:#35d8ff;
  font-size:26px;
}
body[data-section="admin"] .admin-empty-state strong{
  color:#dceef6;
  font-size:12px;
}
body[data-section="admin"] .admin-empty-state span{
  max-width:560px;
  font-size:10.5px;
  line-height:1.5;
}
body[data-section="admin"] .admin-key-scopes{
  max-width:420px;
  color:#9fd6ea;
  white-space:normal;
  overflow-wrap:anywhere;
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-key-intro{flex-direction:column}
  body[data-section="admin"] .admin-scope-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-key-secret-row{align-items:stretch;flex-direction:column}
}


/* === R144: collapsible API key scope guide === */
body[data-section="admin"] .admin-key-help{
  padding:11px 12px;
  border-left:3px solid #25cfff;
  border-radius:6px;
  background:rgba(22,108,145,.12);
}
body[data-section="admin"] .admin-key-help strong,
body[data-section="admin"] .admin-key-help span{
  display:block;
}
body[data-section="admin"] .admin-key-help strong{
  color:#dff7ff;
  font-size:11px;
}
body[data-section="admin"] .admin-key-help span,
body[data-section="admin"] .admin-scope-hint{
  margin-top:3px;
  color:#8fabb9;
  font-size:10px;
  line-height:1.5;
}
body[data-section="admin"] .admin-key-help code{
  color:#54dcff;
}
body[data-section="admin"] .admin-scope-groups{
  display:grid;
  gap:7px;
  margin-top:8px;
}
body[data-section="admin"] .admin-scope-groups details{
  overflow:hidden;
  border:1px solid rgba(53,151,194,.28);
  border-radius:8px;
  background:rgba(2,17,29,.56);
}
body[data-section="admin"] .admin-scope-groups summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 12px;
  cursor:pointer;
  list-style:none;
  color:#d8edf6;
  user-select:none;
}
body[data-section="admin"] .admin-scope-groups summary::-webkit-details-marker{display:none}
body[data-section="admin"] .admin-scope-groups summary>span{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:10.5px;
  font-weight:700;
}
body[data-section="admin"] .admin-scope-groups summary>span i{color:#35d8ff}
body[data-section="admin"] .admin-scope-groups summary small{
  color:#7899aa;
  font-size:9px;
  font-weight:500;
}
body[data-section="admin"] .admin-scope-groups details[open] summary{
  border-bottom:1px solid rgba(53,151,194,.18);
  background:rgba(16,75,101,.16);
}
body[data-section="admin"] .admin-scope-list{
  display:grid;
  gap:6px;
  padding:9px;
}
body[data-section="admin"] .admin-scope-list label{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:start;
  gap:9px;
  padding:8px 9px;
  border:1px solid rgba(48,124,159,.18);
  border-radius:7px;
  background:rgba(3,22,36,.5);
  cursor:pointer;
}
body[data-section="admin"] .admin-scope-list input{
  margin-top:3px;
}
body[data-section="admin"] .admin-scope-list b,
body[data-section="admin"] .admin-scope-list small{
  display:block;
}
body[data-section="admin"] .admin-scope-list b{
  color:#bcecff;
  font-size:10px;
  font-weight:700;
}
body[data-section="admin"] .admin-scope-list small{
  margin-top:2px;
  color:#809eae;
  font-size:9.5px;
  font-weight:400;
  line-height:1.45;
}


/* === R148: vertical API-key scope layout === */
body[data-section="admin"] .admin-key-help{
  margin-bottom:10px;
  padding:14px 16px;
  border-left:4px solid #29d3ff;
  border-radius:8px;
  background:rgba(20,104,138,.14);
}
body[data-section="admin"] .admin-key-help strong,
body[data-section="admin"] .admin-key-help span{
  display:block;
}
body[data-section="admin"] .admin-key-help strong{
  margin-bottom:4px;
  color:#e6f8ff;
  font-size:12px;
  font-weight:700;
  line-height:1.35;
}
body[data-section="admin"] .admin-key-help span{
  color:#a5c0ce;
  font-size:10.5px;
  line-height:1.6;
}
body[data-section="admin"] .admin-key-help code{
  color:#57ddff;
  font-size:10.5px;
}
body[data-section="admin"] .admin-scope-hint{
  display:block;
  margin:4px 0 10px!important;
  max-width:none!important;
  color:#90adbb!important;
  font-size:10.5px!important;
  line-height:1.55!important;
}
body[data-section="admin"] .admin-scope-groups{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:10px;
}
body[data-section="admin"] .admin-scope-groups details{
  display:block;
  width:100%;
  overflow:hidden;
  border:1px solid rgba(57,152,197,.26);
  border-radius:10px;
  background:rgba(4,20,34,.72);
}
body[data-section="admin"] .admin-scope-groups summary{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:4px;
  width:100%;
  padding:12px 14px;
  cursor:pointer;
  list-style:none;
  color:#d8edf6;
  user-select:none;
}
body[data-section="admin"] .admin-scope-groups summary::-webkit-details-marker{
  display:none;
}
body[data-section="admin"] .admin-scope-groups summary>span{
  display:flex;
  align-items:center;
  gap:8px;
  width:100%;
  color:#e3f5fc;
  font-size:11.5px;
  font-weight:700;
  line-height:1.35;
}
body[data-section="admin"] .admin-scope-groups summary>span i{
  flex:0 0 auto;
  color:#38d8ff;
  font-size:12px;
}
body[data-section="admin"] .admin-scope-groups summary>small{
  display:block;
  width:100%;
  padding-left:20px;
  color:#86a3b2;
  font-size:9.8px;
  font-weight:400;
  line-height:1.5;
  text-align:left;
}
body[data-section="admin"] .admin-scope-groups details[open] summary{
  border-bottom:1px solid rgba(57,152,197,.18);
  background:rgba(18,86,116,.18);
}
body[data-section="admin"] .admin-scope-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  padding:12px;
}
body[data-section="admin"] .admin-scope-list label{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  align-items:start;
  gap:10px;
  width:100%;
  min-height:0;
  padding:10px 12px;
  border:1px solid rgba(58,135,171,.20);
  border-radius:8px;
  background:rgba(5,24,38,.62);
  cursor:pointer;
}
body[data-section="admin"] .admin-scope-list label:hover{
  border-color:rgba(74,182,227,.34);
  background:rgba(10,35,52,.72);
}
body[data-section="admin"] .admin-scope-list input[type="checkbox"]{
  margin-top:3px;
}
body[data-section="admin"] .admin-scope-list label>span{
  display:block;
  min-width:0;
}
body[data-section="admin"] .admin-scope-list b,
body[data-section="admin"] .admin-scope-list small{
  display:block;
  width:100%;
}
body[data-section="admin"] .admin-scope-list b{
  margin-bottom:2px;
  color:#bfeeff;
  font-size:10.6px;
  font-weight:700;
  line-height:1.4;
}
body[data-section="admin"] .admin-scope-list small{
  margin-top:0;
  color:#8eaab8;
  font-size:9.8px;
  font-weight:400;
  line-height:1.55;
  white-space:normal;
}
body[data-section="admin"] .admin-key-form{
  gap:16px;
  padding:16px;
}
body[data-section="admin"] .admin-key-form legend{
  margin-bottom:4px;
  line-height:1.4;
}
body[data-section="admin"] .admin-key-form .d-flex{
  display:flex;
  flex-wrap:wrap;
  gap:10px!important;
  margin-top:4px;
}
@media(max-width:767px){
  body[data-section="admin"] .admin-scope-groups summary{
    padding:11px 12px;
  }
  body[data-section="admin"] .admin-scope-groups summary>small{
    padding-left:0;
  }
  body[data-section="admin"] .admin-scope-list label{
    grid-template-columns:18px minmax(0,1fr);
    padding:10px;
  }
}


/* === R150: German scope labels with technical names === */
body[data-section="admin"] .admin-scope-list em{
  display:block;
  width:100%;
  margin:1px 0 3px;
  color:#57cbe8;
  font-size:9px;
  font-style:normal;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.01em;
}
body[data-section="admin"] .admin-scope-list b{
  font-size:11px;
  color:#e0f6ff;
}
body[data-section="admin"] .admin-scope-list small{
  color:#91adbb;
  font-size:9.7px;
}


/* === R158: machine scope restriction notice === */
body[data-section="admin"] .admin-scope-info{
  display:grid;
  gap:5px;
  padding:12px;
  background:rgba(92,58,8,.14);
  color:#c8b487;
}
body[data-section="admin"] .admin-scope-info strong{
  color:#ffe4a7;
  font-size:10.5px;
  line-height:1.4;
}
body[data-section="admin"] .admin-scope-info span{
  display:block;
  font-size:9.7px;
  line-height:1.55;
}
body[data-section="admin"] .admin-scope-info code{
  color:#ffd98b;
  font-size:9.5px;
}


/* === R170: Admin widescreen readability === */
@media(min-width:1920px){
  body[data-section="admin"] .portal-sidebar{
    width:280px;
    flex-basis:280px;
  }
  body[data-section="admin"] .sidebar-head h3{
    font-size:17px;
  }
  body[data-section="admin"] .sidebar-head p{
    font-size:12px;
  }
  body[data-section="admin"] .portal-nav a{
    min-height:46px;
    padding:0 14px;
    font-size:14px;
  }
  body[data-section="admin"] .portal-nav a i{
    width:19px;
    min-width:19px;
    font-size:15px;
  }
  body[data-section="admin"] .portal-topbar{
    min-height:66px;
    padding-left:26px;
    padding-right:26px;
  }
  body[data-section="admin"] .portal-search input{
    font-size:14px;
  }
  body[data-section="admin"] .user-chip strong{
    font-size:14px;
  }
  body[data-section="admin"] .user-chip small{
    font-size:11px;
  }
  body[data-section="admin"] #portalLogout{
    min-height:34px;
    padding:5px 11px;
    font-size:12px;
  }
  body[data-section="admin"] .portal-content{
    max-width:2200px;
    padding:22px 26px 36px;
  }
  body[data-section="admin"] .portal-hero{
    height:290px;
  }
  body[data-section="admin"] .portal-hero-overlay h1{
    font-size:clamp(44px,2.5vw,62px);
  }
  body[data-section="admin"] .portal-hero-overlay p{
    max-width:900px;
    font-size:15px;
    line-height:1.6;
  }
  body[data-section="admin"] .stats-grid{
    gap:15px;
  }
  body[data-section="admin"] .stat-card{
    min-height:88px;
    padding:17px 18px;
  }
  body[data-section="admin"] .stat-card>i{
    font-size:26px;
  }
  body[data-section="admin"] .stat-card strong{
    font-size:25px;
  }
  body[data-section="admin"] .stat-card span{
    font-size:12.5px;
  }
  body[data-section="admin"] .stat-card small{
    font-size:11px;
  }
  body[data-section="admin"] .dashboard-grid{
    gap:15px;
  }
  body[data-section="admin"] .panel-card{
    padding:18px 19px;
  }
  body[data-section="admin"] .panel-title h3{
    font-size:14px;
  }
  body[data-section="admin"] .panel-title a,
  body[data-section="admin"] .panel-title button{
    font-size:11px;
  }
  body[data-section="admin"] .panel-card p{
    font-size:12.5px;
    line-height:1.6;
  }
  body[data-section="admin"] .status-row{
    padding:10px 0;
    font-size:12px;
  }
  body[data-section="admin"] .status-row b{
    font-size:11px;
  }
  body[data-section="admin"] .page-heading{
    min-height:135px;
    padding:24px 28px;
  }
  body[data-section="admin"] .page-heading h1{
    font-size:36px;
  }
  body[data-section="admin"] .page-heading p,
  body[data-section="admin"] #adminApiStatus,
  body[data-section="admin"] .form-message{
    font-size:12.5px;
  }
  body[data-section="admin"] .portal-table th{
    font-size:12px;
  }
  body[data-section="admin"] .portal-table td{
    font-size:12.5px;
  }
  body[data-section="admin"] .admin-key-intro strong{
    font-size:14px;
  }
  body[data-section="admin"] .admin-key-intro span,
  body[data-section="admin"] .admin-key-help span,
  body[data-section="admin"] .admin-scope-hint{
    font-size:11.5px!important;
  }
  body[data-section="admin"] .admin-scope-groups summary>span{
    font-size:12.5px;
  }
  body[data-section="admin"] .admin-scope-groups summary>small,
  body[data-section="admin"] .admin-scope-list em{
    font-size:10.5px;
  }
  body[data-section="admin"] .admin-scope-list b{
    font-size:12px;
  }
  body[data-section="admin"] .admin-scope-list small{
    font-size:11px;
  }
}

@media(min-width:2560px){
  body[data-section="admin"] .portal-sidebar{
    width:310px;
    flex-basis:310px;
    padding-left:16px;
    padding-right:16px;
  }
  body[data-section="admin"] .sidebar-head h3{
    font-size:19px;
  }
  body[data-section="admin"] .sidebar-head p{
    font-size:13px;
  }
  body[data-section="admin"] .portal-nav a{
    min-height:50px;
    font-size:15.5px;
  }
  body[data-section="admin"] .portal-nav a i{
    font-size:16px;
  }
  body[data-section="admin"] .portal-topbar{
    min-height:72px;
    padding-left:32px;
    padding-right:32px;
  }
  body[data-section="admin"] .portal-search input{
    font-size:15px;
  }
  body[data-section="admin"] .user-chip strong{
    font-size:15px;
  }
  body[data-section="admin"] .user-chip small{
    font-size:12px;
  }
  body[data-section="admin"] #portalLogout{
    font-size:13px;
  }
  body[data-section="admin"] .portal-content{
    width:calc(100% - 72px);
    max-width:3000px;
    padding:28px 0 44px;
  }
  body[data-section="admin"] .portal-hero{
    height:330px;
  }
  body[data-section="admin"] .portal-hero-overlay{
    left:46px;
    max-width:1100px;
  }
  body[data-section="admin"] .portal-hero-overlay h1{
    font-size:64px;
  }
  body[data-section="admin"] .portal-hero-overlay p{
    font-size:17px;
  }
  body[data-section="admin"] .stat-card{
    min-height:102px;
    padding:20px 22px;
  }
  body[data-section="admin"] .stat-card>i{
    font-size:30px;
  }
  body[data-section="admin"] .stat-card strong{
    font-size:30px;
  }
  body[data-section="admin"] .stat-card span{
    font-size:14px;
  }
  body[data-section="admin"] .stat-card small{
    font-size:12px;
  }
  body[data-section="admin"] .panel-card{
    padding:21px 22px;
  }
  body[data-section="admin"] .panel-title h3{
    font-size:16px;
  }
  body[data-section="admin"] .panel-title a,
  body[data-section="admin"] .panel-title button{
    font-size:12.5px;
  }
  body[data-section="admin"] .panel-card p{
    max-width:86ch;
    font-size:14px;
  }
  body[data-section="admin"] .status-row{
    font-size:13.5px;
  }
  body[data-section="admin"] .status-row b{
    font-size:12px;
  }
  body[data-section="admin"] .page-heading{
    min-height:155px;
    padding:28px 34px;
  }
  body[data-section="admin"] .page-heading h1{
    font-size:42px;
  }
  body[data-section="admin"] .page-heading p,
  body[data-section="admin"] #adminApiStatus,
  body[data-section="admin"] .form-message{
    font-size:14px;
  }
  body[data-section="admin"] .portal-table th{
    padding-top:13px;
    padding-bottom:13px;
    font-size:13px;
  }
  body[data-section="admin"] .portal-table td{
    padding-top:13px;
    padding-bottom:13px;
    font-size:14px;
  }
  body[data-section="admin"] .portal-footer-brand strong{
    font-size:12px;
  }
  body[data-section="admin"] .portal-footer-brand span,
  body[data-section="admin"] .portal-footer-links a,
  body[data-section="admin"] .portal-footer-copy{
    font-size:10.5px;
  }
}


@media(min-width:3200px){
  body[data-section="admin"] .portal-sidebar{
    width:330px;
    flex-basis:330px;
  }
  body[data-section="admin"] .sidebar-head h3{
    font-size:20px;
  }
  body[data-section="admin"] .sidebar-head p{
    font-size:14px;
  }
  body[data-section="admin"] .portal-nav a{
    min-height:52px;
    font-size:16.5px;
  }
  body[data-section="admin"] .portal-nav a i{
    font-size:17px;
  }
  body[data-section="admin"] .portal-search input{
    font-size:16px;
  }
  body[data-section="admin"] .user-chip strong{
    font-size:16px;
  }
  body[data-section="admin"] .user-chip small{
    font-size:12.5px;
  }
  body[data-section="admin"] .portal-content{
    width:calc(100% - 96px);
    max-width:3220px;
  }
  body[data-section="admin"] .portal-hero-overlay h1{
    font-size:68px;
  }
  body[data-section="admin"] .portal-hero-overlay p{
    font-size:18px;
  }
  body[data-section="admin"] .stat-card strong{
    font-size:32px;
  }
  body[data-section="admin"] .stat-card span{
    font-size:15px;
  }
  body[data-section="admin"] .stat-card small{
    font-size:12.5px;
  }
  body[data-section="admin"] .panel-title h3{
    font-size:17px;
  }
  body[data-section="admin"] .panel-card p{
    font-size:14.5px;
  }
  body[data-section="admin"] .status-row{
    font-size:14px;
  }
  body[data-section="admin"] .page-heading h1{
    font-size:44px;
  }
  body[data-section="admin"] .page-heading p,
  body[data-section="admin"] #adminApiStatus,
  body[data-section="admin"] .form-message{
    font-size:14.5px;
  }
  body[data-section="admin"] .portal-table th{
    font-size:13.5px;
  }
  body[data-section="admin"] .portal-table td{
    font-size:14.5px;
  }
}


/* === R179: citizen account administration === */
body[data-section="admin"] .admin-citizen-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:12px 0 4px;
  padding:13px 14px;
  border:1px solid rgba(49,157,205,.24);
  border-radius:9px;
  background:rgba(3,20,34,.5);
}
body[data-section="admin"] .admin-citizen-toolbar strong,
body[data-section="admin"] .admin-citizen-toolbar span{
  display:block;
}
body[data-section="admin"] .admin-citizen-toolbar strong{
  color:#eaf8fe;
  font-size:12.5px;
}
body[data-section="admin"] .admin-citizen-toolbar span{
  margin-top:3px;
  color:#8faebb;
  font-size:10.5px;
  line-height:1.5;
}
body[data-section="admin"] .admin-citizen-table td strong{
  color:#e9f8ff;
}
body[data-section="admin"] .admin-citizen-state{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border:1px solid rgba(77,158,195,.32);
  border-radius:999px;
  background:rgba(15,65,89,.34);
  font-size:10px;
  font-weight:700;
}
body[data-section="admin"] .admin-citizen-state.state-active{color:#62e6aa;border-color:rgba(58,209,146,.38)}
body[data-section="admin"] .admin-citizen-state.state-locked{color:#ffd276;border-color:rgba(255,190,72,.42)}
body[data-section="admin"] .admin-citizen-state.state-banned,
body[data-section="admin"] .admin-citizen-state.state-deactivated{color:#ff8e9d;border-color:rgba(255,84,108,.42)}
body[data-section="admin"] .admin-citizen-actions{
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
body[data-section="admin"] .admin-citizen-actions .btn{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
body[data-section="admin"] .admin-citizen-dialog{
  width:min(560px,calc(100vw - 32px));
  padding:0;
  border:1px solid #1d7ea9;
  border-radius:12px;
  background:#061827;
  color:#e8f7fd;
  box-shadow:0 28px 80px rgba(0,0,0,.62);
}
body[data-section="admin"] .admin-citizen-dialog::backdrop{
  background:rgba(0,7,14,.78);
  backdrop-filter:blur(4px);
}
body[data-section="admin"] .admin-citizen-dialog-card{
  display:grid;
  gap:12px;
  padding:18px;
}
body[data-section="admin"] .admin-citizen-dialog-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(70,158,199,.24);
}
body[data-section="admin"] .admin-citizen-dialog-head strong,
body[data-section="admin"] .admin-citizen-dialog-head span{
  display:block;
}
body[data-section="admin"] .admin-citizen-dialog-head strong{font-size:15px}
body[data-section="admin"] .admin-citizen-dialog-head span{margin-top:3px;color:#7fa4b5;font-size:11px}
body[data-section="admin"] .admin-citizen-dialog label{
  color:#cde4ef;
  font-size:11px;
  font-weight:600;
}
body[data-section="admin"] .admin-citizen-dialog .form-control{
  margin-top:6px;
}
body[data-section="admin"] .admin-citizen-dialog-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding-top:4px;
}
@media(min-width:1920px){
  body[data-section="admin"] .admin-citizen-toolbar strong{font-size:14px}
  body[data-section="admin"] .admin-citizen-toolbar span{font-size:12px}
  body[data-section="admin"] .admin-citizen-state{font-size:11.5px}
  body[data-section="admin"] .admin-citizen-actions .btn{font-size:11.5px}
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-citizen-toolbar strong{font-size:15px}
  body[data-section="admin"] .admin-citizen-toolbar span{font-size:13px}
  body[data-section="admin"] .admin-citizen-state{font-size:12.5px}
  body[data-section="admin"] .admin-citizen-actions .btn{font-size:12.5px}
}
@media(max-width:900px){
  body[data-section="admin"] .admin-citizen-toolbar{flex-direction:column}
  body[data-section="admin"] .admin-citizen-actions{flex-direction:column;align-items:stretch}
}


/* === R189: global portal action/error notices === */
.portal-notice-stack{
  position:fixed;
  top:18px;
  right:18px;
  z-index:3000;
  display:grid;
  gap:10px;
  width:min(520px,calc(100vw - 36px));
  pointer-events:none;
}
.portal-notice{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:start;
  gap:12px;
  padding:14px 14px 14px 15px;
  border:1px solid rgba(56,163,211,.62);
  border-radius:11px;
  background:rgba(4,22,36,.98);
  box-shadow:0 18px 48px rgba(0,0,0,.48);
  backdrop-filter:blur(14px);
  pointer-events:auto;
}
.portal-notice>i{
  margin-top:2px;
  font-size:20px;
}
.portal-notice>div{
  min-width:0;
}
.portal-notice strong,
.portal-notice span,
.portal-notice small{
  display:block;
}
.portal-notice strong{
  color:#f0faff;
  font-size:13px;
  line-height:1.35;
}
.portal-notice span{
  margin-top:3px;
  color:#c6dce7;
  font-size:11.5px;
  line-height:1.5;
  overflow-wrap:anywhere;
}
.portal-notice small{
  margin-top:6px;
  color:#89a8b8;
  font-size:10px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.portal-notice-error{
  border-color:rgba(255,84,108,.72);
  background:linear-gradient(180deg,rgba(51,17,26,.98),rgba(22,10,17,.98));
}
.portal-notice-error>i{color:#ff6f83}
.portal-notice-success{
  border-color:rgba(55,220,157,.62);
  background:linear-gradient(180deg,rgba(10,48,38,.98),rgba(5,27,23,.98));
}
.portal-notice-success>i{color:#4ce3a6}
.portal-notice-info>i{color:#4fd5ff}
.portal-notice-close{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  padding:0;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#9bb4c1;
}
.portal-notice-close:hover{
  background:rgba(255,255,255,.07);
  color:#fff;
}
@media(min-width:1920px){
  .portal-notice-stack{top:24px;right:26px;width:min(620px,calc(100vw - 52px))}
  .portal-notice{padding:16px 16px 16px 17px;gap:14px}
  .portal-notice>i{font-size:23px}
  .portal-notice strong{font-size:15px}
  .portal-notice span{font-size:13px}
  .portal-notice small{font-size:11.5px}
}
@media(min-width:2560px){
  .portal-notice-stack{width:680px}
  .portal-notice strong{font-size:16px}
  .portal-notice span{font-size:14px}
  .portal-notice small{font-size:12px}
}
@media(max-width:767px){
  .portal-notice-stack{top:10px;right:10px;width:calc(100vw - 20px)}
  .portal-notice{padding:12px}
}


/* === R206: stale World API citizen search results === */
body[data-section="admin"] .admin-citizen-state.state-unavailable{
  color:#ff9eaa;
  border-color:rgba(255,84,108,.48);
  background:rgba(96,24,38,.28);
}
body[data-section="admin"] .admin-citizen-unavailable{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:5px 9px;
  border:1px solid rgba(255,84,108,.38);
  border-radius:8px;
  color:#ff9eaa;
  background:rgba(96,24,38,.2);
  font-size:10.5px;
  font-weight:700;
}
@media(min-width:1920px){
  body[data-section="admin"] .admin-citizen-unavailable{font-size:12px}
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-citizen-unavailable{font-size:13px}
}


/* === R216: human-centered admin dashboard === */
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay{
  max-width:920px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-kicker{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  margin-bottom:10px;
  padding:5px 10px;
  border:1px solid rgba(81,211,255,.38);
  border-radius:999px;
  background:rgba(3,29,48,.72);
  color:#8fe8ff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body[data-section="admin"][data-active="dashboard"] .stats-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body[data-section="admin"][data-active="dashboard"] .stat-card{
  min-height:108px;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
}
body[data-section="admin"][data-active="dashboard"] .stat-card>i{
  grid-row:1 / 3;
}
body[data-section="admin"][data-active="dashboard"] .stat-card small{
  grid-column:2;
  align-self:start;
  color:#89a9b9;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-layout{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-citizens,
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-shortcuts{
  grid-column:span 2;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 18px;
  padding-top:8px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:46px;
  border-bottom:1px solid rgba(79,145,184,.18);
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-row span{
  color:#a8c0cd;
  font-size:12px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-row strong{
  color:#f0fbff;
  font-size:15px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  padding-top:12px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions a{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:10px;
  align-items:center;
  min-height:72px;
  padding:11px 12px;
  border:1px solid rgba(37,137,184,.5);
  border-radius:9px;
  background:rgba(5,28,46,.7);
  transition:.18s ease;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions a:hover{
  transform:translateY(-1px);
  border-color:#37c8f4;
  background:rgba(9,51,78,.88);
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions i{
  grid-row:1 / 3;
  color:#45d6ff;
  font-size:20px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions span{
  color:#eaf8ff;
  font-size:12px;
  font-weight:700;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions small{
  color:#86a5b6;
  font-size:10px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area{
  display:flex;
  align-items:flex-start;
  gap:13px;
  min-height:166px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border:1px solid rgba(45,181,232,.45);
  border-radius:10px;
  background:rgba(8,65,92,.42);
  color:#47d8ff;
  font-size:19px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area h3{
  margin:1px 0 7px;
  color:#effaff;
  font-size:14px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area p{
  min-height:42px;
  margin:0 0 11px;
  color:#91acba;
  font-size:11px;
  line-height:1.55;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-links{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-links a{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:5px 9px;
  border:1px solid rgba(42,151,197,.42);
  border-radius:7px;
  color:#bfeeff;
  background:rgba(5,36,57,.6);
  font-size:10.5px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-links a:hover{
  border-color:#45d6ff;
  color:#fff;
}
@media(min-width:1920px){
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-kicker{font-size:12px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-row{min-height:52px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-row span{font-size:13.5px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-row strong{font-size:17px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions a{min-height:82px;padding:13px 14px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions i{font-size:23px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions span{font-size:13.5px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions small{font-size:11.5px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area{min-height:190px;padding:20px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area-icon{width:48px;height:48px;flex-basis:48px;font-size:22px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area h3{font-size:16px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area p{font-size:12.5px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-links a{font-size:12px}
}
@media(min-width:2560px){
  body[data-section="admin"][data-active="dashboard"] .stats-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions a{min-height:92px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions span{font-size:15px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions small{font-size:12.5px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area h3{font-size:17px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area p{font-size:13.5px}
}
@media(max-width:1399px){
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-citizens,
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-shortcuts{grid-column:span 2}
}
@media(max-width:767px){
  body[data-section="admin"][data-active="dashboard"] .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-layout{grid-template-columns:1fr}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-citizens,
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-shortcuts{grid-column:auto}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-status-list{grid-template-columns:1fr}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-actions{grid-template-columns:1fr 1fr}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-area{min-height:0}
}


/* === R225: compact dashboard hero and admin account menu === */
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero{
  height:158px;
  min-height:158px;
  background:
    linear-gradient(90deg,rgba(2,15,27,.93),rgba(2,15,27,.48) 58%,rgba(2,15,27,.2)),
    url('/assets/admin-dashboard-hero.webp') center center/cover no-repeat;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero:after{
  background:linear-gradient(90deg,rgba(2,15,27,.38),rgba(2,15,27,.05));
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay{
  left:28px;
  max-width:760px;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay h1{
  margin:0 0 7px;
  font-size:34px;
  line-height:1.05;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay h1 span{
  display:inline;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay p{
  margin:0;
  max-width:700px;
  font-size:13px;
  line-height:1.5;
}
body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .admin-dashboard-kicker{
  min-height:23px;
  margin-bottom:7px;
  padding:3px 8px;
  font-size:9.5px;
}

body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-menu{
  position:relative;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-toggle{
  min-width:190px;
  padding:5px 8px 5px 5px;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:inherit;
  text-align:left;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-toggle:hover,
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-toggle[aria-expanded="true"]{
  border-color:rgba(51,173,222,.4);
  background:rgba(8,43,65,.72);
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-copy{
  min-width:0;
  flex:1;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-chevron{
  margin-left:5px;
  color:#80a9bc;
  font-size:11px;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown{
  width:260px;
  margin-top:8px!important;
  padding:8px;
  border:1px solid rgba(42,135,178,.62);
  border-radius:11px;
  background:#061725;
  box-shadow:0 20px 52px rgba(0,0,0,.46);
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown-head{
  padding:8px 10px 10px;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown-head strong,
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown-head span{
  display:block;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown-head strong{
  color:#f0faff;
  font-size:12px;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown-head span{
  margin-top:2px;
  color:#7898a9;
  font-size:10px;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown .dropdown-item{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  padding:8px 10px;
  border-radius:8px;
  color:#d9edf6;
  font-size:11px;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown .dropdown-item i{
  width:18px;
  color:#4ed5ff;
  font-size:14px;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown .dropdown-item:hover{
  color:#fff;
  background:#0b3854;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown .dropdown-divider{
  border-color:rgba(79,145,184,.2);
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown .topbar-logout-item{
  color:#ffadb7;
}
body:is([data-section="admin"],[data-section="citizen"]) .topbar-user-dropdown .topbar-logout-item i{
  color:#ff7d8d;
}

body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-dialog{
  width:min(620px,calc(100vw - 30px));
  padding:0;
  border:1px solid #217da7;
  border-radius:13px;
  background:#061725;
  color:#eaf8ff;
  box-shadow:0 30px 90px rgba(0,0,0,.62);
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-dialog::backdrop{
  background:rgba(0,7,14,.78);
  backdrop-filter:blur(5px);
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-card{
  display:grid;
  gap:15px;
  padding:20px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-head{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:13px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(65,151,190,.24);
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-avatar{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border:2px solid rgba(68,210,255,.72);
  border-radius:50%;
  background:linear-gradient(145deg,#0a75e8,#18bddf);
  color:#fff;
  font-size:19px;
  font-weight:800;
  box-shadow:0 0 20px rgba(35,176,235,.3);
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-head-copy strong,
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-head-copy span{
  display:block;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-head-copy strong{
  font-size:17px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-head-copy span{
  margin-top:3px;
  color:#83a7b8;
  font-size:11px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-close{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#8ca8b7;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-close:hover{
  background:rgba(255,255,255,.07);
  color:#fff;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-photo-note{
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 11px;
  border:1px solid rgba(50,133,172,.32);
  border-radius:8px;
  background:rgba(7,38,58,.48);
  color:#8faebd;
  font-size:10.5px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-photo-note i{
  color:#47d7ff;
  font-size:15px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-grid label{
  color:#cfe4ed;
  font-size:11px;
  font-weight:600;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-grid .form-control{
  margin-top:6px;
}
body:is([data-section="admin"],[data-section="citizen"]) .portal-profile-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
@media(min-width:1920px){
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero{height:168px;min-height:168px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay h1{font-size:38px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay p{font-size:14px}
  body[data-section="admin"] .topbar-user-toggle{min-width:220px}
  body[data-section="admin"] .topbar-user-dropdown{width:290px}
  body[data-section="admin"] .topbar-user-dropdown .dropdown-item{font-size:12.5px}
  body[data-section="admin"] .portal-profile-grid label{font-size:12.5px}
}
@media(min-width:2560px){
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero{height:176px;min-height:176px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay h1{font-size:42px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay p{font-size:15px}
}
@media(max-width:767px){
  body[data-section="admin"] .topbar-user-toggle{min-width:0}
  body[data-section="admin"] .topbar-user-copy{display:none}
  body[data-section="admin"] .topbar-user-chevron{display:none}
  body[data-section="admin"] .topbar-user-dropdown{width:min(280px,calc(100vw - 24px))}
  body[data-section="admin"] .portal-profile-grid{grid-template-columns:1fr}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero{height:145px;min-height:145px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay{left:18px;right:18px}
  body[data-section="admin"][data-active="dashboard"] .admin-dashboard-hero .portal-hero-overlay h1{font-size:28px}
}


/* === R233: dashboard presence colors === */
body[data-section="admin"][data-active="dashboard"] .stat-card-online{
  border-color:rgba(52,211,113,.52);
  box-shadow:0 0 0 1px rgba(52,211,113,.08),0 12px 28px rgba(0,0,0,.22);
}
body[data-section="admin"][data-active="dashboard"] .stat-card-online>i,
body[data-section="admin"][data-active="dashboard"] .stat-card-online strong,
body[data-section="admin"][data-active="dashboard"] .stat-card-online small{
  color:#34d371;
}
body[data-section="admin"][data-active="dashboard"] .stat-card-offline{
  border-color:rgba(255,82,96,.55);
  box-shadow:0 0 0 1px rgba(255,82,96,.08),0 12px 28px rgba(0,0,0,.22);
}
body[data-section="admin"][data-active="dashboard"] .stat-card-offline>i,
body[data-section="admin"][data-active="dashboard"] .stat-card-offline strong,
body[data-section="admin"][data-active="dashboard"] .stat-card-offline small{
  color:#ff5260;
}


/* === R237: citizen account search experience === */
body[data-section="admin"] .admin-citizen-search{
  position:relative;
  display:flex;
  align-items:center;
}
body[data-section="admin"] .admin-citizen-search>i{
  position:absolute;
  left:14px;
  z-index:2;
  color:#70a8bf;
  font-size:13px;
  pointer-events:none;
}
body[data-section="admin"] .admin-citizen-search .form-control{
  min-height:44px;
  padding-left:39px;
  padding-right:42px;
}
body[data-section="admin"] .admin-citizen-search-clear{
  position:absolute;
  right:8px;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#789ead;
}
body[data-section="admin"] .admin-citizen-search-clear:hover{
  background:rgba(255,255,255,.07);
  color:#fff;
}
body[data-section="admin"] .admin-citizen-search-empty{
  min-height:160px;
}
body[data-section="admin"] .admin-citizen-table th:last-child,
body[data-section="admin"] .admin-citizen-table td:last-child{
  min-width:260px;
}
@media(min-width:1920px){
  body[data-section="admin"] .admin-citizen-search .form-control{
    min-height:50px;
    padding-left:44px;
    font-size:13.5px;
  }
  body[data-section="admin"] .admin-citizen-search>i{
    left:16px;
    font-size:15px;
  }
}


/* === R241: consistent admin page header background === */
body[data-section="admin"] .page-heading.admin-heading{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:142px;
  margin-bottom:16px;
  padding:24px 28px;
  overflow:hidden;
  border:1px solid rgba(37,137,184,.45);
  border-radius:14px;
  background:
    linear-gradient(90deg,rgba(2,15,27,.94) 0%,rgba(2,15,27,.72) 42%,rgba(2,15,27,.38) 72%,rgba(2,15,27,.2) 100%),
    url('/assets/admin-dashboard-hero.webp') center center/cover no-repeat;
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
body[data-section="admin"] .page-heading.admin-heading:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.18)),
    radial-gradient(circle at 12% 50%,rgba(25,180,228,.12),transparent 38%);
  pointer-events:none;
}
body[data-section="admin"] .page-heading.admin-heading h1,
body[data-section="admin"] .page-heading.admin-heading p{
  position:relative;
  z-index:1;
}
body[data-section="admin"] .page-heading.admin-heading h1{
  margin:0 0 7px;
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.58);
}
body[data-section="admin"] .page-heading.admin-heading p{
  max-width:760px;
  margin:0;
  color:#d3e8f2;
  text-shadow:0 1px 12px rgba(0,0,0,.58);
}
@media(min-width:1920px){
  body[data-section="admin"] .page-heading.admin-heading{
    min-height:154px;
    padding:28px 32px;
  }
}
@media(min-width:2560px){
  body[data-section="admin"] .page-heading.admin-heading{
    min-height:164px;
    padding:30px 36px;
    background-position:center center;
  }
}
@media(min-width:3200px){
  body[data-section="admin"] .page-heading.admin-heading{
    min-height:168px;
    padding:30px 38px;
  }
}
@media(max-width:767px){
  body[data-section="admin"] .page-heading.admin-heading{
    min-height:126px;
    padding:20px 18px;
    border-radius:11px;
    background-position:center center;
  }
  body[data-section="admin"] .page-heading.admin-heading p{
    max-width:92%;
  }
}


/* === R244: region overview and automatic search === */
body[data-section="admin"] .admin-region-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:12px 0 4px;
  padding:13px 14px;
  border:1px solid rgba(49,157,205,.24);
  border-radius:9px;
  background:rgba(3,20,34,.5);
}
body[data-section="admin"] .admin-region-toolbar strong,
body[data-section="admin"] .admin-region-toolbar span{
  display:block;
}
body[data-section="admin"] .admin-region-toolbar strong{
  color:#eaf8fe;
  font-size:12.5px;
}
body[data-section="admin"] .admin-region-toolbar span{
  margin-top:3px;
  color:#8faebb;
  font-size:10.5px;
  line-height:1.5;
}
body[data-section="admin"] .admin-region-search{
  position:relative;
  display:flex;
  align-items:center;
}
body[data-section="admin"] .admin-region-search>i{
  position:absolute;
  left:14px;
  z-index:2;
  color:#70a8bf;
  font-size:13px;
  pointer-events:none;
}
body[data-section="admin"] .admin-region-search .form-control{
  min-height:44px;
  padding-left:39px;
  padding-right:42px;
}
body[data-section="admin"] .admin-region-search-clear{
  position:absolute;
  right:8px;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#789ead;
}
body[data-section="admin"] .admin-region-search-clear:hover{
  background:rgba(255,255,255,.07);
  color:#fff;
}
body[data-section="admin"] .admin-region-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding-top:6px;
}
body[data-section="admin"] .admin-region-card{
  position:relative;
  overflow:hidden;
  min-height:164px;
  padding:16px;
  border:1px solid rgba(36,133,179,.46);
  border-radius:11px;
  background:
    linear-gradient(145deg,rgba(8,39,59,.96),rgba(4,23,37,.96));
  box-shadow:0 10px 28px rgba(0,0,0,.2);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
body[data-section="admin"] .admin-region-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 100% 0,rgba(42,190,233,.11),transparent 42%);
  pointer-events:none;
}
body[data-section="admin"] .admin-region-card:hover{
  transform:translateY(-2px);
  border-color:rgba(62,210,249,.7);
  background:linear-gradient(145deg,rgba(10,51,75,.98),rgba(5,29,45,.98));
}
body[data-section="admin"] .admin-region-card-head{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  z-index:1;
}
body[data-section="admin"] .admin-region-card-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid rgba(69,205,244,.42);
  border-radius:10px;
  background:rgba(10,72,99,.48);
  color:#48d9ff;
  font-size:19px;
}
body[data-section="admin"] .admin-region-card-head strong,
body[data-section="admin"] .admin-region-card-head span{
  display:block;
}
body[data-section="admin"] .admin-region-card-head strong{
  color:#f1fbff;
  font-size:14px;
  line-height:1.3;
}
body[data-section="admin"] .admin-region-card-head span{
  margin-top:3px;
  color:#739aac;
  font-size:10px;
}
body[data-section="admin"] .admin-region-facts{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:16px;
  z-index:1;
}
body[data-section="admin"] .admin-region-facts>div{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:8px;
  min-width:0;
  padding:10px;
  border:1px solid rgba(61,127,160,.24);
  border-radius:8px;
  background:rgba(2,17,28,.38);
}
body[data-section="admin"] .admin-region-facts i{
  grid-row:1 / 3;
  align-self:center;
  color:#42cdf1;
  font-size:14px;
}
body[data-section="admin"] .admin-region-facts span{
  color:#7798a8;
  font-size:9.5px;
}
body[data-section="admin"] .admin-region-facts strong{
  margin-top:2px;
  color:#dff5fd;
  font-size:11px;
  line-height:1.25;
}
body[data-section="admin"] .admin-region-empty{
  min-height:180px;
}
@media(min-width:1920px){
  body[data-section="admin"] .admin-region-toolbar strong{font-size:14px}
  body[data-section="admin"] .admin-region-toolbar span{font-size:12px}
  body[data-section="admin"] .admin-region-search .form-control{min-height:50px;padding-left:44px;font-size:13.5px}
  body[data-section="admin"] .admin-region-search>i{left:16px;font-size:15px}
  body[data-section="admin"] .admin-region-card{min-height:188px;padding:18px}
  body[data-section="admin"] .admin-region-card-head strong{font-size:16px}
  body[data-section="admin"] .admin-region-card-head span{font-size:11.5px}
  body[data-section="admin"] .admin-region-facts span{font-size:11px}
  body[data-section="admin"] .admin-region-facts strong{font-size:12.5px}
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-region-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  body[data-section="admin"] .admin-region-card{min-height:202px;padding:20px}
  body[data-section="admin"] .admin-region-card-head strong{font-size:17px}
  body[data-section="admin"] .admin-region-facts strong{font-size:13.5px}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-region-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-region-facts{grid-template-columns:1fr 1fr}
}


/* === R250: lesbare Simulator-Nodes-Tabelle mit Live-Werten === */
body[data-section="admin"] .admin-nodes-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px 18px;
  margin:12px 0 10px;
  padding:10px 13px;
  border:1px solid rgba(59,155,194,.28);
  border-radius:9px;
  background:rgba(5,27,42,.75);
  font-size:12px;
}
body[data-section="admin"] .admin-nodes-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#b8e8f8;
  font-weight:600;
}
body[data-section="admin"] .admin-nodes-live i{
  color:#4de3a7;
  font-size:15px;
}
body[data-section="admin"] .admin-nodes-live[data-state="error"] i{color:#f4af7b}
body[data-section="admin"] .admin-nodes-live[data-state="paused"] i{color:#829fae}
body[data-section="admin"] .admin-nodes-update{color:#87aebe;font-variant-numeric:tabular-nums}
body[data-section="admin"] .admin-nodes-content{
  margin-top:8px;
  border:1px solid rgba(55,137,179,.34);
  border-radius:11px;
  background:rgba(2,16,28,.62);
}
body[data-section="admin"] .admin-nodes-table{
  min-width:1160px;
  width:100%;
  margin:0;
  border-collapse:separate;
  border-spacing:0;
  font-size:12px;
  font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-nodes-table thead th{
  padding:14px 13px;
  white-space:nowrap;
  color:#bcd8e7;
  background:#0b3049;
  border-bottom:1px solid rgba(72,171,217,.36);
  font-size:11px;
  font-weight:700;
}
body[data-section="admin"] .admin-nodes-table thead th:first-child{border-top-left-radius:10px}
body[data-section="admin"] .admin-nodes-table thead th:last-child{border-top-right-radius:10px}
body[data-section="admin"] .admin-nodes-table tbody tr:nth-child(even){background:rgba(13,49,70,.36)}
body[data-section="admin"] .admin-nodes-table tbody tr:hover{background:rgba(17,91,125,.42)}
body[data-section="admin"] .admin-nodes-table tbody td{
  padding:15px 13px;
  vertical-align:middle;
  white-space:nowrap;
  color:#e5f3fa;
  border-bottom:1px solid rgba(65,134,172,.19);
}
body[data-section="admin"] .admin-nodes-table tbody tr:last-child td{border-bottom:0}
body[data-section="admin"] .admin-nodes-table .admin-node-identity{
  min-width:132px;
  white-space:normal;
}
body[data-section="admin"] .admin-node-identity strong,
body[data-section="admin"] .admin-node-identity small{
  display:block;
  overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-node-identity strong{font-size:13px;font-weight:700;color:#f0fbff}
body[data-section="admin"] .admin-node-identity small{margin-top:3px;color:#819eaf;font-size:10.5px}
body[data-section="admin"] .admin-node-identity small[hidden]{display:none}
body[data-section="admin"] .admin-node-state{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 9px;
  border:1px solid #517081;
  border-radius:99px;
  color:#c0d0d8;
  background:rgba(77,107,125,.18);
  font-weight:650;
  font-size:11px;
}
body[data-section="admin"] .admin-node-state:before{
  content:"";
  width:7px;height:7px;
  border-radius:50%;
  background:currentColor;
}
body[data-section="admin"] .admin-node-state.state-online{
  border-color:rgba(43,201,138,.46);
  color:#76ecc0;
  background:rgba(19,93,70,.28);
}
body[data-section="admin"] .admin-node-state.state-stale{
  border-color:rgba(219,159,63,.49);
  color:#f4cd83;
  background:rgba(93,67,18,.3);
}
body[data-section="admin"] .admin-node-state.state-offline{
  border-color:rgba(224,91,108,.45);
  color:#ffabb5;
  background:rgba(93,27,41,.26);
}
@media(min-width:1920px){
  body[data-section="admin"] .admin-nodes-table{font-size:13px}
  body[data-section="admin"] .admin-nodes-table thead th{font-size:12px;padding:17px 16px}
  body[data-section="admin"] .admin-nodes-table tbody td{padding:18px 16px}
  body[data-section="admin"] .admin-nodes-toolbar{font-size:13px}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-nodes-toolbar{font-size:11px}
  body[data-section="admin"] .admin-nodes-table{min-width:1060px}
}

/* === R251: Estate overview and automatic two-word search === */
body[data-section="admin"] .admin-estate-toolbar{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:13px 14px;
  margin:12px 0 9px;
  border:1px solid rgba(51,154,198,.28);
  border-radius:10px;
  background:rgba(3,24,39,.6);
}
body[data-section="admin"] .admin-estate-toolbar strong,
body[data-section="admin"] .admin-estate-toolbar span{display:block}
body[data-section="admin"] .admin-estate-toolbar strong{font-size:13px;color:#eefaff}
body[data-section="admin"] .admin-estate-toolbar span{
  margin-top:4px;
  color:#90adbc;
  font-size:11px;
  line-height:1.5;
}
body[data-section="admin"] .admin-estate-search{position:relative;display:flex;align-items:center}
body[data-section="admin"] .admin-estate-search>i{
  position:absolute;
  left:15px;
  z-index:2;
  font-size:15px;
  color:#70a9c1;
  pointer-events:none;
}
body[data-section="admin"] .admin-estate-search .form-control{
  min-height:46px;
  padding:9px 43px;
  font-size:13px;
  border-radius:9px;
}
body[data-section="admin"] .admin-estate-search-clear{
  position:absolute;
  display:grid;
  place-items:center;
  right:9px;
  width:30px;
  height:30px;
  border:0;
  border-radius:8px;
  color:#90b1c1;
  background:transparent;
}
body[data-section="admin"] .admin-estate-search-clear:hover{
  color:white;
  background:rgba(255,255,255,.09);
}
body[data-section="admin"] .admin-estate-search-clear[hidden]{display:none}
body[data-section="admin"] .admin-estate-summary{
  margin:2px 0 10px;
  color:#8eb5c6;
  font-size:11px;
  font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-estate-summary:empty{display:none}
body[data-section="admin"] .admin-estate-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding:5px 0 4px;
}
body[data-section="admin"] .admin-estate-card{
  position:relative;
  overflow:hidden;
  min-height:170px;
  padding:16px;
  border:1px solid rgba(44,142,185,.46);
  border-radius:12px;
  background:linear-gradient(150deg,rgba(10,40,61,.98),rgba(4,23,37,.98));
  box-shadow:0 9px 24px rgba(0,0,0,.16);
  transition:border-color .15s ease,transform .15s ease;
}
body[data-section="admin"] .admin-estate-card:before{
  content:"";
  position:absolute;
  top:0;right:0;
  width:52%;height:65%;
  background:radial-gradient(ellipse at top right,rgba(28,167,220,.13),transparent 72%);
  pointer-events:none;
}
body[data-section="admin"] .admin-estate-card:hover{
  border-color:rgba(75,212,255,.72);
  transform:translateY(-2px);
}
body[data-section="admin"] .admin-estate-card-head{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
body[data-section="admin"] .admin-estate-card-icon{
  width:44px;height:44px;
  flex:0 0 44px;
  display:grid;place-items:center;
  border-radius:11px;
  background:rgba(15,93,124,.38);
  border:1px solid rgba(65,189,229,.44);
  color:#57d6fb;
  font-size:19px;
}
body[data-section="admin"] .admin-estate-card-title{min-width:0}
body[data-section="admin"] .admin-estate-card-title strong{
  display:block;
  overflow-wrap:anywhere;
  color:#f2faff;
  font-size:14px;
  line-height:1.35;
}
body[data-section="admin"] .admin-estate-card-title span{
  display:block;
  color:#84a8b8;
  font-size:10px;
  margin-top:4px;
}
body[data-section="admin"] .admin-estate-facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:18px;
}
body[data-section="admin"] .admin-estate-fact{
  display:flex;
  align-items:center;
  min-width:0;
  gap:10px;
  padding:10px 11px;
  border:1px solid rgba(67,136,169,.23);
  border-radius:9px;
  background:rgba(1,17,30,.4);
}
body[data-section="admin"] .admin-estate-fact i{color:#49ccec;font-size:16px}
body[data-section="admin"] .admin-estate-fact span{
  display:block;color:#85a4b4;font-size:10px;
}
body[data-section="admin"] .admin-estate-fact strong{
  display:block;
  margin-top:3px;
  color:#e4f7ff;
  font-size:13px;
  font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-estate-card-footer{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid rgba(66,131,170,.2);
  color:#89aebe;
  font-size:11px;
}
body[data-section="admin"] .admin-estate-card-footer i{color:#54ccec}
body[data-section="admin"] .admin-estate-empty{min-height:170px}
body[data-section="admin"] .admin-estate-paging{
  display:flex;
  justify-content:center;
  padding:16px 0 4px;
}
body[data-section="admin"] .admin-estate-paging button{padding:10px 24px}
body[data-section="admin"] .admin-estate-paging button[hidden]{display:none}
@media(min-width:1920px){
  body[data-section="admin"] .admin-estate-toolbar strong{font-size:14px}
  body[data-section="admin"] .admin-estate-toolbar span{font-size:12px}
  body[data-section="admin"] .admin-estate-search .form-control{min-height:50px;font-size:14px}
  body[data-section="admin"] .admin-estate-card{padding:19px;min-height:191px}
  body[data-section="admin"] .admin-estate-card-title strong{font-size:16px}
  body[data-section="admin"] .admin-estate-fact strong{font-size:15px}
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-estate-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-estate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-estate-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-estate-toolbar span{font-size:11px}
  body[data-section="admin"] .admin-estate-card{min-height:165px}
}

/* R252 – Orte & Entdecken */
body[data-section="admin"] .admin-discovery-intro {
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  padding:15px 17px;margin:13px 0 14px;border:1px solid rgba(48,159,208,.32);
  border-radius:11px;background:linear-gradient(125deg,rgba(10,50,71,.84),rgba(4,24,41,.86));
}
body[data-section="admin"] .admin-discovery-intro strong,
body[data-section="admin"] .admin-discovery-intro span {display:block}
body[data-section="admin"] .admin-discovery-intro strong {color:#f1fbff;font-size:15px;font-weight:700}
body[data-section="admin"] .admin-discovery-intro span {color:#92b6c9;font-size:12px;margin-top:4px}
body[data-section="admin"] .admin-discovery-tabs {
  display:flex;gap:9px;flex-wrap:wrap;margin-bottom:15px;
  padding:5px;border:1px solid rgba(56,122,166,.27);border-radius:10px;background:rgba(3,23,37,.46);
}
body[data-section="admin"] .admin-discovery-tabs button {
  display:inline-flex;align-items:center;gap:8px;padding:10px 15px;min-height:39px;
  border:1px solid transparent;border-radius:8px;
  background:transparent;color:#a3c1d1;font-size:12px;font-weight:650;
}
body[data-section="admin"] .admin-discovery-tabs button:hover {
  color:#f3fcff;background:rgba(46,138,184,.18);
}
body[data-section="admin"] .admin-discovery-tabs button.active {
  color:#eafaff;background:rgba(11,98,145,.55);border-color:rgba(66,190,237,.47);
}
body[data-section="admin"] .admin-discovery-tabs i {color:#45c9f1;font-size:14px}
body[data-section="admin"] .admin-discovery-filter {position:relative;display:flex;align-items:center}
body[data-section="admin"] .admin-discovery-filter>i {
  position:absolute;left:15px;color:#79aabf;font-size:15px;pointer-events:none;
}
body[data-section="admin"] .admin-discovery-filter .form-control {
  min-height:46px;padding:10px 45px;font-size:13px;border-radius:9px;
}
body[data-section="admin"] .admin-discovery-filter button {
  display:grid;place-items:center;position:absolute;right:10px;
  width:29px;height:29px;border:0;border-radius:7px;background:transparent;color:#98bbc9;
}
body[data-section="admin"] .admin-discovery-filter button:hover {background:rgba(255,255,255,.08);color:white}
body[data-section="admin"] .admin-discovery-filter button[hidden] {display:none}
body[data-section="admin"] .admin-discovery-count {
  margin:11px 1px;font-size:11px;color:#94b4c4;font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-discovery-count:empty {display:none}
body[data-section="admin"] .admin-discovery-grid {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
}
body[data-section="admin"] .admin-discovery-card {
  display:flex;flex-direction:column;align-items:flex-start;min-height:165px;gap:12px;
  padding:18px;border:1px solid rgba(46,142,185,.48);
  background:linear-gradient(150deg,rgba(10,43,62,.96),rgba(4,24,38,.97));
  border-radius:11px;box-shadow:0 10px 28px rgba(0,0,0,.15);
}
body[data-section="admin"] .admin-discovery-card:hover {border-color:rgba(69,204,247,.7)}
body[data-section="admin"] .admin-discovery-card-head {display:flex;align-items:center;gap:12px;min-width:0;width:100%}
body[data-section="admin"] .admin-discovery-card-icon {
  width:43px;height:43px;flex:0 0 43px;display:grid;place-items:center;
  border-radius:10px;border:1px solid rgba(71,183,224,.4);
  background:rgba(11,85,116,.35);color:#5bd7f9;font-size:18px;
}
body[data-section="admin"] .admin-discovery-card-title {min-width:0}
body[data-section="admin"] .admin-discovery-card-title strong {
  display:block;overflow-wrap:anywhere;font-size:14px;color:#f1fbff;line-height:1.35;
}
body[data-section="admin"] .admin-discovery-card-title small {display:block;margin-top:3px;color:#87aabb;font-size:10px}
body[data-section="admin"] .admin-discovery-description {
  margin:0;color:#bad5e1;font-size:12px;line-height:1.6;overflow-wrap:anywhere;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
body[data-section="admin"] .admin-discovery-card-facts {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:auto;
}
body[data-section="admin"] .admin-discovery-meta {
  padding:10px;border:1px solid rgba(60,124,157,.22);background:rgba(3,21,36,.38);
  border-radius:8px;min-width:0;
}
body[data-section="admin"] .admin-discovery-meta span,
body[data-section="admin"] .admin-discovery-meta strong {display:block;overflow-wrap:anywhere}
body[data-section="admin"] .admin-discovery-meta span {font-size:10px;color:#8ba9ba}
body[data-section="admin"] .admin-discovery-meta strong {margin-top:3px;font-size:12px;color:#e2f6ff}
body[data-section="admin"] .admin-discovery-featured {
  font-size:11px;border:1px solid rgba(81,189,235,.4);border-radius:99px;
  padding:5px 10px;color:#89e1ff;background:rgba(12,100,144,.2);
}
body[data-section="admin"] .admin-discovery-empty {min-height:245px}
body[data-section="admin"] .admin-discovery-card>.btn {margin-top:auto}
body[data-section="admin"] .admin-discovery-dialog {
  width:min(730px,calc(100% - 28px));max-height:90vh;overflow-y:auto;
  border:1px solid rgba(57,166,215,.5);border-radius:13px;
  color:#ecf9ff;background:linear-gradient(155deg,#09243a,#061725);
  box-shadow:0 24px 65px rgba(0,0,0,.65);
}
body[data-section="admin"] .admin-discovery-dialog::backdrop {background:rgba(0,9,19,.76);backdrop-filter:blur(3px)}
body[data-section="admin"] .admin-discovery-form {padding:20px;display:grid;gap:14px}
body[data-section="admin"] .admin-discovery-dialog-head {display:flex;justify-content:space-between;align-items:center;gap:10px}
body[data-section="admin"] .admin-discovery-dialog-head h3 {font-size:18px;font-weight:700;margin:0}
body[data-section="admin"] .admin-discovery-dialog-head button {
  color:#a6cfdf;border:0;background:transparent;padding:7px;
}
body[data-section="admin"] .admin-discovery-form>p {font-size:12px;color:#a9c6d5;margin:0}
body[data-section="admin"] .admin-discovery-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
body[data-section="admin"] .admin-discovery-form label {display:grid;gap:6px;color:#bed6e0;font-size:12px}
body[data-section="admin"] .admin-discovery-form .form-control,
body[data-section="admin"] .admin-discovery-form .form-select {font-size:13px;min-height:41px}
body[data-section="admin"] .admin-discovery-form .admin-discovery-check {
  display:flex;align-items:center;gap:9px;
}
body[data-section="admin"] .admin-discovery-actions {display:flex;justify-content:flex-end;gap:10px}
@media(min-width:2560px){
  body[data-section="admin"] .admin-discovery-grid {grid-template-columns:repeat(4,minmax(0,1fr))}
  body[data-section="admin"] .admin-discovery-card {min-height:192px;padding:21px}
  body[data-section="admin"] .admin-discovery-card-title strong {font-size:16px}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-discovery-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-discovery-grid {grid-template-columns:1fr}
  body[data-section="admin"] .admin-discovery-form-grid {grid-template-columns:1fr}
  body[data-section="admin"] .admin-discovery-form {padding:13px}
  body[data-section="admin"] .admin-discovery-tabs button {font-size:11px;padding:9px}
  body[data-section="admin"] .admin-discovery-intro {padding:13px}
}
body[data-section="admin"] #discoveryRegionManual[hidden] {display:none}
body[data-section="admin"] #discoveryModerate[hidden] {display:none}
body[data-section="admin"] #discoveryAddPlace[hidden] {display:none}

/* R253 — Discovery Events, Classifieds, Experiences */
body[data-section="admin"] .admin-catalog-toolbar{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
  gap:14px;padding:15px 17px;margin:13px 0;
  border:1px solid rgba(51,157,202,.29);border-radius:11px;
  background:linear-gradient(120deg,rgba(11,48,69,.82),rgba(3,26,43,.85));
}
body[data-section="admin"] .admin-catalog-toolbar>div{min-width:220px;flex:1}
body[data-section="admin"] .admin-catalog-toolbar strong,
body[data-section="admin"] .admin-catalog-toolbar span{display:block}
body[data-section="admin"] .admin-catalog-toolbar strong{color:#f0fbff;font-size:14px;font-weight:700}
body[data-section="admin"] .admin-catalog-toolbar span{font-size:11.5px;color:#9fbdcc;line-height:1.5;margin-top:4px}
body[data-section="admin"] .admin-catalog-search{display:flex;position:relative;align-items:center;margin-bottom:10px}
body[data-section="admin"] .admin-catalog-search>i{
  position:absolute;left:14px;pointer-events:none;color:#7bb1c8;font-size:14px;
}
body[data-section="admin"] .admin-catalog-search .form-control{
  min-height:47px;padding:9px 44px;font-size:13px;border-radius:9px;
}
body[data-section="admin"] .admin-catalog-search button{
  position:absolute;right:8px;display:grid;place-items:center;
  width:32px;height:32px;color:#9bb8c9;border:0;border-radius:7px;background:transparent;
}
body[data-section="admin"] .admin-catalog-search button:hover{background:rgba(255,255,255,.08);color:white}
body[data-section="admin"] .admin-catalog-search button[hidden]{display:none}
body[data-section="admin"] .admin-catalog-count{font-size:11px;color:#91b5c7;margin:9px 1px;font-variant-numeric:tabular-nums}
body[data-section="admin"] .admin-catalog-count:empty{display:none}
body[data-section="admin"] .admin-catalog-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:5px;
}
body[data-section="admin"] .admin-catalog-card{
  display:flex;flex-direction:column;align-items:flex-start;
  gap:13px;min-height:174px;min-width:0;padding:18px;border-radius:12px;
  border:1px solid rgba(49,151,191,.44);
  background:linear-gradient(150deg,rgba(10,42,60,.98),rgba(5,24,39,.98));
  box-shadow:0 9px 24px rgba(0,0,0,.16);
  transition:border-color .16s ease,transform .16s ease;
}
body[data-section="admin"] .admin-catalog-card:hover{
  border-color:rgba(61,199,239,.72);transform:translateY(-2px);
}
body[data-section="admin"] .admin-catalog-card-head{
  display:flex;align-items:center;gap:12px;min-width:0;width:100%;
}
body[data-section="admin"] .admin-catalog-icon{
  flex:0 0 46px;width:46px;height:46px;
  display:grid;place-items:center;font-size:19px;color:#58d9ff;
  border:1px solid rgba(55,184,227,.38);border-radius:10px;
  background:rgba(13,78,110,.45);
}
body[data-section="admin"] .admin-catalog-title{min-width:0}
body[data-section="admin"] .admin-catalog-title strong{
  color:#edf9ff;font-size:14px;line-height:1.35;
  display:block;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-catalog-title small{
  display:block;margin-top:4px;font-size:10.5px;color:#8eacbd;
}
body[data-section="admin"] .admin-catalog-description{
  margin:0;font-size:12px;color:#bed2df;line-height:1.55;
  overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-catalog-card .admin-catalog-description{
  display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;
}
body[data-section="admin"] .admin-catalog-facts{
  margin-top:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;
}
body[data-section="admin"] .admin-catalog-fact{
  min-width:0;padding:10px 11px;border:1px solid rgba(66,136,173,.24);
  border-radius:8px;background:rgba(3,18,31,.44);
}
body[data-section="admin"] .admin-catalog-fact span,
body[data-section="admin"] .admin-catalog-fact strong{
  display:block;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-catalog-fact span{color:#81a2b3;font-size:10px}
body[data-section="admin"] .admin-catalog-fact strong{color:#e1f3fc;font-size:12px;margin-top:4px}
body[data-section="admin"] .admin-catalog-card-actions{
  width:100%;display:flex;gap:9px;flex-wrap:wrap;margin-top:auto;
}
body[data-section="admin"] .admin-catalog-empty{min-height:230px}
body[data-section="admin"] .admin-catalog-detail-list{display:grid;gap:8px}
body[data-section="admin"] .admin-catalog-detail-line{
  display:flex;justify-content:space-between;align-items:flex-start;gap:14px;
  padding:11px 12px;border:1px solid rgba(64,135,175,.26);border-radius:8px;
  background:rgba(4,26,43,.6);color:#dbeef7;font-size:12px;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-catalog-detail-line span{color:#8eafc1}
body[data-section="admin"] .admin-catalog-detail-line strong{text-align:right;color:#f0faff}
@media(min-width:2560px){
  body[data-section="admin"] .admin-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
  body[data-section="admin"] .admin-catalog-card{min-height:202px;padding:20px}
  body[data-section="admin"] .admin-catalog-title strong{font-size:16px}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-catalog-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-catalog-toolbar{padding:13px}
  body[data-section="admin"] .admin-catalog-card{min-height:160px}
}

/* R254 – Banking / Commerce / Land Commerce */
body[data-section="admin"] .admin-finance-intro{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:15px 17px;margin:13px 0;border:1px solid rgba(52,167,207,.35);
  border-radius:11px;background:linear-gradient(125deg,rgba(9,47,69,.87),rgba(3,24,41,.9));
}
body[data-section="admin"] .admin-finance-intro>div{min-width:205px;flex:1}
body[data-section="admin"] .admin-finance-intro strong{display:block;color:#eefaff;font-size:15px}
body[data-section="admin"] .admin-finance-intro span{
  display:block;color:#a3c4d1;font-size:11.5px;line-height:1.55;margin-top:4px
}
body[data-section="admin"] .admin-finance-tabs{
  display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:5px;
  border:1px solid rgba(54,120,158,.3);border-radius:10px;background:rgba(3,24,40,.5);
}
body[data-section="admin"] .admin-finance-tabs button{
  display:flex;align-items:center;gap:7px;min-height:40px;padding:9px 13px;
  border-radius:8px;border:1px solid transparent;background:transparent;
  color:#a6c4d2;font-weight:650;font-size:12px;
}
body[data-section="admin"] .admin-finance-tabs button:hover{
  color:#f3fbff;background:rgba(50,143,187,.16)
}
body[data-section="admin"] .admin-finance-tabs button.active{
  color:#e8faff;background:rgba(11,94,139,.53);
  border-color:rgba(68,194,239,.52)
}
body[data-section="admin"] .admin-finance-tabs button i{color:#67d6f5;font-size:15px}
body[data-section="admin"] .admin-finance-search{position:relative;display:flex;align-items:center}
body[data-section="admin"] .admin-finance-search>i{
  position:absolute;left:14px;pointer-events:none;color:#7fb0c6;font-size:14px;
}
body[data-section="admin"] .admin-finance-search .form-control{
  min-height:47px;padding:9px 43px;font-size:13px;border-radius:9px;
}
body[data-section="admin"] .admin-finance-search button{
  display:grid;place-items:center;position:absolute;right:9px;
  width:31px;height:31px;background:transparent;border:0;border-radius:7px;color:#aac6d4;
}
body[data-section="admin"] .admin-finance-search button:hover{background:rgba(255,255,255,.09);color:white}
body[data-section="admin"] .admin-finance-search button[hidden]{display:none}
body[data-section="admin"] .admin-finance-count{
  margin:10px 0;color:#93b6c6;font-size:11px;font-variant-numeric:tabular-nums
}
body[data-section="admin"] .admin-finance-count:empty{display:none}
body[data-section="admin"] .admin-finance-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;padding:4px 0;
}
body[data-section="admin"] .admin-finance-card{
  display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:13px;
  padding:18px;min-height:176px;border-radius:11px;
  border:1px solid rgba(49,151,192,.43);
  background:linear-gradient(152deg,rgba(10,42,60,.97),rgba(4,25,39,.97));
  box-shadow:0 9px 24px rgba(0,0,0,.15);
}
body[data-section="admin"] .admin-finance-card:hover{border-color:rgba(69,209,249,.72)}
body[data-section="admin"] .admin-finance-card-head{
  display:flex;align-items:center;gap:12px;width:100%;min-width:0;
}
body[data-section="admin"] .admin-finance-card-icon{
  display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;
  color:#58d7fb;font-size:19px;border:1px solid rgba(68,183,224,.4);
  border-radius:11px;background:rgba(13,81,112,.42);
}
body[data-section="admin"] .admin-finance-card-title{min-width:0}
body[data-section="admin"] .admin-finance-card-title strong{
  display:block;overflow-wrap:anywhere;color:#f1fbff;font-size:14px;line-height:1.35;
}
body[data-section="admin"] .admin-finance-card-title small{
  display:block;color:#89acbf;font-size:10px;margin-top:4px;
}
body[data-section="admin"] .admin-finance-facts{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;width:100%;margin-top:auto;
}
body[data-section="admin"] .admin-finance-fact{
  min-width:0;padding:10px 11px;border:1px solid rgba(60,125,166,.24);
  border-radius:8px;background:rgba(1,19,31,.44);
}
body[data-section="admin"] .admin-finance-fact span{
  display:block;color:#8daebe;font-size:10px;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-finance-fact strong{
  display:block;margin-top:4px;color:#e5f7ff;font-size:12px;
  overflow-wrap:anywhere;font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-finance-card>.btn{margin-top:auto}
body[data-section="admin"] .admin-finance-empty{min-height:235px}
body[data-section="admin"] .admin-finance-summary{
  padding:15px;border:1px solid rgba(56,153,198,.4);border-radius:10px;
  background:rgba(6,30,47,.55);margin-bottom:15px;
}
body[data-section="admin"] .admin-finance-summary h3{
  margin:0 0 12px;color:#effbff;font-size:14px;
}
body[data-section="admin"] .admin-finance-detail-message{
  padding:10px;color:#b2d2df;font-size:12px;
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-finance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  body[data-section="admin"] .admin-finance-card{padding:20px;min-height:200px}
  body[data-section="admin"] .admin-finance-card-title strong{font-size:15px}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-finance-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-finance-intro{padding:13px}
  body[data-section="admin"] .admin-finance-tabs button{font-size:11px;padding:9px}
  body[data-section="admin"] .admin-finance-card{min-height:160px}
}

/* R255 — Inventory: names-first responsive cards, scoped three-word search */
body[data-section="admin"] .admin-inventory-intro{
  display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;
  margin:12px 0 13px;padding:16px 17px;border-radius:11px;
  border:1px solid rgba(50,162,205,.35);
  background:linear-gradient(126deg,rgba(10,46,66,.89),rgba(3,24,40,.92));
}
body[data-section="admin"] .admin-inventory-intro>div{min-width:205px;flex:1}
body[data-section="admin"] .admin-inventory-intro strong{
  display:block;font-size:15px;color:#f0faff;font-weight:700;
}
body[data-section="admin"] .admin-inventory-intro span{
  display:block;font-size:11.5px;line-height:1.55;margin-top:5px;color:#9bbdcb;
}
body[data-section="admin"] .admin-inventory-intro .admin-inventory-scope{
  display:inline-flex;align-items:center;gap:7px;margin:0;padding:7px 10px;
  border:1px solid rgba(63,188,214,.32);background:rgba(12,92,123,.25);
  border-radius:8px;color:#9fe0ee;font-size:11px;
}
body[data-section="admin"] .admin-inventory-search{
  position:relative;display:flex;align-items:center;margin-top:6px;
}
body[data-section="admin"] .admin-inventory-search>i{
  position:absolute;left:15px;color:#77b7c9;pointer-events:none;font-size:15px;
}
body[data-section="admin"] .admin-inventory-search .form-control{
  min-height:48px;border-radius:9px;padding:10px 45px;font-size:13px;
}
body[data-section="admin"] .admin-inventory-search button{
  position:absolute;right:9px;width:31px;height:31px;display:grid;place-items:center;
  color:#a9c9d4;background:transparent;border:0;border-radius:7px;
}
body[data-section="admin"] .admin-inventory-search button:hover{
  color:#fff;background:rgba(255,255,255,.08);
}
body[data-section="admin"] .admin-inventory-search button[hidden]{display:none}
body[data-section="admin"] .admin-inventory-owner{
  display:flex;align-items:center;flex-wrap:wrap;gap:9px;
  margin-top:10px;margin-bottom:10px;
}
body[data-section="admin"] .admin-inventory-owner label{font-size:11px;color:#9bbdcb}
body[data-section="admin"] .admin-inventory-owner .form-control{
  width:min(460px,100%);min-height:36px;font-size:11.5px;border-radius:7px;
}
body[data-section="admin"] .admin-inventory-summary{
  margin:11px 1px;color:#89bdce;font-size:11px;font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-inventory-summary:empty{display:none}
body[data-section="admin"] .admin-inventory-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;
}
body[data-section="admin"] .admin-inventory-card{
  display:flex;flex-direction:column;gap:12px;min-width:0;min-height:226px;
  padding:18px;border-radius:12px;border:1px solid rgba(49,143,182,.45);
  background:linear-gradient(148deg,rgba(11,42,61,.98),rgba(4,23,37,.98));
  box-shadow:0 10px 25px rgba(0,0,0,.17);
  transition:border-color .16s ease,transform .16s ease;
}
body[data-section="admin"] .admin-inventory-card:hover{
  border-color:rgba(73,209,246,.74);transform:translateY(-2px);
}
body[data-section="admin"] .admin-inventory-card-head{
  display:flex;align-items:center;gap:12px;min-width:0;
}
body[data-section="admin"] .admin-inventory-icon{
  flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;
  border-radius:11px;border:1px solid rgba(59,186,226,.42);
  background:rgba(14,91,126,.39);color:#5dd8fc;font-size:19px;
}
body[data-section="admin"] .admin-inventory-folder .admin-inventory-icon{
  color:#80e1f7;background:rgba(16,108,128,.28);
}
body[data-section="admin"] .admin-inventory-title{min-width:0}
body[data-section="admin"] .admin-inventory-title strong{
  display:block;color:#f2fbff;font-size:14px;line-height:1.35;
  overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-inventory-title small{
  display:block;margin-top:4px;color:#91b7c9;font-size:11px;
}
body[data-section="admin"] .admin-inventory-description{
  margin:0;color:#b6d2df;font-size:11.5px;line-height:1.6;
  overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;
  -webkit-box-orient:vertical;overflow:hidden;
}
body[data-section="admin"] .admin-inventory-facts{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
  width:100%;margin-top:auto;
}
body[data-section="admin"] .admin-inventory-fact{
  min-width:0;padding:10px 11px;border:1px solid rgba(61,130,163,.23);
  background:rgba(1,19,30,.44);border-radius:8px;
}
body[data-section="admin"] .admin-inventory-fact span{
  display:block;font-size:10px;color:#8cabbc;
}
body[data-section="admin"] .admin-inventory-fact strong{
  display:block;margin-top:4px;color:#e2f4fc;font-size:12px;
  line-height:1.4;overflow-wrap:anywhere;font-weight:650;
}
body[data-section="admin"] .admin-inventory-actions{
  display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;
}
body[data-section="admin"] .admin-inventory-empty{min-height:232px}
body[data-section="admin"] .admin-inventory-warning{
  padding:11px 13px;margin-bottom:12px;border-radius:8px;
  color:#ffe4aa;background:rgba(113,76,15,.25);
  border:1px solid rgba(188,135,41,.42);font-size:12px;
}
body[data-section="admin"] .admin-inventory-detail-list{
  display:grid;gap:9px;
}
body[data-section="admin"] .admin-inventory-detail-description{
  margin:0;color:#c0dbe6;font-size:12px;line-height:1.6;
}
body[data-section="admin"] .admin-inventory-detail-row{
  display:flex;justify-content:space-between;align-items:flex-start;
  flex-wrap:wrap;gap:7px;padding:11px 12px;
  border:1px solid rgba(58,141,178,.26);border-radius:8px;
  background:rgba(3,23,39,.53);
}
body[data-section="admin"] .admin-inventory-detail-row span{
  color:#91b6c8;font-size:11px;
}
body[data-section="admin"] .admin-inventory-detail-row code{
  color:#e4f8ff;font-size:11px;overflow-wrap:anywhere;word-break:break-word;
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-inventory-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;
  }
  body[data-section="admin"] .admin-inventory-card{padding:21px;min-height:252px}
  body[data-section="admin"] .admin-inventory-title strong{font-size:15px}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-inventory-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-inventory-card{min-height:210px}
  body[data-section="admin"] .admin-inventory-intro{padding:13px}
  body[data-section="admin"] .admin-inventory-owner{align-items:flex-start}
}

/* R256 — OAuth clients, Audit and World API System overview */
body[data-section="admin"] .admin-ops-intro{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  flex-wrap:wrap;padding:15px 17px;margin:12px 0 14px;border-radius:11px;
  border:1px solid rgba(58,163,210,.37);
  background:linear-gradient(125deg,rgba(10,47,69,.90),rgba(3,23,40,.9));
}
body[data-section="admin"] .admin-ops-intro>div{flex:1;min-width:215px}
body[data-section="admin"] .admin-ops-intro strong{
  display:block;color:#ecfaff;font-weight:750;font-size:15px;
}
body[data-section="admin"] .admin-ops-intro span{
  display:block;color:#9cbccc;font-size:11.5px;line-height:1.55;margin-top:4px;
}
body[data-section="admin"] .admin-ops-intro .admin-ops-indicator{
  display:flex;align-items:center;gap:7px;flex:0 0 auto;
  padding:7px 10px;border-radius:8px;
  border:1px solid rgba(69,179,221,.3);
  color:#9cdfee;background:rgba(16,84,119,.23);font-size:11px;margin:0;
}
body[data-section="admin"] .admin-ops-search{
  position:relative;display:flex;align-items:center;margin-bottom:8px;
}
body[data-section="admin"] .admin-ops-search>i{
  position:absolute;left:14px;color:#8ab6c7;pointer-events:none;font-size:14px;
}
body[data-section="admin"] .admin-ops-search .form-control{
  min-height:47px;font-size:13px;padding:10px 45px;border-radius:9px;
}
body[data-section="admin"] .admin-ops-search button{
  display:grid;place-items:center;position:absolute;right:8px;
  width:32px;height:32px;border:0;border-radius:7px;
  color:#9cc0d0;background:transparent;
}
body[data-section="admin"] .admin-ops-search button:hover{
  background:rgba(255,255,255,.09);color:#fff;
}
body[data-section="admin"] .admin-ops-search button[hidden]{display:none}
body[data-section="admin"] .admin-ops-summary{
  margin:11px 0;color:#93b7c8;font-size:11px;font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-ops-summary:empty{display:none}
body[data-section="admin"] .admin-ops-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
}
body[data-section="admin"] .admin-ops-card{
  display:flex;flex-direction:column;min-width:0;gap:13px;
  padding:17px;border-radius:11px;border:1px solid rgba(52,149,190,.43);
  background:linear-gradient(148deg,rgba(9,41,60,.96),rgba(3,24,39,.97));
}
body[data-section="admin"] .admin-ops-card:hover{border-color:rgba(84,202,247,.72)}
body[data-section="admin"] .admin-ops-card-head{
  display:flex;align-items:center;gap:12px;min-width:0;
}
body[data-section="admin"] .admin-ops-icon{
  display:grid;place-items:center;flex:0 0 44px;
  width:44px;height:44px;border-radius:11px;
  border:1px solid rgba(63,185,229,.38);
  color:#69d8f7;background:rgba(15,90,123,.36);font-size:18px;
}
body[data-section="admin"] .admin-ops-card-heading{min-width:0}
body[data-section="admin"] .admin-ops-card-heading strong{
  display:block;color:#f0fbff;font-size:14px;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-ops-card-heading small{
  display:block;color:#92b1c1;font-size:10px;margin-top:5px;
}
body[data-section="admin"] .admin-ops-description{
  color:#b4d0dc;font-size:12px;line-height:1.55;margin:0;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-ops-facts,
body[data-section="admin"] .admin-ops-diagnostic-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
}
body[data-section="admin"] .admin-ops-fact{
  display:flex;flex-direction:column;gap:5px;min-width:0;
  border:1px solid rgba(55,133,173,.25);border-radius:8px;
  background:rgba(2,22,36,.45);padding:10px 11px;
}
body[data-section="admin"] .admin-ops-fact span{color:#8bafbf;font-size:10px}
body[data-section="admin"] .admin-ops-fact strong{
  color:#e0f3fd;font-size:11.5px;font-weight:650;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-ops-empty{min-height:225px}
body[data-section="admin"] .admin-ops-pagination{display:flex;justify-content:flex-start;margin:12px 0}
body[data-section="admin"] .admin-ops-pagination button[hidden]{display:none}
body[data-section="admin"] .admin-ops-audit-list{display:grid;gap:9px}
body[data-section="admin"] .admin-ops-audit-row{
  display:flex;align-items:flex-start;gap:13px;padding:14px 16px;
  min-width:0;border:1px solid rgba(49,148,190,.38);border-radius:10px;
  background:linear-gradient(128deg,rgba(9,41,58,.96),rgba(4,24,39,.96));
}
body[data-section="admin"] .admin-ops-audit-row:hover{border-color:rgba(80,205,242,.72)}
body[data-section="admin"] .admin-ops-audit-marker{
  flex:0 0 39px;display:grid;place-items:center;width:39px;height:39px;
  background:rgba(16,88,125,.32);border:1px solid rgba(67,181,227,.34);
  border-radius:10px;color:#5fd0f5;font-size:17px;
}
body[data-section="admin"] .admin-ops-audit-main{flex:1;min-width:0}
body[data-section="admin"] .admin-ops-audit-main>strong{
  display:block;color:#edfaff;font-size:13px;font-weight:700;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-ops-audit-main>p{
  color:#a9ccd9;font-size:11.5px;margin:5px 0 9px;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-ops-audit-foot{
  display:flex;flex-wrap:wrap;gap:7px 18px;font-size:10.5px;color:#8faebd;
}
body[data-section="admin"] .admin-ops-section{
  margin:0 0 16px;padding:18px;border:1px solid rgba(50,143,185,.38);
  border-radius:12px;background:linear-gradient(136deg,rgba(8,36,55,.91),rgba(4,22,38,.96));
}
body[data-section="admin"] .admin-ops-section>h3{
  display:flex;align-items:center;gap:9px;margin:0 0 16px;
  font-weight:700;font-size:14px;color:#effaff;
}
body[data-section="admin"] .admin-ops-section>h3 i{color:#61cef2}
body[data-section="admin"] .admin-ops-system-status{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
}
body[data-section="admin"] .admin-ops-system-primary{
  display:flex;flex-direction:column;gap:7px;min-width:0;
  border-radius:10px;padding:16px;
  border:1px solid rgba(61,151,195,.33);background:rgba(3,25,41,.65);
}
body[data-section="admin"] .admin-ops-system-primary.admin-ops-is-online{
  border-color:rgba(69,193,151,.5);
}
body[data-section="admin"] .admin-ops-overline{
  text-transform:uppercase;letter-spacing:.08em;
  font-size:10px;color:#8db0c3;
}
body[data-section="admin"] .admin-ops-system-primary>strong{
  font-size:19px;color:#ecfaff;font-weight:750;overflow-wrap:anywhere;
}
body[data-section="admin"] .admin-ops-system-primary.admin-ops-is-online>strong{
  color:#91f0ca;
}
body[data-section="admin"] .admin-ops-system-primary>small{
  font-size:10.5px;color:#a2bdcb;line-height:1.5;
}
body[data-section="admin"] .admin-ops-metric-grid{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;
}
body[data-section="admin"] .admin-ops-metric{
  display:flex;flex-direction:column;gap:7px;min-width:0;
  padding:15px 12px;border-radius:9px;border:1px solid rgba(64,143,181,.28);
  background:rgba(3,25,40,.58);
}
body[data-section="admin"] .admin-ops-metric strong{
  font-size:24px;line-height:1.2;color:#effbff;font-variant-numeric:tabular-nums;
}
body[data-section="admin"] .admin-ops-metric span{
  font-size:10.5px;color:#9bbccc;line-height:1.35;
}
body[data-section="admin"] .admin-ops-feature-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;
}
body[data-section="admin"] .admin-ops-feature{
  display:flex;flex-direction:column;gap:5px;min-width:0;
  padding:13px;border:1px solid rgba(67,142,177,.27);
  border-radius:9px;background:rgba(4,26,42,.54);
}
body[data-section="admin"] .admin-ops-feature span{
  color:#9cbdce;font-size:10.5px;
}
body[data-section="admin"] .admin-ops-feature strong{
  color:#e7f5fc;font-size:12px;line-height:1.4;overflow-wrap:anywhere;
}
@media(min-width:2560px){
  body[data-section="admin"] .admin-ops-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  body[data-section="admin"] .admin-ops-metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  body[data-section="admin"] .admin-ops-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1199px){
  body[data-section="admin"] .admin-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-section="admin"] .admin-ops-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-section="admin"] .admin-ops-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  body[data-section="admin"] .admin-ops-grid,
  body[data-section="admin"] .admin-ops-system-status,
  body[data-section="admin"] .admin-ops-feature-grid{grid-template-columns:1fr}
  body[data-section="admin"] .admin-ops-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-section="admin"] .admin-ops-section{padding:13px}
  body[data-section="admin"] .admin-ops-metric strong{font-size:21px}
  body[data-section="admin"] .admin-ops-intro{padding:13px}
}


/* R261: verified World API aggregates on the public start page only. */
.nv-home-stats-section{margin-top:27px;max-width:1060px}
.nv-home-stats-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 18px;flex-wrap:wrap}
.nv-home-stats-head h3{margin:0;font-size:15px;font-weight:650;letter-spacing:.15px;color:#f4fbff}
.nv-home-stats-head small{font-size:11px;color:#c0d7e3}
.nv-home-stats-section .nv-home-stats{margin-top:9px;max-width:none}
.nv-home-stats-unavailable{display:flex;align-items:center;gap:10px;margin-top:9px;min-height:66px;padding:14px 16px;border:1px solid rgba(59,145,190,.55);border-radius:8px;background:rgba(3,23,41,.82);font-size:13px;color:#d8e8f1}
.nv-home-stats-unavailable i{color:#62d6ff;font-size:18px}
@media(max-width:767px){.nv-home-stats-section{margin-top:20px}.nv-home-stats-head h3{font-size:14px}.nv-home-stats-head small{font-size:10px}.nv-home-stats-unavailable{font-size:12px}}


/* R265: genuine, public World places/destinations/events; no simulated artwork. */
.nv-home-discovery{margin-top:20px}
.nv-home-discovery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.nv-home-discovery-card{min-width:0;min-height:175px;padding:17px;border:1px solid rgba(47,145,192,.67);border-radius:10px;background:linear-gradient(140deg,rgba(8,34,55,.90),rgba(2,16,30,.94));box-shadow:0 8px 24px rgba(0,0,0,.19)}
.nv-home-discovery-icon{display:inline-flex;color:#40cbff;font-size:24px}
.nv-home-discovery-type{display:block;margin:6px 0 3px;font-size:11px;color:#a3d5e9;font-weight:600}
.nv-home-discovery-card h3{font-size:clamp(16px,.9vw,22px);line-height:1.23;margin:4px 0 9px;font-weight:720;overflow-wrap:anywhere}
.nv-home-discovery-card p{font-size:13px;line-height:1.45;color:#e2ecf3;margin:0 0 10px;overflow-wrap:anywhere}
.nv-home-discovery-card small{display:block;font-size:12px;line-height:1.45;color:#aed7e9;margin:5px 0;overflow-wrap:anywhere}
.nv-home-discovery-card small i{margin-right:6px}
.nv-home-discovery-link{display:inline-block;margin-top:10px;color:#45d6ff;font-size:12px;font-weight:650}
.nv-home-discovery-link:focus-visible,.nv-home-discovery-link:hover{color:#fff}
.nv-home-discovery-empty{margin:0;padding:18px;border:1px solid rgba(47,145,192,.45);border-radius:10px;background:rgba(5,23,41,.77);color:#c9dce8;font-size:13px}
@media(max-width:1199px){.nv-home-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.nv-home-discovery-grid{grid-template-columns:1fr}.nv-home-discovery-card{min-height:0;padding:15px}}

/* R267: Admin NexGroups – compact, responsive and read-only until API schemas are typed. */
body[data-section="admin"] .admin-groups-shell{padding:17px}
body[data-section="admin"] .admin-groups-toolbar{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;align-items:center;margin:17px 0;padding:15px;border:1px solid rgba(63,158,195,.3);border-radius:10px;background:rgba(8,40,62,.6)}
body[data-section="admin"] .admin-groups-toolbar strong,body[data-section="admin"] .admin-groups-toolbar span{display:block}
body[data-section="admin"] .admin-groups-toolbar strong{font-size:14px;color:#eefaff}
body[data-section="admin"] .admin-groups-toolbar span{font-size:12px;color:#a7cbdb;margin-top:3px}
body[data-section="admin"] .admin-groups-toolbar .admin-groups-readonly{font-size:11px;color:#67dbff;border:1px solid rgba(51,174,217,.4);border-radius:100px;padding:7px 10px;white-space:nowrap}
body[data-section="admin"] .admin-groups-search{display:flex;position:relative;align-items:center}
body[data-section="admin"] .admin-groups-search>i{position:absolute;left:14px;pointer-events:none;color:#66b7d8}
body[data-section="admin"] .admin-groups-search input{width:100%;padding:12px 45px;font-size:13px;border-radius:9px}
body[data-section="admin"] .admin-groups-search button{position:absolute;right:8px;border:0;background:none;color:#a7d8eb;border-radius:5px;width:32px;height:32px}
body[data-section="admin"] .admin-groups-search button[hidden]{display:none}
body[data-section="admin"] .admin-groups-resultline{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;min-height:39px;font-size:12px;color:#a8c6d6}
body[data-section="admin"] #adminGroupsStatus:not(:empty),body[data-section="admin"] #adminGroupsDetailStatus:not(:empty){color:#cde9f6}
body[data-section="admin"] .admin-groups-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body[data-section="admin"] .admin-groups-card{min-width:0;display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid rgba(51,145,186,.48);border-radius:12px;background:linear-gradient(140deg,rgba(10,43,62,.95),rgba(4,22,37,.96))}
body[data-section="admin"] .admin-groups-card-header{display:flex;align-items:center;gap:12px;min-width:0}
body[data-section="admin"] .admin-groups-icon{flex:0 0 43px;display:grid;place-items:center;width:43px;height:43px;border-radius:11px;color:#4adaff;background:rgba(24,112,153,.30);font-size:22px}
body[data-section="admin"] .admin-groups-card h3{font-size:15px;font-weight:700;overflow-wrap:anywhere;margin:0}
body[data-section="admin"] .admin-groups-card small{font-size:11px;color:#9cbdcf;overflow-wrap:anywhere}
body[data-section="admin"] .admin-groups-card p{font-size:12px;line-height:1.5;overflow-wrap:anywhere;color:#c7dbe6;margin:0}
body[data-section="admin"] .admin-groups-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:auto}
body[data-section="admin"] .admin-groups-fact{min-width:0;padding:8px;border:1px solid rgba(68,141,179,.23);border-radius:8px}
body[data-section="admin"] .admin-groups-fact span,body[data-section="admin"] .admin-groups-fact strong{display:block;overflow-wrap:anywhere}
body[data-section="admin"] .admin-groups-fact span{font-size:10px;color:#91b3c6}
body[data-section="admin"] .admin-groups-fact strong{font-size:12px;color:#effbff;margin-top:2px}
body[data-section="admin"] .admin-groups-card button{align-self:flex-start;font-size:12px;margin-top:7px}
body[data-section="admin"] .admin-groups-empty{padding:22px;min-height:150px;display:flex;flex-direction:column;justify-content:center;gap:8px;border:1px solid rgba(55,130,168,.45);border-radius:11px;background:rgba(6,30,49,.74);font-size:13px;color:#c8dce9}
body[data-section="admin"] .admin-groups-pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin:17px 0}
body[data-section="admin"] .admin-groups-pagination[hidden]{display:none}
body[data-section="admin"] .admin-groups-pagination span{font-size:12px;color:#a7ccd9;font-variant-numeric:tabular-nums}
body[data-section="admin"] .admin-groups-api-note{font-size:11px;color:#96b9c9;margin:17px 0 0}
body[data-section="admin"] .admin-groups-dialog{width:min(760px,calc(100vw - 22px));max-height:90vh;color:#e4f4fc;border:1px solid #267ea9;border-radius:13px;background:linear-gradient(160deg,#092b42,#041828);padding:0;box-shadow:0 18px 60px rgba(0,0,0,.65)}
body[data-section="admin"] .admin-groups-dialog::backdrop{background:rgba(0,10,20,.76)}
body[data-section="admin"] .admin-groups-dialog-content{padding:20px;overflow:auto;max-height:88vh}
body[data-section="admin"] .admin-groups-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
body[data-section="admin"] .admin-groups-dialog-head h2{font-size:20px;margin:2px 0 8px;overflow-wrap:anywhere}
body[data-section="admin"] .admin-groups-dialog-head small{font-size:11px;color:#8fb9ce}
body[data-section="admin"] .admin-groups-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 13px}
body[data-section="admin"] .admin-groups-tabs [aria-pressed="true"]{border-color:#35c8fb;background:#0c567c;color:#fff}
body[data-section="admin"] .admin-groups-detail{display:grid;gap:9px;margin-top:12px}
body[data-section="admin"] .admin-groups-detail-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:7px;padding:11px 13px;border:1px solid rgba(67,137,178,.32);border-radius:9px;background:rgba(5,35,54,.71);font-size:12px}
body[data-section="admin"] .admin-groups-detail-row span{color:#9dbdcd}
body[data-section="admin"] .admin-groups-detail-row strong{overflow-wrap:anywhere;max-width:100%}
@media(min-width:2560px){body[data-section="admin"] .admin-groups-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1199px){body[data-section="admin"] .admin-groups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){body[data-section="admin"] .admin-groups-grid{grid-template-columns:1fr}body[data-section="admin"] .admin-groups-shell{padding:12px}body[data-section="admin"] .admin-groups-toolbar{padding:12px}}

/* R269: manual admin scope and safe World GET verification. */
.admin-checks-shell{padding:17px}
.admin-checks-warning{margin:12px 0;padding:12px 14px;border:1px solid rgba(57,166,204,.5);border-radius:9px;background:rgba(5,35,55,.65);font-size:12px;line-height:1.5;color:#cce5f1}
.admin-checks-legend{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.admin-checks-legend span{font-size:11px;border:1px solid rgba(62,141,175,.32);border-radius:20px;padding:5px 9px;color:#accddd}
.admin-checks-summary{font-size:12px;color:#add7ea;margin:15px 0}
.admin-checks-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-checks-card{display:flex;flex-direction:column;gap:11px;min-width:0;border:1px solid rgba(56,146,184,.5);border-radius:11px;background:linear-gradient(140deg,rgba(7,37,55,.94),rgba(3,24,41,.97));padding:17px}
.admin-checks-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.admin-checks-card h3{font-size:15px;margin:0;color:#ecfaff;overflow-wrap:anywhere}
.admin-checks-card-head a{font-size:11px;color:#59d7ff;text-align:right;white-space:nowrap}
.admin-checks-scope{display:flex;flex-direction:column;gap:6px;border:1px solid rgba(61,143,174,.25);border-radius:7px;padding:9px 10px}
.admin-checks-scope span{font-size:12px;color:#ccdfea;overflow-wrap:anywhere}
.admin-checks-scope small{font-size:11px;color:#8cbacf}
.admin-checks-card p{font-size:12px;line-height:1.4;color:#b4cddb;margin:0;flex:1;overflow-wrap:anywhere}
.admin-checks-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.admin-checks-actions button{font-size:11px}
.admin-checks-outcome{font-size:11px;color:#a4d6e8;overflow-wrap:anywhere}
.admin-checks-manual{font-size:11px;color:#8eacbe}
@media(min-width:2600px){.admin-checks-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1199px){.admin-checks-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-checks-grid{grid-template-columns:1fr}.admin-checks-shell{padding:12px}}
/* Keep check controls clear of the sticky portal header on in-page navigation. */
html:has(.admin-checks-shell){scroll-padding-top:96px}
.admin-checks-card{scroll-margin-top:96px}

/* R271: explicitly generated, redacted local admin check report. */
.admin-checks-report-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0 17px}
.admin-checks-report-toolbar button{font-size:12px}
.admin-checks-report-toolbar span,.admin-checks-report-panel label{font-size:11px;color:#aacbde}
.admin-checks-report-panel{padding:14px;margin-bottom:18px;border:1px solid rgba(48,153,194,.48);border-radius:10px;background:rgba(4,31,49,.92)}
.admin-checks-report-panel[hidden]{display:none}
.admin-checks-report-panel label{display:block;margin-bottom:8px}
.admin-checks-report-panel textarea{display:block;width:100%;min-height:160px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;resize:vertical;white-space:pre;overflow:auto}
.admin-checks-report-panel button{margin-top:10px}
#adminChecksReportStatus{font-size:11px;color:#a9d8e6;margin-left:10px}
@media(max-width:575px){.admin-checks-report-panel{padding:10px}.admin-checks-report-panel textarea{font-size:11px}}

/* R276 – opt-in, locally generated group-subresource diagnostics. */
body[data-section="admin"] .admin-groups-report{border-top:1px solid rgba(65,146,183,.5);margin-top:18px;padding-top:13px}
body[data-section="admin"] .admin-groups-report p,body[data-section="admin"] .admin-groups-report label{font-size:12px;line-height:1.5;color:#afcedf;margin:0 0 10px}
body[data-section="admin"] #adminGroupsCheckSummary{font-size:12px;color:#c6e3f0;margin-bottom:10px;overflow-wrap:anywhere}
body[data-section="admin"] #adminGroupsReportPanel{margin-top:12px;padding:12px;border:1px solid rgba(78,153,183,.4);border-radius:8px;background:rgba(0,20,34,.7)}
body[data-section="admin"] #adminGroupsReportPanel[hidden]{display:none}
body[data-section="admin"] #adminGroupsReportText{width:100%;min-height:135px;resize:vertical;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;overflow:auto}
body[data-section="admin"] #adminGroupsReportStatus{display:inline-block;padding:9px 0 0 9px;color:#9dcedf}
body[data-section="admin"] .admin-groups-detail-partial{border-left:3px solid #dcb55c;padding:10px 12px;background:rgba(100,70,20,.25);font-size:12px;color:#f4deac;border-radius:6px}
@media(max-width:580px){body[data-section="admin"] #adminGroupsReportPanel{padding:9px}body[data-section="admin"] #adminGroupsReportText{font-size:11px}}

/* R278 – persistent administration of public account registration. */
.nv-registration-closed{text-align:center;padding:12px 0 16px}
.nv-registration-closed>i{font-size:35px;color:#75ddf4}
.nv-registration-closed h3{margin:12px 0}
.nv-registration-closed p{font-size:14px;line-height:1.6;color:#c3d5e0}
.nv-registration-back{display:block;text-decoration:none;margin-top:20px}
.admin-registration-settings{max-width:1000px;margin:0 auto;padding:12px 4px 40px}
.admin-registration-head{display:flex;gap:17px;align-items:center;margin-bottom:22px}
.admin-registration-head-icon{width:65px;height:65px;display:grid;place-items:center;flex:none;border-radius:16px;background:rgba(36,170,204,.15);border:1px solid rgba(90,215,242,.35);font-size:28px;color:#68d9f6}
.admin-registration-eyebrow,.admin-registration-kicker{display:block;color:#81c5e0;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}
.admin-registration-head h1{font-size:clamp(23px,2.3vw,32px);margin:5px 0}
.admin-registration-head p{max-width:650px;color:#b2c9d9;font-size:14px;line-height:1.55}
.admin-registration-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 24px;background:linear-gradient(125deg,rgba(11,40,62,.97),rgba(6,26,43,.98));border:1px solid rgba(75,163,197,.35);border-radius:18px;padding:26px;box-shadow:0 16px 38px rgba(0,0,0,.15)}
.admin-registration-panel h2{font-size:21px;margin:8px 0}
.admin-registration-panel-copy p{color:#abc8d9;line-height:1.6;font-size:13px;max-width:570px}
.admin-registration-action{display:flex;align-items:flex-end;flex-direction:column;justify-content:center;gap:16px}
.admin-registration-state{color:#f1c887;background:rgba(129,76,25,.22);border:1px solid rgba(217,147,68,.38);border-radius:999px;padding:6px 12px;font-size:12px}
.admin-registration-state.enabled{color:#9aefc4;background:rgba(25,112,72,.19);border-color:rgba(96,227,158,.45)}
.admin-registration-switch{display:flex;align-items:center;gap:13px;font-size:13px;cursor:pointer}
.admin-registration-switch input{position:absolute;opacity:0;width:1px;height:1px}
.admin-registration-switch-track{position:relative;width:54px;height:29px;border:1px solid rgba(117,165,196,.6);border-radius:20px;background:#2c4760;transition:background .2s}
.admin-registration-switch-track:before{content:"";position:absolute;top:3px;left:3px;width:21px;height:21px;background:white;border-radius:100%;transition:transform .2s}
.admin-registration-switch input:checked+.admin-registration-switch-track{background:#16865b}
.admin-registration-switch input:checked+.admin-registration-switch-track:before{transform:translateX(25px)}
.admin-registration-switch input:focus-visible+.admin-registration-switch-track{outline:3px solid #7ee8ff;outline-offset:3px}
.admin-registration-switch input:disabled+.admin-registration-switch-track{opacity:.45;cursor:not-allowed}
.admin-registration-footnote,.admin-registration-message{grid-column:1/-1;font-size:12px;line-height:1.6;margin:0;color:#a8c8d8}
.admin-registration-message{min-height:20px;color:#cce7f4}
@media(max-width:680px){.admin-registration-head{align-items:flex-start}.admin-registration-panel{grid-template-columns:1fr;padding:18px}.admin-registration-action{align-items:flex-start}}

/* R279 – registration locked: dedicated, human-centered, ultrawide-friendly view. */
body[data-section="public"][data-active="register"] .nv-registration-notice-page{
  position:relative;isolation:isolate;display:grid;place-items:center;
  min-height:100svh;padding:clamp(112px,11svh,172px) 24px clamp(65px,8svh,124px);
  overflow:hidden;background:#020a16;color:#eaf6fd;
}
.nv-registration-notice-scene,.nv-registration-notice-scene:after{
  position:absolute;inset:0;z-index:-1;
}
.nv-registration-notice-scene img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center 45%;
  filter:saturate(.9) brightness(.67);
}
.nv-registration-notice-scene:after{
  content:"";background:linear-gradient(180deg,rgba(1,8,19,.55) 0%,rgba(1,9,24,.48) 40%,rgba(1,8,19,.93) 100%),
  radial-gradient(ellipse 57% 70% at 50% 49%,rgba(2,20,38,.34),rgba(1,8,18,.83));
}
.nv-registration-notice-container{width:min(100%,920px);position:relative;z-index:1}
.nv-registration-notice-panel{
  position:relative;overflow:hidden;text-align:center;
  padding:clamp(30px,3.5vw,66px) clamp(22px,4vw,74px) clamp(29px,3vw,49px);
  border:1px solid rgba(81,187,227,.38);border-radius:clamp(18px,1.6vw,28px);
  background:linear-gradient(150deg,rgba(6,27,47,.94),rgba(3,16,31,.975));
  box-shadow:0 28px 95px rgba(0,0,0,.58),0 0 48px rgba(13,169,229,.10);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
}
.nv-registration-notice-panel:before{
  content:"";pointer-events:none;position:absolute;left:16%;right:16%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(112,224,255,.95),transparent);
}
.nv-registration-notice-logo{
  width:clamp(185px,27vw,335px);max-width:90%;height:auto;max-height:120px;
  object-fit:contain;display:block;margin:0 auto clamp(18px,2vw,26px);
  filter:drop-shadow(0 2px 12px rgba(21,183,253,.22));
}
.nv-registration-notice-tag{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  border-radius:999px;border:1px solid rgba(92,181,218,.36);
  background:rgba(26,95,125,.16);color:#a5d9ea;
  letter-spacing:.055em;font-size:clamp(11px,.9vw,13px);font-weight:650;
  padding:9px 17px;margin-bottom:clamp(18px,2vw,27px);
}
.nv-registration-notice-tag i{font-size:13px;color:#7fd7f2}
.nv-registration-notice-panel h1{
  margin:0 auto clamp(15px,1.6vw,23px);max-width:670px;
  font-size:clamp(28px,3.2vw,48px);font-weight:750;line-height:1.14;letter-spacing:-.035em;
  text-wrap:balance;color:#f2faff;
}
.nv-registration-notice-panel>p:not(.nv-registration-notice-subtext){
  max-width:625px;margin:0 auto;color:#b7d1e1;
  font-size:clamp(14px,1.1vw,17px);line-height:1.75;
  text-wrap:pretty;
}
.nv-registration-notice-button{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  min-height:49px;padding:13px clamp(26px,2.4vw,39px);
  max-width:100%;margin-top:clamp(24px,2.6vw,38px);
  text-decoration:none;border-radius:11px;
  background:linear-gradient(110deg,#2bd6f5,#2397d4);color:#031a2c;
  font-size:clamp(14px,1vw,16px);font-weight:750;
  box-shadow:0 11px 29px rgba(1,124,174,.23);
  transition:transform .15s,box-shadow .15s;
}
.nv-registration-notice-button:hover{color:#021929;transform:translateY(-2px);box-shadow:0 15px 31px rgba(1,124,174,.35)}
.nv-registration-notice-button:focus-visible{outline:3px solid #f6fbff;outline-offset:4px}
.nv-registration-notice-subtext{
  font-size:clamp(12px,.85vw,13px);color:#84aabc;
  margin:19px auto 0;line-height:1.5;
}
@media(min-width:2400px){
  .nv-registration-notice-container{width:min(100%,1020px)}
  .nv-registration-notice-panel{padding-top:70px;padding-bottom:56px}
  .nv-registration-notice-panel h1{max-width:740px}
  .admin-registration-settings{max-width:1540px}
}
@media(max-width:700px){
  body[data-section="public"][data-active="register"] .nv-registration-notice-page{
    padding:calc(68px + 37px) 16px 46px;min-height:100svh;
  }
  .nv-registration-notice-panel{padding:31px 22px 33px}
  .nv-registration-notice-panel h1{font-size:clamp(27px,7vw,36px)}
  .nv-registration-notice-logo{width:min(64vw,255px)}
  .nv-registration-notice-button{width:100%}
  .nv-registration-notice-scene img{object-position:52% 50%}
}
@media(max-width:360px){
  body[data-section="public"][data-active="register"] .nv-registration-notice-page{padding-inline:10px}
  .nv-registration-notice-panel{padding-inline:18px}
}

/* R281 – Admin settings across real desktop, 3440px ultrawide and mobile widths.
   Scoped to this page: global portal and other admin screens stay unchanged. */
body[data-section="admin"][data-active="settings"] .admin-registration-settings{
  width:100%;
  max-width:none;
  min-width:0;
  margin:0;
  padding:clamp(6px,.7vw,18px) 0 clamp(28px,3vw,64px);
}
body[data-section="admin"][data-active="settings"] .admin-registration-head{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  min-width:0;
  min-height:clamp(154px,11vw,232px);
  margin:0 0 clamp(18px,1.35vw,30px);
  padding:clamp(24px,2.1vw,43px) clamp(24px,2.3vw,55px);
  align-items:center;
  gap:clamp(18px,1.5vw,31px);
  border-radius:clamp(14px,1vw,22px);
  border:1px solid rgba(67,158,199,.47);
  background:
    linear-gradient(90deg,rgba(3,21,36,.96) 0%,rgba(4,29,48,.88) 52%,rgba(5,29,47,.62) 100%),
    url('/assets/admin-dashboard-hero.webp') center/cover no-repeat;
  box-shadow:0 18px 42px rgba(0,0,0,.16);
}
body[data-section="admin"][data-active="settings"] .admin-registration-head-icon{
  width:clamp(62px,4.8vw,91px);
  height:clamp(62px,4.8vw,91px);
  flex:0 0 auto;
  border-radius:18px;
  font-size:clamp(25px,2vw,37px);
  background:rgba(13,94,125,.31);
}
body[data-section="admin"][data-active="settings"] .admin-registration-head-content{
  min-width:0;
  max-width:1000px;
}
body[data-section="admin"][data-active="settings"] .admin-registration-eyebrow{
  font-size:clamp(12px,.78vw,15px);
  color:#8bdaf3;
  letter-spacing:.11em;
}
body[data-section="admin"][data-active="settings"] .admin-registration-head h1{
  margin:8px 0 11px;
  color:#f5fcff;
  font-size:clamp(30px,2.2vw,49px);
  font-weight:760;
  line-height:1.12;
  letter-spacing:-.025em;
}
body[data-section="admin"][data-active="settings"] .admin-registration-head p{
  margin:0;
  max-width:850px;
  color:#c6deed;
  font-size:clamp(14px,.95vw,18px);
  line-height:1.65;
}
body[data-section="admin"][data-active="settings"] .admin-registration-head-mark{
  margin-left:auto;
  padding:0 clamp(8px,3vw,64px);
  font-size:clamp(54px,5.8vw,145px);
  line-height:1;
  color:rgba(116,208,237,.13);
}
body[data-section="admin"][data-active="settings"] .admin-registration-layout{
  display:grid;
  width:100%;
  min-width:0;
  grid-template-columns:minmax(0,1.7fr) minmax(320px,.82fr);
  gap:clamp(16px,1.4vw,30px);
  align-items:stretch;
}
body[data-section="admin"][data-active="settings"] .admin-registration-panel{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:clamp(420px,25vw,520px);
  gap:clamp(18px,1.35vw,27px);
  padding:clamp(23px,2vw,44px);
  border-radius:clamp(15px,1vw,21px);
  border:1px solid rgba(64,165,206,.42);
  background:linear-gradient(142deg,rgba(9,43,67,.97),rgba(4,25,42,.99));
  box-shadow:0 22px 48px rgba(0,0,0,.18);
}
body[data-section="admin"][data-active="settings"] .admin-registration-panel-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
}
body[data-section="admin"][data-active="settings"] .admin-registration-panel-copy{
  flex:1 1 330px;
  min-width:0;
}
body[data-section="admin"][data-active="settings"] .admin-registration-kicker{
  font-size:clamp(12px,.72vw,14px);
  color:#86cfe7;
}
body[data-section="admin"][data-active="settings"] .admin-registration-panel h2{
  margin:12px 0;
  font-size:clamp(23px,1.65vw,34px);
  line-height:1.18;
  color:#f1faff;
  letter-spacing:-.015em;
}
body[data-section="admin"][data-active="settings"] .admin-registration-panel-copy p{
  margin:0;
  max-width:60ch;
  color:#bad3e1;
  font-size:clamp(14px,.94vw,18px);
  line-height:1.65;
}
body[data-section="admin"][data-active="settings"] .admin-registration-state{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 15px;
  font-size:clamp(12px,.79vw,15px);
  font-weight:650;
  white-space:normal;
  text-align:center;
}
body[data-section="admin"][data-active="settings"] .admin-registration-control{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-width:0;
  padding:clamp(19px,1.4vw,27px);
  border-radius:14px;
  border:1px solid rgba(102,184,216,.35);
  background:rgba(4,20,34,.59);
}
body[data-section="admin"][data-active="settings"] .admin-registration-control-copy{
  flex:1 1 auto;
  min-width:0;
}
body[data-section="admin"][data-active="settings"] .admin-registration-control-copy strong{
  display:block;
  margin-bottom:6px;
  font-size:clamp(17px,1.03vw,21px);
  color:#f0faff;
  line-height:1.3;
}
body[data-section="admin"][data-active="settings"] .admin-registration-control-copy p{
  margin:0;
  max-width:52ch;
  font-size:clamp(13px,.86vw,17px);
  line-height:1.55;
  color:#b2ccdd;
}
body[data-section="admin"][data-active="settings"] .admin-registration-switch{
  flex:0 0 auto;
  min-height:48px;
  gap:14px;
  margin:0;
  font-size:clamp(14px,.92vw,18px);
  font-weight:650;
  color:#e7f8ff;
}
body[data-section="admin"][data-active="settings"] .admin-registration-switch-track{
  width:64px;
  height:36px;
}
body[data-section="admin"][data-active="settings"] .admin-registration-switch-track:before{
  width:26px;
  height:26px;
  top:4px;
  left:4px;
}
body[data-section="admin"][data-active="settings"] .admin-registration-switch input:checked+.admin-registration-switch-track:before{
  transform:translateX(28px);
}
body[data-section="admin"][data-active="settings"] .admin-registration-explanation{
  display:flex;
  align-items:flex-start;
  gap:15px;
  min-width:0;
  padding:clamp(16px,1.2vw,24px);
  border-radius:12px;
  border:1px solid rgba(54,134,176,.27);
  background:rgba(5,30,49,.7);
}
body[data-section="admin"][data-active="settings"] .admin-registration-explanation i{
  flex:none;
  font-size:clamp(19px,1.2vw,25px);
  color:#76cfea;
}
body[data-section="admin"][data-active="settings"] .admin-registration-explanation p{
  margin:0;
  max-width:75ch;
  font-size:clamp(13px,.85vw,17px);
  line-height:1.6;
  color:#c7e0eb;
}
body[data-section="admin"][data-active="settings"] .admin-registration-footnote{
  margin:0;
  font-size:clamp(12px,.76vw,15px);
  line-height:1.6;
  color:#9abacc;
}
body[data-section="admin"][data-active="settings"] .admin-registration-footnote code{
  color:#9cddf7;
  font-size:inherit;
}
body[data-section="admin"][data-active="settings"] .admin-registration-message{
  min-height:24px;
  margin-top:auto;
  color:#a6e3f2;
  font-size:clamp(13px,.86vw,17px);
  line-height:1.6;
}
body[data-section="admin"][data-active="settings"] .admin-registration-info{
  display:grid;
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:clamp(16px,1.4vw,30px);
  min-width:0;
}
body[data-section="admin"][data-active="settings"] .admin-registration-info-card{
  display:flex;
  align-items:flex-start;
  gap:clamp(14px,1.1vw,23px);
  min-width:0;
  padding:clamp(21px,1.7vw,36px);
  border-radius:clamp(15px,1vw,21px);
  border:1px solid rgba(63,145,184,.32);
  background:linear-gradient(145deg,rgba(8,38,59,.92),rgba(4,25,42,.97));
}
body[data-section="admin"][data-active="settings"] .admin-registration-info-icon{
  display:grid;
  flex:none;
  place-items:center;
  width:clamp(47px,3.15vw,67px);
  height:clamp(47px,3.15vw,67px);
  border-radius:13px;
  border:1px solid rgba(66,184,226,.42);
  background:rgba(15,95,133,.25);
  color:#75d7f2;
  font-size:clamp(21px,1.4vw,30px);
}
body[data-section="admin"][data-active="settings"] .admin-registration-info-card>div:last-child{
  min-width:0;
}
body[data-section="admin"][data-active="settings"] .admin-registration-info-card h3{
  margin:4px 0 12px;
  color:#edf9ff;
  font-size:clamp(18px,1.16vw,24px);
  line-height:1.3;
}
body[data-section="admin"][data-active="settings"] .admin-registration-info-card p{
  margin:0;
  color:#b2cfdd;
  font-size:clamp(14px,.9vw,18px);
  line-height:1.65;
}
@media(max-width:1450px){
  body[data-section="admin"][data-active="settings"] .admin-registration-layout{
    grid-template-columns:minmax(0,1.5fr) minmax(260px,.85fr);
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-control{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media(max-width:1280px){
  body[data-section="admin"][data-active="settings"] .admin-registration-layout{
    grid-template-columns:minmax(0,1fr);
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-info{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-panel{
    min-height:0;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-head-mark{
    display:none;
  }
}
@media(max-width:650px){
  body[data-section="admin"][data-active="settings"] .admin-registration-head{
    align-items:flex-start;
    min-height:0;
    gap:13px;
    padding:20px 16px;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-head-icon{
    width:46px;
    height:46px;
    border-radius:12px;
    font-size:21px;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-head h1{
    margin:6px 0 9px;
    font-size:clamp(23px,6vw,29px);
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-head p{
    font-size:13px;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-panel{
    padding:19px 16px;
    gap:18px;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-control{
    padding:17px 14px;
    gap:15px;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-info{
    grid-template-columns:1fr;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-info-card{
    padding:19px 17px;
  }
  body[data-section="admin"][data-active="settings"] .admin-registration-panel-top{
    gap:14px;
  }
}

/* R282 – explicit read-only grid and World API administration. */
body[data-section="admin"][data-active="grid"] .admin-grid-tools{display:grid;gap:18px;min-width:0}
body[data-section="admin"][data-active="grid"] .admin-grid-alert{
  display:flex;align-items:flex-start;gap:14px;
  border-radius:13px;padding:17px 21px;background:rgba(18,85,117,.22);
  border:1px solid rgba(44,171,222,.37);color:#c3e0ee;
  font-size:clamp(13px,.8vw,16px);line-height:1.6;
}
body[data-section="admin"][data-active="grid"] .admin-grid-alert i{font-size:24px;color:#77d6ed;flex:none}
body[data-section="admin"][data-active="grid"] .admin-grid-tool-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;gap:clamp(13px,1.1vw,24px);
}
body[data-section="admin"][data-active="grid"] .admin-grid-tool{
  display:flex;flex-direction:column;align-items:stretch;gap:16px;
  min-width:0;padding:clamp(18px,1.6vw,33px);
  background:linear-gradient(140deg,rgba(9,43,67,.96),rgba(4,23,38,.99));
  border:1px solid rgba(72,161,203,.37);border-radius:16px;
}
body[data-section="admin"][data-active="grid"] .admin-grid-kicker{
  color:#86cce5;font-size:clamp(11px,.71vw,14px);line-height:1.5;
  overflow-wrap:anywhere;
}
body[data-section="admin"][data-active="grid"] .admin-grid-tool h2{
  font-size:clamp(19px,1.3vw,28px);color:#f3fcff;font-weight:720;margin:0;
}
body[data-section="admin"][data-active="grid"] .admin-grid-tool h2 i{margin-right:9px;color:#71d6f0}
body[data-section="admin"][data-active="grid"] .admin-grid-tool>p{
  font-size:clamp(13px,.87vw,17px);color:#b1cbd9;line-height:1.6;margin:0;max-width:80ch;
}
body[data-section="admin"][data-active="grid"] .admin-grid-fields{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;
}
body[data-section="admin"][data-active="grid"] .admin-grid-tool label{
  color:#c7e5f3;font-size:clamp(12px,.82vw,15px);font-weight:600;
  display:grid;gap:8px;min-width:0;
}
body[data-section="admin"][data-active="grid"] .admin-grid-tool .form-control{
  width:100%;min-width:0;min-height:44px;font-size:clamp(13px,.83vw,16px)
}
body[data-section="admin"][data-active="grid"] .admin-grid-tool button[type=submit]{
  align-self:flex-start;padding:11px 20px;font-size:clamp(13px,.85vw,16px);
}
body[data-section="admin"][data-active="grid"] .admin-grid-result{
  min-height:38px;min-width:0;border-top:1px solid rgba(96,173,210,.16);padding-top:15px;
}
body[data-section="admin"][data-active="grid"] .admin-grid-stats{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));
  gap:9px;margin:0;
}
body[data-section="admin"][data-active="grid"] .admin-grid-value{
  display:flex;flex-direction:column;gap:4px;min-width:0;
  border:1px solid rgba(66,149,186,.27);border-radius:10px;
  background:rgba(1,15,29,.43);padding:12px 13px;
}
body[data-section="admin"][data-active="grid"] .admin-grid-value span{
  font-size:clamp(12px,.71vw,14px);color:#9cbccc;
}
body[data-section="admin"][data-active="grid"] .admin-grid-value strong{
  font-size:clamp(14px,.91vw,18px);font-weight:650;color:#e8f9ff;overflow-wrap:anywhere
}
body[data-section="admin"][data-active="grid"] .admin-grid-cell-list{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:7px;
  max-height:350px;overflow:auto;margin-top:12px;
}
body[data-section="admin"][data-active="grid"] .admin-grid-cell{
  display:flex;flex-direction:column;gap:4px;
  font-size:12px;padding:9px;background:#0b3b53;border-radius:7px;
  border:1px solid rgba(96,173,210,.25);
}
body[data-section="admin"][data-active="grid"] .admin-grid-cell-free{background:#123c33}
body[data-section="admin"][data-active="grid"] .admin-grid-cell-reserved{background:#4b3520}
body[data-section="admin"][data-active="grid"] .admin-grid-cell-conflict{background:#622a2d}
body[data-section="admin"][data-active="grid"] .admin-grid-hint{color:#adcad9;font-size:13px}
body[data-section="admin"][data-active="grid"] .admin-grid-error{color:#ffb9a6;font-size:13px;line-height:1.6}
body[data-section="admin"][data-active="grid"] .admin-grid-valid{color:#8df2b2;font-size:16px;font-weight:700}
body[data-section="admin"][data-active="grid"] .admin-grid-invalid{color:#ffd49a;font-size:16px;font-weight:700}
@media(max-width:1250px){
  body[data-section="admin"][data-active="grid"] .admin-grid-tool-grid{grid-template-columns:1fr}
}
@media(min-width:2900px){
  body[data-section="admin"][data-active="grid"] .admin-grid-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:530px){
  body[data-section="admin"][data-active="grid"] .admin-grid-tool{padding:17px}
  body[data-section="admin"][data-active="grid"] .admin-grid-fields{grid-template-columns:1fr}
}
/* R282 – seven group detail tabs wrap without horizontal scrollbar. */
body[data-section="admin"] .admin-groups-tabs{display:flex;flex-wrap:wrap;gap:7px;max-width:100%}
body[data-section="admin"] .admin-groups-tabs button{white-space:normal}

/* R283: Banking dashboard – full-width desktop table, legible mobile records.
   All changes are scoped to the Banking admin view. */
body[data-section="admin"][data-active="banking"] .portal-content{min-width:0}
body[data-section="admin"][data-active="banking"] .admin-finance-intro{
  padding:clamp(18px,1.5vw,30px);align-items:center;
  background:linear-gradient(120deg,rgba(10,57,78,.86),rgba(3,30,48,.92));
  border:1px solid rgba(77,170,208,.37);border-radius:15px;
}
body[data-section="admin"][data-active="banking"] .admin-finance-intro strong{
  font-size:clamp(19px,1.25vw,28px);margin-bottom:8px;
}
body[data-section="admin"][data-active="banking"] .admin-finance-intro span{
  font-size:clamp(13px,.87vw,17px);line-height:1.55;
}
body[data-section="admin"][data-active="banking"] .admin-finance-tabs{
  display:flex;flex-wrap:wrap;gap:9px;padding:11px;
}
body[data-section="admin"][data-active="banking"] .admin-finance-tabs button{
  font-size:clamp(13px,.9vw,17px);min-height:42px;padding:10px 17px;
}
body[data-section="admin"][data-active="banking"] .admin-finance-search .form-control{
  font-size:clamp(14px,.9vw,17px);min-height:47px;
}
body[data-section="admin"][data-active="banking"] #adminApiContent{
  display:block;width:100%;min-width:0;max-width:none;padding:0;
}
body[data-section="admin"][data-active="banking"] .nv-bank-kpis{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(10px,1.1vw,20px);margin:15px 0;
}
body[data-section="admin"][data-active="banking"] .nv-bank-kpi{
  display:flex;flex-direction:column;gap:8px;min-width:0;
  padding:clamp(16px,1.5vw,28px);border-radius:13px;
  border:1px solid rgba(78,159,193,.36);
  background:linear-gradient(160deg,rgba(11,49,71,.97),rgba(3,25,42,.98));
}
body[data-section="admin"][data-active="banking"] .nv-bank-kpi>span{
  color:#9ec6db;font-size:clamp(12px,.83vw,16px);font-weight:650;
}
body[data-section="admin"][data-active="banking"] .nv-bank-kpi>strong{
  color:#f2fbff;font-size:clamp(22px,1.75vw,35px);line-height:1.1;
  overflow-wrap:anywhere;
}
body[data-section="admin"][data-active="banking"] .nv-bank-kpi>strong.nv-bank-kpi-caption{
  font-size:clamp(16px,1.1vw,23px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-kpi>small{
  font-size:clamp(11px,.75vw,14px);color:#87aec5;line-height:1.5;
}
body[data-section="admin"][data-active="banking"] .nv-bank-filterbar{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;
  gap:12px;align-items:end;margin:14px 0;
}
body[data-section="admin"][data-active="banking"] .nv-bank-filterbar label{
  display:grid;gap:8px;min-width:0;color:#bbddeb;
  font-size:clamp(12px,.8vw,16px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-filterbar .form-control,
body[data-section="admin"][data-active="banking"] .nv-bank-filterbar .form-select{
  min-width:0;min-height:43px;color:#ebf8fc;font-size:clamp(13px,.85vw,16px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-filterbar button{
  min-height:43px;white-space:normal;
}
body[data-section="admin"][data-active="banking"] .nv-bank-scope-note{
  margin:6px 0 12px;color:#93b8cd;
  font-size:clamp(12px,.79vw,15px);line-height:1.55;
}
body[data-section="admin"][data-active="banking"] .nv-bank-table-scroll{
  width:100%;min-width:0;overflow:auto;border-radius:14px;
  border:1px solid rgba(78,161,199,.37);
  background:rgba(3,29,47,.95);
}
body[data-section="admin"][data-active="banking"] .nv-bank-table{
  width:100%;min-width:1050px;border-collapse:collapse;
  table-layout:auto;text-align:left;
}
body[data-section="admin"][data-active="banking"] .nv-bank-table th{
  padding:17px 14px;white-space:nowrap;
  background:#0d3d59;color:#bfe2f3;
  font-size:clamp(12px,.78vw,15px);font-weight:700;
  border-bottom:1px solid rgba(93,172,206,.35);
}
body[data-section="admin"][data-active="banking"] .nv-bank-table td{
  padding:17px 14px;vertical-align:top;
  border-bottom:1px solid rgba(75,155,190,.17);
  color:#e1eef6;font-size:clamp(13px,.85vw,17px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-table tr:hover td{background:rgba(33,110,143,.12)}
body[data-section="admin"][data-active="banking"] .nv-bank-table .nv-bank-amount{
  font-size:clamp(15px,1vw,20px);font-weight:750;color:#a0e9f7;white-space:nowrap;
}
body[data-section="admin"][data-active="banking"] .nv-bank-person{
  display:flex;flex-direction:column;gap:5px;max-width:210px;
  overflow-wrap:anywhere;
}
body[data-section="admin"][data-active="banking"] .nv-bank-person b{font-weight:650;color:#f0faff}
body[data-section="admin"][data-active="banking"] .nv-bank-person small{
  font-size:11px;line-height:1.4;color:#8eaec1;
}
body[data-section="admin"][data-active="banking"] .nv-bank-purpose{
  max-width:300px;line-height:1.5;overflow-wrap:anywhere;
}
body[data-section="admin"][data-active="banking"] .nv-bank-details{
  max-width:460px;color:#acdeed;font-size:clamp(12px,.8vw,14px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-details summary{
  cursor:pointer;white-space:nowrap;
  color:#86d8f4;text-decoration:underline;text-underline-offset:4px;
}
body[data-section="admin"][data-active="banking"] .nv-bank-details[open]{
  min-width:260px;max-width:460px;padding:10px 0;
}
body[data-section="admin"][data-active="banking"] .nv-bank-detail-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
  gap:10px;margin-top:12px;
}
body[data-section="admin"][data-active="banking"] .nv-bank-detail{
  display:flex;flex-direction:column;gap:5px;min-width:0;
  padding:11px;border-radius:9px;background:rgba(5,37,56,.8);
  border:1px solid rgba(89,155,183,.26);
}
body[data-section="admin"][data-active="banking"] .nv-bank-detail span{
  color:#9dc2d5;font-size:12px;
}
body[data-section="admin"][data-active="banking"] .nv-bank-detail strong{
  color:#edf8ff;font-weight:630;font-size:clamp(12px,.82vw,16px);
  overflow-wrap:anywhere;
}
body[data-section="admin"][data-active="banking"] .nv-bank-summary{
  border:1px solid rgba(77,166,206,.36);border-radius:13px;
  padding:clamp(18px,1.7vw,30px);margin-bottom:13px;
  background:rgba(5,36,56,.85);
}
body[data-section="admin"][data-active="banking"] .nv-bank-summary h3{
  color:#e8f7ff;font-size:clamp(19px,1.3vw,27px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-empty{
  display:grid;gap:10px;place-items:start;min-height:180px;
  padding:clamp(22px,2vw,39px);border:1px solid rgba(71,152,188,.32);
  border-radius:13px;background:rgba(5,35,55,.75);
}
body[data-section="admin"][data-active="banking"] .nv-bank-empty strong{
  color:#f1faff;font-size:clamp(17px,1.15vw,23px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-empty p{
  color:#a2c3d6;font-size:clamp(13px,.87vw,17px);
}
body[data-section="admin"][data-active="banking"] .nv-bank-mobile-cards{display:none}
@media(max-width:1500px){
  body[data-section="admin"][data-active="banking"] .nv-bank-filterbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:1050px){
  body[data-section="admin"][data-active="banking"] .nv-bank-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-table-scroll{display:none}
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-cards{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-card{
    display:grid;gap:12px;min-width:0;padding:17px;
    background:rgba(5,35,54,.96);border:1px solid rgba(81,166,199,.35);border-radius:13px;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-head{
    display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-head strong{
    font-size:20px;color:#94def4;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-head small{color:#a4c3d2}
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-people{
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-people>span:nth-child(2){color:#78cbdf}
}
@media(max-width:680px){
  body[data-section="admin"][data-active="banking"] .nv-bank-kpis{gap:9px}
  body[data-section="admin"][data-active="banking"] .nv-bank-filterbar{
    grid-template-columns:1fr;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-mobile-cards{
    grid-template-columns:1fr;
  }
  body[data-section="admin"][data-active="banking"] .nv-bank-kpi{padding:15px}
  body[data-section="admin"][data-active="banking"] .nv-bank-kpi>strong{font-size:19px}
}

/* R284: an on-demand, World-authorized account holder check.
   Banking names must never be inferred from UUID/account number equality. */
body[data-section="admin"][data-active="banking"] .nv-bank-holder-check{
  appearance:none;align-self:flex-start;
  border:1px solid rgba(98,207,236,.51);border-radius:6px;
  background:rgba(5,70,100,.44);color:#afe6f5;
  margin-top:7px;padding:5px 9px;
  font-size:clamp(11px,.72vw,13px);text-align:left;
  cursor:pointer;max-width:100%;
}
body[data-section="admin"][data-active="banking"] .nv-bank-holder-check:hover{
  background:rgba(9,106,146,.54);color:#fff;
}
body[data-section="admin"][data-active="banking"] .nv-bank-holder-check:disabled{
  opacity:.66;cursor:wait;
}
body[data-section="admin"][data-active="banking"] .nv-bank-holder-status{
  color:#f1d2ab;font-size:12px;line-height:1.5;
  display:block;max-width:260px;overflow-wrap:anywhere;
}

/* R285: legal references, identifiers and long links must wrap on phones. */
.nv-legal-card{overflow-wrap:anywhere;min-width:0}
.nv-legal-card code,.nv-legal-card a{overflow-wrap:anywhere;white-space:normal}

/* R286: already-signed-in panel on the public login/start page. */
.nv-home-member{display:grid;gap:14px;min-width:0}
.nv-home-member-state{display:flex;align-items:center;gap:9px;color:#a5f5d0;font-size:clamp(13px,.9vw,17px);font-weight:680}
.nv-home-member-identity{display:flex;align-items:center;gap:14px;min-width:0}
.nv-home-member-avatar{position:relative;display:grid;place-items:center;width:clamp(66px,5.5vw,92px);height:clamp(66px,5.5vw,92px);flex-shrink:0;border:2px solid #3cccef;border-radius:50%;background:linear-gradient(140deg,#145677,#08283d);color:#def6ff;font-size:clamp(34px,2.7vw,47px);box-shadow:0 0 21px rgba(51,195,244,.2)}
.nv-home-member-avatar i{opacity:.65}
.nv-home-member-avatar span{position:absolute;inset:0;display:grid;place-items:center;font-weight:700;text-shadow:0 1px 7px #0b3146}
.nv-home-member-name{min-width:0;display:grid;gap:2px}
.nv-home-member-name>span{font-size:clamp(12px,.8vw,15px);color:#a6bdcc}
.nv-auth-card .nv-home-member-name h3{margin:0;text-align:left;overflow-wrap:anywhere;font-size:clamp(19px,1.4vw,29px);line-height:1.25}
.nv-home-member-name p{color:#9ac7dd;overflow-wrap:anywhere;margin:0;font-size:clamp(12px,.82vw,15px)}
.nv-home-member-access{color:#bad3e1;line-height:1.5;font-size:clamp(13px,.83vw,16px);margin:0}
.nv-home-member-actions{display:grid;gap:10px}
.nv-home-member-actions a,.nv-home-member-actions button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:47px;width:100%;padding:10px 15px;border-radius:9px;border:1px solid #387f9a;text-decoration:none;text-align:center;color:#e5f7ff;background:rgba(7,58,82,.64);font-size:clamp(13px,.85vw,16px);font-weight:630;cursor:pointer}
.nv-home-member-actions .nv-home-member-primary{background:linear-gradient(120deg,#038ac7,#105c9d);border-color:#39c9ef}
.nv-home-member-actions .nv-home-member-logout{background:rgba(53,34,46,.55);border-color:#a57079}
.nv-home-member-actions a:hover,.nv-home-member-actions button:hover{filter:brightness(1.16);color:#fff}
.nv-home-member-actions button:disabled{opacity:.6;cursor:wait}
.nv-home-member-note{margin:0;color:#8eb4c6;font-size:clamp(11px,.74vw,13px);line-height:1.55}
.nv-home-profile-dialog{position:fixed;inset:0;margin:auto;width:min(760px,calc(100vw - 28px));max-height:min(88vh,850px);overflow:auto;padding:clamp(18px,2vw,30px);border:1px solid #4086a2;border-radius:16px;background:#061d30;color:#e9f7ff;box-shadow:0 22px 70px #000a}
.nv-home-profile-dialog::backdrop{background:rgba(0,8,19,.76)}
.nv-home-profile-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.nv-home-profile-header h3{font-size:clamp(20px,1.6vw,29px);margin:0}
.nv-home-profile-header button{border:1px solid #4a88a1;background:#153b52;color:#f3fbff;border-radius:8px;padding:8px}
.nv-home-profile-portrait{text-align:center;font-size:clamp(55px,5vw,90px);color:#54c7e9}
.nv-home-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}
.nv-home-profile-field{min-width:0;display:grid;gap:6px;padding:12px;border:1px solid #24536b;background:#09273a;border-radius:9px}
.nv-home-profile-field span{color:#9dbfce;font-size:12px}
.nv-home-profile-field strong{font-size:clamp(12px,.8vw,16px);overflow-wrap:anywhere;white-space:pre-wrap}
.nv-home-avatar-note,#homeProfileInfo{color:#b3cfdd;line-height:1.45;font-size:clamp(12px,.8vw,15px)}
.nv-home-profile-bottom{display:flex;justify-content:flex-end;margin-top:16px}
.nv-home-profile-bottom a{border-radius:8px;border:1px solid #2fbfe0;padding:11px 16px;text-decoration:none;color:#e5f9ff;background:#095b7e}
@media(max-width:620px){.nv-home-profile-fields{grid-template-columns:1fr}.nv-home-member-identity{gap:10px}.nv-home-member-actions a,.nv-home-member-actions button{min-height:44px}}

.nv-home-member-areas{border-radius:9px;border:1px solid rgba(63,153,191,.42);padding:11px;background:rgba(8,39,59,.66)}
.nv-home-member-areas summary{color:#9bdef4;cursor:pointer;font-size:clamp(12px,.81vw,15px)}
.nv-home-member-areas nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.nv-home-member-areas nav a{display:flex;gap:8px;align-items:center;padding:9px;border:1px solid rgba(58,146,181,.37);border-radius:7px;text-decoration:none;color:#d4effa;overflow-wrap:anywhere;font-size:12px}
@media(max-width:680px){.nv-home-member-areas nav{grid-template-columns:1fr}}

/* R290: real self avatar from authenticated World proxy; graceful icon fallback. */
.nv-home-member-avatar,.nv-home-profile-portrait{overflow:hidden}
.nv-home-avatar-img{position:absolute;inset:0;z-index:3;width:100%;height:100%;object-fit:cover;border-radius:50%;background:#08283d}
.nv-home-avatar-img[hidden],.nv-home-profile-portrait img[hidden]{display:none!important}
.nv-home-profile-portrait{position:relative;display:grid;place-items:center;width:clamp(96px,10vw,145px);height:clamp(96px,10vw,145px);margin:12px auto;border-radius:50%;border:2px solid #37b3db;background:#0b314b}
.nv-home-profile-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}

/* R290 World list/details and operator confirmation modals. */
.nv-world-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:13px}
.nv-world-group-card{background:rgba(6,40,65,.65);border:1px solid rgba(64,154,185,.5);border-radius:12px;padding:16px}
.nv-world-group-card h3{font-size:clamp(17px,1vw,23px);overflow-wrap:anywhere}
.nv-world-group-card p{color:#add3e4}
.nv-world-group-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:13px}
.nv-world-group-meta span{border:1px solid #2f849e;border-radius:7px;padding:4px 8px}
.nv-world-group-paging{margin-top:13px}
.nv-world-region-lookup{display:grid;gap:9px;margin:14px 0}
.nv-world-region-lookup label{font-size:14px}
.nv-world-region-lookup-row{display:flex;gap:9px}
.nv-world-region-lookup-row input{min-width:0}
.nv-world-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:11px 0}
.nv-world-detail-item{display:grid;gap:5px;padding:10px;border-radius:8px;border:1px solid rgba(55,125,162,.5);overflow-wrap:anywhere}
.nv-world-detail-item span{font-size:12px;color:#9ac2d6}
.nv-world-detail-dialog{position:fixed;inset:0;margin:auto;width:min(780px,calc(100vw - 24px));max-height:88vh;overflow:auto;border:1px solid #3f90ba;background:#081e32;color:#eaf7ff;border-radius:14px;padding:clamp(15px,2vw,29px)}
.nv-world-detail-dialog::backdrop{background:#000b}
.nv-world-content-actions{display:grid;gap:11px;margin-top:10px}
.nv-world-edit-form{display:grid;gap:11px}
.nv-world-edit-form label{display:grid;gap:7px}
.nv-world-outfit-status,.nv-outfit-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:11px 0}
.nv-world-outfit-fact{font-size:13px;border:1px solid #327a97;border-radius:7px;padding:7px}
@media(max-width:620px){.nv-world-detail-grid{grid-template-columns:1fr}.nv-world-region-lookup-row{flex-direction:column}}

/* R290: resilient tablet/phone sidebar and topbar sizing even if Bootstrap's
   external offcanvas stylesheet is slow or unavailable. */
@media(max-width:991.98px){
  body[data-section="citizen"] .portal-sidebar.offcanvas-lg,
  body[data-section="admin"] .portal-sidebar.offcanvas-lg{
    position:fixed!important;inset:0 auto 0 0;z-index:1045;
    height:100dvh;max-height:100dvh;overflow-y:auto;
    max-width:min(300px,86vw);
    visibility:hidden;transform:translateX(-105%);
    transition:transform .2s ease,visibility .2s ease;
  }
  body[data-section="citizen"] .portal-sidebar.offcanvas-lg.show,
  body[data-section="citizen"] .portal-sidebar.offcanvas-lg.showing,
  body[data-section="admin"] .portal-sidebar.offcanvas-lg.show,
  body[data-section="admin"] .portal-sidebar.offcanvas-lg.showing{
    visibility:visible;transform:translateX(0);
  }
  body[data-section="citizen"] .portal-main,
  body[data-section="admin"] .portal-main{width:100%!important;min-width:0;flex:1 1 100%}
}
@media(max-width:560px){
  body[data-section="citizen"] .portal-topbar,
  body[data-section="admin"] .portal-topbar{gap:7px;min-width:0}
  body[data-section="citizen"] .topbar-actions,
  body[data-section="admin"] .topbar-actions{gap:6px;min-width:0;margin-left:auto}
  body[data-section="citizen"] .user-chip>div,
  body[data-section="admin"] .user-chip>div{display:none}
  body[data-section="citizen"] .user-chip .avatar,
  body[data-section="admin"] .user-chip .avatar{width:34px;height:34px}
}


/* R292 – shared authenticated identity, protected avatar, citizen profile. */
body[data-section="citizen"] .topbar-user-toggle{min-width:175px}
body[data-section="citizen"] .portal-profile-dialog{max-height:min(90svh,850px);overflow:auto}
.nv-world-portrait{
  position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate;
  background:linear-gradient(140deg,#0754a0,#14bde8);color:#fff;
  border-radius:50%;flex-shrink:0;
}
.nv-world-portrait img{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .15s}
.nv-world-portrait.nv-avatar-loaded img{opacity:1}
.nv-world-portrait .nv-avatar-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:inherit;font-weight:800}
.nv-world-portrait.nv-avatar-loaded .nv-avatar-fallback{opacity:0}
.nv-profile-portal-links{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0}
.nv-profile-portal-links a{border:1px solid rgba(67,172,218,.38);border-radius:8px;padding:8px 12px;color:#bce8ff;text-decoration:none;font-size:12px}
.nv-profile-portal-links a:hover{background:#104568;color:white}
.nv-self-profile{display:grid;gap:16px}
body[data-section="citizen"] .nv-self-hero{padding:24px;min-height:210px;display:flex;align-items:center;gap:24px;background:linear-gradient(90deg,rgba(2,17,30,.92),rgba(3,31,55,.64)),url('/assets/admin-dashboard-hero.webp') center / cover}
.nv-self-hero .profile-avatar{width:120px;height:120px;flex:0 0 120px;border:3px solid #3ecfff}
.nv-self-summary{min-width:0;flex:1}
.nv-self-eyebrow{color:#77d8fc;font-size:11px;text-transform:uppercase;letter-spacing:.11em}
.nv-self-summary h2{font-size:clamp(22px,2.4vw,32px);line-height:1.18;margin:8px 0 4px;overflow-wrap:anywhere}
.nv-self-muted{color:#bed7e4;font-size:13px}
.nv-self-indicators{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.nv-self-indicators span{display:inline-flex;padding:6px 10px;border-radius:40px;background:rgba(0,28,45,.8);border:1px solid rgba(90,183,223,.32);font-size:12px;color:#a9e5f5}
.nv-self-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(230px,.75fr);gap:14px}
.nv-self-panel{min-width:0;padding:20px}
.nv-self-panel .panel-title{align-items:center}
.nv-self-panel .panel-title h3{font-size:15px}
.nv-self-readonly>div{display:flex;flex-direction:column;gap:6px;padding:13px 0;border-bottom:1px solid rgba(90,183,223,.15)}
.nv-self-readonly span{font-size:12px;color:#9cbbcc}
.nv-self-readonly strong{font-size:13px;color:#ecfaff;overflow-wrap:anywhere;white-space:pre-wrap;font-weight:600}
.nv-self-form{display:grid;gap:12px;margin-top:16px}
.nv-self-form label{display:grid;gap:6px;color:#c3deeb;font-size:12px;font-weight:600}
.nv-self-form .form-control{font-size:13px;min-height:42px}
.nv-self-form button{justify-self:start}
.nv-self-help{color:#96bacc;font-size:12px;line-height:1.6;margin:14px 0}
.nv-self-side>p{color:#bed5e1;font-size:13px;line-height:1.65}
.nv-self-links{display:grid;gap:8px;margin-top:22px}
.nv-self-links a{padding:10px 12px;border:1px solid rgba(60,157,204,.4);border-radius:8px;color:#c4eafb;text-decoration:none;font-size:13px}
.nv-self-links a:hover{background:#094467;color:#fff}
.nv-self-links i{margin-right:8px;color:#50d5ff}
@media(min-width:1800px){.nv-self-layout{grid-template-columns:minmax(320px,1fr) minmax(360px,1.2fr) minmax(300px,.75fr)}}
@media(max-width:1250px){.nv-self-layout{grid-template-columns:1fr 1fr}.nv-self-side{grid-column:1/-1}}
@media(max-width:767px){
  body[data-section="citizen"] .topbar-user-toggle{min-width:0}
  body[data-section="citizen"] .topbar-user-copy,body[data-section="citizen"] .topbar-user-chevron{display:none}
  body[data-section="citizen"] .topbar-user-dropdown{width:min(280px,calc(100vw - 24px))}
  body[data-section="citizen"] .portal-profile-grid{grid-template-columns:1fr}
  .nv-self-layout{grid-template-columns:1fr}
  .nv-self-side{grid-column:auto}
  body[data-section="citizen"] .nv-self-hero{flex-wrap:wrap;padding:18px;gap:14px}
  .nv-self-hero .profile-avatar{width:92px;height:92px;flex-basis:92px}
  .nv-self-hero>a{width:100%;text-align:center}
}

/* R293: Hypergrid origins read from World statistics, not client-side guesses. */
body[data-section="admin"][data-active="dashboard"] .admin-hypergrid-panel{
  padding:20px 22px;background:linear-gradient(180deg,rgba(7,39,61,.95),rgba(3,22,37,.96));
  border:1px solid rgba(40,156,207,.36);border-radius:12px;min-width:0
}
body[data-section="admin"] .admin-hypergrid-panel .panel-title h3{font-size:16px;margin:0}
body[data-section="admin"] .admin-hypergrid-panel .panel-title small{color:#9bc0d1;font-size:11px;text-align:right}
body[data-section="admin"] .admin-hypergrid-totals{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:15px 0
}
body[data-section="admin"] .admin-hypergrid-totals>div{display:flex;flex-direction:column;gap:6px;padding:13px 15px;
  background:rgba(10,54,79,.58);border:1px solid rgba(60,165,211,.25);border-radius:9px}
body[data-section="admin"] .admin-hypergrid-totals span{font-size:11px;color:#9cbccc}
body[data-section="admin"] .admin-hypergrid-totals strong{font-size:22px;line-height:1.15;color:#e6faff}
body[data-section="admin"] .admin-hypergrid-scroll{overflow-x:auto;width:100%;border-radius:9px;border:1px solid rgba(58,144,185,.3)}
body[data-section="admin"] .admin-hypergrid-table{width:100%;border-collapse:collapse;min-width:610px;font-size:12px}
body[data-section="admin"] .admin-hypergrid-table th{background:#0a3049;color:#98ddf6;text-align:left;font-weight:700}
body[data-section="admin"] .admin-hypergrid-table td,body[data-section="admin"] .admin-hypergrid-table th{
  padding:11px 13px;border-bottom:1px solid rgba(74,143,180,.19)}
body[data-section="admin"] .admin-hypergrid-table td:not(:first-child),
body[data-section="admin"] .admin-hypergrid-table th:not(:first-child){text-align:center;font-variant-numeric:tabular-nums}
body[data-section="admin"] .admin-hypergrid-table tbody tr:last-child td{border-bottom:0}
body[data-section="admin"] .admin-hypergrid-uri{overflow-wrap:anywhere;color:#dceffa}
body[data-section="admin"] .admin-hypergrid-info,body[data-section="admin"] .admin-hypergrid-unavailable{
  margin:10px 0 0;font-size:12px;color:#9fbfd0}
body[data-section="admin"] .admin-citizen-display-preview{font-size:12px;color:#a7c9da}
body[data-section="admin"] .admin-citizen-display-preview strong{margin-left:5px;color:#f0fbff}
body[data-section="admin"] .admin-citizen-level-box{
  display:grid;gap:9px;padding:13px;border:1px solid rgba(52,163,216,.34);
  border-radius:10px;background:#0b2a3c
}
body[data-section="admin"] .admin-citizen-level-header{display:flex;align-items:center;gap:8px;color:#d9f5ff;font-size:13px}
body[data-section="admin"] .admin-citizen-level-header i{color:#56cfff}
body[data-section="admin"] .admin-citizen-level-box p{font-size:11px;line-height:1.55;color:#b3cedb;margin:0}
body[data-section="admin"] .admin-citizen-level-box button{justify-self:start}
body[data-section="admin"] #adminCitizenEditLevelMessage{font-size:11px;color:#bce7f8;line-height:1.5}
@media(max-width:950px){
 body[data-section="admin"] .admin-hypergrid-totals{grid-template-columns:repeat(3,minmax(0,1fr))}
 body[data-section="admin"] .admin-hypergrid-panel .panel-title{align-items:flex-start;flex-direction:column}
 body[data-section="admin"] .admin-hypergrid-panel .panel-title small{text-align:left}
}
@media(max-width:520px){
 body[data-section="admin"] .admin-hypergrid-panel{padding:14px}
 body[data-section="admin"] .admin-hypergrid-totals{grid-template-columns:repeat(2,minmax(0,1fr))}
}

body[data-section="admin"] .admin-hypergrid-empty{padding:16px;color:#a8cbdc;text-align:left!important;white-space:normal}

/* R295 – Real, responsive citizen World API surfaces. */
.nv-citizen-live{display:grid;gap:18px;min-width:0}
.nv-citizen-world-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}
.nv-citizen-world-top h2{margin:0 0 8px;font-weight:720;font-size:clamp(20px,2vw,28px);letter-spacing:-.03em}
.nv-citizen-world-top p{margin:0;color:#a8bfd3;max-width:72ch;font-size:14px;line-height:1.65}
.nv-citizen-world-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.nv-citizen-world-grid>.panel-card{min-width:0;padding:21px}
.nv-citizen-world-grid>.panel-card h3,.nv-citizen-live>.panel-card h3{font-size:16px;line-height:1.45;margin:0 0 15px;font-weight:700}
.nv-citizen-world-grid [data-world-list],.nv-citizen-live>.panel-card [data-world-list]{display:grid;gap:10px}
.nv-world-entry{min-width:0;border:1px solid rgba(147,198,236,.16);border-radius:12px;padding:14px 16px;background:rgba(15,32,49,.52)}
.nv-world-entry h4{margin:0 0 5px;font-size:15px;font-weight:700;overflow-wrap:anywhere}
.nv-world-entry p{margin:0;color:#a9bfd1;font-size:13px;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
.nv-world-entry small{display:block;color:#95aebf;margin-top:5px;font-size:12px}
.nv-world-entry-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.nv-world-empty,.nv-world-status{font-size:13px;line-height:1.7;color:#aec4d6;margin:6px 0}
.nv-world-link{display:inline-flex;margin-top:14px;gap:6px;color:#80d8ff;font-size:13px;overflow-wrap:anywhere;text-decoration:none}
.nv-world-link:hover{text-decoration:underline}
.nv-world-search-label{display:grid;gap:8px;max-width:550px;color:#bcd3e2;font-size:13px}
.nv-world-search-label .form-control{background:rgba(9,23,36,.85)}
@media(max-width:840px){.nv-citizen-world-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.nv-citizen-world-top{display:grid}.nv-citizen-world-grid{gap:12px}.nv-citizen-world-grid>.panel-card{padding:16px}.nv-world-entry{padding:13px}}

.nv-world-person-results{display:grid;gap:10px;margin-top:12px}


/* R299: personal World route audit remains contained on 390px mobile screens. */
.nv-citizen-route-audit{min-width:0;max-width:100%}
.nv-citizen-route-audit #citizenWorldAuditResults{max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.nv-citizen-route-audit #citizenWorldAuditResults .portal-table{min-width:640px;max-width:none}
.nv-citizen-route-audit #citizenWorldAuditStatus{overflow-wrap:anywhere;word-break:normal}
.nv-citizen-route-audit #citizenWorldAuditResults th,
.nv-citizen-route-audit #citizenWorldAuditResults td{font-size:.78rem;white-space:normal;overflow-wrap:anywhere;vertical-align:top}


/* R300: avatar presence is independent of technical World service health. */
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health{min-width:0}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health .panel-title{gap:12px}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health .panel-title h2{font-size:1.05rem;margin:0}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health .panel-title i{color:#38d6ff;margin-right:6px}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px 0}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-item{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border:1px solid rgba(55,142,183,.35);border-radius:10px}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-item>span{color:#adc7d7;font-size:.85rem}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-item>strong{color:#d3e5ef;font-size:1.1rem}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-item>strong.health-online{color:#34d371}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-item>strong.health-unknown{color:#ffc376}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-item>small,
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-note{font-size:.78rem;color:#9ebbc9;overflow-wrap:anywhere}
body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-note{margin:2px 0 0}
@media(max-width:640px){body[data-section="admin"][data-active="dashboard"] .admin-world-api-health-grid{grid-template-columns:minmax(0,1fr)}}


/* R301: NodeAgent status is not an independent host availability check. */
body[data-section="admin"] .admin-nodes-diagnostics{margin:0 0 12px;padding:12px 14px;border:1px solid rgba(74,161,203,.36);background:rgba(7,36,55,.63);border-radius:9px;max-width:100%;overflow-wrap:anywhere}
body[data-section="admin"] .admin-nodes-diagnostics p{font-size:12px;line-height:1.55;color:#bdd7e5;margin:0}
body[data-section="admin"] .admin-nodes-diagnostics p+p{margin-top:7px;color:#88bdd4}
body[data-section="admin"] .admin-nodes-diagnostics i{margin-right:6px;color:#53d3ff}
body[data-section="admin"] .admin-nodes-table [data-node-column="seen"]{white-space:normal;min-width:135px}
body[data-section="admin"] .admin-nodes-table [data-node-column="state"]{white-space:normal;min-width:170px}


/* R302: reported NodeAgent regions versus independently registered World regions. */
body[data-section="admin"] .admin-nodes-diagnostics .admin-node-region-compare{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin:11px 0}
body[data-section="admin"] .admin-node-region-compare button{flex:0 0 auto;max-width:100%;white-space:normal;text-align:center}
body[data-section="admin"] .admin-node-region-compare #adminNodesWorldRegionStatus{font-size:12px;color:#9fd6ee;overflow-wrap:anywhere;min-width:0;flex:1}
body[data-section="admin"] .admin-nodes-table [data-node-column="regions"]{min-width:185px;white-space:normal}
body[data-section="admin"] .admin-node-region-detail{display:block;max-width:280px;margin-top:4px;color:#92b8ca;white-space:normal;overflow-wrap:anywhere;font-size:10.5px;font-weight:400}
/* R302: explicit overflow containment even when Bootstrap CDN is unavailable. */
body[data-section="admin"][data-active="nodes"] .portal-content{min-width:0;max-width:100%}
body[data-section="admin"][data-active="nodes"] .admin-nodes-content{min-width:0;max-width:100%;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}


/* R303: explicit per-node inspection; never mistake global directory count for host state. */
body[data-section="admin"][data-active="nodes"] .admin-node-region-inspect{display:block;margin-top:8px;max-width:100%;white-space:normal;font-size:11px;padding:5px 9px}
body[data-section="admin"][data-active="nodes"] .admin-node-specific-result{font-size:12px;color:#b8dcef;border:1px solid rgba(80,172,211,.3);border-radius:8px;padding:10px 12px;overflow-wrap:anywhere;white-space:pre-line}


/* R304: the second status explains registry correlations without implying a shared simulator process. */
body[data-section="admin"][data-active="nodes"] #adminNodesRegistryResult{margin-top:8px}


/* R308: authenticated, user-triggered summary reads; no untyped World body exposed. */
.nv-world-group-insights{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.nv-world-group-insights .btn{white-space:normal;font-size:12px;min-width:0}
.nv-world-group-insights-result{margin:11px 0 0;color:#bdd9e7;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
@media(max-width:520px){.nv-world-group-insights{flex-direction:column}.nv-world-group-insights .btn{width:100%}}

/* R309 – golden construction notice: visible only on the signed-out home login.
   This remains in normal layout flow below the fixed navbar, not a blocking overlay. */
.nv-home-with-build-notice{padding-top:clamp(64px,4.7vw,88px)}
.nv-home-with-build-notice>.nv-home-hero{padding-top:0;min-height:calc(100svh - clamp(64px,4.7vw,88px))}
.nv-home-build-banner{position:relative;z-index:2;width:100%;color:#322308;background:linear-gradient(100deg,#e9b735 0%,#f8d875 34%,#ffe8a0 53%,#efbd3f 100%);border-block:1px solid #f9df88;box-shadow:0 6px 23px rgba(3,11,20,.32),inset 0 1px rgba(255,255,255,.45)}
.nv-home-build-banner-inner{min-height:51px;display:flex;align-items:center;justify-content:center;gap:13px;padding-block:9px!important;line-height:1.4}
.nv-home-build-icon{width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;border-radius:7px;color:#503509;background:rgba(87,56,9,.12);font-size:16px}
.nv-home-build-label{white-space:nowrap;font-size:12px;letter-spacing:.105em;font-weight:850;color:#352409}
.nv-home-build-copy{min-width:0;font-size:13px;font-weight:560;letter-spacing:.006em;color:#46330e}
.nv-home-build-spark{flex:0 0 auto;opacity:.4;color:#513709;font-size:14px}
@media(max-width:1199px){
 .nv-home-with-build-notice{padding-top:68px}
 .nv-home-with-build-notice>.nv-home-hero{min-height:0;padding-top:0}
 .nv-home-build-banner-inner{gap:10px;justify-content:flex-start}
 .nv-home-build-spark{display:none}
}
@media(max-width:700px){
 .nv-home-build-banner-inner{display:grid;grid-template-columns:24px minmax(0,1fr);gap:0 10px;padding-block:10px!important}
 .nv-home-build-icon{width:24px;height:24px;grid-row:span 2;align-self:center;font-size:15px}
 .nv-home-build-label{font-size:11px;letter-spacing:.07em}
 .nv-home-build-copy{font-size:12px;line-height:1.45;margin-top:2px}
}


/* R310: public OpenGenesisLINK world map, deliberately opt-in external embed. */
.nv-public-map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:23px}
.nv-public-map-primary,.nv-public-map-link,.nv-public-map-refresh{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:10px 17px;border:1px solid #4bcdf7;border-radius:10px;font-size:13px;font-weight:700;text-decoration:none;transition:filter .18s ease}
.nv-public-map-primary{color:#03243b;background:linear-gradient(135deg,#5cddff,#1dabed);box-shadow:0 8px 24px rgba(0,179,247,.18)}
.nv-public-map-primary:hover{filter:brightness(1.08)}
.nv-public-map-link,.nv-public-map-refresh{color:#d8f8ff;background:rgba(4,33,53,.84);border-color:rgba(67,174,229,.7)}
.nv-public-map-link:hover,.nv-public-map-refresh:hover{color:#fff;background:rgba(11,62,87,.85)}
.nv-public-map-disclaimer{max-width:920px;margin:12px 0 0;font-size:12px;line-height:1.5;color:#9dbccb}
.nv-public-map-content{padding:4px 0 48px;background:linear-gradient(180deg,#020812,#051725)}
.nv-public-map-frame-wrap{padding:9px;border:1px solid rgba(68,162,212,.42);border-radius:16px;background:#071e31;margin-bottom:22px;box-shadow:0 18px 45px rgba(0,0,0,.32)}
.nv-public-map-frame-wrap[hidden]{display:none!important}
.nv-public-map-frame-wrap iframe{display:block;width:100%;height:clamp(330px,47vw,720px);min-height:330px;border:0;border-radius:10px;background:#09192d}
.nv-public-map-data{padding:22px;border:1px solid rgba(63,149,194,.38);border-radius:16px;background:linear-gradient(135deg,rgba(8,36,57,.92),rgba(3,18,32,.96))}
.nv-public-map-data-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.nv-public-map-data-head h2{font-size:clamp(19px,1.1vw,25px);font-weight:760;margin:0 0 6px}
.nv-public-map-data-head p{color:#afcad8;margin:0;font-size:13px}
.nv-public-map-refresh{flex:0 0 auto}
.nv-public-map-refresh:disabled{opacity:.55;cursor:wait}
.nv-public-map-status{margin:14px 0 0;color:#c7dce8;font-size:13px;line-height:1.55}
.nv-public-map-regions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:17px}
.nv-public-map-regions:empty{display:none}
.nv-public-map-region{display:flex;align-items:center;gap:11px;min-width:0;padding:15px;border:1px solid rgba(55,153,203,.32);border-radius:11px;background:rgba(8,43,67,.7)}
.nv-public-map-region>i{font-size:23px;color:#4cd7ff}
.nv-public-map-region-copy{min-width:0}
.nv-public-map-region-copy strong,.nv-public-map-region-copy small{display:block;overflow-wrap:anywhere}
.nv-public-map-region-copy strong{font-size:14px}
.nv-public-map-region-copy small{margin-top:4px;color:#a3c4d6;font-size:11px}
@media(max-width:1199px){.nv-public-map-regions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.nv-public-map-actions{flex-direction:column;align-items:stretch}.nv-public-map-primary,.nv-public-map-link{width:100%}.nv-public-map-data{padding:15px}.nv-public-map-data-head{flex-direction:column;align-items:stretch}.nv-public-map-refresh{width:100%}.nv-public-map-regions{grid-template-columns:1fr}.nv-public-map-frame-wrap iframe{height:400px}}


/* R311: native World account registration, consistent NexVerse dark auth surface. */
.nv-reg-description{display:block;margin:3px 0 14px;color:#b9d5e5;font-size:12px;line-height:1.55}
.nv-reg-username-preview{margin:-3px 0 13px;padding:10px 12px;border:1px solid rgba(65,205,247,.33);background:rgba(12,57,77,.45);border-radius:8px;color:#b5d5e6;font-size:12px;line-height:1.45}
.nv-reg-username-preview strong{display:block;margin-top:4px;color:#4de0ff;font-size:14px;font-weight:750;overflow-wrap:anywhere}
.nv-reg-password-hint{margin:-3px 0 14px;color:#a9c4d1;font-size:12px;line-height:1.5}
.nv-auth-card #registerMessage{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.nv-auth-card #registerForm[hidden]{display:none!important}
.nv-reg-result{padding:16px 14px;margin:10px 0;border:1px solid rgba(58,210,231,.48);border-radius:13px;background:linear-gradient(130deg,rgba(13,58,74,.66),rgba(5,27,41,.86));color:#ecf9ff;text-align:center}
.nv-reg-result[hidden]{display:none!important}
.nv-reg-result>i{font-size:33px;color:#5de6cc}
.nv-reg-result h3{font-size:19px;line-height:1.35;margin:9px 0 6px}
.nv-reg-result p{font-size:13px;line-height:1.55;color:#c1d9e8}
.nv-reg-confirmed-user{padding:10px;border:1px solid rgba(60,154,207,.33);border-radius:8px;background:rgba(3,15,27,.45);overflow-wrap:anywhere}
.nv-reg-confirmed-user strong{display:block;color:#5be6ff;font-weight:800;font-size:16px;margin-top:4px}
.nv-reg-result .nv-registration-back{margin-top:16px}
@media(max-width:700px){.nv-reg-description,.nv-reg-password-hint{font-size:12px}.nv-reg-result{padding:13px 11px}}


/* R312: admin registration preflight -- intentionally read-only. */
.admin-registration-readiness{margin:20px 0 12px;padding:20px;border:1px solid rgba(83,166,203,.33);border-radius:14px;background:linear-gradient(135deg,rgba(12,40,58,.9),rgba(5,24,42,.94));color:#ebf8ff}
.admin-registration-readiness-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.admin-registration-readiness-head h3{font-size:17px;font-weight:750;margin:0 0 6px}
.admin-registration-readiness-head h3>i{margin-right:9px;color:#69ddff}
.admin-registration-readiness-head p{font-size:12px;color:#bad1dc;margin:0;max-width:740px;line-height:1.6}
.admin-registration-readiness-head button{display:inline-flex;justify-content:center;align-items:center;flex:0 0 auto;min-height:43px;gap:9px;padding:8px 14px;border:1px solid rgba(80,204,235,.72);border-radius:9px;background:#143d59;color:#f0fcff;font-size:12px;font-weight:750}
.admin-registration-readiness-head button:hover:not(:disabled){background:#1b526e}
.admin-registration-readiness-head button:disabled{opacity:.55;cursor:wait}
.admin-registration-readiness-status,#adminRegistrationReadinessStatus{margin:14px 0 8px;color:#bdd6e3;font-size:12px;line-height:1.6}
.admin-registration-readiness-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:12px 0 0;padding:0}
.admin-registration-readiness-list:empty{display:none}
.admin-registration-readiness-list li{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:12px;border:1px solid rgba(103,161,191,.29);background:rgba(6,29,48,.75);border-radius:10px}
.admin-registration-readiness-list li>i{font-size:17px;flex:0 0 auto;margin-top:1px}
.admin-registration-readiness-list li.nv-readiness-pass>i{color:#78e2bc}
.admin-registration-readiness-list li.nv-readiness-warning>i{color:#edc36a}
.admin-registration-readiness-list strong,.admin-registration-readiness-list small{display:block;overflow-wrap:anywhere}
.admin-registration-readiness-list strong{font-size:12px;font-weight:750;color:#f2fbff}
.admin-registration-readiness-list small{font-size:11px;margin-top:4px;line-height:1.55;color:#b7cdd8}
.admin-registration-readiness-note{font-size:11px;line-height:1.55;margin:15px 0 0;color:#bdcbd4}
@media(max-width:850px){.admin-registration-readiness-head{flex-direction:column;align-items:stretch}.admin-registration-readiness-head button{width:100%}.admin-registration-readiness-list{grid-template-columns:1fr}}
@media(max-width:520px){.admin-registration-readiness{padding:13px}.admin-registration-readiness-head h3{font-size:16px}}
/* R313 – five personally scoped World read functions in citizen portal. */
.nv-r313-root{display:grid;gap:19px}
.nv-r313-heading{border:1px solid rgba(72,169,210,.35);border-radius:15px;padding:20px;background:linear-gradient(120deg,#0c2a40,#061827)}
.nv-r313-heading h2{font-size:clamp(21px,1.65vw,30px);font-weight:800;color:#ecfaff;display:flex;align-items:center;gap:12px;margin:0 0 9px}
.nv-r313-heading h2 i{color:#59dfff}
.nv-r313-heading p{font-size:13px;color:#bed3df;line-height:1.6;margin:0}
.nv-r313-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.nv-r313-grid .nv-r313-card{min-width:0;padding:21px;display:flex;align-items:flex-start;flex-direction:column;gap:10px}
.nv-r313-card h3,.nv-r313-land h3{font-size:17px;color:#e9f9ff;font-weight:750;margin:0}
.nv-r313-card h3 i,.nv-r313-land h3 i{color:#4bdbff;margin-right:8px}
.nv-r313-card>p,.nv-r313-land>p{font-size:12px;color:#b9d0de;line-height:1.55;margin:0}
.nv-r313-card label{font-size:12px;color:#d5eef6;font-weight:700}
.nv-r313-card .form-control{width:100%;color:#fff;background:#102e45;border:1px solid #36738f}
.nv-r313-card .form-control:focus{color:#fff;background:#102e45;border-color:#61cbe9}
.nv-r313-card [data-r313-load],.nv-r313-land [data-r313-load]{min-height:42px;margin:3px 0 0}
.nv-r313-card [data-r313-load]:disabled,.nv-r313-land [data-r313-load]:disabled{opacity:.55;cursor:wait}
.nv-r313-status{font-size:12px;color:#b8d9e7;line-height:1.6;overflow-wrap:anywhere}
.nv-r313-fact,.nv-r313-entry{padding:8px 11px;margin:5px 0;border:1px solid rgba(63,139,170,.3);border-radius:8px;background:rgba(4,28,47,.74);color:#e0f6ff;font-size:12px;overflow-wrap:anywhere}
.nv-r313-limited{margin:8px 0;color:#c9d3dc;font-size:12px;line-height:1.55}
.nv-r313-land{margin-top:18px;padding:22px}
.nv-r313-land h3{margin-bottom:10px}
.nv-r313-land .nv-r313-status{margin:12px 0}
@media(max-width:900px){.nv-r313-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.nv-r313-heading,.nv-r313-grid .nv-r313-card,.nv-r313-land{padding:14px}.nv-r313-card [data-r313-load],.nv-r313-land [data-r313-load]{width:100%}}


/* R314: compact seven-action group audit for member-only World endpoints. */
.nv-world-groups .nv-world-group-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:15px}
.nv-world-groups .nv-world-group-insights .btn{width:100%;min-height:39px;font-size:11px;white-space:normal;line-height:1.35;padding:8px}
.nv-world-groups .nv-world-group-insights-result{margin-top:13px;padding:11px 12px;border-radius:9px;background:rgba(11,46,66,.68);border:1px solid rgba(65,169,204,.3)}
@media(max-width:1100px){.nv-world-groups .nv-world-group-insights{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.nv-world-groups .nv-world-group-insights{grid-template-columns:1fr}}

/* R315: personal World inventory details and own Experiences. */
.nv-r315-library{display:grid;gap:17px}
.nv-r315-panel{padding:22px;margin:17px 0;min-width:0}
.nv-r315-panel h3{font-size:18px;font-weight:780;margin:0 0 9px;color:#e8f9ff}
.nv-r315-panel h3 i{margin-right:8px;color:#5edafb}
.nv-r315-panel>p{font-size:12px;line-height:1.6;color:#bbd2e0}
.nv-r315-panel button{min-height:40px;margin:10px 0}
.nv-r315-panel button:disabled{opacity:.55;cursor:wait}
.nv-r315-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.nv-r315-grid>div{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:8px}
.nv-r315-grid label{font-size:12px;color:#d6ebf8;font-weight:700}
.nv-r315-grid .form-control{width:100%;background:#122f45;border-color:#417a95;color:#f2faff}
.nv-r315-grid .form-control:focus{background:#173b55;color:#fff}
.nv-r315-grid button{margin-top:3px}
.nv-r315-row,.nv-r315-hint{margin:7px 0;padding:9px 11px;font-size:12px;line-height:1.5;overflow-wrap:anywhere;border:1px solid rgba(80,161,196,.27);border-radius:8px;color:#e2f4ff;background:rgba(9,35,55,.7)}
.nv-r315-hint{color:#e7d2ac;border-color:rgba(227,174,94,.3)}
.nv-r315-entry{margin-top:12px;padding:16px;border:1px solid rgba(65,171,207,.35);border-radius:12px;background:rgba(5,31,49,.8)}
.nv-r315-entry h4{font-size:15px;color:#f2fdff;margin:0 0 7px;overflow-wrap:anywhere}
.nv-r315-entry>p{font-size:12px;color:#bed7e4}
.nv-r315-actions{display:flex;flex-wrap:wrap;gap:10px}
.nv-r315-actions button{margin:0}
#nvR315ExperiencesStatus,#nvR315ExperienceStatus,#nvR315InventoryStatus{padding:9px 0;color:#c7dfec;font-size:12px;line-height:1.5}
@media(max-width:820px){.nv-r315-grid{grid-template-columns:1fr}}
@media(max-width:520px){.nv-r315-panel{padding:14px}.nv-r315-grid button,.nv-r315-actions button,#nvR315ExperiencesLoad{width:100%}}

/* R316: secure read-only World-finance cards */
.nv-r316-root{display:grid;gap:17px}
.nv-r316-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.nv-r316-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;padding:22px}
.nv-r316-card h3{font-size:17px;font-weight:780;color:#eaf9ff;margin:0}
.nv-r316-card>p{font-size:12px;color:#bdd7e5;line-height:1.6;margin:0}
.nv-r316-card button{min-height:42px}
.nv-r316-card button:disabled{opacity:.55;cursor:wait}
.nv-r316-card [data-r316-result]{width:100%;min-width:0}
.nv-r316-fact{margin:6px 0;padding:10px 12px;background:rgba(6,30,49,.75);border:1px solid rgba(79,169,204,.33);border-radius:8px;overflow-wrap:anywhere;color:#e8f9ff;font-size:12px;line-height:1.55}
.nv-r316-warning{font-size:11px;color:#d0dce7;padding:13px;border:1px solid rgba(203,165,78,.36);border-radius:10px}
@media(max-width:900px){.nv-r316-grid{grid-template-columns:1fr}}
@media(max-width:520px){.nv-r316-card{padding:14px}.nv-r316-card button{width:100%}}

/* R317: opt-in clipboard control is hidden until the own NVBAN passes validation. */
.nv-r316-card [hidden]{display:none!important}


/* R318 – keyboard accessible, own-UUID-backed World inventory navigation */
.nv-r318-inventory-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;margin:8px 0;padding:10px 12px;border:1px solid rgba(79,169,204,.3);border-radius:10px;background:rgba(6,30,49,.6)}
.nv-r318-choice-name{font-size:13px;line-height:1.5;color:#e8f9ff;overflow-wrap:anywhere;min-width:0;flex:1}
.nv-r318-choice-action{flex-shrink:0;min-height:39px;white-space:normal}
.nv-r318-choice-action:focus-visible{outline:3px solid #ffd56a;outline-offset:3px}
@media(max-width:640px){.nv-r318-inventory-choice{flex-direction:column;align-items:stretch}.nv-r318-choice-action{width:100%;text-align:center}}


/* R319 – responsive filtering of the already loaded personal experience page. */
.nv-r319-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 8px}
.nv-r319-filters label{display:flex;flex-direction:column;gap:7px;min-width:0;color:#e0f5ff;font-size:13px;line-height:1.45}
.nv-r319-filters input,.nv-r319-filters select{width:100%;min-width:0;max-width:100%;min-height:40px}
.nv-r319-filter-status{font-size:13px;color:#c4e8f5;margin:10px 0}
.nv-r315-entry[tabindex]{scroll-margin-top:100px}
@media(max-width:1100px){.nv-r319-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.nv-r319-filters{grid-template-columns:minmax(0,1fr)}}


/* R320: five personal land-commerce GET cards, zero implicit World reads. */
.nv-r320-land{margin-top:22px}
.nv-r320-land>h2{font-size:clamp(19px,2vw,26px);margin:0 0 8px}
.nv-r320-land>p{max-width:92ch;line-height:1.6}
.nv-r320-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.nv-r320-card{min-width:0;overflow-wrap:anywhere}
.nv-r320-card h3{font-size:clamp(17px,1.5vw,21px);margin:0 0 8px}
.nv-r320-card [data-r320-status]{margin:12px 0 8px;font-size:13px;line-height:1.6}
.nv-r320-record{padding:12px;margin:10px 0;border:1px solid rgba(81,167,203,.28);border-radius:10px;background:rgba(6,30,49,.55)}
.nv-r320-record p{margin:4px 0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.nv-r320-note{color:#cfecf6;font-size:13px;margin-top:16px}
@media(min-width:1600px){.nv-r320-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:750px){.nv-r320-grid{grid-template-columns:1fr}}


/* R321: scoped, responsive controls operating only on 12 verified World rows. */
.nv-r321-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:13px 0 10px;padding:12px;border:1px solid rgba(78,176,218,.32);border-radius:10px}
.nv-r321-controls legend{float:none;width:auto;padding:0 7px;font-size:13px;font-weight:600;color:#d6f0ff}
.nv-r321-controls label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:12px;color:#d6f0ff;overflow-wrap:anywhere}
.nv-r321-controls input,.nv-r321-controls select{min-width:0;width:100%;max-width:100%;min-height:38px}
.nv-r321-controls:disabled{opacity:.65}
.nv-r321-filter-info{font-size:12px;color:#bfe6f9;margin:8px 0 10px;line-height:1.6}
@media(max-width:670px){.nv-r321-controls{grid-template-columns:minmax(0,1fr)}}


/* R322: finance reconciliation, transfer policy, personal commerce & order detail. */
.nv-r322-root{margin-top:28px}
.nv-r322-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:17px}
.nv-r322-card{min-width:0;overflow-wrap:anywhere}
.nv-r322-card h3{font-size:clamp(18px,1.5vw,22px);margin:0 0 9px}
.nv-r322-card [data-r322-status]{font-size:13px;margin:12px 0;line-height:1.6;color:#c5ebfb}
.nv-r322-fact{padding:10px 0;border-bottom:1px solid rgba(115,189,221,.16);font-size:13px;overflow-wrap:anywhere}
.nv-r322-order{border:1px solid rgba(83,169,217,.35);border-radius:11px;margin:10px 0;padding:13px;background:rgba(5,31,54,.55)}
.nv-r322-order p{font-size:13px;line-height:1.5;overflow-wrap:anywhere;margin:7px 0}
.nv-r322-note{margin:18px 0;color:#d0e8f5;font-size:13px;line-height:1.7}
@media(min-width:1700px){.nv-r322-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.nv-r322-grid{grid-template-columns:minmax(0,1fr)}}


/* R323 admin Grid planner, responsive from 390px through 3440px. */
.nv-r323-explorer{margin:22px 0 28px}
.nv-r323-explorer h3{font-size:clamp(20px,2vw,27px);margin:0 0 10px}
.nv-r323-explorer>p{max-width:100ch;line-height:1.6}
.nv-r323-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:16px}
.nv-r323-card{min-width:0;overflow-wrap:anywhere}
.nv-r323-card h4{font-size:clamp(16px,1.3vw,20px)}
.nv-r323-card label{display:flex;flex-direction:column;gap:6px;margin:9px 0;font-size:13px}
.nv-r323-card input,.nv-r323-card select{width:100%;min-width:0;max-width:100%}
.nv-r323-card [role=status]{font-size:13px;line-height:1.5;margin:11px 0}
.nv-r323-row{padding:12px 0;border-bottom:1px solid rgba(115,182,225,.25)}
.nv-r323-row p{margin:4px 0 8px;font-size:13px}
.nv-r323-note{font-size:13px;opacity:.87;margin-top:16px}
@media(min-width:2000px){.nv-r323-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:750px){.nv-r323-grid{grid-template-columns:minmax(0,1fr)}}


/* R324: public World places, destinations, events with privacy-safe local filters. */
.nv-r324-section{padding:30px 0 65px;background:linear-gradient(135deg,#07192b,#0e2a47)}
.nv-r324-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}
.nv-r324-header h2{font-size:clamp(22px,2vw,30px);margin:0 0 10px;color:#f3f8ff}
.nv-r324-header p,.nv-r324-disclaimer{font-size:14px;color:#c8ddec;line-height:1.6;max-width:85ch}
.nv-r324-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:13px;margin:20px 0}
.nv-r324-filters label{display:flex;flex-direction:column;gap:7px;color:#d6efff;font-size:13px;min-width:0}
.nv-r324-filters input,.nv-r324-filters select{min-width:0;max-width:100%;width:100%}
.nv-r324-status{margin:15px 0;color:#d0eaf7;min-height:24px}
.nv-r324-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,285px),1fr));gap:15px}
.nv-r324-card{min-width:0;background:rgba(7,36,57,.86);border:1px solid rgba(80,177,218,.33);border-radius:15px;padding:20px;overflow-wrap:anywhere}
.nv-r324-card h3{color:#fff;font-size:clamp(18px,1.5vw,22px);margin:0 0 10px}
.nv-r324-card p,.nv-r324-card small{font-size:14px;color:#c4dbe7;line-height:1.6}
.nv-r324-card a{color:#78e6ff;text-decoration:underline;text-underline-offset:4px}
.nv-r324-type{display:inline-block;color:#9be7ee;font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px}
@media(max-width:520px){.nv-r324-section{padding:20px 0 45px}.nv-r324-header button{width:100%}}


/* R325: verified World classifieds category badges, safe public browsing. */
.nv-r325-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 20px}
.nv-r325-chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;
  background:rgba(17,106,133,.4);border:1px solid rgba(101,214,242,.3);
  color:#d4f3ff;padding:5px 11px;font-size:13px}
.nv-r325-chip strong{font-variant-numeric:tabular-nums}
.nv-r325-card-meta{color:#a3e4f4;font-size:13px;margin:8px 0}

/* R326 genuine World-backed search, land and public detail. */
.nv-r326-search-form{display:grid;grid-template-columns:minmax(180px,3fr) minmax(180px,1fr) auto;
 gap:12px;align-items:end;margin:18px 0}
.nv-r326-search-form label{min-width:0;display:flex;flex-direction:column;gap:7px;color:#cce8f9}
.nv-r326-search-form input,.nv-r326-search-form select{width:100%}
.nv-r326-pager{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.nv-r326-categories{background:#092135;padding:20px 0;border-top:1px solid #265675}
.nv-r326-categories h2{font-size:clamp(18px,2vw,24px);color:#f3f8ff}
.nv-r326-detail[open]{border:1px solid #4f9dc0;border-radius:14px;background:#0c243b;
 color:#fff;max-width:min(95vw,640px);width:100%;padding:25px}
.nv-r326-detail::backdrop{background:rgba(0,9,23,.86)}
.nv-r326-detail p{color:#d2ebf8;overflow-wrap:anywhere;white-space:pre-line}
.nv-r326-detail h2{font-size:clamp(19px,2vw,25px)}
.nv-r326-detail-close{float:right}
@media(max-width:750px){.nv-r326-search-form{grid-template-columns:1fr}.nv-r326-pager button{flex:1 1 130px}}


/* R327 World-only public region, group and citizen search. */
.nv-r327-community-empty{font-size:14px;color:#d5e8f7}
.nv-r327-community-meta{color:#aedff3;font-size:13px;margin-top:10px;font-variant-numeric:tabular-nums}
.nv-r327-community-privacy{font-size:12px;color:#b2cbdc}

/* R328: Published World profile, always via anonymized portal GET only. */
.nv-r328-public-profile{display:flex;align-items:flex-start;gap:24px;background:#092438;
 color:#edf7fd;padding:24px;border:1px solid #326a89;border-radius:16px;margin:20px 0;
 max-width:960px;min-width:0}
.nv-r328-public-profile[hidden],.nv-r328-public-profile img[hidden]{display:none!important}
.nv-r328-public-profile>img{width:164px;height:164px;flex:0 0 164px;object-fit:cover;
 border-radius:15px;border:1px solid #659fc0;background:#0b354a}
.nv-r328-public-profile-copy{min-width:0;overflow-wrap:anywhere;flex:1}
.nv-r328-public-profile-copy h3{font-size:clamp(19px,2vw,26px);line-height:1.2;color:#fff}
.nv-r328-public-profile-copy p{color:#d3e9f5;white-space:pre-line;max-width:76ch}
.nv-r328-public-profile-copy a{display:inline-block;margin:12px 0}
@media(max-width:670px){.nv-r328-public-profile{flex-direction:column;padding:17px;gap:13px}
 .nv-r328-public-profile>img{width:116px;height:116px;flex:0 0 auto}}

/* R329: verified published profile directory. */
.nv-r329-photos-choice{display:flex;align-items:center;gap:10px;margin:12px 0;color:#d3e8f5;font-size:14px}
.nv-r329-photos-choice input{width:18px;height:18px}
.nv-r329-person-card{display:flex;gap:16px;align-items:flex-start}
.nv-r329-person-card img{width:70px;height:70px;object-fit:cover;border-radius:12px;background:#12374a}
.nv-r329-person-card .nv-r329-person-copy{flex:1;min-width:0;overflow-wrap:anywhere}
.nv-r329-person-card a{display:inline-block;margin-top:6px}
@media(max-width:420px){.nv-r329-person-card{gap:10px}.nv-r329-person-card img{width:56px;height:56px}}

/* R330: one clear site menu, compact illustrated World places, real release badge. */
.nv-home-header .nv-home-nav{gap:clamp(1px,.32vw,8px)}
.nv-home-header .nv-home-nav .nav-link{white-space:nowrap;padding-inline:clamp(7px,.57vw,14px)!important;font-size:clamp(12px,.75vw,16px)}
.nv-home-more{display:flex;align-items:stretch}
.nv-home-more>button{border:0;background:transparent;cursor:pointer}
.nv-home-more-menu{min-width:220px;padding:7px;border:1px solid rgba(70,177,222,.4);
 background:#071c2d;box-shadow:0 16px 38px rgba(0,0,0,.38)}
.nv-home-more-menu .dropdown-item{display:flex;align-items:center;gap:10px;color:#e4f7ff;
 font-size:13px;border-radius:6px;padding:9px 11px}
.nv-home-more-menu .dropdown-item:hover,.nv-home-more-menu .dropdown-item:focus{color:#03101e;background:#54cfff}
.nv-home-more-menu .dropdown-divider{border-color:rgba(78,161,197,.33);margin:6px 8px}
.nv-auth-eyebrow{text-align:center;margin:0 0 17px;color:#a6d8eb;
 text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:730}
.nv-auth-eyebrow i{color:#48d4f9;margin-right:6px}
.nv-footer-release{display:inline-flex;margin-left:9px;border:1px solid rgba(73,177,218,.35);
 border-radius:999px;color:#b8f1ff;background:rgba(18,79,112,.25);padding:3px 9px;
 font-size:11px;font-weight:750;letter-spacing:.02em;white-space:nowrap;font-variant-numeric:tabular-nums}
.portal-footer-copy .nv-footer-release{vertical-align:middle}
.nv-home-places-compact{max-width:100%;padding:12px 15px!important;margin-top:20px!important}
.nv-home-places-compact .nv-places-head{margin-bottom:9px}
.nv-home-places-compact .nv-places-head h2{font-size:clamp(19px,1.18vw,26px)}
.nv-home-places-compact .nv-places-head p{font-size:12px}
.nv-home-places-feature{display:grid;grid-template-columns:minmax(150px,27%) minmax(0,1fr);
 gap:17px;align-items:stretch;border-radius:10px;overflow:hidden;border:1px solid rgba(55,148,196,.35);
 background:linear-gradient(120deg,rgba(7,30,49,.92),rgba(3,15,28,.94));min-height:164px}
.nv-home-places-feature>img{height:100%;min-height:164px;max-height:210px;width:100%;
 object-fit:cover;object-position:center center}
.nv-home-places-content{padding:13px 16px 12px 0;min-width:0;display:flex;flex-direction:column;
 justify-content:center;gap:4px}
.nv-home-places-content h3{font-size:clamp(15px,.9vw,19px);font-weight:720;line-height:1.25;margin:0 0 3px}
.nv-home-places-content p{color:#cadde9;font-size:12px;line-height:1.42;margin:0 0 4px}
.nv-home-places-content small{color:#9bd4eb;font-size:11px}
.nv-home-places-entry{min-width:0;padding:0 0 4px}
.nv-home-places-entry+.nv-home-places-entry{border-top:1px solid rgba(72,145,186,.28);padding-top:8px}
.nv-home-places-entry .nv-home-discovery-type{font-size:10px;margin:0 0 3px}
.nv-home-places-content .nv-home-discovery-empty{border:none;background:transparent;padding:0;
 font-size:12px}
.nv-home-places-cta{align-self:flex-start;color:#4cdafe;font-size:12px;font-weight:680;
 text-decoration:none;margin-top:7px}
.nv-home-places-cta:hover,.nv-home-places-cta:focus{color:white;text-decoration:underline}
@media(max-width:1199px){
 .nv-home-more{display:block}
 .nv-home-header .nv-home-nav .nav-link{white-space:normal;padding:10px 12px!important;font-size:14px}
 .nv-home-more-menu{max-width:100%;box-shadow:none}
}
@media(max-width:660px){
 .nv-home-places-compact{padding:12px!important}
 .nv-home-places-feature{grid-template-columns:1fr;gap:0}
 .nv-home-places-feature>img{height:116px;min-height:116px;max-height:116px}
 .nv-home-places-content{padding:13px}
 .nv-home-places-compact .nv-places-head{align-items:flex-start}
}

/* R331: Twin World-powered editorial panels. Each carousel has independent
   keyboard, arrow, pagination and swipe controls. */
.nv-home-discovery-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:16px;width:100%;align-items:stretch;margin-top:18px}
.nv-home-discovery-columns .nv-home-slider{margin:0!important;padding:16px!important;
 min-width:0;display:flex;flex-direction:column;background:linear-gradient(145deg,rgba(3,19,35,.91),rgba(1,11,23,.95));
 border:1px solid rgba(66,160,209,.38);border-radius:15px;box-shadow:0 16px 36px rgba(0,0,0,.27)}
.nv-home-slider-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
 min-width:0;margin-bottom:13px!important}
.nv-home-slider-kicker{display:block;font-size:10px;letter-spacing:.15em;color:#75d9fc;
 margin-bottom:5px;font-weight:750}
.nv-home-slider-heading h2{font-size:clamp(20px,1.22vw,26px)!important;line-height:1.18}
.nv-home-slider-heading p{font-size:12px!important;line-height:1.35;margin-top:5px!important}
.nv-home-slider-heading>a{white-space:nowrap;font-size:12px;flex-shrink:0;padding-top:7px}
.nv-home-slider-stage{flex:1;min-width:0;min-height:230px;display:flex;outline-offset:3px}
.nv-home-slide{display:grid;grid-template-columns:minmax(130px,40%) minmax(0,1fr);
 gap:0;width:100%;min-height:230px;border-radius:10px;
 background:linear-gradient(110deg,rgba(4,31,51,.96),rgba(2,17,33,.92));
 border:1px solid rgba(55,143,184,.45);overflow:hidden}
.nv-home-slide[hidden]{display:none!important}
.nv-home-slide-visual{display:flex;justify-content:center;align-items:center;min-width:0;
 background:radial-gradient(circle at 30% 25%,rgba(46,172,216,.36),rgba(5,29,54,.92) 72%)}
.nv-home-slide-event-visual{background:radial-gradient(circle at 60% 25%,rgba(172,95,200,.28),rgba(4,29,48,.96) 72%)}
.nv-home-slide-visual>i{font-size:clamp(44px,4vw,90px);color:#87e5ff;opacity:.86;
 filter:drop-shadow(0 0 18px rgba(10,183,244,.42))}
.nv-home-slide-event-visual>i{color:#e0a7ff}
.nv-home-slide-art-link{width:100%;height:100%;display:flex;align-items:center;
 justify-content:center;overflow:hidden;background:#150c1c}
.nv-home-slide-art-link img{max-width:100%;height:auto;width:100%;
 object-fit:contain;object-position:center;display:block}
.nv-home-slide-copy{min-width:0;padding:clamp(12px,1.1vw,20px);display:flex;
 flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;
 overflow-wrap:anywhere}
.nv-home-slide-type{color:#6ce0ff;font-size:10px;text-transform:uppercase;
 font-weight:800;letter-spacing:.10em}
.nv-home-slide-copy h3{margin:2px 0 0;color:#f3fcff;line-height:1.2;
 font-size:clamp(17px,1.04vw,22px);font-weight:760}
.nv-home-slide-copy p{margin:2px 0 0;font-size:12px;line-height:1.5;
 color:#d0e4f1;display:-webkit-box;-webkit-line-clamp:3;
 -webkit-box-orient:vertical;overflow:hidden}
.nv-home-slide-copy small{display:block;color:#a6cee3;font-size:11px;line-height:1.35}
.nv-home-slide-link{font-size:12px;font-weight:680;color:#56dfff;margin-top:5px}
.nv-home-slider-empty{display:flex;flex-direction:column;gap:10px;align-items:center;
 justify-content:center;min-height:230px;width:100%;text-align:center;
 color:#bfd5e4;background:rgba(9,34,54,.65);border:1px dashed rgba(80,156,193,.5);
 border-radius:10px;padding:20px}
.nv-home-slider-empty>i{font-size:40px;color:#86cbe7}
.nv-home-slider-empty p{font-size:13px;line-height:1.5;margin:0}
.nv-home-slider-controls{display:flex;align-items:center;justify-content:center;
 gap:12px;margin-top:auto;padding:12px 0 0;min-height:51px}
.nv-home-slider-arrow{width:34px;height:34px;display:inline-flex;justify-content:center;
 align-items:center;border:1px solid rgba(86,188,226,.45);border-radius:50%;
 background:rgba(20,79,104,.28);color:#a9ecff;cursor:pointer;transition:background .2s}
.nv-home-slider-arrow:hover:not(:disabled),.nv-home-slider-arrow:focus-visible{
 background:#12678c;color:white}
.nv-home-slider-arrow:disabled{opacity:.35;cursor:default}
.nv-home-slider-position{min-width:44px;text-align:center;font-size:12px;color:#b9d8e7;
 font-variant-numeric:tabular-nums}
.nv-home-slider-dots{display:flex;align-items:center;gap:6px}
.nv-home-slider-dots[hidden]{display:none}
.nv-home-slider-dot{width:8px;height:8px;border-radius:50%;border:0;
 padding:0;background:#52788a;cursor:pointer}
.nv-home-slider-dot[aria-current="true"]{width:20px;border-radius:6px;background:#42d4ff}
.nv-home-slider-dot:focus-visible,.nv-home-slider-stage:focus-visible{outline:2px solid #70e3ff}
@media(max-width:980px){
 .nv-home-discovery-columns{grid-template-columns:1fr;gap:14px}
 .nv-home-slider-stage{min-height:200px}
 .nv-home-slide,.nv-home-slider-empty{min-height:200px}
}
@media(max-width:540px){
 .nv-home-discovery-columns .nv-home-slider{padding:13px!important}
 .nv-home-slider-heading{gap:10px}
 .nv-home-slider-heading>a{font-size:11px}
 .nv-home-slide{grid-template-columns:1fr}
 .nv-home-slide-visual{height:135px}
 .nv-home-slide-art-link img{max-height:135px;width:auto;max-width:100%}
 .nv-home-slide-copy{padding:13px;min-height:115px}
 .nv-home-slider-empty{min-height:180px}
}

/* R334 – Unified citizen portal design. Uses the existing approved Admin
   hero asset, not a synthetic World image or a CSS-resized thumbnail. */
body[data-section="citizen"]{
  --nv-citizen-space:clamp(12px,1.2vw,20px);
  --nv-citizen-radius:14px;
}
body[data-section="citizen"] .portal-main{
  min-width:0;
  background:
    radial-gradient(ellipse 70% 42% at 75% 0%,rgba(20,104,152,.17),transparent 72%),
    linear-gradient(180deg,#041a2a 0%,#03121f 48%,#020d18 100%);
}
body[data-section="citizen"] .portal-content{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--nv-citizen-space);
  padding:clamp(14px,1.45vw,26px) clamp(14px,1.55vw,30px) 38px;
  min-width:0;
}
body[data-section="citizen"] .portal-content>*{
  min-width:0;
  max-width:100%;
  margin-top:0!important;
  margin-bottom:0!important;
}
body[data-section="citizen"] .portal-page-head{
  min-height:136px;
  padding:clamp(16px,1.4vw,24px) clamp(17px,1.55vw,28px);
  margin:0;
  border-radius:var(--nv-citizen-radius);
  background:
    linear-gradient(90deg,rgba(2,18,31,.96) 0%,rgba(3,22,37,.86) 45%,rgba(2,18,31,.45) 100%),
    url('/assets/admin-dashboard-hero.webp') center/cover no-repeat;
  box-shadow:0 15px 35px rgba(0,0,0,.22);
}
body[data-section="citizen"] .portal-page-head>div:last-child{min-width:0}
body[data-section="citizen"] .portal-page-head p{max-width:72ch;line-height:1.45}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero{
  height:clamp(174px,12.4vw,222px);
  min-height:174px;
  border-radius:var(--nv-citizen-radius);
  border:1px solid rgba(65,167,213,.54);
  background:
    linear-gradient(90deg,rgba(2,15,27,.93) 0%,rgba(2,15,27,.78) 42%,rgba(2,15,27,.27) 100%),
    url('/assets/admin-dashboard-hero.webp') center 46%/cover no-repeat;
  box-shadow:0 18px 40px rgba(0,0,0,.23);
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero::after{
  background:linear-gradient(0deg,rgba(2,13,25,.20),transparent 80%);
  pointer-events:none;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero .portal-hero-overlay{
  left:clamp(18px,2.1vw,36px);
  right:18px;
  max-width:min(800px,calc(100% - 45px));
}
.nv-citizen-dashboard-kicker{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 10px;
  margin:0 0 11px;
  border-radius:999px;
  border:1px solid rgba(111,218,251,.34);
  background:rgba(8,62,91,.62);
  color:#a9e8ff;
  font-size:10px;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero h1{
  margin:0 0 10px;
  font-size:clamp(24px,2.3vw,40px);
  line-height:1.17;
  letter-spacing:-.027em;
  overflow-wrap:anywhere;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero h1 span{
  display:inline;
  color:#74ddff;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero p{
  margin:0;
  max-width:640px;
  color:#c8e3f0;
  line-height:1.5;
  font-size:clamp(12px,.95vw,15px);
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-live{
  display:flex;
  flex-direction:column;
  min-width:0;
  gap:var(--nv-citizen-space);
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0;
  padding:0 2px;
}
.nv-citizen-world-eyebrow{
  display:block;
  color:#83ddfa;
  font-size:10px;
  letter-spacing:.15em;
  font-weight:760;
  margin-bottom:5px;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top h2{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 6px;
  font-size:clamp(20px,1.5vw,27px);
  letter-spacing:-.02em;
  color:#f1fbff;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top h2 i{color:#66d6fd}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top p{
  font-size:clamp(12px,.85vw,13px);
  line-height:1.5;
  color:#a7c6d9;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top [data-world-reload]{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:39px;
  padding:8px 13px;
  font-size:12px;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:var(--nv-citizen-space);
  min-width:0;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:214px;
  padding:clamp(16px,1.2vw,22px);
  gap:12px;
  border-radius:var(--nv-citizen-radius);
  border:1px solid rgba(63,150,191,.42);
  background:linear-gradient(145deg,rgba(8,39,59,.91),rgba(3,23,41,.97));
  box-shadow:0 12px 30px rgba(0,0,0,.16);
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card h3{
  margin:0;
  padding-bottom:12px;
  font-size:clamp(14px,1vw,17px);
  font-weight:720;
  line-height:1.3;
  color:#f1fbff;
  border-bottom:1px solid rgba(85,169,209,.23);
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card [data-world-list]{
  min-height:0;
  min-width:0;
  flex:1 1 auto;
  align-content:start;
  gap:8px;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card p{
  font-size:12.5px;
  line-height:1.55;
  color:#bad0de;
  margin:0;
  overflow-wrap:anywhere;
}
body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid .nv-world-link{
  margin-top:auto;
  padding-top:9px;
  color:#66dfff;
  font-weight:650;
  font-size:12px;
  min-height:28px;
  align-self:flex-start;
}
body[data-section="citizen"][data-active="dashboard"] .nv-world-entry{
  border-radius:10px;
  padding:12px;
}
body[data-section="citizen"] .panel-card,
body[data-section="citizen"] .content-card{border-radius:var(--nv-citizen-radius)}
body[data-section="citizen"] .portal-page-head,
body[data-section="citizen"] .portal-hero{isolation:isolate}
body[data-section="citizen"] .nv-self-hero{border-radius:var(--nv-citizen-radius)}
@media(min-width:2400px){
 body[data-section="citizen"] .portal-content{
  padding:30px 38px 50px;
  --nv-citizen-space:22px;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card{
  min-height:230px;
 }
}
@media(max-width:1399px){
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
}
@media(max-width:900px){
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid{
  grid-template-columns:minmax(0,1fr);
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card{
  min-height:160px;
 }
}
@media(max-width:767px){
 body[data-section="citizen"] .portal-content{
  padding:12px 11px 24px;
  --nv-citizen-space:13px;
 }
 body[data-section="citizen"] .portal-page-head{
  min-height:120px;
  padding:17px;
  gap:12px;
  background-position:64% center;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero{
  height:190px;
  min-height:190px;
  background-position:58% center;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero .portal-hero-overlay{
  left:17px;
  right:16px;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero h1{
  font-size:clamp(21px,5.6vw,30px);
  line-height:1.2;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-dashboard-hero p{
  font-size:12px;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top{
  align-items:flex-start;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top [data-world-reload]{
  min-height:36px;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-grid>.panel-card{
  min-height:155px;
  padding:16px;
 }
}
@media(max-width:420px){
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top{
  flex-wrap:wrap;
 }
 body[data-section="citizen"][data-active="dashboard"] .nv-citizen-world-top [data-world-reload]{
  margin-left:0;
 }
}

/* R335 – self profile: read-only identity, separated World profile and account security. */
body[data-section="citizen"][data-active="profile"] .nv-self-layout{
 grid-template-columns:minmax(225px,.85fr) minmax(310px,1.25fr) minmax(310px,1.15fr);
 align-items:start;gap:clamp(13px,1.2vw,22px);
}
body[data-section="citizen"][data-active="profile"] .nv-self-panel{
 padding:clamp(17px,1.25vw,24px);
 border-radius:14px;
}
body[data-section="citizen"][data-active="profile"] .nv-self-panel .panel-title{
 flex-wrap:wrap;gap:8px;margin:0 0 15px;align-items:center;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form{
 gap:13px;margin-top:0;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form-separated{
 margin-top:22px;padding-top:20px;border-top:1px solid rgba(102,187,223,.28);
}
body[data-section="citizen"][data-active="profile"] .nv-self-form label{
 display:grid;gap:7px;min-width:0;font-size:12px;color:#b8ddec;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form textarea{
 min-height:90px;resize:vertical;font-size:13px;line-height:1.55;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form textarea#citizenEditBio{min-height:120px}
body[data-section="citizen"][data-active="profile"] .nv-self-form input[readonly]{
 color:#91adbe!important;cursor:not-allowed;background:rgba(21,42,56,.67)!important;
 border-color:rgba(99,147,172,.29)!important;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form input:focus-visible,
body[data-section="citizen"][data-active="profile"] .nv-self-form textarea:focus-visible{
 outline:2px solid #58cfff;outline-offset:1px;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form button{min-height:42px}
body[data-section="citizen"][data-active="profile"] .nv-self-form button:disabled{
 opacity:.53;cursor:not-allowed;
}
body[data-section="citizen"][data-active="profile"] .nv-self-form-heading{
 margin:0;font-size:15px;font-weight:700;color:#f1faff;
}
body[data-section="citizen"][data-active="profile"] .nv-self-help{
 margin:3px 0 0;font-size:12px;line-height:1.6;overflow-wrap:anywhere;
}
body[data-section="citizen"][data-active="profile"] .nv-self-security-footer{
 margin-top:22px;padding-top:18px;border-top:1px solid rgba(102,187,223,.28);
}
body[data-section="citizen"][data-active="profile"] .nv-self-readonly strong{
 overflow-wrap:anywhere;white-space:pre-wrap;
}
@media(max-width:1600px){
 body[data-section="citizen"][data-active="profile"] .nv-self-layout{
  grid-template-columns:minmax(230px,.8fr) minmax(310px,1.25fr);
 }
 body[data-section="citizen"][data-active="profile"] .nv-self-side{grid-column:1/-1}
}
@media(max-width:1050px){
 body[data-section="citizen"][data-active="profile"] .nv-self-layout{
  grid-template-columns:minmax(0,1fr);
 }
 body[data-section="citizen"][data-active="profile"] .nv-self-side{grid-column:auto}
}

/* R336 – shared DE/EN switch and small-screen citizen navigation */
body[data-section="citizen"] .nv-citizen-lang-menu{flex:none;min-width:0}
body[data-section="citizen"] .nv-citizen-lang-button{
 display:inline-flex;align-items:center;justify-content:center;gap:7px;
 min-height:38px;padding:7px 10px;font-size:12px;font-weight:700;
 white-space:nowrap;
}
body[data-section="citizen"] .nv-citizen-lang-button .bi-globe2{font-size:16px}
body[data-section="citizen"] .nv-citizen-lang-menu .dropdown-item[aria-pressed="true"]{
 background:rgba(28,142,191,.25);color:#79e5ff;
}
body[data-section="citizen"] .nv-self-account-uuid{
 display:grid;gap:8px;padding:12px 0 19px;
 margin:0 0 16px;border-bottom:1px solid rgba(102,187,223,.28);
}
body[data-section="citizen"] .nv-self-account-uuid>span{font-size:12px;color:#a6cadc}
body[data-section="citizen"] .nv-self-account-uuid>code{
 display:block;max-width:100%;overflow-wrap:anywhere;
 user-select:text;font-size:12px;color:#b5e7ff;
 padding:12px;border:1px solid rgba(102,187,223,.27);
 border-radius:9px;background:rgba(3,23,39,.64);
}
@media(max-width:767px){
 body[data-section="citizen"] .portal-topbar{gap:7px;padding:0 10px}
 body[data-section="citizen"] .portal-search{min-width:0;flex:1 1 55px;padding:0 9px}
 body[data-section="citizen"] .portal-search input{min-width:0;width:100%}
 body[data-section="citizen"] .topbar-actions{gap:7px;min-width:0;flex:0 0 auto}
 body[data-section="citizen"] .topbar-user-menu{min-width:0;flex:0 0 auto}
 body[data-section="citizen"] .nv-citizen-lang-button{
  padding:7px 9px;min-width:48px;min-height:36px;gap:5px;
 }
 body[data-section="citizen"] .nv-citizen-lang-button .bi-chevron-down{display:none}
 body[data-section="citizen"] .topbar-user-dropdown{max-width:calc(100vw - 20px)}
}

/* Bootstrap-dropdown positioning fallback when the external stylesheet is
   delayed; prevents account dropdown widths from expanding the mobile header. */
body[data-section="citizen"] .topbar-user-menu>.dropdown-menu,
body[data-section="citizen"] .nv-citizen-lang-menu>.dropdown-menu{
 position:absolute;display:none;left:auto;right:0;top:100%;z-index:1060;
}
body[data-section="citizen"] .topbar-user-menu>.dropdown-menu.show,
body[data-section="citizen"] .nv-citizen-lang-menu>.dropdown-menu.show{display:block}

/* R337 shared citizen/admin support desk – responsive, accessible, and isolated. */
.nv-support{display:flex;flex-direction:column;gap:clamp(14px,1.4vw,24px);min-width:0}
.nv-support .panel-card{border:1px solid rgba(83,157,198,.33);border-radius:16px;background:linear-gradient(145deg,#092c42,#061b2e);box-shadow:0 14px 32px rgba(0,0,0,.14)}
.nv-support-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:clamp(20px,1.8vw,30px);background:linear-gradient(100deg,rgba(3,19,34,.92),rgba(4,23,42,.66)),url('/assets/admin-dashboard-hero.webp') center/cover!important}
.nv-support-intro h2{font-size:clamp(23px,1.8vw,31px);font-weight:780;color:#f2fcff;margin:7px 0}
.nv-support-intro p{margin:0;line-height:1.5;color:#bbd7e6;max-width:690px}
.nv-support-kicker{font-size:11px;font-weight:760;text-transform:uppercase;letter-spacing:.12em;color:#8bd8f4;display:inline-flex;gap:7px;align-items:center}
.nv-support-identity{display:grid;gap:6px;min-width:0;padding:13px 17px;background:rgba(2,18,31,.68);border:1px solid rgba(108,186,223,.3);border-radius:12px}
.nv-support-identity span{font-size:11px;color:#add3e4}
.nv-support-identity code{font-size:12px;overflow-wrap:anywhere;color:#e6f9ff;white-space:normal}
.nv-support-layout{display:grid;grid-template-columns:minmax(260px,.76fr) minmax(0,1.6fr);align-items:start;gap:clamp(14px,1.4vw,24px);min-width:0}
.nv-support-list-panel,.nv-support-create,.nv-support-detail,.nv-support-empty{min-width:0;padding:clamp(16px,1.35vw,24px)}
.nv-support-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center}
.nv-support h3{font-size:clamp(17px,1.2vw,21px);font-weight:750;margin:0;color:#f2faff}
.nv-support-toolbar button{flex:none;display:inline-flex;gap:8px;align-items:center}
.nv-support-filter{display:grid;gap:7px;margin:18px 0 12px;color:#bedbe9;font-size:12px}
.nv-support-list{display:grid;gap:9px;min-width:0}
.nv-support-ticket{display:grid;gap:7px;width:100%;text-align:left;padding:14px;border-radius:12px;border:1px solid rgba(84,154,193,.27);background:rgba(7,35,56,.75);color:#eaf8ff;cursor:pointer;min-width:0}
.nv-support-ticket:hover,.nv-support-ticket.active,.nv-support-ticket:focus-visible{outline:2px solid rgba(109,213,249,.45);outline-offset:1px;background:rgba(17,65,90,.74)}
.nv-support-ticket-subject{font-size:13px;font-weight:720;overflow-wrap:anywhere}
.nv-support-ticket-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#b3d3e5}
.nv-support-ticket-status,.nv-support-status{border:1px solid rgba(93,196,238,.45);padding:4px 9px;background:rgba(12,70,102,.55);border-radius:999px;white-space:nowrap;font-size:11px;color:#bcf2ff}
.nv-support-ticket-owner{font-size:11px;color:#a8cadb;overflow-wrap:anywhere}
.nv-support-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;font-size:12px;color:#aac9d9}
.nv-support-workspace{min-width:0;display:grid;gap:clamp(14px,1.4vw,24px)}
.nv-support-create h3{display:flex;align-items:center;gap:10px;margin:0 0 20px}
.nv-support-create h3 i{color:#6bdeff}
.nv-support-form{display:grid;gap:14px;margin:0;min-width:0}
.nv-support-form label,.nv-support-admin-actions label{display:grid;gap:7px;min-width:0;font-size:12px;color:#b8d6e6}
.nv-support-form textarea{resize:vertical;min-height:106px;line-height:1.6}
.nv-support-form :is(input,textarea,select),.nv-support-filter select,.nv-support-admin-actions select{background:#081f32;color:#f3fbff;border-color:rgba(107,170,204,.4);min-width:0}
.nv-support-form button{min-height:43px;justify-self:start}
.nv-support-feedback{font-size:12px;color:#a2ddee;overflow-wrap:anywhere;min-height:15px;margin:0}
.nv-support-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(114,184,217,.23);padding-bottom:17px;margin-bottom:17px}
.nv-support-detail-head h3{margin:9px 0;overflow-wrap:anywhere}
.nv-support-detail-head p{font-size:12px;color:#b0d3e2;margin:0;overflow-wrap:anywhere}
.nv-support-detail-head>.nv-support-status{flex:none}
.nv-support-admin-actions{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:0 0 20px}
.nv-support-admin-actions label{flex:1;min-width:190px}
.nv-support-admin-actions button{min-height:38px}
.nv-support-thread{display:grid;gap:14px;max-height:620px;overflow:auto;overscroll-behavior:contain;margin-bottom:20px;padding:2px 6px 2px 2px}
.nv-support-message{padding:14px 17px;border:1px solid rgba(86,164,201,.3);border-radius:12px;background:rgba(7,34,53,.7);min-width:0}
.nv-support-message-admin{margin-left:clamp(5px,6%,46px);background:rgba(14,60,84,.68);border-color:rgba(72,188,225,.42)}
.nv-support-message-citizen{margin-right:clamp(5px,6%,46px)}
.nv-support-message-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;color:#9bcbdc;font-size:11px}
.nv-support-message-meta strong{color:#cbf1ff;font-weight:700}
.nv-support-message-body{margin:11px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#e2eff7;line-height:1.65;font-size:13px}
.nv-support-reply{padding-top:15px;border-top:1px solid rgba(114,184,217,.23)}
.nv-support-empty{text-align:center;padding:40px 20px;color:#abcbdc}
.nv-support-empty>i{font-size:32px;color:#78d3f4}
.nv-support-empty h3{margin:12px 0}
.nv-support-empty p{margin:0;font-size:13px}
.nv-support [hidden]{display:none!important}
@media(max-width:1150px){.nv-support-layout{grid-template-columns:minmax(0,1fr)}.nv-support-intro{align-items:start}.nv-support-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.nv-support-intro{flex-direction:column}.nv-support-identity{width:100%}.nv-support-list{grid-template-columns:minmax(0,1fr)}.nv-support-detail-head{flex-direction:column}.nv-support-toolbar{flex-wrap:wrap}.nv-support-ticket{padding:12px}.nv-support-admin-actions{display:grid}.nv-support-pagination button{min-width:75px}}

/* R338: support level 50 gets a clear, single-purpose staff workbench. */
.nv-support-staff-link,
.nv-support-topbar-link,
.nv-support-topbar-title {
  display:inline-flex;align-items:center;gap:9px;
}
.nv-support-topbar-link {
  text-decoration:none;
  color:#b6e9fc;
  border:1px solid rgba(85,179,220,.48);
  background:rgba(11,54,78,.75);
  border-radius:9px;
  padding:9px 13px;
  white-space:nowrap;
  font-size:12px;
  font-weight:700;
  min-height:39px;
}
.nv-support-topbar-link:hover,.nv-support-topbar-link:focus-visible {
  background:rgba(25,93,124,.95);color:#fff;
}
.nv-support-topbar-title{color:#beeafa;font-size:15px;letter-spacing:.015em}
@media(max-width:620px){
 .nv-support-topbar-link{padding:8px;font-size:11px}
 .nv-support-topbar-title{font-size:13px}
}

/* R339 WhatsApp-inspired ticket workspace; private data remains text-only. */
.nv-support-unread{display:inline-grid;place-items:center;margin-left:7px;padding:2px 6px;border-radius:999px;background:#dc3c59;color:white;font-size:11px;min-width:20px;font-weight:800}
.nv-support-agent-panel{padding:18px 22px}
.nv-support-agent-panel summary{cursor:pointer;font-weight:750;color:#b9eaff}
.nv-support-agent-panel p{color:#b2ccdb;font-size:12px}
.nv-support-agent-form{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;align-items:end;margin:14px 0}
.nv-support-agent-form label,.nv-support-routing label{display:grid;gap:6px;font-size:12px;color:#bee5f5}
.nv-support-agent-form input,.nv-support-agent-form select,.nv-support-routing :is(select,textarea){background:#071d30;color:white;border-color:rgba(88,171,204,.5)}
.nv-support-agent-rows{display:grid;gap:7px}
.nv-support-agent-entry{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 12px;background:#082d43;border-radius:10px;font-size:12px;color:#d5eefd}
.nv-support-agent-entry code{color:#addaf0;overflow-wrap:anywhere}
.nv-support-agent-entry button{margin-left:auto}
.nv-support-routing{display:grid;grid-template-columns:1fr 1.5fr auto;gap:12px;align-items:end;padding:16px;border:1px solid rgba(105,187,219,.3);border-radius:14px;margin-bottom:14px;background:rgba(6,27,45,.7)}
.nv-support-routing h4{grid-column:1/-1;font-size:14px;color:#c4eeff;margin:0}
.nv-support-routing h4 small{font-size:11px;color:#91afc0}
.nv-support-transfer-history{grid-column:1/-1;display:grid;gap:6px;font-size:12px;color:#b8d5e5}
.nv-support-transfer-history article{background:#0a334c;padding:9px 12px;border-radius:9px;overflow-wrap:anywhere}
.nv-support-privacy{font-size:11px;color:#96becf;line-height:1.5;margin:4px 0 12px}
.nv-support-thread{padding:16px 12px;background:linear-gradient(145deg,#062538,#092e3b);border-radius:15px;border:1px solid rgba(130,192,211,.19);display:flex;flex-direction:column;align-items:stretch}
.nv-support-message{width:fit-content;max-width:min(86%,790px);position:relative;border-radius:14px;padding:12px 15px;box-shadow:0 4px 15px rgba(0,0,0,.12)}
.nv-support-message-admin{margin-left:auto;margin-right:2px;background:#155169;border-bottom-right-radius:4px}
.nv-support-message-citizen{margin-right:auto;margin-left:2px;background:#102e42;border-bottom-left-radius:4px}
.nv-support-message-avatar{height:30px;width:30px;flex:none;display:grid;place-items:center;border-radius:50%;background:#285c71;color:white;font-weight:750;overflow:hidden}
.nv-support-message-avatar img{width:100%;height:100%;object-fit:cover}
.nv-support-message-meta{display:flex;gap:9px;align-items:center;justify-content:flex-start}
.nv-support-message-meta time{margin-left:auto}
.nv-support-message-body{margin:9px 0;line-height:1.5}
.nv-support-message-translate{display:flex;gap:7px;margin-top:8px;flex-wrap:wrap}
.nv-support-message-translate button{background:transparent;color:#a6e3ff;border:1px solid #3a758d;border-radius:7px;padding:3px 9px;font-size:11px}
.nv-support-translation{white-space:pre-wrap;border-top:1px dashed #33718a;padding-top:10px;margin-top:8px;font-size:13px;color:#d7efff}
.nv-support-ticket-unread{border-left:3px solid #ffba58}
.nv-support-ticket-preview{font-size:11px;color:#b1cbd9}
@media(max-width:850px){.nv-support-agent-form,.nv-support-routing{grid-template-columns:1fr}.nv-support-routing h4,.nv-support-transfer-history{grid-column:1}.nv-support-message{max-width:94%}}

[data-nv-unread][hidden]{display:none!important}
html{scroll-padding-top:110px}
.nv-support-admin-actions{scroll-margin-top:120px}

.nv-support-draft-translation{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.nv-support-draft-translation>.nv-support-translation{flex-basis:100%;width:100%;margin:6px 0;padding:11px;border-radius:8px;background:#0f3851}.nv-support-draft-translation [hidden]{display:none!important}\n
/* R378 Welcome hero image: dedicated copy of the original supplied neon logo.
   Display the original landscape ratio fully at 390 / 768 / 1440 / 3440 px. */
.nv-home-copy .nv-welcome-user-logo{display:block;width:min(100%,680px);max-width:100%;height:auto;object-fit:contain;object-position:left center;aspect-ratio:3 / 1;overflow:visible}
@media(max-width:767px){.nv-home-copy .nv-welcome-user-logo{width:100%;max-width:100%;margin:5px 0 14px}}
@media(min-width:2560px){.nv-home-copy .nv-welcome-user-logo{width:min(100%,900px)}}

/* R380: original Stadt NexVerse mascot/wordmark; preserve its 3:1 alpha image
   without clipping. This is the Welcome/Login hero, not the navbar logo. */
.nv-home-copy .nv-welcome-user-logo {
  display:block;width:min(100%,760px);max-width:100%;height:auto;
  aspect-ratio:2048 / 682;object-fit:contain;object-position:left center;
  overflow:visible;filter:drop-shadow(0 8px 22px rgba(5,30,81,.28));
}
@media (max-width:767px) {
  .nv-home-copy .nv-welcome-user-logo {width:100%;margin:4px 0 16px;filter:none}
}
@media (min-width:2560px) {
  .nv-home-copy .nv-welcome-user-logo {width:min(100%,990px)}
}
