/* Herstasia shared UI contract v3.0.3.
   Functional/structural UI belongs here. Themes provide presentation variables and
   compact diff CSS, never their own navigation or interaction JavaScript. */
:root{
  --hst-surface:var(--white,#fffdf9);
  --hst-surface-soft:color-mix(in srgb,var(--hst-surface) 88%,var(--paper,#f5f0e7));
  --hst-text:var(--ink,#28231d);
  --hst-muted:var(--muted,#756d63);
  --hst-line:var(--line,#d9cfc2);
  --hst-accent:var(--accent,#7a2f3d);
  --hst-accent-strong:var(--accent-dark,#5b202c);
  --hst-shadow:0 22px 70px rgba(24,20,16,.18);
  --hst-radius:18px;
  --hst-admin-width:min(390px,calc(100vw - 2.25rem));
}
.site-header{overflow:visible}
.brand{display:inline-flex;align-items:center;gap:.62rem;color:var(--hst-text)}
.brand img{width:42px;height:42px;object-fit:contain;display:block}
.brand-wordmark{line-height:1}
.site-nav{align-items:center}
.site-nav>a,.site-nav>.nav-group>a{padding:.55rem .1rem;border-bottom:2px solid transparent;transition:border-color .16s ease,color .16s ease}
.site-nav>a:hover,.site-nav>a:focus-visible,.site-nav>.nav-group>a:hover,.site-nav>.nav-group>a:focus-visible{border-color:var(--hst-accent);outline:none}
.site-nav .nav-group{position:relative;display:flex;align-items:center;gap:.12rem}
.site-nav .nav-group::after{content:"";position:absolute;z-index:139;left:-.45rem;right:-.45rem;top:100%;height:1rem;pointer-events:auto}
.site-nav .nav-submenu-toggle{width:34px;height:34px;border-radius:999px;transition:background .16s ease,transform .16s ease}
.site-nav .nav-group.is-open .nav-submenu-toggle,.site-nav .nav-submenu-toggle:hover{background:color-mix(in srgb,var(--hst-accent) 11%,transparent)}
.site-nav .nav-group.is-open .nav-submenu-toggle{transform:rotate(180deg)}
.site-nav .nav-submenu{display:none;position:absolute;top:calc(100% + .8rem);left:50%;transform:translateX(-42%);z-index:140;min-width:320px;padding:.7rem;background:color-mix(in srgb,var(--hst-surface) 96%,transparent);border:1px solid color-mix(in srgb,var(--hst-line) 82%,transparent);border-radius:20px;box-shadow:var(--hst-shadow);backdrop-filter:blur(18px)}
.site-nav .nav-submenu::before{content:"";position:absolute;top:-7px;left:43%;width:12px;height:12px;background:var(--hst-surface);border-left:1px solid var(--hst-line);border-top:1px solid var(--hst-line);transform:rotate(45deg)}
.site-nav .nav-group:hover .nav-submenu,.site-nav .nav-group:focus-within .nav-submenu,.site-nav .nav-group.is-open .nav-submenu{display:grid;gap:.35rem}
.site-nav .nav-submenu .universe-menu-head{padding:.55rem .7rem .65rem;border-bottom:1px solid var(--hst-line);margin-bottom:.15rem}
.site-nav .nav-submenu .universe-menu-head strong{display:block;font:700 .78rem/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.11em;color:var(--hst-accent)}
.site-nav .nav-submenu .universe-menu-head small{display:block;margin-top:.25rem;color:var(--hst-muted);font:500 .76rem/1.35 system-ui,sans-serif}
.site-nav .nav-submenu>a{display:grid;grid-template-columns:34px 1fr;gap:.7rem;align-items:center;padding:.7rem;border-radius:13px;color:var(--hst-text);text-decoration:none;border:0!important;transition:background .15s ease,transform .15s ease}
.site-nav .nav-submenu>a:hover,.site-nav .nav-submenu>a:focus-visible{background:color-mix(in srgb,var(--hst-accent) 9%,var(--hst-surface));transform:translateX(2px);outline:none}
.site-nav .nav-submenu .universe-menu-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--hst-accent) 12%,var(--hst-surface));color:var(--hst-accent);font:700 1rem system-ui,sans-serif}
.site-nav .nav-submenu .universe-menu-copy{display:grid;gap:.05rem}
.site-nav .nav-submenu .universe-menu-copy strong{font:700 .9rem/1.2 system-ui,sans-serif}
.site-nav .nav-submenu .universe-menu-copy small{font:500 .73rem/1.3 system-ui,sans-serif;color:var(--hst-muted)}
.herstasia-divider{width:min(1040px,calc(100% - 2rem));height:62px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:.88}
.herstasia-divider img{display:block;width:min(100%,1200px);height:auto;max-height:62px;object-fit:contain}

/* Redaktørens kontor: persistent side drawer. */
.editor-office-shell{--drawer-shift:var(--hst-admin-width);position:relative;z-index:9000}
.editor-office-tab{position:fixed;right:0;top:48%;z-index:9003;writing-mode:vertical-rl;transform:translateY(-50%);border:1px solid color-mix(in srgb,var(--hst-line) 70%,transparent);border-right:0;border-radius:12px 0 0 12px;background:var(--hst-accent);color:#fff;padding:1.2rem .672rem;box-shadow:0 10px 30px rgba(0,0,0,.15);font:750 .9rem/1 system-ui,sans-serif;letter-spacing:.035em;cursor:pointer;transition:opacity .16s ease,transform .18s ease}
.editor-office-shell.is-open .editor-office-tab{opacity:0;pointer-events:none}
.editor-office-drawer{position:fixed;inset:0 0 0 auto;z-index:9004;width:var(--hst-admin-width);height:100dvh;background:color-mix(in srgb,var(--hst-surface) 98%,transparent);border-left:1px solid var(--hst-line);box-shadow:var(--hst-shadow);transform:translateX(102%);transition:transform .22s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;backdrop-filter:blur(20px)}
.editor-office-shell.is-open .editor-office-drawer{transform:translateX(0)}
.editor-office-backdrop{position:fixed;inset:0;z-index:9002;background:rgba(20,16,12,.28);opacity:0;pointer-events:none;transition:opacity .2s ease}
.editor-office-shell.is-open .editor-office-backdrop{opacity:1;pointer-events:auto}
.editor-office-head{display:grid;grid-template-columns:44px 1fr auto;gap:.75rem;align-items:center;padding:1rem 1rem .8rem;border-bottom:1px solid var(--hst-line)}
.editor-office-head img{width:44px;height:44px;object-fit:contain}
.editor-office-head-copy{min-width:0;display:grid}
.editor-office-head-copy small{font:700 .67rem/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--hst-accent)}
.editor-office-head-copy strong{font-size:1.06rem;line-height:1.2}
.editor-office-close{border:0;background:transparent;color:var(--hst-text);width:38px;height:38px;border-radius:999px;font-size:1.45rem;cursor:pointer}
.editor-office-close:hover,.editor-office-close:focus-visible{background:color-mix(in srgb,var(--hst-accent) 9%,transparent);outline:2px solid color-mix(in srgb,var(--hst-accent) 45%,transparent)}
.editor-office-scroll{overflow-y:auto;overscroll-behavior:contain;padding:.7rem .65rem 1.5rem;scrollbar-gutter:stable}
.editor-office-home,.editor-office-child{display:flex;align-items:center;gap:.55rem;width:100%;padding:.63rem .7rem;border-radius:10px;color:var(--hst-text);text-decoration:none;font:650 .82rem/1.25 system-ui,sans-serif}
.editor-office-home{margin-bottom:.45rem;background:color-mix(in srgb,var(--hst-accent) 8%,transparent)}
.editor-office-home:hover,.editor-office-child:hover,.editor-office-home:focus-visible,.editor-office-child:focus-visible{background:color-mix(in srgb,var(--hst-accent) 11%,var(--hst-surface));outline:none}
.editor-office-home[aria-current="page"],.editor-office-child[aria-current="page"]{background:var(--hst-accent);color:#fff}
.editor-office-group{border-top:1px solid color-mix(in srgb,var(--hst-line) 72%,transparent);padding:.35rem 0}
.editor-office-row{display:grid;grid-template-columns:1fr 34px;gap:.2rem;align-items:center}
.editor-office-toggle{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;border:0;background:transparent;color:var(--hst-text);padding:.64rem .7rem;border-radius:10px;font:750 .82rem/1.2 system-ui,sans-serif;text-align:left;cursor:pointer}
.editor-office-toggle:hover,.editor-office-toggle:focus-visible{background:color-mix(in srgb,var(--hst-accent) 8%,transparent);outline:none}
.editor-office-chevron{font-size:.85rem;transition:transform .16s ease;color:var(--hst-muted)}
.editor-office-group.is-expanded>.editor-office-row .editor-office-chevron{transform:rotate(180deg)}
.editor-office-parent-link{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--hst-muted);text-decoration:none;font:800 .92rem/1 system-ui,sans-serif}
.editor-office-parent-link:hover,.editor-office-parent-link:focus-visible{background:color-mix(in srgb,var(--hst-accent) 9%,transparent);color:var(--hst-accent);outline:none}
.editor-office-children{display:grid;gap:.12rem;padding:0 .25rem .35rem .55rem}
.editor-office-children[hidden]{display:none}
.editor-office-child{padding-left:1rem;font-weight:600;color:color-mix(in srgb,var(--hst-text) 91%,var(--hst-muted))}
.editor-office-child::before{content:"";width:5px;height:5px;border-radius:50%;background:color-mix(in srgb,var(--hst-accent) 58%,var(--hst-line));flex:0 0 auto}
.editor-office-nested{margin-left:.35rem;border-left:1px solid color-mix(in srgb,var(--hst-line) 72%,transparent)}
.editor-office-nested>.editor-office-row{grid-template-columns:1fr 32px}
.editor-office-nested .editor-office-toggle{font-size:.77rem;padding:.55rem .65rem}
.editor-office-dev-badge{margin-left:auto;border:1px solid color-mix(in srgb,var(--hst-accent) 32%,transparent);border-radius:999px;padding:.12rem .38rem;font:750 .58rem/1 system-ui,sans-serif;color:var(--hst-accent)}
.editor-office-dev-form{margin:0;padding:0;background:transparent;border:0}
.editor-office-inline-toggle{display:flex;align-items:center;justify-content:space-between;gap:.65rem;width:100%;border:0;background:transparent;color:var(--hst-text);padding:.63rem 1rem;border-radius:10px;font:650 .82rem/1.25 system-ui,sans-serif;text-align:left;cursor:pointer}
.editor-office-inline-toggle:hover,.editor-office-inline-toggle:focus-visible{background:color-mix(in srgb,var(--hst-accent) 11%,var(--hst-surface));outline:none}
.editor-office-inline-toggle b{font:750 .67rem/1 system-ui,sans-serif;color:var(--hst-accent);text-transform:uppercase;letter-spacing:.05em}
body.editor-office-open{overflow:hidden}

@media(max-width:760px){.site-nav .nav-submenu{display:none!important}.editor-office-drawer{width:min(94vw,390px)}.editor-office-tab{top:auto;bottom:1rem;writing-mode:horizontal-tb;transform:none;border-radius:999px 0 0 999px;padding:.84rem 1.02rem;font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.editor-office-drawer,.editor-office-backdrop,.editor-office-tab,.editor-office-chevron,.site-nav .nav-submenu>a,.site-nav .nav-submenu-toggle{transition:none!important}}


/* v3.0.4: cleaner reading list, legal footer and recovered late-v2 notice centre. */
.footer-legal{text-align:right;align-self:flex-end}
.story-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.story-row{display:grid!important;grid-template-columns:auto 1fr auto;grid-template-areas:"icon seq facts" "icon copy copy" "icon actions actions";gap:.65rem 1rem;padding:20px!important;align-content:start;border-radius:16px}
.story-row .story-icon{grid-area:icon;align-self:start}.story-row .story-seq{grid-area:seq}.story-row .story-copy{grid-area:copy;min-width:0}.story-row .story-facts{grid-area:facts;justify-self:end}.story-row .story-actions{grid-area:actions;align-self:end;display:flex;gap:.5rem;flex-wrap:wrap}
.story-people{display:flex!important;gap:.35rem;flex-wrap:wrap;margin:.55rem 0 0!important;color:inherit!important;font-size:inherit!important}
.story-people-label{font:700 .68rem/1.7 system-ui,sans-serif;color:var(--hst-muted);text-transform:uppercase;letter-spacing:.055em;margin-right:.1rem}
.story-person-chip{display:inline-flex;align-items:center;min-height:24px;padding:.15rem .52rem;border:1px solid color-mix(in srgb,var(--hst-line) 84%,transparent);border-radius:999px;background:color-mix(in srgb,var(--hst-accent) 6%,var(--hst-surface));font:650 .72rem/1.25 system-ui,sans-serif}
.notice-board,.notice-board-admin{max-width:980px;margin-inline:auto}.notice-board-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.notice-card{border:1px solid var(--hst-line);border-radius:16px;padding:1rem;margin:1rem 0;background:var(--hst-surface)}.notice-card.is-unread{border-color:color-mix(in srgb,var(--hst-accent) 45%,var(--hst-line));box-shadow:0 8px 22px rgba(0,0,0,.05)}.notice-card header{display:flex;justify-content:space-between;gap:1rem}.unread-dot{width:9px;height:9px;border-radius:999px;background:var(--hst-accent)}.poll-options{display:grid;gap:.45rem;margin:1rem 0}.notice-composer fieldset{border:1px solid var(--hst-line);border-radius:12px;padding:1rem}
@media(max-width:899px){.story-list{grid-template-columns:1fr;gap:14px}.story-row{padding:16px!important}}
@media(max-width:620px){.story-row{grid-template-columns:auto 1fr;grid-template-areas:"icon seq" "copy copy" "facts facts" "actions actions"}.story-row .story-facts{justify-self:start}.footer-legal{text-align:left}}

.editor-office-tools{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:center;margin-bottom:.45rem}.editor-office-tools .editor-office-home{margin-bottom:0}.editor-office-collapse-all{border:1px solid var(--hst-line);background:transparent;color:var(--hst-muted);border-radius:9px;padding:.55rem .62rem;font:700 .7rem/1 system-ui,sans-serif;cursor:pointer;white-space:nowrap}.editor-office-collapse-all:hover,.editor-office-collapse-all:focus-visible{color:var(--hst-accent);border-color:var(--hst-accent);outline:none}.admin-top-menu{display:flex;gap:.2rem;flex-wrap:wrap;align-items:center;padding:.42rem clamp(.8rem,3vw,2rem);border-bottom:1px solid var(--hst-line);background:color-mix(in srgb,var(--hst-surface) 97%,var(--hst-accent));position:relative;z-index:40}.admin-top-menu a{color:var(--hst-text);text-decoration:none;padding:.45rem .62rem;border-radius:8px;font:700 .77rem/1.2 system-ui,sans-serif}.admin-top-menu a:hover,.admin-top-menu a:focus-visible{background:color-mix(in srgb,var(--hst-accent) 10%,transparent);color:var(--hst-accent);outline:none}.admin-office-mode .site-header .site-nav{display:none}@media(max-width:760px){.admin-top-menu{display:none}.admin-office-mode .site-header .site-nav{display:none}}

/* 3.0.6 RC2: sticky multilevel admin-topmenu. Den almindelige site-top bevares i Redaktørens kontor. */
.admin-office-mode .site-header .site-nav{display:flex}
.admin-top-menu{position:sticky;top:0;z-index:8600;padding:.34rem clamp(.7rem,2vw,1.5rem);background:color-mix(in srgb,var(--hst-surface) 98%,var(--hst-accent));box-shadow:0 7px 18px rgba(31,25,20,.06)}
.admin-top-menu-inner{width:min(100%,1180px);margin-inline:auto;display:flex;justify-content:center;align-items:stretch;gap:.15rem;flex-wrap:wrap}
.admin-top-home,.admin-top-link-row>a,.admin-top-link-row>span,.admin-top-leaf{display:flex;align-items:center;min-height:38px;color:var(--hst-text);text-decoration:none;padding:.45rem .58rem;border-radius:8px;font:700 .77rem/1.2 system-ui,sans-serif;white-space:nowrap}
.admin-top-home:hover,.admin-top-home:focus-visible,.admin-top-link-row>a:hover,.admin-top-link-row>a:focus-visible,.admin-top-leaf:hover,.admin-top-leaf:focus-visible{background:color-mix(in srgb,var(--hst-accent) 10%,transparent);color:var(--hst-accent);outline:none}
.admin-top-home.is-current,.admin-top-item.is-current>.admin-top-link-row>a,.admin-top-leaf.is-current{color:var(--hst-accent)}
.admin-top-item,.admin-top-subitem{position:relative}
.admin-top-link-row{display:flex;align-items:center}
.admin-top-link-row>button{display:grid;place-items:center;width:28px;height:30px;margin-left:-.25rem;border:0;border-radius:7px;background:transparent;color:var(--hst-muted);cursor:pointer;font:700 .7rem/1 system-ui,sans-serif;transition:transform .14s ease,background .14s ease}
.admin-top-link-row>button:hover,.admin-top-link-row>button:focus-visible{background:color-mix(in srgb,var(--hst-accent) 10%,transparent);color:var(--hst-accent);outline:none}
.admin-top-item.is-open>.admin-top-link-row>button,.admin-top-subitem.is-open>.admin-top-link-row>button{transform:rotate(180deg)}
.admin-top-submenu{position:absolute;display:none;min-width:220px;padding:.42rem;border:1px solid var(--hst-line);border-radius:12px;background:var(--hst-surface);box-shadow:0 16px 36px rgba(20,16,12,.16)}
.admin-top-level-1{left:0;top:calc(100% + .1rem)}
.admin-top-level-2,.admin-top-level-3{left:calc(100% - .18rem);top:-.42rem}
.admin-top-item.is-open>.admin-top-submenu,.admin-top-item:hover>.admin-top-submenu,.admin-top-item:focus-within>.admin-top-submenu,.admin-top-subitem.is-open>.admin-top-submenu,.admin-top-subitem:hover>.admin-top-submenu,.admin-top-subitem:focus-within>.admin-top-submenu{display:block}
.admin-top-submenu .admin-top-link-row,.admin-top-submenu .admin-top-leaf{width:100%}
.admin-top-submenu .admin-top-link-row>a,.admin-top-submenu .admin-top-link-row>span,.admin-top-submenu .admin-top-leaf{flex:1;min-width:0;white-space:normal}
@media(max-width:900px){.admin-top-menu-inner{justify-content:flex-start}.admin-top-menu{overflow:visible}.admin-office-mode .site-header .site-nav{display:flex}}
@media(max-width:760px){.admin-top-menu{display:none}.admin-office-mode .site-header .site-nav{display:none}}


/* 3.0.8: super-sticky adminnavigation, sikker hover-zone og topnotifikationer. */
.site-header{z-index:9000}
.site-nav .nav-submenu{z-index:260}
.admin-top-menu{position:sticky!important;top:var(--hst-site-header-height,72px)!important;z-index:8500!important;background:color-mix(in srgb,var(--hst-surface) 90%,var(--hst-accent) 10%)!important;border-bottom:1px solid color-mix(in srgb,var(--hst-line) 72%,var(--hst-accent));box-shadow:0 8px 20px rgba(31,25,20,.10);backdrop-filter:blur(18px)}
.admin-top-home,.admin-top-link-row>a,.admin-top-link-row>span,.admin-top-leaf{border-radius:10px}
.admin-top-home:hover,.admin-top-home:focus-visible,.admin-top-link-row>a:hover,.admin-top-link-row>a:focus-visible,.admin-top-leaf:hover,.admin-top-leaf:focus-visible{background:color-mix(in srgb,var(--hst-accent) 14%,var(--hst-surface));}
.admin-top-item,.admin-top-subitem{isolation:isolate}
.admin-top-item::after{content:"";position:absolute;z-index:5;left:-.45rem;right:-.45rem;top:100%;height:.72rem;pointer-events:auto}
.admin-top-submenu{z-index:6;background:color-mix(in srgb,var(--hst-surface) 91%,var(--hst-accent) 9%);border-color:color-mix(in srgb,var(--hst-line) 72%,var(--hst-accent));box-shadow:0 16px 36px rgba(20,16,12,.18);backdrop-filter:blur(18px)}
.admin-top-level-1{top:calc(100% + .42rem)}
.admin-top-level-2,.admin-top-level-3{left:calc(100% - .12rem)}
.admin-top-submenu .admin-top-subitem::after{content:"";position:absolute;z-index:5;left:100%;right:auto;top:-.35rem;width:.8rem;height:calc(100% + .7rem);pointer-events:auto}

/* 3.1.21 · lille hover-safezone på alle admin-undermenuer. */
.admin-top-submenu{padding:.58rem .54rem}
.admin-top-level-1{top:calc(100% + .28rem)}
.admin-top-level-2,.admin-top-level-3{left:calc(100% - .2rem);top:-.7rem;padding-top:.82rem}
.admin-top-subitem::after{content:"";position:absolute;z-index:5;left:100%;right:auto;top:-.5rem;width:.95rem;height:calc(100% + 1rem);pointer-events:auto}

/* 3.2.0 · direkte Forkontor-genvej på Redaktørens kontor-fanen. */
.editor-office-tab-stack{position:fixed;right:0;top:38%;z-index:8900;display:flex;flex-direction:column;align-items:stretch}.editor-office-tab-stack .editor-office-tab{position:static!important}.editor-office-tab-office{display:block;padding:.55rem .35rem;border:1px solid var(--hst-line);border-top:0;border-radius:0 0 0 10px;background:var(--hst-surface);color:var(--hst-text);text-decoration:none;font:700 .68rem/1.15 system-ui,sans-serif;text-align:center;white-space:nowrap}.editor-office-tab-office:hover,.editor-office-tab-office:focus-visible{color:var(--hst-accent);outline:2px solid color-mix(in srgb,var(--hst-accent) 45%,transparent);outline-offset:-2px}

/* 3.2.0 · Backstage, bogtekster og visuelle moduler. */
.backstage-layout{display:grid;grid-template-columns:minmax(13rem,18rem) minmax(0,1fr);gap:1rem;align-items:start}.backstage-entity-list{position:sticky;top:calc(var(--hst-site-header-height,72px) + 4.5rem);display:grid;gap:.3rem;max-height:75vh;overflow:auto}.backstage-entity-list>a{padding:.55rem .65rem;border-radius:8px;text-decoration:none;color:inherit}.backstage-entity-list>a[aria-current=page]{background:color-mix(in srgb,var(--hst-accent) 12%,var(--hst-surface));font-weight:800}.backstage-workspace{min-width:0}.backstage-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.backstage-image-card{border:1px solid var(--hst-line);border-radius:12px;padding:.8rem;background:var(--hst-surface)}.backstage-image-card>img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:8px}.backstage-item{border-left:4px solid var(--hst-line);padding:.65rem .8rem;margin:.55rem 0;background:var(--hst-surface)}.backstage-item.open{border-left-color:var(--hst-accent)}.book-text-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.book-text-card{border:1px solid var(--hst-line);border-radius:12px;padding:1rem;background:var(--hst-surface)}.book-text-card header{display:flex;justify-content:space-between;gap:1rem}.office-inline-stats{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.7rem 0}.office-inline-stats span{display:grid;padding:.6rem;border:1px solid var(--hst-line);border-radius:9px}.office-inline-stats strong{font-size:1.45rem}.office-inline-stats small{color:var(--hst-muted)}.universe-profile-card{display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:1rem;align-items:center}.universe-profile-card img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px}@media(max-width:760px){.backstage-layout{grid-template-columns:1fr}.backstage-entity-list{position:static;max-height:none}.universe-profile-card{grid-template-columns:1fr}}

/* 3.2.0 · ensartede profilkort i det offentlige Univers. */
.universe-entity-stage,.universe-profile-page{width:min(1180px,calc(100% - 2rem));margin:0 auto}.universe-entity-heading{margin:1.5rem 0}.universe-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.universe-card{overflow:hidden;border:1px solid var(--hst-line);border-radius:14px;background:var(--hst-surface);box-shadow:0 8px 24px rgba(0,0,0,.06)}.universe-card-image{display:block;aspect-ratio:4/3;overflow:hidden}.universe-card-image img{width:100%;height:100%;object-fit:cover}.universe-card-copy{padding:1rem}.universe-card-copy>small{text-transform:uppercase;letter-spacing:.08em;color:var(--hst-muted);font-weight:800;font-size:.68rem}.universe-card-copy h2{margin:.25rem 0 .55rem}.universe-card-copy h2 a{color:inherit;text-decoration:none}.universe-profile-hero{display:grid;grid-template-columns:minmax(220px,330px) minmax(0,1fr);gap:2rem;align-items:center;margin:1.5rem 0 2rem}.universe-profile-hero>img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:16px}.universe-facts,.universe-profile-gallery{margin:2rem 0}.universe-facts dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem}.universe-facts dl>div{border:1px solid var(--hst-line);border-radius:10px;padding:.8rem}.universe-facts dt{font-weight:800;font-size:.72rem;text-transform:uppercase;color:var(--hst-muted)}.universe-facts dd{margin:.25rem 0 0}.entity-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem}.entity-gallery figure{margin:0}.entity-gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px}@media(max-width:700px){.universe-profile-hero{grid-template-columns:1fr}.universe-profile-hero>img{max-width:330px}}

