/*!
 * Base reset adapted from Tailwind CSS Preflight.
 * MIT License
 * Copyright (c) Tailwind Labs, Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */
@layer reset{*,:before,:after,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html{-moz-text-size-adjust:100%;text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent;line-height:1.5}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}table{text-indent:0;border-color:inherit;border-collapse:collapse}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}:root{font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface:#fff;--surface-secondary:#f3f4f6;--canvas:#f3f4f6;--text:#111827;--muted:#4b5563;--border:#e5e7eb;--hover:#e5e7eb;--accent:#2563eb;--accent-soft:#eff6ff;--accent-solid:#2563eb;--accent-solid-hover:#1d4ed8;--on-accent:#fff;--accent-border:#93c5fd;--focus:#3b82f6;--warning:#b45309;--warning-soft:#fffbeb;--success:#15803d;--danger:#dc2626;--shadow-sm:0 1px 2px #0f172a0f;--shadow:0 1px 3px #0f172a1a, 0 1px 2px -1px #0f172a1a;--shadow-md:0 4px 6px -1px #0f172a1a, 0 2px 4px -2px #0f172a1a;--shadow-lg:0 10px 15px -3px #0f172a1a, 0 4px 6px -4px #0f172a1a;--shadow-xl:0 20px 25px -5px #0f172a26, 0 8px 10px -6px #0f172a1a;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--transition:.16s cubic-bezier(.4, 0, .2, 1);--sidebar:264px;--details:336px;color:var(--text);background:var(--canvas);font-family:Noto Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface:#1e293b;--surface-secondary:#273449;--canvas:#0f172a;--text:#e2e8f0;--muted:#9ca3af;--border:#334155;--hover:#334155;--accent:#60a5fa;--accent-soft:#273a56;--accent-solid:#1d4ed8;--accent-solid-hover:#2563eb;--on-accent:#fff;--accent-border:#3b82f6;--focus:#60a5fa;--warning:#fbbf24;--warning-soft:#422c12;--success:#4ade80;--danger:#f87171;--shadow-sm:0 1px 2px #00000073;--shadow:0 1px 3px #00000080, 0 1px 2px -1px #0006;--shadow-md:0 4px 6px -1px #00000080, 0 2px 4px -2px #0006;--shadow-lg:0 10px 15px -3px #0000008c, 0 4px 6px -4px #00000073;--shadow-xl:0 20px 25px -5px #0009, 0 8px 10px -6px #00000080}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--muted) transparent;scrollbar-color:color-mix(in srgb, var(--muted) 40%, transparent) transparent}body{color:var(--text);background:var(--canvas);letter-spacing:-.01em;text-rendering:optimizelegibility;margin:0;line-height:1.6}::selection{color:var(--text);background:var(--accent-soft);background:color-mix(in srgb, var(--accent) 24%, transparent)}button,select,input{font:inherit}button,select,summary{cursor:pointer}button{color:inherit}button:disabled,input:disabled{cursor:default;opacity:.45}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}a{color:inherit;text-decoration:none}button svg,label>svg{flex-shrink:0;width:18px;height:18px}button{transition:background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition)}button:hover:not(:disabled){background:var(--hover)}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-solid);flex-shrink:0;margin:0}input[type=range]{accent-color:var(--accent-solid);cursor:pointer}select{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition), box-shadow var(--transition);padding:7px 9px}.app{height:100vh;background:var(--canvas);height:100dvh;line-height:1.45;position:relative;overflow:hidden}.map-canvas{touch-action:none;position:absolute;inset:0}.panel-open .map-canvas{left:var(--sidebar)}.has-selection .map-canvas{right:var(--details)}.map-canvas canvas{touch-action:none;display:block}.sidebar-heading{border-bottom:1px solid var(--border);flex-shrink:0;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:12px 16px 16px 20px;display:grid}.brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.brand img{border-radius:var(--radius-md);flex-shrink:0}.map-title{white-space:nowrap;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;display:flex}.map-title h1{margin:0;font-size:14px;font-weight:600}.map-switch{color:var(--text);font:inherit;transition:color var(--transition);background:0 0;border:0;align-items:center;gap:4px;padding:3px 0;display:inline-flex}.map-switch svg{width:12px;height:12px;transform:rotate(90deg)}.map-switch:hover{color:var(--accent)}.skin-toggle{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);transition:background-color var(--transition), border-color var(--transition), color var(--transition);align-items:center;gap:4px;padding:3px 6px;font-size:12px;display:inline-flex}.skin-toggle svg{width:12px;height:12px;transform:rotate(90deg)}.skin-toggle:hover{color:var(--text);background:var(--hover);border-color:var(--accent-border)}.map-wiki-link{color:var(--accent);transition:color var(--transition);align-items:center;gap:4px;padding:4px 0;font-size:12px;display:inline-flex}.map-wiki-link svg{width:12px;height:12px}.map-wiki-link:hover{text-decoration:underline}.skin-list{gap:8px;display:grid}.map-list{grid-template-columns:repeat(2,minmax(0,1fr))}.skin-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);text-align:left;transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition);justify-content:space-between;align-items:center;padding:12px;display:flex}.skin-option:hover:not(:disabled){border-color:var(--accent-border)}.skin-option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-sm)}.skin-option[aria-pressed=true]:hover:not(:disabled){background:var(--accent-soft);background:color-mix(in srgb, var(--accent) 14%, var(--accent-soft))}.skin-option>span+span{color:var(--accent);font-size:12px}.scene-controls{grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.icon-button,.tool-button{border-radius:var(--radius-md);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;min-width:36px;height:36px;padding:0 9px;display:inline-flex}.tool-button{font-size:13px}.panel-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.panel-toggle[aria-expanded=true]:hover:not(:disabled){background:var(--accent-soft);background:color-mix(in srgb, var(--accent) 14%, var(--accent-soft))}.control-panel{width:var(--sidebar);background:var(--surface);border-right:1px solid var(--border);z-index:4;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0}.floating-panel-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:5;position:absolute;top:16px;left:16px}.floating-panel-toggle:hover:not(:disabled){border-color:var(--accent-border)}.sidebar-content{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;min-height:0;overflow-y:auto}.sidebar-tools{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;gap:4px;padding:12px;display:grid}.sidebar-tools .tool-button{justify-content:flex-start}.article-tool{color:var(--accent);background:var(--accent-soft);grid-column:1/-1}.article-tool:hover:not(:disabled){background:var(--accent-soft);background:color-mix(in srgb, var(--accent) 14%, var(--accent-soft))}.wiki-location-list h3{color:var(--muted);margin:16px 0 4px;font-size:13px}.panel-heading{flex-shrink:0;justify-content:space-between;align-items:center;height:54px;padding:0 20px;display:flex}.panel-heading h2{margin:0;font-size:15px;font-weight:600}.text-button{color:var(--accent);border-radius:var(--radius-sm);background:0 0;border:0;padding:4px 5px;font-size:12px}.text-button:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.panel-content{padding:0 20px}.filter-section{border-top:1px solid var(--border);padding:17px 0}.filter-section:first-child{padding-top:12px}.filter-section h3{justify-content:space-between;gap:10px;margin:0 0 10px;font-size:12px;font-weight:600;display:flex}.filter-section h3>span,.room-filter summary>span{color:var(--muted);font-size:11px;font-weight:400}.check-row{border-radius:var(--radius-sm);cursor:pointer;min-height:34px;transition:background-color var(--transition);align-items:center;gap:10px;margin:0 -6px;padding:0 6px;font-size:13px;display:flex}.check-row:hover:not(.disabled){background:var(--hover)}.check-row>span{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.check-row.disabled{color:var(--muted);cursor:default}.opacity-row{color:var(--muted);grid-template-columns:1fr auto;gap:7px;margin-top:12px;font-size:11px;display:grid}.opacity-row input{grid-column:1/-1;width:100%;height:16px;margin:0}.opacity-row output{font-variant-numeric:tabular-nums}.candidate-controls{margin-top:10px}.filter-search,.search-field{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--muted);background:var(--surface);transition:border-color var(--transition), box-shadow var(--transition);align-items:center;gap:8px;padding:7px 9px;display:flex}.filter-search svg{width:14px;height:14px}.filter-search input,.search-field input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:none;font-size:12px}.filter-search:focus-within,.search-field:focus-within{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:1px}input::placeholder{color:var(--muted)}.filter-actions{align-items:center;gap:4px;margin-top:10px;font-size:11px;display:flex}.filter-actions>span{color:var(--muted);margin-right:auto}.type-list{scrollbar-width:thin;scrollbar-color:var(--border) transparent;max-height:264px;margin-top:4px;padding-right:6px;overflow-y:auto}.type-list .check-row{min-height:34px;padding:5px 6px}.candidate-type-group+.candidate-type-group{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.candidate-type-heading{align-items:center;gap:4px;display:flex}.candidate-type-heading>.check-row{flex:1;min-width:0}.candidate-type-heading .type-label{font-weight:600}.candidate-type-toggle{color:var(--muted);flex-shrink:0}.candidate-type-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.candidate-type-children{padding-left:24px}.type-label{line-height:1.5}.type-label small{color:var(--muted);font-size:10px;display:block}.count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.subchecks{gap:18px;padding-left:26px;display:flex}.gravity-filter-note{color:var(--muted);margin:0 0 8px 24px;font-size:11px;line-height:1.5}.subchecks .check-row{gap:7px;font-size:12px}.subchecks input{width:14px;height:14px}.advanced-filter>summary,.room-filter>summary{font-size:12px;font-weight:600}.room-filter summary>span{margin-left:6px}.room-filter[open]>summary{margin-bottom:12px}.panel-summary{color:var(--muted);border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;justify-content:space-between;gap:6px;padding:12px 16px;font-size:10px;display:flex}.home-statement{text-align:center;border-top:1px solid #d1d5dc;padding:24px 0 0;scroll-margin-top:88px}.home-statement h2{color:#000;letter-spacing:-.01em;margin:0 0 8px;padding:8px 0;font-size:30px;font-weight:700;line-height:36px}.home-statement-body{color:#364153;text-align:left;max-width:42rem;margin:0 auto;padding:12px 8px;font-size:16px;line-height:1.65}.home-statement-body>p{margin:0}.home-statement-body>*+*{margin-top:16px}.home-statement-body>p+p{margin-top:8px}.home-statement-body a{color:#155dfc;text-decoration:underline}.home-statement-body a:hover{color:#193cb8}.home-statement-body a:focus-visible{border-radius:2px}.home-statement-qq-link{text-underline-offset:4px;width:max-content;max-width:100%;transition:color var(--transition);align-items:center;gap:6px;margin:16px auto 0;font-size:14px;font-weight:500;display:flex}.home-statement-body a.home-statement-qq-link{text-decoration:none}.home-statement-body a.home-statement-qq-link:hover{color:#1447e6;text-decoration:underline}.home-statement-qq-icon{flex-shrink:0;width:16px;height:16px}.statement-action{color:#1e2939;text-align:center;background:#e5e7eb;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:180px;padding:12px 0;transition:background-color .3s,box-shadow .3s,transform .3s;display:flex;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.home-page .statement-action:hover{color:#fff;background:#155dfc;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.statement-action-heading{white-space:nowrap;align-items:center;gap:8px;font-size:20px;font-weight:700;line-height:28px;display:flex}.statement-action-heading svg{flex-shrink:0;width:32px;height:32px}.statement-action-description{color:#6a7282;margin-top:2px;font-size:12px;line-height:16px}.statement-action:hover .statement-action-description{color:#fff}@media (min-width:768px){.statement-action{gap:8px}.statement-action-heading{gap:12px;font-size:24px;line-height:32px}.statement-action-description{margin-top:4px;font-size:14px;line-height:20px}}.statement-card{overflow:hidden}.statement-card-trigger{color:#000;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;width:100%;padding:4px;font-weight:700;line-height:24px;display:flex}button.statement-card-trigger:hover{background:0 0}button.statement-card-trigger:focus-visible{outline-offset:-2px}.statement-card-trigger span{font-size:16px}.statement-card-trigger svg{flex-shrink:0;width:15px;height:15px;transition:transform .2s ease-in-out}.statement-card.is-open .statement-card-trigger svg{transform:rotate(90deg)}.statement-card-panel{visibility:hidden;opacity:0;max-height:0;transition:max-height .1s ease-in-out,opacity .1s ease-in-out,transform .1s ease-in-out,visibility 0s linear .1s;overflow:hidden;transform:translateY(-8px)}.statement-card.is-open .statement-card-panel{visibility:visible;opacity:1;max-height:9999px;transition:max-height .1s ease-in-out,opacity .1s ease-in-out,transform .1s ease-in-out,visibility;transform:translateY(0)}.statement-card-panel-inner{transition:transform .1s ease-in-out;transform:translateY(-16px)}.statement-card.is-open .statement-card-panel-inner{transform:translateY(0)}@media (prefers-reduced-motion:reduce){.statement-card-trigger svg,.statement-card-panel,.statement-card-panel-inner{transition:none}}.statement-card-content{color:#364153;padding:16px;font-size:14px;line-height:20px}.statement-card-content--leading{line-height:24px}.statement-card-content p{margin:0}.statement-card-content p+p{margin-top:8px}.statement-card-sections{gap:16px;display:grid}.statement-card-sections p+p{margin-top:4px}:root[data-theme=dark] .home-statement{border-top-color:#364153}:root[data-theme=dark] .home-statement h2{color:#fff}:root[data-theme=dark] .home-statement-body{color:#d1d5dc}:root[data-theme=dark] .home-statement-body a{color:#56a2ff}:root[data-theme=dark] .home-statement-body a:hover,:root[data-theme=dark] .home-statement-body a.home-statement-qq-link:hover{color:#91c5ff}:root[data-theme=dark] .statement-card-trigger{color:#fff;border-bottom-color:#314158}:root[data-theme=dark] .statement-card-content{color:#d1d5dc}:root[data-theme=dark] .statement-action{color:#e5e7eb;background:#314158}:root[data-theme=dark] .statement-action-description{color:#99a1af}:root[data-theme=dark] .statement-action:hover{color:#fff;background:#155dfc}:root[data-theme=dark] .statement-action:hover .statement-action-description{color:#fff}.statement-action.is-active{color:#1c398e;background:#dbeafe;box-shadow:0 0 0 2px #3280ff,0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.statement-action.is-active .statement-action-description{color:#1447e6}.statement-action.is-active:hover{color:#1c398e;background:#dbeafe;box-shadow:0 0 0 2px #3280ff,0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}:root[data-theme=dark] .statement-action.is-active{color:#dbeafe;background:#1c398e66;box-shadow:0 0 0 2px #56a2ff,0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}:root[data-theme=dark] .statement-action.is-active .statement-action-description{color:#91c5ff}:root[data-theme=dark] .statement-action.is-active:hover{color:#dbeafe;background:#1c398e66;box-shadow:0 0 0 2px #56a2ff,0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.home-sites-divider{background:#d1d5dc;max-width:56rem;height:1px;margin:32px auto 0}.home-sites{text-align:center;margin-top:24px;padding-bottom:32px}.home-sites h2{color:#000;letter-spacing:-.01em;margin:0 0 24px;font-size:30px;font-weight:700;line-height:36px}.home-site-grid{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.home-external-groups{flex-direction:column;gap:24px;margin-top:40px;display:flex}.home-external-group{flex-direction:column;gap:12px;display:flex}.home-external-group h3{color:#364153;margin:0;font-size:18px;font-weight:600;line-height:28px}.home-external-description{color:#6a7282;max-width:42rem;margin:0 auto;font-size:14px;line-height:20px}:root[data-theme=dark] .home-sites-divider{background:#364153}:root[data-theme=dark] .home-sites h2{color:#fff}:root[data-theme=dark] .home-external-group h3{color:#e5e7eb}:root[data-theme=dark] .home-external-description{color:#99a1af}@media (min-width:640px){.home-statement{padding-top:32px}.home-statement-body{padding-left:16px;padding-right:16px}.home-sites-divider{margin-top:40px}.home-sites{margin-top:32px}}@media (min-width:768px){.home-sites-divider{margin-top:48px}}.sidebar-footer{border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;padding:12px 16px;font-size:11px}.panel-footer{color:var(--muted);align-items:center;gap:7px;display:flex}.status-dot{background:var(--success);border-radius:50%;width:6px;height:6px}.status-dot.busy{background:var(--warning)}.animation-button{border-radius:var(--radius-sm);background:0 0;border:0;align-items:center;gap:6px;height:28px;padding:0 8px;font-size:11px;display:flex}.animation-button svg{width:14px;height:14px}.camera-tools{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:3;flex-direction:column;display:flex;position:absolute;top:16px;right:16px;overflow:hidden}.camera-tools button{width:36px;height:36px;transition:background-color var(--transition);background:0 0;border:0;place-items:center;font-size:21px;display:grid}.camera-tools span{background:var(--border);height:1px}.has-selection .camera-tools{right:calc(var(--details) + 16px)}.minimap-card{--mini-width:280px;--mini-height:240px;width:min(var(--mini-width), calc(var(--mini-height) * var(--mini-aspect)));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:3;position:absolute;bottom:60px;right:16px;overflow:hidden}.minimap-card.is-expanded{--mini-width:min(480px, calc(100vw - 32px));--mini-height:min(400px, calc(100dvh - 200px))}.minimap-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:36px;height:36px;box-shadow:var(--shadow-md);z-index:3;transition:background-color var(--transition), border-color var(--transition);place-items:center;display:grid;position:absolute;bottom:16px;right:16px}.minimap-toggle:hover:not(:disabled){border-color:var(--accent-border)}.has-selection .minimap-card,.has-selection .minimap-toggle{right:calc(var(--details) + 16px)}.mini-heading{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:4px 6px 4px 10px;font-size:11px;display:flex}.mini-heading>span{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}.mini-heading button{border-radius:var(--radius-sm);background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.mini-diagram{aspect-ratio:var(--mini-aspect);background:var(--canvas);position:relative;overflow:hidden}.mini-background,.mini-shade,.mini-diagram>svg{width:100%;height:100%;position:absolute;inset:0}.mini-background,.mini-shade{pointer-events:none}.mini-background{display:block}.mini-shade{background:#ffffff73}:root[data-theme=dark] .mini-shade{background:#0f172a8c}.mini-diagram>svg{cursor:crosshair;display:block;overflow:hidden}.mini-room-label{pointer-events:none;white-space:nowrap;color:#0f172a;text-shadow:0 1px 2px #fff,0 0 3px #fff;font-size:10px;font-weight:600;line-height:1.2;position:absolute;transform:translate(-50%,-50%)}:root[data-theme=dark] .mini-room-label{color:#e2e8f0;text-shadow:0 1px 2px #0f172a,0 0 3px #0f172a}.is-expanded .mini-room-label{font-size:13px}.mini-viewport{fill:color-mix(in srgb, var(--accent) 10%, transparent);stroke:var(--accent);stroke-width:2px;pointer-events:none}.mini-point{fill:var(--accent);opacity:.6}.mini-missing{fill:var(--warning)}.mini-gravity-displaced{stroke:#ff704d;stroke-width:2px;opacity:1}.details-panel{width:var(--details);border-left:1px solid var(--border);background:var(--surface);z-index:4;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0}.details-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 12px 8px 20px;font-size:13px;font-weight:600;display:flex}.details-content{scrollbar-width:thin;padding:20px;overflow-y:auto}.detail-tag{color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-pill);padding:3px 9px;font-size:11px;font-weight:500;display:inline-block}.details-content h2{overflow-wrap:anywhere;margin:7px 0;font-size:20px;font-weight:600}.detail-kind{color:var(--muted);margin:6px 0 16px;font-size:12px}.candidate-note,.missing-note{color:var(--warning);background:var(--warning-soft);border:1px solid var(--border);border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border));border-radius:var(--radius-md);margin:12px 0;padding:10px 12px;font-size:12px;line-height:1.7}.candidate-note{color:var(--muted);background:var(--surface-secondary);border-color:var(--border)}.coordinates{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;padding:14px 0;display:grid}.coordinates dt{color:var(--muted);font-size:10px}.coordinates dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:16px}.detail-section h3{margin:20px 0 8px;font-size:12px;font-weight:600}.resource-path{overflow-wrap:anywhere;color:var(--muted);margin:0;font:11px/1.7 ui-monospace,monospace}.properties{margin:0;font-size:11px;line-height:1.6}.properties>div{border-bottom:1px solid var(--border);padding:8px 0}.properties dt{color:var(--muted);overflow-wrap:anywhere}.properties dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:3px 0 0}.provenance{margin-top:20px;font-size:12px}.provenance summary{transition:color var(--transition);padding:8px 0}.provenance summary:hover{color:var(--accent)}.advanced-details{border-top:1px solid var(--border);color:var(--muted)}.advanced-details>summary{padding:14px 0;font-weight:600}.advanced-details[open]>summary{color:var(--text)}.advanced-description{margin:0 0 16px;font-size:11px}.advanced-details dd{color:var(--text)}.muted{color:var(--muted);font-size:12px}.resource-preview{margin:16px 0}.resource-preview figcaption{color:var(--muted);margin-top:8px;font-size:11px}.preview-thumbnail{object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-secondary);width:120px;height:96px;margin-top:12px;padding:8px;display:block}.animation-tags{flex-wrap:wrap;gap:5px;display:flex}.animation-tags span{color:var(--muted);border:1px solid var(--border);background:var(--surface-secondary);border-radius:var(--radius-sm);overflow-wrap:anywhere;max-width:100%;padding:4px 6px;font:10px ui-monospace,monospace}.animation-tags .active{color:var(--accent);background:var(--accent-soft)}.tool-dialog{width:min(460px,100vw - 32px);max-height:calc(100vh - 64px);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);max-height:calc(100dvh - 64px);color:var(--text);box-shadow:var(--shadow-xl);margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.tool-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73}.dialog-inner{padding:20px}.dialog-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.dialog-heading h2{margin:0;font-size:16px;font-weight:600}.dialog-heading .icon-button{margin:-6px -6px -6px 0}.dialog-description{color:var(--muted);margin:0 0 16px;font-size:12px;line-height:1.7}.room-list{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.room-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px 0;font-size:12px;display:flex}.room-row select{min-width:76px;font-size:12px}.dialog-footer{justify-content:flex-end;margin-top:20px;display:flex}.primary-button{background:var(--accent-solid);color:var(--on-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid #0000;padding:8px 20px;font-size:13px;font-weight:600}.primary-button:hover:not(:disabled){background:var(--accent-solid-hover)}.search-field{border-radius:var(--radius-md);padding:10px 12px}.search-field input{font-size:14px}.search-result-count{color:var(--muted);margin:12px 0 6px;font-size:11px}.object-list{max-height:50vh;max-height:50dvh;overflow-y:auto}.object-row{border:0;border-bottom:1px solid var(--border);text-align:left;width:100%;transition:background-color var(--transition), color var(--transition);background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:12px 8px;display:flex}.object-row:hover:not(:disabled){background:var(--hover)}.object-row>span{min-width:0}.object-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;display:block;overflow:hidden}.object-row small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.object-row>svg{width:16px;height:16px;color:var(--muted);transition:color var(--transition)}.object-row:hover>svg{color:var(--accent)}.load-more{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;transition:background-color var(--transition), border-color var(--transition), color var(--transition);background:0 0;margin-top:12px;padding:9px;font-size:12px;display:block}.load-more:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border)}.empty-state{text-align:center;color:var(--muted);padding:20px;font-size:13px}.initial-loading{color:var(--muted);white-space:nowrap;align-items:center;gap:12px;font-size:13px;display:flex;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.loader{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(420px,90vw);box-shadow:var(--shadow-lg);z-index:8;padding:24px;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.error-card h2{margin:0 0 12px;font-size:16px}.error-card p{color:var(--muted);font-size:13px;line-height:1.7}.error-card button,.retry-card button{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:6px 12px;font-size:12px}.retry-card{background:var(--warning-soft);color:var(--warning);border:1px solid var(--border);border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border));border-radius:var(--radius-md);z-index:7;align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.toast{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);max-width:90vw;box-shadow:var(--shadow-lg);z-index:10;white-space:nowrap;padding:10px 16px;font-size:13px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}@media (max-width:1000px){:root{--sidebar:240px;--details:280px}.minimap-card{--mini-width:220px;--mini-height:200px}.has-selection .minimap-card.is-expanded{--mini-width:min(480px, calc(100vw - var(--details) - 32px))}}@media (max-width:640px){:root{--sidebar:min(280px, calc(100vw - 56px))}.map-canvas,.panel-open .map-canvas,.has-selection .map-canvas{inset:0}.has-selection .map-canvas{bottom:48vh;bottom:48dvh}.control-panel{box-shadow:var(--shadow-md);z-index:6}.panel-heading{height:44px;padding:0 18px}.panel-content{padding:0 18px}.filter-section{padding:14px 0}.check-row{min-height:38px}.filter-actions .text-button{padding:8px}.camera-tools,.has-selection .camera-tools{top:16px;right:12px}.camera-tools button{width:34px;height:34px}.minimap-card,.has-selection .minimap-card{--mini-width:156px;--mini-height:140px;top:134px;bottom:auto;right:12px}.minimap-card.is-expanded,.has-selection .minimap-card.is-expanded{--mini-width:calc(100vw - 24px);--mini-height:min(320px, calc(100dvh - 260px))}.minimap-toggle,.has-selection .minimap-toggle{width:34px;height:34px;top:94px;bottom:auto;right:54px}.mini-heading{gap:4px;padding:3px 4px 3px 7px;font-size:10px}.mini-room-label{font-size:8px}.details-panel{width:auto;height:48vh;border-top:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;z-index:6;border-left:0;height:48dvh;inset:auto 0 0}.details-heading{padding:4px 12px 4px 18px}.details-content{padding:16px 18px}.tool-dialog{width:calc(100vw - 24px);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px)}.dialog-inner{padding:16px}.room-list{gap:0 12px}.room-row{min-height:48px}.toast{bottom:calc(48vh + 48px);font-size:12px;bottom:calc(48dvh + 48px)}.retry-card{max-width:calc(100vw - 70px);font-size:11px;top:16px;left:12px;transform:none}}@media (prefers-reduced-motion:reduce){button,a,input,select,textarea,summary,.check-row,.object-row,.load-more,.skin-option,.home-hero-preview,.home-map-card,.map-thumbnail-image{transition:none}.loader{animation:none}.home-map-card:hover,.home-hero-preview:hover,.home-primary-button:hover,.home-map-card:hover .map-thumbnail-image,.home-hero-preview:hover .map-thumbnail-image{transform:none}}.wiki-entries{margin:20px 0}.wiki-empty{color:var(--muted);margin:20px 0;font-size:13px;line-height:1.8}.wiki-card+.wiki-card{border-top:1px solid var(--border)}.wiki-card summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;font-size:13px;list-style:none;display:flex}.wiki-card summary::marker{content:""}.wiki-card summary span{color:var(--muted);font-size:11px}.wiki-card-content{padding:0 0 4px}.wiki-description{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px;font-size:13px;line-height:1.8}.wiki-entries a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.wiki-entries a:hover{text-decoration-thickness:2px}.wiki-entry-link{align-items:center;gap:6px;font-size:12px;display:inline-flex}.wiki-entry-link svg{width:13px;height:13px}.wiki-status{color:var(--muted);align-items:center;gap:10px;margin:0 0 12px;font-size:12px;display:flex}.wiki-candidates{margin:0 0 12px;padding-left:20px;font-size:13px}.wiki-candidates li{margin:8px 0}.wiki-candidates small{color:var(--muted);margin-left:8px}.wiki-explanation{color:inherit;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline}.wiki-note-content{border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);overflow-wrap:anywhere;margin:8px 0;padding:8px 10px;font-size:12px;display:block}.wiki-note-content[hidden]{display:none}.candidate-inspector{border-bottom:1px solid var(--border);margin:20px 0;padding-bottom:16px}.possible-items{flex-wrap:wrap;gap:6px;padding:0;list-style:none;display:flex}.possible-items li{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-secondary);padding:5px 8px}.possible-items small{opacity:.7;display:block}.candidate-picker{gap:8px;margin:16px 0;display:grid}.candidate-picker select{width:100%;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:8px}.candidate-coordinates>div{justify-content:space-between;gap:12px;margin:8px 0;display:flex}.candidate-coordinates dd{font-variant-numeric:tabular-nums;margin:0}.home-page{min-height:100vh;background:var(--canvas);letter-spacing:-.01em;min-height:100dvh;line-height:1.7}.home-skip-link{z-index:30;color:var(--accent);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:8px 16px;position:absolute;top:8px;left:16px;transform:translateY(-160%)}.home-skip-link:focus{transform:translateY(0)}.home-header{z-index:20;border-bottom:1px solid var(--border);background:var(--surface);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.2);backdrop-filter:blur(12px)saturate(1.2);min-height:72px;box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px max(24px,50% - 540px);display:flex;position:sticky;top:0}.home-header nav,.viewer-help-links{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.home-header nav a,.viewer-help-links a{color:var(--muted);transition:color var(--transition)}.home-page a:hover,.viewer-help-links a:hover{color:var(--accent)}.home-external-link{align-items:center;gap:6px;display:inline-flex}.home-external-link svg{width:13px;height:13px}.home-external-short{display:none}.home-main{max-width:1128px;margin:0 auto;padding:0 24px 32px}.home-intro{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:48px;padding:56px 0 48px;display:grid}.home-intro h1{letter-spacing:-.02em;margin:0 0 14px;font-size:clamp(30px,4vw,44px);font-weight:800;line-height:1.15}.home-intro .home-eyebrow{color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-pill);letter-spacing:.04em;margin:0 0 14px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.home-intro p{margin:0}.home-tagline{max-width:34em;color:var(--muted);font-size:16px;line-height:1.75}.home-features{flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none;display:flex}.home-features li{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);padding:4px 10px;font-size:12px;font-weight:500;line-height:1.5}.home-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.home-primary-button,.home-random-button{border-radius:var(--radius-md);min-height:44px;transition:background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition), transform var(--transition);justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:600;display:inline-flex}.home-page a.home-primary-button,.home-page a.home-primary-button:hover,.home-page a.home-primary-button:focus-visible{color:var(--on-accent)}.home-primary-button{background:var(--accent-solid);border:1px solid var(--accent-solid);box-shadow:var(--shadow-sm)}.home-primary-button:hover{background:var(--accent-solid-hover);border-color:var(--accent-solid-hover);transform:translateY(-1px)}.home-primary-button svg,.home-random-button svg{width:16px;height:16px}.home-random-button{border:1px solid var(--border);color:var(--text);background:var(--surface)}.home-random-button:hover:not(:disabled){border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.home-random-button:disabled{cursor:wait;opacity:.68}.home-affiliation-line{color:var(--muted);font-size:12px;margin-top:10px!important}.home-affiliation-line a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.home-hero-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);display:block;overflow:hidden}.home-page .home-hero-preview:hover,.home-page .home-map-card:hover{color:var(--text)}.home-hero-preview:hover{border-color:var(--accent-border);box-shadow:var(--shadow-md);transform:translateY(-4px)}.home-hero-preview-caption{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.home-hero-preview-name{font-size:14px;font-weight:600}.home-hero-preview-action{color:var(--accent);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.home-hero-preview-action svg{width:13px;height:13px}.map-thumbnail{aspect-ratio:16/10;background:linear-gradient(135deg, var(--accent-soft), var(--surface-secondary) 60%), var(--surface-secondary);display:block;position:relative;overflow:hidden}.map-thumbnail-fallback{color:var(--muted);opacity:.45;place-items:center;display:grid;position:absolute;inset:0}.map-thumbnail-fallback svg{width:30px;height:30px}.map-thumbnail-backdrop,.map-thumbnail-image{width:100%;height:100%;position:absolute;inset:0}.map-thumbnail-backdrop{z-index:0;object-fit:cover;filter:blur(16px)brightness(.55)saturate(1.1);transform:scale(1.12)}.map-thumbnail-image{z-index:1;object-fit:contain;transition:transform .32s cubic-bezier(.4,0,.2,1)}.home-map-card:hover .map-thumbnail-image,.home-hero-preview:hover .map-thumbnail-image{transform:scale(1.03)}.map-thumbnail-fallback{z-index:0}.home-section{border-top:1px solid var(--border);padding:32px 0;scroll-margin-top:88px}.home-section h2{letter-spacing:-.01em;margin:0 0 4px;font-size:24px;font-weight:700}.home-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.home-section-heading p{color:var(--muted);margin:0;font-size:14px}.home-search{align-items:center;display:flex;position:relative}.home-search-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-search svg{color:var(--muted);pointer-events:none;position:absolute;left:12px}.home-search input{width:260px;max-width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:border-color var(--transition), box-shadow var(--transition);padding:9px 12px 9px 38px}.home-search input:focus-visible{border-color:var(--focus);outline-offset:1px}.home-recent{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:-4px 0 20px;font-size:12px;display:flex}.home-recent>span{color:var(--muted)}.home-recent ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.home-recent a{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);transition:background-color var(--transition), border-color var(--transition), color var(--transition);padding:3px 10px;display:inline-block}.home-recent a:hover{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent)}.home-map-groups{gap:28px;display:grid}.home-map-family-heading{align-items:baseline;gap:10px;display:flex}.home-map-family-heading h3{margin:0;font-size:15px;font-weight:600}.home-map-family-heading span{color:var(--muted);font-size:12px}.home-map-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:12px 0 0;padding:0;list-style:none;display:grid}.home-map-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);height:100%;box-shadow:var(--shadow-sm);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"thumb thumb""text chevron";display:grid;overflow:hidden}.home-map-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-md);transform:translateY(-4px)}.home-map-card .map-thumbnail{border-bottom:1px solid var(--border);grid-area:thumb}.home-map-card-text{grid-area:text;min-width:0;padding:12px 14px}.home-map-card-text strong{font-size:14px;font-weight:600;line-height:1.5;display:block}.home-map-card-skins{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.5;display:block;overflow:hidden}.home-map-card-chevron{width:15px;height:15px;color:var(--muted);transition:color var(--transition);grid-area:chevron;place-self:center end;margin-right:14px}.home-map-card:hover .home-map-card-chevron{color:var(--accent)}.home-map-status{padding:12px 0}.home-map-status button{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:6px 16px}.home-map-status-text{color:var(--muted);margin:0 0 12px;font-size:13px}.home-skeleton-card{background:linear-gradient(100deg, var(--surface-secondary) 30%, var(--hover) 50%, var(--surface-secondary) 70%);border:1px solid var(--border);border-radius:var(--radius-lg);background-size:220% 100%;height:210px;animation:1.4s ease-in-out infinite home-skeleton;display:block}@keyframes home-skeleton{0%{background-position:120% 0}to{background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.home-skeleton-card{animation:none}}.home-map-note{color:var(--muted);margin:20px 0 0;font-size:12px}.home-footer{padding:0}@media (max-width:800px){.home-intro{grid-template-columns:1fr;gap:28px;padding:36px 0 32px}.home-hero-preview{max-width:640px}.home-map-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (max-width:600px){.home-header{flex-wrap:nowrap;gap:12px;padding:12px 16px}.home-header nav{gap:14px;font-size:12px}.home-external-full{display:none}.home-external-short{display:inline}.home-main{padding:0 16px 24px}.home-intro{padding-top:28px}.home-intro h1{font-size:clamp(24px,7vw,30px)}.home-tagline{font-size:14px}.home-features{margin-top:16px}.home-actions{margin-top:20px}.home-primary-button,.home-random-button{flex:auto;min-height:44px}.home-hero-preview-caption{padding:10px 12px}.home-map-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-map-card-text{padding:8px 10px}.home-map-card-chevron{margin-right:10px}.home-search,.home-search input{width:100%}}.annotation-tool-slot{grid-column:1/-1;display:flex}.annotation-tool-slot .tool-button{width:100%}.annotation-toggle[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.annotation-toggle[aria-pressed=true]:hover:not(:disabled){background:var(--accent-soft);background:color-mix(in srgb, var(--accent) 14%, var(--accent-soft))}.annotation-panel{z-index:6;width:min(360px,100vw - 24px);max-height:calc(100vh - 76px);background:var(--surface);max-height:calc(100dvh - 76px);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:16px;position:absolute;top:58px;right:64px;overflow:auto}.annotation-heading,.annotation-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.annotation-heading{justify-content:space-between}.annotation-panel button{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-secondary);transition:background-color var(--transition), border-color var(--transition), color var(--transition);padding:6px 9px}.annotation-panel button:hover:not(:disabled){border-color:var(--accent-border)}.annotation-panel label{gap:5px;margin:9px 0;display:grid}.annotation-panel input,.annotation-panel textarea,.annotation-panel select{border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;max-width:100%;color:var(--text);background:var(--surface);transition:border-color var(--transition), box-shadow var(--transition);padding:6px}.annotation-panel textarea{resize:vertical;min-height:70px}.annotation-panel pre{max-height:240px;font-size:11px;overflow:auto}.annotation-hint{color:var(--muted);font-size:12px}.annotation-coordinates{border:1px solid var(--border);gap:8px;margin:10px 0;display:flex}.annotation-coordinates label{flex:1;min-width:0}.annotation-coordinates input{width:100%}.annotation-panel a{color:var(--accent);text-decoration:underline}.annotation-panel section{border-top:1px solid var(--border);margin-top:12px;padding-top:8px}@media (max-width:700px){.annotation-panel{max-height:54vh;max-height:54dvh;top:auto;bottom:12px;right:12px}.annotation-panel button{min-height:40px}}
