:root{color-scheme:dark;--bg: #0d1117;--bg-elev: #151b24;--bg-elev-2: #1c2430;--border: #2a3544;--text: #e7eef8;--muted: #93a1b5;--accent: #e8a23a;--accent-2: #3d8bfd;--danger: #f07178;--ok: #7fd99a;--shadow: 0 10px 30px rgba(0, 0, 0, .35);font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.45}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 600px at 10% -10%,rgba(232,162,58,.12),transparent 50%),radial-gradient(900px 500px at 100% 0%,rgba(61,139,253,.1),transparent 45%),var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.app-shell{max-width:1200px;margin:0 auto;padding:1rem 1.25rem 2rem}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.85rem 1rem;background:#151b24e6;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand{display:flex;gap:.75rem;align-items:center}.brand-mark{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,var(--accent),#c46b1a);color:#1a1206}.brand-title{font-weight:700}.brand-sub{color:var(--muted);font-size:.85rem}.nav{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.nav a{padding:.45rem .75rem;border-radius:8px;color:var(--muted)}.nav a.active,.nav a:hover{background:var(--bg-elev-2);color:var(--text)}.main{min-height:60vh}.center-screen{min-height:100vh;display:grid;place-items:center;gap:.75rem;padding:1rem}.login-bg{background:radial-gradient(800px 400px at 50% 0%,rgba(232,162,58,.18),transparent 60%),var(--bg)}.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:.8rem}.login-card h1,.login-card>p{margin:0}.login-card>.btn{width:100%}.login-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.15rem .9rem;padding-top:.7rem;border-top:1px solid var(--border)}.login-actions .btn{border-color:transparent;background:transparent;color:var(--muted);padding:.2rem .1rem;font-weight:500}.login-actions .btn:hover:not(:disabled){border-color:transparent;color:var(--accent);filter:none;text-decoration:underline}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:14px;padding:1rem 1.1rem;box-shadow:var(--shadow)}.card h2{margin:0 0 .35rem;font-size:1rem;font-weight:700}.muted{color:var(--muted)}.muted-block{color:var(--muted);font-size:.95rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);border-radius:9px;padding:.5rem .85rem;cursor:pointer;font-weight:600}.btn:hover:not(:disabled){border-color:#3d4b5e;filter:brightness(1.08)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:linear-gradient(135deg,var(--accent),#c46b1a);border-color:transparent;color:#1a1206}.btn.danger{background:#f0717826;border-color:#f0717873;color:#ffb4b8}.btn.ghost{background:transparent}.btn.small{padding:.3rem .55rem;font-size:.85rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--muted)}label.inline{flex-direction:row;align-items:center;gap:.5rem}input,select,textarea{background:#0f141c;border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.55rem .7rem;font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid rgba(232,162,58,.35);border-color:var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-grid.compact{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.form-grid .full{grid-column:1 / -1}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stack{display:flex;flex-direction:column;gap:1rem}.row{display:flex;gap:.5rem;align-items:center}.row.between{justify-content:space-between}.row.right{justify-content:flex-end}.row.wrap{flex-wrap:wrap}.grow{flex:1;min-width:180px}.identity-dossier-modal{max-height:min(90vh,960px);overflow:auto}.identity-link-panel{padding:.75rem .85rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-elev-2)}.identity-link-form{gap:.5rem;align-items:center}.identity-profiles{display:flex;flex-direction:column;gap:.85rem}.identity-profile-section{border:1px solid var(--border);border-radius:12px;background:#0000001f;overflow:hidden}.identity-profile-head{padding:.7rem .85rem;border-bottom:1px solid var(--border);background:var(--bg-elev-2);gap:.5rem}.identity-profile-body{padding:.75rem .85rem .9rem}.platform-pill.xbox{color:#9ee0b0;border-color:#7fd99a66}.platform-pill.psn{color:#9ec0f0;border-color:#64a0f066}.platform-pill.unknown,.platform-pill.mac{color:var(--muted)}.platform-pill{display:inline-block;font-size:.75rem;font-weight:600;padding:.15rem .45rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elev-2);white-space:nowrap}.platform-pill.steam{border-color:#3d8bfd73;color:#9ec5ff}.platform-pill.eos{border-color:#e8a23a73;color:#f0c57a}.ban-permanent{color:var(--danger);font-weight:600}.ban-reason{max-width:28rem;word-break:break-word}.avatar{border-radius:6px;border:1px solid var(--border);flex-shrink:0;background:var(--bg)}.name-link{color:var(--accent-2);font-weight:600}.name-link:hover{text-decoration:underline}.info-btn{width:1.35rem;height:1.35rem;border-radius:999px;border:1px solid var(--border);font-size:.75rem;font-weight:700;font-style:italic;font-family:Georgia,Times New Roman,serif;line-height:1;display:inline-grid;place-items:center;cursor:pointer;padding:0;flex-shrink:0;transition:background .15s,border-color .15s,color .15s}.info-btn.no-info{background:transparent;color:var(--muted);border-color:#3a4555}.info-btn.has-info{background:#3d8bfd2e;color:#9ec5ff;border-color:#3d8bfd8c}.info-btn:hover:not(:disabled){border-color:var(--accent-2);color:#cfe2ff}.info-btn:disabled{opacity:.4;cursor:not-allowed}.name-with-info{display:inline-flex;align-items:center;gap:.4rem;max-width:100%}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#04080eb8;display:grid;place-items:center;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(920px,100%);max-height:min(88vh,900px);overflow:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:1.1rem 1.2rem 1.25rem}.note-editor{width:100%;min-height:7.5rem;resize:vertical;font-family:inherit;line-height:1.45}.note-own{padding:.75rem .85rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:12px}.note-author-label{font-size:.85rem;font-weight:600;color:var(--text)}.note-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.note-card{padding:.65rem .75rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:10px}.note-card-head{margin-bottom:.35rem;gap:.5rem;align-items:baseline}.note-card-body{white-space:pre-wrap;word-break:break-word;font-size:.92rem;line-height:1.45;color:var(--text)}.history-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.history-line{display:flex;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:10px;font-size:.9rem;line-height:1.4}.history-line-text{flex:1;min-width:0;word-break:break-word;color:var(--text)}.history-pager{margin-top:.75rem;align-items:center}.action-pill{display:inline-block;flex-shrink:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.12rem .4rem;border-radius:6px;border:1px solid var(--border);margin-top:.1rem}.action-pill.action-kick{color:#f0c57a;border-color:#e8a23a73}.action-pill.action-ban,.action-pill.action-permban{color:#f5a0a6;border-color:#f0717873}.action-pill.action-unban{color:#9ee0b0;border-color:#7fd99a66}textarea{width:100%;resize:vertical;min-height:4rem;background:#0f141c;border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.55rem .7rem;font:inherit}.alert{border-radius:10px;padding:.65rem .8rem;border:1px solid var(--border)}.alert.error{background:#f071781f;border-color:#f0717866;color:#ffc2c5}.alert.ok{background:#7fd99a1f;border-color:#7fd99a59;color:#b9f0c8}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.stat-label{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.stat-value{font-size:1.05rem;font-weight:700;margin-top:.25rem;word-break:break-word}.pill{padding:.35rem .7rem;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.04em;border:1px solid var(--border)}.pill.online{background:#7fd99a1f;color:var(--ok);border-color:#7fd99a59}.pill.offline{background:#f071781f;color:#ffb4b8;border-color:#f0717859}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.55rem .45rem;border-bottom:1px solid var(--border);font-size:.92rem}th{color:var(--muted);font-weight:600}tbody tr{cursor:pointer}tbody tr:hover,tbody tr.selected{background:#3d8bfd14}.console-out,.code-block{margin-top:.85rem;background:#0a0e14;border:1px solid var(--border);border-radius:10px;padding:.8rem;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;min-height:120px;color:#c9d5e5}.code-block{min-height:auto;color:#f0d4a0}.totp-qr{display:inline-flex;align-items:center;justify-content:center;padding:.75rem;background:#fff;border:1px solid var(--border);border-radius:12px;width:fit-content}.totp-qr svg{display:block}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:spin .8s linear infinite}.chart-card h2{margin-top:0;margin-bottom:0}.chart-card-compact{background:transparent;border:none;box-shadow:none;padding:0;margin:0}.range-tabs{display:flex;flex-wrap:wrap;gap:.35rem}.chart-summary .chip,.chip{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;padding:.3rem .7rem;font-size:.85rem;color:var(--muted)}.chart-summary .chip strong,.chip strong{color:var(--text);margin-left:.2rem}.chart-wrap{margin-top:.75rem;width:100%;min-height:260px}.chart-wrap-compact{min-height:160px;margin-top:.5rem}.chart-empty{min-height:260px;display:grid;place-items:center;text-align:center;padding:1.5rem;border:1px dashed var(--border);border-radius:10px;background:#0a0e14}.chart-empty-compact{min-height:160px;padding:1rem;font-size:.9rem}.chart-tooltip{background:linear-gradient(165deg,#1c2430fa,#0f141cfa);border:1px solid rgba(232,162,58,.28);border-radius:12px;padding:.65rem .75rem .7rem;color:var(--text);min-width:160px;max-width:min(420px,85vw);max-height:min(280px,70vh);overflow-y:auto;box-shadow:0 12px 32px #00000073,0 0 0 1px #ffffff08 inset;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chart-tooltip-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem;padding-bottom:.5rem;border-bottom:1px solid rgba(42,53,68,.9)}.chart-tooltip-meta{display:flex;align-items:center;gap:.4rem;min-width:0}.chart-tooltip-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px #00000040}.chart-tooltip-dot.on{background:var(--ok);box-shadow:0 0 8px #7fd99a8c}.chart-tooltip-dot.off{background:#ffb4b8;box-shadow:0 0 8px #f0717866}.chart-tooltip-time{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-tooltip-count{font-size:1.05rem;font-weight:700;letter-spacing:-.02em;color:var(--accent);font-variant-numeric:tabular-nums;flex-shrink:0}.chart-tooltip-count strong{font-weight:800}.chart-tooltip-max{color:var(--muted);font-weight:600;font-size:.9rem;margin-left:.05rem}.chart-tooltip-names{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.28rem}.chart-tooltip-names li{display:inline-flex;align-items:center;gap:.3rem;max-width:100%;padding:.14rem .4rem .14rem .18rem;border-radius:999px;background:#0a0e148c;border:1px solid rgba(42,53,68,.7)}.chart-tooltip-avatar{width:1.1rem;height:1.1rem;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:.62rem;font-weight:800;color:#1a1206;background:linear-gradient(135deg,var(--accent),#c46b1a)}.chart-tooltip-name{font-size:.78rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:11rem}.chart-tooltip-empty{font-size:.8rem;color:var(--muted);font-style:italic;padding:.15rem .1rem 0}.chart-share-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.chart-share-msg{font-size:.8rem;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-chart-page{min-height:100vh;max-width:1100px;margin:0 auto;padding:1.25rem 1.25rem 2rem}.shared-chart-header{margin-bottom:.85rem}.shared-chart-title{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.shared-stats-page{display:flex;flex-direction:column;gap:1rem}html.shared-embed-plain,body.shared-embed-plain{background:transparent!important;background-image:none!important;min-height:0}.shared-chart-page.shared-chart-plain{min-height:0;max-width:none;margin:0;padding:0;background:transparent}.shared-chart-page.shared-chart-no-title .shared-chart-header{display:none}.chart-card-plain{background:transparent;border:none;box-shadow:none;padding:0;margin:0}.chart-wrap-plain{margin-top:.5rem}.shared-chart-plain .chart-wrap-plain{margin-top:0}.shared-chart-plain .chart-summary .chip,.shared-chart-plain .chip{background:transparent;border-color:#93a1b559}.overview-filters{padding:.85rem 1rem}.overview-filter-count{font-size:.9rem;padding-bottom:.35rem;white-space:nowrap}.server-overview-list{display:flex;flex-direction:column;gap:.85rem}.server-overview-row{cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease;outline:none}.server-overview-row:hover{border-color:#e8a23a73;background:#e8a23a0a}.server-overview-row:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px #e8a23a59}.server-overview-row-head{margin-bottom:.65rem;gap:.75rem}.server-overview-name{margin:0;font-size:1.15rem;font-weight:700}.server-overview-game{margin-top:.15rem;font-size:.9rem}.server-overview-chart .card{pointer-events:auto}.server-detail-title{margin:0;font-size:1.25rem;font-weight:700}.server-detail-header{position:relative}.server-detail-header-flags{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.manage-shares-popover{position:absolute;right:0;top:calc(100% + .3rem);z-index:50;width:22rem;max-width:min(22rem,calc(100vw - 1.5rem));padding:.7rem .75rem .85rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.7rem}.manage-shares-title{margin:0;font-size:.95rem;font-weight:700}.manage-shares-kind{display:flex;flex-direction:column;gap:.35rem}.manage-shares-kind+.manage-shares-kind{padding-top:.65rem;border-top:1px solid var(--border)}.manage-shares-kind-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45rem .6rem}.manage-shares-kind-name{font-weight:650;font-size:.88rem}.manage-shares-kind-desc{margin:0;font-size:.78rem;color:var(--muted);line-height:1.35}.manage-shares-kind-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.manage-shares-live{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ok)}.manage-shares-msg{font-size:.78rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}code.steam-id{font-size:.78rem;color:var(--muted);word-break:break-all}.rank-badge{display:inline-block;min-width:2.4rem;text-align:center;font-weight:700;font-size:.85rem;padding:.15rem .4rem;border-radius:6px;background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text)}.rank-badge.gold{background:#e8a23a33;border-color:#e8a23a8c;color:#f0c36a}.rank-badge.silver{background:#b4bed226;border-color:#b4bed266;color:#d0d8e8}.rank-badge.bronze{background:#c478462e;border-color:#c4784673;color:#e0a070}.players-page .page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.players-page .page-header h1{margin:0;font-size:1.35rem}.players-toolbar{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-bottom:1rem;align-items:flex-end}.players-toolbar .field{display:flex;flex-direction:column;gap:.3rem;min-width:10rem;flex:1 1 10rem;max-width:18rem}.players-toolbar .field>span{font-size:.78rem;font-weight:600;color:var(--muted);letter-spacing:.02em}.players-toolbar input,.players-toolbar select{width:100%}.players-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.players-table th.sortable:hover{color:var(--text)}.players-online-pill{margin-left:.45rem;padding:.1rem .45rem;font-size:.7rem;vertical-align:middle}.players-server-count{white-space:nowrap}.players-detail-row,.players-detail-row:hover,tbody tr.players-detail-row{cursor:default;background:#0000002e}tbody tr.no-row-click,tbody tr.no-row-click:hover{cursor:default}.players-detail{padding:.35rem .25rem .65rem}.players-detail table{margin:0;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:10px;overflow:hidden}.players-detail th,.players-detail td{font-size:.86rem}.players-detail tbody tr{cursor:default}.players-detail tbody tr:hover{background:transparent}.players-pager{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:.85rem}.players-page-label{display:inline-flex;align-items:center;gap:.25rem;flex-wrap:wrap}.page-number-input{width:3.1rem;min-width:2.5rem;padding:.12rem .25rem;margin:0 .1rem;text-align:center;font:inherit;font-variant-numeric:tabular-nums;color:var(--text);background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.page-number-input::-webkit-outer-spin-button,.page-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.page-number-input:focus{outline:none;border-color:#3d8bfda6;box-shadow:0 0 0 2px #3d8bfd2e}.page-number-input:disabled{opacity:.6}.expand-hint{font-size:.75rem}@keyframes spin{to{transform:rotate(360deg)}}.pw-map-section{gap:.65rem}.pw-map-footnote{margin:0;font-size:.8rem;line-height:1.4}.pw-map{display:flex;flex-direction:column;gap:.55rem}.pw-map-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.55rem .75rem}.pw-map-layers{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;flex:1 1 16rem}.pw-map-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-left:auto}.pw-layer-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);background:var(--bg-elev);color:var(--muted);border-radius:999px;padding:.22rem .55rem .22rem .4rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.pw-layer-chip:hover{border-color:#93a1b58c;color:var(--text)}.pw-layer-chip.on{color:var(--text);border-color:#3d8bfd73;background:#3d8bfd1f}.pw-layer-chip.camps.on{border-color:#e8a23a80;background:#e8a23a1f}.pw-layer-chip.workers.on{border-color:#a78bfa73;background:#a78bfa1f}.pw-layer-chip.wild.on{border-color:#7fd99a73;background:#7fd99a1a}.pw-layer-chip.npcs.on{border-color:#f472b673;background:#f472b61a}.pw-layer-count{font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:700;min-width:1.1rem;text-align:center;padding:.05rem .28rem;border-radius:999px;background:#00000047;color:var(--muted)}.pw-layer-chip.on .pw-layer-count{color:var(--text)}.pw-layer-presets{display:inline-flex;gap:.2rem;margin-left:.15rem}.pw-map-filter{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.pw-map-swatch{width:.65rem;height:.65rem;border-radius:50%;box-shadow:0 0 0 1px #0006;flex:0 0 auto}.pw-map-swatch.player,.pw-map-swatch.players{background:var(--accent-2)}.pw-map-swatch.camp,.pw-map-swatch.camps{background:var(--accent);border-radius:3px}.pw-map-swatch.worker,.pw-map-swatch.workers{background:#a78bfa}.pw-map-swatch.wild{background:#7fd99a}.pw-map-swatch.npc,.pw-map-swatch.npcs{background:#f472b6;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border-radius:0}.pw-map-swatch.otomo{background:#67e8f9}.pw-map-viewport{position:relative;height:min(68vh,620px);border-radius:14px;border:1px solid var(--border);background:radial-gradient(ellipse at 30% 20%,rgba(61,139,253,.08),transparent 50%),#0a0e14;overflow:hidden;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;box-shadow:inset 0 0 0 1px #ffffff08}.pw-map-viewport:active{cursor:grabbing}.pw-map-stage{position:absolute;left:50%;top:50%;transform-origin:center center}.pw-map-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none;display:block;image-rendering:auto}.pw-map-markers{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;transform:none;contain:layout style}.pw-map-marker{position:absolute;border:0;background:transparent;padding:0;margin:0;cursor:pointer;pointer-events:auto;z-index:2;display:flex;flex-direction:column;align-items:center;gap:.15rem;color:var(--text);font-family:inherit;font-size:12px;line-height:1;width:max-content;max-width:9rem;transform:translate(-50%,-50%);transform-origin:center center}.pw-map-marker-dot{position:relative;flex:0 0 auto;width:12px;height:12px;min-width:12px;min-height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #000000a6;box-sizing:border-box;background:var(--accent-2)}.pw-map-marker.dense .pw-map-marker-dot{width:8px;height:8px;min-width:8px;min-height:8px;max-width:8px;max-height:8px;border-width:1.5px}.pw-map-marker.player .pw-map-marker-dot{background:var(--accent-2)}.pw-map-marker.camp .pw-map-marker-dot{background:var(--accent);border-radius:3px}.pw-map-marker.worker .pw-map-marker-dot{background:#a78bfa}.pw-map-marker.wild .pw-map-marker-dot{background:#7fd99a}.pw-map-marker.npc .pw-map-marker-dot{background:#f472b6;border-radius:2px;transform:rotate(45deg)}.pw-map-marker.otomo .pw-map-marker-dot{background:#67e8f9}.pw-map-facing{position:absolute;left:50%;top:50%;width:0;height:0;margin-left:-3px;margin-top:-14px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:7px solid #fff;filter:drop-shadow(0 0 1px rgba(0,0,0,.8));transform-origin:50% 14px;pointer-events:none}.pw-map-marker.selected .pw-map-marker-dot,.pw-map-marker:hover .pw-map-marker-dot{box-shadow:0 0 0 3px #e8a23a73,0 1px 4px #000000a6}.pw-map-marker-label{flex:0 0 auto;font-size:11px;font-weight:600;line-height:1.15;padding:.12rem .35rem;border-radius:5px;background:#0d1117e0;border:1px solid var(--border);white-space:nowrap;max-width:9rem;overflow:hidden;text-overflow:ellipsis;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pw-map-marker.selected .pw-map-marker-label{border-color:var(--accent);color:#f0c36a}.pw-map-marker.following .pw-map-marker-dot{box-shadow:0 0 0 3px #3d8bfd8c,0 1px 4px #000000a6;animation:pw-pulse 1.6s ease-in-out infinite}@keyframes pw-pulse{0%,to{box-shadow:0 0 0 3px #3d8bfd73,0 1px 4px #000000a6}50%{box-shadow:0 0 0 6px #3d8bfd33,0 1px 4px #000000a6}}@media (prefers-reduced-motion: reduce){.pw-map-marker.following .pw-map-marker-dot{animation:none}}.pw-map-following{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;color:var(--accent-2);padding:.12rem .25rem .12rem .45rem;border-radius:8px;border:1px solid rgba(61,139,253,.35);background:#3d8bfd1a}.pw-map-legend-wrap{position:relative}.pw-map-legend-pop{position:absolute;right:0;top:calc(100% + .35rem);z-index:5;min-width:11rem;padding:.55rem .7rem;border-radius:10px;border:1px solid var(--border);background:#151b24f7;box-shadow:var(--shadow);display:grid;gap:.3rem;font-size:.8rem}.pw-map-legend-pop>div{display:flex;align-items:center;gap:.4rem}.pw-map-zoom-label{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums;min-width:2.6rem}.pw-map-hud{position:absolute;left:.6rem;right:.6rem;bottom:.55rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.45rem 1rem;align-items:center;font-size:.78rem;padding:.4rem .6rem;border-radius:10px;background:#0d1117d1;border:1px solid var(--border);pointer-events:none;z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pw-map-hud-left,.pw-map-hud-right{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .75rem}.pw-map-clock{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.pw-map-hud-selected{color:#f0c36a;max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-map-hud-follow{color:var(--accent-2);font-weight:600}tr.pw-row-selected{background:#e8a23a1f;outline:1px solid rgba(232,162,58,.35)}.pw-world-table tr{-webkit-user-select:none;user-select:none}.shared-map-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text)}.shared-map-center{align-items:center;justify-content:center;gap:.75rem}.shared-map-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.85rem 1.1rem;border-bottom:1px solid var(--border);background:#151b24eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex:0 0 auto}.shared-map-title{margin:0;font-size:1.15rem;font-weight:700}.shared-map-sub{margin:.15rem 0 0;font-size:.85rem}.shared-map-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:.65rem .85rem .85rem}.shared-map-body .pw-map{flex:1 1 auto;min-height:0}.pw-map-body{display:flex;gap:.65rem;align-items:stretch;width:100%}.pw-map-body .pw-map-viewport{flex:1 1 auto;width:100%;min-height:min(68vh,620px)}.pw-map-fullscreen{height:100%;min-height:0;display:flex;flex-direction:column}.pw-map-fullscreen .pw-map-body{flex:1 1 auto;min-height:0}.pw-map-fullscreen .pw-map-body .pw-map-viewport,.pw-map-viewport-fill{flex:1 1 auto;height:auto!important;min-height:280px;max-height:none}.pw-map-fullscreen .pw-map-viewport{height:calc(100vh - 9.5rem);max-height:none}.pw-map-roster{flex:0 0 15.5rem;max-width:16.5rem;display:flex;flex-direction:column;min-height:0;border-radius:14px;border:1px solid var(--border);background:linear-gradient(165deg,#1c2430f2,#0f141cfa);box-shadow:var(--shadow);overflow:hidden}.pw-map-roster-head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .85rem .55rem;border-bottom:1px solid var(--border)}.pw-map-roster-title{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.pw-map-roster-count{font-size:.75rem;font-weight:700;font-variant-numeric:tabular-nums;min-width:1.4rem;text-align:center;padding:.1rem .4rem;border-radius:999px;background:#3d8bfd26;color:var(--accent-2);border:1px solid rgba(61,139,253,.3)}.pw-map-roster-list{list-style:none;margin:0;padding:.4rem;overflow-y:auto;flex:1 1 auto;display:flex;flex-direction:column;gap:.25rem}.pw-map-roster-item{display:flex;align-items:center;gap:.2rem;border-radius:10px;border:1px solid transparent;background:transparent;transition:background .12s ease,border-color .12s ease}.pw-map-roster-item:hover{background:#ffffff0a}.pw-map-roster-item.active{border-color:#e8a23a66;background:#e8a23a14}.pw-map-roster-item.tracking{border-color:#3d8bfd73;background:#3d8bfd1a}.pw-map-roster-main{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:.5rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:.45rem .35rem .45rem .5rem;border-radius:10px}.pw-map-roster-dot{flex:0 0 auto;width:.55rem;height:.55rem;border-radius:50%;background:var(--accent-2);box-shadow:0 0 0 2px #3d8bfd40}.pw-map-roster-item.tracking .pw-map-roster-dot{box-shadow:0 0 0 3px #3d8bfd66}.pw-map-roster-info{display:flex;flex-direction:column;gap:.12rem;min-width:0}.pw-map-roster-name{font-size:.88rem;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-map-roster-meta{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-map-roster-follow{flex:0 0 auto;border:1px solid rgba(61,139,253,.35);background:#3d8bfd1a;color:var(--accent-2);font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:.28rem .4rem;border-radius:7px;cursor:pointer;margin-right:.3rem;opacity:0;transition:opacity .12s ease,background .12s ease}.pw-map-roster-item:hover .pw-map-roster-follow,.pw-map-roster-item.active .pw-map-roster-follow,.pw-map-roster-follow:focus-visible{opacity:1}.pw-map-roster-follow:hover{background:#3d8bfd38}.pw-map-roster-badge{flex:0 0 auto;font-size:.65rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-2);padding:.22rem .4rem;margin-right:.35rem;border-radius:6px;background:#3d8bfd2e;border:1px solid rgba(61,139,253,.35)}.pw-map-roster-empty{margin:1rem .85rem;font-size:.85rem}.pw-map-roster-hint{margin:0;padding:.45rem .75rem .6rem;font-size:.7rem;border-top:1px solid var(--border);line-height:1.35}@media (max-width: 900px){.pw-map-fullscreen .pw-map-viewport{height:calc(100vh - 12rem)}.pw-map-body.has-roster{flex-direction:column}.pw-map-roster{flex:0 0 auto;max-width:none;max-height:9.5rem}.pw-map-roster-list{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}.pw-map-roster-item{flex:0 0 auto;max-width:11rem}.pw-map-roster-hint{display:none}}@media (max-width: 900px){.grid-2,.stats,.form-grid{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}label.chip{display:inline-flex;flex-direction:row;align-items:center;gap:.4rem;cursor:pointer;color:var(--text)}label.chip input[type=checkbox]{margin:0;cursor:pointer}label.chip:has(input:disabled){opacity:.55;cursor:not-allowed}.cf-turnstile{display:flex;justify-content:center;margin:.25rem 0;min-height:65px}.login-card .code-block,.card .code-block{-webkit-user-select:all;user-select:all}.pill.pending{background:#e8a23a24;border-color:#e8a23a66;color:var(--accent)}.pill.locked{background:#f0717824;border-color:#f0717873;color:#f5a0a6}.chip.role-admin{background:#e8a23a24;border-color:#e8a23a66;color:var(--accent);font-weight:600}.invite-form{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.users-table .user-cell{display:flex;flex-direction:column;line-height:1.3}.users-table .user-name{color:var(--text);font-weight:600}.users-table .user-email{font-size:.82rem}.users-table .col-actions{width:1%;white-space:nowrap}.field{display:flex;flex-direction:column;gap:.35rem}.field>label{font-size:.9rem;color:var(--muted)}.settings-form{margin-top:1rem}.modal-save-bar{margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--border)}.access-picker{display:flex;flex-direction:column;gap:.5rem}.access-picker.is-disabled{opacity:.6;pointer-events:none}.access-picker-head{font-size:.85rem}.access-picker-search{width:100%}.access-picker-list{border:1px solid var(--border);border-radius:10px;background:#0f141c;overflow-y:auto;max-height:15rem}.access-picker-empty{margin:0;padding:.8rem}.access-row{flex-direction:row;align-items:center;gap:.65rem;padding:.55rem .7rem;border-bottom:1px solid var(--border);cursor:pointer;color:var(--text);font-size:.9rem}.access-row:last-child{border-bottom:0}.access-row:hover{background:var(--bg-elev-2)}.access-row.is-checked{background:#e8a23a14}.access-row input[type=checkbox]{margin:0;cursor:pointer;flex:0 0 auto}.access-row-main{display:flex;flex-direction:column;gap:.1rem;min-width:0}.access-row-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-row-meta{font-size:.8rem}.user-modal-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.user-modal-section h3{margin:0 0 .6rem;font-size:.95rem}.toggle-switch{display:inline-flex;flex-direction:row;align-items:center;gap:.55rem;margin:0;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--muted);font-size:.85rem;font-weight:500;line-height:1}.toggle-switch-label{white-space:nowrap}.toggle-switch input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}.toggle-switch-track{position:relative;flex:0 0 auto;width:2.5rem;height:1.35rem;border-radius:999px;background:var(--bg-elev-2);border:1px solid var(--border);box-shadow:inset 0 1px 2px #00000059;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.toggle-switch-thumb{position:absolute;top:50%;left:.15rem;width:1.05rem;height:1.05rem;border-radius:50%;background:linear-gradient(180deg,#f0f4fa,#c5d0e0);box-shadow:0 1px 3px #00000073;transform:translateY(-50%);transition:transform .18s ease,background .18s ease}.toggle-switch input:checked+.toggle-switch-track{background:linear-gradient(135deg,#e8a23a73,#e8a23a40);border-color:#e8a23aa6;box-shadow:inset 0 1px 2px #0003,0 0 0 1px #e8a23a26}.toggle-switch input:checked+.toggle-switch-track .toggle-switch-thumb{transform:translate(1.05rem,-50%);background:linear-gradient(180deg,#ffd89a 0%,var(--accent) 100%)}.toggle-switch input:focus-visible+.toggle-switch-track{outline:2px solid var(--accent-2);outline-offset:2px}.toggle-switch:hover .toggle-switch-track{border-color:#3a4a5e}.toggle-switch input:checked:hover+.toggle-switch-track{border-color:#e8a23ad9}.schedules-page{gap:1.15rem;--schedules-control-h: 2.5rem}.schedules-page input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.schedules-page select{height:var(--schedules-control-h);min-height:var(--schedules-control-h);box-sizing:border-box;padding-top:0;padding-bottom:0;line-height:1.25}.schedules-page .btn.small{height:var(--schedules-control-h);min-height:var(--schedules-control-h);box-sizing:border-box;padding-top:0;padding-bottom:0;display:inline-flex;align-items:center;justify-content:center}.schedules-header .btn.small,.schedules-card-head .btn.small{height:var(--schedules-control-h)}.schedules-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.85rem 1.25rem;padding-bottom:.15rem}.schedules-header-text{min-width:0}.schedules-title{margin:0;font-size:1.55rem;font-weight:750;letter-spacing:-.02em;line-height:1.2}.schedules-header-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem}.schedules-stat{display:inline-flex;align-items:baseline;gap:.35rem;font-size:.88rem}.schedules-stat strong{font-size:1.05rem;font-variant-numeric:tabular-nums;color:var(--text)}.schedules-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.65rem 1rem;margin-bottom:.15rem}.card .schedules-card-title{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.schedules-card-hint{margin:.2rem 0 0;font-size:.85rem;line-height:1.35}.schedules-empty{text-align:center;padding:2rem 1.25rem}.schedules-empty-icon{font-size:1.75rem;line-height:1;margin-bottom:.55rem;opacity:.85}.card .schedules-empty-title{margin:0 0 .4rem;font-size:1.05rem;font-weight:700}.schedules-empty-copy{margin:0 auto;max-width:28rem;font-size:.9rem;line-height:1.45}.schedules-empty-copy a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.schedules-list-empty{padding:1.35rem .25rem .5rem}.schedule-form{gap:0;margin-top:.35rem}.form-section{padding:1.15rem 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent}.form-section:first-of-type{padding-top:.55rem;border-top:0}.form-section-title{margin:0 0 .8rem;font-size:.95rem;font-weight:650;color:var(--text);letter-spacing:.01em}.schedules-section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem .85rem;margin-bottom:.75rem}.schedules-form-footer{border-top:1px solid var(--border);padding-top:1.1rem}.schedules-field-label{margin-bottom:.4rem;font-size:.9rem;color:var(--muted);line-height:1.45}.schedules-when{display:grid;grid-template-columns:auto 1fr;gap:1rem 1.5rem;align-items:start}.schedules-when-time,.schedules-when-days{min-width:0}.schedules-days{display:inline-flex;flex-wrap:nowrap;align-items:stretch;gap:0;padding:0;overflow:hidden;height:var(--schedules-control-h);min-height:var(--schedules-control-h);box-sizing:border-box;background:#0f141c;border:1px solid var(--border);border-radius:10px;box-shadow:inset 0 1px 2px #00000047}.schedules-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:650;letter-spacing:.02em;padding:0 .7rem;border-radius:0;cursor:pointer;min-width:2.65rem;height:100%;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;position:relative;transition:background .14s ease,color .14s ease}.schedules-day+.schedules-day{box-shadow:inset 1px 0 0 var(--border)}.schedules-day:hover:not(:disabled):not(.is-active){color:var(--text);background:#ffffff0a}.schedules-day.is-active{background:linear-gradient(135deg,#e8a23a47,#e8a23a29);color:#ffd89a}.schedules-days.is-every .schedules-day.is-active:not(.schedules-day-every){background:#ffffff0d;color:var(--muted)}.schedules-day-every{min-width:auto;padding-left:.8rem;padding-right:.8rem}.schedules-days.is-every .schedules-day-every.is-active{background:linear-gradient(135deg,#e8a23a47,#e8a23a29);color:#ffd89a}.schedules-day:first-child{border-radius:9px 0 0 9px}.schedules-day:last-child{border-radius:0 9px 9px 0}.schedules-day:focus-visible{outline:2px solid var(--accent-2);outline-offset:-2px;z-index:1}.schedules-day:disabled{opacity:.5;cursor:not-allowed}.schedules-day-short{display:none}.schedules-retry{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem}.schedules-retry-input{max-width:12rem}.schedules-items{display:flex;flex-direction:column;gap:.55rem}.schedules-items-empty{margin:0;padding:.75rem .85rem;border:1px dashed var(--border);border-radius:10px;background:#0f141c73;font-size:.88rem}.schedules-actions-gate{display:flex;flex-direction:column;gap:.35rem;padding:1rem;text-align:left}.schedules-actions-gate-title{color:var(--text);font-weight:650;font-size:.92rem}.schedules-server-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:.75rem;align-items:end;max-width:52rem}.schedules-enabled{display:flex;align-items:center;height:var(--schedules-control-h);min-height:var(--schedules-control-h)}.schedule-row-check,.schedule-row-action{display:grid;grid-template-columns:minmax(0,1fr) 8rem auto;gap:.55rem;align-items:end}.schedule-row-action{grid-template-columns:1.7rem minmax(0,1fr) 8rem auto}.schedule-item-type{min-width:0}.schedule-item-value{width:8rem;max-width:100%}.schedule-item{display:flex;flex-direction:column;gap:.5rem;padding:.7rem .75rem;border:1px solid var(--border);border-radius:10px;background:#0f141c59}.schedule-item-main{width:100%}.schedule-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:flex-end;padding:0;border:0;border-radius:0;background:transparent}.schedule-item-index{flex:0 0 auto;width:1.7rem;height:var(--schedules-control-h);min-height:var(--schedules-control-h);box-sizing:border-box;display:grid;place-items:center;align-self:flex-end;border-radius:8px;background:var(--bg-elev-2);border:1px solid var(--border);font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted)}.schedule-item-grow{flex:1 1 10rem;min-width:8.5rem}.schedule-item-narrow{flex:0 1 8.5rem;min-width:6.5rem}.schedule-item-extra{width:100%}.schedule-item-meta{margin:0;font-size:.8rem;line-height:1.35}.field-actions{display:flex;flex-direction:column;gap:.35rem;flex:0 0 auto}.field-actions-label{display:block;font-size:.9rem;line-height:1.45;min-height:1.45em;visibility:hidden;-webkit-user-select:none;user-select:none;pointer-events:none}.field-actions-btns{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;height:var(--schedules-control-h);min-height:var(--schedules-control-h)}.schedule-form .form-grid-3{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;align-items:end}.schedules-table{margin-top:.15rem}.schedules-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.schedules-table td{vertical-align:top;padding-top:.7rem;padding-bottom:.7rem}.schedules-table tbody tr.is-editing{background:#e8a23a0f}.schedules-table .col-actions{width:1%;white-space:nowrap}.schedules-name-cell{min-width:8rem}.schedules-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .5rem}.schedules-name{color:var(--text);font-weight:650}.schedules-name-row .pill{padding:.15rem .45rem;font-size:.7rem;letter-spacing:.03em}.schedules-warn{margin-top:.2rem;font-size:.78rem;color:var(--danger)}.schedules-server{font-weight:550}.schedules-type{margin-top:.15rem;font-size:.78rem}.schedules-when-cell{display:flex;flex-direction:column;gap:.12rem;min-width:5.5rem}.schedules-time{font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em}.schedules-days-text{font-size:.8rem;line-height:1.3}.schedules-last .pill,.schedules-table .pill{padding:.2rem .5rem;font-size:.72rem;text-transform:capitalize}.schedules-row-actions{display:flex;flex-wrap:nowrap;gap:.35rem;justify-content:flex-end;align-items:center}.schedules-menu{position:relative}.schedules-menu-panel{position:absolute;right:0;top:calc(100% + .25rem);z-index:40;min-width:9.5rem;padding:.3rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.1rem}.schedules-menu-panel button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text);text-align:left;font:inherit;font-size:.85rem;font-weight:550;padding:.45rem .6rem;border-radius:7px;cursor:pointer}.schedules-menu-panel button:hover:not(:disabled){background:var(--bg-elev-2)}.schedules-menu-panel button:disabled{opacity:.45;cursor:not-allowed}.schedules-menu-panel button.is-danger{color:#ffb4b8}.schedules-history-table tbody tr{cursor:default}.schedules-history-table tbody tr:hover{background:transparent}.schedules-attempt{font-variant-numeric:tabular-nums;font-weight:600}.schedules-run-msg{max-width:28rem;word-break:break-word;font-size:.88rem}.schedules-history-filter{min-width:12rem}.schedules-history{display:flex;flex-direction:column;gap:.65rem}.schedules-history-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem .75rem}.time-picker{display:flex;flex-direction:column;gap:.55rem;max-width:28rem}.time-picker.is-disabled{opacity:.55;pointer-events:none}.time-picker-shell{display:inline-flex;align-items:stretch;gap:0;height:var(--schedules-control-h, 2.5rem);min-height:var(--schedules-control-h, 2.5rem);box-sizing:border-box;background:#0f141c;border:1px solid var(--border);border-radius:8px;padding:0;overflow:hidden;box-shadow:inset 0 1px 2px #00000047;transition:border-color .15s ease,box-shadow .15s ease}.time-picker-shell:focus-within{outline:2px solid rgba(232,162,58,.35);border-color:var(--accent)}.schedules-page .time-picker-part,.time-picker-part{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:100%;min-height:0;background-color:transparent;border:0;border-radius:0;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;font-weight:700;font-size:1.15rem;letter-spacing:.04em;padding:0 1.55rem 0 .65rem;cursor:pointer;line-height:1.2;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 2px),calc(100% - 9px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;min-width:4.25rem}.time-picker-part:hover:not(:disabled){background-color:#ffffff0a}.time-picker-part:focus{outline:none;background-color:#e8a23a14}.time-picker-part option{background:#151b24;color:var(--text);font-size:1rem;font-weight:500}.time-picker-sep{display:inline-flex;align-items:center;font-size:1.2rem;font-weight:700;color:var(--accent);line-height:1;padding:0 .05rem;-webkit-user-select:none;user-select:none;opacity:.9;flex:0 0 auto}.time-picker-hint{color:var(--muted);font-size:.85rem;line-height:1.35}@media (max-width: 900px){.schedules-when{grid-template-columns:1fr}}@media (max-width: 900px){.schedules-server-row{grid-template-columns:1fr 1fr}.schedules-enabled{grid-column:1 / -1;height:auto;min-height:var(--schedules-control-h)}.schedule-row-check,.schedule-row-action{grid-template-columns:1fr}.schedule-row-action{grid-template-columns:1.7rem 1fr}.schedule-item-value{width:100%}}@media (max-width: 720px){.schedule-form .form-grid-3{grid-template-columns:1fr;align-items:stretch}.schedules-server-row{grid-template-columns:1fr}.schedules-header{align-items:flex-start}.schedules-day{min-width:2.25rem;padding:.48rem .45rem}.schedules-day-full{display:none}.schedules-day-short,.schedules-day-every .schedules-day-full{display:inline}.schedules-row-actions{justify-content:flex-start}.schedules-table .col-actions{white-space:normal}}.map-pop-bar{height:.55rem;border-radius:3px;background:var(--border);overflow:hidden}.map-pop-bar-fill{height:100%;background:var(--accent-2);border-radius:3px;transition:width .2s ease}.user-modal-section.danger-zone{border-top-color:#f0717859}.user-modal-section.danger-zone h3{color:#ffb4b8}.dune-map .pw-map-viewport{min-height:28rem}.stat-list{margin:0;padding-left:1.1em;list-style:disc;font-size:.95rem;line-height:1.45;font-weight:inherit}.dune-map .pw-map-marker{display:block;width:0;height:0;max-width:none;overflow:visible;transform:none}.dune-map .pw-map-marker-dot{position:absolute;left:0;top:0;transform:translate(-50%,-50%)}.dune-map .pw-map-marker-label{position:absolute;left:0;top:.5rem;transform:translate(-50%)}.dune-player-row.primary{border-color:var(--accent)}.dune-player-row.primary .muted{color:#1a1206b8}.dune-map-pick{cursor:crosshair}.dune-map-grid{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.dune-map-grid line{stroke:#ffffff38;stroke-width:1}.dune-map-grid text{fill:#ffffff6b;font-size:11px;font-family:inherit;text-anchor:middle;dominant-baseline:middle}.dune-map-pin{position:absolute;transform:translate(-50%,-50%);pointer-events:none;color:#e8a23a;line-height:1;font-size:15px}.dune-map-pin.pending{color:#f0c674}.dune-map-offline .pw-map-marker-dot{background:#6b7280}.dune-instance-card{border-top:1px solid var(--border);padding-top:.65rem}.dune-part-row{font-size:.85rem;padding:.2rem 0}.dune-pill{display:inline-block;padding:.05rem .4rem;border-radius:999px;font-size:.72rem;font-weight:600;background:var(--bg-elev-2)}.dune-pill.ok{background:#34d39926;color:#6ee7b7}.dune-pill.warn{background:#fbbf2426;color:#fbbf24}.dune-pill.violet{background:#a78bfa26;color:#c4b5fd}.dune-pill.muted{color:var(--muted)}.dune-setting-row{display:grid;grid-template-columns:minmax(10rem,1fr) minmax(8rem,16rem);gap:.5rem 1rem;align-items:center;margin-bottom:.45rem}@media (max-width: 720px){.dune-setting-row{grid-template-columns:1fr}}
