:root{--bg:#f3f5f4;--surface:#fff;--surface-2:#e9eeeb;--ink:#17211d;--muted:#66736d;--line:#d4dcd7;--accent:#087f6a;--accent-strong:#056353;--blue:#2475b9;--amber:#c17814;--danger:#c33c35;--sidebar:#17221e;--sidebar-muted:#aebdb6;--radius:7px}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0}body{letter-spacing:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}a{color:inherit;text-decoration:none}.login-page{background:var(--sidebar);grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);min-height:100vh;display:grid}.login-scene{background:url(/login-bg.png) 50%/cover;min-height:100vh;position:relative;overflow:hidden}.login-scene:after{content:"";background:linear-gradient(90deg,#0c19142e,#0c1914b8);position:absolute;inset:0}.login-brand{z-index:1;color:#fff;max-width:620px;position:absolute;bottom:clamp(36px,9vh,96px);left:clamp(28px,5vw,72px)}.login-brand h1{margin:0 0 14px;font-size:clamp(42px,6vw,76px);font-weight:800;line-height:.98}.login-brand p{color:#ffffffd1;margin:0;font-size:18px}.login-panel{background:#f7f9f8;justify-content:center;align-items:center;padding:38px;display:flex}.login-form{width:min(100%,390px)}.login-form .mark{background:var(--accent);color:#fff;border-radius:var(--radius);place-items:center;width:44px;height:44px;margin-bottom:30px;display:grid}.login-form h2{margin:0 0 8px;font-size:28px}.login-form>p{color:var(--muted);margin:0 0 30px}.field{gap:7px;margin-bottom:17px;display:grid}.field label{color:#48534e;font-size:13px;font-weight:700}.input,.select,.textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);outline:none;padding:11px 12px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #087f6a1f}.textarea{resize:vertical;min-height:92px}.btn{border-radius:var(--radius);background:var(--accent);color:#fff;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-weight:700;display:inline-flex}.btn:hover{background:var(--accent-strong)}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn.secondary:hover{background:var(--surface-2)}.btn.danger{background:var(--danger)}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.small{min-height:32px;padding:0 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}.error-message{color:var(--danger);border-radius:var(--radius);background:#fff0ee;border:1px solid #f1c4bf;margin-bottom:16px;padding:10px 12px;font-size:13px}.success-message{color:#086b4f;border-radius:var(--radius);background:#e8f7f1;border:1px solid #b7e4d3;margin-bottom:16px;padding:10px 12px;font-size:13px}.capability-notice{color:#645326;border-radius:var(--radius);background:#fff8e6;border:1px solid #ead9a4;align-items:baseline;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:12px;display:flex}.capability-notice strong{color:#4d401f;white-space:nowrap}.app-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--sidebar);color:#fff;flex-direction:column;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff17;align-items:center;gap:11px;padding:0 9px 22px;display:flex}.sidebar-brand .mark{background:#25a78e;border-radius:6px;place-items:center;width:34px;height:34px;display:grid}.sidebar-brand strong{font-size:15px;display:block}.sidebar-brand span{color:var(--sidebar-muted);margin-top:2px;font-size:11px;display:block}.nav{gap:4px;padding-top:18px;display:grid}.nav a{height:40px;color:var(--sidebar-muted);border-radius:6px;align-items:center;gap:11px;padding:0 10px;font-size:14px;font-weight:650;display:flex}.nav a:hover,.nav a.active{color:#fff;background:#ffffff17}.nav a.active{box-shadow:inset 3px 0 #32b89e}.sidebar-footer{border-top:1px solid #ffffff17;margin-top:auto;padding:16px 9px 0}.user-name{font-size:13px;font-weight:700}.user-role{color:var(--sidebar-muted);text-transform:uppercase;margin-top:2px;font-size:11px}.logout{color:var(--sidebar-muted);background:0 0;border:0;align-items:center;gap:7px;padding:10px 0 0;font-size:12px;display:flex}.mobile-bar{display:none}.main{min-width:0}.page-header{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:17px clamp(20px,3vw,42px);display:flex}.page-title h1{margin:0 0 3px;font-size:21px}.page-title p{color:var(--muted);margin:0;font-size:13px}.status-pill{color:#0c755e;align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.status-dot{background:#24a886;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #24a88621}.page-content{max-width:1600px;margin:0 auto;padding:26px clamp(20px,3vw,42px) 50px}.section{margin-bottom:28px}.section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.section-heading h2{margin:0;font-size:16px}.section-heading p{color:var(--muted);margin:4px 0 0;font-size:12px}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-height:112px;padding:17px}.metric-icon{color:var(--accent);margin-bottom:14px}.metric-value{font-size:24px;font-weight:800;line-height:1}.metric-label{color:var(--muted);margin-top:7px;font-size:12px}.content-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:18px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:13px 16px;display:flex}.panel-header h2{margin:0;font-size:14px}.panel-body{padding:16px}.chart{border-bottom:1px solid var(--line);align-items:end;gap:2px;height:210px;padding-top:20px;display:flex}.chart-bar{background:var(--accent);opacity:.72;border-radius:2px 2px 0 0;flex:1;min-width:2px}.chart-labels{color:var(--muted);justify-content:space-between;padding-top:8px;font-size:10px;display:flex}.activity-list{display:grid}.activity-row{border-bottom:1px solid #edf0ee;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:11px 0;font-size:13px;display:grid}.activity-row:last-child{border-bottom:0}.activity-icon{background:var(--surface-2);width:26px;height:26px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.activity-time{color:var(--muted);font-size:11px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar .input{width:min(300px,100%)}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{text-align:left;color:var(--muted);text-transform:uppercase;border-bottom:1px solid var(--line);white-space:nowrap;padding:11px 14px;font-size:11px}.data-table td{vertical-align:middle;border-bottom:1px solid #edf0ee;padding:12px 14px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fafcfb}.player-name{font-weight:750}.badge{background:var(--surface-2);color:#4f5f57;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;font-weight:750;display:inline-flex}.badge.viewer{color:#226692;background:#e5f0f8}.badge.moderator{color:#8a570e;background:#fff1d9}.badge.admin{color:#08705b;background:#dff3eb}.badge.offline{color:#7c8681;background:#f0f1f1}.ping{align-items:center;gap:5px;display:inline-flex}.ping i{background:#2aa881;border-radius:50%;width:7px;height:7px}.base-pals-page{gap:16px;display:grid}.worker-summary{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.worker-summary-item{border:0;border-right:1px solid var(--line);min-height:82px;color:var(--muted);text-align:left;background:0 0;align-items:center;gap:11px;padding:14px 16px;display:flex}.worker-summary-item:last-child{border-right:0}.worker-summary-item:hover,.worker-summary-item.selected{color:var(--accent);background:#f1f7f5}.worker-summary-item.attention{color:var(--danger)}.worker-summary-item>span{gap:3px;min-width:0;display:grid}.worker-summary-item b{color:var(--ink);font-size:21px;line-height:1}.worker-summary-item small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;overflow:hidden}.base-pal-toolbar h2{align-items:center;gap:7px;display:flex}.snapshot-time{margin-top:3px;font-size:10px;display:block}.base-pal-toolbar .select{width:190px}.worker-search{color:var(--muted);align-items:center;gap:7px;display:flex}.worker-search .input{width:250px}.base-pal-table td{min-width:115px}.base-pal-table td:first-child{min-width:180px}.base-pal-table td:nth-child(4){min-width:170px}.pal-meta{color:var(--muted);margin-top:3px;font-size:10px}.pal-status{background:var(--surface-2);color:#52605a;border-radius:999px;align-items:center;gap:6px;min-height:25px;padding:0 8px;font-size:10px;font-weight:800;display:inline-flex}.pal-status i{background:currentColor;border-radius:50%;width:7px;height:7px}.status-working{color:#08705b;background:#def2eb}.status-resting{color:#326988;background:#e6eef6}.status-eating{color:#8b5c12;background:#fff0d5}.status-inactive{color:#77827d;background:#eceeed}.status-active{color:#665180;background:#e9e5f1}.pal-gauge-wrap{grid-template-columns:minmax(66px,1fr) 32px;align-items:center;gap:7px;min-width:112px;display:grid}.pal-gauge-wrap b{color:var(--ink);text-align:right;font-size:10px}.pal-gauge{background:#e3e8e5;border-radius:4px;height:7px;overflow:hidden}.pal-gauge i{border-radius:inherit;background:#2b9b78;height:100%;display:block}.pal-gauge i.hurt,.pal-gauge i.strained{background:#d28a22}.pal-gauge i.critical,.pal-gauge i.incapacitated,.pal-gauge i.low{background:var(--danger)}.pal-state{color:var(--muted);margin-top:4px;font-size:9px;font-weight:750;display:block}.state-hurt,.state-strained{color:#9a6415}.state-critical,.state-incapacitated,.state-low{color:var(--danger)}.pal-action{text-overflow:ellipsis;white-space:nowrap;max-width:240px;display:block;overflow:hidden}.pal-attention-row{background:#fff9f1;box-shadow:inset 3px 0 #d28a22}.map-panel-header .muted{font-size:11px}.map-shell{aspect-ratio:1;cursor:grab;touch-action:none;background:#0d1c23;outline:none;width:min(100%,100vh - 175px);min-height:430px;margin:0 auto;position:relative;overflow:hidden}.map-shell:focus-visible{box-shadow:inset 0 0 0 3px #32b89ecc}.map-shell.dragging{cursor:grabbing}.map-canvas{transform-origin:50%;will-change:transform;transition:transform .14s ease-out;position:absolute;inset:0}.map-shell.dragging .map-canvas{transition:none}.world-map{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.map-overlay{position:absolute;inset:0}.map-history-overlay{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.map-history-overlay polyline{fill:none;stroke-width:.32px;stroke-linecap:round;stroke-linejoin:round;opacity:.78;vector-effect:non-scaling-stroke}.map-history-overlay circle{fill:#e94f37;opacity:.09}.base-area{z-index:1;aspect-ratio:1;border:1px dashed var(--amber);background:#c1781426;border-radius:50%;width:1.1%;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #ffffff4d}.map-marker{z-index:2;transform:translate(-50%, -50%) scale(var(--map-marker-scale,1));background:var(--blue);color:#fff;border:2px solid #fff;border-radius:50%;outline:none;width:16px;height:16px;padding:0;position:absolute;box-shadow:0 2px 7px #00000073}.map-marker:hover,.map-marker:focus-visible{z-index:5;transform:translate(-50%, -50%) scale(var(--map-marker-scale,1))}.map-marker:focus-visible{box-shadow:0 0 0 3px #ffffffb3,0 3px 12px #00000080}.marker-party{background:#0a927c;width:12px;height:12px}.marker-worker{background:#497a31;border-radius:6px;width:20px;height:20px}.marker-wild{background:#79a83b;border-width:1px;width:10px;height:10px}.marker-npc{background:#786c86;border-width:1px;width:11px;height:11px}.marker-base{background:var(--amber);border-radius:4px;width:18px;height:18px}.marker-tower{width:14px;height:14px;transform:translate(-50%, -50%) rotate(45deg) scale(var(--map-marker-scale,1));background:#b8413b;border-radius:3px}.marker-tower:hover,.marker-tower:focus-visible{transform:translate(-50%, -50%) rotate(45deg) scale(var(--map-marker-scale,1))}.marker-travel{background:#36a6c8;border:1px solid #fff;width:9px;height:9px}.marker-alpha{background:#d05a3f;width:14px;height:14px}.marker-bounty{background:#7d477f;border-radius:3px;width:13px;height:13px}.marker-oil{width:15px;height:15px;transform:translate(-50%, -50%) rotate(45deg) scale(var(--map-marker-scale,1));background:#263c49;border-radius:3px}.marker-oil:hover,.marker-oil:focus-visible{transform:translate(-50%, -50%) rotate(45deg) scale(var(--map-marker-scale,1))}.marker-oil .map-marker-label,.marker-oil .map-tooltip{transform:translateX(-50%) rotate(-45deg) scale(var(--map-marker-content-scale,1))}.marker-habitat{opacity:.78;background:#5a8b48;border-width:1px;width:7px;height:7px}.marker-predator{opacity:.78;background:#9a3d48;width:12px;height:12px}.marker-last{opacity:.72;border-style:dashed;width:13px;height:13px}.map-marker.selected{z-index:5;box-shadow:0 0 0 4px #ffffffbf,0 3px 12px #00000080}.map-marker.marker-alert:after{content:"";border-radius:inherit;border:2px solid #df3f36;animation:1.6s ease-out infinite map-alert;position:absolute;inset:-7px}@keyframes map-alert{70%,to{opacity:0;transform:scale(1.45)}}.marker-count{transform:scale(var(--map-marker-content-scale,1));place-items:center;font-size:9px;font-weight:800;line-height:1;display:grid;position:absolute;inset:0}.map-marker-label{transform:translateX(-50%) scale(var(--map-marker-content-scale,1));transform-origin:top;color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#0e1b17db;border-radius:3px;max-width:120px;padding:2px 5px;font-size:9px;font-weight:700;line-height:1.25;position:absolute;top:calc(100% + 5px);left:50%;overflow:hidden}.marker-tower .map-marker-label{transform:translateX(-50%) rotate(-45deg) scale(var(--map-marker-content-scale,1))}.map-tooltip{z-index:8;width:210px;transform:translateX(-50%) scale(var(--map-marker-content-scale,1));transform-origin:bottom;color:#fff;text-align:left;pointer-events:none;background:#101d18f5;border:1px solid #ffffffb3;border-radius:6px;gap:5px;padding:11px;display:none;position:absolute;bottom:calc(100% + 10px);left:50%;box-shadow:0 8px 28px #00000059}.map-marker:hover .map-tooltip,.map-marker:focus-visible .map-tooltip{display:grid}.map-tooltip strong{overflow-wrap:anywhere;font-size:12px}.map-tooltip small{color:#a9bbb3;text-transform:capitalize;margin-top:-3px;font-size:9px}.map-tooltip>span{color:#afbeb8;justify-content:space-between;gap:8px;font-size:10px;display:flex}.map-tooltip b{color:#fff;text-align:right;overflow-wrap:anywhere}.map-tooltip .tooltip-detail{color:#d5dfda;border-top:1px solid #ffffff21;padding-top:5px;line-height:1.35;display:block}.marker-tower .map-tooltip{transform:translateX(-50%) rotate(-45deg) scale(var(--map-marker-content-scale,1))}.map-hover-tooltip{transform-origin:50%;display:grid;bottom:auto;transform:translate(-50%,-100%)}.map-hover-tooltip.below{transform:translate(-50%)}.layer-control{z-index:6;position:absolute;top:14px;left:14px}.map-float-button{width:38px;height:38px;color:var(--ink);background:#fffffff5;border:1px solid #ffffffbf;border-radius:6px;place-items:center;display:grid;box-shadow:0 4px 18px #0000003d}.map-float-button:hover,.map-float-button.active{color:var(--accent);background:#e7f3ef}.layer-menu{border:1px solid var(--line);width:270px;max-height:min(560px,100vh - 160px);color:var(--ink);background:#fffffffa;border-radius:6px;padding:8px;position:absolute;top:46px;left:0;overflow-y:auto;box-shadow:0 14px 38px #00000047}.layer-menu-header{z-index:1;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:42px;padding:4px 4px 5px 8px;font-size:12px;display:flex;position:sticky;top:-8px}.layer-option{cursor:pointer;border-radius:4px;grid-template-columns:16px 10px 1fr auto;align-items:center;gap:8px;min-height:34px;padding:0 8px;font-size:11px;display:grid}.layer-option:hover{background:var(--surface-2)}.layer-option input{accent-color:var(--accent)}.layer-option b{color:var(--muted);font-size:10px}.map-menu-field{border:1px solid var(--line);height:36px;color:var(--muted);background:#fff;border-radius:5px;align-items:center;gap:7px;margin:7px 3px;padding:0 9px;display:flex}.map-menu-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #087f6a1a}.map-menu-field input{width:100%;min-width:0;color:var(--ink);border:0;outline:0;font-size:11px}.map-target-select{border:1px solid var(--line);width:calc(100% - 6px);height:34px;color:var(--ink);background:#fff;border-radius:5px;margin:0 3px 6px;padding:0 8px;font-size:11px}.layer-swatch{background:var(--blue);border-radius:50%;width:9px;height:9px}.layer-partyPals{background:#0a927c}.layer-baseWorkers{background:#497a31;border-radius:2px}.layer-wildPals{background:#79a83b}.layer-npcs{background:#786c86}.layer-palboxes,.layer-baseAreas{background:var(--amber);border-radius:2px}.layer-bossTowers{background:#b8413b;border-radius:2px}.layer-fastTravel{background:#36a6c8}.layer-alphaPals{background:#d05a3f}.layer-bounties{background:#7d477f;border-radius:2px}.layer-oilRigs{background:#263c49;border-radius:2px}.layer-habitats{background:#5a8b48}.layer-predators{background:#9a3d48}.layer-trails{background:#2475b9;border-radius:0;height:3px}.layer-heatmap{opacity:.45;background:#e94f37}.layer-lastKnown{background:0 0;border:1px dashed #2475b9}.layer-labels{background:#283a33;border-radius:2px}.map-controls{z-index:4;border:1px solid #ffffffb3;border-radius:6px;display:grid;position:absolute;top:14px;right:14px;overflow:hidden;box-shadow:0 4px 18px #0000003d}.map-control{border:0;border-bottom:1px solid var(--line);width:38px;height:36px;color:var(--ink);background:#fffffff5;place-items:center;display:grid}.map-control:last-child{border-bottom:0}.map-control:hover:not(:disabled){color:var(--accent);background:#e7f3ef}.map-control:disabled{color:#a4aea9;cursor:not-allowed}.map-scale{z-index:4;color:#fff;background:#111f1ad1;border-radius:5px;padding:6px 8px;font-size:10px;font-weight:700;position:absolute;top:14px;right:61px}.map-selection{z-index:6;color:#fff;text-align:left;background:#101d18f5;border:1px solid #ffffffbf;border-radius:6px;gap:6px;width:min(270px,100% - 28px);padding:13px;display:grid;position:absolute;bottom:14px;right:61px;box-shadow:0 8px 28px #00000059}.map-selection .icon-btn{color:#b9c6c0;position:absolute;top:5px;right:5px}.map-selection>strong{overflow-wrap:anywhere;padding-right:24px;font-size:13px}.map-selection>small{color:#a9bbb3;text-transform:capitalize;margin-top:-4px;font-size:9px}.map-selection>span{color:#afbeb8;justify-content:space-between;gap:8px;font-size:10px;display:flex}.map-selection b{color:#fff;text-align:right;overflow-wrap:anywhere}.map-selection .tooltip-detail{color:#d5dfda;border-top:1px solid #ffffff21;padding-top:6px;line-height:1.4;display:block}.map-tooltip .marker-alert-copy,.map-selection .marker-alert-copy{color:#ff938c;font-weight:800;display:block}.map-legend{background:#fffffff0;border-radius:6px;gap:14px;padding:10px 12px;font-size:11px;display:flex;position:absolute;bottom:14px;left:14px;box-shadow:0 4px 18px #14201b2e}.legend-item{align-items:center;gap:6px;display:flex}.legend-dot{background:var(--blue);border-radius:50%;width:9px;height:9px}.legend-dot.pal{background:var(--accent)}.legend-dot.combat{background:#d05a3f}.legend-dot.poi{background:#263c49;border-radius:2px}.map-experience.expanded{z-index:50;background:#101c18;max-width:none;padding:0;position:fixed;inset:0}.map-experience.expanded .map-panel{background:#101c18;border:0;border-radius:0;height:100vh}.map-experience.expanded .map-panel-header{background:#fff;height:51px}.map-experience.expanded .map-shell{aspect-ratio:auto;width:100vw;height:calc(100vh - 51px);min-height:0}.map-experience.expanded .map-canvas{--expanded-map-size:max(100vw, calc(100vh - 51px));width:var(--expanded-map-size);height:var(--expanded-map-size);margin-top:calc(var(--expanded-map-size) / -2);margin-left:calc(var(--expanded-map-size) / -2);inset:50% auto auto 50%}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-list{display:grid}.setting-row{border-bottom:1px solid #edf0ee;grid-template-columns:minmax(180px,1fr) auto;gap:14px;padding:10px 0;font-size:12px;display:grid}.setting-row:last-child{border:0}.setting-key{color:var(--muted);overflow-wrap:anywhere}.setting-value{text-align:right;overflow-wrap:anywhere;font-weight:700}.editable-list{gap:0}.settings-panel{transition:border-color .15s,box-shadow .15s}.settings-panel.editing{border-color:#8bcdbf;box-shadow:0 0 0 2px #2aa88117}.settings-panel-actions{align-items:center;gap:8px;display:flex}.section-edit-btn{min-height:30px;padding:0 9px;font-size:11px}.setting-editor-row{border-bottom:1px solid #edf0ee;grid-template-columns:minmax(150px,1fr) minmax(130px,auto) 26px;align-items:center;gap:10px;min-height:58px;padding:8px 0;display:grid}.setting-editor-row:last-child{border-bottom:0}.setting-editor-row.changed{box-shadow:inset 3px 0 0 var(--accent);background:#f1faf7;margin-inline:-8px;padding-inline:8px}.setting-meta{gap:3px;min-width:0;display:grid}.configured-note{color:var(--muted);overflow-wrap:anywhere;font-size:10px}.setting-input{text-align:right;width:130px;padding-block:8px}.setting-input.wide{width:min(230px,100%)}.managed-setting{min-height:34px;color:var(--muted);text-align:right;justify-content:flex-end;align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.switch{cursor:pointer;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.switch input{opacity:0;pointer-events:none;position:absolute}.switch-track{background:#bac5c0;border-radius:10px;width:34px;height:20px;padding:2px;transition:background .15s}.switch-track span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;display:block;box-shadow:0 1px 3px #0003}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track span{transform:translate(14px)}.switch input:focus-visible+.switch-track{box-shadow:0 0 0 3px #087f6a2e}.switch b{min-width:52px;color:var(--muted);font-size:11px}.icon-btn{width:28px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.icon-btn:hover{color:var(--ink);background:var(--surface-2)}.settings-actionbar{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:12px 14px;display:flex}.settings-actionbar>div:first-child{gap:3px;display:grid}.settings-actionbar strong{font-size:13px}.settings-actionbar span{color:var(--muted);font-size:11px}.modal-copy{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.55}.operation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.operation{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:18px}.operation h2{align-items:center;gap:8px;margin:0 0 5px;font-size:15px;display:flex}.operation>p{color:var(--muted);min-height:34px;margin:0 0 16px;font-size:12px}.danger-zone{border-color:#e6b8b3}.empty{text-align:center;min-height:180px;color:var(--muted);place-items:center;padding:28px;display:grid}.loading{opacity:.65;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.modal-backdrop{z-index:20;background:#0c16128a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius);width:min(100%,470px);box-shadow:0 22px 70px #00000047}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 19px;display:flex}.modal-header h2{margin:0;font-size:16px}.modal-body{padding:19px}.modal-actions{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}@media (max-width:1100px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}.worker-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.worker-summary-item:nth-child(3){border-right:0}.worker-summary-item:nth-child(n+4){border-top:1px solid var(--line)}}@media (max-width:780px){.login-page{background:#f7f9f8;grid-template-columns:1fr}.login-scene{min-height:220px}.login-scene:after{background:#0c19147a}.login-brand{bottom:28px;left:24px}.login-brand h1{font-size:39px}.login-brand p{font-size:14px}.login-panel{padding:34px 22px 52px}.app-shell{display:block}.sidebar{display:none}.mobile-bar{background:var(--sidebar);color:#fff;z-index:10;justify-content:space-between;align-items:center;height:58px;padding:0 16px;display:flex;position:sticky;top:0}.mobile-menu{background:var(--sidebar);z-index:9;padding:12px;position:fixed;inset:58px 0 0}.mobile-menu .nav{padding:0}.page-header{min-height:68px;padding:13px 18px}.page-content{padding:20px 14px 36px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:104px}.settings-grid,.operation-grid{grid-template-columns:1fr}.worker-summary{grid-template-columns:1fr 1fr}.worker-summary-item,.worker-summary-item:nth-child(3){border-right:1px solid var(--line);border-top:1px solid var(--line)}.worker-summary-item:nth-child(-n+2){border-top:0}.worker-summary-item:nth-child(2n){border-right:0}.worker-summary-item:last-child{border-right:0;grid-column:1/-1}.base-pal-toolbar{flex-direction:column;align-items:stretch}.base-pal-toolbar .toolbar,.worker-search,.worker-search .input,.base-pal-toolbar .select{width:100%}.map-shell{aspect-ratio:1;width:100%;min-height:0}.map-legend{flex-wrap:wrap;right:14px}.layer-menu{max-height:calc(100vw - 105px)}.map-experience.expanded .map-panel-header{display:none}.map-experience.expanded .map-shell{width:100vw;height:100vh}.map-experience.expanded .map-canvas{--expanded-map-size:max(100vw, 100vh)}.map-selection{bottom:76px;right:14px}.map-legend{gap:8px 12px;max-width:calc(100% - 28px)}.capability-notice{flex-direction:column;align-items:flex-start;gap:3px}.settings-heading{flex-direction:column;align-items:stretch}.setting-editor-row{grid-template-columns:minmax(110px,1fr) minmax(120px,auto) 26px}.setting-input.wide{width:min(190px,100%)}.settings-actionbar{flex-direction:column;align-items:stretch}.settings-actionbar .toolbar{width:100%}.settings-actionbar .btn{flex:1}}@media (max-width:430px){.metric-grid{grid-template-columns:1fr 1fr}.metric-value{font-size:21px}.page-title p{display:none}}
