/* B-055: one card and typography system for the five Observer domains. */
.sidebar-page {
  --card-surface:#263b31;
  --card-stroke:color-mix(in srgb,var(--domain-accent) 24%,#496052);
  --card-muted:#c0cdbf;
  --card-icon:url('./assets/ui-domain-icons-b053/village.png');
  color:#eaf1e8;
  font:400 13px/1.48 'Segoe UI',Arial,sans-serif;
}
.sidebar-page[data-sidebar-category="people"] {--card-icon:url('./assets/ui-domain-icons-b053/people.png')}
.sidebar-page[data-sidebar-category="world"] {--card-icon:url('./assets/ui-domain-icons-b053/world.png')}
.sidebar-page[data-sidebar-category="war"] {--card-icon:url('./assets/ui-domain-icons-b053/war.png')}
.sidebar-page[data-sidebar-category="quests"] {--card-icon:url('./assets/ui-domain-icons-b053/quests.png')}
/* Approved, type-specific card icons. A domain icon remains the fallback. */
.sidebar-page .quest-card {--card-icon:url('./assets/ui-card-icons-b055/mission.png')}
.sidebar-page .observer-request {--card-icon:url('./assets/ui-card-icons-b055/decision.png')}
.sidebar-page .commitment-card {--card-icon:url('./assets/ui-card-icons-b055/resident.png')}
.sidebar-page .observer-order-current {--card-icon:url('./assets/ui-card-icons-b055/alert.png')}
.sidebar-page .world-goals-grid p {--card-icon:url('./assets/ui-card-icons-b055/expedition.png')}
.sidebar-page .frontier-list>div {--card-icon:url('./assets/ui-card-icons-b055/expedition.png')}
.sidebar-page #caravanList>div {--card-icon:url('./assets/ui-card-icons-b055/caravan.png')}
.sidebar-page .building-list>div {--card-icon:url('./assets/ui-card-icons-b055/building.png')}
.sidebar-page .resource-grid>div {--card-icon:url('./assets/ui-card-icons-b055/supplies.png')}
.sidebar-page .warrior-grid>div {--card-icon:url('./assets/ui-card-icons-b055/equipment.png')}
.sidebar-page .grave-list button {--card-icon:url('./assets/ui-card-icons-b055/resident.png')}
.sidebar-page .domain-screen-heading {padding:8px 2px 18px;border-bottom:1px solid color-mix(in srgb,var(--domain-accent) 60%,transparent)}
.sidebar-page .domain-screen-heading small {font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:none}
.sidebar-page .domain-screen-heading h2 {font:700 clamp(25px,2.3vw,32px)/1.1 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em}
.sidebar-page .sidebar-title h1,.sidebar-page .sidebar-title h1 em {font:700 clamp(22px,2vw,30px)/1.14 'Segoe UI',Arial,sans-serif;letter-spacing:-.025em}
.sidebar-page .sidebar-title h1 em {font-style:normal;color:var(--domain-accent)}
.sidebar-page .section-label,.sidebar-page .section-label h2 {
  color:#ecf2e8;font:700 14px/1.3 'Segoe UI',Arial,sans-serif;letter-spacing:.01em;text-transform:capitalize
}
.sidebar-page .section-label span,.sidebar-page .sidebar-section-metric,.sidebar-page .quest-panel summary span {
  display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border:1px solid var(--card-stroke);
  border-radius:999px;background:color-mix(in srgb,var(--domain-accent) 16%,#1c3026);
  color:var(--domain-accent);font:650 11px/1.2 'Segoe UI',Arial,sans-serif;letter-spacing:0;text-transform:none
}
.sidebar-page>.sidebar-section {border:1px solid var(--card-stroke);border-radius:16px;background:#20342b;box-shadow:0 10px 22px #07150e30}
.sidebar-page>.sidebar-section>summary {min-height:53px;padding:13px 17px;border-radius:15px 15px 0 0;font:700 15px/1.25 'Segoe UI',Arial,sans-serif;letter-spacing:0}
.sidebar-page .sidebar-section-body {padding:16px}

/* The same raised surface is shared by content in all five screens. */
.sidebar-page :is(.quest-card,.observer-request,.commitment-card,.resident-card,.capacity-card,.observer-order-current,
  .world-goals-grid p,.frontier-list>div,.building-list>div,.resource-grid>div,.warrior-grid>div,
  .detail-grid>div,.grave-list button,.event-log>div,.resident-gear-row) {
  position:relative;min-width:0;margin-block:7px;padding:15px 16px;border:1px solid var(--card-stroke);
  border-radius:14px;background:var(--card-surface);color:#eaf1e8;
  box-shadow:0 3px 0 #09181026,0 10px 22px #07150e30;
  overflow-wrap:anywhere
}
.sidebar-page :is(.quest-card,.observer-request,.commitment-card,.observer-order-current,
  .world-goals-grid p,.frontier-list>div,.building-list>div,.warrior-grid>div,.grave-list button) {padding-left:68px}
.sidebar-page :is(.quest-card,.observer-request,.commitment-card,.observer-order-current,
  .world-goals-grid p,.frontier-list>div,.building-list>div,.warrior-grid>div,.grave-list button)::before {
  content:'';position:absolute;top:15px;left:15px;width:38px;height:38px;border-radius:11px;
  background:color-mix(in srgb,var(--domain-accent) 20%,#20352a) var(--card-icon) center/30px 30px no-repeat;
  border:1px solid color-mix(in srgb,var(--domain-accent) 48%,transparent);
  box-shadow:inset 0 1px 0 #ffffff18;image-rendering:pixelated
}
.sidebar-page .resident-card {align-items:center;gap:16px;padding:13px 16px}
.sidebar-page .resident-card>img {width:68px;height:72px;border-radius:11px;border:1px solid var(--card-stroke)}
.sidebar-page :is(.quest-card,.observer-request,.commitment-card,.resident-card,.observer-order-current,.world-goals-grid p,.building-list>div,.warrior-grid>div) :is(h3,strong:first-child) {
  color:#f7f8ef;font:700 15px/1.32 'Segoe UI',Arial,sans-serif;letter-spacing:-.01em
}
.sidebar-page .resident-copy strong {margin:3px 0;font-size:19px}
.sidebar-page .resident-copy span {color:var(--domain-accent);font:650 11px/1.2 'Segoe UI',Arial,sans-serif;letter-spacing:0;text-transform:capitalize}
.sidebar-page :is(.quest-card,.observer-request,.commitment-card,.resident-card,.observer-order-current,.world-goals-grid p) :is(p,small,span):not(.observer-meta) {
  color:var(--card-muted);font-size:12px;line-height:1.45
}
.sidebar-page .quest-card p,.sidebar-page .observer-request .observer-body {margin:5px 0 12px;max-width:72ch;color:#cbd5ca;font-size:12px;line-height:1.48}
.quest-journal-filters {display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 16px}
.quest-journal-filters button {border:1px solid rgba(174,205,183,.25);border-radius:999px;background:#253a31;color:#d8e9db;padding:7px 13px;font:600 12px/1.2 inherit;cursor:pointer}
.quest-journal-filters button:is([data-quest-view="main"],[data-quest-view="side"],[data-quest-view="daily"],[data-quest-view="weekly"]) {padding-left:36px;background-position:11px center;background-repeat:no-repeat;background-size:20px 20px}
.quest-journal-filters button[data-quest-view="main"] {background-image:url('./assets/quest-journal-b058/category-main.png')}
.quest-journal-filters button[data-quest-view="side"] {background-image:url('./assets/quest-journal-b058/revision-02/category-side.png')}
.quest-journal-filters button[data-quest-view="daily"] {background-image:url('./assets/quest-journal-b058/category-daily.png')}
.quest-journal-filters button[data-quest-view="weekly"] {background-image:url('./assets/quest-journal-b058/category-weekly.png')}
.sidebar-page .quest-journal-filters button.selected {background:#9bc7a5;border-color:#9bc7a5;color:#14251d}
.sidebar-page .quest-journal-filters button.selected:is([data-quest-view="main"],[data-quest-view="side"],[data-quest-view="daily"],[data-quest-view="weekly"]) {background-position:11px center;background-repeat:no-repeat;background-size:20px 20px}
.sidebar-page .quest-journal-filters button.selected[data-quest-view="main"] {background-image:url('./assets/quest-journal-b058/category-main.png')}
.sidebar-page .quest-journal-filters button.selected[data-quest-view="side"] {background-image:url('./assets/quest-journal-b058/revision-02/category-side.png')}
.sidebar-page .quest-journal-filters button.selected[data-quest-view="daily"] {background-image:url('./assets/quest-journal-b058/category-daily.png')}
.sidebar-page .quest-journal-filters button.selected[data-quest-view="weekly"] {background-image:url('./assets/quest-journal-b058/category-weekly.png')}
.quest-act-heading,.quest-board-heading {margin:18px 2px 9px;color:#d8e9db;font:700 14px/1.3 'Segoe UI',Arial,sans-serif;letter-spacing:.01em}
.quest-act-heading {display:flex;align-items:flex-end;min-height:94px;padding:14px 16px;border-radius:12px;color:#fff8e6;font-size:20px;text-shadow:0 2px 6px #0b1a12,0 1px 2px #0b1a12;background-color:#233e2d;background-position:center;background-size:cover;box-shadow:inset 0 -46px 46px #091b14a8}
.quest-act-heading[data-act="1"] {background-image:linear-gradient(0deg,#091b14a8,transparent 70%),url('./assets/quest-journal-b058/revision-03/act-1-banner.png')}
.quest-act-heading[data-act="2"] {background-image:linear-gradient(0deg,#091b14a8,transparent 70%),url('./assets/quest-journal-b058/revision-03/act-2-banner.png')}
.quest-act-heading[data-act="3"] {background-image:linear-gradient(0deg,#091b14a8,transparent 70%),url('./assets/quest-journal-b058/revision-03/act-3-banner.png')}
.quest-act-heading[data-act="4"] {background-image:linear-gradient(0deg,#091b14a8,transparent 70%),url('./assets/quest-journal-b058/revision-03/act-4-banner.png')}
.quest-act-heading[data-act="5"] {background-image:linear-gradient(0deg,#091b14a8,transparent 70%),url('./assets/quest-journal-b058/revision-03/act-5-banner.png')}
.sidebar-page .quest-current-chapter {padding:19px 18px;border-color:color-mix(in srgb,var(--domain-accent) 52%,transparent);box-shadow:0 14px 30px #0003,inset 0 1px 0 #ffffff19}
.sidebar-page .quest-current-chapter>strong:first-child {font-size:19px}
.tracked-quest-quick {flex-basis:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#cce0d0;font-size:11px}
.quest-unrevealed {border:1px dashed rgba(174,205,183,.3);border-radius:12px;padding:12px;color:#bdd3c3}
.sidebar-page .observer-request:first-child {padding-top:15px;border-top:1px solid var(--card-stroke)}
.sidebar-page .observer-request .observer-meta,.sidebar-page .quest-card>small,.sidebar-page .commitment-card>small,
.sidebar-page .observer-order-current>small,.sidebar-page .resident-activity,.sidebar-page .capacity-card>span {
  display:inline-flex;align-items:center;max-width:100%;margin:0 5px 7px 0;padding:4px 9px;
  border:1px solid color-mix(in srgb,var(--domain-accent) 35%,transparent);border-radius:999px;
  background:color-mix(in srgb,var(--domain-accent) 15%,#172b21);color:var(--domain-accent);
  font:650 11px/1.25 'Segoe UI',Arial,sans-serif;letter-spacing:0;text-transform:none
}
.sidebar-page .observer-request .observer-cause {margin:0 0 9px;color:#e0cd9b;font-size:11px}
.sidebar-page .observer-request .observer-sender {display:block;margin:4px 0 9px;color:var(--domain-accent);font-size:11px}
.sidebar-page .observer-commitments > p,.sidebar-page #commitmentList > p {color:#ced9cf;font-size:13px;line-height:1.5}
.sidebar-page #commitmentList > p {margin:10px 0 2px;font-weight:600}
.sidebar-page .capacity-card {min-height:120px}
.sidebar-page .capacity-card strong,.sidebar-page .resource-grid strong {color:#f6f7e9;font:700 18px/1.25 'Segoe UI',Arial,sans-serif}
.sidebar-page .capacity-card small {color:var(--card-muted);font-size:11px}
.sidebar-page .resource-grid>div {margin:0;padding:13px 12px;text-align:left}
.sidebar-page .resource-grid span {color:var(--card-muted);font-size:11px;letter-spacing:0;text-transform:capitalize}
.sidebar-page .building-list {gap:10px;max-height:none}
.sidebar-page .building-list span {color:#f5f5e9;font-size:12px}
.sidebar-page .building-list strong {color:var(--domain-accent);font-size:11px;letter-spacing:0}
.sidebar-page .frontier-list {gap:9px}
.sidebar-page .frontier-list>div {align-items:center;margin:0;min-height:76px;font-size:12px}
.sidebar-page .frontier-list strong {color:#f5f5e9;font-size:13px}
.sidebar-page .frontier-list small {color:var(--card-muted);font-size:11px}
.sidebar-page .frontier-list>.dragon-lead-card {display:block;min-height:106px;padding-left:112px}
.sidebar-page .frontier-list>.dragon-lead-card::before {display:none}
.sidebar-page .dragon-lead-card>strong,.sidebar-page .dragon-lead-card>small {display:block}
.sidebar-page .dragon-lead-card>small {margin-top:4px}
.sidebar-page .frontier-list>.dragon-lead-card-breath {padding-left:166px}
.sidebar-page .dragon-lead-art {
  position:absolute;left:12px;top:50%;width:88px;height:88px;transform:translateY(-50%);
  background-position:center;background-size:contain;background-repeat:no-repeat;
  image-rendering:pixelated;pointer-events:none;animation-duration:1.2s;
  animation-timing-function:steps(1,end);animation-iteration-count:infinite
}
.sidebar-page .dragon-lead-art-cinderwyrm {animation-name:cinderwyrmIdle}
.sidebar-page .dragon-lead-art-breath {left:8px;width:150px}
.sidebar-page .dragon-lead-art-rimefang {animation-name:rimefangIdle}
.sidebar-page .dragon-lead-art-frames {animation-name:dragonApprovedFrames;animation-delay:var(--dragon-phase,0ms)}
@keyframes dragonApprovedFrames {
  0%,24.99% {background-image:var(--dragon-frame-1)}
  25%,49.99% {background-image:var(--dragon-frame-2)}
  50%,74.99% {background-image:var(--dragon-frame-3)}
  75%,100% {background-image:var(--dragon-frame-4)}
}
@keyframes cinderwyrmIdle {
  0%,24.99% {background-image:url('./assets/dragons-b038/cinderwyrm-idle-v1/cinderwyrm-idle-right-01.png')}
  25%,49.99% {background-image:url('./assets/dragons-b038/cinderwyrm-idle-v1/cinderwyrm-idle-right-02.png')}
  50%,74.99% {background-image:url('./assets/dragons-b038/cinderwyrm-idle-v1/cinderwyrm-idle-right-03.png')}
  75%,100% {background-image:url('./assets/dragons-b038/cinderwyrm-idle-v1/cinderwyrm-idle-right-04.png')}
}
@keyframes rimefangIdle {
  0%,24.99% {background-image:url('./assets/dragons-b038/rimefang-idle-v1/revision-02/rimefang-idle-right-01.png')}
  25%,49.99% {background-image:url('./assets/dragons-b038/rimefang-idle-v1/revision-02/rimefang-idle-right-02.png')}
  50%,74.99% {background-image:url('./assets/dragons-b038/rimefang-idle-v1/revision-02/rimefang-idle-right-03.png')}
  75%,100% {background-image:url('./assets/dragons-b038/rimefang-idle-v1/revision-02/rimefang-idle-right-04.png')}
}
.sidebar-page .warrior-grid div {font-size:12px}
.sidebar-page .warrior-grid strong {font-size:17px}
.sidebar-page .grave-list button {text-align:left;font-size:12px}
.story-illustration {display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:contain;image-rendering:pixelated;margin:10px 0}
.sidebar-page .battle-history {padding:14px 16px;border-color:var(--card-stroke);border-radius:14px;background:var(--card-surface);box-shadow:0 10px 22px #07150e30;font-size:13px;line-height:1.5}
.sidebar-page .battle-history summary {color:#f4e1b1;font-size:15px;line-height:1.4}
.sidebar-page .battle-history p {margin:10px 0 8px;line-height:1.5}
.sidebar-page .battle-history ol {margin:8px 0 2px;padding-left:22px;line-height:1.55}
.sidebar-page .battle-history li+li {margin-top:6px}

/* Primary controls are filled; alternatives remain visually quieter. */
.sidebar-page button:not(.domain-screen-close):not(.observer-sender):not(.resident-faces button):not(.grave-list button) {
  min-height:39px;padding:9px 14px;border:1px solid color-mix(in srgb,var(--domain-accent) 65%,#526d58);
  border-radius:10px;background:color-mix(in srgb,var(--domain-accent) 21%,#203629);
  color:#f1f5eb;font:650 12px/1.25 'Segoe UI',Arial,sans-serif;box-shadow:inset 0 1px 0 #ffffff15;
  cursor:pointer;transition:transform .14s ease,background .14s ease,box-shadow .14s ease
}
.sidebar-page :is(.place-controls,.quest-card,.observer-choices,.observer-order-buttons,.commitment-controls,.ledger-actions,.power-controls,.policy-controls,.world-slot-row)>button:first-of-type:not(:disabled),
.sidebar-page .quest-card>button:first-of-type:not(:disabled),.sidebar-page .observer-choice:first-child:not(:disabled) {
  background:var(--domain-accent);border-color:var(--domain-accent);color:#10231b;
  box-shadow:0 3px 0 #0918104d,0 7px 16px #07150e42
}
.sidebar-page .observer-choices {grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:13px}
.sidebar-page .observer-choice {min-height:80px!important;text-align:left!important}
.sidebar-page .observer-choice strong {font-size:13px}
.sidebar-page .observer-choice small {color:inherit;font-size:11px;opacity:.85}
.sidebar-page button:hover:not(:disabled) {transform:translateY(-1px);filter:brightness(1.1)}
.sidebar-page button:active:not(:disabled) {transform:translateY(1px)}
.sidebar-page button:focus-visible,.sidebar-page summary:focus-visible {outline:2px solid #faf2bb;outline-offset:2px}
.sidebar-page button:disabled {opacity:.5;cursor:not-allowed;filter:none}
.sidebar-page .quest-card>button:first-of-type:not(:disabled),
.sidebar-page .observer-choices>.observer-choice:first-child:not(:disabled),
.sidebar-page .place-controls>button:first-of-type:not(:disabled),
.sidebar-page .observer-order-buttons>button:first-of-type:not(:disabled),
.sidebar-page .commitment-controls>button:first-of-type:not(:disabled) {
  background:var(--domain-accent)!important;border-color:var(--domain-accent)!important;color:#10231b!important;
  box-shadow:0 3px 0 #0918104d,0 7px 16px #07150e42!important
}
.sidebar-page .observer-choices>.observer-choice:first-child :is(strong,small) {color:#10231b}
.sidebar-page .domain-screen-close {padding:10px 16px;border-radius:10px;background:color-mix(in srgb,var(--domain-accent) 20%,#20362a);font:650 12px 'Segoe UI',Arial,sans-serif}
.sidebar-page :is(input,select) {min-height:35px;border:1px solid var(--card-stroke);border-radius:9px;background:#172a21;color:#f5f5e9;font:12px 'Segoe UI',Arial,sans-serif}
.sidebar-page :is(.observer-orders,.observer-commitments,.observer-inbox,.world-goals,.economy-panel,.history,.daily-summary) {
  border-radius:15px;border-color:var(--card-stroke);background:#20342b;box-shadow:0 8px 20px #07150e26
}
.sidebar-page :is(.observer-orders,.observer-commitments,.observer-inbox) {padding:16px}
.sidebar-page :is(.observer-order-group,.quest-more)>summary,.sidebar-page .sidebar-section>summary {font-size:14px;letter-spacing:0}
@media(max-width:800px) {
  .sidebar-page .observer-choices {grid-template-columns:1fr}
  .sidebar-page :is(.quest-card,.observer-request,.commitment-card,.observer-order-current,.frontier-list>div,.building-list>div) {padding-left:61px}
  .sidebar-page :is(.quest-card,.observer-request,.commitment-card,.observer-order-current,.frontier-list>div,.building-list>div)::before {left:12px;width:34px;height:34px;background-size:26px 26px}
}
@media(max-width:480px) {
  .sidebar-page .sidebar-section-body,.sidebar-page .observer-inbox {padding:12px}
  .sidebar-page .observer-inbox .observer-request,.sidebar-page .quest-list .quest-card {padding-left:15px}
  .sidebar-page .observer-inbox .observer-request::before,.sidebar-page .quest-list .quest-card::before {
    position:relative;top:auto;left:auto;display:block;width:34px;height:34px;
    margin:0 0 11px;background-size:26px 26px
  }
  .sidebar-page .observer-choices {width:100%}
}
@media(prefers-reduced-motion:reduce){.sidebar-page button{transition:none!important}}
