.continue-card .continue-link,.scene-list .scene-link{gap:var(--space-2);min-height:var(--touch-min);text-decoration:none;display:grid}.continue-head,.scene-link-head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.continue-title{font-family:var(--font-display);font-size:var(--text-lg);overflow-wrap:anywhere}.scene-link-title{overflow-wrap:anywhere;flex:8rem;min-width:0;font-weight:600}.continue-meta{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.continue-go{color:var(--accent);margin-left:auto;font-weight:600}.scene-list,.member-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.table-block{gap:var(--space-3);display:grid}.table-block>h3{font-size:var(--text-ui);margin:0}.member-row{align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2) 0;border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.member-row-name{overflow-wrap:anywhere;flex:8rem;min-width:0}.member-row-actions{gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.member-row>.confirm-action,.table-admin-row>.confirm-action{flex-basis:100%}.field>label{color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);font-weight:600}.field select{width:100%;min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border:var(--line-w) solid var(--line);border-radius:var(--radius-sm);background:var(--field-bg);color:var(--ink);font:inherit}.field select:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.field-inline{grid-template-columns:auto minmax(0,1fr);align-items:center}.field-hint{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-xs);margin:0}.field-error{color:var(--danger);font-family:var(--font-ui);font-size:var(--text-ui);margin:0;font-weight:600}.field [aria-invalid=true]{border-color:var(--danger)}.notice{justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-left:var(--space-1) solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raise);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);flex-wrap:wrap;display:flex}.notice-text{gap:var(--space-1);min-width:0;display:grid}.notice-title{font-weight:700}.notice-info{border-left-color:var(--speak-ic)}.notice-success{border-left-color:var(--success)}.notice-warning{border-left-color:var(--accent)}.notice-danger{border-left-color:var(--danger)}.notice-danger .notice-title{color:var(--danger)}.notice-neutral{border-left-color:var(--ink-muted)}.badge-tone-neutral{border-color:var(--line);color:var(--ink-muted)}.badge-tone-info{border-color:var(--speak-ic);color:var(--speak-ic)}.badge-tone-success{border-color:var(--success);color:var(--success)}.badge-tone-warning{border-color:var(--accent);color:var(--accent)}.badge-tone-danger{border-color:var(--danger);color:var(--danger)}.badge-tone-judge{border-color:var(--speak-judge);color:var(--speak-judge)}.panel-raised{background:var(--surface-raise)}.panel-quiet{background:0 0}.state-line{margin:var(--space-3) 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui)}.nav-item{--nav-marker-shadow:inset 0 calc(var(--nav-marker) * -1) 0 var(--accent);box-sizing:border-box;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);text-align:center;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}a.nav-item:hover{color:var(--ink);background:var(--accent-tint-8)}.nav-item:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.nav-item[aria-current=page]{color:var(--ink);box-shadow:var(--nav-marker-shadow);font-weight:700}.nav-item-icon{display:inline-flex;position:relative}.nav-item-unavailable{cursor:default}.nav-item-description{color:var(--ink-muted);font-size:var(--text-xs);font-weight:400;display:block}.nav-item-reason{font-size:var(--text-xs);text-transform:lowercase}.campaign-nav-root{z-index:var(--z-bar);position:fixed;inset:auto 0 0}.campaign-nav{border-top:1px solid var(--line);background:var(--surface-menu);padding-bottom:env(safe-area-inset-bottom);font-family:var(--font-ui)}.campaign-nav-list{max-width:var(--app-max);margin:0 auto;padding:0;list-style:none;display:flex}.campaign-nav-item{flex:1 1 0;min-width:0}.campaign-nav .nav-item{min-width:0;padding-inline:var(--space-1)}.campaign-nav-link{--nav-marker-shadow:inset 0 var(--nav-marker) 0 var(--accent);gap:var(--space-1);width:100%;height:100%;padding:var(--space-2) 0;font-size:var(--text-xs);border-radius:0;flex-direction:column;display:flex}.campaign-nav-link[aria-current=page]{background:var(--accent-tint-12)}.campaign-nav .nav-item-label{overflow-wrap:break-word}.nav-item-count{top:calc(var(--space-1) * -1);right:calc(var(--space-2) * -1);min-width:var(--space-4);padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:var(--text-xs);text-align:center;font-weight:700;line-height:1.2;position:absolute}.campaign-with-nav{padding-bottom:calc(var(--nav-reserve) + env(safe-area-inset-bottom))}.campaign-nav.user-nav{z-index:var(--z-bar);position:fixed;inset:auto 0 0}.campaign-nav-menu-item{position:relative}.campaign-nav-menu-trigger{--nav-marker-shadow:inset 0 var(--nav-marker) 0 var(--accent);justify-content:center;align-items:center;gap:var(--space-1);width:100%;height:100%;padding:var(--space-2) 0;font-size:var(--text-xs);cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;display:flex}.campaign-nav-menu-trigger[aria-current=true],.campaign-nav-menu-trigger.campaign-nav-menu-active{color:var(--ink);background:var(--accent-tint-12);box-shadow:var(--nav-marker-shadow);font-weight:700}.campaign-nav-menu-panel{z-index:var(--z-popover);border-top:1px solid var(--line);background:var(--surface-menu);max-height:60vh;box-shadow:0 -8px 24px var(--shadow-35);position:absolute;inset:auto 0 100%;overflow-y:auto}.campaign-nav-menu-list{max-width:var(--app-max);padding:var(--space-2);gap:var(--space-1);flex-direction:column;margin:0 auto;list-style:none;display:flex}.campaign-nav-menu-link{justify-content:flex-start;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);text-align:start}.surface-layout{width:min(100%, var(--composition-max));margin:0 auto;display:block}.surface-primary{min-width:0}.surface-layout[data-composed=true]{gap:var(--composition-gap);align-items:start;display:grid}.surface-layout[data-composed=true][data-composition=story\+direction],.surface-layout[data-composed=true][data-composition=story\+characters]{grid-template-columns:minmax(0, 1fr) minmax(0, var(--composition-aside))}.surface-secondary{min-width:0}.toolbar{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.toolbar-end{justify-content:flex-end}.toolbar-spread{justify-content:space-between}.toolbar .action-button-icon-only{min-width:var(--touch-min);min-height:var(--touch-min);padding:var(--space-1)}.overflow-menu{display:inline-flex;position:relative}.overflow-menu-list{top:calc(100% + var(--space-1));z-index:var(--z-popover);min-width:14rem;padding:var(--space-1);border:var(--line-w) solid var(--line);border-radius:var(--radius-md);background:var(--surface-raise);box-shadow:0 var(--space-2) var(--space-5) var(--shadow-35);margin:0;list-style:none;position:absolute;right:0}.overflow-menu-item{align-items:center;gap:var(--space-3);width:100%;min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.overflow-menu-item:hover,.overflow-menu-item:focus-visible{background:var(--accent-tint-12)}.overflow-menu-item:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:calc(var(--focus-ring-offset) * -1)}.overflow-menu-item:disabled{color:var(--ink-muted);cursor:not-allowed}.overflow-menu-item-danger{color:var(--danger)}.tool-grid-list{grid-template-columns:repeat(auto-fill, minmax(var(--tool-tile-min), 1fr));gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.tool-tile{box-sizing:border-box;justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-height:var(--tool-tile-min);padding:var(--space-3) var(--space-2);border:var(--line-w) solid var(--line);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);text-align:center;cursor:pointer;flex-direction:column;line-height:1.2;text-decoration:none;display:flex}a.tool-tile:hover,button.tool-tile:hover{border-color:var(--accent);background:var(--accent-tint-8)}.tool-tile:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.tool-tile[aria-current=page],.tool-tile[aria-pressed=true]{border-color:var(--accent);background:var(--accent-tint-12);font-weight:700}.tool-tile-icon{display:inline-flex;position:relative}.tool-tile-count{top:calc(var(--space-1) * -1);right:calc(var(--space-2) * -1);min-width:var(--space-4);padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:var(--text-xs);font-weight:700;position:absolute}.tool-tile-unavailable{color:var(--ink-muted);cursor:default}.tool-tile-reason{font-size:var(--text-xs)}.site-menu{z-index:var(--z-popover);align-items:center;gap:var(--space-2);margin-left:auto;display:flex;position:relative}.site-account-trigger{border:var(--line-w) solid var(--line);border-radius:var(--radius-pill)}.site-account-trigger[aria-expanded=true]{border-color:var(--accent);background:var(--accent-tint-12)}.site-menu-panel{top:var(--header-height);z-index:var(--z-popover);border-bottom:var(--line-w) solid var(--line);background:var(--surface-menu);box-shadow:0 var(--space-3) var(--space-5) var(--shadow-35);position:fixed;left:0;right:0}.site-menu-inner{width:min(100% - (2 * var(--space-4)), var(--app-max));padding:var(--space-3) 0 var(--space-4);gap:var(--space-4);margin:0 auto;display:grid}.site-menu-block+.site-menu-block{padding-top:var(--space-4);border-top:var(--line-w) solid var(--line)}.site-menu-block-user{gap:var(--space-3);display:grid}.site-menu-account{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:var(--line-w) solid var(--line);font-family:var(--font-ui);display:flex}.site-menu-links{gap:var(--space-1);display:grid}.site-menu-links .nav-item{--nav-marker-shadow:none;justify-content:flex-start}.direction-sections{gap:var(--space-4);display:grid}.direction-chevron{border-left:var(--space-1) solid transparent;border-right:var(--space-1) solid transparent;border-top:var(--space-2) solid currentColor;width:0;height:0;transition:transform var(--motion-ui);margin-left:auto;display:inline-block}[aria-expanded=false]>.direction-chevron,.actor-group-toggle[aria-expanded=false] .direction-chevron{transform:rotate(-90deg)}.direction-pending-summary{align-items:center;gap:var(--space-2);font-size:var(--text-ui);display:flex}.direction-pending-summary p{margin:0}.direction-pending-summary-zero{color:var(--ink-muted)}.judge-sidebar.judge-sidebar-surface{max-height:none;padding:var(--space-2) var(--space-4);background:0 0;border-style:solid;border-width:20px;border-image:url(/assets/normal-ui/board-stone.png) 24;border-radius:0;min-width:0;margin-bottom:0;position:static;overflow:visible}.judge-sidebar.judge-sidebar-composition{min-width:0;max-height:none;margin-bottom:0;position:static;overflow:visible}.judge-sidebar-body{min-width:0}.judge-sidebar-bar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);display:flex}.toolkit-section{padding-block:var(--space-2);min-width:0}.toolkit-section .page-section-heading{gap:var(--space-2);align-items:center;margin:0}.toolkit-section .page-section-heading-emblem-beside{flex-wrap:nowrap}.toolkit-section .page-section-heading .section-emblem{border-radius:var(--radius-sm);width:1.75rem;height:1.75rem;box-shadow:none;flex:none;margin:0}.toolkit-section .page-section-heading-text,.toolkit-section .page-section-heading>h2{flex:auto;min-width:0}.toolkit-section .page-section-heading h2{max-width:none;font-size:var(--text-block-title);overflow-wrap:break-word;margin:0;line-height:1.2}.toolkit-section-title{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:inline-flex}.toolkit-section-title-text{overflow-wrap:break-word;min-width:0}.toolkit-section .toolkit-section-controls{flex:none;margin-left:auto}.toolkit-section .toolkit-section-body[hidden]{display:none}.toolkit-section-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.toolkit-section-body{gap:var(--space-3);min-width:0;display:grid}.toolkit-section-body[hidden]{display:none}.toolkit-section-empty{font-size:var(--text-sm);overflow-wrap:break-word;margin:0}.toolkit-offscene{gap:var(--space-2);min-width:0;display:grid}.toolkit-offscene-body{gap:var(--space-3);min-width:0;display:grid}.toolkit-offscene-body[hidden]{display:none}.judge-sidebar .form-actions{flex-wrap:wrap}.judge-sidebar input,.judge-sidebar select,.judge-sidebar textarea{box-sizing:border-box;max-width:100%}.judge-sidebar .field{min-width:0}.actor-link{align-items:center;gap:var(--space-2);min-height:var(--touch-min);display:inline-flex}.direction-clocks,.direction-tools,.direction-form{gap:var(--space-3);display:grid}.clock-track{gap:var(--space-2);display:grid}.clock-track-head{align-items:center;gap:var(--space-2);display:flex}.clock-track-count{color:var(--ink-muted);margin-left:auto}.clock-track-segments{gap:var(--space-1);flex-wrap:wrap;display:flex}.segment{--clock-seg-size:var(--space-3);box-sizing:border-box;width:var(--clock-seg-size);height:var(--clock-seg-size);border-radius:50%;flex:none}.segment-empty{border:2px solid var(--line);background:0 0}.segment-filled{border:2px solid var(--accent);background-color:var(--accent);background-image:repeating-linear-gradient(45deg, transparent, transparent 2px, var(--field-bg) 2px, var(--field-bg) 3px)}@media (forced-colors:active){.segment-empty{border-color:canvastext}.segment-filled{background-color:canvastext;border-color:canvastext}}.clock-track-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.clock-create,.clock-track-confirm{gap:var(--space-3);display:grid}.pending-work{gap:var(--space-2);display:grid}.pending-work-title{align-items:center;gap:var(--space-2);margin:0;font-weight:600;display:flex}.pending-work-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.pending-work-link{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-raise);flex-wrap:wrap;text-decoration:none;display:flex}.pending-work-go{color:var(--accent);font-weight:600}.tool-block{gap:var(--space-2);display:grid}.tool-block-head{align-items:center;gap:var(--space-2);display:flex}.tool-block-title{min-width:0;font-size:var(--text-ui);flex:1;margin:0}.tool-block-summary{font-size:var(--text-sm);margin:0}.tool-block-body[hidden]{display:none}@container surface (width>=34rem){.actor-create{grid-template-columns:1fr auto;align-items:end}}.actor-create{gap:var(--space-2);display:grid}.actor-kind-label{font-size:var(--text-xs)}.actor-face-fixed{font-size:var(--text-sm);color:var(--ink-muted)}.actor-stat{font-size:var(--text-meta)}.actor-stat-text{margin:var(--space-1) 0 0;white-space:pre-wrap;font-family:ui-monospace,monospace}.close-table{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-raise);display:grid}.close-table-state{align-items:center;gap:var(--space-2);margin:0;display:flex}.close-table-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.close-table-check{align-items:center;gap:var(--space-2);min-height:var(--touch-min);display:flex}.close-table-confirm{gap:var(--space-3);display:grid}.close-table-title{font-family:var(--font-display);margin:0}.close-table-rule{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--panel);display:grid}.confirm-action{gap:var(--space-2);padding:var(--space-3);border-left:var(--space-1) solid var(--accent);border-radius:var(--radius-md,8px);background:var(--surface-raise);grid-column:1/-1;display:grid}.confirm-action-title{margin:0;font-weight:600}.confirm-action-consequence{color:var(--ink-muted);margin:0}.table-admin{gap:var(--space-3);display:grid}.table-admin-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.table-admin-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-height:44px;display:flex}.table-admin-name{font-weight:600}.toolkit-section .action-button-icon-only[aria-expanded] .action-glyph,.tool-block-head .action-button-icon-only[aria-expanded] .action-glyph{transition:transform .12s}.toolkit-section .action-button-icon-only[aria-expanded=false] .action-glyph,.tool-block-head .action-button-icon-only[aria-expanded=false] .action-glyph{transform:rotate(-90deg)}@media (prefers-reduced-motion:reduce){.toolkit-section .action-button-icon-only .action-glyph,.tool-block-head .action-button-icon-only .action-glyph{transition:none}}.app-shell{--shell-width:var(--page-max);--main-width:var(--shell-width);flex-direction:column;min-width:0;min-height:100vh;display:flex;overflow-x:clip}.app-shell-app,.app-shell-campaign{--main-width:var(--surface-max)}.app-shell.app-shell-wide{--main-width:var(--composition-max)}.skip-link{z-index:var(--z-skip-link);top:var(--space-2);left:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);font-family:var(--font-ui);font-weight:700;position:absolute;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.skip-link:focus-visible{outline:var(--focus-ring-width) solid var(--ink);outline-offset:var(--focus-ring-offset)}.site-header{z-index:var(--z-header);border-bottom:var(--line-w) solid var(--line);background:var(--field-tint-88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.site-header-bar{width:min(100% - (2 * var(--space-4)), var(--shell-width));min-height:var(--shell-bar-height);justify-content:space-between;align-items:center;gap:var(--space-4);margin:0 auto;display:flex}.site-header-brand{align-items:center;gap:var(--space-2);min-height:var(--touch-min);color:var(--ink);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.01em;text-decoration:none;display:inline-flex}.site-header-whoami{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);overflow-wrap:anywhere;margin:0}.site-header-brand:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) 0;flex-wrap:wrap;display:flex}.page-header-identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.page-header-text{min-width:0}.page-header-text h1{font-size:var(--text-page-title);overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.1}.page-header-meta{margin:var(--space-1) 0 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-body)}.page-header-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.app-shell-main{z-index:var(--z-content);width:min(100% - (2 * var(--space-4)), var(--main-width));min-width:0;padding-bottom:var(--space-6);flex:1;margin:0 auto;position:relative;container:surface/inline-size}.app-shell-main:focus{outline:none}.page-section{margin:var(--space-5) 0 0}.page-section:first-child{margin-top:0}.page-section-heading-divider{padding-bottom:var(--space-2);border-bottom:var(--line-w) solid var(--line)}.section-emblem{justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.section-emblem .pixel-item{width:1.5rem;height:1.5rem}.zone{width:100%;margin:0 auto}.zone-surface{max-width:var(--surface-max)}.zone-narrow{max-width:var(--zone-narrow-max);gap:var(--space-4);padding-top:var(--space-5);flex-direction:column;display:flex}.zone-narrow .page-header{text-align:center;justify-content:center}.zone-narrow .page-header-identity{justify-content:center}.page-footer{width:min(100% - (2 * var(--space-4)), var(--shell-width));padding:var(--space-6) 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);margin:auto auto 0}.page-footer-inner{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-footer-mark{margin:0}.page-footer-legal{width:100%;font-size:var(--text-xs);order:3;margin:0}.page-footer-reserve{padding-bottom:calc(var(--space-6) + var(--nav-reserve))}.page-footer-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header-bar{padding:var(--space-2) 0}.page-footer-inner{flex-direction:column;align-items:flex-start}.site-login-link{flex:none;text-decoration:none}@media (width<=36rem){.site-header-whoami{display:none}}.site-header-bar{flex-wrap:nowrap}.breadcrumb{font-family:var(--font-ui);flex:100%}.breadcrumb-list{flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;display:flex}.breadcrumb-step{align-items:center;display:flex}.breadcrumb-step+.breadcrumb-step:before{content:"›";color:var(--ink-muted);padding-inline:var(--space-1)}.breadcrumb-link{padding-inline:var(--space-2)}.breadcrumb-step:first-child .breadcrumb-link{margin-left:calc(var(--space-2) * -1)}@container surface (width<=26rem){.breadcrumb-step:not(.breadcrumb-step-parent){display:none}.breadcrumb-step+.breadcrumb-step:before{content:none}.breadcrumb-step-parent .breadcrumb-link{margin-left:calc(var(--space-2) * -1)}.breadcrumb-step-parent .breadcrumb-link:before{content:"←";margin-right:var(--space-1)}}.page-header.page-header-hero .page-header-identity{display:block}.page-header.page-header-hero .breadcrumb{margin-bottom:var(--space-4)}.app-shell-public .page-section:first-child{margin-top:0}:root{--story-measure:62ch;--story-gap:var(--space-5);--story-fill-in_character:#7fb3ff14;--story-fill-declared_action:#7fb3ff24;--story-fill-out_of_character:#f4ead50d;--story-fill-narration:#efb85b12;--story-fill-judge_ruling:#c9a0ff1f;--story-fill-system_event:#efb85b1c;--story-fill-prose:#f4ead512}.story-surface{gap:var(--space-5);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.story-timeline{gap:var(--story-gap);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.story-entry{min-width:0;scroll-margin-top:var(--space-5)}.story-post{gap:var(--space-2);width:100%;min-width:0;max-width:min(100%, var(--story-measure));padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--story-fill-prose);grid-template-columns:minmax(0,1fr);margin-inline:auto;display:grid;position:relative}.story-entry[data-targeted=true]>.story-post{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.story-post-in_character{background:var(--story-fill-in_character)}.story-post-declared_action{background:var(--story-fill-declared_action)}.story-post-out_of_character{background:var(--story-fill-out_of_character)}.story-post-narration{background:var(--story-fill-narration)}.story-post-judge_ruling,.story-post-override{background:var(--story-fill-judge_ruling)}.story-post-system_event{background:var(--story-fill-system_event)}.story-post-prose{background:var(--story-fill-prose)}.story-post-gone{opacity:.7;padding:var(--space-2) var(--space-4);background:0 0}.story-divider{align-items:center;gap:var(--space-3);width:100%;max-width:min(100%, var(--story-measure));color:var(--ink-muted);margin-inline:auto;display:flex}.story-divider:after{content:"";border-top:var(--line-w) solid var(--line);flex:1}.story-divider-pill{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--story-fill-prose);font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.story-post-head{align-items:baseline;gap:var(--space-1) var(--space-2);font-family:var(--font-ui);font-size:var(--text-meta);color:var(--ink-muted);flex-wrap:wrap;display:flex}.story-post-who{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.story-post-register{font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.02em;text-transform:lowercase;color:var(--ink-muted);opacity:.8}.story-post-override-mark{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--speak-judge)}.story-post-time{font-size:var(--text-sm);color:var(--ink-muted);margin-left:auto}.story-post-audience{align-items:center;gap:var(--space-1);padding:0 var(--space-2);min-height:var(--tap-small);border-radius:var(--radius-pill);background:var(--story-fill-out_of_character);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-xs);display:inline-flex}.story-post-audience-private{background:var(--story-fill-judge_ruling);color:var(--ink)}.story-post-audience-icon{width:1em;height:1em;display:inline-flex}.story-post-body{font-family:var(--font-prose);overflow-wrap:break-word;word-break:normal}.story-post-body pre{margin:0 0 var(--space-2);max-width:100%;overflow-x:auto}.story-post-body code{overflow-wrap:break-word}.story-post-body pre code{overflow-wrap:normal;white-space:pre}.story-post-body p{margin:0 0 var(--space-2)}.story-post-body blockquote{margin:0 0 var(--space-2);padding-left:var(--space-3);border-left:3px solid var(--accent);color:var(--ink-muted)}.story-post-body a{color:var(--speak-ic)}.story-post-removed,.story-post-edited{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);margin:0}.story-post-actions{justify-content:flex-end;align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;min-width:0;display:flex}@media (hover:hover) and (pointer:fine){.story-post-actions{opacity:0;transition:opacity var(--motion-ui)}.story-post:hover .story-post-actions,.story-post:focus-within .story-post-actions{opacity:1}}.story-post-actions .overflow-menu>span>button{min-width:var(--touch-min);min-height:var(--touch-min)}.story-post-shortcuts{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;margin-right:auto;display:flex}.story-shortcuts{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.story-shortcut{min-height:var(--touch-min);padding-inline:var(--space-3);border:var(--line-w) solid var(--line);border-radius:var(--radius-sm)}.story-unread{align-items:center;gap:var(--space-3);color:var(--accent);font-family:var(--font-ui);font-size:var(--text-meta);font-weight:700;display:flex}.story-unread:after{content:"";border-top:var(--line-w) solid var(--accent);flex:1}.story-roll{gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);display:grid}.story-roll-private{background:var(--story-fill-judge_ruling)}.story-roll-head{align-items:center;gap:var(--space-1) var(--space-2);font-family:var(--font-ui);font-size:var(--text-meta);flex-wrap:wrap;margin:0;display:flex}.story-request{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-meta);flex-wrap:wrap;margin:0;display:flex}.story-request-done{opacity:.75}.story-roll-who{font-size:var(--text-sm)}.roll-summary{overflow-wrap:anywhere;min-width:0;font-family:var(--font-ui);font-size:var(--text-ui);font-variant-numeric:tabular-nums;margin:0}.roll-faces-text{color:var(--ink)}.roll-modifier-text{color:var(--ink-muted)}.story-roll .roll-total{font-weight:700}.story-roll .roll-expression{font-family:ui-monospace,monospace;font-size:var(--text-meta);color:var(--ink-muted);overflow-wrap:anywhere;min-width:0}.roll-rulings{margin:0}.roll-rulings .rulings{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.roll-rulings .ruling{gap:var(--space-1);min-width:0;display:grid}.ruling-text{color:var(--ink);font-family:var(--font-prose);font-size:var(--text-base);overflow-wrap:break-word;min-width:0;margin:0}.ruling-meta{align-items:center;gap:var(--space-1) var(--space-2);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);flex-wrap:wrap;margin:0;display:flex}.ruling-override{align-items:center;display:inline-flex}.ruling-override .badge{font-size:var(--text-xs)}.roll-detail{min-width:0}.roll-detail-summary{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);cursor:pointer}.roll-detail-summary:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.roll-detail .dice-badge{margin-top:var(--space-2)}.roll-detail .roll-faces{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.story-ask{gap:var(--space-3);display:grid}.story-dock{left:50%;bottom:calc(var(--nav-reserve) + env(safe-area-inset-bottom));z-index:var(--z-raised);width:min(100% - (2 * var(--space-4)), var(--main-width));gap:var(--space-2);display:grid;position:fixed;transform:translate(-50%)}.story-dock-spacer{height:calc(var(--touch-min) + var(--space-5))}.story-composer{gap:var(--space-2);padding:var(--space-2);background:var(--surface-menu);border-radius:var(--radius-md);box-shadow:0 var(--space-2) var(--space-5) var(--shadow-35);display:grid}.story-composer-pill{align-items:flex-end;gap:var(--space-2);display:flex}.story-composer-field{box-sizing:border-box;field-sizing:content;min-width:0;min-height:var(--touch-min);resize:none;max-height:30vh;padding:var(--space-2) var(--space-3);border:var(--line-w) solid var(--line);border-radius:var(--radius-md);background:var(--field-bg);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);flex:auto;line-height:1.4}.story-composer-field:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:calc(var(--focus-ring-offset) * -1)}.story-composer-options{gap:var(--space-3);max-height:50vh;padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-raise);display:grid;overflow-y:auto}.story-composer-summary{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);margin:0}.story-recipients{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-sunken);font-family:var(--font-ui);font-size:var(--text-ui);margin:0;display:grid}.story-recipient{align-items:center;gap:var(--space-2);min-height:var(--touch-min);display:flex}.story-composer-hint{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);margin:0}.story-shortcuts-row{gap:var(--space-2);flex-wrap:wrap;display:flex}@container surface (width>=30rem){.story-composer-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.story-clocks{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.story-clock{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-meta);display:inline-flex}.story-clock-segments{gap:var(--space-1);display:inline-flex}.story-clock-segment{width:var(--space-3);height:var(--space-3);border:var(--line-w) solid var(--line);background:var(--field-bg)}.story-clock-segment-on{background:var(--accent);border-color:var(--accent)}.story-clock-count{color:var(--ink-muted);font-variant-numeric:tabular-nums}.story-request-text{overflow-wrap:anywhere;min-width:0}.story-request .roll-request-chip{align-items:flex-start}.story-composer-voice{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.story-composer-voice-line{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-sm);margin:0}.story-speakers{gap:var(--space-2);flex-wrap:wrap;display:flex}.story-speaker{min-height:44px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill,999px);background:var(--surface-sunken);color:var(--ink);font-family:var(--font-ui);cursor:pointer}.story-speaker-on{border-color:var(--accent);background:var(--accent-tint-12)}.story-ooc{align-items:center;gap:var(--space-2);min-height:44px;color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-sm);display:inline-flex}.story-more-toggle{min-height:44px;padding:0 var(--space-3);color:var(--accent);font-family:var(--font-ui);cursor:pointer;background:0 0;border:0;margin-left:auto}.story-judge-bar{min-width:0;padding:var(--space-1) 0;display:flex}.story-judge-tool{min-height:var(--touch-min)}.story-return{margin-bottom:var(--space-3);display:flex}.story-return-link{min-height:var(--touch-min);padding-inline:var(--space-3);border:var(--line-w) solid var(--line);border-radius:var(--radius-sm)}.story-clock-summary{align-items:center;gap:var(--space-2);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);margin:0;display:inline-flex}.story-commands{gap:var(--space-2);min-width:0;padding:var(--space-3);border:var(--line-w) solid var(--speak-ic);border-radius:var(--radius-sm);background:var(--speak-ic-tint);display:grid}.story-commands-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.story-commands-title{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:700}.story-command-preview{gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--field-bg);display:grid}.story-command-preview-label{color:var(--accent);font-family:var(--font-ui);font-size:var(--text-meta);margin:0;font-weight:700}.story-command-preview-text{overflow-wrap:break-word;min-width:0;margin:0}.story-command-refusal{color:var(--danger);font-family:var(--font-ui);font-size:var(--text-sm);margin:0}.story-command-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.story-command-item{align-items:baseline;gap:var(--space-1) var(--space-2);min-width:0;font-family:var(--font-ui);font-size:var(--text-meta);color:var(--ink-muted);flex-wrap:wrap;display:flex}.story-command-item-active{color:var(--ink);font-weight:700}.story-command-usage{font-family:var(--font-mono,monospace);color:var(--speak-ic)}.story-command-summary{overflow-wrap:break-word;min-width:0}.story-commands-hint{font-family:var(--font-ui);font-size:var(--text-meta);color:var(--ink-muted)}.story-command-ready{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--field-bg);font-family:var(--font-ui);font-size:var(--text-sm);overflow-wrap:break-word;min-width:0;margin:0}.story-grace{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--field-bg);display:flex}.story-grace-label{overflow-wrap:break-word;min-width:0;font-family:var(--font-ui);font-size:var(--text-sm);flex:auto}.story-grace-count{font-family:var(--font-mono,monospace);font-variant-numeric:tabular-nums;color:var(--accent);flex:none;font-weight:700}.story-autocollapse{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-muted);display:flex}.entity-badge{align-items:center;gap:var(--space-1);min-width:0;max-width:100%;padding:0 var(--space-1);border-radius:var(--radius-pill);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink);line-height:1.3;display:inline-flex}.entity-badge-icon{flex:none;display:inline-flex}.entity-badge-text{align-items:baseline;gap:var(--space-1);min-width:0;display:inline-flex}.entity-badge-kind{white-space:nowrap;font-weight:700}.entity-badge-name{min-width:0;color:var(--ink-muted);overflow-wrap:break-word}.entity-badge-judge{background:var(--accent-tint-12)}.entity-badge-pj{background:var(--ic-tint-13)}.entity-badge-mob{background:#ff9b8a24}.entity-mark{align-items:center;gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--accent-tint-12);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-xs);white-space:nowrap;font-weight:700;line-height:1.4;display:inline-flex}.entity-mark-icon{flex:none;display:inline-flex}.bl-sheet{gap:var(--space-3);padding:var(--space-3);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);font-family:var(--font-ui);display:grid}.bl-sheet-head{align-items:center;gap:var(--space-3);display:flex}.bl-sheet-name{font-family:var(--font-display);font-size:var(--text-block-title);margin:0}.bl-sheet-block{gap:var(--space-2);display:grid}.bl-sheet-title{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--accent);margin:0;display:flex}.bl-aside{color:var(--ink-muted);font-size:var(--text-meta);margin:0}.bl-empty{color:var(--ink-muted);font-size:var(--text-sm);font-style:italic}.bl-error{color:var(--danger);margin:0}.bl-sheet-incomplete{gap:var(--space-2)}.bl-abilities{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.bl-ability{padding:var(--space-2);background:var(--surface-raise);border:1px solid var(--line);border-radius:var(--radius-sm)}.bl-ability dt{color:var(--ink-muted);font-size:var(--text-meta)}.bl-ability dd{align-items:baseline;gap:var(--space-2);margin:0;display:flex}.bl-ability-score{font-family:var(--font-display);font-size:var(--text-h1);line-height:1}.bl-ability-mod{font-size:var(--text-lg);color:var(--accent)}.bl-stats{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.bl-stat{padding:var(--space-2);background:var(--surface-raise);border:1px solid var(--line);border-radius:var(--radius-sm)}.bl-stat:nth-child(n+7){grid-column:1/-1}.bl-stat dt{align-items:center;gap:var(--space-1);color:var(--ink-muted);font-size:var(--text-meta);display:flex}.bl-stat dd{font-size:var(--text-lg);margin:0}.bl-saves{gap:var(--space-2) var(--space-4);font-size:var(--text-ui);flex-wrap:wrap;display:flex}.bl-xp{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.bl-xp-state{padding:0 var(--space-2);border:1px solid var(--accent);border-radius:var(--radius-pill);color:var(--accent);font-size:var(--text-meta)}.bl-xp-class{color:var(--ink-muted);font-size:var(--text-meta)}.bl-conflict{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--danger);border-radius:var(--radius-sm);display:grid}.bl-fields{gap:var(--space-2);margin:0;display:grid}.bl-field{padding:var(--space-2);background:var(--surface-raise);border:1px solid var(--line);border-radius:var(--radius-sm)}.bl-field dt{align-items:center;gap:var(--space-1);color:var(--ink-muted);font-size:var(--text-meta);display:flex}.bl-field dd{font-size:var(--text-body);overflow-wrap:anywhere;margin:0}.bl-roll-number{margin-left:var(--space-1);color:var(--speak-ic);font-size:var(--text-meta)}.bl-missing{margin-left:var(--space-2)}.bl-receipt{gap:var(--space-2);margin:0;display:grid}.bl-receipt-row dt{color:var(--ink-muted);font-size:var(--text-meta)}.bl-receipt-row dd{gap:var(--space-1);flex-wrap:wrap;margin:0;display:flex}.bl-die{--die-size:var(--tap-small);--die-edge:var(--speak-ic);--die-tint:var(--speak-ic-tint);--die-edge-width:var(--focus-ring-width);isolation:isolate;box-sizing:border-box;min-width:var(--die-size);min-height:var(--die-size);padding:var(--space-1);color:var(--ink);flex-direction:column;justify-content:center;align-items:center;line-height:1.1;display:inline-flex;position:relative}.bl-die-value{font-size:var(--text-base);font-weight:700;position:relative}.bl-die-sides{color:var(--ink-muted);font-size:var(--text-xs);position:relative}.bl-die-shape-default{background:linear-gradient(var(--die-tint), var(--die-tint)), var(--field-bg);border:var(--die-edge-width) solid var(--die-edge);border-radius:var(--radius-sm)}.bl-die:not(.bl-die-shape-default){background:var(--die-edge);clip-path:var(--die-shape)}.bl-die:not(.bl-die-shape-default):before{content:"";inset:var(--die-edge-width);z-index:-1;clip-path:var(--die-shape);background:linear-gradient(var(--die-tint), var(--die-tint)), var(--field-bg);position:absolute}.bl-die-shape-3{--die-shape:polygon(50% 0%, 100% 100%, 0% 100%);padding-top:var(--space-3)}.bl-die-shape-4{--die-shape:polygon(0% 0%, 100% 0%, 50% 100%);padding-bottom:var(--space-3)}.bl-die-shape-5{--die-shape:polygon(50% 0%, 98% 35%, 79% 90%, 21% 90%, 2% 35%)}.bl-die-shape-6{--die-shape:polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)}.bl-die-shape-7{--die-shape:polygon(50% 0%, 89% 19%, 99% 61%, 72% 95%, 28% 95%, 1% 61%, 11% 19%)}.bl-die-shape-8{--die-shape:polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%)}.bl-die-shape-10{--die-shape:polygon(50% 0%, 100% 40%, 50% 100%, 0% 40%);padding-inline:var(--space-2)}.bl-die-shape-12{--die-shape:polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%)}.bl-die-shape-14{--die-shape:polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%)}.bl-die-shape-16{--die-shape:polygon(0% 0%, 100% 0%, 100% 60%, 50% 100%, 0% 60%)}.bl-die-shape-20{--die-shape:polygon(25% 3%, 75% 3%, 100% 50%, 75% 97%, 25% 97%, 0% 50%)}.bl-die-shape-24{--die-shape:polygon(33% 0%, 67% 0%, 67% 33%, 100% 33%, 100% 67%, 67% 67%, 67% 100%, 33% 100%, 33% 67%, 0% 67%, 0% 33%, 33% 33%)}.bl-die-shape-30{--die-shape:polygon(50% 0%, 61% 22%, 85% 15%, 78% 39%, 100% 50%, 78% 61%, 85% 85%, 61% 78%, 50% 100%, 39% 78%, 15% 85%, 22% 61%, 0% 50%, 22% 39%, 15% 15%, 39% 22%)}.bl-die-base{--die-edge:var(--speak-ic);--die-tint:var(--ic-tint-18)}.bl-die-result{--die-edge:var(--accent);--die-tint:var(--accent-tint-18)}.bl-die-clamped{--die-edge:var(--danger);--die-tint:var(--accent-tint-18);--die-edge-width:calc(var(--focus-ring-width) * 2)}.bl-die-inactive{--die-edge:var(--line);--die-tint:transparent;color:var(--ink-muted)}.bl-die-inactive .bl-die-value{font-weight:400}.bl-die-dropped{--die-edge:var(--line);opacity:.55}.bl-die-dropped .bl-die-value{text-decoration:line-through}.bl-provenance{gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.bl-prov-rolled{border-color:var(--speak-ic);color:var(--speak-ic)}.bl-prov-entered{border-color:var(--speak-judge);color:var(--speak-judge)}.bl-marks{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.bl-edit{gap:var(--space-3);display:grid}.bl-edit input,.bl-edit select,.bl-edit textarea{min-height:var(--touch-min);box-sizing:border-box;width:100%}.bl-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.dice-badge{gap:var(--space-2);margin-top:var(--space-2);display:grid}.dice-layer{min-width:0;margin:0}.dice-layer-label{font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);display:block}.dice-layer-declared{padding-left:var(--space-3);border-left:2px dashed var(--speak-ic)}.dice-layer-dice{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-raise)}.dice-layer-dice .roll-result,.dice-layer-rulings .rulings{margin-top:var(--space-1)}.dice-layer-rulings .dice-layer-label{color:var(--speak-judge)}.dice-layer-rulings{padding-left:var(--space-3);border-left:3px solid var(--speak-judge)}.dice-note{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-meta);overflow-wrap:anywhere;margin:0}.dice-reason{padding:var(--space-2) var(--space-3);border-left:var(--space-1) solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-tint-8);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);margin:0}.dice-composer,.dice-history{gap:var(--space-3);min-width:0;display:grid}.dice-lock{gap:var(--space-3);border:0;min-width:0;margin:0;padding:0;display:grid}.dice-lock:disabled{opacity:.6}.dice-step:focus-visible,.dice-segment:focus-within{outline:3px solid var(--accent);outline-offset:2px}.dice-expression{font-family:ui-monospace,monospace}.dice-group{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.dice-group legend,.dice-group-label{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);padding:0}.dice-stepper{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.dice-step{min-width:var(--touch-min);min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);cursor:pointer;background:0 0}.dice-step:disabled{opacity:.55;cursor:not-allowed}.dice-step-value{min-width:5.5rem;color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);text-align:center}.dice-preview{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);overflow-wrap:anywhere;margin:0}.dice-actions,.dice-segments{gap:var(--space-2);flex-wrap:wrap;display:flex}.dice-segment{min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex;position:relative}.dice-segment input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.dice-segment-on{border-color:var(--accent);background:var(--accent-tint-14);font-weight:700}.dice-segment:disabled{opacity:.55;cursor:not-allowed}.dice-recipients{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.dice-check{align-items:center;gap:var(--space-3);min-height:var(--touch-min);font-family:var(--font-ui);font-size:var(--text-base);display:flex}.dice-check input{width:var(--touch-min);height:var(--touch-min);flex:none;margin:0}.dice-chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.dice-chip{align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-2) 0 var(--space-3);border-radius:var(--radius-md);background:var(--speak-ic-tint);max-width:100%;display:inline-flex}.dice-chip .action-button{min-height:var(--touch-min)}.dice-chip-text{overflow-wrap:anywhere;min-width:0;display:grid}.dice-chip-kind{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase}.dice-chip-label{font-family:var(--font-ui);font-size:var(--text-ui)}.dice-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.dice-entry{padding:var(--space-3);padding-left:var(--space-3);border-left:var(--space-1) dashed var(--speak-ic);border-radius:var(--radius-sm);background:var(--surface-sunken);min-width:0}.dice-story-link{margin-top:var(--space-2);color:var(--ink);justify-self:start}.dice-entry-private{border-left-style:solid;border-left-color:var(--speak-judge)}.dice-entry-head{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.dice-entry .dice-actions{margin-top:var(--space-2)}.dice-ruling-form{gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-3);border-left:3px solid var(--speak-judge);background:var(--surface-raise);display:grid}.dice-request{justify-items:start;gap:var(--space-2);overflow-wrap:anywhere;min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--speak-ic-tint);font-family:var(--font-ui);font-size:var(--text-ui);display:grid}.dice-request-done{opacity:.7}.dice-request code{font-family:ui-monospace,monospace}.chain-roll{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md,8px);background:var(--surface-raise);min-width:0;display:grid}.chain-roll-title{font-family:var(--font-ui);font-size:var(--text-ui);margin:0}.chain-roll-actors{gap:var(--space-2);flex-wrap:wrap;display:flex}.chain-roll-written{gap:var(--space-2);display:grid}.chain-roll-action{display:grid}.chain-roll-action .action-button{min-height:52px;font-size:var(--text-lg,1.25rem);justify-content:center}.roll-hero{gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md,8px);background:var(--accent-tint-8);text-align:center;display:grid}.roll-hero-total{font-family:var(--font-ui);font-variant-numeric:tabular-nums;margin:0;font-size:3rem;line-height:1}.roll-hero-detail,.roll-hero-declaration{color:var(--ink-muted);margin:0}.roll-hero-actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.dice-chain{gap:var(--space-2);min-width:0;display:grid}.dice-chain-label{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);margin:0}.dice-chain-summary{align-items:center;gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.dice-chain-readout{min-width:0;color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);overflow-wrap:anywhere;grid-area:1/1/auto/-1}.dice-chain-step{min-width:var(--touch-min);min-height:var(--touch-min);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);cursor:pointer;background:0 0}.dice-chain-step:disabled{opacity:.55;cursor:not-allowed}.dice-chain-step:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.dice-chain-arrow{color:var(--ink-muted)}.dice-chain-scroll{padding-bottom:var(--space-1);position:relative;overflow:auto hidden}.dice-chain-scroll:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.dice-chain-strip{gap:var(--space-2);width:max-content;margin:0;padding:0;list-style:none;display:flex}.dice-chain-strip .bl-die{--die-size:var(--touch-min)}.dice-chain-option,.dice-chain-cell{align-items:center;gap:var(--space-1);min-width:var(--touch-min);flex-direction:column;display:inline-flex}.dice-chain-option{cursor:pointer;background:0 0;border:0;padding:0}.dice-chain-option:disabled{cursor:default}.dice-chain-option:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}.dice-chain-caption{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-xs);text-align:center;min-height:1.2em}.dice-chain-stop,.chain-preview-stop,.dice-chain-stopped{padding:var(--space-2) var(--space-3);border:1px solid var(--danger);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);margin:0}.dice-chain-readonly .dice-chain-step{display:none}.chain-preview{gap:var(--space-1);margin:0;display:grid}.chain-preview-line{color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);margin:0}.chain-preview-label{color:var(--ink-muted)}.chain-preview-parts{padding-left:var(--space-4);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-sm);margin:0}.chain-preview-error{margin:0}.dice-chain-block{gap:var(--space-2);min-width:0;display:grid}.check-training{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.check-training legend{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);padding:0}.check-training-options{gap:var(--space-2);display:grid}.check-training-option{align-items:center;gap:var(--space-2);min-height:var(--touch-min);display:flex}.check-training-face{display:inline-flex}.characters-surface{gap:var(--space-4);max-width:var(--page-max);display:grid}.characters-head{gap:var(--space-1);display:grid}.characters-title{font-family:var(--font-display);font-size:var(--text-block-title);margin:0}.characters-list-view{gap:var(--space-5);display:grid}.characters-section{gap:var(--space-3);display:grid}.characters-section-title{font-family:var(--font-display);font-size:var(--text-base);margin:0}.characters-count{color:var(--ink-muted);font-weight:400}.characters-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.characters-note{color:var(--ink-muted);margin:0}.characters-banner{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raise);color:var(--ink-muted);margin:0}.characters-error{gap:var(--space-2);color:var(--danger);margin:0;display:grid}.characters-disclosure{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3);background:var(--panel)}.characters-disclosure>summary{cursor:pointer;min-height:var(--touch-min);align-items:center;font-weight:700;display:flex}.characters-disclosure[open]>summary{margin-bottom:var(--space-3)}.characters-detail{gap:var(--space-4);display:grid}.characters-detail-bar{display:flex}.characters-detail-title{font-family:var(--font-display);font-size:var(--text-block-title);margin:0}.characters-detail-title:focus-visible{outline:medium solid var(--accent);outline-offset:var(--space-1)}.characters-surface [hidden]{display:none}.characters-shortcuts{gap:var(--space-2);flex-wrap:wrap;display:flex}.characters-primary{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.characters-retired-head{font-family:var(--font-display);font-size:var(--text-block-title);margin:0}.characters-retired-panel{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.people-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);min-width:0;display:grid;position:relative}.people-card-archived{opacity:.75}.people-card-head{align-items:center;gap:var(--space-3);display:flex}.people-card-icon{min-width:var(--touch-min);flex:none;justify-content:center;align-items:center;display:inline-flex}.people-card-title{flex:1;min-width:0}.people-card-title h3,.people-card-title h4{font-family:var(--font-display);font-size:var(--text-base);overflow-wrap:anywhere;margin:0}.people-meta{color:var(--ink-muted);font-size:var(--text-meta);margin:0}.people-abilities{font-size:var(--text-ui);overflow-wrap:anywhere;margin:0}.people-note{font-family:var(--font-prose);font-size:var(--text-body);overflow-wrap:anywhere;margin:0}.people-judge-note{color:var(--speak-judge)}.people-reason{color:var(--danger);font-size:var(--text-meta);margin:0}.people-badge{align-items:center;gap:var(--space-1);padding:0 var(--space-2);border:1px solid var(--ink-muted);border-radius:var(--radius-pill);color:var(--ink-muted);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;flex:none;font-weight:700;display:inline-flex}.people-badge-ok,.people-state-accepted,.people-status-active,.people-outcome-survived{border-color:var(--speak-ic);color:var(--speak-ic)}.people-badge-warn,.people-state-proposed,.people-status-incapacitated,.people-outcome-ongoing{border-color:var(--accent);color:var(--accent)}.people-state-declined,.people-status-dead,.people-outcome-dead,.people-mark-dead{border-color:var(--danger);color:var(--danger)}.people-marks{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.people-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.people-form{gap:var(--space-3);display:grid}.people-log-slot{padding-top:var(--space-2);border-top:1px solid var(--line)}.character-card .stamp{top:auto;right:var(--space-3);bottom:var(--space-3);pointer-events:none}.card-open{display:contents}.people-field-error{color:var(--danger);font-size:var(--text-meta);margin:0}.xp-form{gap:var(--space-3);display:grid}.xp-targets{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.xp-targets legend{padding:0;font-weight:700}.xp-target{align-items:center;gap:var(--space-3);min-height:var(--touch-min);padding:0 var(--space-2);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-raise);display:flex}.xp-target input{width:var(--touch-min);height:var(--touch-min);accent-color:var(--accent);flex:none;margin:0}.xp-target-name{overflow-wrap:anywhere;flex:1;min-width:0}.xp-level-up{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);display:grid}.xp-list{margin:0;padding:0;list-style:none}.xp-level-up-row{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--accent);border-radius:var(--radius-sm);display:grid}.adventure-log{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.adventure-entry{gap:var(--space-2);padding:var(--space-3);border-left:3px solid var(--line);background:var(--surface-sunken);border-radius:var(--radius-sm);display:grid}.adventure-entry[data-outcome=dead]{border-left-color:var(--danger)}.adventure-entry[data-outcome=survived]{border-left-color:var(--speak-ic)}.dice-carousel{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.dice-carousel-readout{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-muted)}.dice-carousel-scroll{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;min-width:0;max-width:100%;padding-inline:50%;padding-block:var(--space-2);overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.dice-carousel-scroll::-webkit-scrollbar{display:none}.dice-carousel-strip{align-items:center;gap:var(--space-3);display:inline-flex}.dice-carousel-option{min-width:64px;min-height:72px;padding:var(--space-1);border-radius:var(--radius-md);cursor:pointer;scroll-snap-align:center;opacity:.6;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;transition:transform .16s,opacity .16s;display:inline-flex;transform:scale(.88)}.dice-carousel .bl-die{--die-size:56px}.dice-carousel .bl-die-value{border-radius:var(--radius-sm);background:var(--surface-raise);font-size:var(--text-base);padding:0 .2em}.dice-carousel-option:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.dice-carousel-option[data-center=true]{border-color:var(--accent-tint-45)}.dice-carousel-option[data-active=true]{opacity:1;background:var(--accent-tint-12);border-color:var(--accent);transform:scale(1.18)}@media (prefers-reduced-motion:reduce){.dice-carousel-option{transition:none}}.scene-public-info{color:var(--text);overflow-wrap:anywhere;margin:0;line-height:1.5}.scene-public-info-empty{color:var(--text-muted);font-style:italic}.scene-participants,.scene-clocks,.scene-mechanics,.scene-actor-admin{gap:var(--space-2);min-width:0;margin:0;padding:0;list-style:none;display:grid}.scene-participant,.scene-actor-admin-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.scene-actor-admin-row{justify-content:space-between}.scene-clock{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.scene-clock-name{overflow-wrap:anywhere;font-weight:600}.scene-clock-progress{color:var(--text-muted);font-variant-numeric:tabular-nums}.scene-mechanic{gap:var(--space-1);display:grid}.scene-mechanic-label{font-weight:600}.scene-mechanic-detail{color:var(--text-muted);overflow-wrap:anywhere;line-height:1.45}.scene-toolbox{border:var(--border-width) solid var(--border);border-radius:var(--radius-2);padding:var(--space-3);gap:var(--space-3);min-width:0;display:grid}.scene-toolbox-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.scene-toolbox-body{gap:var(--space-3);min-width:0;display:grid}.scene-dialog-backdrop{background:color-mix(in srgb, var(--surface-strong,#000) 55%, transparent);padding:var(--space-4);z-index:var(--z-modal);place-items:center;display:grid;position:fixed;inset:0}.scene-dialog{background:var(--field-bg,var(--surface));color:var(--text);border:var(--border-width) solid var(--border);border-radius:var(--radius-2);padding:var(--space-4);gap:var(--space-3);width:100%;max-width:28rem;box-shadow:var(--shadow-2,0 8px 24px #0000004d);min-width:0;display:grid}.scene-dialog-title{font-size:var(--font-size-3);overflow-wrap:anywhere;margin:0}.scene-dialog-consequence{color:var(--text);margin:0;line-height:1.5}.scene-dialog-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.admin-surface{gap:var(--space-4);display:grid}.admin-group{gap:var(--space-3);display:grid}.admin-group-empty{color:var(--ink-muted);font-size:var(--text-ui);margin:0}.admin-row{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--line-w) solid var(--line);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.admin-row-name{overflow-wrap:anywhere;min-width:0;font-weight:600}.admin-row-meta{color:var(--ink-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.admin-row-action{margin-left:auto}.confirm-dialog-backdrop{z-index:var(--z-modal);padding:var(--space-4);background:var(--bg-tint-55);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.confirm-dialog{background:var(--surface-raise);color:var(--ink);border:var(--line-w) solid var(--line);border-radius:var(--radius-md);box-shadow:0 8px 24px var(--shadow-35);padding:var(--space-4);width:min(28rem,100%);max-height:calc(100vh - var(--space-6));overflow-y:auto}.confirm-dialog-form{gap:var(--space-3);display:grid}.confirm-dialog-title{font-size:var(--text-lg,1.125rem);margin:0}.confirm-dialog-consequence{color:var(--ink-muted);overflow-wrap:anywhere;margin:0}.site-form{gap:var(--space-3);display:grid}.site-form>.field{margin-bottom:0}.site-form-lead{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-body);margin:0}.campaign-cards{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.campaign-cards>.card{margin:0}.campaign-card-link{gap:var(--space-2);min-height:var(--touch-min);color:inherit;text-decoration:none;display:grid}.campaign-card-link:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}.campaign-card-head{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.campaign-card-title{overflow-wrap:anywhere;flex:10rem;min-width:0;margin:0}.campaign-card-badges{gap:var(--space-2);flex-wrap:wrap;display:flex}.campaign-card-description{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-body);overflow-wrap:anywhere;margin:0}.campaign-card-enter{color:var(--accent);font-family:var(--font-ui);font-size:var(--text-meta);margin:0;font-weight:600}.invite-letter{padding-inline:0}.invite-letter .page-section-heading h2{letter-spacing:.02em;text-transform:uppercase;font-size:clamp(1.5rem,6vw,2.2rem);font-weight:700;line-height:1.15}.invite-letter-body{gap:var(--space-2);padding:var(--space-5);display:grid}.invite-letter-heading{margin:var(--space-3) 0 0;color:var(--accent);font-family:var(--font-ui);font-size:var(--text-body);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.invite-letter-text{font-size:var(--text-widget);margin:0;line-height:1.55}.invite-letter-signature{margin:var(--space-3) 0 0;color:var(--ink-muted);font-style:italic}.title-plaque{align-items:center;gap:var(--space-2);min-height:2.4rem;padding:var(--space-2) var(--space-4);color:#241a10;font-family:var(--font-display,Georgia, serif);font-size:var(--text-lg,1.1rem);border-style:solid;border-width:.875rem 1.25rem;border-image:url(/assets/normal-ui/board-parchment.png) 40 28 fill;line-height:1.1;display:inline-flex}.title-plaque-icon{background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.title-plaque-icon .pixel-item{width:2.5rem;height:2.5rem}.roster-create{gap:var(--space-3);display:grid}.roster-create-lead{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-ui);max-width:48ch;margin:0}@font-face{font-family:Metamorphous;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/metamorphous-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Metamorphous;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/metamorphous-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}html{font-size:112.5%}:root{--ink:#f4ead5;--ink-muted:#c9c4b8;--accent:#efb85b;--accent-ink:#1a1206;--bg:#101522;--panel:#101522eb;--surface-raise:#1a1e30eb;--surface-menu:#1a1e30;--line:#f4ead538;--danger:#ff9b8a;--field-bg:#0b0f19;--speak-ic:#7fb3ff;--speak-judge:#c9a0ff;--speak-ic-tint:#7fb3ff1f;--surface-sunken:#12182cd9;--bg-tint-45:#10152273;--bg-tint-55:#1015228c;--bg-tint-78:#101522c7;--surface-raise-94:#1a1e30f0;--field-tint-88:#0b0f19e0;--field-tint-94:#0b0f19f0;--field-tint-96:#0b0f19f5;--ic-tint-13:#7fb3ff21;--ic-tint-18:#7fb3ff2e;--ic-tint-28:#7fb3ff47;--accent-tint-7:#efb85b12;--accent-tint-8:#efb85b14;--accent-tint-10:#efb85b1a;--accent-tint-12:#efb85b1f;--accent-tint-14:#efb85b24;--accent-tint-18:#efb85b2e;--accent-tint-42:#efb85b6b;--accent-tint-45:#efb85b73;--shadow-30:#0000004d;--shadow-32:#00000052;--shadow-35:#00000059;--shadow-36:#0000005c;--state-alive:var(--ink-muted);--state-hurt:var(--accent);--state-dead:var(--danger);--success:#7bd88f;--font-prose:Georgia, "Times New Roman", serif;--font-ui:system-ui, sans-serif;--font-display:"Metamorphous", Georgia, "Times New Roman", serif;--text-xs:.7rem;--text-sm:.75rem;--text-meta:.85rem;--text-ui:.9rem;--text-body:.95rem;--text-base:1rem;--text-lg:1.2rem;--text-h1:clamp(1.5rem, 4.5vw, 2rem);--text-block:1.2rem;--text-block-title:clamp(1.2rem, 3vw, 1.4rem);--text-prose:1.25rem;--text-widget:1.05rem;--text-widget-meta:.9rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2.5rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-pill:999px;--app-max:36rem;--page-max:var(--app-max);--touch-min:44px;--tap-small:36px;--motion-flicker:.6s steps(6, jump-none);--motion-ui:.16s ease-out;--motion-enter:.24s ease-out;--focus-ring-width:3px;--focus-ring-offset:2px;--composition-min:64rem;--composition-max:84rem;--composition-gap:var(--space-4);--composition-aside:24rem;--nav-marker:var(--space-1);--nav-reserve:6rem;--surface-max:var(--app-max);--zone-narrow-max:30rem;--line-w:1px;--shell-bar-height:4.5rem;--header-height:calc(var(--shell-bar-height) + (2 * var(--space-2)) + var(--line-w));--text-page-title:clamp(1.4rem, 4vw, 1.75rem);--z-content:0;--z-raised:10;--z-bar:20;--z-header:30;--z-popover:40;--z-modal:50;--z-skip-link:60;--tool-tile-min:6.5rem;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--ink);background:var(--bg);font-family:var(--font-prose);font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}#root{background:linear-gradient(var(--bg-tint-55), var(--panel) 60%, var(--bg)), url(/assets/castle/ParFull.png) center top / 100% auto repeat-x, var(--bg);min-height:100vh;image-rendering:pixelated}.pixel{image-rendering:pixelated;image-rendering:crisp-edges;vertical-align:middle;display:inline-block}.pixel-item{flex:none}.lamps-bundle{display:inline-block;position:relative}.lamps-bundle-arm{transform-origin:50% 100%;place-items:end center;display:grid;position:absolute;inset:0}.blue-torch{filter:hue-rotate(195deg)saturate(1.3)brightness(1.1);background-repeat:no-repeat;animation:.6s steps(6,jump-none) infinite torch-flicker}@keyframes torch-flicker{0%{background-position-x:0%}to{background-position-x:71.4286%}}@media (prefers-reduced-motion:reduce){.blue-torch{animation:none}}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .5rem;font-family:system-ui,sans-serif;font-size:.8rem;font-weight:700}h1{margin:0;font-size:clamp(1.8rem,7vw,3rem);font-weight:500;line-height:1.05}h2{margin:0;font-size:1.2rem;font-weight:500}.lead,.muted,.hint,.meta{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-body)}.hint,.meta{font-size:var(--text-meta);margin:var(--space-2) 0 0}.card{border:var(--line-w) solid var(--line);border-radius:var(--radius-md);background:var(--panel);padding:calc(var(--space-4) + var(--space-1));margin:0 0 var(--space-4)}.field{gap:var(--space-2);margin-bottom:var(--space-4);font-family:var(--font-ui);font-size:var(--text-ui);display:grid}.field input,.field textarea{width:100%;min-height:var(--touch-min);padding:var(--space-3);border:var(--line-w) solid var(--line);border-radius:var(--radius-sm);background:var(--field-bg);color:var(--ink);font:inherit;font-size:var(--text-base)}.field input:focus-visible,.field textarea:focus-visible,.button:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-3) var(--space-4);border:var(--line-w) solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-base);cursor:pointer;background:0 0;display:inline-flex}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.button-block{width:100%}.button:disabled{opacity:.55;cursor:not-allowed}.error{margin:0 0 var(--space-4);color:var(--danger);font-family:var(--font-ui)}.campaign-list{margin:0;padding:0;list-style:none}.campaign-head{align-items:center;gap:.6rem;display:flex}.campaign-head h2{overflow-wrap:anywhere;flex:1;min-width:0}.role{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-pill);border:var(--line-w) solid var(--line);padding:.2rem .5rem;font-family:system-ui,sans-serif;font-size:.75rem;font-weight:700}.role-judge{color:var(--accent);border-color:var(--accent)}.role{align-items:center;gap:.3rem;display:inline-flex}.empty{text-align:center;justify-items:center;gap:.75rem;display:grid}.actions{justify-content:flex-end;gap:var(--space-2);display:flex}@container surface (width<=22rem){.actions{flex-direction:column-reverse}.actions .button{width:100%}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;margin:1.5rem 0 .75rem;display:flex}.section-head>*{min-width:0}.link-card{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.button-icon{min-width:44px;padding:.4rem;font-size:1.2rem}.button-small{min-height:var(--tap-small);padding:var(--space-1) var(--space-3);font-size:var(--text-meta)}.role-closed{color:var(--ink-muted)}.member-list{gap:.4rem;margin:0;padding:0;font-family:system-ui,sans-serif;list-style:none;display:grid}.member-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.invite-link .token{background:var(--field-bg);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:.5rem;margin:.5rem 0;padding:.6rem;font-size:.8rem;display:block}.feed{gap:.75rem;margin-bottom:1rem;display:grid}.post{border:1px solid var(--line);border-left:4px solid var(--line);background:var(--panel);border-radius:.6rem;padding:.75rem .9rem}.post-narration{border-left-color:var(--accent)}.post-declared_action{border-left-color:var(--speak-ic)}.post-judge_ruling{border-left-color:var(--speak-judge)}.post-private{background:var(--surface-raise)}.post-head{color:var(--ink-muted);flex-wrap:wrap;align-items:baseline;gap:.4rem .6rem;font-family:system-ui,sans-serif;font-size:.85rem;display:flex}.post-head strong{color:var(--ink)}.post-head time{margin-left:auto;font-size:.75rem}.badge{align-items:center;gap:var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);border:var(--line-w) solid var(--speak-ic);color:var(--speak-ic);font-weight:700;display:inline-flex}.badge-override{border-color:var(--speak-judge);color:var(--speak-judge)}.post-body{overflow-wrap:anywhere;margin-top:.4rem}.post-body p{margin:0 0 .6rem}.post-body blockquote{border-left:3px solid var(--accent);color:var(--ink-muted);margin:0 0 .6rem;padding-left:.75rem}.post-body a{color:var(--speak-ic)}.post-actions{justify-content:flex-end;display:flex}.composer{background:linear-gradient(transparent, var(--bg) 20%);padding:.75rem 0 .5rem;position:sticky;bottom:0}.composer-controls{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.field-inline select{border:1px solid var(--line);background:var(--field-bg);min-height:44px;color:var(--ink);font:inherit;border-radius:.5rem;padding:.4rem .6rem}.recipients{border:1px solid var(--line);border-radius:.5rem;margin:0 0 .75rem;padding:.5rem .75rem;font-family:system-ui,sans-serif;font-size:.9rem}.check{align-items:center;gap:.5rem;min-height:36px;display:flex}.subhead{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:1rem 0 .5rem;font-family:system-ui,sans-serif;font-size:.85rem}.character{position:relative}.character-dead{opacity:.85}.stamp{border:3px solid var(--danger);color:var(--danger);letter-spacing:.2em;opacity:.9;border-radius:.3rem;padding:.2rem .6rem;font-family:system-ui,sans-serif;font-size:1.1rem;font-weight:900;position:absolute;top:.6rem;right:.8rem;transform:rotate(-12deg)}.post-actions select{border:1px solid var(--line);background:var(--field-bg);min-height:36px;color:var(--ink);font:inherit;border-radius:.5rem;font-size:.85rem}.clocks{gap:.5rem;margin-bottom:.75rem;display:grid}.clock{border:1px solid var(--line);background:var(--panel);border-radius:.6rem;padding:.6rem .8rem}.clock-judge{border-style:dashed}.clock-head{align-items:center;gap:.5rem;font-family:system-ui,sans-serif;font-size:.9rem;display:flex}.clock-count{color:var(--ink-muted);margin-left:auto}.clock-segments{gap:4px;margin-top:.4rem;display:flex}.segment{border:1px solid var(--line);background:var(--field-bg);border-radius:3px;flex:1;height:12px}.segment.filled{background:var(--danger);border-color:var(--danger)}.clock-actions{justify-content:flex-end;gap:.4rem;margin-top:.4rem;display:flex}@media (width<=480px){.composer-controls{grid-template-columns:1fr}}.roll{border:1px dashed var(--speak-ic);background:var(--surface-sunken);border-radius:10px;margin:.5rem 0 0;padding:.5rem .7rem;font-family:system-ui,sans-serif;font-size:.9rem}.roll-private{border-style:solid;border-color:var(--speak-judge)}.roll-head{flex-wrap:wrap;align-items:center;gap:.4rem .6rem;display:flex}.roll-dice{color:var(--speak-ic);font-size:1.1rem}.roll-expression,.roll-request code{color:var(--ink);background:var(--speak-ic-tint);border-radius:4px;padding:0 .35rem;font-family:ui-monospace,monospace;font-size:.85rem}.roll-declaration{color:var(--ink-muted);margin:.35rem 0 0;font-style:italic}.roll-result{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.4rem 0 0;display:flex}.roll-faces{flex-wrap:wrap;gap:.3rem;display:flex}.die{border:1px solid var(--speak-ic);border-radius:6px;flex-direction:column;align-items:center;min-width:2.1rem;padding:.15rem .35rem;font-weight:700;line-height:1.1;display:inline-flex}.die small{color:var(--ink-muted);font-size:.6rem;font-weight:400}.die-dropped{opacity:.45;text-decoration:line-through}.roll-modifier{color:var(--ink-muted);align-self:center}.roll-total{color:var(--ink);margin-left:auto;font-size:1.2rem}.rulings{border-left:3px solid var(--speak-judge);margin:.5rem 0 0;padding:.4rem 0 0 .6rem;list-style:none}.ruling{margin:0 0 .3rem}.ruling-who{color:var(--speak-judge);font-weight:700}.ruling .badge{margin-left:.4rem}.ruling-form{gap:.4rem;margin-top:.5rem;display:grid}.roll-request{background:var(--speak-ic-tint);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.4rem 0 0;padding:.35rem .6rem;font-family:system-ui,sans-serif;font-size:.85rem;display:flex}.roll-request-done{opacity:.7}.roll-composer{grid-template-columns:1fr auto;align-items:end;gap:.5rem;margin-top:.5rem;display:grid}.roll-composer input{font-family:ui-monospace,monospace}.toolkit{margin:.5rem 0;font-family:system-ui,sans-serif;font-size:.85rem}.toolkit-body{border:1px solid var(--speak-judge);background:var(--surface-raise);border-radius:10px;margin-top:.5rem;padding:.6rem .7rem}.toolkit-create{gap:.4rem;margin-bottom:.6rem;display:grid}.toolkit-list,.toolkit-duplicates{margin:0;padding:0;list-style:none}.toolkit-duplicates{border-left:2px solid var(--speak-judge);margin:.2rem 0 .4rem 1rem;padding-left:.6rem}.toolkit-actor{margin:.35rem 0}.toolkit-line{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.toolkit-kind{color:var(--speak-judge)}.toolkit-enemy>.toolkit-line .toolkit-kind{color:var(--danger)}.toolkit-stat{color:var(--ink-muted);font-family:ui-monospace,monospace;font-size:.78rem}.toolkit-face{min-height:2rem;font-size:.8rem}.toolkit-actions{flex-wrap:wrap;gap:.25rem;margin-left:auto;display:flex}.toolkit-edit{flex-wrap:wrap;gap:.35rem;margin:.3rem 0 0 1.4rem;display:flex}.toolkit-edit input{flex:12rem;font-family:ui-monospace,monospace}.badge-unread{border-color:var(--accent);color:var(--accent);text-transform:none;letter-spacing:0}.dcc-check .composer-controls{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.sheet{border:1px solid var(--accent);background:var(--surface-raise);border-radius:10px;margin:.5rem 0 0;padding:.6rem .7rem;font-family:system-ui,sans-serif;font-size:.85rem}.sheet dl{margin:0}.sheet dt{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.sheet dd{margin:0}.sheet-grid{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.sheet-abilities,.sheet-stats{grid-template-columns:repeat(2,1fr);gap:.3rem .6rem;display:grid}.sheet-text{gap:.3rem;margin-top:.6rem;display:grid}@media (width<=480px){.sheet-grid{grid-template-columns:1fr}}.adventure-log{margin-top:.75rem}.adventure-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.adventure-entry{border-left:3px solid var(--line);padding-left:.6rem}.adventure-summary{white-space:pre-wrap;margin:.25rem 0}.adventure-judge-note{margin:.25rem 0;font-style:italic}.xp-targets{border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;gap:.5rem 1rem;padding:.5rem .75rem;display:flex}.xp-target{align-items:center;gap:.35rem;min-height:44px;display:inline-flex}.state-dot{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);display:inline-flex}.state-dot-mark{border-radius:var(--radius-pill);background:var(--state-alive);width:.6em;height:.6em}.state-hurt .state-dot-mark{background:var(--state-hurt)}.state-dead .state-dot-mark{background:var(--state-dead)}.state-dead{color:var(--ink-muted)}.stat-pip{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-ui);display:inline-flex}.stat-pip-label{color:var(--ink-muted)}.stat-pip-value{font-variant-numeric:tabular-nums}.speaker-line{align-items:baseline;gap:var(--space-2);display:inline-flex}.speaker-name{color:var(--ink)}.speaker-register{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-muted)}.speaker-state{color:var(--state-dead)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wordmark{font-family:var(--font-display);letter-spacing:.01em;text-transform:none;font-weight:400}.action-button{align-items:center;gap:var(--space-2);display:inline-flex}.action-glyph{flex:none;display:inline-flex}.action-glyph-img{image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block}.action-button-icon-only .action-glyph{margin:0}.info-links,.footer-links{align-items:center;gap:var(--space-2);font-family:var(--font-ui);display:flex}.text-link:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.page-header.page-header-hero{padding:var(--space-6) 0 var(--space-5);border-bottom:1px solid var(--line);flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.page-header.page-header-hero h1{letter-spacing:-.035em;max-width:15ch;font-size:clamp(2.2rem,11cqi,3.4rem)}.page-header-lead{max-width:43rem;margin:var(--space-5) 0;color:var(--ink-muted);font-family:var(--font-ui);font-size:clamp(1.12rem,2.2vw,1.35rem);line-height:1.7}.page-header.page-header-hero .button{text-decoration:none}.page-header.page-header-hero.page-header-with-aside{gap:calc(var(--space-6) + var(--space-5));grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);align-items:center;display:grid}.page-header-copy{min-width:0}.hero-brand-row{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex;container-type:inline-size}.hero-brand-mark{border:1px solid var(--ic-tint-28);background:radial-gradient(circle, var(--ic-tint-18), transparent 68%);width:12rem;height:12rem;box-shadow:0 0 2.5rem var(--ic-tint-13);border-radius:50%;flex:none;place-items:center;display:grid}.hero-brand-mark .lamps-bundle{transform:translateY(6%)}.hero-brand-row .eyebrow{max-width:18rem;font-size:var(--text-ui);margin:0;line-height:1.55}.page-header-with-aside .page-header-lead{margin-bottom:var(--space-5)}.campaign-preview,.campaign-memory{min-width:0;font-family:var(--font-ui);margin:0}.campaign-preview>figcaption,.campaign-memory>figcaption{gap:var(--space-1);margin-bottom:var(--space-3);flex-direction:column;display:flex}.campaign-preview>figcaption span,.campaign-memory>figcaption span{color:var(--accent);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.campaign-preview>figcaption strong,.campaign-memory>figcaption strong{color:var(--ink);font-family:var(--font-prose);font-size:var(--text-lg);font-weight:500}.preview-window{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--field-tint-94);box-shadow:0 1.5rem 4rem var(--shadow-36);overflow:hidden;transform:rotate(1deg)}.preview-campaign-head{min-height:4.75rem;padding:var(--space-3) var(--space-4) var(--space-3) 4.5rem;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--line);background:linear-gradient(90deg, var(--accent-tint-8), transparent);display:flex;position:relative}.preview-flag{top:0;left:var(--space-3);position:absolute}.preview-campaign-head>div,.preview-scene-title>div{flex-direction:column;flex:1;min-width:0;display:flex}.preview-campaign-head span,.preview-scene-title span,.preview-speaker span,.preview-roll span,.preview-resume{color:var(--ink-muted);font-size:var(--text-widget-meta)}.preview-campaign-head strong,.preview-scene-title strong{color:var(--ink);font-size:var(--text-widget);overflow-wrap:anywhere}.preview-status{align-items:center;gap:var(--space-1);flex:none;display:inline-flex}.preview-status span{color:var(--accent)}.preview-scene-title{align-items:center;gap:var(--space-3);min-height:4rem;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--line);background:var(--surface-raise);display:flex}.pixel-door{flex:none}.preview-conversation{gap:var(--space-3);padding:var(--space-4);display:grid}.preview-post{max-width:90%;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel)}.preview-post-judge{border-left-color:var(--speak-judge);justify-self:end}.preview-post-player{border-left-color:var(--speak-ic)}.preview-speaker{align-items:center;column-gap:var(--space-2);grid-template-columns:2.4rem auto 1fr;display:grid}.preview-speaker .character-portrait{object-fit:contain;grid-row:1/span 2}.preview-speaker strong{font-family:var(--font-prose);font-size:var(--text-widget);font-weight:500}.preview-speaker span{text-align:right}.preview-post p{margin:var(--space-2) 0 0 2.9rem;color:var(--ink-muted);font-family:var(--font-prose);font-size:var(--text-widget);line-height:1.5}.preview-roll{justify-self:center;align-items:center;gap:var(--space-3);width:min(92%,22rem);padding:var(--space-2) var(--space-3);border:1px solid var(--accent-tint-45);border-radius:var(--radius-pill);background:var(--accent-tint-8);display:flex}.preview-roll>div{flex-direction:column;min-width:0;display:flex}.preview-roll>div span{overflow-wrap:anywhere}.preview-die{border:1px solid var(--accent);border-radius:.7rem .35rem .65rem .4rem;flex:none;place-items:center;width:2.25rem;height:2.25rem;font-weight:800;display:grid;transform:rotate(-5deg);color:var(--accent)!important}.preview-resume{padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);text-align:center;margin:0}.preview-resume span{color:var(--accent)}.campaign-memory{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(150deg, var(--surface-raise-94), var(--field-tint-96));box-shadow:0 1.5rem 4rem var(--shadow-32);position:relative}.memory-trail{margin:var(--space-5) 0 0;padding:0;list-style:none;display:grid}.memory-trail li{gap:var(--space-3);grid-template-columns:2.5rem 1fr;min-height:4.25rem;display:grid;position:relative}.memory-trail li:not(:last-child):after{content:"";background:var(--line);width:1px;position:absolute;top:2.25rem;bottom:0;left:1.1rem}.memory-icon{z-index:1;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--field-bg);place-items:center;width:2.25rem;height:2.25rem;display:grid;position:relative}.memory-icon .blue-torch{transform:scale(.72)}.memory-trail div{flex-direction:column;display:flex}.memory-trail small{color:var(--ink-muted)}.memory-trail strong{margin-top:var(--space-1);color:var(--ink);font-family:var(--font-prose);font-weight:500}.app-shell-public .page-section{padding:var(--space-6) 0;border-bottom:1px solid var(--line)}.page-section-heading-emblem-beside h2{max-width:22ch;margin-bottom:var(--space-6);font-size:clamp(1.75rem,4vw,3rem);line-height:1.15}.page-section-heading-emblem-above{flex-direction:column;align-items:flex-start;margin:0;display:flex}.page-section-heading-emblem-above>.eyebrow{margin:0 0 var(--space-1)}.page-section-heading-emblem-above>h2{margin:0}.section-emblem{width:4.5rem;height:4.5rem;margin-bottom:var(--space-4);border:1px solid var(--accent-tint-42);border-radius:var(--radius-md);background:linear-gradient(145deg, var(--accent-tint-14), var(--panel));box-shadow:inset 0 0 1rem var(--accent-tint-7);place-items:center;display:grid}.page-section-heading-emblem-beside{align-items:flex-start;gap:var(--space-4);margin-top:0;margin-bottom:var(--space-6);flex-wrap:wrap;justify-content:flex-start;min-width:0;display:flex}.page-section-heading-emblem-beside .section-emblem{flex:none;margin:0}.page-section-heading-emblem-beside .eyebrow{margin-bottom:var(--space-2)}.page-section-heading-emblem-beside h2{overflow-wrap:break-word;min-width:0;margin-bottom:0}.page-section-split,.roadmap-section{gap:var(--space-6);grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);align-items:start;display:grid}.page-section-split h2,.roadmap-section h2,.page-section.page-section-callout h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.2}.principle-index{color:var(--accent);font-family:var(--font-ui);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;font-weight:700}.public-prose p,.page-section.page-section-callout>p:not(.eyebrow),.roadmap-section>div>p{color:var(--ink-muted);font-size:var(--text-prose);line-height:1.75}.purpose-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.purpose-card{min-width:0;padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel)}.purpose-card h3,.principle-list h3,.roadmap h3{margin:var(--space-4) 0 var(--space-2);font-size:var(--text-block-title);font-weight:500}.purpose-card p,.principle-list p,.roadmap p{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-block);margin:0;line-height:1.72}.purpose-card>.pixel-item{filter:drop-shadow(0 .35rem .6rem var(--accent-tint-18))}.purpose-icon{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(145deg, var(--accent-tint-12), var(--field-bg));place-items:center;width:4.25rem;height:4.25rem;display:grid}.purpose-glyph{width:2rem;height:2rem;color:var(--accent);font-family:var(--font-ui);font-size:var(--text-lg);place-items:center;display:grid}.boundary-list,.principle-list{margin:0;padding:0;list-style:none}.boundary-list{gap:var(--space-3);display:grid}.boundary-list li{gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-block);grid-template-columns:1.5rem 1fr;line-height:1.65;display:grid}.boundary-list span{color:var(--accent);font-weight:700}.strength-list{gap:var(--space-4)}.strength-list li{gap:var(--space-3);padding-bottom:var(--space-4);grid-template-columns:3rem 1fr}.strength-icon{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--field-bg);place-items:center;width:3.5rem;height:3.5rem;display:grid}.strength-list strong{margin-bottom:var(--space-1);color:var(--ink);font-family:var(--font-prose);font-size:var(--text-block-title);font-weight:500;display:block}.page-section.page-section-callout{margin:var(--space-6) 0;padding:var(--space-6);border:1px solid var(--accent);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--accent-tint-10), var(--panel))}.page-section.page-section-with-media{align-items:center;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);display:grid;overflow:hidden}.page-section-with-media>.page-section-body>p{color:var(--ink-muted);font-size:var(--text-prose);line-height:1.75}.funnel-party{border-bottom:1px solid var(--line);background:radial-gradient(circle at 50% 75%, var(--accent-tint-18), transparent 55%);align-content:center;justify-items:center;min-height:11rem;display:grid;position:relative}.funnel-portraits{justify-content:center;align-items:end;min-height:6.5rem;display:flex}.funnel-portraits .character-portrait{object-fit:contain;filter:drop-shadow(0 .4rem 0 var(--shadow-30))}.funnel-portraits .character-portrait+.character-portrait{margin-left:calc(0rem - var(--space-4))}.funnel-keepsakes{gap:var(--space-3);min-height:2rem;padding:var(--space-1) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--field-bg);align-items:center;display:flex;transform:translateY(50%)}.page-section.page-section-callout>p:not(.eyebrow){max-width:48rem;margin-bottom:0}.principle-list li{gap:var(--space-4);padding:var(--space-5) 0;border-top:1px solid var(--line);grid-template-columns:4.25rem 1fr;display:grid}.principle-index{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.principle-index .pixel-item{box-sizing:content-box;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--field-bg)}.about-hero{isolation:isolate;position:relative}.about-hero:before{content:"";z-index:-1;background:linear-gradient(90deg, var(--bg-tint-45), var(--bg-tint-78)), url(/assets/fantasy-forest/bg_parallaxFar.png) center / auto 100% repeat-x;opacity:.28;image-rendering:pixelated;position:absolute;inset:0 calc(50% - 50vw)}.principle-list h3{margin-top:0}.roadmap-section{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}.roadmap{border-left:1px solid var(--line);padding-left:var(--space-5)}.roadmap article{padding:0 0 var(--space-6);position:relative}.roadmap article:before{content:"";width:.65rem;height:.65rem;top:.25rem;left:calc(0rem - var(--space-5) - .36rem);border:2px solid var(--bg);border-radius:var(--radius-pill);background:var(--accent);position:absolute}.roadmap article>span,.status-note{color:var(--accent);font-family:var(--font-ui);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.roadmap h3{margin-top:var(--space-2)}.status-note{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-muted);font-size:var(--text-base);letter-spacing:0;text-transform:none;grid-column:2;margin:0;line-height:1.5}.status-note span{color:var(--accent)}.text-link{gap:var(--space-2);min-height:var(--touch-min);margin-top:var(--space-4);color:var(--accent);font-family:var(--font-ui);align-items:center;font-weight:700;display:inline-flex}.footer-links a{color:var(--ink-muted)}@container surface (width<=44rem){.page-header.page-header-hero{padding:var(--space-5) 0}.page-header.page-header-hero.page-header-with-aside{gap:var(--space-6);grid-template-columns:1fr}.hero-brand-row{flex-direction:column;align-items:flex-start}.page-header-lead,.public-prose p,.page-section-with-media>.page-section-body>p{font-size:1.12rem}.campaign-preview,.campaign-memory{width:min(100%,34rem);margin-inline:auto}.page-section-split,.roadmap-section{gap:var(--space-5);grid-template-columns:1fr}.purpose-grid{grid-template-columns:1fr}.status-note{grid-column:1}.page-section.page-section-with-media{grid-template-columns:1fr}}@media (width<=430px){.page-header.page-header-hero h1{font-size:clamp(2.1rem,12cqi,3rem)}.hero-brand-row{flex-direction:column;align-items:flex-start}.hero-brand-mark{width:10.5rem;height:10.5rem}.page-section-heading-emblem-beside{gap:var(--space-3)}.campaign-memory{padding:var(--space-5) var(--space-4)}.preview-status{display:none}.preview-window{transform:none}.preview-post{max-width:100%}.page-section.page-section-with-media{padding-top:var(--space-5)}.app-shell-public .page-section,.page-section.page-section-callout{padding:var(--space-6) 0}.page-section.page-section-callout{padding-inline:var(--space-4)}.principle-list li{gap:var(--space-3);grid-template-columns:3.75rem 1fr}}.icon-button{min-width:var(--touch-min);min-height:var(--touch-min);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-lg);cursor:pointer;background:0 0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.icon-button-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.icon-button:disabled{opacity:.55;cursor:not-allowed}.icon-button:focus-visible,.face-option:focus-visible,.sidebar-section-toggle:focus-visible,.judge-sidebar-toggle:focus-visible,.actor-group-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.face-toggle{border:1px solid var(--line);border-radius:var(--radius-sm);gap:2px;padding:2px;display:inline-flex}.face-option{min-width:var(--tap-small);min-height:var(--tap-small);border-radius:calc(var(--radius-sm) - 2px);color:var(--ink-muted);font-size:var(--text-base);cursor:pointer;background:0 0;border:0}.face-option-on{background:var(--accent);color:var(--accent-ink)}.face-option{padding:0 var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm)}.face-toggle{flex-wrap:wrap}.sidebar-section-icon,.judge-sidebar-toggle-icon,.actor-kind,.roll-dice,.roll-request-chip-mark{vertical-align:middle;align-items:center;display:inline-flex}.roll-request-chip{align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);display:inline-flex}.roll-request-chip-mark{color:var(--speak-ic)}.roll-request-chip-resolved{color:var(--ink-muted);opacity:.8}.sidebar-section{border-top:1px solid var(--line)}.sidebar-section-head{font-size:var(--text-ui);margin:0;font-weight:500}.sidebar-section-toggle,.sidebar-section-head-static{align-items:center;gap:var(--space-2);width:100%;min-height:var(--touch-min);padding:var(--space-2) var(--space-1);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.sidebar-section-head-static{cursor:default}.sidebar-section-icon{color:var(--accent)}.sidebar-section-title{flex:1;min-width:0}.sidebar-section-count{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-muted)}.sidebar-section-body{padding:0 var(--space-1) var(--space-3);gap:var(--space-2);display:grid}.sidebar-section-empty{font-size:var(--text-sm);margin:0}.actor-row{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);border-left:3px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);display:grid}.actor-enemy{border-left-color:var(--danger)}.actor-npc{border-left-color:var(--speak-ic)}.actor-row-main{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.actor-name{overflow-wrap:anywhere;min-width:0}.actor-tag{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--ink-muted);padding:0 var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill)}.actor-row-actions,.actor-row-edit-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.statblock-editor{width:100%;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--field-bg);color:var(--ink);font-family:ui-monospace,monospace;font-size:var(--text-meta)}.actor-group-toggle{min-height:var(--tap-small);color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0}.actor-group-duplicates{padding:0 0 0 var(--space-3);gap:var(--space-2);border-left:1px dashed var(--line);margin:0;list-style:none;display:grid}.judge-sidebar{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-raise);margin-bottom:var(--space-4)}.judge-sidebar-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:var(--touch-min);padding:var(--space-3);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-ui);cursor:pointer;background:0 0;border:0;display:flex}.judge-sidebar-toggle-icon{color:var(--accent);font-size:var(--text-lg)}.judge-sidebar-toggle-count{color:var(--ink-muted);font-size:var(--text-sm);margin-left:auto}.judge-sidebar-body{padding:0 var(--space-3) var(--space-2)}@media (width>=60rem){.judge-sidebar{top:var(--space-4);max-height:calc(100vh - 2 * var(--space-4));position:sticky;overflow:auto}}.brand-lockup{align-items:center;gap:var(--space-3);min-width:0;display:inline-flex}.brand-lockup-hero{gap:var(--space-5)}.brand-lockup-mark{flex:none;display:inline-flex}.brand-lockup-text{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.brand-lockup-hero .wordmark{color:var(--ink);font-size:clamp(1.75rem,15.625cqi - 2.10938rem,3.5rem);line-height:1}.brand-lockup-bar .wordmark{font-size:var(--text-lg)}.brand-lockup-tagline{max-width:18rem;margin:0}.brand-lockup-hero{--lamp-scale:3}@container surface (width<=44rem){.brand-lockup-hero{--lamp-scale:2;gap:var(--space-3)}.brand-lockup-hero .hero-brand-mark{width:6rem;height:6rem}.brand-lockup-hero .wordmark{font-size:clamp(1.5rem,15.625cqi - 1.09375rem,2.4rem)}}.page-section-banner{--sprite-scale:4;gap:var(--space-6);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.page-section-banner-art{filter:drop-shadow(0 .75rem 1.5rem var(--shadow-35));line-height:0;display:block}.page-section-banner-copy h2{margin:0 0 var(--space-4);font-size:clamp(1.75rem,4vw,3rem);line-height:1.15}.page-section-banner-copy p{color:var(--ink-muted);font-size:var(--text-prose);margin:0;line-height:1.75}@container surface (width<=44rem){.page-section-banner{--sprite-scale:3;gap:var(--space-5)}}@media (width<=430px){.page-section-banner{--sprite-scale:2;gap:var(--space-4)}}
