.portal {grid-template-columns: var(--av-sidebar-w) minmax(0,1fr);}
.portal-side {width: var(--av-sidebar-w);}
.portal-top {height: var(--av-header-h); min-height: var(--av-header-h);}
.portal-hero {height: var(--av-hero-h); min-height: var(--av-hero-h);}
#content {max-width: var(--av-main-max); padding: var(--av-content-pad-y) var(--av-content-pad-x); width: 100%; min-width: 0;}
.portal-side nav button.active {background: var(--av-burgundy-500); border-color: var(--av-border-gold); color: var(--av-gold-50);}
.portal-side nav {overflow: auto;}
.portal-stage {min-width: 0;}
.paper,.card {border-radius: var(--av-radius-2); box-shadow: var(--av-shadow-parchment);}
footer {display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--av-sp-4); padding: var(--av-sp-4);}
footer nav {display: flex; gap: var(--av-sp-4); flex-wrap: wrap;}
footer a {color: var(--av-text-secondary);}
.dashboard-stats {display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: var(--av-grid-gap); margin-bottom: var(--av-grid-gap);}
.dashboard-stats .paper {min-height: var(--av-stat-min-h); display: flex; flex-direction: column; gap: var(--av-sp-2); margin: 0;}
.dashboard-stats strong {font-size: var(--av-stat-value); color: var(--av-burgundy-500);}
.dashboard-grid {display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: var(--av-grid-gap);}
.dashboard-grid>.paper {margin: 0; min-width: 0;}
.dash-campaigns {grid-column: span 5;}
.dash-session {grid-column: span 7;}
.dash-third {grid-column: span 4;}
.dashboard-row {display: flex; flex-direction: column; padding: var(--av-sp-3) 0; border-bottom: var(--av-line-1) solid var(--av-border-parchment); color: var(--av-parchment-ink); text-decoration: none;}
.dashboard-row small {color: var(--av-parchment-muted);}
.dashboard-row:hover {color: var(--av-burgundy-500);}
.notebook-layout {display: grid; grid-template-columns: var(--av-sidebar-w) minmax(0,1fr); gap: var(--av-grid-gap);}
.notebook-tree {background: var(--av-bg-panel); padding: var(--av-sp-3); color: var(--av-text-primary); overflow-wrap: anywhere;}
.notebook-page {display: block; text-align: left; width: 100%; padding: var(--av-sp-2); background: none; color: inherit; border: 0; border-bottom: var(--av-line-1) solid var(--av-border-gold-soft);}
.notebook-page small {display: block; color: var(--av-text-muted);}
.folder>div {padding-left: var(--av-sp-3);}
.folder summary {cursor: pointer; padding: var(--av-sp-2) 0;}
.folder summary button {float: right; border: 0; background: none; color: inherit;}
.notebook-index {display: grid; grid-template-columns: repeat(auto-fill,minmax(min(100%,var(--av-detail-123)),1fr)); gap: var(--av-grid-gap); align-content: start;}
.typed-card {margin: 0; text-decoration: none; color: var(--av-parchment-ink);}
.notebook-filters {display: flex; gap: var(--av-sp-3); margin-bottom: var(--av-sp-4);}
.notebook-filters>* {min-width: 0;}
.typed-fields {display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,var(--av-detail-124)),1fr)); gap: var(--av-sp-3); margin-bottom: var(--av-sp-4);}
.typed-fields>div {padding: var(--av-sp-3); border-bottom: var(--av-line-1) solid var(--av-border-parchment); overflow-wrap: anywhere;}
.typed-fields strong,.typed-fields span {display: block;}
.typed-fields strong {font-size: var(--av-fs-12); color: var(--av-parchment-muted);}
.type-monster,.type-character,.type-npc {border-top: var(--av-line-2) solid var(--av-burgundy-500);}
.rich-toolbar {display: flex; gap: var(--av-sp-1); flex-wrap: wrap; padding: var(--av-sp-2); background: var(--av-parchment-200); border: var(--av-line-1) solid var(--av-border-parchment);}
.rich-toolbar button,.rich-toolbar select {width: auto; min-height: var(--av-btn-h-sm);}
.rich-toolbar input[type=color] {width: var(--av-btn-h-md); height: var(--av-btn-h-sm); padding: 0;}
.rich-editor {background: var(--av-parchment-50); color: var(--av-parchment-ink); min-height: var(--av-hero-h); padding: var(--av-sp-4); border: var(--av-line-1) solid var(--av-border-parchment); overflow-wrap: anywhere;}
.rich-editor:focus {outline: var(--av-line-2) solid var(--av-gold-500);}
.lore-body table {border-collapse: collapse; width: 100%;}
.lore-body td,.lore-body th {border: var(--av-line-1) solid var(--av-border-parchment); padding: var(--av-sp-2);}
.backlinks {margin: var(--av-sp-4) 0; border-top: var(--av-line-1) solid var(--av-border-parchment); padding-top: var(--av-sp-3);}
.combat-list {display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--av-sp-4) var(--av-sp-12); position: relative;}
.combat-list:before {content: ''; position: absolute; top: 0; bottom: 0; left: 50%; width: var(--av-line-2); background: var(--av-gold-700);}
.combat-unit {min-width: 0; grid-column: 1;}
.combat-unit.enemy {grid-column: 2;}
.combat-unit .initiative-box {position: relative; z-index: 1;}
.combat-unit.ally .initiative-box {order: 3;}
.combat-board>.initiative-rail {display: none;}
.combat-board {grid-template-columns: minmax(0,1fr) minmax(var(--av-detail-124),24%);}
.combat-actions {align-self: start;}
.combat-unit {grid-template-columns: auto minmax(0,1fr) auto; gap: var(--av-sp-2);}
.combat-menu {grid-column: 3;}
.combat-portrait {width: var(--av-sp-12); height: var(--av-sp-12);}
.combat-unit-title {flex-wrap: wrap;}
.combat-unit-copy h3 {overflow-wrap: anywhere;}
.srd-monster-grid {max-height: var(--av-list-height,var(--av-detail-125)); overflow: auto;}
.srd-page-text {white-space: normal; overflow-wrap: anywhere;}
.network-state {position: fixed; top: 0; left: 50%; z-index: 50; background: var(--av-burgundy-700); color: var(--av-text-primary); padding: var(--av-sp-2) var(--av-sp-4);}
.network-state:empty {display: none;}
@media (max-width:1100px) {.combat-list {grid-template-columns: minmax(0,1fr); gap: var(--av-sp-3);}.combat-list:before {display: none;}.combat-unit.enemy {grid-column: 1;}.dashboard-stats {grid-template-columns: repeat(3,minmax(0,1fr));}}
@media (max-width:760px) {.portal {display: block;}.portal-side {width: var(--av-sidebar-w);}.dashboard-stats {grid-template-columns: repeat(2,minmax(0,1fr));}.dash-campaigns,.dash-session,.dash-third {grid-column: span 12;}.notebook-layout {grid-template-columns: minmax(0,1fr);}.notebook-tree {max-height: var(--av-hero-h); overflow: auto;}.combat-board {grid-template-columns: minmax(0,1fr);}.combat-actions {position: static;}.notebook-filters {flex-direction: column;}.typed-fields {grid-template-columns: repeat(2,minmax(0,1fr));}footer {padding-bottom: var(--av-sp-16);}}
.brand {min-width: 0; gap: var(--av-sp-2); padding: var(--av-sp-3);}
.brand img {width: var(--av-sp-10); height: var(--av-sp-10); flex-shrink: 0;}
.brand>span {min-width: 0;}
.brand strong {font-size: var(--av-fs-14); white-space: normal;}
.brand small {font-size: var(--av-fs-10); line-height: var(--av-lh-tight);}
.portal-side nav button {font-size: var(--av-fs-12); line-height: 1.35; min-height: var(--av-nav-item-h); padding: var(--av-sp-2) var(--av-sp-3); margin-bottom: var(--av-sp-1);}
.portal-side .side-foot {font-size: var(--av-fs-12);}
.map-display .portal-side,.map-display .portal-top,.map-display .portal-hero,.map-display footer,.map-display #combat-section,.map-display .reader,.map-display #world-section,.map-display .combat-page>.heading,.map-display .dice-launch {display: none;}
.map-display .portal {display: block;}
.map-display #content {max-width: none; padding: 0;}
.map-display .map-tools,.map-display .map-panel>.heading {display: none;}
.map-display .map-scroll {max-height: none;}
.map-display #maps-section>.heading,.map-display #maps-section>.muted-dark,.map-display .map-selector {display: none;}
@media (min-width:1101px) {.combat-unit {position: relative;}.combat-unit .initiative-box {position: absolute; top: var(--av-sp-4); width: var(--av-sp-10); z-index: 2;}.combat-unit.ally .initiative-box {right: calc(-1 * var(--av-sp-6) - var(--av-sp-5));}.combat-unit.enemy .initiative-box {left: calc(-1 * var(--av-sp-6) - var(--av-sp-5));}.combat-unit .initiative-box span {font-size: var(--av-fs-10);}.combat-unit .initiative-box input {background: var(--av-bg-panel); color: var(--av-gold-100); border-color: var(--av-gold-500);}}

@media(min-width:1101px){.dashboard-stats{grid-template-columns:repeat(7,minmax(0,1fr))}}.table-scroll{overflow:auto}.table-scroll table{width:100%;border-collapse:collapse}.table-scroll th,.table-scroll td{padding:var(--av-sp-3);text-align:left;border-bottom:var(--av-line-1) solid var(--av-border-parchment)}

.wiki-suggestions{display:flex;flex-direction:column;border:1px solid var(--av-border-gold);background:var(--av-parchment-100);max-height:var(--av-hero-h);overflow:auto}.wiki-suggestions[hidden]{display:none}.wiki-suggestions button{text-align:left;padding:var(--av-sp-2);color:var(--av-parchment-ink);background:transparent;border:0}.wiki-suggestions button:focus{background:var(--av-burgundy-500);color:var(--av-parchment-100)}
