:root{
 --bg:#f3f5f9;--surface:#fff;--surface-2:#f8f9fc;--ink:#172033;--muted:#68758b;--line:#e4e8f0;
 --violet:#7157f6;--violet-2:#8b72ff;--cyan:#18a8bb;--blue:#3e7de7;--green:#20a77b;--amber:#e6a21e;--rose:#e45f7a;
 --nav:#111827;--nav-2:#182235;--danger:#d84b63;--shadow:0 18px 48px rgba(26,39,64,.10);--shadow-soft:0 8px 24px rgba(26,39,64,.07);
 --radius:22px;--radius-sm:14px;--sidebar:244px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.45}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.hidden{display:none!important}.eyebrow{display:block;font-size:10px;line-height:1.2;font-weight:900;letter-spacing:.16em;color:#7b8799;text-transform:uppercase}.app-page{min-height:100vh}.modal-open{overflow:hidden}
:focus-visible{outline:3px solid rgba(113,87,246,.28);outline-offset:2px}

/* Brand */
.logo-orbit{position:relative;display:inline-grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#7657ff,#41a6ef);box-shadow:0 8px 24px rgba(113,87,246,.28);flex:0 0 auto}.logo-orbit:before,.logo-orbit:after,.logo-orbit i{content:"";position:absolute;border:1.5px solid rgba(255,255,255,.9);border-radius:50%}.logo-orbit:before{width:22px;height:22px}.logo-orbit:after{width:12px;height:12px}.logo-orbit i{width:4px;height:4px;background:#fff;border:0}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#20b486;box-shadow:0 0 0 4px rgba(32,180,134,.12)}

/* App shell */
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:24px 18px 18px;background:linear-gradient(180deg,#111827 0%,#101827 48%,#0e1522 100%);color:#fff;display:flex;flex-direction:column;z-index:40}.side-brand{display:flex;align-items:center;gap:12px;padding:0 7px 25px}.side-brand>div{display:flex;flex-direction:column;min-width:0}.side-brand b{font-size:17px;letter-spacing:-.02em}.side-brand small{color:#8490a4;font-size:10px;margin-top:1px}.side-nav{display:flex;flex-direction:column;gap:5px}.side-link{border:0;background:transparent;color:#8f9bad;display:grid;grid-template-columns:29px 1fr auto;align-items:center;gap:5px;width:100%;padding:11px 12px;border-radius:12px;text-align:left;transition:.18s ease}.side-link>span{font-size:17px;color:#6f7d91;text-align:center}.side-link>b{font-size:13px;font-weight:700}.side-link:hover{background:rgba(255,255,255,.055);color:#dce4ef}.side-link.active{color:#fff;background:linear-gradient(90deg,rgba(113,87,246,.20),rgba(113,87,246,.08));box-shadow:inset 3px 0 0 #8b72ff}.side-link.active>span{color:#a997ff}.nav-count{font-style:normal;font-size:9px;font-weight:900;background:#7657ff;color:#fff;border-radius:999px;min-width:19px;height:19px;display:grid;place-items:center;padding:0 5px}.nav-separator{height:1px;background:rgba(255,255,255,.07);margin:12px 7px}.side-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.07);padding-top:15px}.scanner-health{display:flex;align-items:center;gap:10px;padding:8px 10px}.scanner-health>div{display:flex;flex-direction:column}.scanner-health b{font-size:10px;letter-spacing:.08em}.scanner-health small{font-size:9px;color:#77859a}.logout-button{width:100%;display:flex;gap:10px;align-items:center;border:0;background:transparent;color:#8591a4;padding:10px 12px;border-radius:10px;margin-top:3px;font-size:12px}.logout-button:hover{background:rgba(255,255,255,.05);color:#fff}.workspace{grid-column:2;min-width:0}.topbar{height:84px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:rgba(243,245,249,.88);backdrop-filter:blur(16px);position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(218,224,234,.75)}.topbar-title span{font-size:9px;font-weight:900;color:#8a95a6;letter-spacing:.18em}.topbar-title h1{margin:2px 0 0;font-size:20px;letter-spacing:-.025em}.topbar-actions{display:flex;align-items:center;gap:10px}.quick-search{border:0;background:var(--ink);color:#fff;padding:11px 15px;border-radius:12px;font-weight:800;font-size:12px;box-shadow:0 7px 20px rgba(23,32,51,.13)}.quick-search span{color:#a998ff;margin-right:5px}.quick-search:hover{transform:translateY(-1px)}.account-chip{border:1px solid var(--line);background:#fff;display:flex;align-items:center;gap:9px;border-radius:13px;padding:6px 10px 6px 6px;cursor:default;box-shadow:0 4px 12px rgba(26,39,64,.03)}.account-chip>span:last-child{display:flex;flex-direction:column;text-align:left;min-width:70px}.account-chip b{font-size:11px}.account-chip small{font-size:9px;color:#8590a2}.avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#7b63f9,#5f94e8);color:#fff;font-weight:900;font-size:12px}.avatar.big{width:46px;height:46px;border-radius:15px;font-size:16px}.content{padding:30px 34px 55px;max-width:1640px;margin:0 auto}.view{display:none}.view.active{display:block;animation:viewIn .22s ease}@keyframes viewIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Home */
.hero-card{min-height:295px;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);position:relative;background:linear-gradient(116deg,#1b2440 0%,#222e51 53%,#2a2d62 100%);color:#fff;box-shadow:0 22px 55px rgba(25,34,59,.17)}.hero-card:before{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:radial-gradient(circle,rgba(113,87,246,.32),rgba(113,87,246,0) 68%);left:32%;top:-280px}.hero-card:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,transparent 48%,#000 100%)}.hero-copy{padding:47px 50px;position:relative;z-index:2}.hero-kicker{display:inline-flex;padding:6px 9px;border:1px solid rgba(255,255,255,.15);border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.14em;color:#bdc7da}.hero-copy h2{font-size:42px;line-height:1.03;letter-spacing:-.045em;margin:19px 0 15px;max-width:650px}.hero-copy h2 em{font-style:normal;color:#a998ff}.hero-copy p{max-width:555px;color:#aeb8ca;margin:0;font-size:14px;line-height:1.7}.hero-visual{position:relative;min-height:295px;z-index:2}.radar{position:absolute;width:255px;height:255px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:48px;top:20px}.radar:before,.radar:after,.radar i{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;inset:30px}.radar:after{inset:64px}.radar i:nth-child(1){inset:98px}.radar i:nth-child(2){inset:auto;left:50%;top:0;bottom:0;width:0;border-radius:0;border-width:0 0 0 1px}.radar i:nth-child(3){inset:50% 0 auto;height:0;border-radius:0;border-width:1px 0 0}.radar b{position:absolute;width:9px;height:9px;border-radius:50%;background:#65d7e3;left:68%;top:38%;box-shadow:0 0 0 7px rgba(101,215,227,.10),0 0 20px #65d7e3}.floating-chip{position:absolute;background:rgba(255,255,255,.96);color:#222c41;border-radius:13px;padding:9px 12px;box-shadow:0 12px 30px rgba(7,12,25,.18);font-weight:900;font-size:13px;min-width:82px}.floating-chip span{display:block;color:#8b96a7;font-weight:700;font-size:8px;text-transform:uppercase;letter-spacing:.09em;margin-top:1px}.chip-a{right:250px;top:50px}.chip-b{right:22px;top:112px}.chip-c{right:206px;bottom:28px}.overview-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0 35px}.metric{background:#fff;border:1px solid var(--line);border-radius:17px;padding:15px 17px;display:flex;align-items:center;gap:12px;box-shadow:0 5px 16px rgba(30,45,70,.035)}.metric-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:900}.metric-icon.purple{background:#f0edff;color:#7258f5}.metric-icon.cyan{background:#e7f8fa;color:#129bad}.metric-icon.amber{background:#fff5df;color:#d99511}.metric-icon.green{background:#e7f8f1;color:#159b71}.metric>div{display:flex;flex-direction:column}.metric b{font-size:19px;line-height:1}.metric small{font-size:9px;color:#7e899a;margin-top:5px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:0 2px 14px}.section-heading h2{margin:3px 0 0;font-size:23px;letter-spacing:-.03em}.section-heading>p{margin:0;color:#7b8799;font-size:11px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-card{--accent:var(--violet);position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px 20px 18px;min-height:216px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 7px 22px rgba(35,48,76,.045);transition:.2s ease}.service-card:before{content:"";position:absolute;height:3px;left:0;right:0;top:0;background:linear-gradient(90deg,var(--accent),transparent 75%)}.service-card:after{content:"";position:absolute;width:115px;height:115px;border-radius:50%;right:-62px;top:-58px;background:var(--accent);opacity:.07}.service-card:hover{transform:translateY(-3px);border-color:#d7dce7;box-shadow:0 14px 34px rgba(35,48,76,.09)}.accent-violet{--accent:#7657f7}.accent-cyan{--accent:#18a8bb}.accent-blue{--accent:#3f7ee7}.accent-green{--accent:#20a77b}.accent-amber{--accent:#e6a21e}.accent-rose{--accent:#e45f7a}.service-top{display:flex;justify-content:space-between;align-items:center}.service-symbol{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:color-mix(in srgb,var(--accent) 10%,white);color:var(--accent);font-size:19px;font-weight:900}.service-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.08em}.service-badge.live{background:#e6f8f1;color:#178863}.service-badge.beta{background:#f1efff;color:#654be3}.service-card h3{font-size:16px;margin:16px 0 6px;letter-spacing:-.02em}.service-card p{margin:0;color:#737f92;font-size:11px;line-height:1.6;max-width:340px}.service-card>button{margin-top:auto;border:0;background:transparent;padding:13px 0 0;color:var(--ink);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:space-between}.service-card>button b{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#f3f5f8;color:var(--accent);transition:.18s}.service-card:hover>button b{background:var(--accent);color:#fff;transform:translateX(2px)}.dashboard-lower{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:14px;margin-top:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 6px 20px rgba(31,44,70,.04)}.recent-panel{padding:20px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:13px}.panel-heading h3{font-size:16px;margin:3px 0 0}.text-button{border:0;background:transparent;color:#6e58df;font-weight:800;font-size:10px}.recent-list{display:flex;flex-direction:column}.recent-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto 25px;align-items:center;gap:11px;border:0;border-top:1px solid #edf0f5;background:transparent;width:100%;padding:12px 4px;text-align:left}.recent-item:first-child{border-top:0}.recent-item:hover{background:#fafbfe}.recent-icon{width:34px;height:34px;border-radius:11px;background:#f3f1ff;color:#7057ee;display:grid;place-items:center;font-weight:900}.recent-main,.recent-side{display:flex;flex-direction:column}.recent-main b{font-size:11px}.recent-main small{font-size:9px;color:#7f8b9c;margin-top:3px}.recent-side{align-items:flex-end;gap:4px}.recent-side small{font-size:8px;color:#9ba5b5}.row-arrow{color:#a0aaba}.tips-panel{padding:22px;position:relative;overflow:hidden;background:linear-gradient(145deg,#f7f4ff,#f3f8ff)}.tips-panel:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(113,87,246,.08);right:-90px;top:-75px}.tips-mark{font-size:24px;color:#7359f4}.tips-panel h3{font-size:18px;line-height:1.25;letter-spacing:-.03em;margin:10px 0 8px;max-width:220px}.tips-panel p{font-size:10px;line-height:1.6;color:#768296;margin:0}.copy-demo{margin-top:20px;border:1px dashed #cdd2e0;background:#fff;border-radius:11px;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;font-size:9px}.copy-demo b{color:#6d56e4}

/* Pages */
.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:4px 0 24px}.page-intro h2{font-size:30px;letter-spacing:-.04em;margin:4px 0 5px}.page-intro p{margin:0;color:#748094;font-size:12px}.btn-primary,.btn-secondary{border-radius:11px;padding:10px 14px;font-weight:800;font-size:11px;transition:.18s;border:1px solid transparent}.btn-primary{background:var(--ink);color:#fff;box-shadow:0 7px 18px rgba(23,32,51,.12)}.btn-primary:hover{background:#242e43;transform:translateY(-1px)}.btn-primary:disabled{opacity:.55;cursor:wait;transform:none}.btn-secondary{background:#fff;border-color:#dfe3ec;color:#4c596d}.btn-secondary:hover{border-color:#cbd1dd;background:#fafbfc}.wide{width:100%}.filter-row{display:flex;gap:7px;margin-bottom:13px}.filter-chip{border:1px solid #dfe4ec;background:#fff;color:#778397;border-radius:999px;padding:7px 12px;font-size:10px;font-weight:800}.filter-chip.active{background:#232d42;color:#fff;border-color:#232d42}.search-list.modern{display:flex;flex-direction:column;gap:8px}.search-row{width:100%;border:1px solid var(--line);background:#fff;border-radius:15px;padding:13px 15px;display:grid;grid-template-columns:42px minmax(0,1fr) 75px 95px auto 24px;align-items:center;gap:12px;text-align:left;box-shadow:0 5px 15px rgba(28,40,65,.03);transition:.16s}.search-row:hover{border-color:#d2d8e4;transform:translateY(-1px);box-shadow:0 9px 25px rgba(28,40,65,.06)}.search-row-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f2f0ff;color:#6f56ec;font-size:18px;font-weight:900}.search-row-main{min-width:0}.search-row-title{display:flex;align-items:center;gap:7px}.search-row-title b{font-size:12px}.search-row-title small{font-size:8px;color:#a1aab7}.search-row-sub{display:block;margin-top:3px;font-size:9px;color:#7c8799;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-row-sub i{font-style:normal;color:#c0c6d0;margin:0 4px}.search-row-progress{display:flex;align-items:center;gap:8px;margin-top:7px}.search-row-progress .progress-track{max-width:250px}.search-row-progress small{font-size:8px;color:#8b95a5;white-space:nowrap}.search-row-results{display:flex;flex-direction:column;text-align:right}.search-row-results b{font-size:14px}.search-row-results small{font-size:8px;color:#8c97a7}.search-row-date{font-size:9px;color:#8b95a5;text-align:right}.progress-track{height:5px;background:#e9edf3;border-radius:999px;overflow:hidden;flex:1}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,#7657f7,#4c91e8);border-radius:999px;transition:width .4s ease}.status-pill{display:inline-flex;align-items:center;gap:5px;font-size:8px;font-weight:900;border-radius:999px;padding:5px 7px;white-space:nowrap}.status-pill i{width:5px;height:5px;border-radius:50%;background:currentColor}.status-pill.done{background:#eaf8f2;color:#168862}.status-pill.running{background:#edf4ff;color:#3678d2}.status-pill.queued{background:#f1f2f5;color:#798395}.status-pill.failed{background:#fff0f2;color:#c7475b}.status-pill.cancelled{background:#f3f3f5;color:#747b88}.empty-state{border:1px dashed #d9dee8;background:rgba(255,255,255,.6);border-radius:18px;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;color:#808b9c}.empty-state>span{font-size:24px;color:#a9b1be}.empty-state>b{font-size:12px;color:#4a5669;margin-top:6px}.empty-state>small,.empty-state>span+small{font-size:9px;margin-top:4px}.empty-state.compact{min-height:80px}.scanner-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px}.scanner-form{padding:20px}.scanner-form label,.modal-form label{display:flex;flex-direction:column;gap:6px;font-size:10px;font-weight:800;color:#526075}.scanner-form input,.modal-form input,.modal-form select,.atlas-toolbar input,.atlas-toolbar select{width:100%;border:1px solid #dce1ea;background:#fff;border-radius:11px;padding:11px 12px;outline:0;font-size:12px;transition:.15s}.scanner-form input:focus,.modal-form input:focus,.modal-form select:focus,.atlas-toolbar input:focus,.atlas-toolbar select:focus{border-color:#8068ee;box-shadow:0 0 0 3px rgba(113,87,246,.08)}.scope-card{padding:12px 13px;border-radius:12px;background:#f6f7fa;border:1px solid #e7eaf0;margin:14px 0}.scope-card span{display:block;font-size:10px;font-weight:900}.scope-card small{display:block;font-size:9px;color:#7c8797;margin-top:2px}.scan-list{padding:0 20px 18px}.scan-item{padding:13px 0;border-top:1px solid #edf0f4}.scan-item:first-child{border-top:0}.scan-item>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.scan-item b{font-size:10px}.scan-item p{font-size:9px;color:#7c8798;margin:6px 0}.history-panel{overflow:hidden}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#8e99a9;text-align:left;padding:11px 16px;background:#fafbfc;border-bottom:1px solid #e9ecf1}td{padding:13px 16px;border-bottom:1px solid #edf0f4;font-size:10px;color:#5f6c80}tbody tr:last-child td{border-bottom:0}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover{background:#fafbfe}.table-service{display:flex;align-items:center;gap:10px}.table-service i{font-style:normal;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#f2f0ff;color:#7056ef;font-size:14px}.table-service>span{display:flex;flex-direction:column}.table-service b{font-size:10px;color:#344054}.table-service small{font-size:8px;color:#929caa;margin-top:2px}.table-arrow{text-align:right;color:#a3abba}

/* Atlas */
.atlas-toolbar{display:grid;grid-template-columns:220px minmax(200px,1fr) 220px auto auto;gap:8px;align-items:center;margin-bottom:10px}.atlas-toolbar>*{height:40px}.atlas-count{display:flex;align-items:center;padding:0 10px;font-size:9px;color:#7d8899;white-space:nowrap}.atlas-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px}.map-card{height:620px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;position:relative;box-shadow:var(--shadow-soft)}#worldCanvas{width:100%;height:100%;display:block}.map-hud{position:absolute;left:13px;top:13px;display:flex;gap:5px}.map-hud button{border:1px solid #dfe4ec;background:rgba(255,255,255,.95);width:31px;height:31px;border-radius:9px;font-weight:900}.map-coords{position:absolute;right:13px;bottom:13px;background:rgba(23,32,51,.9);color:#fff;border-radius:9px;padding:7px 10px;font-size:9px;font-weight:800}.detail-card{background:#fff;border:1px solid var(--line);border-radius:20px;min-height:620px;overflow:auto;box-shadow:var(--shadow-soft)}.detail-empty{min-height:620px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.detail-empty b{font-size:30px;color:#8068ef}.detail-empty strong{font-size:12px;margin-top:10px}.detail-empty span{font-size:9px;color:#8b96a6;margin-top:5px}.detail-head{padding:22px;border-bottom:1px solid #edf0f4}.detail-head h3{font-size:18px;margin:5px 0 14px}.kv{display:grid;grid-template-columns:95px 1fr;margin:0;padding:18px 22px}.kv dt,.kv dd{padding:7px 0;border-bottom:1px solid #f0f2f6;font-size:9px}.kv dt{color:#8a95a5}.kv dd{margin:0;font-weight:700;color:#455267}.raw-details{margin:0 22px 22px;border:1px solid #e5e9ef;border-radius:11px;overflow:hidden}.raw-details summary{padding:10px 12px;font-size:9px;font-weight:800;cursor:pointer}.raw-details pre{margin:0;border-top:1px solid #e5e9ef;background:#f7f8fa;padding:12px;font-size:8px;white-space:pre-wrap;overflow-wrap:anywhere}

/* Users */
.admin-note{display:flex;align-items:flex-start;gap:10px;border:1px solid #ded9fb;background:#f6f4ff;padding:12px 14px;border-radius:13px;margin:-8px 0 16px}.admin-note>span{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#7657f7;color:#fff;font-size:10px;font-weight:900}.admin-note p{margin:0;color:#5d6577;font-size:10px;line-height:1.6}.users-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.user-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:0 6px 20px rgba(32,44,70,.04)}.user-card-head{display:flex;align-items:center;gap:11px}.user-card-head h3{margin:0 0 5px;font-size:14px}.role-badge,.active-badge,.inactive-badge{display:inline-flex;padding:3px 6px;border-radius:999px;font-size:7px;font-weight:900;margin-right:4px}.role-badge.admin{background:#f0edff;color:#684de4}.role-badge.user{background:#eef2f6;color:#6c788a}.active-badge{background:#e8f8f1;color:#168863}.inactive-badge{background:#f1f2f4;color:#7c8592}.user-stats{display:grid;grid-template-columns:1fr 1.2fr;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4;margin:15px 0;padding:12px 0}.user-stats>div{display:flex;flex-direction:column}.user-stats b{font-size:11px}.user-stats small{font-size:8px;color:#8d97a6;margin-top:2px}.user-actions{display:flex;justify-content:space-between;align-items:center}.danger-link{border:0;background:transparent;color:#c64a60;font-size:9px;font-weight:800}.toggle-label{justify-content:space-between!important;flex-direction:row!important;align-items:center}.switch{position:relative;width:38px;height:22px}.switch input{position:absolute;opacity:0}.switch i{position:absolute;inset:0;border-radius:999px;background:#d8dde5;transition:.2s}.switch i:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:.2s}.switch input:checked+i{background:#7657f7}.switch input:checked+i:after{transform:translateX(16px)}

/* Modals */
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:22px}.modal-backdrop{position:absolute;inset:0;background:rgba(12,18,30,.62);backdrop-filter:blur(5px);animation:fade .18s}.modal-dialog{position:relative;z-index:2;background:#fff;border-radius:23px;width:min(680px,calc(100vw - 34px));max-height:calc(100vh - 42px);overflow:auto;box-shadow:0 35px 85px rgba(7,12,24,.25);animation:modalIn .22s ease}.result-dialog{width:min(1180px,calc(100vw - 34px))}.user-dialog{width:min(620px,calc(100vw - 34px))}@keyframes fade{from{opacity:0}}@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.modal-close{position:absolute;right:14px;top:13px;width:31px;height:31px;border-radius:9px;border:0;background:#f2f4f7;color:#7b8798;font-size:18px;z-index:5}.modal-close:hover{background:#e9edf2;color:#313b4e}.modal-heading{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:26px 28px 20px;border-bottom:1px solid #edf0f4}.modal-symbol{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#f1efff;color:#6e54ec;font-size:23px;font-weight:900}.modal-heading h2{margin:5px 0 3px;font-size:22px;letter-spacing:-.035em}.modal-heading p{margin:0;color:#7d8898;font-size:10px;line-height:1.55}.modal-form{padding:20px 28px}.modal-form>label{margin-bottom:14px}.modal-form small{font-weight:500;color:#8d97a6;font-size:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-grid .full{grid-column:1/-1}.service-core{margin-bottom:14px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:15px 28px 22px;border-top:1px solid #edf0f4}.checkrow{flex-direction:row!important;align-items:center!important;gap:8px!important;border:1px solid #e5e9ef;background:#fafbfc;padding:10px 11px;border-radius:10px}.checkrow input{width:auto!important}.level-picker{padding:12px 0}.level-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.level-picker-head label{font-size:10px;font-weight:800;color:#526075}.level-picker-head output{font-size:9px;font-weight:900;color:#6d56e5}.level-range{appearance:none;-webkit-appearance:none;width:100%;height:24px;padding:0!important;border:0!important;background:transparent!important;cursor:pointer;outline:0}.level-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#7657f7 0%,#7657f7 var(--range-progress,0%),#e1e6ee var(--range-progress,0%),#e1e6ee 100%);box-shadow:inset 0 0 0 1px rgba(88,100,125,.08)}.level-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:#fff;border:5px solid #7657f7;box-shadow:0 2px 8px rgba(70,58,130,.2)}.level-range::-moz-range-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#7657f7 0%,#7657f7 var(--range-progress,0%),#e1e6ee var(--range-progress,0%),#e1e6ee 100%);box-shadow:inset 0 0 0 1px rgba(88,100,125,.08)}.level-range::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:5px solid #7657f7;box-shadow:0 2px 8px rgba(70,58,130,.2)}.range-scale{display:flex;justify-content:space-between;font-size:8px;color:#98a1ae;margin-top:7px}.server-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.server-picker-head label{font-size:10px;font-weight:800}.server-picker-head span{font-size:8px;color:#8a95a5}.server-picker-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.server-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 7px 6px 9px;border-radius:999px;background:#f1efff;color:#6049d5;font-size:9px;font-weight:800}.server-chip button{width:17px;height:17px;border:0;border-radius:50%;background:rgba(113,87,246,.12);color:#6049d5;padding:0}.server-picker-entry{display:grid;grid-template-columns:1fr auto;gap:7px}.server-picker-entry button{border:0;border-radius:10px;background:#222c40;color:#fff;padding:0 13px;font-size:9px;font-weight:800}.rule-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.rule-chips span{padding:6px 9px;border-radius:999px;background:#f6f7f9;color:#657184;font-size:8px;font-weight:800;border:1px solid #e6e9ef}

/* Result modal */
.result-modal-head{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:25px 28px 19px;border-bottom:1px solid #edf0f4;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);z-index:3}.result-head-symbol{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:#f1efff;color:#6c52ec;font-size:23px;font-weight:900}.result-modal-head h2{font-size:20px;letter-spacing:-.03em;margin:4px 0 2px}.result-modal-head p{margin:0;font-size:9px;color:#7d8899}.result-head-side{display:flex;align-items:center;gap:12px;padding-right:35px}.result-head-side>b{display:flex;flex-direction:column;text-align:right;font-size:18px}.result-head-side>b small{font-size:8px;color:#8c96a5;font-weight:700}.running-result{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.scan-animation{width:86px;height:86px;border:1px solid #ddd8fb;border-radius:50%;position:relative;margin-bottom:22px}.scan-animation:before,.scan-animation:after{content:"";position:absolute;border:1px solid #e8e5fb;border-radius:50%;inset:14px}.scan-animation:after{inset:29px}.scan-animation span{position:absolute;inset:-1px;border-radius:50%;border-top:2px solid #7657f7;animation:spin 1.5s linear infinite}.scan-animation i{position:absolute;width:7px;height:7px;border-radius:50%;background:#7657f7;left:62px;top:24px;box-shadow:0 0 0 6px rgba(113,87,246,.1)}.scan-animation b{position:absolute;width:4px;height:4px;border-radius:50%;background:#20b486;left:27px;top:56px}@keyframes spin{to{transform:rotate(360deg)}}.running-result h3{font-size:16px;margin:0 0 5px}.running-result p{max-width:430px;margin:0;color:#7f8a9b;font-size:10px;line-height:1.6}.run-progress{display:flex;align-items:center;gap:10px;width:min(430px,90%);margin-top:21px}.run-progress span{font-size:9px;font-weight:900;color:#6550da}.result-note{margin:15px 28px 0;padding:9px 11px;border-radius:10px;background:#f7f8fb;color:#798496;font-size:9px}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px 28px 28px}.result-card{border:1px solid #e2e6ed;background:#fff;border-radius:15px;padding:14px;display:flex;flex-direction:column;min-height:150px;box-shadow:0 4px 14px rgba(30,42,68,.035)}.result-card.urgent{border-color:#f0a3b1;box-shadow:inset 0 3px 0 #e85d76,0 5px 15px rgba(216,75,99,.06)}.result-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.result-card h4{font-size:12px;margin:0;line-height:1.35}.urgent-badge{padding:4px 6px;border-radius:999px;background:#fff0f3;color:#cf4560;font-size:7px;font-weight:900;white-space:nowrap}.result-card-body{font-size:9px;color:#697589;margin:10px 0 12px}.result-card-body p{margin:4px 0}.result-card-body b{color:#354156}.tag{display:inline-flex;padding:2px 5px;border-radius:6px;background:#f0edff;color:#654ade;font-weight:900}.shield-alert{color:#c7465e!important}.shield-state-active{color:#187b61!important}.shield-state-none{color:#9b741c!important}.available-now{color:#15926c}.coord-copy{margin-top:auto;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;text-align:left;border:1px solid #e4e8ee;background:#f8f9fb;border-radius:10px;padding:8px 9px;transition:.15s}.coord-copy:hover{background:#f1efff;border-color:#d9d2fb}.coord-copy>span{font-size:7px;text-transform:uppercase;letter-spacing:.07em;color:#8d97a6}.coord-copy>strong{font-size:9px;color:#3b4759;white-space:nowrap}.coord-copy>b{font-size:7px;color:#6a52df}.coord-copy.copied{background:#eaf8f2;border-color:#c8eadf}.coord-copy.copied>b{color:#14835f}.result-section,.shield-section{margin:17px 28px 0;border:1px solid #e2e6ed;border-radius:17px;overflow:hidden}.result-section-head,.shield-section-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#fafbfc;border-bottom:1px solid #e8ebf0}.result-section-head>div{display:flex;align-items:baseline;gap:7px}.result-section-head span{font-size:8px;color:#8a95a5;text-transform:uppercase;font-weight:900}.result-section-head h3{margin:0;font-size:14px}.result-section-head>b,.shield-section-head>b{padding:4px 7px;border-radius:999px;background:#eef1f5;font-size:8px}.result-section .result-grid,.shield-section .result-grid{padding:13px}.shield-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:16px 28px 0}.shield-summary>div{border:1px solid #e2e6ed;background:#fafbfc;border-radius:13px;padding:11px 12px}.shield-summary span{display:block;font-size:8px;font-weight:800;color:#7a8697}.shield-summary b{display:block;font-size:19px;margin:2px 0}.shield-summary small{font-size:7px;color:#9aa3b1}.shield-summary .danger{border-color:#f0ccd3;background:#fff8f9}.shield-summary .danger b{color:#d24c65}.shield-summary .open{border-color:#efdfb8;background:#fffbf2}.shield-summary .open b{color:#b78213}.shield-summary .safe{border-color:#c7e9de;background:#f6fcfa}.shield-summary .safe b{color:#178761}.shield-section.soon{border-color:#efc1ca}.shield-section-head{justify-content:flex-start;gap:10px}.shield-section-icon{width:30px;height:30px;border-radius:10px;background:#eef1f5;display:grid;place-items:center;font-weight:900}.shield-section-head>div{flex:1}.shield-section-head h3{font-size:11px;margin:0}.shield-section-head p{font-size:8px;color:#8a95a5;margin:2px 0 0}.shield-section.soon .shield-section-icon{background:#fff0f3;color:#d04a62}.shield-section.none .shield-section-icon{background:#fff6e2;color:#b97d08}.shield-section.active .shield-section-icon{background:#eaf8f2;color:#168762}.error-panel{margin:22px 28px;padding:16px;border:1px solid #f0c9d0;background:#fff5f7;border-radius:13px;color:#9f3349}.error-panel b{font-size:11px}.error-panel p{font-size:9px;margin:4px 0 0}.result-empty{margin:24px 28px}.form-error{min-height:18px;color:#c5455d;font-size:10px;margin:8px 0 0}

/* Authentication */
.auth-page{min-height:100vh;background:#eef1f6}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(520px,1.25fr) minmax(430px,.75fr)}.auth-visual{position:relative;overflow:hidden;background:linear-gradient(145deg,#151d31 0%,#1e2947 58%,#2a2b5e 100%);color:#fff;padding:46px}.auth-visual:before{content:"";position:absolute;width:680px;height:680px;border-radius:50%;border:1px solid rgba(255,255,255,.05);right:-240px;top:-240px;box-shadow:0 0 0 80px rgba(255,255,255,.018),0 0 0 160px rgba(255,255,255,.012)}.auth-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(113,87,246,.28),transparent 32%),radial-gradient(circle at 12% 83%,rgba(35,169,185,.15),transparent 28%)}.auth-visual-inner{position:relative;z-index:2;height:100%;min-height:650px;display:flex;flex-direction:column}.auth-brand{display:flex;align-items:center;gap:12px;font-size:14px}.auth-brand b{color:#a99aff}.auth-copy{margin:auto 0;max-width:650px}.auth-copy .eyebrow{color:#8f9bb1}.auth-copy h1{font-size:58px;line-height:.98;letter-spacing:-.055em;margin:20px 0 22px}.auth-copy h1 em{font-style:normal;color:#a99aff}.auth-copy p{color:#aeb7c8;font-size:14px;line-height:1.75;max-width:500px}.auth-feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.auth-feature-row>div{border-top:1px solid rgba(255,255,255,.12);padding-top:13px;display:flex;flex-direction:column}.auth-feature-row span{font-size:8px;color:#7f8ca2;font-weight:900}.auth-feature-row b{font-size:10px;margin-top:5px}.auth-feature-row small{font-size:8px;color:#8d99ad;margin-top:3px;line-height:1.5}.auth-panel{display:grid;place-items:center;background:#fff;padding:45px}.auth-form-wrap{width:min(390px,100%)}.auth-mobile-brand{display:none}.auth-form-wrap h2{font-size:29px;letter-spacing:-.04em;margin:8px 0 7px}.auth-lead{color:#7c8798;font-size:11px;line-height:1.65;margin:0 0 26px}.auth-form label{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:800;color:#4f5c70;margin-bottom:15px}.auth-form input{width:100%;border:1px solid #dce1e9;border-radius:11px;padding:12px 13px;outline:0}.auth-form input:focus{border-color:#7a61ed;box-shadow:0 0 0 3px rgba(113,87,246,.08)}.password-field{position:relative}.password-field input{padding-right:75px}.password-field button{position:absolute;right:5px;top:5px;bottom:5px;border:0;background:#f3f5f8;border-radius:8px;padding:0 9px;font-size:8px;font-weight:800;color:#667286}.password-note{border:1px solid #e2defb;background:#f7f5ff;border-radius:11px;padding:10px 11px;color:#686178;font-size:9px;line-height:1.55;margin:-3px 0 15px}.auth-submit{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 14px}.auth-submit.loading{opacity:.6}.auth-footer{margin-top:28px;border-top:1px solid #edf0f4;padding-top:16px;display:flex;align-items:center;gap:9px;color:#8c96a5;font-size:8px}

/* Toast */
.toast{position:fixed;right:22px;bottom:22px;z-index:200;background:#182235;color:#fff;border-radius:11px;padding:11px 14px;font-size:10px;font-weight:800;box-shadow:0 15px 35px rgba(9,14,25,.22);transform:translateY(15px);opacity:0;pointer-events:none;transition:.2s}.toast.show{transform:none;opacity:1}.toast.error{background:#b83e55}

/* Responsive */
@media(max-width:1180px){:root{--sidebar:210px}.content{padding:25px}.topbar{padding:0 25px}.service-grid{grid-template-columns:repeat(2,1fr)}.hero-card{grid-template-columns:1fr 340px}.hero-copy h2{font-size:36px}.dashboard-lower{grid-template-columns:1fr}.users-grid{grid-template-columns:1fr 1fr}.result-grid{grid-template-columns:1fr 1fr}.atlas-layout{grid-template-columns:1fr}.detail-card,.detail-empty{min-height:300px}.auth-copy h1{font-size:48px}}
@media(max-width:900px){.app-shell{display:block}.sidebar{position:fixed;inset:auto 12px 12px 12px;width:auto;height:64px;border-radius:18px;padding:8px 10px;flex-direction:row;align-items:center;box-shadow:0 15px 45px rgba(11,16,27,.25)}.side-brand,.side-bottom,.nav-separator{display:none}.side-nav{flex:1;flex-direction:row;justify-content:space-around;gap:1px}.side-link{display:flex;flex-direction:column;justify-content:center;gap:1px;width:auto;min-width:55px;padding:6px 8px;text-align:center}.side-link>span{font-size:16px}.side-link>b{font-size:7px}.side-link.active{box-shadow:none}.nav-count{position:absolute;margin:-27px 0 0 27px}.workspace{padding-bottom:84px}.topbar{height:74px}.content{padding:20px}.quick-search{display:none}.hero-card{grid-template-columns:1fr;min-height:0}.hero-copy{padding:34px}.hero-visual{display:none}.overview-row{grid-template-columns:1fr 1fr}.scanner-layout{grid-template-columns:1fr}.atlas-toolbar{grid-template-columns:1fr 1fr}.atlas-toolbar .atlas-count{display:none}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{min-height:100vh}.auth-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:35px}.result-head-side{padding-right:30px}.search-row{grid-template-columns:40px minmax(0,1fr) auto 22px}.search-row-results,.search-row-date{display:none}}
@media(max-width:620px){.topbar{padding:0 16px}.account-chip>span:last-child{display:none}.content{padding:16px}.hero-copy{padding:28px 24px}.hero-copy h2{font-size:31px}.overview-row{grid-template-columns:1fr 1fr;gap:8px}.metric{padding:12px}.service-grid{grid-template-columns:1fr}.page-intro{align-items:flex-start;flex-direction:column}.page-intro h2{font-size:26px}.users-grid{grid-template-columns:1fr}.result-grid{grid-template-columns:1fr;padding:12px 16px 20px}.result-modal-head{grid-template-columns:42px minmax(0,1fr);padding:20px 16px 15px}.result-head-symbol{width:40px;height:40px}.result-head-side{grid-column:1/-1;padding:0;justify-content:space-between}.shield-summary{grid-template-columns:1fr 1fr;padding:12px 16px 0}.result-section,.shield-section{margin:12px 16px 0}.modal{padding:10px}.modal-dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:18px}.modal-heading{padding:22px 18px 16px}.modal-form{padding:17px 18px}.modal-actions{padding:13px 18px 18px}.form-grid{grid-template-columns:1fr}.service-core .full{grid-column:auto}.atlas-toolbar{grid-template-columns:1fr}.map-card{height:480px}.auth-panel{padding:28px 22px}.auth-form-wrap h2{font-size:25px}.side-link{min-width:42px;padding:6px 4px}.side-link>b{display:none}.search-row{padding:11px;grid-template-columns:36px minmax(0,1fr) auto}.search-row-icon{width:34px;height:34px}.search-row>.status-pill{display:none}.search-row>.row-arrow{display:none}.section-heading{align-items:flex-start;flex-direction:column;gap:3px}.section-heading>p{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v7.0.1 — readability + bilingual controls
   Keep the visual identity, but remove micro-type that felt undersized on 1080p/HiDPI displays. */
body{font-family:"Segoe UI Variable Text","Segoe UI",Aptos,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;line-height:1.52}
.eyebrow{font-size:11px;letter-spacing:.14em}
.side-brand b{font-size:18px}.side-brand small{font-size:11.5px}.side-link>b{font-size:14px}.nav-count{font-size:10px}.scanner-health b{font-size:11px}.scanner-health small{font-size:10.5px}.logout-button{font-size:13px}
.topbar-title span{font-size:10.5px}.topbar-title h1{font-size:22px}.quick-search{font-size:13px}.account-chip b{font-size:12px}.account-chip small{font-size:10.5px}
.hero-kicker{font-size:10px}.hero-copy p{font-size:15px}.floating-chip span{font-size:9.5px}.metric small{font-size:11px}.section-heading>p{font-size:12.5px}
.service-badge{font-size:9.5px}.service-card h3{font-size:17px}.service-card p{font-size:13px;line-height:1.6}.service-card>button{font-size:12.5px}.text-button{font-size:11.5px}
.recent-main b{font-size:12.5px}.recent-main small{font-size:10.5px}.recent-side small{font-size:9.5px}.tips-panel p{font-size:11.5px}.copy-demo{font-size:10.5px}
.page-intro p{font-size:13px}.btn-primary,.btn-secondary{font-size:12.5px}.filter-chip{font-size:11.5px}
.search-row-title b{font-size:13px}.search-row-title small{font-size:10px}.search-row-sub{font-size:10.5px}.search-row-progress small,.search-row-results small{font-size:9.5px}.search-row-date{font-size:10px}.status-pill{font-size:9.5px}
.empty-state>b{font-size:13px}.empty-state>small,.empty-state>span+small{font-size:10.5px}
.scanner-form label,.modal-form label{font-size:11.5px}.scanner-form input,.modal-form input,.modal-form select,.atlas-toolbar input,.atlas-toolbar select{font-size:13px}.scope-card span{font-size:11.5px}.scope-card small{font-size:10px}
.scan-item b{font-size:11.5px}.scan-item p{font-size:10.5px}th{font-size:9.5px}td{font-size:11.5px}.table-service b{font-size:11.5px}.table-service small{font-size:9.5px}
.atlas-count{font-size:10.5px}.map-coords{font-size:10.5px}.detail-empty strong{font-size:13px}.detail-empty span{font-size:10.5px}.kv dt,.kv dd{font-size:10.5px}.raw-details summary{font-size:10.5px}.raw-details pre{font-size:9.5px}
.admin-note>span{font-size:11px}.admin-note p{font-size:11.5px}.role-badge,.active-badge,.inactive-badge,.language-badge{font-size:9px}.user-stats b{font-size:12.5px}.user-stats small{font-size:9.5px}.danger-link{font-size:10.5px}
.modal-heading p{font-size:11.5px}.modal-form small{font-size:9.5px}.level-picker-head label,.server-picker-head label{font-size:11.5px}.level-picker-head output{font-size:10.5px}.range-scale{font-size:9.5px}.server-picker-head span{font-size:9.5px}.server-chip{font-size:10.5px}.server-picker-entry button{font-size:10.5px}.rule-chips span{font-size:9.5px}
.result-modal-head p{font-size:10.5px}.result-head-side>b small{font-size:9.5px}.running-result p{font-size:11.5px}.run-progress span{font-size:10px}.result-note{font-size:10.5px}.result-card h4{font-size:14px}.urgent-badge{font-size:9px}.result-card-body{font-size:10.5px;line-height:1.55}.coord-copy>span{font-size:9px}.coord-copy>strong{font-size:10.5px}.coord-copy>b{font-size:9px}.result-section-head span{font-size:9.5px}.result-section-head>b,.shield-section-head>b{font-size:9.5px}.shield-summary span{font-size:9.5px}.shield-summary small{font-size:9px}.shield-section-head h3{font-size:13px}.shield-section-head p{font-size:9.5px}.error-panel b{font-size:12px}.error-panel p{font-size:10.5px}.form-error{font-size:11px}
.auth-feature-row span{font-size:9.5px}.auth-feature-row b{font-size:11.5px}.auth-feature-row small{font-size:9.5px}.auth-lead{font-size:13px}.auth-form label{font-size:11.5px}.auth-form input{font-size:14px}.password-field button{font-size:10px}.password-note{font-size:10.5px}.auth-footer{font-size:9.5px}.toast{font-size:11.5px}

/* Per-user language selector */
.language-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 4px 12px rgba(26,39,64,.035)}
.language-switch button,.language-switch a{appearance:none;border:0;background:transparent;color:#7c8799;text-decoration:none;min-width:34px;height:30px;padding:0 8px;border-radius:8px;display:grid;place-items:center;font-family:inherit;font-size:11px;font-weight:800;line-height:1;letter-spacing:.03em;transition:.18s ease}
.language-switch button:hover,.language-switch a:hover{color:var(--ink);background:#f2f4f8}.language-switch .active{background:#ece9ff;color:#6549e8;box-shadow:inset 0 0 0 1px rgba(113,87,246,.08)}
.auth-language-switch{position:absolute;top:28px;right:30px;z-index:3}.auth-panel{position:relative}
.language-badge{display:inline-flex;align-items:center;margin-left:5px;padding:4px 7px;border-radius:999px;background:#eef3fb;color:#59708f;font-weight:900;letter-spacing:.05em}

@media(max-width:900px){.side-link>b{font-size:9px}.topbar-actions{gap:7px}.language-switch button{min-width:30px;padding:0 6px}.auth-language-switch{top:20px;right:20px}}
@media(max-width:620px){body{font-size:14px}.topbar-title h1{font-size:19px}.topbar-title span{font-size:9px}.language-switch{padding:2px}.language-switch button{min-width:28px;height:28px;font-size:10px}.quick-search{font-size:0;width:38px;height:38px;padding:0;display:grid;place-items:center}.quick-search span{font-size:15px;margin:0}.account-chip{padding-right:6px}.hero-copy p{font-size:14px}.auth-language-switch{top:16px;right:16px}}

/* v7.0.2 — comfortable desktop scale
   The first readability pass was still visually too small at the user's normal 1920×1080 setup.
   This is a real UI scale pass: text, icons, controls and spacing all grow together. */
@media(min-width:901px){
 :root{--sidebar:260px}
 body{font-size:16px;line-height:1.56}
 .eyebrow{font-size:12px;letter-spacing:.13em}
 .logo-orbit{width:44px;height:44px;border-radius:14px}.logo-orbit:before{width:24px;height:24px}.logo-orbit:after{width:13px;height:13px}
 .sidebar{padding:26px 20px 20px}.side-brand{gap:13px;padding:0 8px 28px}.side-brand b{font-size:20px}.side-brand small{font-size:13px;margin-top:2px}
 .side-nav{gap:6px}.side-link{grid-template-columns:34px 1fr auto;gap:7px;padding:13px 13px;border-radius:14px}.side-link>span{font-size:21px}.side-link>b{font-size:15px}.nav-count{font-size:11px;min-width:22px;height:22px;padding:0 6px}
 .scanner-health{gap:11px;padding:10px 11px}.scanner-health b{font-size:12.5px}.scanner-health small{font-size:11.5px}.logout-button{font-size:14px;padding:12px 13px}
 .topbar{height:92px;padding:0 38px}.topbar-title span{font-size:11.5px}.topbar-title h1{font-size:24px;margin-top:3px}.topbar-actions{gap:12px}.quick-search{padding:13px 18px;border-radius:13px;font-size:14px}.account-chip{padding:7px 12px 7px 7px;gap:10px}.account-chip b{font-size:13.5px}.account-chip small{font-size:11.5px}.avatar{width:34px;height:34px;font-size:13px}
 .content{padding:34px 38px 62px}
 .hero-kicker{font-size:11px;padding:7px 10px}.hero-copy p{font-size:16px;line-height:1.72}.floating-chip{font-size:14px;padding:10px 13px}.floating-chip span{font-size:10.5px}
 .overview-row{gap:14px;margin:18px 0 38px}.metric{padding:18px 20px;gap:14px;border-radius:18px}.metric-icon{width:44px;height:44px;border-radius:13px;font-size:20px}.metric b{font-size:22px}.metric small{font-size:13px;margin-top:6px}
 .section-heading{margin-bottom:16px}.section-heading h2{font-size:26px}.section-heading>p{font-size:14px}
 .service-grid{gap:16px}.service-card{padding:24px 24px 21px;min-height:235px;border-radius:21px}.service-symbol{width:46px;height:46px;border-radius:14px;font-size:22px}.service-badge{font-size:10.5px;padding:5px 8px}.service-card h3{font-size:19px}.service-card p{font-size:14.5px;line-height:1.65}.service-card>button{font-size:14px}.text-button{font-size:13px}
 .recent-panel{padding:23px}.recent-item{grid-template-columns:44px minmax(0,1fr) auto 28px;gap:13px;padding:14px 5px}.recent-icon{width:40px;height:40px;font-size:18px}.recent-main b{font-size:14.5px}.recent-main small{font-size:12.5px}.recent-side small{font-size:11px}.tips-panel{padding:25px}.tips-panel p{font-size:13px}.copy-demo{font-size:12px;padding:10px 12px}
 .page-intro{margin-bottom:27px}.page-intro h2{font-size:31px}.page-intro p{font-size:14px;line-height:1.6}.btn-primary,.btn-secondary{font-size:14px;padding:11px 16px}.filter-chip{font-size:13px;padding:8px 14px}
 .search-list{gap:10px}.search-row{padding:16px 17px;grid-template-columns:50px minmax(0,1fr) 88px 112px auto 28px;gap:14px;border-radius:17px}.search-row-icon{width:44px;height:44px;border-radius:13px;font-size:21px}.search-row-title{gap:8px}.search-row-title b{font-size:15.5px}.search-row-title small{font-size:11.5px}.search-row-sub{font-size:13px;margin-top:4px}.search-row-progress{gap:10px;margin-top:8px}.search-row-progress small{font-size:11.5px}.search-row-results b{font-size:18px}.search-row-results small{font-size:11px}.search-row-date{font-size:11.5px}.status-pill{font-size:11px;padding:6px 9px;gap:6px}.status-pill i{width:6px;height:6px}.row-arrow{font-size:19px}.progress-track{height:6px}
 .empty-state>b{font-size:15px}.empty-state>small,.empty-state>span+small{font-size:12.5px}
 .scanner-layout{grid-template-columns:365px minmax(0,1fr);gap:16px}.scanner-form{padding:23px}.scanner-form label,.modal-form label{font-size:13.5px;gap:8px}.scanner-form input,.modal-form input,.modal-form select,.atlas-toolbar input,.atlas-toolbar select{font-size:15px;padding:12px 13px}.scope-card span{font-size:13px}.scope-card small{font-size:11.5px}.scan-item{padding:15px 0}.scan-item b{font-size:13.5px}.scan-item p{font-size:12.5px}
 th{font-size:11px;padding:13px 14px}td{font-size:13px;padding:14px}.table-service b{font-size:13.5px}.table-service small{font-size:11.5px}
 .atlas-count,.map-coords{font-size:12px}.detail-empty strong{font-size:15px}.detail-empty span{font-size:12.5px}.kv dt,.kv dd{font-size:12.5px}.raw-details summary{font-size:12.5px}.raw-details pre{font-size:11.5px}
 .admin-note>span{font-size:12.5px}.admin-note p{font-size:13px}.role-badge,.active-badge,.inactive-badge,.language-badge{font-size:10.5px}.user-stats b{font-size:14px}.user-stats small{font-size:11px}.danger-link{font-size:12px}
 .modal-close{width:36px;height:36px;border-radius:10px;font-size:21px}.modal-heading{grid-template-columns:54px minmax(0,1fr);gap:16px;padding:29px 31px 22px}.modal-symbol{width:54px;height:54px;border-radius:16px;font-size:26px}.modal-heading h2{font-size:22px}.modal-heading p{font-size:13px}.modal-form{padding:23px 31px}.modal-form small{font-size:11.5px}.modal-actions{padding:17px 31px 25px}.level-picker-head label,.server-picker-head label{font-size:13.5px}.level-picker-head output{font-size:12px}.range-scale{font-size:11px}.server-picker-head span{font-size:11px}.server-chip{font-size:12px}.server-picker-entry button{font-size:12px}.rule-chips span{font-size:11px}
 .result-dialog{width:min(1240px,calc(100vw - 42px))}.result-modal-head{grid-template-columns:58px minmax(0,1fr) auto;gap:17px;padding:28px 32px 21px}.result-head-symbol{width:56px;height:56px;border-radius:17px;font-size:26px}.result-modal-head h2{font-size:23px}.result-modal-head p{font-size:13px}.result-head-side{gap:14px;padding-right:38px}.result-head-side>b{font-size:18px}.result-head-side>b small{font-size:11px}.running-result h3{font-size:19px}.running-result p{font-size:14px;line-height:1.65}.run-progress span{font-size:12px}.result-note{font-size:12px;margin:17px 32px 0;padding:11px 13px}.result-grid{gap:13px;padding:18px 32px 31px}.result-card{padding:17px;min-height:170px;border-radius:17px}.result-card h4{font-size:16px}.urgent-badge{font-size:10.5px;padding:5px 7px}.result-card-body{font-size:13px;line-height:1.62;margin:11px 0 14px}.coord-copy{padding:10px 11px;border-radius:11px;gap:9px}.coord-copy>span{font-size:11.5px}.coord-copy>strong{font-size:13px}.coord-copy>b{font-size:11.5px}.result-section-head span{font-size:11px}.result-section-head>b,.shield-section-head>b{font-size:11.5px}.shield-summary{gap:11px;padding:18px 32px 0}.shield-summary span{font-size:11.5px}.shield-summary b{font-size:22px}.shield-summary small{font-size:10.5px}.shield-section{margin:19px 32px 0}.shield-section-head{padding:14px 16px;gap:12px}.shield-section-icon{width:34px;height:34px;font-size:16px}.shield-section-head h3{font-size:15px}.shield-section-head p{font-size:11.5px}.error-panel b{font-size:14px}.error-panel p{font-size:12.5px}.form-error{font-size:12.5px}
 .language-switch{padding:4px;gap:4px;border-radius:12px}.language-switch button,.language-switch a{min-width:38px;height:32px;padding:0 9px;font-size:12.5px}
 .auth-form-wrap{width:min(430px,100%)}.auth-form-wrap h2{font-size:32px}.auth-lead{font-size:15px;line-height:1.7;margin-bottom:29px}.auth-form label{font-size:13.5px;gap:8px;margin-bottom:18px}.auth-form input{font-size:15.5px;padding:13px 14px;border-radius:12px}.password-field button{font-size:11.5px;padding:0 11px}.password-note{font-size:12px;line-height:1.6;padding:11px 12px}.auth-submit{font-size:14px;padding:13px 15px}.auth-footer{font-size:11.5px;margin-top:31px;padding-top:18px}.auth-feature-row{gap:16px}.auth-feature-row span{font-size:11px}.auth-feature-row b{font-size:14px;margin-top:6px}.auth-feature-row small{font-size:11.5px;line-height:1.55;margin-top:4px}.auth-brand{font-size:16px}
 .toast{font-size:13px}
}

@media(max-width:900px){
 body{font-size:15px}.side-link>span{font-size:19px}.side-link>b{font-size:10.5px}.topbar-title h1{font-size:21px}.topbar-title span{font-size:10px}
 .service-card p{font-size:14px}.search-row-title b{font-size:14px}.search-row-sub{font-size:12px}.status-pill{font-size:10.5px}
 .result-card-body{font-size:12.5px}.coord-copy>strong{font-size:12.5px}.auth-lead{font-size:14px}.auth-form label{font-size:13px}.auth-footer{font-size:11px}
}

@media(min-width:1181px){
 .scan-animation{width:100px;height:100px;margin-bottom:25px}.scan-animation:before{inset:16px}.scan-animation:after{inset:34px}.scan-animation i{width:8px;height:8px;left:72px;top:28px}.scan-animation b{width:5px;height:5px;left:31px;top:65px}
}
@media(min-width:901px) and (max-width:1180px){
 :root{--sidebar:225px}.topbar{padding-left:28px;padding-right:28px}.content{padding-left:28px;padding-right:28px}.search-row{grid-template-columns:46px minmax(0,1fr) 75px 92px auto 24px;gap:10px}
}


/* v7.1.0 — optical scale + emoji icon system
   Thin Unicode glyphs looked undersized and off-center on Windows. The new
   wrappers use the native emoji font, true flex centering and larger labels. */
.emoji-icon,.nav-emoji,.metric-icon,.service-symbol,.search-row-icon,.recent-icon,.result-head-symbol,.modal-symbol,.table-service>i,.profile-context-icon,.auth-feature-icon{
  font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;
  font-style:normal;line-height:1!important;text-align:center;
  align-items:center;justify-content:center;
}
.metric-icon,.service-symbol,.search-row-icon,.recent-icon,.result-head-symbol,.modal-symbol,.profile-context-icon{display:flex!important}
.side-link>.nav-emoji{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}
.account-chip{cursor:pointer}.account-chip:hover{border-color:#d4d8e5;box-shadow:0 8px 20px rgba(35,48,76,.07)}
.profile-badge{display:inline-flex;align-items:center;margin-left:5px;padding:4px 7px;border-radius:999px;background:#f3f5f9;color:#5e6b80;font-size:10.5px;font-weight:800}
.profile-context{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid #e5e1fb;background:linear-gradient(135deg,#faf9ff,#f7faff);border-radius:16px;padding:15px 16px;margin-top:3px}
.profile-context-icon{width:52px;height:52px;border-radius:15px;background:#eeeaff;font-size:25px}
.profile-context b{font-size:15px}.profile-context p{margin:3px 0 2px;color:#59667a;font-size:13px}.profile-context small{color:#7d899a;font-size:11.5px;line-height:1.45}.profile-context strong{color:#202c43}

@media(min-width:901px){
  .metric{min-height:88px;padding:19px 22px;gap:16px}.metric-icon{width:52px;height:52px;border-radius:15px;font-size:25px}.metric b{font-size:26px;line-height:1}.metric small{font-size:15.5px;line-height:1.25;margin-top:7px}
  .service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.service-symbol{width:50px;height:50px;font-size:25px}.service-card{min-height:238px}
  .search-row-icon,.recent-icon{font-size:23px}.result-head-symbol{font-size:29px}.modal-symbol{font-size:29px}
  .side-link>.nav-emoji{font-size:22px}
  .auth-feature-row{gap:22px}.auth-feature-row>div{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:13px;align-items:center;padding-top:17px}.auth-feature-icon{grid-row:1/3;width:44px;height:44px;border-radius:13px;background:rgba(255,255,255,.075);display:flex;font-size:23px}.auth-feature-row b{grid-column:2;font-size:16.5px;line-height:1.25;margin:0}.auth-feature-row small{grid-column:2;font-size:13px;line-height:1.5;margin-top:4px}.auth-feature-row>div>span:not(.auth-feature-icon){font-size:13px}
}
@media(min-width:901px) and (max-width:1350px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.auth-feature-icon{font-size:22px}.metric-icon{font-size:22px}.profile-context{grid-template-columns:46px minmax(0,1fr)}.profile-context-icon{width:46px;height:46px}.profile-context .text-button{grid-column:2;justify-self:start}}

/* v7.2.0 — strategic atlas + admin history */
.atlas-intro{align-items:center}.atlas-live-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #dfe5ef;border-radius:999px;background:#fff;color:#536176;font-size:12px;font-weight:800;box-shadow:0 5px 15px rgba(27,39,65,.04)}.atlas-live-pill>span{width:8px;height:8px;border-radius:50%;background:#27c89b;box-shadow:0 0 0 5px rgba(39,200,155,.11)}
.atlas-command{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow-soft);margin-bottom:16px}.atlas-toolbar{display:grid;grid-template-columns:220px minmax(280px,1fr) auto;gap:12px;align-items:end;margin:0}.atlas-field{display:flex;flex-direction:column;gap:7px;color:#667489;font-size:12px;font-weight:800}.atlas-field input,.atlas-field select{height:48px;border:1px solid #dce2ec;border-radius:13px;background:#fbfcfe;color:#27354c;padding:0 14px;outline:0;transition:.17s}.atlas-field input:focus,.atlas-field select:focus{background:#fff;border-color:#8d79ff;box-shadow:0 0 0 4px rgba(118,87,247,.09)}.atlas-refresh{height:48px;display:flex;align-items:center;gap:8px;justify-content:center}.atlas-refresh .emoji-icon{font-size:19px}
.atlas-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.atlas-summary article{display:flex;align-items:center;gap:12px;min-height:74px;padding:13px 15px;border:1px solid #e7ebf2;border-radius:16px;background:linear-gradient(180deg,#fff,#fafbfe)}.atlas-summary article>span{width:38px;height:38px;border-radius:12px;display:flex;background:#f0edff;font-size:19px}.atlas-summary article:nth-child(2)>span{background:#e8f8f5}.atlas-summary article:nth-child(3)>span{background:#ebf5ff}.atlas-summary article:nth-child(4)>span{background:#fff1f4}.atlas-summary article:nth-child(4).known{border-color:#ffc8d2;background:#fff8f9}.atlas-summary article>div{display:flex;flex-direction:column;min-width:0}.atlas-summary b{font-size:17px;color:#172238;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atlas-summary small{font-size:11px;color:#7d899c;margin-top:5px}
.atlas-layer-row{display:flex;align-items:center;gap:16px;justify-content:space-between;border-top:1px solid #edf0f5;margin-top:15px;padding-top:15px}.atlas-layer-row>div:first-child{display:flex;flex-direction:column;min-width:120px}.atlas-layer-row strong{font-size:12px;color:#718096;margin-top:3px}.atlas-layers{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.atlas-layer-chip{--layer-color:#8b72ff;border:1px solid #e0e5ee;background:#fff;color:#6d788a;border-radius:999px;padding:7px 10px;display:flex;align-items:center;gap:7px;font-family:inherit;cursor:pointer;transition:.16s}.atlas-layer-chip>span{font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;font-size:14px;line-height:1}.atlas-layer-chip b{font-size:11.5px;font-weight:800}.atlas-layer-chip small{min-width:20px;height:20px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#f2f4f8;color:#738096;font-size:9.5px;font-weight:900}.atlas-layer-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--layer-color);opacity:.35}.atlas-layer-chip.active{border-color:color-mix(in srgb,var(--layer-color) 44%,#dfe5ee);background:color-mix(in srgb,var(--layer-color) 7%,#fff);color:#27354a}.atlas-layer-chip.active:before{opacity:1;box-shadow:0 0 0 4px color-mix(in srgb,var(--layer-color) 15%,transparent)}
.atlas-layout{grid-template-columns:minmax(0,1fr) 350px;gap:16px;align-items:start}.atlas-map-stack{min-width:0}.map-card.tactical-map{height:auto;aspect-ratio:1/1;max-height:none;background:#101a2d;border:1px solid #263754;border-radius:23px;box-shadow:0 18px 45px rgba(23,34,55,.16);position:relative;overflow:hidden}.map-card.tactical-map:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 80px rgba(5,10,20,.28)}#worldCanvas{cursor:crosshair;touch-action:none}.map-hud{z-index:3;left:16px;top:16px;background:rgba(12,22,39,.78);backdrop-filter:blur(9px);border:1px solid rgba(151,172,214,.18);padding:5px;border-radius:13px}.map-hud button{width:38px;height:38px;border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:9px;font-size:18px}.map-hud button:hover{background:rgba(255,255,255,.15)}.map-hud>span{min-width:54px;height:38px;display:grid;place-items:center;color:#c8d4e7;font-size:11px;font-weight:900;padding:0 7px}.map-coords{z-index:3;right:16px;bottom:16px;border:1px solid rgba(151,172,214,.2);background:rgba(10,18,32,.84);color:#dce7f8;border-radius:11px;padding:9px 12px;font-size:11.5px;font-weight:900;cursor:default;transition:.15s}.map-coords.ready{cursor:pointer;border-color:rgba(103,211,255,.4);color:#fff}.map-coords.ready:hover{background:#122742}.map-corner{position:absolute;z-index:2;color:rgba(203,216,237,.54);font-size:9px;font-weight:800;letter-spacing:.02em;pointer-events:none}.map-corner-tl{left:39px;top:39px}.map-corner-tr{right:39px;top:39px}.map-corner-bl{left:39px;bottom:39px}.map-corner-br{right:39px;bottom:39px}.map-legend{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:11px 5px 0;color:#738096;font-size:10.5px}.map-legend>span{display:flex;align-items:center;gap:6px}.map-legend small{margin-left:auto;color:#9aa4b2}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.player{background:#8b72ff}.legend-dot.resource{background:#31c99a}.legend-dot.event{background:#ff7190}.legend-dot.convoy{background:#ff9f43}.mud-legend>i{width:14px;height:9px;border:1px solid #ff718d;background:repeating-linear-gradient(135deg,rgba(255,113,144,.2) 0 3px,transparent 3px 6px);border-radius:3px}
.detail-card{min-height:0;position:sticky;top:108px;border-radius:22px}.detail-empty{min-height:420px}.detail-head{padding:24px}.detail-head h3{font-size:20px}.kv{grid-template-columns:110px 1fr;padding:18px 24px}.kv dt,.kv dd{font-size:12.5px;padding:8px 0}.raw-details{margin:0 24px 24px}
.toggle-label{margin-top:18px!important}
.user-admin-dialog{width:min(760px,calc(100vw - 34px))}.user-search-history{margin:0 31px 4px;padding-top:18px;border-top:1px solid #eceff4}.user-history-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:11px}.user-history-head h3{margin:3px 0 0;font-size:17px}.user-history-head>span{font-size:11px;color:#7e899a;font-weight:800}.user-history-list{display:flex;flex-direction:column;gap:7px;max-height:260px;overflow:auto;padding-right:4px}.user-history-item{display:grid;grid-template-columns:38px minmax(0,1fr) 66px 90px auto;gap:10px;align-items:center;border:1px solid #e7eaf0;background:#fafbfc;border-radius:13px;padding:10px 11px}.user-history-icon{width:36px;height:36px;border-radius:11px;background:#f0edff;display:grid;place-items:center;font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;font-size:17px}.user-history-main{min-width:0;display:flex;flex-direction:column}.user-history-main b{font-size:12.5px}.user-history-main small{font-size:10.5px;color:#818c9e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-history-result{display:flex;flex-direction:column;text-align:right}.user-history-result b{font-size:13px}.user-history-result small,.user-history-date{font-size:9.5px;color:#8c97a7}.user-history-empty{padding:20px;border:1px dashed #dfe4ec;border-radius:13px;text-align:center;color:#8994a5;font-size:12px}.user-history-empty.error{color:#c24c63;border-color:#f0c7cf;background:#fff8f9}

@media(min-width:1500px){.atlas-layout{grid-template-columns:minmax(0,1fr) 380px}.map-card.tactical-map{max-width:1000px}.atlas-map-stack{display:flex;flex-direction:column;align-items:stretch}.map-card.tactical-map{width:min(100%,1000px)}}
@media(max-width:1180px){.atlas-layout{grid-template-columns:1fr}.detail-card{position:static}.atlas-summary{grid-template-columns:1fr 1fr}.atlas-toolbar{grid-template-columns:180px 1fr auto}.map-card.tactical-map{max-width:820px}.user-history-item{grid-template-columns:36px minmax(0,1fr) 60px auto}.user-history-date{display:none}}
@media(max-width:720px){.atlas-command{padding:14px}.atlas-toolbar{grid-template-columns:1fr}.atlas-refresh{width:100%}.atlas-summary{grid-template-columns:1fr 1fr}.atlas-summary article{padding:11px;min-height:66px}.atlas-layer-row{align-items:flex-start;flex-direction:column}.atlas-layers{justify-content:flex-start}.map-corner{display:none}.map-hud{left:10px;top:10px}.map-hud button{width:34px;height:34px}.map-hud>span{height:34px;min-width:48px}.map-coords{right:10px;bottom:10px}.map-legend{gap:9px}.map-legend small{width:100%;margin-left:0}.user-search-history{margin-left:18px;margin-right:18px}.user-history-item{grid-template-columns:34px minmax(0,1fr) auto}.user-history-result,.user-history-date{display:none}}
/* v7.3.0 messenger profile controls */
.messenger-toggle{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;column-gap:14px!important;row-gap:6px!important;margin-top:18px!important;padding:12px 14px;border:1px solid #e5e9ef;border-radius:12px;background:#fafbfc}
.messenger-toggle small{grid-column:1/-1;display:block!important;line-height:1.45!important}
.messenger-badge{background:#eefaf5!important;color:#177a5b!important}

/* v7.3.18 — administrator-managed in-game UID */
.modal-form input[readonly]{background:#f2f4f7;color:#7d8797;border-color:#e2e6ed;cursor:not-allowed;box-shadow:none}

/* v7.3.34 — isolated file-backed Alliance treasure watcher */
.service-badge.watch-active{background:#e6f8f1;color:#178863}.service-badge.watch-inactive{background:#f0f2f6;color:#7c8797}.watch-card-meta{display:flex;flex-direction:column;gap:3px;margin-top:10px;min-height:32px;color:#6e7b8e;font-size:10px;line-height:1.45}.watch-card-meta span{font-weight:800;color:#4f5d72}.watch-card-meta small{font-size:9px;color:#8a95a5}.watch-card-meta small.error{color:#c75563}.treasure-watch-card>button.watch-stop{color:#b14b58}.treasure-watch-card>button.watch-stop b{background:#fff0f2;color:#c6505f}.treasure-watch-card:hover>button.watch-stop b{background:#c6505f;color:#fff}

/* v7.3.36 service-state cleanup / Ghost Ops placeholder */
.service-card.placeholder-card{cursor:default}.service-card.placeholder-card:hover{transform:none;box-shadow:0 7px 22px rgba(35,48,76,.045)}.service-card.placeholder-card>button{opacity:.58;cursor:not-allowed}.service-card.placeholder-card:hover>button b{background:#f3f5f8;color:var(--accent);transform:none}
.watch-card-meta .watch-monitor-state{font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.watch-card-meta .watch-monitor-state.active{color:#178863}.watch-card-meta .watch-monitor-state.inactive{color:#7c8797}

/* v7.3.37 — aligned dashboard columns + recent-search shortcuts */
.server-chip button{display:inline-grid;place-items:center;line-height:1;font-family:Arial,sans-serif;font-size:15px;font-weight:700;text-align:center}
.recent-choice-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px;min-height:25px}
.recent-choice-label{font-size:10.5px;font-weight:800;color:#8a95a5;white-space:nowrap}
.recent-choice-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.recent-choice-chip{border:1px solid #e2e6ee;background:#f7f8fb;color:#526075;border-radius:999px;padding:5px 9px;font-size:10.5px;font-weight:800;line-height:1.2;transition:.15s ease}
.recent-choice-chip:hover{border-color:#cfc8fa;background:#f1efff;color:#624bd6;transform:translateY(-1px)}
@media(min-width:1351px){.dashboard-lower{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dashboard-lower>.recent-panel{grid-column:span 3}.dashboard-lower>.tips-panel{grid-column:span 1}}
@media(min-width:1181px) and (max-width:1350px){.dashboard-lower{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dashboard-lower>.recent-panel{grid-column:span 2}.dashboard-lower>.tips-panel{grid-column:span 1}}
@media(max-width:1180px){.dashboard-lower{grid-template-columns:1fr}.dashboard-lower>.recent-panel,.dashboard-lower>.tips-panel{grid-column:auto}.recent-choice-row{align-items:flex-start;flex-direction:column;gap:6px}}


/* v7.3.38 — complete resource level graduation + discreet desktop version label */
.range-scale-levels{position:relative;display:block;height:18px}
.range-scale-levels>span{position:absolute;left:calc(var(--tick) * 100% / 12);transform:translateX(-50%);white-space:nowrap}
.range-scale-levels>span:last-child{transform:translateX(-100%)}
.app-version{margin-top:5px;padding:0 12px;text-align:center;color:#5f6c80;font-size:9px;font-weight:800;letter-spacing:.11em;opacity:.72}
@media(max-width:900px){.app-version{display:none}}

/* v7.3.41 — optional exact owner filter for convoy searches */
.truck-owner-filter{margin-top:14px;padding-top:14px;border-top:1px solid #edf0f4}.truck-owner-target{margin-top:12px}.truck-owner-target>label{display:flex;flex-direction:column;gap:6px;font-size:10px;font-weight:800;color:#526075}.truck-owner-target .recent-choice-row{margin-top:8px}


/* v7.3.53 — one-click rerun of completed searches */
.page-intro-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.repeat-last-button{white-space:nowrap}.repeat-last-button:disabled{opacity:.5;cursor:not-allowed;background:#f6f7f9;color:#919aa8}.search-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.search-entry>.search-row{min-width:0}.search-repeat-btn{width:92px;border:1px solid #ddd9f5;background:#faf9ff;color:#6250c8;border-radius:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:17px;transition:.16s}.search-repeat-btn b{font-size:9.5px}.search-repeat-btn:hover{background:#f0edff;border-color:#c9c1f2;transform:translateY(-1px);box-shadow:0 8px 20px rgba(93,76,184,.09)}.search-repeat-btn:disabled,.search-repeat-btn.is-loading{opacity:.55;cursor:wait;transform:none}.result-repeat-btn{border:1px solid #dcd8f2;background:#faf9ff;color:#604dc8;border-radius:9px;padding:6px 9px;font-size:9.5px;font-weight:900;white-space:nowrap}.result-repeat-btn:hover{background:#f0edff;border-color:#c8c0f0}.result-repeat-btn:disabled{opacity:.55;cursor:wait}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;white-space:nowrap}.history-repeat-btn{border:1px solid #e0dcef;background:#faf9ff;color:#6250c8;border-radius:8px;padding:5px 8px;font-size:9px;font-weight:900}.history-repeat-btn:hover{background:#f0edff}.history-repeat-btn:disabled{opacity:.55;cursor:wait}
@media(max-width:900px){.search-entry{grid-template-columns:minmax(0,1fr) 54px}.search-repeat-btn{width:54px}.search-repeat-btn b{display:none}.search-repeat-btn span{font-size:20px}.history-repeat-btn{font-size:0;padding:6px 8px}.history-repeat-btn:before{content:'↻';font-size:14px}}
@media(max-width:620px){.page-intro-actions{width:100%;justify-content:stretch}.page-intro-actions .btn-primary,.page-intro-actions .btn-secondary{flex:1}.repeat-last-button{white-space:normal}.search-entry{grid-template-columns:minmax(0,1fr) 48px;gap:6px}.search-repeat-btn{width:48px;border-radius:13px}}


/* v7.3.54 — compact repeat controls + cleaner result count */
.page-intro-actions{flex-wrap:nowrap;gap:10px}
.repeat-last-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 13px;font-size:12.5px;white-space:nowrap;box-shadow:none}
.repeat-last-button>span{font-size:14px;line-height:1;color:#6551cf}
.result-head-side{gap:10px}
.result-count-pill{display:inline-flex;align-items:baseline;gap:5px;padding:7px 10px;border:1px solid #e4e7ed;background:#f7f8fa;border-radius:10px;color:#1f293b;white-space:nowrap;line-height:1}
.result-count-pill b{font-size:13px;letter-spacing:-.02em}
.result-count-pill small{font-size:10px;color:#8792a3;font-weight:800}
@media(max-width:900px){.repeat-last-button{padding:9px 11px;font-size:11.5px}.result-count-pill{padding:6px 9px}.result-count-pill b{font-size:12px}.result-count-pill small{font-size:9.5px}}
@media(max-width:620px){.page-intro-actions{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px}.page-intro-actions .btn-primary,.page-intro-actions .btn-secondary{width:auto;flex:none}.repeat-last-button{white-space:nowrap}.result-head-side{gap:8px;flex-wrap:wrap}.result-count-pill{order:2}.result-repeat-btn{order:3}}


/* v7.3.55 — unified control rhythm for repeat UI
   The repeat feature now follows one coherent sizing system instead of
   independent pills/buttons with different heights, radii and type scales. */
.page-intro-actions{
  --intro-control-height:44px;
  --intro-control-radius:12px;
  align-items:center;
  gap:10px;
}
.page-intro-actions .btn-primary,
.page-intro-actions .btn-secondary{
  box-sizing:border-box;
  height:var(--intro-control-height);
  min-height:var(--intro-control-height);
  padding:0 16px;
  border-radius:var(--intro-control-radius);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:14px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.page-intro-actions .action-icon{
  width:18px;
  flex:0 0 18px;
  display:inline-grid;
  place-items:center;
  font-size:17px;
  line-height:1;
  font-weight:900;
}
.repeat-last-button{padding:0 16px;box-shadow:none}
.repeat-last-button>.action-icon{font-size:17px;line-height:1;color:inherit}
.repeat-last-button>span:not(.action-icon){font-size:inherit;line-height:1;color:inherit}

.result-head-side{
  --result-control-height:36px;
  --result-control-radius:10px;
  align-items:center;
  gap:8px;
}
.result-head-side .status-pill,
.result-head-side .result-count-pill,
.result-head-side .result-repeat-btn{
  box-sizing:border-box;
  height:var(--result-control-height);
  min-height:var(--result-control-height);
  padding:0 11px;
  border-radius:var(--result-control-radius);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-size:11.5px;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
}
.result-head-side .status-pill{border:1px solid transparent}
.result-head-side .status-pill i{width:6px;height:6px;flex:0 0 6px}
.result-head-side .result-count-pill{
  border:1px solid #e1e5ec;
  background:#f8f9fb;
  color:#354156;
}
.result-head-side .result-count-pill b,
.result-head-side .result-count-pill small{
  margin:0;
  font-size:11.5px;
  font-weight:850;
  line-height:1;
}
.result-head-side .result-count-pill small{color:#8792a3}
.result-head-side .result-repeat-btn{
  border:1px solid #dcd8f2;
  background:#faf9ff;
  color:#604dc8;
}
.result-head-side .result-repeat-btn .action-icon{
  width:14px;
  flex:0 0 14px;
  display:inline-grid;
  place-items:center;
  font-size:14px;
  line-height:1;
}

@media(max-width:900px){
  .page-intro-actions{--intro-control-height:42px}
  .page-intro-actions .btn-primary,
  .page-intro-actions .btn-secondary{padding:0 14px;font-size:13px}
  .page-intro-actions .action-icon{font-size:16px}
  .result-head-side{--result-control-height:34px}
  .result-head-side .status-pill,
  .result-head-side .result-count-pill,
  .result-head-side .result-repeat-btn{padding:0 10px;font-size:11px}
  .result-head-side .result-count-pill b,
  .result-head-side .result-count-pill small{font-size:11px}
}
@media(max-width:620px){
  .page-intro-actions{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .page-intro-actions .btn-primary,
  .page-intro-actions .btn-secondary{height:42px;min-height:42px}
  .result-head-side{gap:7px}
}


/* v7.3.56 — history table action column repair
   Keep the <td> a real table-cell. v7.3.53 had turned it into a flex box,
   which detached the action area from the row grid and broke horizontal
   separators/alignment. Flex layout now lives inside an inner wrapper. */
#historyTable th:last-child{
  width:132px;
  min-width:132px;
}
#historyTable .table-actions{
  display:table-cell;
  width:132px;
  min-width:132px;
  padding-left:8px;
  padding-right:14px;
  text-align:right;
  vertical-align:middle;
  white-space:nowrap;
}
#historyTable .history-action-group{
  min-height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  vertical-align:middle;
}
#historyTable .history-repeat-btn{
  box-sizing:border-box;
  height:28px;
  min-height:28px;
  padding:0 9px;
  border:1px solid #ddd9f5;
  background:#fbfaff;
  color:#6250c8;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  font-size:11px;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
  transition:.15s ease;
}
#historyTable .history-repeat-btn:hover{
  background:#f2efff;
  border-color:#cfc7f2;
}
#historyTable .history-repeat-btn:disabled,
#historyTable .history-repeat-btn.is-loading{
  opacity:.55;
  cursor:wait;
}
#historyTable .history-repeat-btn:before{content:none}
#historyTable .history-repeat-icon{
  width:12px;
  flex:0 0 12px;
  display:inline-grid;
  place-items:center;
  font-size:12px;
  line-height:1;
  font-weight:900;
}
#historyTable .table-arrow{
  width:22px;
  height:28px;
  flex:0 0 22px;
  display:inline-grid;
  place-items:center;
  color:#a3abba;
  font-size:15px;
  line-height:1;
  text-align:center;
}
@media(max-width:900px){
  #historyTable th:last-child,
  #historyTable .table-actions{width:82px;min-width:82px}
  #historyTable .history-repeat-btn{width:28px;padding:0;font-size:0;gap:0}
  #historyTable .history-repeat-btn>span:last-child{display:none}
  #historyTable .history-repeat-icon{font-size:14px}
  #historyTable .history-action-group{gap:5px}
}

/* v7.4.1 — settings polish + simplified self-service password */
.service-settings-list{display:flex;flex-direction:column;gap:12px}
.service-setting-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px 18px;box-shadow:0 6px 20px rgba(32,44,70,.04)}
.service-setting-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid #edf0f4}
.service-setting-identity{display:flex;align-items:center;gap:11px;min-width:0}.service-setting-preview{width:42px;height:42px;border-radius:13px;background:#f2f0ff;display:grid;place-items:center;font-size:20px}.service-setting-identity>div{display:flex;flex-direction:column;min-width:0}.service-setting-identity b{font-size:13px;color:#344054}.service-setting-identity small{font-size:9px;color:#8d97a6;margin-top:2px}.service-order-buttons{display:flex;gap:6px}.service-order-buttons .btn-secondary{width:38px;height:34px;padding:0;font-size:16px}.service-order-buttons .btn-secondary:disabled{opacity:.35;cursor:not-allowed}
.service-setting-grid{display:grid;grid-template-columns:110px 160px minmax(220px,1fr) minmax(220px,1fr);gap:11px}.service-setting-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:#526075;min-width:0}.service-setting-grid label.full{grid-column:1/-1}.service-setting-grid label.action-field{grid-column:span 2}.service-setting-grid input,.service-setting-grid select,.service-setting-grid textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #dce1ea;background:#fff;border-radius:11px;padding:10px 11px;outline:0;font:inherit;font-size:12px;color:#303a4d;resize:vertical}.service-setting-grid input:focus,.service-setting-grid select:focus,.service-setting-grid textarea:focus{border-color:#8068ee;box-shadow:0 0 0 3px rgba(113,87,246,.08)}
.profile-password-box{margin-top:18px;padding:15px;border:1px solid #e2e5ed;background:#fafbfc;border-radius:14px}.profile-password-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px}.profile-password-head>span{width:31px;height:31px;border-radius:10px;background:#f0edff;display:grid;place-items:center}.profile-password-head>div{display:flex;flex-direction:column}.profile-password-head b{font-size:11.5px;color:#3d485b}.profile-password-head small{margin-top:2px}.password-change-button{margin-top:12px}
@media(max-width:1180px){.service-setting-grid{grid-template-columns:100px 150px minmax(180px,1fr) minmax(180px,1fr)}}
@media(max-width:900px){.service-setting-grid{grid-template-columns:1fr 1fr}.service-setting-grid label.full{grid-column:1/-1}.service-setting-grid label.action-field{grid-column:auto}}
@media(max-width:620px){.service-setting-head{align-items:flex-start}.service-setting-grid{grid-template-columns:1fr}.service-setting-grid label.full,.service-setting-grid label.action-field{grid-column:1/-1}}

/* v7.4.5: dedicated, readable administration views (responsive, FR/EN) */
.admin-observe-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:18px 0 22px}
.admin-observe-metric{display:flex;align-items:center;gap:13px;padding:17px 20px;background:var(--surface,#17233e);border:1px solid rgba(150,179,225,.14);border-radius:16px}
.admin-observe-metric>.emoji-icon{font-size:23px}
.admin-observe-metric>div{display:flex;flex-direction:column;gap:3px}
.admin-observe-metric strong{font-size:24px;font-weight:750;line-height:1.2}
.admin-observe-metric small{opacity:.78;font-size:12px}
.admin-observe-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:end;padding:17px;margin-bottom:16px}
.admin-observe-controls label{display:flex;flex-direction:column;gap:7px;flex:1;min-width:180px;font-size:13px}
.admin-observe-controls input,.admin-observe-controls select,.admin-discovery-edit select{width:100%;min-height:46px;max-width:100%;padding:11px 14px;border-radius:14px;background:#fff;border:1px solid #d7deea;color:#23314d;font:inherit;box-shadow:0 6px 18px rgba(24,39,75,.06);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.admin-observe-controls input::placeholder{color:#8a94a8;opacity:1}
.admin-observe-controls input:hover,.admin-observe-controls select:hover,.admin-discovery-edit select:hover{border-color:#b8c4d8;background:#fcfdff}
.admin-observe-controls input:focus,.admin-observe-controls select:focus,.admin-discovery-edit select:focus{outline:none;border-color:#7c6cf2;box-shadow:0 0 0 4px rgba(124,108,242,.12),0 10px 24px rgba(24,39,75,.09);background:#fff}
.admin-observe-controls select,.admin-discovery-edit select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M3.2 5.1 7 8.9l3.8-3.8' fill='none' stroke='%23707d95' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px 14px}
.admin-discoveries-list,.admin-observe-stack{display:grid;gap:15px}
.admin-observe-stack>.panel{min-width:0;padding:20px}
.admin-discovery-card{border-radius:18px;border:1px solid rgba(162,188,226,.17);background:var(--surface,#14213a);padding:20px;display:flex;flex-direction:column;gap:17px;min-width:0}
.admin-discovery-head{display:flex;align-items:start;justify-content:space-between;gap:18px}
.admin-observe-kicker{text-transform:uppercase;font-size:11px;letter-spacing:1.6px;opacity:.65}
.admin-discovery-head h3{margin:3px 0 6px;font-size:20px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.admin-discovery-type{font-size:13px;font-weight:500;opacity:.82}
.admin-discovery-head small{display:block;opacity:.7;font-size:12px}
.admin-observe-state{display:inline-flex;padding:5px 10px;white-space:nowrap;border-radius:100px;font-size:12px;font-weight:650;align-items:center}
.admin-observe-state.is-ok{background:rgba(27,197,138,.11);color:#5ce2b1}
.admin-observe-state.is-warn{background:rgba(236,175,61,.12);color:#f4c678}
.admin-discovery-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,280px);gap:24px;align-items:start}
.admin-discovery-examples{display:grid;gap:7px}
.admin-observe-example{display:flex;gap:6px;align-items:baseline;justify-content:space-between;border-bottom:1px solid rgba(160,190,230,.10);padding:5px 0;font-size:13px;flex-wrap:wrap}
.admin-observe-example small{opacity:.68}
.admin-discovery-edit{display:grid;gap:10px}
.admin-discovery-edit label{display:grid;gap:7px;font-size:13px}
.admin-discovery-edit small{font-size:11px;opacity:.7}
.admin-data-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}
.admin-data-table th{padding:12px 13px;border-bottom:1px solid rgba(160,190,230,.24);opacity:.7;font-size:11px;font-weight:600;white-space:nowrap}
.admin-data-table td{padding:12px 13px;border-bottom:1px solid rgba(160,190,230,.10);vertical-align:top}
.admin-table-scroll{width:100%;max-width:100%;overflow:auto}
.admin-diagnostic-bar{font-size:12px;line-height:1.65;margin-bottom:12px;opacity:.75;overflow-wrap:anywhere}
.admin-event-detail{display:grid;gap:3px;min-width:145px}
.admin-event-detail small{font-size:11px;opacity:.8}
@media(max-width:750px){.admin-discovery-bottom{grid-template-columns:minmax(0,1fr)}.admin-discovery-card{padding:16px}.admin-observe-stack>.panel{padding:13px}.admin-discovery-head{flex-wrap:wrap}.admin-observe-controls label{min-width:130px}}

/* v7.4.6 — readable, per-event private message delivery history */
.admin-delivery-table{table-layout:auto;min-width:940px}
.admin-delivery-table th{font-size:11px;font-weight:700;letter-spacing:.035em;color:#8995aa;opacity:1}
.admin-delivery-table td{font-size:12px;color:#44516c;vertical-align:middle;padding:14px 12px}
.admin-delivery-row{cursor:pointer;transition:background-color .14s ease}
.admin-delivery-row:hover,.admin-delivery-row.is-expanded{background:rgba(113,93,221,.045)}
.admin-delivery-owner{font-weight:750;color:#25314a;overflow-wrap:anywhere}
.admin-delivery-expand{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;padding:5px 0;color:#39465f;text-align:left;cursor:pointer;font:inherit}
.admin-delivery-expand:focus-visible,.admin-delivery-coord:focus-visible{outline:2px solid #7161de;outline-offset:4px;border-radius:4px}
.admin-delivery-chevron{font-size:13px;color:#7667dc;transition:transform .15s ease;display:inline-block}
.admin-delivery-row.is-expanded .admin-delivery-chevron{transform:rotate(90deg)}
.admin-delivery-server{font-variant-numeric:tabular-nums;color:#5662a4;font-weight:650}
.admin-delivery-reward{font-weight:600;color:#39465f}
.admin-delivery-cfg{display:block;margin-top:3px;font-size:10px;color:#8995aa}
.admin-delivery-muted{color:#a0a9b9}
.admin-delivery-coord{display:inline-flex;align-items:center;gap:6px;background:#f1f0fc;border:1px solid #e1ddfb;padding:7px 9px;border-radius:9px;color:#5b4cc5;font:inherit;font-weight:750;cursor:pointer;white-space:nowrap}
.admin-delivery-coord:hover{background:#e8e3ff}
.admin-delivery-end{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.admin-delivery-status{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:7px 10px;border-radius:999px;font-weight:750;white-space:nowrap}
.admin-delivery-status.accepted{background:#e5f9f0;color:#147c58}
.admin-delivery-status.failed,.admin-delivery-status.config{background:#fff0f0;color:#ac3144}
.admin-delivery-status.deferred,.admin-delivery-status.unconfirmed{background:#fff5df;color:#9a690a}
.admin-delivery-more{color:#7b6bdc;font-size:11px;font-weight:650}
.admin-delivery-detail-row[hidden]{display:none}
.admin-delivery-detail-row>td{padding:0 14px 14px;background:#f8f8fe;border-bottom:1px solid #e5e6f3}
.admin-delivery-detail{padding:17px 20px;border-left:3px solid #8171ed}
.admin-delivery-detail-heading{font-weight:800;color:#303956;margin-bottom:12px}
.admin-delivery-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:11px}
.admin-delivery-fact{display:grid;gap:3px}
.admin-delivery-fact small{color:#8190a3;font-size:11px}
.admin-delivery-fact strong{font-weight:650;font-size:12px;color:#354257;overflow-wrap:anywhere}
.admin-delivery-note{display:block;color:#6c7992;font-size:11px;margin-top:14px}

/* v7.4.7 · Exploration Center — calm, data-forward administration */
.explorer-view{--explore-ink:#17233a;--explore-sub:#7a879b}
.explorer-header{margin-bottom:16px}
.explorer-guide{display:flex;align-items:center;gap:16px;padding:17px 21px;border:1px solid #d9e2f8;border-radius:20px;background:linear-gradient(105deg,#f5f5ff 0%,#eff9ff 100%);margin:0 0 16px}
.explorer-guide-icon{height:44px;width:44px;border-radius:14px;background:#e3e0ff;display:grid;place-items:center;color:#6a55df;font-size:25px;flex-shrink:0}
.explorer-guide strong{font-size:14px;color:#33346d}.explorer-guide p{margin:3px 0 0;color:#60718c;font-size:12px;line-height:1.6}
.explorer-readonly{margin-left:auto;white-space:nowrap;padding:7px 12px;background:#fff;border:1px solid #e3e5f5;color:#6952d5;border-radius:99px;font-weight:800;font-size:11px}
.explorer-toolbar{display:grid;grid-template-columns: minmax(170px,.6fr) minmax(260px,1.55fr) minmax(160px,.65fr);align-items:end;gap:16px;padding:17px 22px;margin:0 0 15px}
.explorer-toolbar label,.explorer-record-filters label,.explorer-compare-label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:800;color:#51617a;min-width:0}
.explorer-view input,.explorer-view select{border:1px solid #dce3ef;border-radius:12px;background:#fff;color:#26334d;min-height:44px;padding:10px 13px;min-width:0;width:100%;font-size:12px;outline:0;box-shadow:0 3px 11px rgba(34,54,92,.03)}
.explorer-view select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 13 13'%3E%3Cpath d='m2.6 4.5 3.9 4 3.9-4' fill='none' stroke='%237b85a0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 13px center;background-size:13px;background-repeat:no-repeat;padding-right:36px}
.explorer-view input:focus,.explorer-view select:focus{border-color:#8a77e8;box-shadow:0 0 0 3px #eceaff}
.explorer-source-hint{display:flex;align-items:center;min-height:44px}
.explorer-source-pill{display:inline-flex;align-items:center;border-radius:99px;padding:7px 10px;font-size:10px;font-weight:800;line-height:1.4}
.explorer-source-pill.is-partial{background:#fff5e5;color:#ad7719}.explorer-source-pill.is-full{background:#e5f8ef;color:#198360}
.explorer-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 0 16px}
.explorer-metric{background:#fff;border:1px solid #e4e9f3;border-radius:18px;padding:19px;display:flex;align-items:center;gap:14px;box-shadow:0 5px 23px rgba(24,40,70,.035)}
.explorer-metric>span{display:grid;place-items:center;border-radius:13px;background:#f1efff;width:42px;height:42px;font-size:20px;flex-shrink:0}
.explorer-metric>div{min-width:0;display:flex;flex-direction:column;gap:3px}.explorer-metric b{font-size:25px;letter-spacing:-.05em;color:#1d2942;line-height:1.1}.explorer-metric small{color:#8290a5;font-size:11px}
.explorer-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.85fr);gap:15px;margin:0 0 16px}.explorer-main-grid>.panel{padding:22px;min-width:0}
.explorer-panel-head{margin-bottom:18px}.explorer-panel-head h3,.explorer-section-head h3{margin:5px 0 0;font-size:17px;letter-spacing:-.025em}
.explorer-type-list{display:grid;gap:10px}.explorer-type-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 5px;gap:5px 12px;align-items:center;padding:4px 0 0;border:0;background:transparent;text-align:left;width:100%}
.explorer-type-row>span{font-size:12px;font-weight:700;color:#465570;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explorer-type-row>b{font-size:12px;color:#253557}.explorer-type-row>i{display:block;grid-column:1/-1;height:5px;border-radius:99px;background:linear-gradient(90deg,#7460ec,#61b0f2);max-width:100%;position:relative}.explorer-type-row:after{content:"";height:5px;grid-column:1/-1;grid-row:2;background:#eff1f8;z-index:-1;border-radius:100px}.explorer-type-row:hover>span{color:#684fe4}
.explorer-context{position:relative;background:linear-gradient(150deg,#192541,#293961);color:#fff;overflow:hidden}.explorer-context .eyebrow{color:#b7c4df}.explorer-context h3{margin:9px 0 24px;font-size:31px;letter-spacing:-.05em}.explorer-context-icon{position:absolute;right:-5px;top:-55px;font-size:180px;color:#fff;opacity:.035;pointer-events:none}
#explorerSnapshotInfo{display:grid;gap:12px}#explorerSnapshotInfo>div{display:flex;justify-content:space-between;gap:15px;padding-bottom:10px;border-bottom:1px solid #ffffff20;font-size:11px;color:#b9c8e2}#explorerSnapshotInfo>div>b{font-size:12px;text-align:right;color:#fff}
.explorer-records{padding:22px;margin-bottom:16px;min-width:0}.explorer-section-head{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:16px}.explorer-section-head p{margin:5px 0 0;color:#8a95a7;font-size:11px;line-height:1.55}
.explorer-record-filters{display:grid;grid-template-columns:minmax(230px,1.5fr) minmax(180px,.8fr);gap:12px;max-width:760px;margin-bottom:16px}.explorer-object-count{font-size:11px;color:#78879e;margin-bottom:9px}
.explorer-table-wrap{width:100%;overflow-x:auto}.explorer-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left;min-width:650px}
.explorer-table th{font-size:10px;letter-spacing:.08em;color:#9ca7b8;text-transform:uppercase;font-weight:850;background:#f8fafe;padding:12px 13px;border-bottom:1px solid #edf0f5}.explorer-table th:first-child{border-radius:10px 0 0 0}.explorer-table th:last-child{border-radius:0 10px 0 0}
.explorer-table td{padding:11px 13px;border-bottom:1px solid #edf0f5;color:#59667d;vertical-align:middle}.explorer-table td:first-child>b{display:block;color:#263655;font-size:12px}.explorer-table td:first-child>small{display:block;color:#9ca8b9;font-size:10px;margin-top:2px}
.explorer-coord{border:0;background:#f1efff;border-radius:8px;padding:7px 8px;font-size:11px;font-weight:800;color:#6756dc;white-space:nowrap}.explorer-coord b{margin-left:5px}.explorer-detail-btn{border:0;background:transparent;color:#684fe5;font-size:11px;font-weight:800;white-space:nowrap}.explorer-detail-btn:hover{text-decoration:underline}
.explorer-pagination{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:15px;font-size:11px;color:#75829a}.explorer-pagination button{background:#f4f5fa;border:1px solid #e5e8ef;border-radius:9px;padding:8px 13px;font-size:11px;font-weight:750}.explorer-pagination button:disabled{opacity:.45;cursor:not-allowed}
.explorer-bottom-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:15px}.explorer-bottom-grid>.panel{padding:22px;min-width:0}.explorer-history{display:grid;max-height:430px;overflow:auto}.explorer-history-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0f6;padding:11px 0}.explorer-history-item>div:first-child{display:grid;gap:5px;min-width:0}.explorer-history-item b{font-size:12px;color:#273552}.explorer-history-item small{font-size:10px;color:#9aa6ba}.explorer-history-item>div:last-child{display:flex;align-items:center;gap:10px;flex-shrink:0}.explorer-history-item button{background:#f0effe;border:0;border-radius:8px;padding:7px 10px;color:#7157ed;font-size:11px;font-weight:800}
.explorer-compare-label{margin-bottom:11px}.explorer-bottom-grid #explorerCompareBtn{margin-bottom:15px}.explorer-empty{padding:30px 14px;border:1px dashed #dce3f0;border-radius:14px;text-align:center;color:#91a0b3;font-size:12px;line-height:1.6}
.explorer-inspector,.explorer-logs{margin-top:18px;border:1px solid #e0e5ef;background:#fafbfe;border-radius:14px;padding:17px;max-width:100%}.explorer-inspector-head{display:flex;justify-content:space-between;align-items:start;gap:13px;margin-bottom:14px}.explorer-inspector-head h3{margin:3px 0;font-size:16px}.explorer-inspector-head button{border:0;background:#eceffc;color:#5c67a4;padding:8px 10px;border-radius:9px;font-size:11px;font-weight:800}
.explorer-inspector-properties{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.explorer-inspector-properties>span{display:grid;gap:5px;background:#fff;border:1px solid #e9edf4;border-radius:9px;padding:10px;font-size:10px;color:#8694ab;overflow-wrap:anywhere}.explorer-inspector-properties b{color:#2c3b59;font-size:12px}
.explorer-inspector details summary{cursor:pointer;color:#536481;font-size:12px;font-weight:800;margin-bottom:9px}.explorer-inspector pre{font-size:11px;max-height:350px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#18243d;color:#daecff;border-radius:12px;padding:16px;line-height:1.55}
.explorer-log-list{display:grid;max-height:300px;overflow:auto;gap:6px}.explorer-log-list>div{display:grid;grid-template-columns:110px 65px 1fr;gap:10px;border-bottom:1px solid #e9edf5;padding:9px 0;font-size:11px}.explorer-log-list time{color:#9aa8ba}.explorer-log-list p{margin:0;overflow-wrap:anywhere}
.explorer-compare-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:6px 0 16px}.explorer-compare-metrics>div{padding:12px;background:#f7f8fe;border:1px solid #ebedf8;border-radius:12px;display:grid;gap:6px}.explorer-compare-metrics strong{font-size:22px;color:#253557}.explorer-compare-metrics small{font-size:10px;color:#8490a5}.explorer-compare-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.explorer-compare-group{display:grid;align-content:start;gap:8px}.explorer-compare-group>b{font-size:11px;color:#4e5d78}.explorer-compare-group>div{display:grid;gap:2px;border-bottom:1px solid #e6eaf3;padding:5px 0;font-size:11px}.explorer-compare-group small{color:#8a99aa}.explorer-compare-caution{padding:11px 12px;background:#fff9eb;border-radius:12px;color:#9a6a24;font-size:11px;line-height:1.6}
.explorer-advanced{margin-top:17px;color:#586780}.explorer-advanced>summary{cursor:pointer;font-size:12px;font-weight:800;padding:12px 2px}.explorer-danger{padding:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,.45fr);gap:13px;border:1px solid #f5ddcf;background:#fffaf8}.explorer-danger h3{margin:0 0 8px;font-size:15px}.explorer-danger p{font-size:12px;line-height:1.6;color:#a56945;margin:0}.explorer-danger-actions{display:flex;flex-direction:column;gap:9px}.explorer-danger-actions label{font-weight:800;font-size:11px}.explorer-danger-actions button{background:#fff1ea;border-color:#edcabc;color:#9c542d}.explorer-danger #activeScans{grid-column:1/-1}
@media(max-width:1050px){.explorer-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.explorer-main-grid{grid-template-columns:1fr}.explorer-bottom-grid{grid-template-columns:1fr}}
@media(max-width:650px){.explorer-guide{align-items:start;flex-wrap:wrap}.explorer-readonly{margin-left:0}.explorer-toolbar{grid-template-columns:1fr}.explorer-metrics{grid-template-columns:1fr 1fr}.explorer-metric{padding:12px}.explorer-metric b{font-size:20px}.explorer-record-filters{grid-template-columns:1fr}.explorer-inspector-properties{grid-template-columns:1fr 1fr}.explorer-danger{grid-template-columns:1fr}.explorer-compare-groups{grid-template-columns:1fr}}

/* v7.4.8 — Explicit slow-mode opt-in and scan cancellation */
.explorer-profile-option{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:11px;max-width:420px;padding:12px 13px;border:1px solid #e1e5ee;border-radius:12px;background:#fff;color:#344054;cursor:pointer}
.explorer-profile-option input{flex:0 0 auto!important;width:17px!important;height:17px!important;min-width:17px!important;margin:2px 0 0;accent-color:#7663e6}
.explorer-profile-option span{display:grid;gap:4px;min-width:0}.explorer-profile-option b{font-size:12px}.explorer-profile-option small{font-size:11px;line-height:1.45;color:#8390a4}
.scan-cancel-btn{margin-top:10px;padding:8px 13px;border:1px solid #e8b6aa;background:#fff8f5;border-radius:9px;color:#ab4f36;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.scan-cancel-btn:hover{background:#fff0ea;border-color:#d98a75}.scan-cancel-btn:disabled{opacity:.6;cursor:wait}
.scan-phase-note{display:block;color:#b26e45;font-size:11px;margin-top:5px}

/* v7.4.12 — Map toolbar size + admin labels and reset; scoped to Atlas only. */
#view-atlas .atlas-toolbar{grid-template-columns:minmax(235px,290px) minmax(320px,1fr) auto;gap:15px;align-items:end;margin-bottom:0}
#view-atlas .atlas-toolbar > .atlas-field{height:auto;min-height:81px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;gap:9px;font-size:13px;font-weight:800}
#view-atlas .atlas-toolbar .atlas-field > input,#view-atlas .atlas-toolbar .atlas-field > select{width:100%;height:53px;min-height:53px;line-height:1.25;padding:0 16px;border-radius:14px;font-size:15px;font-weight:650;border:1px solid #cfd8e9;box-shadow:0 5px 13px rgba(22,35,58,.04);background:#fff}
#view-atlas .atlas-toolbar .atlas-field > input:focus,#view-atlas .atlas-toolbar .atlas-field > select:focus{border-color:#8068ee;box-shadow:0 0 0 4px rgba(113,87,246,.11)}
#view-atlas .atlas-refresh{height:53px;min-height:53px;font-size:12px}
.atlas-admin-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin:14px 0 0;align-items:center}
.atlas-admin-actions button{min-height:42px;font-size:12px;border-radius:12px;padding:10px 15px}
.atlas-danger-button{border:1px solid #f2cbd1;background:#fff8f9;color:#a64451;font-weight:800}
.atlas-danger-button:hover{background:#fff0f3;border-color:#ebadb7}.atlas-danger-button:disabled{opacity:.5;cursor:wait}
.atlas-catalog{padding:23px;margin-bottom:18px;border-radius:20px}
.atlas-catalog-head{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:19px}
.atlas-catalog-head h3{font-size:20px;margin:4px 0 5px}.atlas-catalog-head p{margin:0;color:#758198;font-size:12px;max-width:750px}
.atlas-kind-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:14px}
.atlas-kind-card{background:#fafbfe;border:1px solid #e0e6f1;border-radius:17px;padding:17px;min-width:0}
.atlas-kind-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.atlas-kind-head strong{font-size:15px;color:#24324d}.atlas-kind-head span{font-size:11px;color:#76849a;padding:4px 9px;background:#edf1f8;border-radius:100px}
.atlas-kind-confirmed{color:#168862;font-size:11px;font-weight:800}.atlas-kind-example{display:block;min-height:18px;color:#8a96a7;font-size:11px;margin:7px 0 14px}
.atlas-kind-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.atlas-kind-fields label{display:flex;flex-direction:column;gap:7px;min-width:0;color:#627087;font-size:11px;font-weight:800}.atlas-kind-fields label:nth-child(3){max-width:95px}
.atlas-kind-fields input,.atlas-kind-fields select{height:43px;min-width:0;width:100%;border:1px solid #d6deeb;background:white;color:#25324a;border-radius:11px;padding:8px 11px;font-size:13px;outline:0}
.atlas-kind-fields input:focus,.atlas-kind-fields select:focus{border-color:#8068ee;box-shadow:0 0 0 3px #ece7ff}.atlas-kind-actions{display:flex;gap:9px;margin-top:15px}.atlas-kind-actions button{font-size:12px}
@media(max-width:880px){#view-atlas .atlas-toolbar{grid-template-columns:1fr 1fr}#view-atlas .atlas-toolbar .atlas-search-field{grid-column:2}#view-atlas .atlas-refresh{grid-column:1/-1}#view-atlas .atlas-admin-actions{justify-content:flex-start}}
@media(max-width:620px){#view-atlas .atlas-toolbar{grid-template-columns:1fr}#view-atlas .atlas-toolbar .atlas-search-field{grid-column:1}#view-atlas .atlas-refresh{grid-column:1}#view-atlas .atlas-toolbar>.atlas-field{min-height:77px}.atlas-kind-fields{grid-template-columns:1fr 1fr}}

.atlas-kind-sample{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:7px 0 14px;min-height:25px}.atlas-kind-sample .atlas-kind-example{margin:0}.atlas-kind-sample button{font-size:11px;border:0;background:transparent;color:#6652ca;font-weight:850;padding:5px 0;white-space:nowrap}

/* v7.4.17 — Shiny search completion filter */
.shiny-availability{display:flex!important;align-items:center!important;gap:12px!important;margin-top:14px!important;margin-bottom:6px!important;padding:13px 14px!important;cursor:pointer;font-size:13px!important;font-weight:750!important;line-height:1.4!important;color:#27344d!important}.shiny-availability input[type=checkbox]{flex:0 0 19px!important;width:19px!important;height:19px!important;margin:0!important;accent-color:#7057ea;cursor:pointer}.shiny-availability-help{display:block!important;margin:0 2px 4px!important;line-height:1.5!important;font-size:11px!important}