/* 3.2.0 · permanente galleri-referencer fra DOCX. */
.story-gallery-unavailable{margin:1.2rem 0;padding:.8rem 1rem;border:1px dashed var(--hst-line);border-radius:10px;color:var(--hst-muted);font-size:.9rem}.story-gallery-reference img{max-width:100%;height:auto;display:block}.story-gallery-reference figcaption{margin-top:.45rem;color:var(--hst-muted);font-size:.9rem}


/* 3.2.1 · Redaktørens kontor: Forkontor-pilen er nederste segment af samme brune fane. */
.editor-office-tab-stack{position:fixed;right:0;top:38%;z-index:8900;display:flex;flex-direction:column;align-items:stretch;border-radius:12px 0 0 12px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.15)}
.editor-office-tab-stack .editor-office-tab{position:static!important;transform:none!important;border-radius:0!important;box-shadow:none!important;border-bottom:0!important}
.editor-office-tab-return{display:grid;place-items:center;min-height:40px;border:1px solid color-mix(in srgb,var(--hst-line) 70%,transparent);border-right:0;border-top:1px solid color-mix(in srgb,#fff 25%,transparent);background:var(--hst-accent);color:#fff;text-decoration:none;font:850 1rem/1 system-ui,sans-serif}
.editor-office-tab-return:hover,.editor-office-tab-return:focus-visible{background:color-mix(in srgb,var(--hst-accent) 88%,#000);color:#fff;outline:2px solid rgba(255,255,255,.7);outline-offset:-3px}
.editor-office-tab-office{display:none!important}
.editor-office-shell.is-open .editor-office-tab-stack{opacity:0;pointer-events:none}
@media(max-width:760px){.editor-office-tab-stack{top:auto;bottom:1rem;border-radius:999px 0 0 999px;flex-direction:row}.editor-office-tab-stack .editor-office-tab{writing-mode:horizontal-tb!important;padding:.84rem 1.02rem!important}.editor-office-tab-return{min-width:44px;min-height:auto;border-top:1px solid color-mix(in srgb,var(--hst-line) 70%,transparent);border-left:1px solid rgba(255,255,255,.22)}}

/* 3.2.1 · Backstage-kilder og handlinger. */
.backstage-tabs{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1rem}.backstage-tabs .button[aria-current=page]{background:var(--hst-accent);color:#fff;border-color:var(--hst-accent)}.backstage-reference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.65rem}.backstage-reference-field{border:1px solid var(--hst-line);border-radius:9px;padding:.7rem}.backstage-reference-field dt{font:800 .7rem/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--hst-muted)}.backstage-reference-field dd{margin:.25rem 0 0;white-space:pre-wrap}.backstage-source-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}
.story-html-preview{max-width:900px}.story-html-source textarea{width:100%;font:500 .78rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;overflow:auto}

/* 3.2.6 · faste højrefaner bruger reserverede vertikale zoner, også på smalle visninger. */
.editor-office-tab-stack{top:auto!important;bottom:var(--hst-editor-office-bottom,8.2rem)!important;right:0!important;flex-direction:column!important;border-radius:12px 0 0 12px!important;max-height:calc(100vh - 14rem);overflow:visible!important}
.editor-office-tab-stack .editor-office-tab{writing-mode:vertical-rl!important;transform:rotate(180deg)!important;padding:1.25rem .72rem!important;font-size:.94rem!important}
.editor-office-tab-return{min-width:auto!important;min-height:42px!important}
@media(max-width:760px){.editor-office-tab-stack{top:auto!important;right:0!important;bottom:var(--hst-editor-office-bottom,7.6rem)!important;flex-direction:column!important;border-radius:12px 0 0 12px!important}.editor-office-tab-stack .editor-office-tab{writing-mode:vertical-rl!important;transform:rotate(180deg)!important;padding:1.05rem .64rem!important;font-size:.9rem!important}.editor-office-tab-return{min-width:auto!important;min-height:40px!important}}

/* 3.2.6 RC3: valgfri fuld bredde i Admin på store skærme. */
.admin-office-mode.admin-full-width .site-main{width:calc(100% - 2rem);max-width:none}
.admin-width-toggle{margin-left:auto;border:1px solid var(--hst-line);background:var(--hst-surface);color:var(--hst-text);border-radius:999px;padding:.42rem .72rem;font:700 .72rem/1.2 system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.admin-width-toggle[aria-pressed="true"]{border-color:var(--hst-accent);color:var(--hst-accent);background:color-mix(in srgb,var(--hst-accent) 8%,var(--hst-surface))}
@media(max-width:900px){.admin-width-toggle{display:none}.admin-office-mode.admin-full-width .site-main{width:min(100% - 1.2rem,1240px)}}


/* 3.2.8 · global Admin-bredde og fælles højrekontrol-kontrakt. */
.admin-office-mode.admin-full-width .site-main{width:calc(100vw - 2rem)!important;max-width:none!important;margin-inline:auto!important}
.admin-office-mode.admin-full-width .notice-board,.admin-office-mode.admin-full-width .notice-board-admin{max-width:none}
.editor-office-tab-stack{bottom:var(--hst-editor-office-bottom,8.2rem)!important}
.editor-office-tab-stack .editor-office-tab{min-width:46px}
.editor-office-tab-return{background:var(--hst-accent)!important;color:#fff!important}
.admin-right-controls-compact .editor-office-tab-stack .editor-office-tab{padding:.82rem .52rem!important;font-size:.78rem!important}
.admin-right-controls-compact .editor-office-tab-return{min-height:34px!important}
@media(max-width:900px){.admin-office-mode.admin-full-width .site-main{width:min(calc(100% - 1rem),1240px)!important}}

/* 3.2.10 · Redaktørens kontor er én sammenhængende, afrundet kontrol. */
.editor-office-tab-stack{top:auto!important;right:0!important;bottom:var(--hst-editor-office-bottom,4.5rem)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border:1px solid color-mix(in srgb,var(--hst-line) 70%,transparent)!important;border-right:0!important;border-radius:14px 0 0 14px!important;background:var(--hst-accent)!important;box-shadow:0 10px 30px rgba(0,0,0,.16)!important;max-height:none!important}
.editor-office-tab-stack .editor-office-tab{position:static!important;right:auto!important;top:auto!important;transform:rotate(180deg)!important;writing-mode:vertical-rl!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:1.05rem .72rem!important;min-width:48px!important;color:#fff!important}
.editor-office-tab-return{display:grid!important;place-items:center!important;width:100%!important;min-width:48px!important;min-height:44px!important;border:0!important;border-top:1px solid rgba(255,255,255,.34)!important;border-radius:0!important;background:color-mix(in srgb,var(--hst-accent) 88%,#000)!important;color:#fff!important;text-decoration:none!important;font:900 1.15rem/1 system-ui,sans-serif!important;box-shadow:none!important}
.editor-office-tab-return:hover,.editor-office-tab-return:focus-visible{background:color-mix(in srgb,var(--hst-accent) 76%,#000)!important;outline:2px solid rgba(255,255,255,.72)!important;outline-offset:-3px!important}
.editor-office-shell.is-open .editor-office-tab-stack{opacity:0;pointer-events:none}
@media(max-width:760px){.editor-office-tab-stack{border-radius:14px 0 0 14px!important}.editor-office-tab-stack .editor-office-tab{min-width:46px!important;padding:.9rem .65rem!important}.editor-office-tab-return{min-width:46px!important;min-height:42px!important}}


/* 3.2.47 · tre adminbredder: normal, +50 % og fuld bredde. */
.admin-width-toggle{display:flex;align-items:center;gap:.2rem;margin-left:auto;padding:.2rem;border:1px solid var(--hst-line);border-radius:999px;background:var(--hst-surface)}
.admin-width-toggle>button{border:0;background:transparent;color:var(--hst-text);border-radius:999px;padding:.34rem .62rem;font:700 .7rem/1.2 system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.admin-width-toggle>button[aria-pressed="true"]{background:color-mix(in srgb,var(--hst-accent) 12%,var(--hst-surface));color:var(--hst-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--hst-accent) 45%,var(--hst-line))}
.admin-office-mode.admin-wide-width .site-main{width:min(1860px,calc(100vw - 2rem))!important;max-width:1860px!important;margin-inline:auto!important}
.admin-office-mode.admin-wide-width .notice-board,.admin-office-mode.admin-wide-width .notice-board-admin{max-width:none}
@media(max-width:900px){.admin-width-toggle{display:none}.admin-office-mode.admin-wide-width .site-main{width:min(calc(100% - 1rem),1240px)!important;max-width:1240px!important}}

/* 3.3.0 · adaptive Admin-widths, Baglokalet and six-pillar backend. */
.admin-office-mode.admin-full-width .site-main{width:min(2200px,calc(100vw - 2rem))!important;max-width:2200px!important;margin-inline:auto!important}.admin-office-mode.admin-wide-width .site-main{width:min(1860px,calc(100vw - 2rem))!important;max-width:1860px!important;margin-inline:auto!important}
.admin-width-toggle>button[hidden]{display:none!important}
.editor-office-owner{display:block;margin-top:.12rem;color:color-mix(in srgb,var(--hst-text) 55%,transparent);font:600 .64rem/1.15 system-ui,sans-serif;letter-spacing:.01em}.editor-office-group.is-current>.editor-office-row .editor-office-owner{color:color-mix(in srgb,var(--hst-accent) 78%,var(--hst-text))}
.admin-top-menu-inner{gap:clamp(.15rem,.7vw,.55rem)}.admin-top-item>.admin-top-link-row>span,.admin-top-item>.admin-top-link-row>a{white-space:nowrap}

/* 3.3.1 · Admin width is scoped to the admin shell only. */
body:not(.admin-office-mode){--hst-admin-width-scope:0}
body:not(.admin-office-mode).admin-wide-width,body:not(.admin-office-mode).admin-full-width{width:auto!important;max-width:none!important}

/* 3.4.72 · højrekontrol: Baglokalet-toggle og Forkontor-link deler samme geometri og typografi på desktop og mobil. */
.editor-office-tab-stack .editor-office-tab,
.editor-office-tab-stack .editor-office-tab-return{box-sizing:border-box!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;padding:0!important;display:grid!important;place-items:center!important;border:0!important;background:transparent!important;color:#fff!important;font:900 1.15rem/1 system-ui,sans-serif!important}
.editor-office-tab-stack .editor-office-tab{writing-mode:horizontal-tb!important;transform:none!important}
.editor-office-tab-stack .editor-office-tab-symbol{font:inherit!important;line-height:1!important}
.editor-office-tab-stack .editor-office-tab-return{border-top:1px solid rgba(255,255,255,.34)!important}
.editor-office-tab-stack .editor-office-tab:hover,
.editor-office-tab-stack .editor-office-tab:focus-visible,
.editor-office-tab-stack .editor-office-tab-return:hover,
.editor-office-tab-stack .editor-office-tab-return:focus-visible{background:color-mix(in srgb,var(--hst-accent) 82%,#000)!important;outline:2px solid rgba(255,255,255,.72)!important;outline-offset:-3px!important}
