:root{color-scheme:dark;--bg:#11130f;--panel:#1c211a;--panel-2:#263021;--line:#46523e;--text:#f3f0e8;--muted:#b5b9aa;--accent:#7fc6a4;--accent-2:#d7a85d;--danger:#e46f64}@font-face{font-family:JSL Blackletter;src:url(/fonts/JBLACK.TTF) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/fonts/Montserrat-VariableFont_wght.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Soutane BF;src:url(/fonts/SoutaneBF-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}a{color:inherit}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.page{min-height:100vh;display:flex;flex-direction:column}.home{width:min(1120px,calc(100vw - 32px));padding:48px 0;grid-template-columns:minmax(0,1fr) 420px;grid-gap:32px;gap:32px;align-items:center}.gm-dashboard,.home{margin:0 auto;display:grid}.gm-dashboard{width:min(1180px,calc(100vw - 32px));padding:32px 0 48px;grid-gap:28px;gap:28px}.gm-shell{display:grid;grid-template-columns:220px minmax(0,1fr)}.gm-sidebar{height:100dvh;border-right:1px solid var(--line);background:color-mix(in srgb,var(--panel) 70%,black);display:grid;grid-template-rows:auto 1fr auto;grid-gap:24px;gap:24px;overflow:hidden;padding:20px 16px;position:-webkit-sticky;position:sticky;top:0}.gm-sidebar h1{margin:0;font-size:18px}.gm-sidebar small{color:var(--muted)}.header-title-row{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.environment-badge{border:1px solid color-mix(in srgb,var(--accent) 65%,white);border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:11px;font-weight:800;line-height:1;padding:4px 7px;text-transform:uppercase}.gm-nav{align-content:start;display:grid;grid-gap:8px;gap:8px;min-height:0;overflow-y:auto}.gm-nav a{border:1px solid transparent;border-radius:6px;color:var(--muted);font-weight:700;padding:10px 12px;text-decoration:none}.gm-nav a[aria-current=page]{background:#0f120d;border-color:var(--accent);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.gm-nav a:hover{border-color:var(--line);color:var(--text)}.gm-signout{width:100%}.gm-main{min-width:0;padding:32px}.dashboard-group{display:grid;grid-gap:14px;gap:14px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);border-radius:10px;background:color-mix(in srgb,var(--panel) 45%,black);padding:16px}.dashboard-group-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:12px}.dashboard-group-header h2{margin:0}.dashboard-group-header small{color:var(--muted);text-align:right}.dashboard-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.dashboard-wide-panel{min-width:0}.dashboard-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.docs-page{gap:20px}.docs-article{display:grid;grid-gap:28px;gap:28px}.docs-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;grid-gap:18px;gap:18px;align-items:start}.docs-kicker{margin:0 0 8px;color:var(--accent-2);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.docs-hero h1{max-width:760px;margin:0;font-size:clamp(30px,4vw,52px);line-height:1.02}.docs-copy li,.docs-copy p,.docs-hero p,.docs-steps li{color:var(--muted);line-height:1.6}.docs-hero p{max-width:780px;margin:14px 0 0;font-size:18px}.docs-toc{border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--panel) 72%,black);padding:12px}.docs-toc,.docs-toc details{display:grid;grid-gap:8px;gap:8px}.docs-toc summary{cursor:pointer;color:var(--text);font-size:13px;font-weight:900;list-style-position:outside;padding:4px 6px}.docs-toc details>div{display:grid;grid-gap:8px;gap:8px;margin-top:8px}.docs-toc a{border-radius:6px;color:var(--muted);font-weight:800;padding:8px 10px;text-decoration:none}.docs-toc a:hover{background:color-mix(in srgb,var(--panel-2) 60%,black);color:var(--text)}.docs-reference,.docs-section{display:grid;grid-gap:16px;gap:16px;border-top:1px solid var(--line);padding-top:24px;scroll-margin-top:20px}.docs-section{grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);align-items:start}.docs-section .docs-copy:only-child,.docs-section>.docs-copy:last-child{max-width:760px}.docs-copy{display:grid;grid-gap:10px;gap:10px;min-width:0}.docs-copy-subsections{gap:8px}.docs-copy-subsections h3:not(:first-child){margin-top:10px}.docs-copy h3,.docs-reference h3{margin:0;font-size:24px}.docs-copy ol,.docs-copy p,.docs-steps{margin:0}.docs-copy ol,.docs-steps{padding-left:22px}.docs-figure{min-width:0;margin:0}.docs-figure img{display:block;width:65%;height:auto;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:8px;background:#11180f;margin-inline:auto}.docs-steps{align-self:start;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--panel) 65%,black);padding:16px 16px 16px 38px}.docs-table-wrap{overflow-x:auto}.docs-table{width:100%;min-width:680px;border-collapse:collapse}.docs-table td,.docs-table th{border-bottom:1px solid color-mix(in srgb,var(--line) 82%,transparent);padding:12px;text-align:left;vertical-align:top}.docs-table th{color:var(--accent-2);font-size:13px;letter-spacing:.06em;text-transform:uppercase}.docs-table td{color:var(--muted)}.docs-table td:first-child{color:var(--text);font-weight:800}.audit-filter-form{display:grid;grid-template-columns:minmax(120px,1fr) minmax(180px,1.3fr) minmax(140px,.8fr) minmax(100px,.7fr) auto;align-items:end;grid-gap:12px;gap:12px}.audit-log-panel{overflow:hidden}.audit-table{min-width:1040px}.audit-table td small{display:block;margin-top:4px;color:var(--muted);font-weight:500}.audit-status{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}.audit-status.success{color:var(--accent)}.audit-status.blocked,.audit-status.failed{color:var(--danger)}.audit-counts{display:grid;grid-gap:4px;gap:4px;min-width:190px;font-size:12px}.audit-details summary{color:var(--accent-2);cursor:pointer;font-weight:800}.audit-details pre{max-width:320px;max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:6px;background:#0f120d;color:var(--muted);padding:10px;white-space:pre-wrap}.calendar-template-panel,.compact-import-form,.compact-map-form{align-content:start;display:grid;grid-gap:12px;gap:12px;min-width:0}.compact-import-form h3,.compact-map-form h3{grid-column:1/-1}.calendar-template-panel summary{color:var(--accent-2);cursor:pointer;font-weight:800}.calendar-template-list,.calendar-template-row{display:grid;grid-gap:8px;gap:8px}.calendar-template-row{align-items:center;border-top:1px solid rgba(255,255,255,.08);grid-template-columns:minmax(0,1fr) auto;padding-top:8px}.compact-import-form{align-items:start;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto}.create-map-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px 28px;min-width:0}.compact-import-form input,.compact-map-form input{min-width:0}.map-dimensions-field{align-items:end;color:var(--muted);display:grid;grid-gap:0 8px;gap:0 8px;grid-template-columns:58px auto 58px}.map-dimensions-field label{display:grid;grid-gap:6px;gap:6px}.map-dimensions-field label span{font-size:13px}.map-dimensions-field input{border:1px solid var(--line);border-radius:6px;background:#0f120d;color:var(--text);min-height:46px;padding:8px 4px 8px 9px;text-align:center;width:58px}.dimension-separator{color:var(--muted);font-size:16px;line-height:46px}.orientation-toggle{border:0;color:var(--muted);margin:0;padding:0}.orientation-toggle legend{font-size:13px;margin-bottom:6px;padding:0}.orientation-buttons{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,46px)}.orientation-toggle label{cursor:pointer;display:grid;place-items:center}.orientation-toggle input{opacity:0;pointer-events:none;position:absolute}.hex-choice{align-items:center;background:#0f120d;border:1px solid var(--line);border-radius:6px;display:flex;height:46px;justify-content:center;width:46px}.hex-choice svg{height:30px;overflow:visible;width:30px}.hex-choice polygon{fill:none;stroke:var(--accent);stroke-linejoin:round;stroke-width:3}.orientation-toggle input:checked+.hex-choice{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.orientation-toggle input:focus-visible+.hex-choice{outline:2px solid var(--accent);outline-offset:2px}.compact-submit{min-height:46px;padding-inline:18px;white-space:nowrap}.create-submit{align-self:flex-end;flex:0 0 auto;margin-left:auto}.create-submit,.import-submit{justify-self:end;min-width:136px}.import-submit{align-self:end}.map-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.brand h1{margin:0;font-size:clamp(44px,8vw,92px);line-height:.95;letter-spacing:0}.brand p{max-width:680px;margin:24px 0 0;color:var(--muted);font-size:18px;line-height:1.65}.panel{border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--panel) 92%,black);padding:20px}.stack{display:grid;grid-gap:14px;gap:14px}.field{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:13px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:6px;background:#0f120d;color:var(--text);padding:12px}.field textarea{min-height:180px;resize:vertical}.field input[type=range]{padding:0;accent-color:var(--accent)}.field input[type=color]{width:44px;height:36px;padding:4px}.color-row,.value-row{display:flex;align-items:center;gap:10px}.swatch-row{display:flex;flex-wrap:wrap;gap:6px}.color-swatch{width:24px;height:24px;border:1px solid var(--line);border-radius:999px;cursor:pointer}.color-swatch.active{outline:2px solid var(--accent);outline-offset:2px}.color-swatch.transparent{background:linear-gradient(45deg,transparent 44%,var(--danger) 45% 55%,transparent 56%),linear-gradient(45deg,rgba(255,255,255,.65) 25%,transparent 25% 75%,rgba(255,255,255,.65) 75%),linear-gradient(45deg,rgba(255,255,255,.65) 25%,transparent 25% 75%,rgba(255,255,255,.65) 75%),#8d9488;background-position:0 0,0 0,4px 4px,0 0;background-size:auto,8px 8px,8px 8px,auto}.color-swatch:disabled{cursor:not-allowed;opacity:.45}.value-row input[type=range]{min-width:0;flex:1 1}.value-row input[type=number]{width:70px}.checkbox-row,.value-row span{color:var(--muted)}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:13px}.checkbox-row input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:34px;height:20px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 80%,black);cursor:pointer;position:relative;transition:background-color .12s ease,border-color .12s ease}.checkbox-row input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:var(--muted);transition:background-color .12s ease,transform .12s ease}.checkbox-row input[type=checkbox]:checked{border-color:color-mix(in srgb,var(--accent) 76%,white);background:color-mix(in srgb,var(--accent) 34%,#142014)}.checkbox-row input[type=checkbox]:checked:after{background:var(--accent);transform:translateX(14px)}.checkbox-row input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.checkbox-row input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}.pill-switch{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;min-height:32px;background:color-mix(in srgb,var(--panel) 82%,black);color:var(--text);cursor:pointer;font:inherit;font-size:13px;font-weight:700;padding:5px 8px 5px 12px;transition:background-color .12s ease,border-color .12s ease}.pill-switch,.pill-switch:after{border:1px solid var(--line);border-radius:999px}.pill-switch:after{content:"";width:26px;height:16px;background:radial-gradient(circle at 7px 50%,var(--muted) 0 5px,transparent 5.5px),color-mix(in srgb,var(--panel) 80%,black);transition:background-position .12s ease,background-color .12s ease,border-color .12s ease}.pill-switch[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 76%,white);background:color-mix(in srgb,var(--accent) 28%,#142014)}.pill-switch[aria-pressed=true]:after{border-color:color-mix(in srgb,var(--accent) 76%,white);background:radial-gradient(circle at 17px 50%,var(--accent) 0 5px,transparent 5.5px),color-mix(in srgb,var(--accent) 34%,#142014)}.pill-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tile-calibration-preview{width:100%;max-width:320px;justify-self:center;aspect-ratio:14/15;border:1px solid var(--line);border-radius:6px;background:linear-gradient(45deg,#a7aba2 25%,transparent 25% 75%,#a7aba2 75%),linear-gradient(45deg,#a7aba2 25%,#d9d9d2 25% 75%,#a7aba2 75%);background-position:0 0,10px 10px;background-size:20px 20px}.tile-preview-carousel{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;grid-gap:8px;gap:8px}.button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.carousel-button{min-width:0;height:40px;padding:0;font-size:24px;line-height:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:6px;background:var(--accent);color:#07100c;padding:11px 14px;font-weight:700;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease,filter .12s ease,transform 80ms ease}.button.secondary{border-color:var(--line);background:var(--panel-2);color:var(--text)}.button.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.button.danger{background:var(--danger);color:#160504}.button:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 72%,white);filter:brightness(1.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}.button:active:not(:disabled){transform:translateY(1px);filter:brightness(.96);box-shadow:none}.button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.button:disabled{cursor:not-allowed;opacity:.62}@media (prefers-reduced-motion:reduce){.button{transition:none}.button:active:not(:disabled){transform:none}}.compact-button{padding:6px 10px;font-size:12px}.asset-tabs{display:flex;flex-wrap:wrap;gap:8px}.asset-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:12px;gap:12px}.asset-card{min-width:0;display:grid;grid-gap:10px;gap:10px;align-content:start;padding:10px;background:#141810}.asset-card,.asset-thumbnail{border:1px solid var(--line);border-radius:6px}.asset-thumbnail{width:100%;aspect-ratio:4/3;background:linear-gradient(45deg,rgba(255,255,255,.22) 25%,transparent 25% 75%,rgba(255,255,255,.22) 75%),linear-gradient(45deg,rgba(255,255,255,.22) 25%,transparent 25% 75%,rgba(255,255,255,.22) 75%),#0b100c;background-position:0 0,8px 8px,0 0;background-repeat:repeat,repeat,no-repeat;background-size:16px 16px,16px 16px,cover}.asset-card-main{display:grid;grid-gap:3px;gap:3px}.discord-profile-list{display:grid;grid-gap:10px;gap:10px}.discord-guild-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;grid-gap:10px;gap:10px;align-items:end}.discord-enabled-field{min-height:46px;align-self:end}.discord-add-server-button{justify-self:start}.discord-guild-card,.discord-guild-list{display:grid;grid-gap:10px;gap:10px}.discord-guild-card{border:1px solid var(--line);border-radius:6px;background:#141810;padding:12px}.discord-guild-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;grid-gap:10px;gap:10px;align-items:center}.discord-role-panel{border-top:1px solid var(--line);padding-top:10px}.discord-role-panel summary{cursor:pointer;color:var(--accent-2);font-weight:700}.discord-role-filter,.discord-role-panel[open] summary{margin-bottom:10px}.discord-guild-inline-form{display:contents}.discord-role-list{display:grid}.discord-role-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-gap:10px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.discord-role-row:last-child{border-bottom:1px solid var(--line)}.role-mapping-form{display:flex;align-items:center;gap:8px}.discord-profile-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 140px 120px auto;grid-gap:10px;gap:10px;align-items:end;border:1px solid var(--line);border-radius:6px;background:#141810;padding:12px}.discord-profile-main{min-width:0;display:grid;grid-gap:4px;gap:4px;align-self:center}.discord-profile-main small{color:var(--muted);overflow-wrap:anywhere}.compact-profile-field{min-width:0}.tileset-list-row{border:1px solid var(--line);border-radius:6px;padding:8px;background:#141810}.tileset-list-main{display:grid;grid-gap:8px;gap:8px}.tileset-delete-panel{border-top:1px solid var(--line);padding-top:8px}.tileset-delete-panel summary{color:var(--danger);cursor:pointer;font-size:12px;font-weight:700}.tileset-delete-panel form{margin-top:8px}.map-shell{height:100vh;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr}.topbar{min-height:64px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,black);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px}.topbar h1{margin:0;font-size:18px}.topbar small{color:var(--muted)}.topbar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-end}.gm-editor-shell,.gm-guide-shell,.gm-shell,.player-guide-shell,.player-map-shell{color-scheme:dark;--guide-bg:#10130f;--guide-nav-bg:#151a13;--guide-topbar-bg:color-mix(in srgb,#151a13 92%,black);--guide-subtle-bg:color-mix(in srgb,var(--panel-2) 50%,black);--guide-active-bg:color-mix(in srgb,var(--panel-2) 72%,black);--guide-frontmatter-bg:color-mix(in srgb,var(--panel) 64%,#10130f);--guide-frontmatter-label-bg:color-mix(in srgb,var(--panel) 58%,#10130f);--guide-image-bg:color-mix(in srgb,var(--panel) 86%,black);--guide-filter-active-bg:color-mix(in srgb,var(--accent) 78%,#102015);--guide-filter-active-text:#07100c;--guide-text-strong:var(--text);--guide-topbar-border:color-mix(in srgb,var(--line) 58%,black);--guide-soft-border:color-mix(in srgb,var(--line) 74%,black);--guide-control-bg:color-mix(in srgb,var(--panel) 82%,black);background:var(--guide-bg);color:var(--text)}.gm-editor-topbar,.gm-guide-topbar{min-height:68px;border-bottom-color:var(--guide-topbar-border);background:var(--guide-topbar-bg);padding:12px 24px}.gm-editor-brand,.gm-guide-brand{min-width:0;display:grid;grid-gap:3px;gap:3px}.gm-editor-title-row,.gm-guide-title-row{gap:10px}.gm-editor-topbar h1,.gm-guide-topbar h1{font-size:19px;font-weight:800;letter-spacing:0}.gm-editor-topbar small,.gm-guide-topbar small{color:color-mix(in srgb,var(--muted) 86%,var(--text));font-size:12px;font-weight:650}.gm-editor-nav,.gm-guide-nav{gap:6px}.gm-editor-nav .button,.gm-guide-nav .button{min-height:36px;border-color:transparent;border-radius:999px;background:transparent;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:13px;font-weight:750;line-height:1;padding:9px 12px;text-decoration:none}.gm-editor-nav .button:focus-visible,.gm-editor-nav .button:hover:not(:disabled),.gm-guide-nav .button:focus-visible,.gm-guide-nav .button:hover:not(:disabled){border-color:color-mix(in srgb,var(--line) 84%,transparent);background:var(--guide-subtle-bg);color:var(--text);filter:none;outline:none}.gm-editor-nav .button:active:not(:disabled),.gm-guide-nav .button:active:not(:disabled){transform:translateY(1px)}html[data-player-theme=light] .gm-editor-shell,html[data-player-theme=light] .gm-guide-shell,html[data-player-theme=light] .gm-shell,html[data-player-theme=light] .player-guide-shell,html[data-player-theme=light] .player-map-shell{color-scheme:light;--bg:#f3eddd;--panel:#fffaf0;--panel-2:#e5ead9;--line:#b9c6ae;--text:#20261d;--muted:#64705d;--accent:#35775b;--accent-2:#8f5d20;--danger:#b84d43;--guide-bg:#f4efdf;--guide-nav-bg:#eee8d8;--guide-topbar-bg:#f8f4e9;--guide-subtle-bg:#e8eddd;--guide-active-bg:#dbe7d5;--guide-frontmatter-bg:#fffbf1;--guide-frontmatter-label-bg:#edf2e4;--guide-image-bg:#fffaf0;--guide-filter-active-bg:#2f7658;--guide-filter-active-text:#f7f2e8;--guide-text-strong:#151b13;--guide-topbar-border:#c9d3bf;--guide-soft-border:#c7d0bd;--guide-control-bg:#fffaf0}.player-theme-switch{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:999px;background:color-mix(in srgb,var(--guide-control-bg) 82%,transparent);padding:3px}.player-theme-switch button{min-height:30px;display:inline-flex;align-items:center;gap:5px;border:0;border-radius:999px;background:transparent;color:color-mix(in srgb,var(--muted) 88%,var(--text));cursor:pointer;font-size:12px;font-weight:750;line-height:1;padding:6px 9px}.player-theme-switch button:focus-visible,.player-theme-switch button:hover{background:var(--guide-subtle-bg);color:var(--text);outline:none}.player-theme-switch button.active{background:color-mix(in srgb,var(--accent) 22%,var(--guide-control-bg));color:var(--guide-text-strong)}.player-theme-switch svg{flex:0 0 auto}.gm-shell{background:var(--guide-bg)}.gm-shell .gm-sidebar{border-right-color:var(--guide-topbar-border);background:var(--guide-topbar-bg);box-shadow:1px 0 0 color-mix(in srgb,var(--guide-topbar-border) 55%,transparent);padding:22px 18px}.gm-shell .gm-sidebar h1{color:var(--guide-text-strong);font-size:20px;font-weight:850;letter-spacing:0}.gm-shell .gm-sidebar small{color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:12px;font-weight:650}.gm-shell .gm-nav{gap:6px}.gm-shell .gm-nav a{min-height:40px;border-color:transparent;border-radius:999px;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:13px;font-weight:780;padding:11px 14px;transition:background-color .12s ease,border-color .12s ease,color .12s ease,transform 80ms ease}.gm-shell .gm-nav a[aria-current=page]{border-color:color-mix(in srgb,var(--accent) 58%,transparent);background:color-mix(in srgb,var(--accent) 18%,var(--guide-control-bg));color:var(--guide-text-strong);box-shadow:none}.gm-shell .gm-nav a:focus-visible,.gm-shell .gm-nav a:hover{border-color:color-mix(in srgb,var(--line) 84%,transparent);background:var(--guide-subtle-bg);color:var(--text);outline:none}.gm-shell .gm-nav a:active{transform:translateY(1px)}.gm-shell .gm-main{background:var(--guide-bg)}.gm-main-theme-row{display:flex;justify-content:flex-end;margin-bottom:18px}.gm-shell .dashboard-group{gap:20px;border:0;border-radius:0;background:transparent;padding:0}.gm-shell .dashboard-group-header{align-items:flex-start;border-bottom-color:var(--guide-topbar-border);padding-bottom:18px}.gm-shell .dashboard-group-header h2,.gm-shell .stack>div>h2{color:var(--guide-text-strong);font-size:clamp(28px,4vw,44px);font-weight:850;letter-spacing:0;line-height:1}.gm-shell .dashboard-group-header small,.gm-shell .stack>div>small{color:color-mix(in srgb,var(--muted) 88%,var(--text));font-weight:650;line-height:1.45}.gm-shell .panel{border-color:var(--guide-soft-border);border-radius:8px;background:color-mix(in srgb,var(--guide-control-bg) 86%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,white 5%,transparent)}.gm-shell .panel h3{margin-top:0;color:var(--guide-text-strong);font-size:18px;font-weight:820;letter-spacing:0}.gm-shell .field{color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:13px;font-weight:650}.gm-shell .field input,.gm-shell .field select,.gm-shell .field textarea,.gm-shell .hex-choice,.gm-shell .map-dimensions-field input{border-color:var(--guide-soft-border);background:var(--guide-control-bg);color:var(--text)}.gm-shell .field input::placeholder,.gm-shell .field textarea::placeholder{color:color-mix(in srgb,var(--muted) 74%,transparent)}.gm-shell .field input:focus,.gm-shell .field select:focus,.gm-shell .field textarea:focus,.gm-shell .map-dimensions-field input:focus{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));outline:2px solid color-mix(in srgb,var(--accent) 22%,transparent);outline-offset:1px}.gm-shell .field input[type=file]::-webkit-file-upload-button{margin-right:10px;border:1px solid var(--guide-soft-border);border-radius:999px;background:var(--guide-subtle-bg);color:var(--text);cursor:pointer;font:inherit;font-weight:750;padding:8px 12px}.gm-shell .field input[type=file]::file-selector-button{margin-right:10px;border:1px solid var(--guide-soft-border);border-radius:999px;background:var(--guide-subtle-bg);color:var(--text);cursor:pointer;font:inherit;font-weight:750;padding:8px 12px}.gm-shell .button{border-color:color-mix(in srgb,var(--accent) 64%,transparent);border-radius:8px;background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text);font-weight:800}.gm-shell .button.secondary{border-color:var(--guide-soft-border);background:color-mix(in srgb,var(--guide-control-bg) 72%,transparent);color:var(--text)}.gm-shell .button.danger{border-color:color-mix(in srgb,var(--danger) 68%,transparent);background:var(--danger);color:#fffaf0}.gm-shell .button:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 80%,white);filter:brightness(1.08)}.gm-shell .button:active:not(:disabled){transform:translateY(1px)}.gm-shell .calendar-template-panel,.gm-shell .compact-import-form,.gm-shell .compact-map-form{min-height:100%}.gm-shell .audit-details summary,.gm-shell .calendar-template-panel summary,.gm-shell .calibration-panel summary,.gm-shell .delete-map-panel summary,.gm-shell .discord-role-panel summary,.gm-shell .manual-share-panel summary,.gm-shell .map-details-panel summary,.gm-shell .snapshot-action-panel summary,.gm-shell .tileset-delete-panel summary{display:inline-flex;align-items:center;min-height:30px;border-radius:999px;color:color-mix(in srgb,var(--muted) 86%,var(--text));cursor:pointer;font-weight:800}.gm-shell .audit-details summary::-webkit-details-marker,.gm-shell .calendar-template-panel summary::-webkit-details-marker,.gm-shell .calibration-panel summary::-webkit-details-marker,.gm-shell .delete-map-panel summary::-webkit-details-marker,.gm-shell .discord-role-panel summary::-webkit-details-marker,.gm-shell .manual-share-panel summary::-webkit-details-marker,.gm-shell .map-details-panel summary::-webkit-details-marker,.gm-shell .snapshot-action-panel summary::-webkit-details-marker,.gm-shell .tileset-delete-panel summary::-webkit-details-marker{display:none}.gm-shell .audit-details summary:before,.gm-shell .calendar-template-panel summary:before,.gm-shell .calibration-panel summary:before,.gm-shell .delete-map-panel summary:before,.gm-shell .discord-role-panel summary:before,.gm-shell .manual-share-panel summary:before,.gm-shell .map-details-panel summary:before,.gm-shell .snapshot-action-panel summary:before,.gm-shell .tileset-delete-panel summary:before{content:"";width:0;height:0;margin-right:8px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid;transform-origin:45% 50%;transition:transform .12s ease}.gm-shell .audit-details[open]>summary:before,.gm-shell .calendar-template-panel[open]>summary:before,.gm-shell .calibration-panel[open]>summary:before,.gm-shell .delete-map-panel[open]>summary:before,.gm-shell .discord-role-panel[open]>summary:before,.gm-shell .manual-share-panel[open]>summary:before,.gm-shell .map-details-panel[open]>summary:before,.gm-shell .snapshot-action-panel[open]>summary:before,.gm-shell .tileset-delete-panel[open]>summary:before{transform:rotate(90deg)}.gm-shell .audit-details summary:hover,.gm-shell .calendar-template-panel summary:hover,.gm-shell .calibration-panel summary:hover,.gm-shell .delete-map-panel summary:hover,.gm-shell .discord-role-panel summary:hover,.gm-shell .manual-share-panel summary:hover,.gm-shell .map-details-panel summary:hover,.gm-shell .snapshot-action-panel summary:hover,.gm-shell .tileset-delete-panel summary:hover{color:var(--text)}.gm-shell .delete-map-panel,.gm-shell .discord-role-panel,.gm-shell .manual-share-panel,.gm-shell .map-details-panel,.gm-shell .tileset-delete-panel{border-top-color:color-mix(in srgb,var(--guide-soft-border) 75%,transparent)}.gm-shell .delete-map-panel summary,.gm-shell .snapshot-action-panel summary,.gm-shell .tileset-delete-panel summary{color:var(--danger)}.gm-shell .map-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),480px));gap:14px;justify-content:start}.gm-shell .asset-card,.gm-shell .discord-guild-card,.gm-shell .discord-profile-row,.gm-shell .map-list-item,.gm-shell .tileset-list-row{border-color:var(--guide-soft-border);border-radius:8px;background:color-mix(in srgb,var(--guide-control-bg) 72%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,white 5%,transparent)}.gm-shell .map-list-item{padding:14px}.gm-shell .map-list-summary{gap:12px}.gm-shell .asset-thumbnail,.gm-shell .map-thumbnail,.gm-shell .snapshot-preview{border-color:var(--guide-soft-border);border-radius:8px;background-color:color-mix(in srgb,var(--guide-subtle-bg) 72%,black)}.gm-shell .map-list-summary:hover .map-thumbnail{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.gm-shell .asset-card-main strong,.gm-shell .discord-profile-main strong,.gm-shell .map-title-row strong,.gm-shell .snapshot-meta strong{color:var(--guide-text-strong);font-weight:820}.gm-shell .audit-status,.gm-shell .map-access-badge{border-color:color-mix(in srgb,var(--line) 76%,transparent);background:color-mix(in srgb,var(--guide-subtle-bg) 72%,transparent);color:color-mix(in srgb,var(--muted) 84%,var(--text))}.gm-shell .map-actions{grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:7px}.gm-shell .map-actions .button{min-height:38px;border-radius:999px}.gm-shell .calendar-template-row,.gm-shell .collaborator-row,.gm-shell .discord-role-row,.gm-shell .snapshot-row{border-top-color:color-mix(in srgb,var(--guide-soft-border) 72%,transparent)}.gm-shell .checkbox-row input[type=checkbox]{border-color:var(--guide-soft-border);background:color-mix(in srgb,var(--guide-control-bg) 82%,black)}.gm-shell .checkbox-row input[type=checkbox]:checked{border-color:color-mix(in srgb,var(--accent) 76%,white);background:color-mix(in srgb,var(--accent) 34%,var(--guide-control-bg))}.gm-shell .audit-log-panel{padding:0}.gm-shell .audit-log-panel .docs-table-wrap{margin:0}.gm-shell .audit-details pre{border-color:var(--guide-soft-border);background:var(--guide-control-bg);color:var(--muted)}.gm-shell .docs-toc{border-color:var(--guide-soft-border);background:color-mix(in srgb,var(--guide-control-bg) 86%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,white 5%,transparent);padding:14px}.gm-shell .docs-toc summary{display:flex;align-items:center;gap:9px;color:var(--guide-text-strong);list-style:none;padding:6px 8px}.gm-shell .docs-toc summary::-webkit-details-marker{display:none}.gm-shell .docs-toc summary:before{content:"";flex:0 0 auto;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid;transform-origin:45% 50%;transition:transform .12s ease}.gm-shell .docs-toc details[open]>summary:before{transform:rotate(90deg)}.gm-shell .docs-toc details>div{gap:5px;margin-top:10px}.gm-shell .docs-toc a{border:1px solid transparent;border-radius:999px;color:color-mix(in srgb,var(--muted) 90%,var(--text));padding:9px 12px 9px 34px}.gm-shell .docs-toc a:focus-visible,.gm-shell .docs-toc a:hover{border-color:color-mix(in srgb,var(--accent) 42%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--guide-subtle-bg));color:var(--guide-text-strong);outline:none}.gm-shell .docs-steps{border-color:var(--guide-soft-border);background:color-mix(in srgb,var(--guide-control-bg) 86%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,white 5%,transparent)}.gm-shell .docs-steps li{color:color-mix(in srgb,var(--muted) 88%,var(--text))}.player-guide-shell .field input,.player-guide-shell .field select,.player-guide-shell .field textarea{border-color:var(--line);background:var(--guide-control-bg);color:var(--text)}.player-guide-shell .field input::placeholder,.player-guide-shell .field textarea::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}.player-guide-shell .field input:focus,.player-guide-shell .field select:focus,.player-guide-shell .field textarea:focus{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));outline:2px solid color-mix(in srgb,var(--accent) 22%,transparent);outline-offset:1px}.gm-editor-shell input[type=range],.gm-guide-shell input[type=range],.player-guide-shell input[type=range],.player-map-shell input[type=range]{accent-color:var(--accent)}.player-guide-topbar,.player-map-topbar{min-height:68px;border-bottom:1px solid color-mix(in srgb,var(--line) 58%,black);background:color-mix(in srgb,#151a13 92%,black);padding:12px 24px}.player-guide-shell .player-guide-topbar,.player-map-shell .player-map-topbar{border-bottom-color:var(--guide-topbar-border);background:var(--guide-topbar-bg)}.player-guide-brand,.player-map-brand{min-width:0;display:grid;grid-gap:3px;gap:3px}.player-guide-title-row,.player-map-title-row{gap:10px}.player-guide-topbar h1,.player-map-topbar h1{font-size:19px;font-weight:800;letter-spacing:0}.player-guide-topbar small,.player-map-topbar small{color:color-mix(in srgb,var(--muted) 86%,var(--text));font-size:12px;font-weight:650}.player-guide-nav,.player-map-nav{gap:6px}.player-guide-nav-link,.player-map-nav-link{display:inline-flex;align-items:center;min-height:36px;border:1px solid transparent;border-radius:999px;color:color-mix(in srgb,var(--muted) 88%,var(--text));font-size:13px;font-weight:750;line-height:1;padding:9px 12px;text-decoration:none}.player-guide-nav-link:focus-visible,.player-guide-nav-link:hover,.player-map-nav-link:focus-visible,.player-map-nav-link:hover{border-color:color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--panel-2) 50%,black);color:var(--text);outline:none}.player-guide-shell .player-guide-nav-link:focus-visible,.player-guide-shell .player-guide-nav-link:hover,.player-map-shell .player-map-nav-link:focus-visible,.player-map-shell .player-map-nav-link:hover{background:var(--guide-subtle-bg)}.player-guide-topbar .map-access-badge,.player-map-topbar .map-access-badge{min-height:30px;display:inline-flex;align-items:center;border-color:color-mix(in srgb,var(--accent-2) 42%,var(--line));background:color-mix(in srgb,var(--accent-2) 10%,transparent);padding:5px 10px}.player-guide-shell .map-access-badge,.player-map-shell .map-access-badge{background:color-mix(in srgb,var(--accent-2) 12%,var(--guide-control-bg))}.workspace{min-height:0;overflow:hidden;display:grid;grid-template-columns:1fr}.workspace.editor{grid-template-columns:minmax(0,1fr) 10px auto}.canvas-wrap{position:relative;height:100%;min-height:0;overflow:hidden;background:linear-gradient(0deg,rgba(17,19,15,.84),rgba(17,19,15,.84)),radial-gradient(circle at top left,#39564a,transparent 42%),#171a14}.map-error{position:absolute;z-index:4;left:12px;top:12px;max-width:min(520px,calc(100% - 24px));border:1px solid color-mix(in srgb,var(--danger) 70%,white);border-radius:6px;background:color-mix(in srgb,var(--danger) 24%,#120f0d);color:var(--text);padding:10px 12px;font-size:13px}.gm-play-canvas .map-error{left:40px;max-width:min(520px,calc(100% - 52px))}.map-discord-publish{position:absolute;z-index:5;right:12px;top:12px;display:flex;align-items:center;gap:10px;max-width:min(440px,calc(100% - 24px));border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,black);padding:8px;box-shadow:0 10px 32px rgba(0,0,0,.28)}.map-discord-publish small{color:var(--muted);font-size:12px}.map-chronicler-hint{position:absolute;z-index:5;right:12px;top:58px;max-width:min(280px,calc(100% - 24px));border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,black);display:grid;grid-gap:3px;gap:3px;padding:8px 10px;box-shadow:0 10px 32px rgba(0,0,0,.28)}.map-chronicler-hint strong{font-size:13px}.map-chronicler-hint small{color:var(--muted);font-size:12px}.map-chronicler-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.map-chronicler-actions .button{min-height:28px;padding:5px 9px}.player-calendar-panel{position:absolute;z-index:5;left:6px;top:12px;width:min(220px,calc(100% - 24px));border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,black);display:grid;grid-gap:8px;gap:8px;padding:10px;box-shadow:0 10px 32px rgba(0,0,0,.28);pointer-events:none}.player-calendar-panel small{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.02em}.player-calendar-panel strong{color:var(--text);font-size:22px;line-height:1}.player-calendar-panel span{color:var(--muted);font-size:13px}.player-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:4px;gap:4px;border-top:1px solid var(--line);padding-top:8px}.player-calendar-day{min-width:0;aspect-ratio:1;border:1px solid var(--line);border-radius:4px;background:color-mix(in srgb,var(--panel) 82%,black);color:var(--muted);display:grid;place-items:center;font-size:11px;line-height:1;position:relative}.player-calendar-day.elapsed{background:linear-gradient(135deg,transparent 46%,color-mix(in srgb,var(--muted) 55%,transparent) 47% 53%,transparent 54%),color-mix(in srgb,var(--panel-2) 72%,black);color:color-mix(in srgb,var(--muted) 72%,black)}.player-calendar-day.current{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--text);font-weight:700}.player-calendar-day.noted:after{content:"";position:absolute;right:3px;bottom:3px;width:4px;height:4px;border-radius:50%;background:var(--accent-2)}.gm-play-mode-control{position:absolute;z-index:5;left:0;top:12px;display:flex;align-items:stretch;max-width:min(356px,calc(100% - 24px))}.gm-play-mode-panel{width:min(330px,calc(100vw - 72px));height:auto;max-height:calc(100% - 24px);border:1px solid var(--line);border-left:0;border-radius:0 6px 6px 0;background:color-mix(in srgb,var(--panel) 90%,black);padding:10px;display:flex;flex-direction:column;gap:14px;overflow:auto;box-shadow:0 10px 32px rgba(0,0,0,.28)}.gm-play-mode-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.gm-play-mode-panel small{color:var(--muted);font-size:12px;min-width:0}.gm-play-radius-control{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:12px}.gm-play-section{display:grid;grid-gap:8px;gap:8px;min-width:0}.gm-play-section+.gm-play-section{border-top:1px solid var(--line);padding-top:14px}.day-tracker-section .gm-play-mode-row,.gm-play-player-map-section .gm-play-mode-row,.gm-play-travel-section .gm-play-mode-row{align-items:flex-start}.day-tracker-section .pill-switch,.gm-play-player-map-section .pill-switch,.gm-play-travel-section .pill-switch{max-width:100%}.gm-play-player-map-section .gm-play-mode-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.gm-play-control-stack{display:grid;justify-items:end;grid-gap:8px;gap:8px}.gm-play-mode-tab{align-items:center;align-self:stretch;display:flex;flex:0 0 34px;justify-content:center;width:34px;height:auto;min-height:160px;max-height:calc(100% - 24px);border:1px solid var(--line);border-left:0;border-radius:0 6px 6px 0;background:var(--panel);color:var(--text);cursor:pointer;font:inherit;font-size:12px;font-weight:700;writing-mode:vertical-rl;transform:rotate(180deg)}.gm-play-mode-tab:focus-visible,.gm-play-mode-tab:hover{border-color:var(--accent);outline:none}.gm-play-mode-control.collapsed .gm-play-mode-tab{box-shadow:0 10px 32px rgba(0,0,0,.28)}.gm-editor-shell .gm-play-mode-panel{background:color-mix(in srgb,var(--guide-nav-bg) 92%,black)}.gm-editor-shell .day-tracker-calendar,.gm-editor-shell .gm-play-mode-panel,.gm-editor-shell .gm-play-mode-tab,.gm-editor-shell .gm-play-section+.gm-play-section{border-color:var(--guide-soft-border)}.gm-editor-shell .gm-play-mode-tab{background:var(--guide-nav-bg);color:color-mix(in srgb,var(--muted) 88%,var(--text))}.gm-editor-shell .gm-play-mode-tab:focus-visible,.gm-editor-shell .gm-play-mode-tab:hover{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));background:var(--guide-subtle-bg);color:var(--text)}.gm-editor-shell .pill-switch{border-color:color-mix(in srgb,var(--line) 82%,transparent);background:var(--guide-control-bg)}.gm-editor-shell .pill-switch:focus-visible,.gm-editor-shell .pill-switch:hover{border-color:color-mix(in srgb,var(--accent) 66%,var(--line));background:var(--guide-subtle-bg)}.gm-editor-shell .day-tracker-day{border-color:color-mix(in srgb,var(--line) 82%,transparent);background:var(--guide-control-bg)}.gm-editor-shell .day-tracker-day:focus-visible,.gm-editor-shell .day-tracker-day:hover{border-color:color-mix(in srgb,var(--accent) 66%,var(--line));background:var(--guide-subtle-bg);outline:none}html[data-player-theme=light] .gm-editor-shell .gm-play-mode-panel{background:var(--guide-topbar-bg);color:var(--guide-text-strong);box-shadow:0 16px 44px rgba(65,58,38,.16)}html[data-player-theme=light] .gm-editor-shell .day-tracker-section span,html[data-player-theme=light] .gm-editor-shell .gm-play-mode-panel small,html[data-player-theme=light] .gm-editor-shell .gm-play-radius-control{color:color-mix(in srgb,var(--muted) 84%,var(--guide-text-strong))}html[data-player-theme=light] .gm-editor-shell .pill-switch{border-color:var(--guide-soft-border);background:var(--guide-control-bg);color:var(--guide-text-strong)}html[data-player-theme=light] .gm-editor-shell .pill-switch:after{border-color:var(--guide-soft-border);background:radial-gradient(circle at 7px 50%,color-mix(in srgb,var(--muted) 76%,var(--guide-text-strong)) 0 5px,transparent 5.5px),var(--guide-subtle-bg)}html[data-player-theme=light] .gm-editor-shell .pill-switch[aria-pressed=true]{border-color:var(--guide-filter-active-bg);background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}html[data-player-theme=light] .gm-editor-shell .pill-switch[aria-pressed=true]:after{border-color:color-mix(in srgb,var(--guide-filter-active-text) 80%,var(--guide-filter-active-bg));background:radial-gradient(circle at 17px 50%,var(--guide-filter-active-text) 0 5px,transparent 5.5px),color-mix(in srgb,var(--guide-filter-active-bg) 72%,var(--guide-filter-active-text))}html[data-player-theme=light] .gm-editor-shell .day-tracker-day.current{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--guide-filter-active-text) 44%,transparent)}html[data-player-theme=light] .gm-editor-shell .day-tracker-actions .button:not(.secondary),html[data-player-theme=light] .gm-editor-shell .day-tracker-day.current{border-color:var(--guide-filter-active-bg);background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}html[data-player-theme=light] .gm-editor-shell .day-tracker-actions .button.secondary{border-color:var(--guide-soft-border);background:var(--guide-control-bg);color:var(--guide-text-strong)}html[data-player-theme=light] .gm-editor-shell .reset-fog-modal .button.danger,html[data-player-theme=light] .gm-editor-shell .toolbar .reset-fog-button{border-color:color-mix(in srgb,var(--danger) 84%,#5e1f18);background:var(--danger);color:#fff7ee}.day-tracker-section small{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.02em}.day-tracker-section .gm-play-mode-row{margin-bottom:20px}.day-tracker-section strong{font-size:24px;line-height:1}.day-tracker-section span{color:var(--muted);font-size:13px}.day-tracker-section .day-tracker-hint{font-size:11px;line-height:1.35}.day-tracker-month-nav{align-items:center;display:grid;grid-gap:8px;gap:8px;grid-template-columns:32px minmax(0,1fr) 32px}.day-tracker-month-nav strong{font-size:15px;line-height:1.1;overflow-wrap:anywhere;text-align:center}.day-tracker-section{align-content:start;min-height:auto}.day-tracker-calendar{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}.day-tracker-day{min-width:0;aspect-ratio:1;border:1px solid var(--line);border-radius:4px;background:color-mix(in srgb,var(--panel) 82%,black);color:var(--muted);cursor:pointer;font:inherit;font-size:11px;line-height:1;padding:0;position:relative}.day-tracker-day.elapsed{background:linear-gradient(135deg,transparent 46%,color-mix(in srgb,var(--muted) 55%,transparent) 47% 53%,transparent 54%),color-mix(in srgb,var(--panel-2) 72%,black);color:color-mix(in srgb,var(--muted) 72%,black)}.day-tracker-day.current{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--text);font-weight:700}.day-tracker-day.noted:after{content:"";position:absolute;right:3px;bottom:3px;width:4px;height:4px;border-radius:50%;background:var(--accent-2)}.day-tracker-note-popover{position:absolute;z-index:10;left:50%;bottom:calc(100% + 8px);width:min(220px,72vw);transform:translateX(-50%);display:grid;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 94%,black);color:var(--text);padding:8px;box-shadow:0 10px 32px rgba(0,0,0,.32);opacity:0;pointer-events:none;text-align:left;visibility:hidden;white-space:normal}.day-tracker-day-column-0 .day-tracker-note-popover,.day-tracker-day-column-1 .day-tracker-note-popover{left:0;transform:none}.day-tracker-day-column-5 .day-tracker-note-popover,.day-tracker-day-column-6 .day-tracker-note-popover{right:0;left:auto;transform:none}.day-tracker-note-popover strong{font-size:11px;line-height:1.2}.day-tracker-note-popover div{color:var(--text);font-size:12px;line-height:1.35}.day-tracker-day:focus-visible .day-tracker-note-popover,.day-tracker-day:hover .day-tracker-note-popover{opacity:1;visibility:visible}.day-tracker-day:focus-visible,.day-tracker-day:hover{border-color:var(--accent);outline:none}.day-tracker-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:8px;gap:8px}.calendar-note-modal-backdrop{position:absolute;z-index:8;inset:0;display:grid;place-items:center;background:rgba(5,8,6,.42);padding:16px}.calendar-note-modal{width:min(520px,100%);max-height:min(720px,calc(100vh - 32px));overflow:auto;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--panel) 94%,black);box-shadow:0 20px 60px rgba(0,0,0,.42);color:var(--text);padding:14px;display:grid;grid-gap:12px;gap:12px}.reset-fog-modal{width:min(440px,100%);border-color:color-mix(in srgb,var(--danger) 42%,var(--line))}.reset-fog-copy{margin:0;color:var(--muted);line-height:1.45}.calendar-note-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.calendar-note-field,.calendar-note-header div{display:grid;grid-gap:4px;gap:4px}.calendar-note-field span,.calendar-note-header small,.calendar-note-meta{color:var(--muted);font-size:12px}.calendar-note-header small{text-transform:uppercase;letter-spacing:.02em}.calendar-note-header strong{font-size:22px;line-height:1.15}.calendar-note-field textarea{width:100%;min-height:170px;resize:vertical;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 82%,black);color:var(--text);font:inherit;line-height:1.45;padding:10px}.calendar-note-field textarea:focus{border-color:var(--accent);outline:none}.calendar-note-meta{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px}.calendar-note-preview{border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 86%,black);padding:10px}.calendar-note-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.poi-note-popover{position:absolute;z-index:7;width:min(260px,72vw);overflow:auto;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 94%,black);color:var(--text);padding:9px;box-shadow:0 10px 32px rgba(0,0,0,.32);pointer-events:auto;display:grid;grid-gap:8px;gap:8px}.poi-note-popover.article-popover{width:min(440px,calc(100vw - 24px));gap:10px}.poi-note-popover-title{font-size:12px;line-height:1.2}.poi-note-popover.article-popover .campaign-article-markdown{gap:12px}.poi-note-popover-sections{display:grid;grid-gap:16px;gap:16px}.poi-note-popover-section{min-width:0}.poi-note-popover-section+.poi-note-popover-section{border-top:1px solid var(--line);padding-top:14px}.poi-note-popover-section h3{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.02em;margin:0 0 8px;text-transform:uppercase}.poi-note-popover.article-popover .campaign-frontmatter-facts{table-layout:fixed}.poi-note-popover.article-popover .campaign-frontmatter-facts th{width:160px;padding:8px 10px}.poi-note-popover.article-popover .campaign-frontmatter-facts td{padding:8px 10px;overflow-wrap:normal;word-break:normal}.poi-note-popover.article-popover .calendar-note-markdown,.poi-note-popover.article-popover .campaign-guide-article-body .calendar-note-markdown{font-size:14px;line-height:1.45}.calendar-note-markdown{display:grid;grid-gap:6px;gap:6px}.calendar-note-markdown blockquote,.calendar-note-markdown h1,.calendar-note-markdown h2,.calendar-note-markdown h3,.calendar-note-markdown h4,.calendar-note-markdown h5,.calendar-note-markdown h6,.calendar-note-markdown p,.calendar-note-markdown ul{margin:0}.calendar-note-markdown ul{padding-left:18px}.calendar-note-table-wrap{max-width:100%;overflow-x:auto}.calendar-note-markdown table{width:100%;min-width:220px;border-collapse:collapse;font-size:12px;line-height:1.35}.calendar-note-markdown td,.calendar-note-markdown th{border:1px solid var(--line);padding:6px 8px;vertical-align:top}.calendar-note-markdown th{background:color-mix(in srgb,var(--panel-2) 76%,black);color:var(--text);font-weight:800}.calendar-note-markdown td{color:var(--text)}.calendar-note-markdown blockquote{border-left:3px solid var(--accent-2);color:var(--muted);padding-left:8px}.calendar-note-markdown a{color:var(--accent-2);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;overflow-wrap:anywhere}.calendar-note-markdown a:focus-visible,.calendar-note-markdown a:hover{color:var(--accent)}.calendar-note-markdown h1,.calendar-note-markdown h2,.calendar-note-markdown h3,.calendar-note-markdown h4,.calendar-note-markdown h5,.calendar-note-markdown h6{color:var(--text);line-height:1.15}.calendar-note-markdown h1{font-size:18px}.calendar-note-markdown h2{font-size:16px}.calendar-note-markdown h3,.calendar-note-markdown h4,.calendar-note-markdown h5,.calendar-note-markdown h6{font-size:14px}.calendar-note-markdown code{border:1px solid var(--line);border-radius:4px;background:color-mix(in srgb,var(--panel-2) 82%,black);padding:0 4px}.notes-workbench{grid-template-columns:minmax(280px,360px) minmax(0,1fr)}.campaign-guide-workbench,.notes-workbench{min-height:0;display:grid;border-top:1px solid var(--line);background:var(--bg)}.campaign-guide-workbench{grid-template-columns:minmax(300px,390px) minmax(0,1fr)}.campaign-guide-reader{min-height:0;display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);border-top:1px solid var(--line);background:var(--bg)}.campaign-guide-reader-modern{grid-template-columns:minmax(300px,380px) minmax(0,1fr);background:var(--guide-bg)}.campaign-guide-reader-modern .campaign-guide-reader-nav{background:var(--guide-nav-bg)}.campaign-guide-reader-modern .notes-list-controls{gap:12px;padding:16px}.campaign-guide-reader-modern .notes-list-meta{padding:10px 16px}.campaign-guide-reader-modern .campaign-guide-reader-list{padding:8px}.campaign-guide-reader-modern .campaign-guide-category{border-bottom:0}.campaign-guide-reader-modern .campaign-guide-category+.campaign-guide-category{margin-top:8px}.campaign-guide-reader-modern .campaign-guide-category summary{border-radius:6px;color:color-mix(in srgb,var(--muted) 86%,var(--text));padding:9px 10px}.campaign-guide-reader-modern .campaign-guide-category summary:focus-visible,.campaign-guide-reader-modern .campaign-guide-category summary:hover{background:var(--guide-subtle-bg);outline:none}.campaign-guide-reader-modern .campaign-guide-category .notes-list{gap:6px;padding:0 0 6px 18px}.campaign-guide-reader-modern .notes-list-item{border-radius:6px;border:1px solid transparent;background:transparent;padding:10px 11px}.campaign-guide-reader-modern .notes-list-item:focus-visible,.campaign-guide-reader-modern .notes-list-item:hover{border-color:color-mix(in srgb,var(--line) 80%,transparent);background:var(--guide-subtle-bg)}.campaign-guide-reader-modern .notes-list-item.active{border-color:color-mix(in srgb,var(--accent) 72%,var(--line));background:var(--guide-active-bg);box-shadow:inset 3px 0 0 var(--accent)}.campaign-guide-reader-modern .notes-list-item-topline strong{font-size:15px}.campaign-guide-reader-modern .notes-list-item-excerpt{line-height:1.45}.gm-guide-shell .campaign-guide-workbench{grid-template-columns:minmax(300px,380px) minmax(0,1fr);border-top-color:var(--guide-topbar-border);background:var(--guide-bg)}.gm-guide-shell .campaign-guide-list-panel{border-right-color:var(--guide-topbar-border);background:var(--guide-nav-bg)}.gm-guide-shell .notes-list-controls{gap:12px;padding:16px}.gm-guide-shell .notes-list-meta{padding:10px 16px}.gm-guide-shell .notes-list{gap:6px;padding:8px}.gm-guide-shell .notes-list-item{border-radius:6px;border:1px solid transparent;background:transparent;padding:10px 11px}.gm-guide-shell .notes-list-item:focus-visible,.gm-guide-shell .notes-list-item:hover{border-color:color-mix(in srgb,var(--line) 80%,transparent);background:var(--guide-subtle-bg)}.gm-guide-shell .notes-list-item.active{border-color:color-mix(in srgb,var(--accent) 72%,var(--line));background:var(--guide-active-bg);box-shadow:inset 3px 0 0 var(--accent)}.gm-guide-shell .notes-list-item-topline strong{font-size:15px}.gm-guide-shell .notes-list-item-topline small{border-color:color-mix(in srgb,var(--line) 86%,transparent);background:color-mix(in srgb,var(--panel) 54%,transparent)}.gm-guide-shell .campaign-guide-filter button{background:var(--guide-control-bg)}.gm-guide-shell .campaign-guide-filter button:focus-visible,.gm-guide-shell .campaign-guide-filter button:hover{border-color:color-mix(in srgb,var(--line) 86%,var(--accent));background:var(--guide-subtle-bg);color:var(--text);outline:none}.gm-guide-shell .campaign-guide-filter button.active,.gm-guide-shell .segmented.campaign-guide-filter button.active{background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}.gm-guide-shell .campaign-guide-editor-panel{background:var(--guide-bg);padding:16px}.gm-guide-shell .notes-editor-header{border-bottom-color:var(--guide-soft-border);padding-bottom:14px}.gm-guide-shell .campaign-guide-body-section>header,.gm-guide-shell .campaign-guide-preview-section h3,.gm-guide-shell .notes-editor-header small{color:color-mix(in srgb,var(--muted) 86%,var(--text))}.gm-guide-shell .notes-editor-header h2{margin:4px 0;font-size:24px;line-height:1.05}.gm-guide-shell .field input,.gm-guide-shell .field select,.gm-guide-shell .field textarea{border-color:color-mix(in srgb,var(--line) 86%,transparent);background:var(--guide-control-bg)}.gm-guide-shell .field input:focus,.gm-guide-shell .field select:focus,.gm-guide-shell .field textarea:focus,.gm-guide-shell .notes-editor-field textarea:focus{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));outline:2px solid color-mix(in srgb,var(--accent) 20%,transparent);outline-offset:1px}.gm-guide-shell .campaign-guide-image-manager{gap:10px;border:1px solid var(--guide-soft-border);border-radius:8px;background:color-mix(in srgb,var(--guide-control-bg) 56%,transparent);padding:10px}.gm-guide-shell .campaign-guide-body-toggle:focus-visible,.gm-guide-shell .campaign-guide-body-toggle:hover{background:var(--guide-subtle-bg)}.gm-guide-shell .campaign-guide-body-resize-handle:before{background:var(--guide-soft-border)}.gm-guide-shell .campaign-guide-body-resize-handle svg{background:var(--guide-bg)}.gm-guide-shell .notes-editor-field textarea,.gm-guide-shell .notes-preview-panel{border-color:var(--guide-soft-border);background:color-mix(in srgb,var(--guide-control-bg) 66%,var(--guide-bg))}.gm-guide-shell .campaign-guide-preview-panel{border-radius:8px;gap:18px;padding:14px}.gm-guide-shell .campaign-guide-preview-section{gap:14px}.gm-guide-shell .campaign-guide-preview-section+.campaign-guide-preview-section{border-top-color:var(--guide-soft-border)}.gm-guide-shell .campaign-frontmatter-wrap{border-color:var(--guide-soft-border);border-left-color:var(--accent);background:var(--guide-frontmatter-bg)}.gm-guide-shell .campaign-frontmatter-facts th{background:var(--guide-frontmatter-label-bg)}.gm-guide-shell .campaign-guide-image-missing,.gm-guide-shell .campaign-guide-image-tile img{border-color:var(--guide-soft-border);background:var(--guide-image-bg)}.gm-guide-shell .notes-editor-actions{border-top-color:var(--guide-soft-border)}.campaign-persona-actions{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.campaign-persona-actions span{color:var(--muted);font-size:12px}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal{border-color:var(--guide-soft-border);background:var(--guide-topbar-bg);color:var(--guide-text-strong);box-shadow:0 18px 46px rgba(45,58,38,.18)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .field textarea{border-color:var(--guide-soft-border);background:var(--guide-control-bg);color:var(--guide-text-strong)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .field textarea:focus{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));outline:2px solid color-mix(in srgb,var(--accent) 20%,transparent);outline-offset:1px}html[data-player-theme=light] .gm-guide-shell .campaign-persona-actions span,html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .checkbox-row{color:color-mix(in srgb,var(--muted) 78%,var(--guide-text-strong))}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .checkbox-row input[type=checkbox]{border-color:var(--guide-soft-border);background:var(--guide-subtle-bg)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .checkbox-row input[type=checkbox]:after{background:color-mix(in srgb,var(--muted) 72%,var(--guide-text-strong))}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .checkbox-row input[type=checkbox]:checked{border-color:var(--guide-filter-active-bg);background:var(--guide-filter-active-bg)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-modal .checkbox-row input[type=checkbox]:checked:after{background:var(--guide-filter-active-text)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-actions .button.secondary{border-color:var(--guide-soft-border);background:var(--guide-subtle-bg);color:var(--guide-text-strong)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-actions .button:not(.secondary){border-color:var(--guide-filter-active-bg);background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}html[data-player-theme=light] .gm-guide-shell .campaign-persona-actions .button:disabled{border-color:color-mix(in srgb,var(--guide-soft-border) 84%,var(--guide-bg));background:color-mix(in srgb,var(--guide-filter-active-bg) 40%,var(--guide-subtle-bg));color:color-mix(in srgb,var(--guide-text-strong) 54%,var(--guide-bg));opacity:1}html[data-player-theme=light] .gm-guide-shell .notes-editor-actions>.button:not(.secondary){color:var(--guide-filter-active-text)}html[data-player-theme=light] .gm-guide-shell .notes-list-controls>.button:not(.secondary),html[data-player-theme=light] .gm-guide-shell .pill-switch[aria-pressed=true]{border-color:var(--guide-filter-active-bg);background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}.campaign-guide-list-panel,.notes-list-panel{min-height:0;border-right:1px solid var(--line);background:color-mix(in srgb,var(--panel) 72%,black);display:grid;grid-template-rows:auto auto minmax(0,1fr)}.notes-list-controls{display:grid;grid-gap:10px;gap:10px;padding:12px;border-bottom:1px solid var(--line)}.notes-search-field{gap:6px}.notes-checkbox{align-items:center;gap:8px}.notes-checkbox,.notes-list-meta{display:flex;color:var(--muted);font-size:12px}.notes-list-meta{justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px 12px}.notes-list{min-height:0;overflow:auto;display:grid;align-content:start}.notes-list-item{display:grid;grid-gap:5px;gap:5px;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer;font:inherit;padding:11px 12px;text-align:left}.notes-list-item.active,.notes-list-item:focus-visible,.notes-list-item:hover{background:color-mix(in srgb,var(--panel-2) 70%,black);outline:none}.notes-list-item.active{box-shadow:inset 3px 0 0 var(--accent)}.notes-list-item-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.notes-list-item-topline strong{min-width:0;overflow-wrap:anywhere;font-size:14px}.notes-list-item-topline small{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px;line-height:1;padding:4px 6px}.notes-list-item-context,.notes-list-item-excerpt{color:var(--muted);font-size:12px;line-height:1.35}.notes-list-item-excerpt{overflow-wrap:anywhere}.notes-empty-state{color:var(--muted);font-size:13px;line-height:1.45;margin:0;padding:14px 12px}.notes-empty-state.large{align-self:center;justify-self:center;max-width:420px;padding:24px;text-align:center}.notes-empty-state h2{color:var(--text);margin:0 0 8px}.notes-empty-preview{color:var(--muted);margin:0}.campaign-guide-editor-panel,.notes-editor-panel{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:14px;grid-gap:12px;gap:12px}.campaign-guide-editor-grid{min-height:0;height:100%;display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr);grid-gap:12px;gap:12px}.campaign-guide-editor-grid.preview-hidden{grid-template-columns:minmax(0,1fr)}.campaign-guide-form-stack{min-height:0;height:100%;display:flex;flex-direction:column;gap:10px}.campaign-guide-body-editor-stack{flex:1 1 280px;min-height:0;height:100%;display:grid;align-content:start;grid-template-rows:minmax(120px,50fr) 12px minmax(120px,50fr);grid-gap:0;gap:0}.campaign-guide-body-editor-stack.resizing{cursor:row-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none}.campaign-guide-body-editor-stack.single{grid-template-rows:minmax(160px,1fr)}.campaign-guide-body-section{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:6px;gap:6px;overflow:hidden}.campaign-guide-body-section.collapsed{grid-template-rows:auto;height:auto;min-height:0}.campaign-guide-body-section>header{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:6px;color:var(--muted);font-size:12px;padding:0 0 6px}.campaign-guide-body-section>header>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-guide-body-toggle{width:24px;height:24px;display:inline-grid;place-items:center;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;padding:0}.campaign-guide-body-toggle:focus-visible,.campaign-guide-body-toggle:hover{background:color-mix(in srgb,var(--panel-2) 78%,black);color:var(--text);outline:none}.campaign-guide-body-resize-handle{position:relative;min-width:0;width:100%;height:12px;display:grid;place-items:center;border:0;background:transparent;color:color-mix(in srgb,var(--muted) 72%,transparent);cursor:row-resize;padding:0}.campaign-guide-body-resize-handle:before{content:"";position:absolute;width:min(160px,42%);height:1px;background:var(--line)}.campaign-guide-body-resize-handle svg{position:relative;z-index:1;background:var(--bg);border-radius:999px}.campaign-guide-body-resize-handle:focus-visible,.campaign-guide-body-resize-handle:hover{color:var(--accent);outline:none}.campaign-guide-body-section>.notes-editor-field{height:100%;display:block;align-self:stretch}.campaign-guide-body-section>.notes-editor-field textarea{display:block;height:100%;min-height:140px;align-self:stretch;box-sizing:border-box}.campaign-guide-fields-row,.campaign-guide-link-fields{display:grid;grid-gap:10px;gap:10px}.campaign-guide-fields-row{grid-template-columns:repeat(3,minmax(0,1fr))}.campaign-guide-link-fields{grid-template-columns:minmax(180px,1.25fr) minmax(150px,1fr) minmax(82px,.45fr) minmax(180px,1fr)}.campaign-guide-fields-row .field,.campaign-guide-link-fields .field{min-width:0}.campaign-guide-alias-field textarea{min-height:44px;max-height:92px;resize:vertical}.campaign-guide-image-manager{min-width:0;display:grid;grid-gap:8px;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0}.campaign-guide-image-manager-header{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.campaign-guide-image-manager-header>div:first-child{min-width:0;display:grid;grid-gap:2px;gap:2px}.campaign-guide-image-manager-header strong{color:var(--text);font-size:13px}.campaign-guide-image-empty,.campaign-guide-image-manager-header span{color:var(--muted);font-size:12px}.campaign-guide-image-empty{margin:0}.campaign-guide-image-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px}.campaign-guide-image-actions .button{display:inline-flex;align-items:center;gap:6px}.compact-field{gap:4px;font-size:11px}.compact-field select{min-height:32px;padding:6px 28px 6px 9px}.campaign-guide-image-gallery{min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-gap:8px;gap:8px}.campaign-guide-article-body>.campaign-guide-image-gallery,.campaign-guide-preview-section>.campaign-guide-image-gallery{margin-bottom:12px}.campaign-guide-image-tile{position:relative;min-width:0;display:grid;grid-gap:6px;gap:6px;margin:0}.campaign-guide-image-tile img{height:auto;max-height:420px;object-fit:contain}.campaign-guide-image-missing,.campaign-guide-image-tile img{width:100%;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 86%,black)}.campaign-guide-image-missing{aspect-ratio:4/3;display:grid;place-items:center;color:var(--muted);font-size:12px;text-align:center}.campaign-guide-image-tile figcaption{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:8px;color:var(--muted);font-size:11px}.campaign-guide-image-tile figcaption span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-guide-image-tile figcaption select,.campaign-guide-image-tile figcaption small{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px;line-height:1;padding:3px 6px}.campaign-guide-image-tile figcaption select{max-width:92px;min-height:24px;background:color-mix(in srgb,var(--panel) 86%,black);cursor:pointer;padding:3px 20px 3px 7px}.campaign-guide-image-tile figcaption select:focus-visible{border-color:var(--accent);outline:none}.campaign-guide-image-delete{position:absolute;top:6px;right:6px;background:color-mix(in srgb,var(--danger) 18%,#11130f);color:var(--text)}.campaign-guide-preview-panel{align-self:stretch;display:grid;align-content:start;grid-gap:14px;gap:14px}.campaign-guide-preview-section{min-width:0;display:grid;grid-gap:12px;gap:12px}.campaign-guide-preview-section h3{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em;margin:0 0 6px;text-transform:uppercase}.campaign-guide-preview-section+.campaign-guide-preview-section{border-top:1px solid var(--line);margin-top:14px;padding-top:28px}.campaign-guide-filter{display:flex;flex-wrap:wrap;gap:6px;border:0;border-radius:0;overflow:visible;background:transparent}.campaign-guide-filter button{flex-grow:1;flex-shrink:1;flex-basis:calc(33.333% - 6px);min-width:86px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 82%,black);color:var(--muted);padding:7px 10px;font-size:12px;font-weight:700;line-height:1;text-align:center}.campaign-guide-filter button:last-child{border-right:1px solid var(--line)}.campaign-guide-filter button.active{border-color:color-mix(in srgb,var(--accent) 76%,white);background:var(--guide-filter-active-bg,color-mix(in srgb,var(--accent) 78%,#102015));color:var(--guide-filter-active-text,#07100c)}.campaign-guide-reader-modern .campaign-guide-filter button{background:var(--guide-control-bg)}.campaign-guide-reader-modern .campaign-guide-filter button:focus-visible,.campaign-guide-reader-modern .campaign-guide-filter button:hover{border-color:color-mix(in srgb,var(--line) 86%,var(--accent));background:var(--guide-subtle-bg);color:var(--text);outline:none}.campaign-guide-reader-modern .campaign-guide-filter button.active:focus-visible,.campaign-guide-reader-modern .campaign-guide-filter button.active:hover{background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}.campaign-guide-reader-list{min-height:0;overflow:auto}.campaign-guide-category{border-bottom:1px solid var(--line)}.campaign-guide-category summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;color:var(--text);font-size:12px;font-weight:800;letter-spacing:.02em;list-style:none;padding:10px 12px;text-transform:uppercase}.campaign-guide-category summary::-webkit-details-marker{display:none}.campaign-guide-category summary:before{content:">";color:var(--muted);font-size:12px;transform:rotate(0deg);transition:transform .12s ease}.campaign-guide-category[open] summary:before{transform:rotate(90deg)}.campaign-guide-category summary span{flex:1 1}.campaign-guide-category summary small{border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px;line-height:1;padding:4px 7px}.campaign-guide-reader-main{min-width:0;min-height:0;overflow:auto;padding:clamp(18px,3vw,40px)}.campaign-guide-reader-modern .campaign-guide-reader-main{background:var(--guide-bg);padding:34px 36px 48px}.campaign-guide-article-header{max-width:860px;border-bottom:1px solid var(--line);margin:0 auto 22px;padding-bottom:16px}.campaign-guide-reader-modern .campaign-guide-article-header{max-width:920px;border-bottom-color:var(--guide-soft-border);margin-bottom:28px;padding:8px 0 24px}.campaign-guide-article-header small{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.campaign-guide-reader-modern .campaign-guide-article-kicker{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;border:1px solid color-mix(in srgb,var(--accent-2) 56%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--accent-2) 12%,transparent);color:color-mix(in srgb,var(--accent-2) 72%,var(--text));padding:5px 9px}.campaign-guide-article-header h2{font-size:clamp(28px,4vw,48px);line-height:1.05;margin:8px 0;overflow-wrap:anywhere}.campaign-guide-reader-modern .campaign-guide-article-header h2{font-size:56px;line-height:1;margin:14px 0 0;max-width:14ch}.campaign-guide-article-header p{color:var(--muted);margin:0}.campaign-guide-reader-modern .campaign-guide-article-header p{font-size:15px;margin-top:12px}.campaign-guide-article-body{max-width:860px;margin:0 auto}.campaign-guide-reader-modern .campaign-guide-article-body{max-width:920px;display:grid;grid-gap:26px;gap:26px}.campaign-guide-reader-modern .campaign-guide-article-body>.campaign-guide-image-gallery{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:14px;margin-bottom:0}.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=npc] .campaign-guide-article-body>.campaign-guide-image-gallery{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),320px));justify-content:start}.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=calendar] .campaign-guide-article-body>.campaign-guide-image-gallery,.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=location] .campaign-guide-article-body>.campaign-guide-image-gallery,.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=lore] .campaign-guide-article-body>.campaign-guide-image-gallery{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}.campaign-guide-reader-modern .campaign-guide-article-body .campaign-guide-image-tile{align-content:start}.campaign-guide-reader-modern .campaign-guide-article-body .campaign-guide-image-tile img{width:auto;max-width:min(100%,520px);max-height:520px;border-color:color-mix(in srgb,var(--line) 82%,var(--guide-bg));border-radius:8px;background:var(--guide-image-bg)}.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=npc] .campaign-guide-article-body .campaign-guide-image-tile img{width:100%;height:400px;max-width:100%;max-height:none;border-color:transparent;background:var(--guide-bg)}.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=calendar] .campaign-guide-article-body .campaign-guide-image-tile img,.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=location] .campaign-guide-article-body .campaign-guide-image-tile img,.campaign-guide-reader-modern .campaign-guide-reader-main[data-article-type=lore] .campaign-guide-article-body .campaign-guide-image-tile img{max-width:min(100%,720px);max-height:560px}.campaign-guide-reader-modern .campaign-guide-image-missing{background:var(--guide-image-bg)}.campaign-guide-article-body .calendar-note-markdown{font-size:16px;line-height:1.65}.campaign-guide-reader-modern .campaign-guide-article-body .calendar-note-markdown{max-width:76ch;font-size:17px;line-height:1.75}.campaign-article-markdown{display:grid;grid-gap:18px;gap:18px}.campaign-guide-reader-modern .campaign-article-markdown{gap:24px}.campaign-frontmatter-wrap{border-radius:6px;border:1px solid var(--line);border-left:4px solid var(--accent);overflow:hidden;background:color-mix(in srgb,var(--panel) 82%,black)}.campaign-guide-reader-modern .campaign-frontmatter-wrap{border-color:var(--guide-soft-border);border-left-color:var(--accent);border-radius:8px;background:var(--guide-frontmatter-bg)}.campaign-frontmatter-facts{width:100%;border-collapse:collapse}.campaign-frontmatter-facts tr+tr{border-top:1px solid var(--line)}.campaign-frontmatter-facts td,.campaign-frontmatter-facts th{padding:10px 14px;text-align:left;vertical-align:top}.campaign-guide-reader-modern .campaign-frontmatter-facts td,.campaign-guide-reader-modern .campaign-frontmatter-facts th{padding:14px 18px}.campaign-frontmatter-facts th{width:210px;border-right:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.campaign-guide-reader-modern .campaign-frontmatter-facts th{width:220px;background:var(--guide-frontmatter-label-bg);color:color-mix(in srgb,var(--muted) 84%,var(--text))}.campaign-frontmatter-facts td{color:var(--text);font-size:15px;line-height:1.35;overflow-wrap:anywhere}.campaign-guide-reader-modern .campaign-frontmatter-facts td{font-size:17px;line-height:1.45}.campaign-frontmatter-facts .calendar-note-markdown{display:inline;font-size:inherit;line-height:inherit}.campaign-frontmatter-facts .calendar-note-markdown p{display:inline;margin:0}.campaign-frontmatter-facts .calendar-note-markdown br{display:none}.campaign-delete-warning{color:var(--text);line-height:1.5;margin:0}.campaign-notes-frame-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:rgb(0 0 0/58%);padding:clamp(12px,3vw,28px)}.campaign-notes-frame-modal{width:min(1180px,100%);height:min(840px,100%);min-height:420px;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg);box-shadow:0 24px 90px rgb(0 0 0/48%)}.campaign-notes-frame-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 86%,black);padding:10px 12px}.campaign-notes-frame-content{min-height:0;display:grid;background:var(--bg)}.campaign-notes-frame-content .campaign-guide-workbench{border-top:0}.campaign-notes-frame-error{align-self:center;justify-self:center;max-width:520px;margin:0}.notes-editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.notes-editor-header small{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.02em}.notes-editor-header h2{margin:3px 0;overflow-wrap:anywhere}.notes-editor-header p{color:var(--muted);font-size:13px;margin:0}.notes-editor-grid{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:12px;gap:12px}.notes-editor-field{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:6px;gap:6px;color:var(--muted);font-size:12px}.notes-editor-field textarea{min-height:0;height:100%;width:100%;resize:none;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 86%,black);color:var(--text);font:inherit;line-height:1.45;padding:10px}.notes-editor-field textarea::placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent)}.notes-editor-field textarea:focus{border-color:var(--accent);outline:none}.notes-preview-panel{min-width:0;min-height:0;overflow:auto;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel) 82%,black);padding:12px}.notes-editor-actions{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;padding-top:12px}.notes-editor-actions strong{color:var(--text);font-size:12px;font-weight:700}.notes-editor-status{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.notes-editor-status .notes-editor-warning{color:var(--accent-2)}.notes-editor-actions>.button{justify-self:end;width:max-content;min-width:82px;white-space:nowrap}.toolbar{height:100%;min-height:0;max-height:100%;overflow:auto;overflow-x:hidden;overscroll-behavior:contain;border-left:1px solid var(--line);background:var(--panel);padding:14px;display:flex;flex-direction:column;gap:12px}.toolbar .reset-fog-button{align-self:flex-start;display:inline-flex;width:auto;max-width:max-content}.editor-toolbar-shell{min-width:300px;max-width:min(820px,75vw);min-height:0}.editor-toolbar-resize-handle{align-self:stretch;background:transparent;border-left:1px solid var(--line);border-right:1px solid transparent;cursor:col-resize;position:relative}.editor-toolbar-resize-handle.collapsed{cursor:default}.toolbar-collapse-icon{line-height:1}.toolbar-collapse-icon-mobile{display:none}.editor-toolbar-resize-handle:after{content:"";position:absolute;inset:0 2px;background:linear-gradient(180deg,transparent 35%,color-mix(in srgb,var(--line) 70%,transparent) 35% 65%,transparent 65%);opacity:.45}.editor-toolbar-resize-handle.active:after,.editor-toolbar-resize-handle:hover:after{opacity:.9}.toolbar-collapse-button{position:absolute;top:12px;right:-1px;width:26px;height:42px;border:1px solid var(--line);border-right:0;border-radius:6px 0 0 6px;background:var(--panel);color:var(--text);cursor:pointer;font-size:22px;line-height:1;z-index:6}.toolbar-collapse-button:focus-visible,.toolbar-collapse-button:hover{border-color:var(--accent);outline:none}.tool-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px}.tool-grid .icon-button{min-height:34px}.icon-button{aspect-ratio:1;border:1px solid var(--line);border-radius:6px;background:var(--panel-2);color:var(--text);display:grid;place-items:center;cursor:pointer}.icon-button.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.icon-button.compact{width:34px;height:34px;aspect-ratio:auto}.icon-button.compact.mini{width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center}.compact-stepper{display:grid;grid-template-rows:repeat(2,18px);grid-gap:2px;gap:2px}.icon-button.compact.mini svg{display:block;margin:0}.color-sample-button{flex:0 0 auto}.icon-button:disabled{cursor:not-allowed;opacity:.42}.gm-editor-shell .workspace.editor{background:var(--guide-bg)}.gm-editor-shell .toolbar{border-left-color:var(--guide-topbar-border);background:var(--guide-nav-bg);padding:16px}.gm-editor-shell .toolbar .collapsible-section,.gm-editor-shell .toolbar .collapsible-subsection{border-color:var(--guide-soft-border)}.gm-editor-shell .folder-header{border-radius:6px}.gm-editor-shell .collapse-button{color:color-mix(in srgb,var(--muted) 88%,var(--text));font-weight:750}.gm-editor-shell .collapse-button:focus-visible,.gm-editor-shell .collapse-button:hover{color:var(--text);outline:none}.gm-editor-shell .icon-button{border-color:color-mix(in srgb,var(--line) 82%,transparent);background:var(--guide-control-bg)}.gm-editor-shell .icon-button:focus-visible,.gm-editor-shell .icon-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 64%,var(--line));background:var(--guide-subtle-bg);outline:none}.gm-editor-shell .icon-button:active:not(:disabled){transform:translateY(1px)}.gm-editor-shell .button.active,.gm-editor-shell .icon-button.active{border-color:color-mix(in srgb,var(--accent) 74%,var(--line));background:color-mix(in srgb,var(--accent) 18%,var(--guide-control-bg));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 54%,transparent)}.gm-editor-shell .button.secondary,.gm-editor-shell .field input,.gm-editor-shell .field select,.gm-editor-shell .field textarea,.gm-editor-shell .segmented{border-color:color-mix(in srgb,var(--line) 82%,transparent);background:var(--guide-control-bg)}.gm-editor-shell .button.secondary:focus-visible,.gm-editor-shell .button.secondary:hover:not(:disabled){background:var(--guide-subtle-bg);filter:none}html[data-player-theme=light] .gm-editor-shell .toolbar .checkbox-row{color:color-mix(in srgb,var(--muted) 82%,var(--guide-text-strong))}html[data-player-theme=light] .gm-editor-shell .toolbar .checkbox-row input[type=checkbox]{border-color:var(--guide-soft-border);background:var(--guide-control-bg)}html[data-player-theme=light] .gm-editor-shell .toolbar .checkbox-row input[type=checkbox]:after{background:color-mix(in srgb,var(--muted) 76%,var(--guide-text-strong))}html[data-player-theme=light] .gm-editor-shell .toolbar .checkbox-row input[type=checkbox]:checked{border-color:var(--guide-filter-active-bg);background:var(--guide-filter-active-bg)}html[data-player-theme=light] .gm-editor-shell .toolbar .checkbox-row input[type=checkbox]:checked:after{background:var(--guide-filter-active-text)}.gm-editor-shell .gm-editor-nav .button{border-color:transparent;background:transparent}.gm-editor-shell .gm-editor-nav .button:focus-visible,.gm-editor-shell .gm-editor-nav .button:hover:not(:disabled){border-color:color-mix(in srgb,var(--line) 84%,transparent);background:var(--guide-subtle-bg)}.gm-editor-shell .segmented button{border-right-color:color-mix(in srgb,var(--line) 82%,transparent)}.gm-editor-shell .segmented button.active{background:var(--guide-filter-active-bg);color:var(--guide-filter-active-text)}.gm-editor-shell .editor-toolbar-resize-handle{border-left-color:var(--guide-topbar-border)}.gm-editor-shell .editor-toolbar-resize-handle:after{background:linear-gradient(180deg,transparent 35%,color-mix(in srgb,var(--guide-soft-border) 74%,transparent) 35% 65%,transparent 65%)}.gm-editor-shell .toolbar-collapse-button{border-color:var(--guide-topbar-border);background:var(--guide-nav-bg)}.gm-editor-shell .toolbar-collapse-button:focus-visible,.gm-editor-shell .toolbar-collapse-button:hover{border-color:color-mix(in srgb,var(--accent) 78%,var(--line));background:var(--guide-subtle-bg)}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#11150e}.segmented button{min-width:0;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);padding:10px 8px;cursor:pointer}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--accent);color:#07100c;font-weight:700}.segmented.campaign-guide-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;border:0;border-radius:0;overflow:visible;background:transparent}.segmented.campaign-guide-filter button{min-width:0;min-height:34px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 82%,black);color:var(--muted);padding:7px 10px;font-size:12px;font-weight:700;line-height:1;text-align:center}.segmented.campaign-guide-filter button:last-child{grid-column:1/-1;border-right:1px solid var(--line)}.segmented.campaign-guide-filter button.active{border-color:color-mix(in srgb,var(--accent) 76%,white);background:color-mix(in srgb,var(--accent) 78%,#102015);color:#f4efdf}.notes-source-filter{display:grid;grid-template-columns:1fr;grid-gap:6px;gap:6px;justify-self:center;width:min(220px,100%);border:0;border-radius:0;background:transparent;overflow:visible}.notes-source-filter button{min-height:32px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font-size:13px;font-weight:800;line-height:1;padding:8px 10px;text-transform:none;transition:border-color .12s ease,color .12s ease,box-shadow .12s ease}.notes-source-filter button:first-child,.notes-source-filter button:last-child{border-radius:999px}.notes-source-filter button.active{border-color:color-mix(in srgb,var(--accent) 65%,white);background:transparent;color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 65%,white)}.notes-source-filter button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));grid-gap:8px;gap:8px}.collapsible-section.collapsed{gap:6px}.collapsible-subsection{border-left:1px solid var(--line);padding-left:10px}.indented-field{margin-left:14px}.folder-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.folder-header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collapse-button{min-width:0;border:0;background:transparent;color:var(--text);padding:0;display:flex;align-items:center;gap:5px;cursor:pointer}.collapse-button strong{min-width:0}.single-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-controls{display:grid;grid-gap:10px;gap:10px}.muted{color:var(--muted)}.tileset-attribution{display:grid;grid-gap:2px;gap:2px;overflow-wrap:anywhere;line-height:1.35}.tileset-attribution a{color:inherit}.folder-path-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.folder-path-row .single-line{min-width:0}.inline-actions{display:flex;align-items:center;gap:6px}.layer-list{display:grid;grid-gap:7px;gap:7px}.layer-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;grid-gap:6px;gap:6px;border:1px solid var(--line);border-radius:6px;background:#141810;padding:6px}.layer-row.active{border-color:var(--accent-2);box-shadow:inset 0 0 0 1px var(--accent-2)}.layer-row.locked input{color:var(--muted)}.layer-selector{width:28px;height:28px;display:grid;place-items:center;cursor:pointer}.layer-selector input{width:16px;height:16px;margin:0;accent-color:var(--accent-2);cursor:pointer}.layer-row>input{min-width:0;border:0;border-radius:4px;background:transparent;color:var(--text);padding:6px}.layer-row>input:focus{outline:1px solid var(--accent);background:#0f120d}.layer-order-actions{display:flex;gap:4px}.tile-swatch{position:relative;min-height:76px;border:2px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:6px;background:linear-gradient(45deg,rgba(255,255,255,.36) 25%,transparent 25% 75%,rgba(255,255,255,.36) 75%),linear-gradient(45deg,rgba(255,255,255,.36) 25%,transparent 25% 75%,rgba(255,255,255,.36) 75%),#cfc8b6;background-position:0 0,6px 6px;background-size:12px 12px;color:#10140f;display:grid;grid-template-rows:1fr auto;align-items:center;justify-items:center;grid-gap:4px;gap:4px;padding:6px;cursor:pointer;overflow:visible}.tile-swatch.active{border-color:var(--accent);box-shadow:0 0 0 2px #10140f,0 0 0 5px var(--accent),0 10px 18px rgba(0,0,0,.28)}.tile-swatch.active:after{content:"Selected";position:absolute;top:5px;right:5px;border-radius:999px;background:var(--accent);color:#07100c;font-size:9px;font-weight:800;line-height:1;padding:4px 6px;text-transform:uppercase}.tile-swatch:focus-visible,.tile-swatch:hover{border-color:var(--accent);z-index:5}.tile-swatch>:not(.tile-preview)>img,.tile-swatch>img{max-width:44px;max-height:44px;object-fit:contain}.tile-swatch>span:not(.tile-preview){width:100%;overflow:hidden;border-radius:4px;background:rgba(250,247,236,.82);color:#10140f;display:flex;align-items:center;justify-content:center;gap:3px;font-size:10px;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap}.tile-preview{position:absolute;left:50%;bottom:calc(100% + 10px);z-index:30;visibility:hidden;opacity:0;width:150px;height:150px;transform:translateX(-50%);border:2px solid var(--accent);border-radius:8px;background:linear-gradient(45deg,rgba(255,255,255,.36) 25%,transparent 25% 75%,rgba(255,255,255,.36) 75%),linear-gradient(45deg,rgba(255,255,255,.36) 25%,transparent 25% 75%,rgba(255,255,255,.36) 75%),#cfc8b6;background-position:0 0,8px 8px;background-size:16px 16px;box-shadow:0 18px 35px rgba(0,0,0,.45);padding:12px;pointer-events:none;transition:opacity .12s ease,visibility 0s linear .12s}.tile-preview img{width:100%;height:100%;object-fit:contain}.tile-swatch:focus-visible .tile-preview,.tile-swatch:hover .tile-preview{visibility:visible;opacity:1;transition-delay:.4s,.4s}.map-list-item{min-width:0;display:grid;grid-gap:12px;gap:12px;align-content:start;border:1px solid var(--line);border-radius:6px;padding:12px;background:#141810}.map-list-summary{min-width:0;display:grid;grid-gap:10px;gap:10px;text-decoration:none}.map-list-summary:hover .map-thumbnail{border-color:var(--accent)}.map-list-summary:focus-visible{border-radius:6px;outline:2px solid var(--accent);outline-offset:3px}.map-thumbnail{width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#0b100c}img.map-thumbnail{display:block;object-fit:cover}.map-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));grid-gap:6px;gap:6px}.map-actions .button{min-width:0;padding:9px 8px;font-size:13px;line-height:1.15;text-align:center}.collaborator-row,.map-title-row{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.map-access-badge{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:2px 8px;color:var(--accent-2);font-size:.72rem;font-weight:700}.collaborator-list{display:grid;grid-gap:8px;gap:8px;margin-top:10px}.snapshot-list{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.snapshot-row{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(150px,220px);grid-gap:10px;gap:10px;align-items:start;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.snapshot-preview{display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#0b100c;color:var(--muted);font-size:.75rem;text-align:center}.snapshot-preview img{width:100%;height:100%;object-fit:cover}.snapshot-meta{min-width:0}.snapshot-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.snapshot-actions{display:grid;grid-gap:8px;gap:8px;justify-self:stretch}.snapshot-action-panel{min-width:0}.snapshot-action-panel summary{color:var(--danger);cursor:pointer;font-weight:800}.snapshot-action-panel form{min-width:0;margin-top:8px}.snapshot-action-panel input{width:100%;min-width:0}.share-role-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(120px,1fr);align-items:end;grid-gap:8px;gap:8px;margin-top:10px}.share-role-form-wide{grid-template-columns:minmax(0,2fr) minmax(120px,1fr) auto}.collaborator-row,.manual-share-panel{border-top:1px solid rgba(255,255,255,.08);padding-top:8px}.manual-share-panel{margin-top:10px}.manual-share-panel summary{color:var(--muted);cursor:pointer;font-size:.82rem;font-weight:700}.delete-map-panel,.map-details-panel{flex-basis:100%;border-top:1px solid var(--line);padding-top:10px}.delete-map-panel summary,.map-details-panel summary{cursor:pointer;font-weight:700}.map-details-panel summary{color:var(--accent-2)}.delete-map-panel summary{color:var(--danger)}.delete-map-panel form,.map-details-panel form{margin-top:10px}.map-list-item small{display:block;color:var(--muted);margin-top:3px}.calibration-panel summary{cursor:pointer;font-weight:700}.calibration-panel[open] summary{margin-bottom:8px}.error{color:var(--danger)}.success{color:var(--accent)}@media (max-width:860px){.home{grid-template-columns:1fr;padding:28px 0}.gm-dashboard{padding:20px 0 32px}.gm-shell{grid-template-columns:1fr}.gm-sidebar{height:auto;overflow:visible;position:static;border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr auto;grid-template-rows:auto auto}.gm-shell .gm-sidebar{grid-template-columns:1fr;border-bottom-color:var(--guide-topbar-border)}.gm-nav{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.gm-signout{width:auto}.gm-main{padding:20px 16px 32px}.gm-main-theme-row{justify-content:flex-start;margin-bottom:16px}.dashboard-group-header{align-items:flex-start;flex-direction:column}.dashboard-group-header small{text-align:left}.compact-import-form,.dashboard-tools,.dashboard-two-column,.docs-hero,.docs-section{grid-template-columns:1fr}.docs-hero h1{font-size:34px}.docs-hero p{font-size:16px}.docs-toc{grid-template-columns:repeat(2,minmax(0,1fr))}.share-role-form{grid-template-columns:1fr}.snapshot-row{grid-template-columns:76px minmax(0,1fr)}.snapshot-actions{grid-column:1/-1}.create-map-controls{align-items:flex-start}.discord-guild-form,.discord-guild-row,.discord-profile-row,.discord-role-row,.gm-shell .map-card-grid,.map-card-grid,.workspace.editor{grid-template-columns:1fr}.workspace.editor{grid-template-rows:minmax(0,1fr) 10px auto}.workspace.editor:has(.editor-toolbar-shell[hidden]){grid-template-rows:minmax(0,1fr) 10px 0}.editor-toolbar-resize-handle{align-self:stretch;border-left:0;border-right:0;border-top:1px solid var(--line);cursor:row-resize;touch-action:none}.editor-toolbar-resize-handle.collapsed{border-bottom:1px solid var(--line)}.editor-toolbar-shell{width:100%!important;height:var(--toolbar-height,24vh);max-width:100%;min-width:0;min-height:0}.toolbar{border-left:0;border-top:1px solid var(--line);max-height:none;padding:10px}.toolbar .tool-grid{grid-template-columns:repeat(auto-fill,36px);gap:5px;justify-content:start}.toolbar .tool-grid .icon-button{width:36px;height:36px;min-height:0}.toolbar .icon-button.compact{width:34px;height:34px}.toolbar .icon-button svg{width:15px;height:15px}.toolbar .reset-fog-button{width:auto}.campaign-guide-reader,.campaign-guide-workbench,.notes-workbench{grid-template-columns:1fr;grid-template-rows:minmax(220px,38vh) minmax(0,1fr)}.gm-guide-shell.map-shell{height:auto;min-height:100dvh;overflow:auto}.gm-guide-shell .campaign-guide-workbench{grid-template-rows:auto auto}.campaign-guide-reader-modern{grid-template-rows:minmax(240px,40vh) minmax(0,1fr)}.campaign-guide-list-panel,.notes-list-panel{border-right:0;border-bottom:1px solid var(--line)}.campaign-guide-reader-modern .campaign-guide-reader-main{padding:24px 18px 36px}.campaign-guide-reader-modern .campaign-guide-article-header h2{font-size:38px;max-width:none}.campaign-guide-reader-modern .campaign-frontmatter-facts td,.campaign-guide-reader-modern .campaign-frontmatter-facts th{display:block;width:100%}.campaign-guide-reader-modern .campaign-frontmatter-facts th{border-right:0;padding-bottom:4px}.campaign-guide-reader-modern .campaign-frontmatter-facts td{padding-top:4px}.campaign-guide-editor-grid,.notes-editor-grid{grid-template-columns:1fr;grid-template-rows:auto minmax(180px,auto);height:auto}.campaign-guide-body-editor-stack,.campaign-guide-form-stack,.campaign-guide-form-stack.has-image-manager{height:auto}.campaign-guide-fields-row,.campaign-guide-link-fields{grid-template-columns:1fr}.campaign-guide-image-actions,.campaign-guide-image-manager-header{align-items:stretch;flex-direction:column}.notes-editor-actions{grid-template-columns:1fr auto auto}.notes-editor-actions strong{grid-column:1/-1}.gm-play-mode-control{max-width:calc(100% - 16px)}.canvas-wrap:has(.map-discord-publish) .player-calendar-panel{top:68px}.player-calendar-panel{width:min(196px,calc(100% - 16px))}.gm-play-mode-panel{width:min(250px,calc(100vw - 58px))}.gm-play-mode-panel,.gm-play-mode-tab{max-height:calc(100% - 24px)}.calendar-note-meta{grid-template-columns:1fr}.toolbar-collapse-button{top:-1px;right:12px;width:44px;height:26px;border-right:1px solid var(--line);border-radius:0 0 6px 6px;font-size:20px}.editor-toolbar-resize-handle.collapsed .toolbar-collapse-button{top:auto;bottom:-1px;border-radius:6px 6px 0 0}.toolbar-collapse-icon-desktop{display:none}.toolbar-collapse-icon-mobile{display:inline}.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{justify-content:flex-start}.gm-editor-topbar,.gm-guide-topbar,.player-guide-topbar,.player-map-topbar{padding:14px 16px}.gm-editor-nav,.gm-guide-nav,.player-guide-nav,.player-map-nav{width:100%;gap:8px}.gm-editor-nav .button,.gm-guide-nav .button,.player-guide-nav-link,.player-map-nav-link{min-height:34px;padding:8px 11px}.audit-filter-form{grid-template-columns:1fr}}