/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::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,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}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}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-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}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}}:root{--font-display:"Cinzel", Georgia, serif;--font-body:"Crimson Text", Georgia, serif;--page:#cbb98d;--surface:#f2e5bf;--surface-2:#e4d3a9;--ink:#2d2118;--muted:#6f6048;--border:#9b7a35;--border-soft:#573c1e38;--moss:#5f6f52;--moss-dark:#354437;--gold:#b08b32;--wine:#7f3d3d;--steel:#53606a;--shadow:0 18px 44px #2d21182e;--radius:8px;color:var(--ink);background:var(--page);font-family:var(--font-body);letter-spacing:0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:18px;line-height:1.55}:root[data-theme=dungeon]{--page:#171814;--surface:#27251d;--surface-2:#333126;--ink:#efe3c2;--muted:#b9aa83;--border:#9b7a35;--border-soft:#d3b67033;--moss:#7f926c;--moss-dark:#141f19;--gold:#d1a848;--wine:#a65c5c;--steel:#77828a;--shadow:0 18px 48px #00000061}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:repeating-linear-gradient(0deg, #ffffff09 0 2px, transparent 2px 7px), repeating-linear-gradient(90deg, #2d211809 0 1px, transparent 1px 9px), var(--page);min-width:320px;margin:0}button,input,select,textarea{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{color:var(--ink);font-family:var(--font-display);margin:0;line-height:1.12}h1{font-size:3rem}h2{font-size:1.45rem}p{margin:0}mark{color:inherit;background:#b08b3257;border-radius:4px;padding:0 .1rem}.app-shell{grid-template-columns:284px minmax(0,1fr);min-height:100vh;display:grid}.content-shell{min-width:0}.main-content{width:min(1240px,100vw - 332px);margin:0 auto;padding:24px 24px 56px}.sidebar{background:linear-gradient(180deg, var(--moss-dark), #251b15);color:#f0e4c5;border-right:1px solid #d3b67038;height:100vh;padding:20px 16px;position:sticky;top:0;overflow-y:auto}.brand{border-radius:var(--radius);border:1px solid #d3b67057;align-items:center;gap:12px;min-height:58px;padding:10px;display:flex}.brand-mark{color:#2d2118;background:var(--gold);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.brand strong{font-family:var(--font-display);font-size:1.05rem;display:block}.brand small{color:#d8c89f;font-size:.8rem;display:block}.nav-list{gap:4px;margin-top:18px;display:grid}.nav-item{color:#eadfbe;border:1px solid #0000;border-radius:6px;align-items:center;gap:10px;min-height:38px;padding:8px 10px;transition:background .16s,border-color .16s,transform .16s;display:flex}.nav-item:hover,.nav-item.active{background:#f0e4c51a;border-color:#d3b6703d;transform:translate(2px)}.nav-label{flex:1;min-width:0}.nav-count{color:#f0e4c5;background:#f0e4c51a;border:1px solid #d3b6703d;border-radius:999px;justify-content:center;align-items:center;min-width:28px;min-height:22px;padding:1px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.nav-secret{color:#f6d9ad}.sidebar-note{color:#cbbb91;margin:18px 10px 0;font-size:.83rem}.topbar{z-index:800;border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#cbb98de0;justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:14px 24px;display:flex;position:sticky;top:0}:root[data-theme=dungeon] .topbar{background:#171814e6}.topbar-actions,.toolbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-pill,.secret-chip{min-height:26px;color:var(--wine);font-family:var(--font-display);background:#7f3d3d1f;border:1px solid #7f3d3d80;border-radius:999px;align-items:center;padding:2px 10px;font-size:.74rem;font-weight:700;display:inline-flex}.icon-button,.button{border:1px solid var(--border);color:#211813;background:var(--gold);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 14px;transition:transform .16s,filter .16s,background .16s;display:inline-flex}.icon-button{width:40px;color:var(--ink);background:var(--surface);padding:0}.button.secondary,.icon-button{border-color:var(--border-soft);background:var(--surface-2)}.button:hover,.icon-button:hover{filter:brightness(1.04);transform:translateY(-1px)}button:disabled,.button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.62;transform:none}.text-link,.wiki-link{color:var(--moss-dark);text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #5f6f5273;text-decoration:underline #5f6f5273}:root[data-theme=dungeon] .text-link,:root[data-theme=dungeon] .wiki-link{color:#d4c178}.page-stack{gap:24px;display:grid}.home-hero,.page-panel,.article-shell,.map-shell,.timeline-shell,.family-tree,.editor-panel,.preview-panel,.admin-login,.character-sheet,.section-block{border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);background:#f2e5bfeb}:root[data-theme=dungeon] .home-hero,:root[data-theme=dungeon] .page-panel,:root[data-theme=dungeon] .article-shell,:root[data-theme=dungeon] .map-shell,:root[data-theme=dungeon] .timeline-shell,:root[data-theme=dungeon] .family-tree,:root[data-theme=dungeon] .editor-panel,:root[data-theme=dungeon] .preview-panel,:root[data-theme=dungeon] .admin-login,:root[data-theme=dungeon] .character-sheet,:root[data-theme=dungeon] .section-block{background:#27251df0}.home-hero{background:linear-gradient(120deg, #5f6f522e, transparent 62%), var(--surface);justify-content:space-between;align-items:end;gap:28px;min-height:220px;padding:32px;display:flex}.home-hero p{max-width:700px;color:var(--muted)}.stat-strip{grid-template-columns:repeat(3,minmax(90px,1fr));gap:10px;display:grid}.stat-strip span{border:1px solid var(--border-soft);min-width:96px;color:var(--muted);text-align:center;background:#ffffff29;border-radius:6px;padding:12px;display:grid}.stat-strip strong{color:var(--ink);font-family:var(--font-display);font-size:1.7rem;line-height:1}.eyebrow{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.75rem;font-weight:700}.section-heading,.article-title-row,.family-toolbar,.editor-toolbar,.admin-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.section-block,.page-panel,.timeline-shell,.family-tree,.editor-panel,.preview-panel,.admin-login{padding:24px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.character-card-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.article-card,.related-card,.member-card{border:1px solid var(--border-soft);border-radius:var(--radius);background:#ffffff24;gap:10px;min-width:0;padding:14px;transition:transform .16s,border-color .16s,background .16s;display:grid}.article-card:hover,.related-card:hover,.member-card:hover{border-color:var(--border);background:#ffffff38;transform:translateY(-2px)}.article-card img,.member-card img{aspect-ratio:16/8;object-fit:cover;border:1px solid var(--border-soft);border-radius:6px;width:100%}.article-card h2,.related-card strong,.member-card strong{overflow-wrap:anywhere}.article-card h2{align-items:center;gap:7px;display:flex}.article-card p,.search-result p{color:var(--muted)}.character-rpg-card{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:14px;min-height:118px;padding:18px 16px 14px;position:relative}.character-portrait{color:#f4e5bd;width:76px;height:76px;font-family:var(--font-display);background:radial-gradient(circle at 38% 28%,#d4af3752,#0000 35%),linear-gradient(135deg,#5f6f52db,#3f5f68cc);border:1px solid #b08b3285;border-radius:50%;place-items:center;font-size:1.45rem;font-weight:700;display:grid;overflow:hidden;box-shadow:inset 0 0 18px #21181347,0 0 0 4px #b08b321a}.character-portrait img{aspect-ratio:auto;object-fit:cover;border:0;border-radius:50%;width:100%;height:100%}.character-card-body{align-content:start;align-self:stretch;gap:6px;min-width:0;display:grid}.character-card-body h2{margin:0;font-size:1.28rem;line-height:1.1}.character-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;padding-right:96px;display:flex}.character-title-row h2{flex:160px;min-width:0}.character-status-chip{border:1px solid var(--status-border,#b08b328c);max-width:108px;min-height:22px;color:var(--status-ink,var(--ink));background:var(--status-bg,#b08b322e);box-shadow:inset 0 0 8px #ffffff1a, 0 0 0 2px var(--status-halo,#b08b3214);font-family:var(--font-display);text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:2px 7px;font-size:.58rem;font-weight:800;display:inline-flex;position:absolute;top:10px;right:10px;overflow:hidden}.status-vivo{--status-bg:#5f6f523d;--status-border:#5f6f52ad;--status-halo:#5f6f521f;--status-ink:#293b23}.status-morto{--status-bg:#7f3d3d38;--status-border:#7f3d3db3;--status-halo:#7f3d3d1f;--status-ink:#5d2424}.status-desaparecido{--status-bg:#3f5f6838;--status-border:#3f5f68ad;--status-halo:#3f5f681f;--status-ink:#264751}.status-exilado{--status-bg:#8b6f4738;--status-border:#8b6f47b8;--status-halo:#8b6f471f;--status-ink:#60421f}.status-restrito{--status-bg:#7f3d3d47;--status-border:#7f3d3dbd;--status-halo:#7f3d3d26;--status-ink:#5d2424}:root[data-theme=dungeon] .character-status-chip{--status-ink:#f4e5bd}.character-meta-line{color:var(--muted);text-transform:uppercase;flex-wrap:wrap;gap:6px;font-size:.72rem;font-weight:800;display:flex}.character-meta-line span:not(:last-child):after{content:"•";color:var(--gold);margin-left:6px}.character-card-tags{margin-top:auto}.character-meta-line span:not(:last-child):after{content:"•"}.tag-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag-badge{border:1px solid var(--tag-color);align-items:center;min-height:28px;padding:4px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tag-badge{border:1px solid color-mix(in srgb, var(--tag-color), #1d150f 22%)}}.tag-badge{color:var(--ink);background:var(--tag-color);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.tag-badge{background:color-mix(in srgb, var(--tag-color), transparent 78%)}}.tag-badge{font-size:.88rem;font-weight:700}.tag-badge-compact{min-height:24px;padding:2px 8px;font-size:.78rem}.category-badge{border:1px solid var(--category-color,var(--gold));align-items:center;width:fit-content;min-height:28px;padding:4px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.category-badge{border:1px solid color-mix(in srgb, var(--category-color,var(--gold)), #1d150f 20%)}}.category-badge{color:var(--ink);background:var(--category-color,var(--gold));border-radius:999px}@supports (color:color-mix(in lab, red, red)){.category-badge{background:color-mix(in srgb, var(--category-color,var(--gold)), transparent 76%)}}.category-badge{font-family:var(--font-display);text-transform:uppercase;font-size:.72rem;font-weight:700}.category-region{--category-color:#5f6f52}.category-character{--category-color:#8b6f47}.category-organization{--category-color:#3f5f68}.category-creature{--category-color:#675088}.category-race{--category-color:#7f623f}.category-item{--category-color:#a9792b}.category-timeline,.category-event{--category-color:#8f3d3d}.category-lore{--category-color:#6f5b35}.tag-remove{cursor:pointer;background:0 0;border:0;padding:0}.search-wrap{width:min(680px,100%);position:relative}.search-trigger{border:1px solid var(--border-soft);width:100%;min-height:44px;color:var(--muted);background:var(--surface);cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.search-trigger span{text-align:left;flex:1}kbd{border:1px solid var(--border-soft);min-width:54px;color:var(--muted);background:var(--surface-2);text-align:center;border-radius:5px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.7rem}.search-popover{z-index:1000;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);inset-inline:0;gap:10px;padding:12px;display:grid;position:absolute;top:calc(100% + 10px)}.search-input-row,.filter-row,.password-row,.upload-row,.tag-input-row{align-items:center;gap:10px;display:flex}.search-input-row{border:1px solid var(--border-soft);background:#ffffff2e;border-radius:6px;min-height:44px;padding:0 8px}.search-input-row input,.password-row input,.upload-row input,.tag-input-row input{flex:1}.filter-row{flex-wrap:wrap}.search-results{max-height:540px;display:grid;overflow-y:auto}.search-result{border-top:1px solid var(--border-soft);gap:4px;padding:12px;display:grid}.search-result:first-child{border-top:0}.search-result span{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.72rem}label{color:var(--muted);gap:6px;font-weight:700;display:grid}input,select,textarea{border:1px solid var(--border-soft);width:100%;min-height:40px;color:var(--ink);background:#ffffff3d;border-radius:6px;padding:8px 10px}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.map-shell{background:linear-gradient(0deg, #2d211814, transparent), var(--surface-2);padding:0;position:relative;overflow:hidden}.osd-map-frame{width:100%;height:620px;position:relative;overflow:hidden}.world-map{background:linear-gradient(90deg, #5f6f5214 1px, transparent 1px), linear-gradient(0deg, #5f6f5214 1px, transparent 1px), var(--surface-2);background-size:48px 48px;width:100%;height:100%}.compact-map .osd-map-frame{height:420px}.full-map .osd-map-frame{height:calc(100vh - 170px);min-height:680px}.world-map .openseadragon-canvas{outline:none}.osd-map-frame.has-hovered-region .world-map{cursor:pointer}.map-controls{z-index:670;border:1px solid var(--border-soft);box-shadow:var(--shadow);background:#f2e5bfe6;border-radius:7px;gap:6px;padding:6px;display:flex;position:absolute;top:14px;right:14px}:root[data-theme=dungeon] .map-controls{background:#27251de6}.map-controls button{border:1px solid var(--border-soft);min-width:38px;min-height:34px;color:var(--ink);background:var(--surface-2);cursor:pointer;border-radius:5px;padding:4px 9px;font-weight:700}.map-missing{z-index:650;border:1px solid var(--border);max-width:min(430px,100% - 36px);color:var(--ink);background:var(--surface);box-shadow:var(--shadow);border-radius:7px;gap:2px;padding:12px 14px;display:grid;position:absolute;bottom:18px;left:18px}.map-missing span{color:var(--muted);font-size:.9rem}.map-modal-backdrop{z-index:690;background:#20171161;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.map-region-modal{border:1px solid var(--border);border-radius:var(--radius);width:min(440px,100%);color:var(--ink);background:var(--surface);box-shadow:var(--shadow);gap:12px;padding:20px;display:grid}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.map-selection-block{gap:16px;display:grid}.map-selection-empty{align-items:center;gap:14px;display:flex}.map-selection-empty svg{color:var(--gold);flex:none}.map-selection-summary{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.map-selection-title{gap:8px;min-width:0;display:grid}.map-selection-title h2{overflow-wrap:anywhere}.map-selection-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.map-selection-meta>span:not(.category-badge){border:1px solid var(--border-soft);background:#ffffff24;border-radius:999px;min-height:26px;padding:3px 9px;font-weight:700}.map-selection-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.map-selection-notice{justify-items:start;gap:10px;display:grid}.map-selection-article{box-shadow:none}.article-shell{overflow:hidden}.article-cover{aspect-ratio:21/8;object-fit:cover;border-bottom:1px solid var(--border-soft);width:100%}.article-header,.article-content,.section-list,.related-list,.gm-notes{padding:24px}.article-content{padding-top:0}.article-content h2,.article-section h2,.related-list h2{margin-top:1.35rem;margin-bottom:.55rem}.article-content p,.article-content li,.article-section p,.article-section li{color:var(--muted)}.article-content ul,.article-section ul{padding-left:1.2rem}.section-list{gap:14px;padding-top:0;display:grid}.article-section,.gm-notes,.secret-panel{border:1px solid var(--border-soft);border-radius:var(--radius);background:#ffffff21;padding:16px}.gm-notes{border-color:#7f3d3d66;margin:0 24px 24px}.related-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.table-scroll{margin:1rem 0;overflow-x:auto}.wiki-article{display:grid;overflow:hidden}.wiki-article-header{border-bottom:1px solid var(--border-soft);background:linear-gradient(90deg,#5f6f5229,#0000 68%),#ffffff14;gap:12px;padding:26px 28px 22px;display:grid}.wiki-kicker-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wiki-article-header h1{max-width:900px;font-size:3.2rem}.wiki-article-subtitle{max-width:820px;color:var(--muted);font-size:1.1rem}.canon-status{width:fit-content;min-height:28px;color:var(--moss-dark);font-family:var(--font-display);text-transform:uppercase;background:#b08b3229;border:1px solid #b08b3280;border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.status-segredo-do-gm,.status-retcon{color:var(--wine);background:#7f3d3d1f;border-color:#7f3d3d7a}.status-pendente,.status-rascunho{color:var(--steel);background:#53606a1f;border-color:#53606a70}.wiki-summary{border:1px solid #b08b3261;border-left:5px solid var(--gold);border-radius:var(--radius);background:linear-gradient(90deg,#b08b321f,#0000),#ffffff21;gap:8px;margin:22px 28px 0;padding:16px 18px;display:grid}.wiki-summary p{color:var(--ink)}.wiki-article-layout{grid-template-columns:minmax(0,1fr) minmax(320px,340px);align-items:start;gap:24px;padding:24px 28px 28px;display:grid}.wiki-article-layout-single{grid-template-columns:1fr}.wiki-article-main{min-width:0}.wiki-article-content,.wiki-section-list,.wiki-private-notes{padding:0}.wiki-article-content>:first-child{margin-top:0}.wiki-article-content h1{font-size:2rem}.wiki-heading{align-items:baseline;gap:8px;scroll-margin-top:92px;display:flex;position:relative}.wiki-article-content h2,.wiki-article-section h2{border-bottom:1px solid #b08b3252;margin-top:2rem;padding-bottom:8px}.wiki-article-content h3,.wiki-article-content h4,.wiki-article-section h3,.wiki-article-section h4{margin-top:1.35rem;margin-bottom:.45rem}.heading-anchor{color:var(--gold);font-family:var(--font-body);opacity:0;flex:none;font-size:.85em;transition:opacity .16s,transform .16s;transform:translate(-2px)}.wiki-heading:hover .heading-anchor,.heading-anchor:focus-visible{opacity:1;transform:translate(0)}.wiki-link{color:var(--gold)}@supports (color:color-mix(in lab, red, red)){.wiki-link{color:color-mix(in srgb, var(--gold), var(--moss-dark) 35%)}}.wiki-link{text-underline-offset:3px;font-weight:800;-webkit-text-decoration:underline #b08b326b;text-decoration:underline #b08b326b;text-decoration-thickness:1px}.wiki-link-missing{color:var(--wine);cursor:help;text-decoration-style:dotted;text-decoration-color:#7f3d3da6}.wiki-callout{border:1px solid var(--border-soft);border-radius:var(--radius);background:#ffffff24;border-left-width:5px;gap:8px;margin:1rem 0;padding:14px 16px;display:grid}.wiki-callout-label{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.72rem;font-weight:800}.wiki-callout-body{gap:.45rem;display:grid}.wiki-callout-body p{color:var(--ink)}.wiki-callout-canon{border-left-color:var(--moss);background:#5f6f521f}.wiki-callout-gm{border-left-color:var(--wine);background:#7f3d3d1f}.wiki-callout-pending{border-left-color:var(--steel);background:#53606a1f}.wiki-callout-author{border-left-color:var(--gold);background:#b08b321f}.wiki-article-sidebar{gap:12px;display:grid}.wiki-side-panel{border:1px solid var(--border-soft);border-radius:var(--radius);background:linear-gradient(#ffffff29,#0000),#f2e5bfe6;gap:12px;padding:14px;display:grid}:root[data-theme=parchment] .wiki-side-panel{background:linear-gradient(#ffffff47,#ffffff0a),#f2e5bfeb}:root[data-theme=dungeon] .wiki-side-panel{background:linear-gradient(#ffffff0d,#0000),#27251df0}.wiki-side-panel-header{gap:2px;display:grid}.wiki-side-panel-header h2{font-size:1.02rem}.wiki-infobox{padding:14px;overflow:hidden}.wiki-infobox .wiki-side-panel-header,.wiki-infobox .empty-state,.wiki-infobox-list{margin:0}.wiki-infobox-image{aspect-ratio:4/3;object-fit:cover;border-bottom:1px solid var(--border-soft);border-radius:6px;width:100%}.wiki-infobox-list,.wiki-metadata-list,.wiki-footer-meta{gap:0;margin:0;display:grid}.wiki-infobox-list div,.wiki-metadata-list div,.wiki-footer-meta div{border-top:1px solid #573c1e29;grid-template-columns:140px minmax(0,1fr);align-items:baseline;gap:8px;padding:8px 0;display:grid}.wiki-infobox-list dt,.wiki-metadata-list dt,.wiki-footer-meta dt{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.68rem;font-weight:800;line-height:1}.wiki-infobox-list dd,.wiki-metadata-list dd,.wiki-footer-meta dd{min-width:0;color:var(--muted);text-align:left;overflow-wrap:anywhere;margin:0;line-height:1}.wiki-infobox-list dd p{line-height:inherit;display:inline}.wiki-infobox-list dt,.wiki-infobox-list dd{overflow-wrap:normal;word-break:normal}.wiki-infobox-list dt{-webkit-hyphens:none;hyphens:none}.wiki-toc ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.wiki-toc a{color:var(--moss-dark);border-left:2px solid #b08b3242;padding:5px 0 5px 9px;font-weight:800;display:block}:root[data-theme=dungeon] .wiki-toc a{color:#d4c178}.wiki-toc .toc-level-3 a{padding-left:18px;font-size:.92rem}.wiki-toc .toc-level-4 a{color:var(--muted);padding-left:28px;font-size:.86rem}.wiki-side-link-list{gap:8px;display:grid}.wiki-side-link-list a{border:1px solid var(--border-soft);background:#ffffff21;border-radius:6px;gap:2px;padding:9px 10px;display:grid}.wiki-side-link-list a span{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.66rem;font-weight:800}.wiki-side-link-list a strong{color:var(--ink);line-height:1.2}.wiki-private-notes{border-radius:var(--radius);background:#7f3d3d1a;border:1px solid #7f3d3d66;margin-top:18px;padding:16px}.wiki-author-notes{background:#b08b321a;border-color:#b08b326b}.wiki-article-footer{border-top:1px solid var(--border-soft);background:#ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.wiki-footer-main{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.wiki-footer-meta{flex-wrap:wrap;gap:14px;font-size:.82rem;display:flex}.wiki-footer-meta div{border:0;gap:5px;padding:0;display:flex}table{border-collapse:collapse;width:100%;min-width:520px}th,td{border:1px solid var(--border-soft);text-align:left;padding:8px 10px}th{background:#5f6f5229}.secret-panel,.empty-state{color:var(--muted)}.sealed-panel{text-align:center;background:linear-gradient(135deg,#7f3d3d29,#b08b321a),#ffffff1f;border-color:#7f3d3d6b;justify-items:center;gap:10px;margin:24px;padding:30px;display:grid}.sealed-lock{width:58px;height:58px;color:var(--wine);background:#7f3d3d1f;border:1px solid #7f3d3d70;border-radius:50%;place-items:center;display:grid}.article-mini-map{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface-2);box-shadow:var(--shadow);overflow:hidden}.article-mini-map-frame{background:#211813;height:280px;position:relative;overflow:hidden}.article-mini-map-backdrop,.article-mini-map-image{-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute;top:0;left:0}.article-mini-map-backdrop{object-fit:cover;opacity:.42;filter:blur(7px)saturate(.9)brightness(.78);width:100%;height:100%;transform:scale(1.04)}.article-mini-map-image{transform-origin:0 0;filter:saturate(.96)contrast(1.04)}.article-mini-map-frame:after{content:"";pointer-events:none;background:radial-gradient(circle,#0000 0 18%,#110c0814 45%,#110c0866 100%),linear-gradient(#b08b3214,#0000 38%);position:absolute;inset:0}.article-mini-map-marker{z-index:3;background:#d4af37;border:2px solid #f5db85;border-radius:50%;width:18px;height:18px;animation:1.8s ease-out infinite map-marker-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 #d4af378c,0 0 22px #d4af37ad}@keyframes map-marker-pulse{0%{box-shadow:0 0 #d4af3799,0 0 22px #d4af37ad}70%{box-shadow:0 0 0 18px #d4af3700,0 0 28px #d4af37c7}to{box-shadow:0 0 #d4af3700,0 0 22px #d4af37ad}}.article-mini-map-label,.article-mini-map-link{z-index:4;position:absolute}.article-mini-map-label{color:#f4e5bd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c140db8;border:1px solid #d4af3761;border-radius:7px;gap:2px;max-width:min(360px,100% - 28px);padding:10px 12px;display:grid;bottom:14px;left:14px}.article-mini-map-label strong{font-family:var(--font-display)}.article-mini-map-link{top:14px;right:14px}.article-breadcrumb{border:1px solid var(--border-soft);border-radius:var(--radius);color:var(--muted);background:#f2e5bfc2;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}:root[data-theme=dungeon] .article-breadcrumb{background:#27251dd1}.article-breadcrumb a{color:var(--moss-dark);font-weight:700}:root[data-theme=dungeon] .article-breadcrumb a{color:#d4c178}.article-breadcrumb strong{color:var(--ink)}.article-page-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:20px;display:grid}.article-page-sidebar{gap:12px;display:grid;position:sticky;top:96px}.region-summary{justify-content:space-between;align-items:center;gap:16px;display:flex}.region-color{border:1px solid var(--border-soft);background:var(--region-color);border-radius:50%;width:72px;height:72px}.region-article-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:20px;display:grid}.region-article-main .article-content{padding:24px}.region-article-main .article-content h1{margin-bottom:.8rem}.region-article-sidebar{gap:12px;display:grid;position:sticky;top:96px}.sidebar-card{border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);background:#f2e5bfeb;gap:8px;padding:14px;display:grid}:root[data-theme=dungeon] .sidebar-card{background:#27251df0}.sidebar-card strong{font-family:var(--font-display)}.sidebar-card span{color:var(--muted)}.sidebar-link-list{gap:8px;display:grid}.sidebar-link-list a{border:1px solid var(--border-soft);background:#ffffff24;border-radius:6px;padding:8px 10px;font-weight:700}.character-sheet{grid-template-columns:260px minmax(0,1fr);gap:24px;padding:24px;display:grid}.character-sheet img{aspect-ratio:4/5;object-fit:cover;border:1px solid var(--border-soft);border-radius:var(--radius);width:100%}.character-sheet dl{grid-template-columns:repeat(2,minmax(160px,1fr));gap:10px;margin:18px 0;display:grid}.character-sheet dl div{border:1px solid var(--border-soft);border-radius:6px;padding:10px}.character-sheet dt{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.72rem}.character-sheet dd{color:var(--muted);margin:0}.timeline-page-grid{gap:20px;display:grid}.timeline-shell{background:radial-gradient(circle at 20% 18%, #146a4a29, transparent 27%), radial-gradient(circle at 76% 16%, #1f4f8a2e, transparent 31%), radial-gradient(circle at 54% 84%, #8a26301f, transparent 34%), linear-gradient(135deg, #f2e5bfe6, #5e4e3557), var(--surface);gap:18px;min-height:470px;padding:20px;display:grid;overflow:hidden}.timeline-control-row,.timeline-detail-header,.timeline-admin-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.timeline-controls{border:1px solid var(--border-soft);background:#ffffff24;border-radius:7px;gap:6px;padding:6px;display:flex}.timeline-controls button{border:1px solid var(--border-soft);width:38px;height:34px;color:var(--ink);background:var(--surface-2);cursor:pointer;border-radius:5px;place-items:center;padding:0;display:grid}.timeline-viewport{border:1px solid var(--border-soft);border-radius:var(--radius);cursor:grab;touch-action:none;background:radial-gradient(circle at 16% 22%,#146a4a6b,#0000 26%),radial-gradient(circle at 80% 26%,#1f4f8a70,#0000 30%),radial-gradient(circle at 55% 88%,#8a263047,#0000 34%),radial-gradient(circle at 12% 18%,#fff4c6e6 0 1px,#0000 2px) 0 0/180px 150px,radial-gradient(circle at 24% 64%,#fff4c6b3 0 1px,#0000 2px) 0 0/210px 170px,radial-gradient(circle at 39% 30%,#fff4c6d1 0 1px,#0000 2px) 0 0/240px 210px,radial-gradient(circle at 63% 20%,#fff4c6bd 0 1px,#0000 2px) 0 0/270px 190px,radial-gradient(circle at 86% 66%,#fff4c6db 0 1px,#0000 2px) 0 0/310px 230px,linear-gradient(115deg,#0000 0 45%,#b08b3229 45.2% 45.8%,#0000 46%) 0 0/260px 260px,linear-gradient(72deg,#0000 0 56%,#b08b3221 56.2% 56.8%,#0000 57%) 0 0/300px 300px,linear-gradient(#101722 0%,#17261f 52%,#251a25 100%);height:390px;position:relative;overflow:hidden;box-shadow:inset 0 0 58px #00000075,inset 0 0 0 1px #fff4c612}.timeline-viewport:active{cursor:grabbing}.timeline-orbit{transform-origin:0;inset-block:0;min-width:100%;transition:width .16s;position:absolute;left:50%}.timeline-constellation{opacity:.8;background:linear-gradient(24deg,#0000 0 24%,#d4af3733 24.2% 24.6%,#0000 24.8%) 0 0/360px 240px,linear-gradient(148deg,#0000 0 38%,#d4af3729 38.2% 38.6%,#0000 38.8%) 0 0/420px 280px,linear-gradient(88deg,#0000 0 66%,#d4af3724 66.2% 66.6%,#0000 66.8%) 0 0/480px 260px,radial-gradient(circle at 12% 66%,#fff4c6f2 0 1px,#0000 2px) 0 0/220px 180px,radial-gradient(circle at 28% 34%,#fff4c6d1 0 1px,#0000 2px) 0 0/260px 210px,radial-gradient(circle at 44% 18%,#fff4c6eb 0 1px,#0000 2px) 0 0/300px 230px,radial-gradient(circle at 63% 28%,#fff4c6cc 0 1px,#0000 2px) 0 0/340px 260px,radial-gradient(circle at 86% 62%,#fff4c6e6 0 1px,#0000 2px) 0 0/390px 280px;position:absolute;inset:0}.timeline-arcane-track{width:92%;height:320px;position:absolute;inset:14px 4%;overflow:visible}.timeline-arcane-track path{fill:none;stroke-linecap:round}.timeline-track-shadow{stroke:#2d211857;stroke-width:23px;filter:blur(5px)}.timeline-track-metal{stroke:#5a4739;stroke-width:15px}.timeline-track-gold{stroke:#b08b32c7;stroke-width:4px;stroke-dasharray:10 13}.timeline-spoke{background:linear-gradient(#0000,#b08b32b3,#0000);width:1px;position:absolute;transform:translate(-50%)}.timeline-node{width:164px;color:var(--ink);cursor:pointer;text-align:center;background:0 0;border:0;justify-items:center;gap:6px;padding:0;transition:opacity .16s,filter .16s,transform .16s;display:grid;position:absolute;transform:translate(-50%,-50%)}.timeline-node:not(.is-active){opacity:.72;filter:saturate(.78)}.timeline-node.is-active{z-index:8;opacity:1;filter:none;transform:translate(-50%,-50%)scale(1.04)}.timeline-node.theme-growth{--node-jewel:#146a4a;--node-glow:#146a4a61}.timeline-node.theme-knowledge{--node-jewel:#1f4f8a;--node-glow:#1f4f8a61}.timeline-node.theme-conflict{--node-jewel:#8a2630;--node-glow:#8a263066}.timeline-marker-shell{background:radial-gradient(circle,#b08b322e,#0000 60%),#2d211814;border-radius:50%;order:1;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 12px 30px #2d21183d}.timeline-marker{color:#d8c37a;place-items:center;transition:transform .16s,box-shadow .16s;display:grid}.timeline-node.is-major .timeline-marker{width:50px;height:50px;box-shadow:inset 0 0 0 3px #ffffff0a, 0 0 0 5px var(--node-glow), 0 12px 22px #00000047;background:radial-gradient(circle at 35% 28%,#ffffff2e,#0000 18%),radial-gradient(circle,#202026,#060608 72%);border:2px solid #b08b32d1;border-radius:50%}.timeline-node.is-minor .timeline-marker{background:linear-gradient(135deg, #ffffff2e, transparent 38%), linear-gradient(145deg, var(--node-jewel), #2f271f);border:1px solid #b08b32b8;border-radius:9px;width:36px;height:36px}@supports (color:color-mix(in lab, red, red)){.timeline-node.is-minor .timeline-marker{background:linear-gradient(135deg, #ffffff2e, transparent 38%), linear-gradient(145deg, color-mix(in srgb, var(--node-jewel), #fff 14%), #2f271f)}}.timeline-node.is-minor .timeline-marker{box-shadow:0 0 0 5px var(--node-glow), inset 0 -8px 14px #0000003d;transform:rotate(45deg)}.timeline-node.is-minor .timeline-marker svg{transform:rotate(-45deg)}.timeline-node:hover .timeline-marker,.timeline-node.is-active .timeline-marker{transform:scale(1.12)}.timeline-node.is-minor:hover .timeline-marker,.timeline-node.is-minor.is-active .timeline-marker{transform:rotate(45deg)scale(1.12)}.timeline-node strong{color:var(--ink);-webkit-line-clamp:2;background:#f2e5bf7a;border:1px solid #0000;border-radius:5px;-webkit-box-orient:vertical;order:2;max-width:154px;padding:3px 7px;font-size:.78rem;line-height:1.15;display:-webkit-box;overflow:hidden;box-shadow:0 8px 18px #2d211814}.timeline-node.is-above .timeline-marker-shell{order:2}.timeline-node.is-above strong{order:1}.timeline-node.is-active strong{max-width:210px;color:var(--moss-dark);background:#f2e5bfeb;border-color:#b08b3273;font-size:.9rem}:root[data-theme=dungeon] .timeline-node.is-active strong{color:#d4c178;background:#27251deb}.timeline-detail-panel,.timeline-admin-panel{border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);background:#f2e5bfeb;gap:16px;padding:22px;display:grid}:root[data-theme=dungeon] .timeline-detail-panel,:root[data-theme=dungeon] .timeline-admin-panel{background:#27251df0}.timeline-facts{grid-template-columns:repeat(2,minmax(160px,1fr));gap:10px;margin:0;display:grid}.timeline-facts div{border:1px solid var(--border-soft);background:#ffffff1f;border-radius:6px;padding:10px}.timeline-facts dt{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.72rem}.timeline-facts dd{color:var(--muted);margin:0}.timeline-summary{color:var(--muted)}.timeline-summary ul,.timeline-summary ol{padding-left:1.2rem}.timeline-admin-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.timeline-summary-field,.timeline-admin-form .danger-button{grid-column:1/-1}.danger-button{color:var(--wine);background:#7f3d3d1f;border-color:#7f3d3d6b}.admin-editor-actions{gap:8px;display:grid}.admin-editor-actions .button{width:100%}.family-tabs{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.family-tabs button{border:1px solid var(--border-soft);min-height:38px;color:var(--ink);background:var(--surface-2);cursor:pointer;border-radius:6px;padding:8px 12px}.family-tabs button.is-active{border-color:var(--border);background:var(--gold);color:#211813}.mermaid-frame,.family-graph-frame{border:1px solid var(--border-soft);border-radius:var(--radius);background:#ffffff29;min-height:320px;margin-top:18px;padding:18px;overflow:auto}.mermaid-frame svg{max-width:100%;height:auto}.mermaid-clickable-node{cursor:pointer}.mermaid-clickable-node:hover rect,.mermaid-clickable-node:hover polygon,.mermaid-clickable-node:focus rect,.mermaid-clickable-node:focus polygon{filter:brightness(1.08);stroke-width:2px}.family-editor{grid-template-columns:minmax(180px,1fr) minmax(140px,190px) minmax(140px,190px) minmax(140px,190px) auto;align-items:end;gap:12px;margin-top:16px;display:grid}.member-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.member-card img{aspect-ratio:1}.member-card span{color:var(--muted);font-size:.9rem}.admin-login{max-width:480px;margin:56px auto 0}.admin-login form{gap:14px;margin-top:18px;display:grid}.admin-articles-shell{gap:16px;display:grid}.admin-articles-header,.admin-articles-toolbar,.admin-bulk-toolbar,.admin-article-editor{border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);background:#f2e5bfeb}:root[data-theme=dungeon] .admin-articles-header,:root[data-theme=dungeon] .admin-articles-toolbar,:root[data-theme=dungeon] .admin-bulk-toolbar,:root[data-theme=dungeon] .admin-article-editor{background:#27251df0}.admin-articles-header{justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.admin-articles-header p,.admin-article-editor p{color:var(--muted)}.admin-articles-toolbar{flex-wrap:wrap;align-items:end;gap:16px;padding:16px;display:flex}.admin-articles-toolbar label{width:min(320px,100%)}.admin-bulk-toolbar{gap:14px;padding:16px;display:grid}.bulk-selection-summary,.bulk-button-pair{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bulk-selection-summary strong{min-width:132px;font-family:var(--font-display)}.bulk-actions-grid{grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr) auto minmax(130px,.7fr) minmax(130px,.7fr) auto auto;align-items:end;gap:10px;display:grid}.bulk-actions-grid label{min-width:0}.bulk-actions-grid .button,.bulk-button-pair .button{white-space:nowrap}.admin-articles-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:18px;display:grid}.admin-table-wrap{border:1px solid var(--border-soft);border-radius:var(--radius);max-height:calc(100vh - 220px);box-shadow:var(--shadow);background:#f2e5bfe6;overflow:auto}:root[data-theme=dungeon] .admin-table-wrap{background:#27251df0}.admin-articles-table{min-width:880px}.admin-articles-table thead{z-index:2;background:var(--surface-2);position:sticky;top:0}.admin-articles-table th{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.78rem}.bulk-select-cell{text-align:center;width:44px}.bulk-select-cell input{cursor:pointer;width:18px;min-height:18px;margin:0 auto}.admin-articles-table tbody tr{cursor:pointer;transition:background .16s,box-shadow .16s}.admin-articles-table tbody tr:hover,.admin-articles-table tbody tr.is-selected{background:#5f6f5229}.admin-articles-table tbody tr.is-selected{box-shadow:inset 4px 0 0 var(--moss)}.admin-articles-table tbody tr.meta-row{background:#d4af373d}.admin-articles-table tbody tr.meta-row:hover,.admin-articles-table tbody tr.meta-row.is-selected{background:#d4af375c}.admin-articles-table td{vertical-align:top}.admin-articles-table td strong,.admin-articles-table td span{display:block}.admin-articles-table td span{color:var(--muted);font-size:.82rem}.admin-article-editor{gap:16px;padding:18px;display:grid;position:sticky;top:96px}.tag-admin-field{color:var(--muted);gap:8px;font-weight:700;display:grid}.tag-editor-list{flex-wrap:wrap;gap:8px;display:flex}.tag-edit-pill{align-items:center;gap:4px;display:inline-flex}.tag-edit-pill button{border:1px solid var(--border-soft);width:24px;height:24px;color:var(--ink);background:var(--surface-2);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.character-profile-admin{border-radius:var(--radius);background:#b08b321a;border:1px solid #b08b325c;gap:12px;padding:14px;display:grid}.character-profile-admin label{color:var(--muted)}.article-editor-shell{border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow);background:#f2e5bfeb;gap:16px;padding:24px;display:grid}:root[data-theme=dungeon] .article-editor-shell{background:#27251df0}.markdown-toolbar{border:1px solid var(--border-soft);border-radius:var(--radius);background:#ffffff24;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex}.markdown-toolbar button,.markdown-upload-button{border:1px solid var(--border-soft);min-height:36px;color:var(--ink);background:var(--surface-2);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-weight:700;display:inline-flex}.markdown-toolbar button:hover,.markdown-upload-button:hover{border-color:var(--border)}.markdown-editor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.markdown-editor-pane,.markdown-preview-pane{min-width:0}.markdown-textarea-wrap{display:block;position:relative}.markdown-textarea-wrap textarea{min-height:620px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9rem;line-height:1.55}.markdown-preview-pane{gap:8px;display:grid;overflow-x:hidden}.markdown-preview-pane .article-shell,.editor-preview-article{min-height:620px}.editor-preview-article .wiki-article-layout{grid-template-columns:minmax(0,1fr)}.editor-preview-article .wiki-article-sidebar{max-width:100%;position:static}.internal-link-autocomplete{z-index:20;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-height:240px;box-shadow:var(--shadow);display:grid;position:absolute;bottom:12px;left:12px;right:12px;overflow-y:auto}.internal-link-autocomplete button{border:0;border-bottom:1px solid var(--border-soft);color:var(--ink);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.internal-link-autocomplete button:last-child{border-bottom:0}.internal-link-autocomplete button:hover{background:#5f6f5224}.internal-link-autocomplete span{color:var(--muted);font-size:.85rem}.editor-grid{grid-template-columns:minmax(0,.95fr) minmax(380px,1fr);align-items:start;gap:20px;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.wide-field,.infobox-editor-field{grid-column:1/-1}.field-hint{color:var(--muted);font-size:.82rem;font-weight:500}.entity-link-field{border:1px solid var(--border-soft);border-radius:var(--radius);background:#ffffff1f;grid-column:1/-1;gap:12px;padding:14px;display:grid}.city-affiliation-field{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.infobox-editor-field{border:1px solid var(--border-soft);border-radius:var(--radius);background:#b08b3214;gap:12px;padding:14px;display:grid}.infobox-editor-header,.editor-toggle-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.infobox-row-list{gap:8px;display:grid}.infobox-row-editor{grid-template-columns:minmax(130px,.55fr) minmax(180px,1fr) 38px;align-items:center;gap:8px;display:grid}.infobox-row-editor button{width:38px;height:38px;color:var(--wine);cursor:pointer;background:#7f3d3d1a;border:1px solid #7f3d3d57;border-radius:6px;place-items:center;padding:0;display:grid}.entity-link-controls{grid-template-columns:minmax(150px,.7fr) minmax(220px,1fr) auto;align-items:end;gap:10px;display:grid}.entity-link-list{flex-wrap:wrap;gap:8px;display:flex}.entity-link-pill{background:#b08b321f;border:1px solid #b08b3261;border-radius:999px;align-items:center;gap:7px;min-height:30px;padding:4px 8px 4px 10px;display:inline-flex}.entity-link-pill strong{color:var(--gold);font-family:var(--font-display);text-transform:uppercase;font-size:.7rem}.entity-link-pill button{border:1px solid var(--border-soft);width:22px;height:22px;color:var(--ink);background:var(--surface-2);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.editor-panel,.preview-panel{gap:16px;display:grid}.preview-panel{max-height:calc(100vh - 120px);position:sticky;top:96px;overflow-y:auto}.toggle-field{align-items:center;gap:10px;min-height:40px;padding:8px 0;display:flex}.toggle-field input,.check-card input{width:auto;min-height:auto}.editor-image-preview{border:1px solid var(--border-soft);border-radius:var(--radius);width:220px}.related-options{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.check-card{border:1px solid var(--border-soft);color:var(--ink);background:#ffffff1f;border-radius:6px;align-items:center;gap:10px;padding:10px;display:flex}.check-card span{display:grid}.check-card small{color:var(--muted)}.status-line{color:var(--moss-dark);background:#5f6f521f;border:1px solid #5f6f5259;border-radius:6px;padding:8px 10px}.error-line,.error-box{color:var(--wine)}.error-box{white-space:pre-wrap}.tag-cloud{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.tag-cloud a{border:1px solid var(--tag-color);gap:4px;padding:14px;display:grid}@supports (color:color-mix(in lab, red, red)){.tag-cloud a{border:1px solid color-mix(in srgb, var(--tag-color), #1d150f 20%)}}.tag-cloud a{border-radius:var(--radius);background:var(--tag-color)}@supports (color:color-mix(in lab, red, red)){.tag-cloud a{background:color-mix(in srgb, var(--tag-color), transparent 82%)}}.tag-cloud a{font-weight:700}.tag-cloud span{color:var(--muted);font-size:.85rem;font-weight:400}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1120px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;max-height:none;position:relative}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.main-content{width:min(100%,980px)}.editor-grid,.markdown-editor-grid,.character-sheet,.wiki-article-layout,.article-page-layout,.region-article-layout,.admin-articles-layout,.bulk-actions-grid,.entity-link-controls,.timeline-admin-form{grid-template-columns:1fr}.preview-panel,.wiki-article-sidebar,.article-page-sidebar,.region-article-sidebar,.admin-article-editor{max-height:none;position:static}}@media (width<=720px){:root{font-size:16px}h1{font-size:2.25rem}.main-content,.topbar,.section-block,.page-panel,.timeline-shell,.family-tree,.editor-panel,.preview-panel,.admin-login,.admin-articles-header,.admin-articles-toolbar,.admin-bulk-toolbar,.admin-article-editor,.timeline-shell,.timeline-detail-panel,.timeline-admin-panel{padding:16px}.topbar,.home-hero,.admin-articles-header,.map-selection-summary{flex-direction:column;align-items:stretch}.home-hero{padding:22px}.stat-strip,.field-grid,.city-affiliation-field,.infobox-row-editor,.character-sheet dl,.timeline-facts{grid-template-columns:1fr}.wiki-article-header,.wiki-article-layout,.wiki-article-footer{padding-inline:16px}.wiki-infobox-list div,.wiki-metadata-list div{grid-template-columns:1fr;gap:4px}.wiki-article-header h1{font-size:2.15rem}.wiki-summary{margin-inline:16px}.nav-list,.character-card-grid{grid-template-columns:1fr}.character-rpg-card{grid-template-columns:64px minmax(0,1fr);min-height:104px}.character-portrait{width:64px;height:64px}.osd-map-frame{height:460px}.full-map .osd-map-frame{min-height:500px}.map-controls{top:10px;right:10px}.family-editor{grid-template-columns:1fr}.search-popover{position:fixed;top:84px;left:12px;right:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
