/* Shared navigation and reading ergonomics; existing artwork is preserved. */
[hidden]{display:none!important}
nav.unified-nav{display:flex;position:relative;z-index:20;grid-column:1/-1;align-items:center;justify-content:space-between;gap:16px;height:auto;min-height:72px;padding:12px clamp(16px,3vw,52px);background:#080d13f5;border-bottom:1px solid #c7d4d43b}
.unified-nav .home-link{flex:none;font:700 13px/1.3 Arial,sans-serif;letter-spacing:.06em;color:#d7e0de;padding:12px 0;min-height:44px}
.unified-nav .unified-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.unified-nav .unified-links a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 13px;border:1px solid #aabbc13d;background:#111923;color:#ced8db;font:700 12px/1.3 Arial,sans-serif;letter-spacing:.035em;text-transform:uppercase;white-space:normal;text-align:center}
.unified-nav .unified-links a[aria-current]{color:#fff2cf;border-color:#dcc592b3;background:#302d25;box-shadow:inset 0 -2px #dfc591}
.unified-nav a:focus-visible,.chapter-jump button:focus-visible,.back-to-top:focus-visible{outline:2px solid #f3dba6;outline-offset:3px}
.chapter-jump{position:sticky;top:8px;z-index:12;max-width:560px;margin:0 0 28px;background:#101922f5;border:1px solid #b4c6cd66;box-shadow:0 8px 22px #0009;color:#eaf0ee}
.chapter-jump summary{cursor:pointer;padding:15px 18px;font:700 14px/1.4 Arial,sans-serif;list-style:none;display:flex;justify-content:space-between}
.chapter-jump>div{display:grid;max-height:55svh;overflow:auto;border-top:1px solid #b4c6cd44;padding:6px}
.chapter-jump button{border:0;background:transparent;color:#e0e8e7;text-align:left;padding:12px;min-height:44px;font:400 14px/1.4 Arial,sans-serif;cursor:pointer}
.chapter-jump button:hover{background:#2a3843}
.chapter,.record,.abilities,.chronology,.continuity,.power-panel,.story-record,.screen-record{scroll-margin-top:80px}
.back-to-top{position:fixed;right:18px;bottom:18px;z-index:30;padding:13px 17px;min-height:44px;background:#101923f5;border:1px solid #bacbd57a;color:#eff4f3;font:700 13px Arial,sans-serif;cursor:pointer;box-shadow:0 5px 20px #0008}
.room .character-art img,.room .character-art.poster img,.room .character-art:not(.poster) img{object-fit:contain;object-position:center;transform:none;mask-image:none;filter:saturate(.92) brightness(.98) contrast(1.04)}
.room .character-art:after{background:linear-gradient(0deg,#080d1266,transparent 12%);pointer-events:none}
.room .character-art{padding:10px;max-width:100%;margin-right:0}
.room .dossier,.room-hero-copy,.entity-copy,.card-copy{min-width:0}
.room[data-character] .dossier h1,.dossier[data-cosmic] .room-hero h1{overflow-wrap:normal;word-break:normal;hyphens:auto;font-size:clamp(2rem,4.1vw,4.4rem);line-height:1.18}
.entity[data-cosmic] .entity-copy h3{font-size:clamp(1.25rem,1.7vw,1.9rem);overflow-wrap:normal;line-height:1.25}
.entity-grid .entity{content-visibility:auto;contain-intrinsic-size:auto 480px}
@media(max-width:760px){nav.unified-nav{flex-direction:column;align-items:stretch;gap:5px;padding:8px 14px}.unified-nav .home-link{min-height:32px;padding:7px 0}.unified-nav .unified-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.unified-nav .unified-links a{font-size:11px;padding:8px 5px;letter-spacing:0;min-height:42px}.room[data-character] .dossier h1,.dossier[data-cosmic] .room-hero h1{font-size:clamp(1.9rem,6.6vw,3.2rem)}.chapter-jump{top:6px;max-width:100%}.back-to-top{bottom:12px;right:12px}.room .character-art{padding:8px;min-height:300px;height:56svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.record-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 18px}
.share-record{min-height:44px;padding:10px 14px;border:1px solid #aabfc56e;color:#eef5ee;background:#15242d;font:700 13px/1.4 Arial,sans-serif;cursor:pointer}
.share-fallback{width:100%;min-width:0;max-width:100%;padding:10px;background:#071118;color:#e4eeec;border:1px solid #aabfc5;font-size:16px}
.continuity-badge{display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:#dccaa2;font:700 12px/1.5 Arial,sans-serif;letter-spacing:.06em;margin:0 0 14px;border-left:2px solid #bfa773;padding-left:10px}
.continuity-badge a{color:#c6dcdf;font-weight:400;letter-spacing:0;text-decoration:underline;text-underline-offset:3px}
.connected-files{margin:28px 0;padding:20px;border:1px solid #adc3c34d;background:#0a151dde;grid-column:1/-1;min-width:0}
.connected-files h3{font:700 18px/1.4 Arial,sans-serif!important;letter-spacing:.02em!important;color:#e7f0ed!important;margin:0 0 14px!important;text-transform:none!important}
.connected-files details{border-top:1px solid #a1b8bf38;padding:8px 0}
.connected-files summary{cursor:pointer;font:700 14px/1.5 Arial,sans-serif;padding:10px 0;color:#d9e3e2;min-height:44px}
.connected-files summary span{color:#a9bfc1;margin-left:8px}
.connected-files details>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:8px}
.connected-files a{display:block;padding:12px;min-height:44px;border:1px solid #aac5cb38;background:#14232c;color:#e3eeec;font:400 14px/1.5 Arial,sans-serif;overflow-wrap:anywhere}
.connected-files a:hover,.share-record:hover{border-color:#e5d2a5;background:#24343d}
.connected-files a:focus-visible,.share-record:focus-visible,.connected-files summary:focus-visible{outline:2px solid #f3dba6;outline-offset:3px}
.object[id]{scroll-margin-top:24px}.object>.record-tools{justify-content:flex-start;flex-direction:row}
@media(max-width:600px){.connected-files{padding:14px}.continuity-badge{font-size:12px}.file-body{padding:18px}.dialog-content{overflow-wrap:anywhere}.chapter-jump>div{max-height:45svh}.share-record{width:auto}.room-nav.unified-nav{width:100%}}
@media(max-width:700px){.map-controls .find-event-shortcut{position:absolute;right:0;bottom:54px;min-width:132px;min-height:44px}.detail .detail-copy,.detail .detail-lead{font-size:14px;line-height:1.6}.detail .connected-files{padding:12px}.detail .record-tools{margin:8px 0 14px}.connected-files a{padding:12px}.continuity-badge a{display:inline-block;min-height:32px;padding-top:6px}.back-to-top{bottom:calc(12px + env(safe-area-inset-bottom,0px))}}
.skip-content{position:fixed;top:8px;left:8px;z-index:1000;transform:translateY(-180%);padding:14px 20px;min-height:44px;background:#edf5ef;color:#081019;border:2px solid #dac38d;font:700 16px Arial,sans-serif;cursor:pointer}
.skip-content:focus{transform:none;outline:3px solid #fff;outline-offset:3px}
:where(a,button,input,summary,[tabindex]):focus-visible{outline:2px solid #ffe3a6;outline-offset:4px}
.home-caption{font-size:12px;color:#b8c8c7;font-weight:400}
.fan-notice{position:relative;z-index:1;padding:22px clamp(18px,4vw,65px);border-top:1px solid #aabcc433;background:#080e16;color:#bccccc;font:400 14px/1.65 Arial,sans-serif}
.fan-notice a{text-decoration:underline;text-underline-offset:3px;color:#e1d1b0;margin-left:8px}
@media(max-width:760px){.unified-nav .unified-links a{font-size:12px;overflow-wrap:anywhere}.entity[data-cosmic] .entity-copy h3,.room[data-character] .dossier h1,.dossier[data-cosmic] .room-hero h1{overflow-wrap:anywhere}.room .info-grid{min-width:0}.room .info-grid li{overflow-wrap:anywhere}}
@media(forced-colors:active){button,a,summary{forced-color-adjust:auto}.continuity-badge{color:CanvasText}.connected-files a,.share-record{color:LinkText;border-color:ButtonText}}

.unified-nav .unified-links{flex-wrap:wrap}.unified-nav .unified-links a{white-space:normal}

/* Reading controls wrap at large text sizes; chosen artwork remains unchanged. */
.unified-nav .unified-links a{font-size:.875rem;min-height:44px;min-width:0;overflow-wrap:anywhere}
.unified-nav .home-link{font-size:.875rem;white-space:normal;overflow-wrap:anywhere}
:where(.reference-links,.reading-links,.record-tools) a{min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere}
@media(max-width:760px){.unified-nav .unified-links{grid-template-columns:repeat(3,minmax(0,1fr))}.unified-nav .unified-links a{font-size:.875rem}}
@media(max-width:380px){.unified-nav .unified-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.detail .detail-copy,.detail .detail-lead{font-size:1rem}.continuity-badge a{min-height:44px}.back-to-top{max-width:calc(100vw - 24px);white-space:normal}}

/* Long labels, expanded chapters and dialog content stay within their layout. */
:where(.card-meta,.entity-meta,.results-label,.room-footer,.room-footer>div,.footer,footer,.file-links,.object>div,.detail-actions,.dialog-top,.viewer-head,.visual-lightbox-top,.visual-lightbox label){flex-wrap:wrap}
:where(.hub-head,.intro,.hero-copy,.dossier,.room-hero-copy,.card-copy,.entity-copy,.file-body,.dialog-content,.record-column,.event-text,.viewer-head h2,.visual-lightbox h2){min-width:0;overflow-wrap:anywhere}
:where(input,select,textarea){min-width:0;max-width:100%}
:where(.card,.entity,.file,.gallery-grid figure,.visual-figure,.record-column,.event-art-grid figure) img{max-width:100%}
:where(.dialog-top,.viewer-head,.visual-lightbox-top)>button{flex-shrink:0}
:where(.viewer-head,.visual-lightbox-top)>h2{flex:1 1 200px}
:where(.dialog-links,.profile-links,.file-links,.reading-links,.guide-jumps) a{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.chapter-jump,body .room .deep-file .chapter-jump{position:relative;top:auto}
:where(.record-tools,.visual-lightbox-tools){min-width:0}
@media(max-width:600px){.room .info-grid{grid-template-columns:minmax(0,1fr)}.room .info-grid ol li,.new-character-room .info-grid ol li{grid-template-columns:minmax(0,1fr);gap:6px}.gallery-tools label{max-width:100%;min-width:0;flex-wrap:wrap}.visual-lightbox label{max-width:100%;min-width:0}.visual-relation{grid-template-columns:56px minmax(0,1fr);gap:10px}.visual-relation img{width:56px}.stat-grid{grid-template-columns:minmax(0,1fr)}}

/* Cosmic Laws occupies the open header space beside Doom Drop. */
.unified-nav .nav-heading{display:flex;align-items:stretch;gap:6px;flex:none;min-width:0}
nav.unified-nav .nav-heading .home-link{align-self:stretch;min-width:0}
.unified-nav .laws-header-link{position:relative;display:flex;align-items:center;justify-content:center;min-height:50px;max-width:150px;padding:10px 14px;border:1px solid #b7a078;background:linear-gradient(125deg,#28203a,#201b24);color:#ead5aa;font:700 14px/1.3 Arial,sans-serif;text-align:center;text-transform:uppercase;letter-spacing:.035em;text-decoration:none}
.unified-nav .laws-header-link:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,#8b75bb,#d3b780,#c9a8db);pointer-events:none}
.unified-nav .laws-header-link:hover,.unified-nav .laws-header-link:focus-visible,.unified-nav .laws-header-link[aria-current]{color:#fff2cf;border-color:#dcc592b3;background:#302d25}
@media(max-width:760px){.unified-nav .nav-heading{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);width:100%;gap:5px}.unified-nav .laws-header-link{max-width:none;min-width:0;padding:8px 5px;font-size:14px;letter-spacing:0;overflow-wrap:normal}nav.unified-nav .nav-heading .home-link{max-width:none;white-space:normal}}
