@font-face{font-family:NostaplayIRANSans;src:url(/fonts/IRANSans.ttf) format("truetype");font-display:swap}@font-face{font-family:NostaplayIRANSansNumbers;src:url(/fonts/IRANSansNumbers-Regular.woff2) format("woff2");font-display:swap;unicode-range:U+0030-0039,U+06F0-06F9,U+0660-0669}:root{color:#172026;background:#f4f6f8;font-family:NostaplayIRANSansNumbers,NostaplayIRANSans,Segoe UI,Tahoma,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#app{max-width:100%;overflow-x:hidden}main{overflow:hidden}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:0 28px;border-bottom:1px solid rgba(214,222,226,.9);background:#fafcfde0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.brand,.nav,.heroActions,.heroStats,.downloadBand,.mockNav{display:flex;align-items:center}.brand{gap:10px}.brandLogo{width:38px;height:38px;flex:0 0 auto;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(13,38,43,.14))}.brand strong{display:block;font-size:18px}.brand small,.heroStats small,.sectionHeader p,.gameCard p,.steps p,.downloadBand p,.mockLobby small{color:#5e7078}.nav{gap:6px;max-width:100%}.nav a{min-height:36px;padding:8px 12px;border-radius:8px;color:#43545c;font-size:14px;font-weight:700;white-space:nowrap}.nav a:hover{background:#e9f1f3;color:#22505a}.hero{position:relative;isolation:isolate;min-height:680px;display:grid;align-items:center;overflow:hidden;padding:78px 28px 98px;background:#0e181b;color:#fff}.heroImage{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#070e1014,#070e1094 48%,#070e10e0),linear-gradient(180deg,#070e1038,#070e102e 55%,#070e10b8)}.hero:after{content:"";position:absolute;inset:auto 0 0;height:80px;background:linear-gradient(180deg,transparent,#f4f6f8);pointer-events:none}.heroScene{position:absolute;inset:0;z-index:-1;overflow:hidden;opacity:.42;mix-blend-mode:screen}.radar{position:absolute;left:8%;top:11%;width:min(720px,68vw);aspect-ratio:1;border:1px solid rgba(255,255,255,.14);border-radius:50%}.radar span{position:absolute;inset:16%;border:1px solid rgba(255,255,255,.12);border-radius:50%}.radar span:nth-child(2){inset:32%}.radar span:nth-child(3){inset:48%;background:#ffffff0d}.sceneNode{position:absolute;display:grid;place-items:center;min-width:92px;min-height:92px;border:1px solid rgba(255,255,255,.26);border-radius:8px;background:#0b181c9e;box-shadow:0 22px 70px #00000052;color:#eaf8f5;font-weight:900;letter-spacing:0}.nodeRts{left:18%;top:28%}.nodeFps{left:48%;top:16%}.nodeCastle{left:34%;bottom:18%}.signalLine{position:absolute;height:2px;transform-origin:left center;background:linear-gradient(90deg,transparent,rgba(72,220,188,.8),transparent)}.lineOne{left:25%;top:36%;width:31%;transform:rotate(-18deg)}.lineTwo{left:40%;top:61%;width:28%;transform:rotate(25deg)}.heroContent{min-width:0;width:min(1120px,100%);margin:0 auto}.heroLogo{width:clamp(72px,10vw,112px);height:clamp(72px,10vw,112px);margin-bottom:18px;object-fit:contain;filter:drop-shadow(0 14px 28px rgba(0,0,0,.22))}.eyebrow{margin:0 0 10px;color:#2a6975;font-size:12px;font-weight:850;letter-spacing:0;text-transform:uppercase}.hero .eyebrow{color:#91e1d1}h1,h2,h3,p{letter-spacing:0}h1{margin:0;direction:ltr;font-size:108px;line-height:.95;text-align:right;unicode-bidi:isolate}.heroContent>p:not(.eyebrow){max-width:650px;margin:24px 0 0;color:#d6e4e7;font-size:19px;line-height:1.9}.heroContent>p.downloadNote{max-width:650px;margin:22px 0 0;color:#cbd8dd;font-size:15px;line-height:1.95}.heroContent>p.downloadNote strong{color:#fff}.heroActions{gap:10px;flex-wrap:wrap;margin-top:28px}.primaryCta,.secondaryCta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:8px;font-weight:850}.primaryCta{background:#e5b74f;color:#172026}.secondaryCta{border:1px solid rgba(255,255,255,.34);color:#fff}.heroStats{gap:12px;flex-wrap:wrap;margin-top:36px}.heroStats span{min-width:170px;padding:12px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff14}.heroStats strong,.heroStats small{display:block;overflow-wrap:anywhere}.heroStats small{margin-top:4px;color:#c9d8db;font-size:12px}.section,.platform,.steps,.downloadBand,.adRail{width:min(1120px,calc(100% - 56px));margin:0 auto}.section,.platform{padding:76px 0 0}.sectionHeader{max-width:720px}.sectionHeader h2,.downloadBand h2{margin:0;color:#172026;font-size:40px;line-height:1.25}.sectionHeader p,.downloadBand p{max-width:680px;margin:14px 0 0;line-height:1.9}.gameGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:28px}.gameCard{display:flex;flex-direction:column;overflow:hidden;border:1px solid #d7e0e4;border-radius:8px;background:#fff;box-shadow:0 20px 55px #23313714}.gameArt{display:grid;place-items:center;min-height:260px;padding:18px;background:radial-gradient(circle at 20% 18%,rgba(72,220,188,.18),transparent 24%),radial-gradient(circle at 82% 74%,rgba(229,183,79,.22),transparent 22%),#172026}.gameArt img{display:block;width:min(100%,210px);height:224px;object-fit:cover;border-radius:6px;box-shadow:0 18px 44px #0000005c}.gameCard:nth-child(2) .gameArt img{object-position:center top}.gameCard:nth-child(3) .gameArt img{object-position:center top}.gameCard:nth-child(4) .gameArt img{object-position:center top}.gameCard>div:last-child{display:flex;flex:1;flex-direction:column;padding:18px}.gameCard h3,.steps h3{margin:10px 0 8px;font-size:19px}.gameCard h3{direction:ltr;overflow-wrap:anywhere;unicode-bidi:isolate}.gameCard p,.steps p{margin:0;line-height:1.8}.gameCardActions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin-top:14px}.gameCardActions:empty{display:none}.gameDownloadItem{display:flex;flex-direction:column;justify-content:space-between;gap:10px;margin-top:auto;padding:12px;border:1px solid #e2eaee;border-radius:8px;background:#f7fafb}.gameDownloadName{color:#172026;font-size:13px;font-weight:800;overflow-wrap:anywhere;unicode-bidi:isolate}.gameDownloadItem .gameCardActions{flex-direction:column;align-items:stretch;margin-top:0}.gameDownloadItem .gameDownloadButton{width:100%;justify-content:center}.gameDownloadItem .gameDownloadNote{text-align:center}.gameDownloadButton{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:40px;padding:0 13px;border-radius:8px;background:#172026;color:#fff;font-size:13px;font-weight:800;transition:background .15s ease,transform .15s ease}.gameDownloadButton svg{width:16px;height:16px;flex:0 0 auto}.gameDownloadButton:hover{background:#24363f;transform:translateY(-1px)}.gameDownloadButton:focus-visible{outline:3px solid rgba(229,183,79,.85);outline-offset:2px}.gameDownloadNote{min-width:0;overflow:hidden;color:#5e7078;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.adRail{display:grid;grid-template-columns:1fr;gap:14px;padding-top:36px}.adRail.compact{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:34px}.adSlot{display:grid;gap:6px;min-height:96px;align-content:center;padding:18px;border:1px dashed #c8a94e;border-radius:8px;background:linear-gradient(135deg,#e5b74f38,#2a69751a),#fffaf0;color:#172026}.adSlot.liveAd{padding:0;overflow:hidden;border-style:solid;background:#fff}.adLink{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:16px;align-items:center;min-height:120px;padding:14px}.adLink img{width:100%;height:92px;border-radius:6px;object-fit:cover}.adLink span,.adSlot span{color:#a67c18;font-size:12px;font-weight:900}.adSlot.wide{min-height:112px}.adSlot span{width:max-content;min-height:24px;padding:4px 8px;border-radius:6px;background:#172026;color:#fff;font-size:11px;font-weight:900;letter-spacing:0}.adSlot strong{font-size:18px}.adSlot p{max-width:680px;margin:0;color:#645329;line-height:1.8}.mockupGrid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:30px}.appMockup{overflow:hidden;min-height:350px;border:1px solid #cfdbe0;border-radius:8px;background:#fff;box-shadow:0 24px 70px #2331371f}.mockTop{display:flex;gap:7px;padding:12px;border-bottom:1px solid #e2e9ec;background:#f7fafb}.mockTop span{width:10px;height:10px;border-radius:999px;background:#c8d2d8}.mockNav{gap:6px;padding:12px;border-bottom:1px solid #edf1f3}.mockNav b{min-height:32px;padding:7px 11px;border-radius:8px;background:#edf5f7;color:#22505a;font-size:12px}.mockContent,.mockLobby{display:grid;gap:12px;padding:18px}.mockGame,.memberList span{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:12px;border:1px solid #dbe2e6;border-radius:8px;background:#fbfcfc}.mockGame.selected{border-color:#2a6975;background:#eef7f8}.mockGame em{color:#60717a;font-size:12px;font-style:normal;font-weight:800;text-align:left}.mockLobby{align-content:start}.pill{display:inline-flex;width:max-content;min-height:30px;align-items:center;padding:0 10px;border-radius:999px;font-size:12px;font-weight:850}.pill.online{background:#e6f5ef;color:#126347}.memberList{display:grid;gap:8px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:64px 0}.steps article{min-height:180px;padding:18px;border:1px solid #d7e0e4;border-radius:8px;background:#fff}.steps span{color:#2a6975;font-size:14px;font-weight:900}.downloadBand{justify-content:space-between;gap:22px;margin-bottom:56px;padding:28px;border:1px solid #cbd8dd;border-radius:8px;background:#172026;color:#fff}.downloadBand h2{color:#fff}.downloadBand p{color:#cbd8dd}@media(max-width:920px){.topbar{align-items:stretch;flex-direction:column;padding:14px}.nav{justify-content:space-between;overflow-x:auto;padding-bottom:2px;width:100%}.hero{min-height:620px;padding-top:58px}.hero:before{background:linear-gradient(90deg,#070e103d,#070e10b3),linear-gradient(180deg,#070e102e,#070e10c2)}h1{font-size:74px}.sectionHeader h2,.downloadBand h2{font-size:34px}.gameGrid,.mockupGrid,.steps,.adRail.compact{grid-template-columns:1fr}.downloadBand{align-items:stretch;flex-direction:column}}@media(max-width:700px){.topbar{position:static}.brand{justify-content:space-between}.nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:calc(100vw - 28px);max-width:calc(100vw - 28px);overflow:visible}.nav a{display:grid;place-items:center;min-width:0;min-height:38px;padding-inline:8px;background:#edf4f6;text-align:center}.hero{min-height:auto;padding-block:46px 74px;text-align:center}.heroImage{object-position:39% center}.heroScene{opacity:.22}.heroStats{justify-content:center;margin-top:24px}.heroContent>p:not(.eyebrow){margin-inline:auto}.heroActions{justify-content:center}.section,.platform{padding-top:52px}.steps{padding-block:48px}.gameArt{min-height:230px;padding:14px}.gameArt img{width:min(100%,190px);height:200px}.gameCard>div:last-child{text-align:center}.gameCard h3{line-height:1.35;text-align:center}.gameCard p{text-align:center}.appMockup{min-height:auto}.mockNav{flex-wrap:wrap}.mockNav b{flex:1 1 calc(50% - 6px);text-align:center}.mockGame,.memberList span{gap:10px;min-height:52px}.mockGame span,.memberList span,.mockLobby strong,.mockLobby small{overflow-wrap:anywhere}.adLink{grid-template-columns:1fr}}@media(max-width:560px){.section,.platform,.steps,.downloadBand,.adRail{width:calc(100% - 28px)}.hero{padding-inline:14px}.nav{grid-template-columns:1fr;width:100%;max-width:100%}h1{font-size:52px;text-align:center}.sectionHeader h2,.downloadBand h2{font-size:28px}.heroContent>p:not(.eyebrow){font-size:16px;line-height:1.75}.heroStats span,.primaryCta,.secondaryCta{width:100%}.sceneNode{min-width:72px;min-height:72px}.downloadBand{padding:22px;margin-bottom:32px}}@media(max-width:390px){.brand small{display:none}.brandLogo{width:34px;height:34px}.nav a{font-size:13px}h1{font-size:46px}.heroActions{gap:8px}.gameArt{min-height:210px}.gameArt img{width:min(100%,170px);height:184px}.mockContent,.mockLobby,.gameCard>div:last-child,.steps article{padding:14px}}:root{--np-ink: #172026;--np-ink-soft: #4a5a63;--np-teal: #2a6975;--np-teal-dark: #1b4b55;--np-teal-soft: rgba(42, 105, 117, .1);--np-gold: #e5b74f;--np-bg: #f2f5f7;--np-surface: #ffffff;--np-border: #e1e8ee;--np-ok: #1f7a4d;--np-ok-soft: rgba(31, 122, 77, .12);--np-warn: #9a6a12;--np-warn-soft: rgba(229, 183, 79, .2);--np-bad: #b23b3b;--np-bad-soft: rgba(178, 59, 59, .12);--np-shadow: 0 10px 30px rgba(18, 44, 52, .08);--np-radius: 14px}body.adminBody{background:var(--np-bg)}.adminApp{display:flex;align-items:stretch;min-height:100vh;background:var(--np-bg);color:var(--np-ink)}.adminSidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:18px;width:272px;min-width:272px;height:100vh;padding:20px 16px;overflow-y:auto;background:linear-gradient(180deg,#16414a,#0e2a31);color:#eaf3f5}.adminSidebar .brandRow{display:flex;align-items:center;gap:12px;padding:6px 8px 14px;border-bottom:1px solid rgba(255,255,255,.12)}.adminSidebar .brandRow img{width:38px;height:38px;border-radius:10px;object-fit:contain;background:#ffffff1a;padding:4px}.adminSidebar .brandRow strong{display:block;font-size:15px}.adminSidebar .brandRow small{color:#eaf3f5b3;font-size:11px}.navGroup{display:flex;flex-direction:column;gap:6px}.navGroup>span{padding:0 10px;color:#eaf3f58c;font-size:11px;letter-spacing:.02em}.navLink{display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit;font-size:13.5px;text-align:right;cursor:pointer;transition:background .15s ease,color .15s ease}.navLink:hover{background:#ffffff14}.navLink.active{background:linear-gradient(90deg,#e5b74fe6,#e5b74fa6);color:#21170a;font-weight:700}.navLink .navBadge{margin-inline-start:auto;padding:1px 7px;border-radius:999px;background:#ffffff29;font-size:11px}.navLink.active .navBadge{background:#21170a2e}.sidebarFooter{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding:12px 8px 4px;border-top:1px solid rgba(255,255,255,.12);font-size:11.5px;color:#eaf3f5a6}.sidebarFooter a{color:var(--np-gold)}.adminMain{display:flex;flex:1;min-width:0;flex-direction:column}.adminTopbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;padding:14px 24px;border-bottom:1px solid var(--np-border);background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.adminTopbar .topbarTitle h1{margin:0;font-size:18px}.adminTopbar .topbarTitle p{margin:2px 0 0;color:var(--np-ink-soft);font-size:12.5px}.topbarSpacer{flex:1}.topbarCluster{display:flex;align-items:center;gap:10px}.whoami{display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--np-border);border-radius:999px;background:var(--np-surface);font-size:12.5px}.whoami small{color:var(--np-ink-soft)}.sidebarToggle{display:none}.adminContent{display:flex;flex-direction:column;gap:18px;padding:22px 24px 40px;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border:1px solid transparent;border-radius:10px;background:var(--np-surface);color:var(--np-ink);font:inherit;font-size:13px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--np-teal);color:#fff;box-shadow:0 6px 16px #2a697540}.btn.gold{background:var(--np-gold);color:#2c2005}.btn.danger{background:var(--np-bad);color:#fff}.btn.ghost{border-color:var(--np-border);background:transparent;color:var(--np-ink-soft)}.btn.small{padding:6px 10px;font-size:12px}.btn.iconOnly{padding:8px}.panel{border:1px solid var(--np-border);border-radius:var(--np-radius);background:var(--np-surface);box-shadow:var(--np-shadow);overflow:hidden}.panelHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--np-border);background:linear-gradient(180deg,#fbfdfe,#fff)}.panelHeader h2{margin:0;font-size:15.5px}.panelHeader p{margin:4px 0 0;color:var(--np-ink-soft);font-size:12.5px}.panelActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panelBody{padding:16px 18px}.metricGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.metricCard{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid var(--np-border);border-radius:12px;background:var(--np-surface)}.metricCard .metricLabel{display:inline-flex;align-items:center;gap:6px;color:var(--np-ink-soft);font-size:12px}.metricCard strong{font-size:22px}.metricCard small{color:var(--np-ink-soft);font-size:11.5px}.metricCard.ok strong{color:var(--np-ok)}.metricCard.warn strong{color:var(--np-warn)}.metricCard.bad strong{color:var(--np-bad)}.splitGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.tableWrap{width:100%;overflow-x:auto}.tableWrap table{width:100%;border-collapse:collapse;font-size:13px}.tableWrap th{padding:10px 12px;border-bottom:1px solid var(--np-border);color:var(--np-ink-soft);font-size:12px;font-weight:600;text-align:right;white-space:nowrap}.tableWrap td{padding:11px 12px;border-bottom:1px solid #eef2f6;vertical-align:middle}.tableWrap tbody tr:hover{background:#f8fbfc}.tableWrap td.actions{display:flex;gap:6px;flex-wrap:wrap}.cellMain{display:block;font-weight:600}.cellSub{display:block;color:var(--np-ink-soft);font-size:11.5px;margin-top:2px;word-break:break-word}.mono{font-family:Consolas,Courier New,monospace;direction:ltr;display:inline-block}.statusBadge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:11.5px;white-space:nowrap}.statusBadge.ok{background:var(--np-ok-soft);color:var(--np-ok)}.statusBadge.warn{background:var(--np-warn-soft);color:var(--np-warn)}.statusBadge.bad{background:var(--np-bad-soft);color:var(--np-bad)}.statusBadge.muted{background:#4a5a631f;color:var(--np-ink-soft)}.formGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field>span{color:var(--np-ink-soft);font-size:12.5px}.field input[type=text],.field input[type=url],.field input[type=number],.field input[type=email],.field input[type=password],.field select,.field textarea{width:100%;padding:10px 12px;border:1px solid var(--np-border);border-radius:10px;background:#fbfdfe;color:var(--np-ink);font:inherit;font-size:13px}.field textarea{min-height:84px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--np-teal);box-shadow:0 0 0 3px var(--np-teal-soft);background:#fff}.field.check{flex-direction:row;align-items:center;gap:8px;padding-top:20px}.formActions{display:flex;gap:10px;align-items:center;margin-top:14px;flex-wrap:wrap}.formHint{color:var(--np-ink-soft);font-size:12px}.uploadDrop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px 18px;border:2px dashed #c8d6dd;border-radius:12px;background:#f8fbfc;color:var(--np-ink-soft);text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease}.uploadDrop:hover,.uploadDrop.dragging{border-color:var(--np-teal);background:var(--np-teal-soft);color:var(--np-teal-dark)}.uploadDrop strong{color:var(--np-ink);font-size:14px}.uploadDrop input[type=file]{display:none}.uploadSelection{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--np-border);border-radius:12px;background:#fbfdfe}.uploadSelection .fileIcon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--np-teal-soft);color:var(--np-teal-dark)}.uploadSelection .fileMeta{flex:1;min-width:0}.uploadSelection .fileMeta strong{display:block;font-size:13px;word-break:break-all}.uploadSelection .fileMeta small{color:var(--np-ink-soft);font-size:11.5px}.progressTrack{height:10px;border-radius:999px;background:#e7eef2;overflow:hidden}.progressTrack>span{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--np-teal),var(--np-gold));transition:width .2s ease}.progressRow{display:flex;align-items:center;gap:12px;margin-top:12px}.progressRow .progressTrack{flex:1}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar .searchBox{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--np-border);border-radius:10px;background:#fbfdfe;min-width:240px}.toolbar .searchBox input{flex:1;border:0;background:transparent;font:inherit;font-size:13px;outline:none}.chipRow{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid var(--np-border);border-radius:999px;background:#fbfdfe;color:var(--np-ink-soft);font-size:12px}.chip strong{color:var(--np-ink)}.kvList{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.kvList>div{padding:12px 14px;border:1px solid var(--np-border);border-radius:12px;background:#fbfdfe}.kvList span{display:block;color:var(--np-ink-soft);font-size:11.5px}.kvList strong{display:block;margin-top:4px;font-size:13.5px;word-break:break-word}.emptyState,.loadingState{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 18px;color:var(--np-ink-soft);text-align:center;font-size:13px}.loadingState{flex-direction:row;justify-content:center;gap:10px}.spinner{width:16px;height:16px;border:2px solid var(--np-teal-soft);border-top-color:var(--np-teal);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.linkRow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.linkRow .mono{padding:4px 8px;border-radius:8px;background:#f1f6f8;color:var(--np-teal-dark);font-size:11.5px;max-width:100%;overflow-x:auto}.toastHost{position:fixed;bottom:22px;left:22px;z-index:200;display:flex;flex-direction:column;gap:10px}.toast{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;background:#16323a;color:#eef6f8;font-size:13px;box-shadow:0 12px 28px #0b202647;animation:toastIn .2s ease}.toast.success{background:#14513a}.toast.error{background:#6d2222}.toast.leaving{opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}}.modalOverlay{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;background:#0b202680}.modalCard{width:min(460px,100%);padding:22px;border-radius:16px;background:#fff;box-shadow:0 20px 50px #0b20264d}.modalCard h3{margin:0 0 8px;font-size:16px}.modalCard p{margin:0;color:var(--np-ink-soft);font-size:13px;line-height:1.7}.modalActions{display:flex;justify-content:flex-start;gap:10px;margin-top:18px}.adminLogin{display:grid;place-items:center;min-height:100vh;padding:24px;background:radial-gradient(circle at 20% 15%,rgba(42,105,117,.28),transparent 55%),radial-gradient(circle at 80% 85%,rgba(229,183,79,.28),transparent 55%),#10262c}.loginCard{width:min(420px,100%);padding:28px;border-radius:18px;background:#fff;box-shadow:0 24px 60px #04141959}.loginCard .brandRow{display:flex;align-items:center;gap:12px;margin-bottom:20px}.loginCard .brandRow img{width:46px;height:46px;object-fit:contain}.loginCard .brandRow strong{display:block;font-size:17px}.loginCard .brandRow small{color:var(--np-ink-soft);font-size:12px}.loginCard form{display:flex;flex-direction:column;gap:14px}.loginError{min-height:20px;margin:0;color:var(--np-bad);font-size:12.5px}.loginNote{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--np-border);color:var(--np-ink-soft);font-size:11.5px;line-height:1.8}@media(max-width:980px){.adminSidebar{position:fixed;inset-inline-end:0;top:0;z-index:60;transform:translate(100%);transition:transform .22s ease;box-shadow:-18px 0 40px #06191e47}.adminSidebar.open{transform:translate(0)}.sidebarToggle{display:inline-flex}.adminContent{padding:18px 14px 32px}.adminTopbar{padding:12px 14px}.whoami small{display:none}}@media(max-width:620px){.metricGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.panelHeader{flex-direction:column}}
