:root{--bg0: #0b100f;--bg1: #121a18;--bg2: #1a2622;--line: rgba(126, 214, 168, .18);--text: #e7f5ec;--muted: #8aa597;--accent: #7ed6a8;--accent-hot: #ffb454;--danger: #ff6b6b;--ok: #5ddea4;--warn: #f0c674;--font-ui: "Outfit", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display: "Space Grotesk", "Outfit", "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Cascadia Code", "SF Mono", ui-monospace, Consolas, monospace;--ease: cubic-bezier(.16, 1, .3, 1);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(126,214,168,.5) rgba(0,0,0,.28)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:#00000047;border-radius:999px}*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#7ed6a89e,#7ed6a847);border-radius:999px;border:2px solid rgba(8,12,11,.55)}*::-webkit-scrollbar-thumb:hover{background:#7ed6a8c7}*::-webkit-scrollbar-corner{background:transparent}html,body,#root{height:100%;height:100dvh;max-height:100%;max-height:100dvh;overflow:hidden}body{margin:0;color:var(--text);font-family:var(--font-ui);font-weight:400;font-size:15px;line-height:1.45;letter-spacing:.01em;background:radial-gradient(1200px 600px at 10% -10%,rgba(126,214,168,.12),transparent 55%),radial-gradient(900px 500px at 90% 0%,rgba(255,180,84,.08),transparent 50%),linear-gradient(180deg,#0d1412 0%,var(--bg0) 40%,#070b0a 100%)}body:before{content:"";pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px);background-size:100% 3px;opacity:.35;z-index:0}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{border:1px solid var(--line);background:#00000047;border-radius:10px;padding:10px 12px;color:var(--text)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}button{cursor:pointer}.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:240px 1fr;height:100%;height:100dvh;max-height:100dvh;overflow:hidden;transition:grid-template-columns .2s var(--ease)}.app-shell.nav-collapsed{grid-template-columns:72px 1fr}html.sp-embed-app,html.sp-embed-app body,html.sp-embed-app #root{height:100%;max-height:100%}.app-shell.embed-mode{display:flex;flex-direction:column;grid-template-columns:none;height:100%;max-height:100%}.app-shell.embed-mode .side,.app-shell.embed-mode .topbar,.app-shell.embed-mode .nav-backdrop,.app-shell.embed-mode .side-toggle,.app-shell.embed-mode .hamburger,.app-shell.embed-mode .guest-claim-bar{display:none!important}.app-shell.embed-mode .main{flex:1 1 auto;width:100%;min-height:0;height:auto;max-height:none;padding:0}.app-shell.embed-mode .main-map{padding:0}.app-shell.embed-mode .bluemap-page .map-toolbar.bluemap-toolbar-embed{gap:8px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.app-shell.embed-mode .bluemap-page .map-toolbar.bluemap-toolbar-embed .bluemap-embed-status{color:var(--muted);font-size:.78rem;font-weight:600;white-space:nowrap}.app-shell.embed-mode .bluemap-page .map-toolbar.bluemap-toolbar-embed .bluemap-embed-status.ok{color:#5ddea4}.app-shell.embed-mode .page-title,.app-shell.embed-mode .page-sub{padding-left:12px;padding-right:12px}.topbar,.nav-backdrop{display:none}.side{border-right:1px solid var(--line);background:#0a100eb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:28px 18px;padding-bottom:max(28px,var(--safe-bottom));display:flex;flex-direction:column;gap:28px;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;transition:padding .2s var(--ease)}.app-shell.nav-collapsed .side{padding:18px 10px;gap:16px}.app-shell.nav-collapsed .brand span,.app-shell.nav-collapsed .nav button span,.app-shell.nav-collapsed .side-foot .badge,.app-shell.nav-collapsed .side-foot .btn-logout-label{display:none}.app-shell.nav-collapsed .brand{font-size:.95rem;text-align:center}.app-shell.nav-collapsed .nav button{text-align:center;padding:10px 6px;font-size:.72rem}.side-toggle{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:8px;padding:6px 10px;cursor:pointer;font-size:.75rem}.side-toggle:hover{color:var(--text);border-color:var(--accent)}.brand{font-family:var(--font-display);font-weight:700;font-size:1.45rem;letter-spacing:-.02em;line-height:1.1}.brand span{display:block;margin-top:8px;color:var(--muted);font-family:var(--font-ui);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.nav{display:flex;flex-direction:column;gap:6px}.nav button{text-align:left;border:1px solid transparent;background:transparent;padding:10px 12px;border-radius:10px;color:var(--muted);transition:.18s var(--ease)}.nav button:hover,.nav button.active{color:var(--text);border-color:var(--line);background:#7ed6a814}.side-foot{margin-top:auto;display:grid;gap:10px}.badge{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;color:var(--muted)}.dot{width:8px;height:8px;border-radius:50%;background:var(--danger)}.dot.on{background:var(--ok);box-shadow:0 0 12px #5ddea4b3}.main{padding:28px;padding-bottom:max(28px,var(--safe-bottom));min-height:0;height:100%;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column}.page-stack{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0}.page-head{flex:0 0 auto}.page-foot{flex:0 0 auto;padding-bottom:max(0px,var(--safe-bottom))}.page-title{font-family:var(--font-display);font-weight:700;font-size:1.75rem;letter-spacing:-.02em;margin:0 0 6px}.page-sub{margin:0 0 24px;color:var(--muted);font-size:.85rem}.page-head .page-sub{margin-bottom:12px}.grid{display:grid;gap:14px}.grid.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);background:linear-gradient(160deg,#1a2622e6,#0e1412eb);border-radius:16px;padding:16px;animation:rise .52s var(--ease) both}.card h3{margin:0 0 8px;font-family:var(--font-display);font-size:.95rem;font-weight:700}.stat-value{font-family:var(--font-display);font-size:2rem;font-weight:700;letter-spacing:-.02em}.table{width:100%;border-collapse:collapse;font-size:.82rem}.table th,.table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}.table th{color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.wl-player{display:flex;align-items:center;gap:10px}.wl-player img{width:24px;height:24px;border-radius:4px;image-rendering:pixelated;flex-shrink:0}.wl-uuid,.wl-uuid.mono{font-family:var(--font-mono, ui-monospace, monospace);font-size:.72rem;color:var(--muted);word-break:break-all}.wl-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.wl-edit-head{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.wl-edit-head>img{width:40px;height:40px;border-radius:6px;image-rendering:pixelated;margin-bottom:2px}tr.wl-editing td{background:#7ed6a80f}.secret-blur{filter:blur(6px);transition:filter .15s ease;-webkit-user-select:none;user-select:none}.secret-blur:focus{filter:none;-webkit-user-select:text;user-select:text}.discord-console-filters{margin:14px 0 4px}.discord-console-filters>label{display:block;margin-bottom:4px;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.discord-filter-grid{display:grid;gap:6px;margin-top:8px}@media(min-width:720px){.discord-filter-grid{grid-template-columns:1fr 1fr}}.actions{display:flex;flex-wrap:wrap;gap:6px}.btn{border:1px solid var(--line);background:#7ed6a814;color:var(--text);border-radius:999px;padding:8px 12px;transition:.16s var(--ease)}.btn:hover{border-color:var(--accent);background:#7ed6a829}.btn.hot{border-color:#ffb45473;background:#ffb4541f}.btn.danger{border-color:#ff6b6b73;background:#ff6b6b1a}.field{display:grid;gap:6px;margin-bottom:12px}.field label{color:var(--muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#00000047;border-radius:10px;padding:10px 12px}.login{height:100%;height:100dvh;max-height:100dvh;overflow-x:hidden;overflow-y:auto;display:grid;place-items:center;position:relative;z-index:1;padding:24px;padding-bottom:max(24px,var(--safe-bottom))}.login-card{width:min(400px,100%);border:1px solid var(--line);border-radius:20px;padding:28px;background:#0c1210e0;box-shadow:0 30px 80px #00000073;animation:rise .7s var(--ease) both;display:grid;gap:14px}.login-card h1{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;margin:0;font-size:1.65rem}.login-card p{color:var(--muted);margin:0;font-size:.9rem}.login-hint{margin:0;color:var(--warn);font-size:.82rem}.server-list{display:grid;gap:8px}.server-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#7ed6a80a;text-align:left;min-width:0}.server-row>div{min-width:0}.server-row strong{display:block;font-size:.9rem;font-weight:600}.server-row span{color:var(--muted);font-size:.72rem;font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.server-row em{font-style:normal;font-size:.68rem;color:var(--accent);font-weight:500}.login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.login-tabs-3{grid-template-columns:1fr 1fr 1fr}.login-tabs button.active{border-color:var(--accent);color:var(--text);background:#7ed6a81f}.login-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:500}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--line)}.login-secondary{border:0;background:transparent;color:var(--muted);padding:4px 0;text-align:left;font-size:.85rem;font-weight:500}.login-secondary:hover{color:var(--accent)}.pin-input{font-size:1.45rem;letter-spacing:.28em;text-align:center;font-weight:600;font-family:var(--font-mono)}.chat-log{flex:1 1 auto;min-height:160px;height:auto;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:12px;background:#00000047;white-space:pre-wrap;font-size:.82rem;line-height:1.5;font-family:var(--font-mono);min-width:0}.main-map{padding:0;display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.map-page{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;background:#070b0a}.map-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line);background:#0a100eeb;z-index:3;flex:0 0 auto}.map-toolbar select{border:1px solid var(--line);background:#00000059;border-radius:10px;padding:6px 8px}.map-toolbar .btn{padding:6px 10px}.map-zoom{color:var(--muted);font-size:.75rem;min-width:3.2em}.map-rebuild-chip{margin-left:4px;padding:5px 10px;border-radius:999px;border:1px solid rgba(255,180,84,.45);background:#ffb4541f;color:#ffb454;font-size:.72rem;font-weight:600;letter-spacing:.02em;animation:map-rebuild-pulse 1.4s ease-in-out infinite}@keyframes map-rebuild-pulse{0%,to{opacity:.75}50%{opacity:1}}.map-rebuild-status{margin-top:12px;display:grid;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#00000047}.map-rebuild-status.done{border-color:#7ed6a859}.map-rebuild-status.error{border-color:#ff6b6b66}.map-rebuild-track{height:8px;border-radius:999px;overflow:hidden;background:#ffffff0f}.map-rebuild-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#7ed6a8,#ffb454);transition:width .35s ease}.map-rebuild-status.error .map-rebuild-fill{background:#ff6b6b}.map-rebuild-status.done .map-rebuild-fill{background:#7ed6a8}.map-rebuild-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.map-rebuild-meta strong{font-size:.85rem;color:var(--text)}.map-rebuild-meta span{color:var(--muted);font-size:.75rem;text-align:right}.map-rebuild-error{color:#ff8f8f;font-size:.72rem;font-style:normal}.map-viewport{position:relative;flex:1;min-height:0;overflow:hidden;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.map-viewport:active{cursor:grabbing}.map-viewport *,.map-stage,.map-tile,.map-player,.map-entity,.map-mark{user-select:none;-webkit-user-select:none}.map-tiles,.map-overlays,.map-stage{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.map-tiles{z-index:1}.map-stage{z-index:1;image-rendering:pixelated;image-rendering:crisp-edges}.map-layer{position:absolute;left:0;top:0;z-index:0}.map-overlays{z-index:2;pointer-events:none;transform-origin:0 0}.map-overlays .map-player,.map-overlays .map-mark,.map-overlays .map-entity{pointer-events:auto}.map-iso-scene{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:center center}.map-viewport.iso{perspective:1200px;perspective-origin:50% 45%}.map-viewport.iso .map-iso-scene{transform:rotateX(58deg) rotate(-32deg) scale(1.15);transform-style:preserve-3d}.map-viewport.iso .map-overlays{transform-style:flat}.map-viewport.iso .map-player-billboard{transform:rotate(32deg) rotateX(-58deg);transform-style:preserve-3d}.map-viewport.iso .map-mark{transform:translate(-50%,-100%) rotate(32deg) rotateX(-58deg)}.map-viewport.iso .map-entity{transform:translate(-50%,-50%) rotate(32deg) rotateX(-58deg)}.map-tile{position:absolute;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;-ms-interpolation-mode:nearest-neighbor;pointer-events:none}.map-tile-cave{z-index:1}.map-player img{width:16px;height:16px;border-radius:4px;border:1px solid rgba(126,214,168,.55);box-shadow:0 2px 6px #0006;background:#111;image-rendering:pixelated}.map-player{position:absolute;border:0;background:transparent;padding:0;z-index:2;display:flex;flex-direction:column;align-items:center;gap:4px;transform-origin:center center}.map-mark{position:absolute;z-index:3;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none;transform:translate(-50%,-100%);transform-origin:center bottom}.map-player.active img{border-color:var(--accent-hot);box-shadow:0 0 0 2px #ffb45459}.map-player-head{position:relative;display:block}.map-player-head.large{display:inline-block}.map-player-crown{position:absolute;top:-8px;left:50%;transform:translate(-50%);font-size:.65rem;line-height:1;filter:none;pointer-events:none}.map-player-gm{display:inline-grid;place-items:center;width:13px;height:13px;margin-left:5px;border-radius:4px;font-size:.56rem;font-weight:800;color:#0b100f;vertical-align:middle;line-height:1}.gm-survival{background:var(--ok)}.gm-creative{background:#7ac7ff}.gm-adventure{background:var(--warn)}.gm-spectator{background:var(--muted)}.gm-unknown{background:var(--line)}.map-stats{display:inline-flex;align-items:center;gap:4px}.stat-icon{width:10px;height:10px;image-rendering:pixelated;vertical-align:middle;filter:none}.stat-glyph{display:inline-block;font-size:.7rem;line-height:1;vertical-align:-1px;filter:none;text-shadow:none}.stat-heart{color:#ff5a5a}.stat-food{color:#d4a06a}.map-player.active .stat-icon,.map-admin .stat-icon,.map-player.active .stat-glyph,.map-admin .stat-glyph{filter:none;text-shadow:none}.mc-heart,.mc-food{font-style:normal}.mc-heart{color:var(--danger)}.mc-food{color:var(--warn)}.map-player-meta{display:grid;gap:1px;padding:2px 6px;border-radius:6px;background:#000000b8;color:var(--text);white-space:nowrap;pointer-events:none;image-rendering:auto;-webkit-font-smoothing:antialiased}.map-player-meta strong{font-size:.62rem;font-family:var(--font-display)}.map-player-meta em{font-style:normal;color:var(--muted);font-size:.58rem}.map-biome-tip{position:absolute;z-index:8;pointer-events:none;display:grid;gap:2px;padding:6px 8px;border-radius:8px;background:#080c0beb;border:1px solid rgba(126,214,168,.25);font-size:.68rem;max-width:220px;will-change:left,top;transition:left 40ms linear,top 40ms linear}.map-biome-tip strong{text-transform:capitalize;color:var(--text)}.map-biome-tip span,.map-biome-tip em{color:var(--muted);font-style:normal;font-family:var(--font-mono);font-size:.62rem}.map-mark-chip{position:absolute;z-index:9;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:#080c0bf0;border:1px solid rgba(255,180,84,.4);font-size:.72rem}.map-mark-chip strong{color:var(--accent-hot)}.map-mark-chip span{color:var(--text)}.map-mark-chip .btn{padding:4px 10px;font-size:.68rem}.map-player-billboard{display:flex;flex-direction:column;align-items:center;gap:4px}.map-mark-pin{width:14px;height:14px;border-radius:999px 999px 999px 0;transform:rotate(-45deg);background:var(--accent-hot);border:2px solid rgba(255,255,255,.85);box-shadow:0 0 0 2px #ffb45459,0 8px 18px #00000073}.map-mark-label{padding:3px 7px;border-radius:8px;background:#000000c7;color:var(--text);font-size:.62rem;white-space:nowrap}.map-players-panel{position:absolute;top:52px;right:12px;z-index:4;width:min(220px,calc(100% - 24px));max-height:min(42vh,360px);border:1px solid var(--line);border-radius:12px;background:#0a100ef0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;grid-template-rows:auto 1fr;overflow:hidden}.map-players-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--line);font-family:var(--font-display);font-size:.78rem}.map-players-head span{color:var(--muted);font-size:.7rem}.map-players-list{overflow:auto;display:grid;gap:1px;padding:4px}.map-players-row{display:flex;align-items:center;gap:6px;border:0;border-radius:8px;background:transparent;padding:5px 6px;text-align:left;color:var(--text)}.map-players-row:hover,.map-players-row.active{background:#7ed6a81f}.map-players-row.active{box-shadow:inset 0 0 0 1px #7ed6a859}.map-players-row img{width:22px;height:22px;border-radius:5px;flex:0 0 auto}.map-players-info{display:grid;gap:0;min-width:0;line-height:1.25}.map-players-info strong{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-players-info em{font-style:normal;color:var(--muted);font-size:.6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-players-empty{color:var(--muted);font-size:.7rem;padding:8px 6px}.map-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0000008c;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) 16px max(16px,env(safe-area-inset-bottom,0px));overflow:auto}.map-modal{width:min(420px,100%);max-height:min(90dvh,720px);border:1px solid var(--line);border-radius:16px;background:#0a100efa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 60px #0000008c;padding:16px;display:grid;gap:12px;overflow:auto;align-content:start}.map-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.map-modal-head strong{font-family:var(--font-display);font-size:.95rem}.map-modal-close{width:32px;height:32px;border:1px solid var(--line);border-radius:10px;background:#00000059;color:var(--text);font-size:1.2rem;line-height:1}.map-modal-tabs{display:flex;gap:6px}.map-modal-tabs button{flex:1;border:1px solid var(--line);border-radius:999px;background:#00000038;color:var(--muted);padding:8px 10px;font-size:.74rem}.map-modal-tabs button.active{color:var(--text);border-color:#7ed6a873;background:#7ed6a81f}.map-modal-body{display:grid;gap:8px}.map-modal-coords{margin:0;font-size:.82rem}.map-modal-coords strong{color:var(--accent-hot)}.map-modal-avatar{width:20px;height:20px;border-radius:5px}.map-modal-actions{display:flex;justify-content:flex-end;gap:8px}.fun-modal{width:min(640px,calc(100vw - 24px));max-height:min(88vh,820px);display:flex;flex-direction:column;gap:12px}.fun-modal .map-modal-head,.fun-modal .map-modal-actions{flex:0 0 auto}.fun-modal .map-modal-body{display:flex;flex-direction:column;gap:10px;min-height:0;flex:1 1 auto;overflow:hidden}.fun-modal-lead{margin:0;flex:0 0 auto}.fun-cat-list{display:flex;flex-direction:column;gap:10px;min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto;padding:2px 4px 4px 1px;scrollbar-gutter:stable}.fun-cat{display:flex;flex-direction:column;flex:0 0 auto;min-height:min-content;border:1px solid rgba(255,180,90,.2);border-radius:14px;background:#080a098c;overflow:visible}.fun-cat.open{border-color:#ffb45a66;background:linear-gradient(180deg,#28160a8c,#0c0a08b8)}.fun-cat-head{width:100%;display:flex;align-items:center;gap:8px;padding:11px 12px;border:0;border-radius:14px;background:transparent;color:#ffe7c8;cursor:pointer;text-align:left;flex:0 0 auto}.fun-cat.open .fun-cat-head{border-radius:14px 14px 0 0;border-bottom:1px solid rgba(255,180,90,.14);background:#ff96460f}.fun-cat-head:hover{background:#ffa0501a}.fun-cat-chevron{width:1rem;color:#ffc878e6;font-size:.85rem;line-height:1}.fun-cat-head strong{flex:1;font-size:.84rem;letter-spacing:.02em}.fun-cat-count{min-width:1.4rem;padding:2px 7px;border-radius:999px;border:1px solid rgba(255,180,90,.28);background:#ff8c3c1f;color:#ffdcb4d9;font-size:.68rem;text-align:center}.fun-gag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px;padding:10px;flex:0 0 auto;min-height:min-content}.fun-gag-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,180,90,.28);background:linear-gradient(160deg,#ff8c3c2e,#140e0ab8);color:#ffe7c8;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.fun-gag-btn:hover:not(:disabled){transform:translateY(-1px);border-color:#ffc86e8c;background:linear-gradient(160deg,#ff964647,#1c100ad1)}.fun-gag-btn:disabled{opacity:.55;cursor:wait}.fun-gag-btn.busy{border-color:#ffdc8ccc}.fun-gag-btn.danger{border-color:#ff5a5a73;background:linear-gradient(160deg,#dc323247,#180808c7);color:#ffd0d0}.fun-gag-btn.danger:hover:not(:disabled){border-color:#ff7878b3;background:linear-gradient(160deg,#f0464661,#200a0ae0)}.fun-gag-btn.danger span{color:#ffbebec7}.fun-gag-btn strong{font-size:13px;font-weight:700}.fun-gag-btn span{font-size:11px;color:#ffdcb4b8;line-height:1.25}.map-empty{position:absolute;left:24px;top:24px;color:var(--muted)}.map-admin{position:absolute;right:16px;bottom:max(16px,var(--safe-bottom));width:min(420px,calc(100% - 32px));min-width:380px;max-height:min(70vh,640px);overflow-x:hidden;overflow-y:auto;border:1px solid var(--line);border-radius:16px;background:#0a100ef0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px;z-index:5;display:grid;gap:10px}.map-admin-track{position:absolute;top:10px;right:48px;width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:#00000059;color:var(--text);font-size:1rem;line-height:1}.map-admin-track.on{border-color:var(--accent-hot);color:var(--accent-hot)}.map-admin-collapse{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:#00000059;color:var(--text);font-size:1rem;line-height:1}.map-admin-chip{position:absolute;right:16px;bottom:max(16px,var(--safe-bottom));z-index:5;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:#0a100ef0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:6px 14px 6px 6px;color:var(--text);font-size:.78rem}.map-admin-chip img{width:24px;height:24px;border-radius:7px}.map-admin-actions{flex-wrap:wrap}.map-entity{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:999px;background:#f0c674;box-shadow:0 0 0 1px #0000008c;pointer-events:none;z-index:1}.map-entity.passive{background:#f0c674}.map-entity.hostile{background:#ffb454}.map-entity.item{background:#ff6b6b}.item-icon{width:28px;height:28px;image-rendering:pixelated;display:block;margin:2px auto 0}.item-icon-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:.55rem;color:#222;text-transform:uppercase}.mc-slot .item-icon{width:26px;height:26px}.mc-slot-name{display:none}.search-select{position:relative}.search-select-trigger{width:100%;border:1px solid var(--line);border-radius:10px;background:#00000047;padding:8px 10px;text-align:left}.search-select-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:20;border:1px solid var(--line);border-radius:12px;background:#101816;box-shadow:0 16px 40px #00000073;padding:8px;display:grid;gap:8px}.search-select-menu input{width:100%;border:1px solid var(--line);border-radius:8px;background:#00000059;padding:8px 10px}.search-select-list{max-height:220px;overflow:auto;display:grid;gap:2px}.search-select-list button{border:0;background:transparent;text-align:left;padding:8px;border-radius:8px;color:var(--text)}.search-select-list button:hover,.search-select-list button.active{background:#7ed6a81f}.search-select-empty{color:var(--muted);font-size:.75rem;padding:8px}.item-option{display:inline-flex;align-items:center;gap:8px}.item-option .item-icon{width:20px;height:20px;margin:0}.row.tight{align-items:center}.row.tight>input{flex:1}.row.tight>.btn{flex:0 0 auto}.muted{color:var(--muted)}.mods-drop{border:1px dashed rgba(126,214,168,.45);border-radius:16px;padding:36px 18px;text-align:center;color:var(--muted);background:#00000038;cursor:pointer}.mods-vault-modal{width:min(720px,100%)}.restart-modal{width:min(420px,100%)}.restart-modal .map-modal-body p{margin:0;color:var(--muted);line-height:1.45}.mods-vault-table-wrap{max-height:60vh;overflow:auto;border:1px solid var(--line);border-radius:12px}.mods-vault-table-wrap .table{margin:0}.mods-vault-table-wrap thead th{position:sticky;top:0;background:#101816;z-index:1}.mods-vault-status{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;padding:3px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-transform:capitalize}.mods-vault-status.up_to_date{color:var(--ok);border-color:#5ddea466;background:#5ddea414}.mods-vault-status.update_available{color:var(--warn);border-color:#f0c67466;background:#f0c67414}.mods-vault-status.missing{color:var(--muted)}.mods-vault-empty{padding:24px;text-align:center;color:var(--muted)}.tabs button{border:1px solid var(--line);background:#00000038;border-radius:999px;padding:8px 14px;color:var(--muted)}.tabs button.active{color:var(--text);border-color:#7ed6a873;background:#7ed6a81f}.map-world-panel{position:absolute;left:16px;bottom:max(16px,var(--safe-bottom));z-index:5;border:1px solid var(--line);border-radius:14px;background:#0a100ef0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:148px;overflow:hidden}.map-world-toggle{width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:10px 12px;font-family:var(--font-display);font-weight:700}.map-world-body{border-top:1px solid var(--line);padding:10px 12px 12px;display:grid;gap:10px;width:min(280px,calc(100vw - 64px))}.map-world-section{display:grid;gap:6px}.map-world-section>span{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.map-world-toggles{display:flex;flex-wrap:wrap;gap:6px}.map-admin-head{display:flex;gap:10px;align-items:center}.map-admin-head img{width:32px;height:32px;border-radius:8px}.map-admin-head div{display:grid;gap:2px}.map-admin-head div>span{color:var(--muted);font-size:.72rem}.map-admin .map-inv{min-width:0;overflow-x:auto}.map-inv h4{margin:0 0 8px;font-family:var(--font-display);font-size:.85rem}.map-inv-empty{color:var(--muted);font-size:.75rem}.mc-inv{display:grid;gap:10px}.mc-inv-top{display:flex;gap:10px;align-items:flex-start}.mc-armor{display:grid;gap:4px}.mc-row,.mc-hotbar{display:grid;grid-template-columns:repeat(9,34px);gap:4px}.mc-main{display:grid;gap:4px}.mc-hotbar-row{display:flex;gap:10px;align-items:center}.mc-slot{position:relative;width:34px;height:34px;padding:0;border:2px solid #373737;border-top-color:#8b8b8b;border-left-color:#8b8b8b;background:#8b8b8b;box-shadow:inset 1px 1px #373737;overflow:hidden;display:block;color:inherit}.mc-slot.has-contents{overflow:visible}button.mc-slot.editable{cursor:pointer}button.mc-slot.editable:hover{outline:1px solid rgba(255,220,140,.7)}button.mc-slot:disabled{cursor:default}.mc-slot.active{outline:2px solid var(--accent-hot)}.map-inv-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.map-inv-head h4{margin:0}.map-inv-tabs{display:flex;gap:6px;flex-wrap:wrap}.map-modal-wide{width:min(420px,94vw);max-height:min(92dvh,760px)}.mc-ender{gap:4px}.topbar-metrics{display:flex;align-items:center;gap:8px;margin-left:auto}.metric-chip{display:inline-flex;align-items:baseline;gap:6px;padding:5px 9px;border-radius:999px;border:1px solid var(--line);background:#00000047;font-size:.72rem;color:var(--muted)}.metric-chip strong{color:var(--text);font-size:.9rem}.metric-chip.ok{border-color:#7ed6a873}.metric-chip.warn{border-color:#ffc45a80}.metric-chip.bad{border-color:#ff6e6e8c}.metric-chip em{font-style:normal;opacity:.8}.pill{display:inline-block;margin-right:4px;padding:2px 7px;border-radius:999px;border:1px solid var(--line);font-size:.68rem;color:var(--muted)}.pill.ok{border-color:#7ed6a873;color:#b8f0d0}.pill.bad{border-color:#ff6e6e80;color:#ffc0c0}.pill.warn{border-color:#f0c6748c;color:#f5d78a}.map-player.offline img{filter:grayscale(1) brightness(.72);opacity:.78}.map-player.offline{opacity:.92}.map-player-offline-tag{margin-left:6px;padding:1px 6px;border-radius:999px;border:1px solid rgba(138,165,151,.35);color:var(--muted);font-size:.62rem;letter-spacing:.04em;text-transform:uppercase}.mc-slot.has-contents:hover,.mc-slot.has-contents:focus-within{z-index:40}.mc-slot-tip{display:none;position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);min-width:168px;max-width:220px;padding:8px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(160deg,#16221efa,#0a0e0dfa);box-shadow:0 12px 28px #00000073;pointer-events:none}.mc-slot.has-contents:hover .mc-slot-tip,.mc-slot.has-contents:focus-within .mc-slot-tip{display:block}.mc-slot-tip strong{display:block;margin-bottom:6px;font-size:.68rem;text-transform:capitalize;color:var(--muted)}.mc-slot-tip-grid{display:grid;grid-template-columns:repeat(9,18px);gap:2px}.mc-slot-tip-cell{position:relative;width:18px;height:18px;border-radius:3px;background:#00000059;border:1px solid rgba(255,255,255,.06);overflow:hidden}.mc-slot-tip-cell .item-icon,.mc-slot-tip-cell .item-icon-fallback{width:100%;height:100%;image-rendering:pixelated}.mc-slot-tip-cell em{position:absolute;right:0;bottom:-1px;font-style:normal;font-size:.5rem;line-height:1;text-shadow:0 0 2px #000}.mods-name-cell{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mods-row-update td{background:#f0c6740f}.playtime-count-btn{border:0;background:transparent;color:var(--accent);padding:0;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px}.playtime-modal{width:min(720px,calc(100vw - 32px));max-height:min(80vh,760px);display:flex;flex-direction:column}.playtime-modal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.playtime-modal-body{min-height:0;flex:1;overflow:auto}.playtime-breakdown{list-style:none;margin:0;padding:0;max-height:none;overflow:visible;border:1px solid var(--line);border-radius:10px;background:#0a100e8c}.playtime-stat-label{display:inline-flex;align-items:center;gap:8px;min-width:0;text-transform:capitalize}.playtime-stat-icon,.playtime-stat-label .item-icon,.playtime-stat-label .item-icon-fallback{width:20px;height:20px;flex:0 0 auto;image-rendering:pixelated}.playtime-breakdown li{display:flex;justify-content:space-between;gap:12px;padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.04);text-transform:capitalize}.playtime-breakdown li:last-child{border-bottom:0}.playtime-breakdown strong{font-variant-numeric:tabular-nums;color:#c8f0da}.audit-payload{max-width:320px;font-size:.78rem;color:var(--muted);word-break:break-word}.mc-slot-name{display:block;font-size:.42rem;line-height:1.1;padding:2px;color:#111;text-transform:lowercase;word-break:break-word}.mc-slot em{position:absolute;right:2px;bottom:0;font-style:normal;font-size:.62rem;color:#fff;text-shadow:1px 1px 0 #000}.mc-slot-dmg{position:absolute;left:2px;right:2px;bottom:2px;height:2px;background:#5f5}.console-log{flex:1 1 auto;min-height:160px;height:auto;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:12px;background:#00000047;white-space:pre-wrap;font-size:.8rem;line-height:1.5;font-family:var(--font-mono);min-width:0}.map-wrap{overflow:auto;max-height:70vh}.map-canvas{display:block;image-rendering:pixelated;max-width:none}.row{display:flex;gap:10px;flex-wrap:wrap;min-width:0}.row>*{flex:1 1 0;min-width:0}.row>.btn,.row>button{flex:0 0 auto}.row>.field{flex:1 1 140px}.error{color:var(--danger);font-size:.8rem;margin-top:8px}.guest-claim-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:8px 14px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#ffb45414;color:var(--text);font-size:.8rem;z-index:6;position:relative;flex:0 0 auto}.guest-claim-bar .btn{padding:6px 10px;font-size:.78rem}.guest-claim-bar .pin-input{width:132px;font-size:1rem;letter-spacing:.18em;padding:6px 8px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:960px){.app-shell{display:flex;flex-direction:column;grid-template-columns:none;height:100%;height:100dvh;max-height:100dvh;overflow:hidden}.topbar{display:flex;align-items:center;gap:12px;padding:12px 14px;padding-top:max(12px,env(safe-area-inset-top,0px));border-bottom:1px solid var(--line);background:#0a100ee6;flex:0 0 auto;position:relative;z-index:40}.hamburger{display:grid;gap:4px;width:40px;height:40px;place-content:center;border:1px solid var(--line);border-radius:10px;background:#7ed6a814;padding:0}.hamburger span{display:block;width:18px;height:2px;background:var(--text);border-radius:2px}.topbar-brand{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;flex:1}.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;opacity:0;pointer-events:none;transition:opacity .18s var(--ease);z-index:45}.app-shell.nav-open .nav-backdrop{opacity:1;pointer-events:auto}.side{position:fixed;top:0;left:0;bottom:0;width:min(280px,86vw);z-index:50;transform:translate(-105%);transition:transform .22s var(--ease);border-right:1px solid var(--line);border-bottom:0;box-shadow:18px 0 40px #00000059;height:100%;height:100dvh;padding-bottom:max(28px,var(--safe-bottom))}.app-shell.nav-open .side{transform:translate(0)}.main{flex:1 1 auto;min-height:0;padding:16px 14px;padding-bottom:max(28px,var(--safe-bottom));overflow-x:hidden;overflow-y:auto}.main-map{padding:0;height:auto;min-height:0;flex:1 1 auto;overflow:hidden}.grid.stats{grid-template-columns:1fr}.map-admin{width:min(100vw - 16px,380px);max-height:min(70vh,560px);min-width:0}.map-players{max-width:min(46vw,180px)}.console-form{flex-direction:column;align-items:stretch}.perm-roles{grid-template-columns:1fr}}@media(max-width:960px),(pointer:coarse){.map-player:not(.active) .map-player-meta{display:none}}@media(min-width:961px){.topbar,.nav-backdrop{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.mods-drop{border:1px dashed rgba(126,214,168,.45);border-radius:16px;padding:36px 18px;text-align:center;color:var(--muted);background:#00000038}.mods-drop:hover{border-color:var(--accent);color:var(--text)}.console-form{display:flex;gap:10px;margin-top:12px;align-items:flex-start;flex:0 0 auto;padding-bottom:max(0px,var(--safe-bottom))}.console-input-wrap{position:relative;flex:1;min-width:0}.console-input-wrap input{width:100%}.console-suggest{list-style:none;margin:0 0 6px;padding:6px;position:absolute;left:0;right:0;bottom:100%;top:auto;z-index:20;border:1px solid var(--line);border-radius:12px;background:#0c1210f5;box-shadow:0 -12px 40px #00000073;max-height:min(240px,40vh);overflow:auto}.console-suggest button{width:100%;text-align:left;border:0;background:transparent;color:var(--muted);padding:8px 10px;border-radius:8px}.console-suggest button:hover,.console-suggest button.active{background:#7ed6a81f;color:var(--text)}.perm-owner-note{margin:0 0 14px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#7ed6a80f;color:var(--muted);font-size:.82rem}.perm-roles{display:grid;grid-template-columns:1fr 1fr;gap:14px}.perm-role{border:1px solid var(--line);border-radius:12px;padding:10px;background:#0000002e;min-width:0}.perm-role-title{display:block;font-family:var(--font-display);font-weight:700;font-size:.9rem;margin-bottom:6px;letter-spacing:-.01em}.perm-group{margin-top:8px}.perm-group:first-of-type{margin-top:0}.perm-group-label{display:block;color:var(--muted);font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;margin-bottom:2px}.perm-group-note{display:block;color:var(--muted);font-size:.68rem;margin:0 0 4px;opacity:.85}.perm-row{width:100%;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;text-align:left;border:1px solid transparent;background:transparent;border-radius:8px;padding:4px 6px;color:var(--text);transition:.14s var(--ease)}.perm-row:hover{border-color:var(--line);background:#7ed6a80d}.perm-row.on{border-color:#ffb4544d;background:#ffb45412}.perm-row strong{display:block;font-size:.8rem;font-weight:600;line-height:1.2}.perm-row span{display:block;color:var(--muted);font-size:.66rem;margin-top:1px;font-weight:400;line-height:1.25}.perm-switch{width:32px;height:18px;border-radius:999px;border:1px solid var(--line);background:#00000059;position:relative;flex:0 0 auto}.perm-switch:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--muted);transition:.14s var(--ease)}.perm-row.on .perm-switch{border-color:#ffb4548c;background:#ffb45438}.perm-row.on .perm-switch:after{left:16px;background:var(--accent-hot)}.bluemap-page{display:flex;flex-direction:column;height:100%;min-height:0;gap:10px}.bluemap-setup{flex:0 0 auto}.bluemap-viewport{position:relative;flex:1;min-height:0;overflow:hidden;border-radius:14px;border:1px solid var(--line);background:#00000059}.bluemap-frame,.bluemap-frame-fallback{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;border-radius:14px;background:#0a0f0d}.bluemap-frame-fallback{display:grid;place-items:center;color:var(--muted);padding:24px}.map-players-row.offline img{filter:grayscale(1) brightness(.75);opacity:.8}.map-players-panel .map-player-head{position:relative;flex:0 0 auto}.map-players-panel .map-player-crown{font-size:.7rem}.cl-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.cl-head .page-sub{margin-bottom:18px}.cl-head-actions{display:flex;flex-wrap:wrap;gap:6px}.cl-list{display:grid;gap:8px}.cl-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.03),transparent 42%),#0000002e;transition:border-color .16s var(--ease),transform .16s var(--ease)}.cl-row.is-busy{opacity:.72}.cl-row.cl-error{border-color:#ff6b6b59}.cl-row.cl-online{border-color:#7ed6a859}.cl-row.cl-ready{border-color:#6eb8ef52}.cl-row.cl-connecting{border-color:#f0c67459}.cl-side{display:grid;justify-items:end;gap:8px}.cl-title-row{display:flex;align-items:center;gap:10px;min-width:0}.cl-title-row .cl-status{margin-top:0;flex:0 0 auto}.cl-client-toggle{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;letter-spacing:.04em;cursor:pointer;padding:0}.cl-client-toggle:disabled{opacity:.45;cursor:not-allowed}.cl-client-toggle.on{color:#d7ecff}.cl-client-toggle.on .perm-switch{border-color:#6eb8ef8c;background:#6eb8ef38}.cl-client-toggle.on .perm-switch:after{left:16px;background:#8ec8f5}.cl-thumb{position:relative;flex:0 0 auto;width:72px;height:72px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#00000059;display:grid;place-items:center}.cl-thumb img{width:100%;height:100%;object-fit:cover;display:block;image-rendering:pixelated;image-rendering:crisp-edges}.cl-thumb-empty{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.cl-thumb-chunk{position:absolute;left:33.333%;top:33.333%;width:33.333%;height:33.333%;border:1.5px solid rgba(255,196,72,.92);box-shadow:0 0 0 1px #00000059;pointer-events:none}.cl-thumb-pin{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:999px;background:var(--accent-hot);border:2px solid rgba(255,255,255,.85);box-shadow:0 0 0 2px #ffb4544d;pointer-events:none}.cl-meta{display:grid;gap:3px;min-width:0}.cl-name{font-family:var(--font-display);font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cl-coords{font-family:var(--font-mono);font-size:.8rem;color:var(--accent)}.cl-sub{font-size:.72rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cl-status{display:inline-flex;align-items:center;gap:6px;margin-top:3px;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.cl-status.cl-online{color:#b8f0d0}.cl-status.cl-ready{color:#9fd4ff}.cl-status.cl-ready .dot{background:#6eb8ef}.cl-status.cl-connecting{color:var(--warn)}.cl-status.cl-connecting .dot{background:var(--warn);animation:cl-blink 1.1s var(--ease) infinite}.cl-status.cl-error{color:#ffc0c0}.cl-detail{margin:0;font-size:.72rem;line-height:1.4;color:#ffc0c0;word-break:break-word}.cl-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.cl-actions .btn{flex:0 0 auto;padding:7px 12px;font-size:.78rem}.cl-btn-small{padding:6px 10px;font-size:.7rem;color:var(--muted)}.cl-actions .btn:disabled,.cl-modal .btn:disabled{opacity:.45}.cl-empty,.cl-notice{display:grid;justify-items:start;gap:4px}.cl-empty .page-sub,.cl-notice .page-sub{margin:0 0 6px}.cl-notice{margin-bottom:12px;border-color:#f0c67466}.cl-hint{font-size:.66rem;color:var(--muted)}.cl-hint.bad{color:#ffc0c0}.cl-player-pick-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.cl-player-pick-row .search-select{min-width:0}.cl-player-pick-row .btn{white-space:nowrap}.cl-log-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:0 16px 10px}.cl-log-usage{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:.78rem;color:var(--text)}.cl-log-usage em{font-style:normal;color:var(--muted);margin-right:4px}.cl-log-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.cl-log-controls .btn{padding:7px 12px;font-size:.78rem}.cl-modal{width:min(460px,100%)}.cl-form .field{margin-bottom:0}.cl-coord-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cl-modal-actions{align-items:center}.cl-modal-delete{margin-right:auto}@media(max-width:720px){.cl-row{grid-template-columns:56px minmax(0,1fr)}.cl-side{grid-column:1 / -1;justify-items:stretch}.cl-side .cl-actions{display:grid;grid-template-columns:1fr 1fr auto}}.cl-log-modal{width:min(760px,100%)}.cl-log-view{min-height:160px;max-height:min(58vh,480px);overflow:auto;border:1px solid var(--line);border-radius:12px;padding:12px;background:#0000004d;font-family:var(--font-mono);font-size:.74rem;line-height:1.5}.cl-log-line{white-space:pre-wrap;word-break:break-word}.cl-log-line.err{color:#ffc0c0}.cl-log-time{margin-right:8px;color:var(--muted)}.cl-log-empty{color:var(--muted)}.cl-log-path{margin:8px 0 0;word-break:break-all;font-family:var(--mono, ui-monospace, monospace);font-size:.68rem}.cl-log-foot{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;font-size:.7rem;color:var(--muted)}.cl-log-foot .cl-status{margin-right:auto}@keyframes cl-blink{0%,to{opacity:1}50%{opacity:.25}}.stats-page{gap:16px}.stats-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stats-tile{position:relative;overflow:hidden;border-radius:18px;border:1px solid rgba(186,255,220,.16);background:radial-gradient(120% 90% at 0% 0%,rgba(126,214,168,.16),transparent 55%),linear-gradient(165deg,#16241ff2,#0a100ef0);padding:16px 16px 14px;min-height:112px;box-shadow:0 18px 40px #00000038}.stats-tile span{display:block;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.stats-tile strong{display:block;margin-top:8px;font-family:var(--font-display);font-size:1.85rem;letter-spacing:-.03em;line-height:1.05}.stats-tile em{display:block;margin-top:8px;color:var(--muted);font-style:normal;font-size:.78rem}.stats-tile.ok{border-color:#5ddea473}.stats-tile.warn{border-color:#f0c67480}.stats-tile.bad{border-color:#ff6b6b73}.stats-tile.accent{border-color:#7ed6a866}.stats-split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stats-dl{display:grid;gap:10px;margin:0}.stats-dl div{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:baseline}.stats-dl dt{color:var(--muted);font-size:.78rem}.stats-dl dd{margin:0;font-weight:600}.stats-players{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;list-style:none;margin:0;padding:0}.stats-players li{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;background:#ffffff08;padding:10px 12px}.stats-players img{width:28px;height:28px;border-radius:6px}.stats-players strong,.stats-players span{display:block}.stats-players span{color:var(--muted);font-size:.75rem}.stats-worlds{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.stats-world{border:1px solid var(--line);border-radius:14px;padding:12px;background:#7ed6a80d}.stats-world strong,.stats-world span,.stats-world em{display:block}.stats-world span,.stats-world em{color:var(--muted);font-style:normal;font-size:.75rem;margin-top:4px}.devices-card{max-width:640px}.devices-lead{margin:0 0 18px;color:var(--muted)}.device-code{font-family:var(--font-mono);font-size:clamp(2rem,6vw,3.4rem);font-weight:700;letter-spacing:.14em;text-align:center;padding:28px 16px;border-radius:20px;border:1px solid rgba(126,214,168,.28);background:radial-gradient(80% 120% at 50% -20%,rgba(126,214,168,.2),transparent 60%),#0a1210;box-shadow:inset 0 0 0 1px #ffffff08}.device-code-empty{color:var(--muted);letter-spacing:.28em}.device-code-meta{display:flex;justify-content:space-between;gap:12px;margin:14px 0 16px;color:var(--muted);font-size:.85rem}@media(max-width:900px){.stats-hero,.stats-split{grid-template-columns:1fr 1fr}}@media(max-width:640px){.stats-hero,.stats-split,.login-tabs-3{grid-template-columns:1fr}.stats-dl div{grid-template-columns:1fr;gap:2px}}
