:is(.dialog-backdrop:has(.missions-panel)>.dialog,.dialog-backdrop:has(.mission-page,.mission-page-status)>.dialog){--gm-dialog-h:min(90dvh, calc(var(--vv-h,100dvh) - 28px));max-height:var(--gm-dialog-h)}.dialog-backdrop:has(.missions-panel)>.dialog{width:min(94vw,92rem);height:var(--gm-dialog-h)}.dialog-backdrop:has(.mission-page,.mission-page-status)>.dialog{width:min(94vw,64rem)}.dialog:has(.missions-panel,.mission-page,.mission-page-status)>.dialog-body{flex:auto;min-height:0}:is(.dialog:has(>.dialog-body>.missions-panel:not([data-outer-scroll=true]))>.dialog-body,.dialog:has(>.dialog-body>.mission-page:not([data-outer-scroll=true]))>.dialog-body){flex-direction:column;display:flex;overflow:hidden}.missions-panel{min-width:0;padding-bottom:16px}.missions-panel:not([data-outer-scroll=true]){flex-direction:column;flex:auto;min-height:0;padding-bottom:4px;display:flex}.missions-panel details:not([open])>:not(summary){display:none}.missions-top{flex:none;min-width:0}.missions-top>p{margin:6px 0}.missions-bar{flex-wrap:wrap;align-items:center;gap:8px 10px;margin:8px 0;display:flex}.missions-toolbar{gap:2px;display:flex}.missions-search{flex:14rem;min-width:10rem;display:block}.missions-search input{width:calc(100% - 4px);display:block}.missions-count{white-space:nowrap;margin:0}.missions-new{margin-left:auto}.missions-filters{flex-wrap:wrap;align-items:end;gap:10px;margin:0 0 8px;display:flex}.missions-filters label,.mission-column-switch,.mission-move label{flex-direction:column;gap:2px;display:flex}.missions-filters label{flex:170px;min-width:0}.missions-panel button,.missions-panel input,.missions-panel select,.mission-page button,.mission-page input,.mission-page select,.mission-page textarea{min-height:44px}.missions-filters input,.missions-filters select,.mission-column-switch select,.mission-move select,.missions-search input{box-sizing:border-box;align-self:stretch;min-width:0;font-size:16px}@media (width>=1101px){.missions-bar{flex-wrap:nowrap}}.missions-main{min-width:0;min-height:0}.missions-panel:not([data-outer-scroll=true]) .missions-main{flex-direction:column;flex:auto;display:flex}.missions-board{flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;min-height:0;display:grid}.mission-lane{border:1px solid var(--ink-soft);background:#5a40260f;border-radius:4px;flex-direction:column;min-width:0;min-height:0;padding:8px;display:flex;overflow:hidden}.mission-lane h3{overflow-wrap:anywhere;flex:none;margin-top:0}.mission-lane-cards{overscroll-behavior:contain;flex:auto;min-height:0;padding:4px 6px 10px 2px;overflow:hidden auto}.missions-list{overscroll-behavior:contain;padding:0 6px 20px 2px;overflow:hidden auto}.missions-panel:not([data-outer-scroll=true]) .missions-list{display:block}.missions-panel[data-outer-scroll=true] .missions-board{grid-template-rows:none;align-items:start}.missions-panel[data-outer-scroll=true] .mission-lane{overflow:visible}.missions-panel[data-outer-scroll=true] :is(.mission-lane-cards,.missions-list,.mission-cancelled-cards){max-height:none;overflow:visible}.mission-card{background:var(--parch);border:2px solid var(--ink-soft);border-top:4px solid var(--ink-soft);border-radius:4px;min-width:0;margin:0 0 10px;padding:8px}.mission-card[data-status=blocked]{border-top-color:var(--danger,#9b2929)}.mission-card[data-status=done]{border-top-color:var(--ok,#365c37)}.mission-card-open{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;padding:0;display:block}.mission-card-open:disabled{opacity:1;color:var(--ink)}.mission-card-open:active{opacity:.6}.mission-identifier{font-size:.85rem;font-weight:700;display:block}.mission-title{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-weight:700;display:-webkit-box;overflow:hidden}.mission-card-crew{overflow-wrap:anywhere;align-items:center;gap:6px;margin:4px 0;display:flex}.mission-card-crew .portrait{flex-shrink:0}.mission-card-meta{flex-wrap:wrap;gap:6px;font-size:.8rem;display:flex}.mission-priority{text-transform:capitalize;border:1px solid;border-radius:3px;padding:2px 4px}.mission-priority[data-priority=critical],.mission-priority[data-priority=high],.mission-attention{color:var(--danger,#9b2929);font-weight:700}.mission-move{margin-top:8px}.mission-move summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.mission-move[open]{flex-direction:column;gap:6px;display:flex}.mission-move label{flex-direction:column;gap:2px;display:flex}.mission-move button{white-space:normal}.mission-card-actions{flex-direction:column;gap:8px;margin-top:8px;display:flex}.mission-card-actions .mission-move{min-width:0;margin-top:0}.mission-column-switch{display:none}.mission-cancelled{flex:none;margin-top:10px}.mission-cancelled summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.mission-cancelled-cards{overscroll-behavior:contain;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:0 10px;max-height:min(16rem,32dvh);padding:4px 6px 8px 2px;display:grid;overflow:hidden auto}.mission-cancelled-cards .mission-card{margin:0 0 10px}@media (width<=1100px) and (width>=761px){.missions-board{overscroll-behavior:contain;grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(19rem,1fr);padding-right:2px;overflow:hidden auto}.missions-panel[data-outer-scroll=true] .missions-board{grid-auto-rows:auto;overflow:visible}}@media (width<=760px){.dialog-backdrop:has(.missions-panel)>.dialog{width:100%}.missions-bar{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"view view new""search search search""filters count count";gap:6px 8px;display:grid}.missions-toolbar{grid-area:view}.missions-new{grid-area:new;margin-left:0}.missions-search{grid-area:search;min-width:0}.missions-filters-toggle{grid-area:filters}.missions-count{white-space:normal;grid-area:count}.missions-toolbar button,.missions-new{padding-inline:.6rem}.missions-filters label{flex-basis:100%}.mission-column-switch{flex-direction:column;flex:none;gap:2px;margin:6px 0;display:flex}.missions-board{flex-direction:column;display:flex;overflow:visible}.mission-lane{display:none}.mission-lane-selected{flex:auto;display:flex}.missions-main:has(.mission-cancelled-selected) .missions-board{display:none}.mission-cancelled-selected{overscroll-behavior:contain;flex:auto;min-height:0;margin-top:0;overflow-y:auto}.mission-cancelled-selected .mission-cancelled-cards{max-height:none;display:block;overflow:visible}.missions-panel[data-outer-scroll=true] .mission-cancelled-selected{overflow:visible}.mission-card-actions{flex-direction:row;align-items:stretch}.mission-card-actions .mission-move{flex:1 1 0}.mission-card-actions:has(.mission-move[open]){flex-direction:column}.mission-card-actions:has(.mission-move[open]) .mission-move{flex:auto;width:100%}}@media (width<=400px) and (height<=600px){:is(.dialog-backdrop:has(.missions-panel)>.dialog,.dialog-backdrop:has(.mission-page,.mission-page-status)>.dialog){--gm-dialog-h:calc(var(--vv-h,100dvh) - 12px)}.dialog-backdrop:has(.missions-panel) .sheet-grip{margin-top:2px}.dialog-backdrop:has(.missions-panel) .dialog-head{min-height:44px;margin-top:0;padding:4px 10px}.dialog-backdrop:has(.missions-panel) .dialog-body{padding:.4rem .6rem .6rem}.mission-cancelled{margin-top:4px}.mission-title{-webkit-line-clamp:unset;display:block}.mission-card-actions{margin-top:4px}.missions-top>.muted:first-child{display:none}.missions-top>p{margin:0;font-size:.85rem}.missions-bar{gap:2px 6px;margin:0}.missions-toolbar button,.missions-new,.missions-filters-toggle{padding-inline:.45rem}.mission-column-switch{flex-direction:row;align-items:center;gap:8px;margin:0}.mission-column-switch select{flex:auto}.mission-lane{padding:4px}.mission-lane h3{margin:0 0 2px}.mission-card{padding:4px 6px}.cards>.mission>button,.cards>.mission>.muted{width:100%;display:block}}@media (prefers-reduced-motion:reduce){.mission-card,.mission-page{transition:none;animation:none}}.mission-page,.mission-page section,.mission-page li{overflow-wrap:anywhere;min-width:0;max-width:100%}.mission-page{flex-direction:column;flex:auto;width:100%;min-height:0;display:flex}.mission-pinned{border-bottom:2px solid var(--ink-soft);flex:none;min-width:0;padding-bottom:6px}.mission-pinned>p,.mission-pinned>.result{margin:0 0 6px}.mission-page-title{white-space:normal;overflow-wrap:anywhere;margin:0 0 4px}.mission-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:6px 0 2px;display:grid}.mission-tab{white-space:normal;overflow-wrap:anywhere;min-width:0;margin:2px;padding:.3rem .4rem;line-height:1.15}.mission-panels{overscroll-behavior:contain;flex:auto;min-height:0;padding:2px 6px 12px 2px;overflow:hidden auto}.mission-page[data-outer-scroll=true] .mission-panels{padding-bottom:12px;overflow:visible}.mission-panel[hidden]{display:none!important}.mission-page section{border-top:1px solid var(--ink-soft);margin:22px 0;padding-top:8px}.mission-panel>:first-child{margin-top:8px}.mission-panel>section:first-child{border-top:0;margin-top:8px;padding-top:0}.mission-page-status{flex:none}.mission-prose,.mission-log{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;font:inherit}.mission-log{border:1px solid var(--ink-soft);overscroll-behavior-y:auto;background:#5a40260f;max-height:min(320px,40dvh);padding:10px;font-family:monospace;overflow-y:auto}.mission-run{border-bottom:1px solid var(--ink-soft);padding:8px 0 12px}.mission-run h4,.mission-run p{margin:0 0 6px}.mission-run>button{min-height:44px}.mission-run .mission-log{margin:8px 0 0}.mission-history{padding-left:22px}.mission-history li{margin:12px 0}.mission-history time{color:var(--ink-soft);font-size:.85rem}.mission-page .mission-move{max-width:24rem}.mission-page .cards{padding:0}.mission-page .cards>.mission{overflow:hidden}.mission-page .cards>.mission textarea{width:100%;margin-inline:0}@media (width<=560px){.mission-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.dialog-backdrop:has(.mission-page,.mission-page-status)>.dialog{width:100%}}.rt{overflow-wrap:anywhere;min-width:0;max-width:100%;line-height:1.5}.rt>:first-child{margin-top:0}.rt p{margin:0 0 .7em}.rt h4,.rt h5,.rt h6{margin:1em 0 .4em;line-height:1.25}.rt .rt-h1{font-size:1.15rem}.rt .rt-h2{font-size:1.05rem}.rt .rt-h3,.rt .rt-h4{font-size:1rem}.rt ul,.rt ol{margin:0 0 .7em;padding-left:1.5em}.rt li{box-shadow:none;background:0 0;margin:.15em 0;padding:0}.rt li>p{margin:0 0 .25em}.rt blockquote{border-left:4px solid var(--ink-soft);color:var(--ink-soft);margin:0 0 .7em;padding:.1em 0 .1em .8em}.rt hr{border:0;border-top:2px solid var(--ink-soft);margin:1em 0}.rt code{background:#5a40261f;padding:0 .25em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.rt-code{border:1px solid var(--ink-soft);background:#5a402614;margin:0 0 .8em}.rt-code pre{white-space:pre;max-width:100%;margin:0;padding:10px;font-size:.85rem;line-height:1.4;overflow-x:auto}.rt-code pre code{font-size:inherit;background:0 0;padding:0}.rt-code-bar{border-bottom:1px solid var(--ink-soft);background:#5a402614;align-items:center;gap:10px;min-height:44px;padding:2px 4px;display:flex}.rt-copy{min-width:44px;min-height:44px;margin:0}.rt-copy-status{flex:auto;min-width:0}.rt-addr{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.9em}.rt a{color:#1b4f9c;text-decoration:underline}.rt-more{margin:4px 0 0}.mission-facts{grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;margin:6px 0;display:grid}.mission-facts dt{color:var(--ink-soft)}.mission-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.mission-facts-who{align-items:center;gap:8px;display:flex}.mission-facts-priority{text-transform:capitalize}.comment-thread{flex-direction:column;gap:0;margin:8px 0 14px;padding:0;list-style:none;display:flex}.comment-thread>.comment-card{border:2px solid var(--ink-soft);background:var(--parch-hi);border-top-width:4px;margin:0;padding:12px 12px 10px}.comment-card+.comment-card{margin-top:12px}.comment-card[data-comment-kind=captain]{border-color:var(--gold-deep);background:#fbe9b5;border-left-width:8px}.comment-head{border-bottom:1px solid var(--ink-soft);align-items:center;gap:10px;margin-bottom:8px;padding-bottom:8px;display:flex}.comment-head .portrait{flex:none}.comment-who{flex-direction:column;gap:2px;min-width:0;display:flex}.comment-name{overflow-wrap:anywhere}.comment-meta{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.88rem}.comment-role{font-weight:700}.comment-when time{cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.comment-exact{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.comment-when:focus-within .comment-exact,.comment-when:hover .comment-exact{clip-path:none;white-space:normal;width:auto;height:auto;position:static;overflow:visible}.comment-body>:last-child{margin-bottom:0}.comment-thread .comment-system{border:0;border-left:3px dotted var(--ink-soft);color:var(--ink-soft);background:0 0;margin:10px 0 10px 28px;padding:4px 10px;font-size:.9rem}.comment-thread .comment-system+.comment-card,.comment-thread .comment-card+.comment-system{margin-top:10px}.comment-system-label{font-weight:700}.comment-system .comment-body{margin-top:2px}.timeline-toolbar{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 8px;display:flex}.timeline-views{gap:2px;display:flex}.timeline-count{margin-right:auto}.timeline-track{overscroll-behavior-x:contain;scroll-snap-type:x proximity;border:2px solid var(--ink-soft);-webkit-overflow-scrolling:touch;background:#5a40260f;align-items:flex-start;gap:18px;padding:4px 8px 12px;display:flex;overflow:auto hidden}.timeline-day{scroll-snap-align:start;flex-direction:column;flex:none;gap:6px;display:flex}.timeline-day-label{font-family:var(--font-display);color:var(--ink-soft);white-space:nowrap;border-bottom:2px solid var(--ink-soft);padding-bottom:2px;font-weight:700;position:sticky;left:0}.timeline-day-events{gap:6px;display:flex}.tl-marker{box-sizing:border-box;background:var(--parch);width:64px;min-width:44px;min-height:76px;color:var(--ink);cursor:pointer;scroll-snap-align:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:2px solid #0000;border-top:5px solid;flex-direction:column;flex:none;justify-content:flex-start;align-items:center;gap:2px;padding:6px 2px 4px;display:flex}.tl-marker .tl-time{color:var(--ink);font-size:.8rem;font-weight:700}.tl-marker .tl-kind{color:var(--ink-soft);text-align:center;overflow-wrap:anywhere;font-size:.72rem;line-height:1.1}.tl-marker.tl-on{background:var(--gold);border-color:var(--outline);border-top-color:currentColor}.tl-created{color:#2f6b2a}.tl-assigned{color:#1b4f9c}.tl-comment{color:#7a4500}.tl-run{color:#3b3b9c}.tl-review{color:#6a3d9a}.tl-done{color:#1f6f6a}.tl-blocked{color:#a8332a}.tl-update{color:#5a4026}.tl-icon{flex:none;display:block}.timeline-detail{box-sizing:border-box;border:2px solid var(--ink-soft);background:var(--parch-hi);height:9.5rem;margin-top:8px;padding:8px 10px;overflow-y:auto}.timeline-detail p{margin:0 0 4px}.timeline-detail-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.timeline-detail-head .tl-icon{color:var(--ink)}.timeline-detail-text{overflow-wrap:anywhere}.timeline-list{margin-top:0}.handoff-head h4{margin:0 0 2px}.handoff-head p{margin:0 0 8px}.handoff-section{border:2px solid var(--ink-soft);background:var(--parch-hi);margin:14px 0;padding:8px 10px 4px}.mission-page .handoff-section{border-top:4px solid var(--ink-soft);padding-top:6px}.handoff-section h5{font-family:var(--font-display);margin:0 0 6px;font-size:1.05rem}.handoff-section[data-section=blockers]{border-top-color:#a8332a}.handoff-section[data-section=summary]{border-top-color:#2f6b2a}.handoff-missing{margin-top:10px}@media (width<=560px){.tl-marker{width:60px}.comment-card{padding:10px 8px 8px}}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/pixelify-sans-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/pixelify-sans-latin-700-normal.woff2)format("woff2")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/atkinson-hyperlegible-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/atkinson-hyperlegible-latin-700-normal.woff2)format("woff2")}:root{--parch:#f3e6c4;--parch-hi:#fff6d8;--parch-shade:#d9c08a;--parch-dark:#e6d3a3;--ink:#2a1d12;--ink-soft:#5a4026;--outline:#3b2a1a;--wood:#4a3320;--wood-dark:#2b1d11;--gold:#f0c04a;--gold-deep:#7a4500;--red:#a8443a;--green:#3f7a33;--focus:#1b4f9c;--font-body:"Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Pixelify Sans", "Atkinson Hyperlegible", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--bar-h:52px;--cmd-h:60px;--banner-h:0px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--wood-dark);-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;line-height:1.45}html.is-village,html.is-village body{overscroll-behavior:none;width:100%;height:100%;position:fixed;inset:0;overflow:hidden}h1,h2,h3{font-family:var(--font-display);letter-spacing:.01em;font-weight:700;line-height:1.15}a{color:#7a3d00}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--ink-soft)}.small{font-size:.85rem}.px,button,select,input[type=text],input[type=password],input[type=search],textarea,.btn{font:inherit;font-family:var(--font-body);color:var(--ink);background:var(--parch);min-height:36px;box-shadow:0 -2px 0 0 var(--outline), 0 2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline), inset 0 -3px 0 0 var(--parch-shade), inset 0 3px 0 0 var(--parch-hi);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:0;margin:2px;padding:.35rem .8rem;font-weight:700}button,.btn,select{cursor:pointer}.btn{align-items:center;text-decoration:none;display:inline-flex}button:hover:not(:disabled),.btn:hover{background:var(--parch-hi)}button:active:not(:disabled),.btn:active{transform:translateY(1px)}button:disabled{opacity:.6;cursor:not-allowed}button[aria-pressed=true],button[role=tab][aria-selected=true]{background:var(--gold)}:focus-visible{outline-offset:0;z-index:2;outline:3px solid #fff;position:relative;box-shadow:0 0 0 6px var(--focus)!important}.scene-host:focus-visible{outline-offset:-6px;box-shadow:none!important}.px-panel{background-color:var(--parch);color:var(--ink);box-shadow:0 -2px 0 0 var(--outline), 0 2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline), inset 0 -4px 0 0 var(--parch-shade), inset 0 4px 0 0 var(--parch-hi), 0 8px 0 0 #140c0647;background-image:repeating-linear-gradient(0deg,#78501e0d 0 2px,#0000 2px 4px);margin:2px}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);text-overflow:ellipsis;background-position:calc(100% - 18px) 55%,calc(100% - 12px) 55%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:2.25rem}input[type=text],input[type=password],input[type=search],textarea{background:var(--parch-hi);box-shadow:0 -2px 0 0 var(--outline), 0 2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline), inset 0 3px 0 0 var(--parch-shade);cursor:text;min-height:44px;font-weight:400}input[type=search]{appearance:none;box-sizing:border-box}textarea{resize:vertical;width:calc(100% - 4px);line-height:1.4;display:block}input,select,textarea{font-size:16px}::placeholder{color:var(--ink-soft);opacity:1}kbd{font-family:var(--font-display);background:var(--parch-dark);box-shadow:0 -2px 0 0 var(--outline), 0 2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline);margin:0 4px;padding:0 .4rem;font-size:.85em;font-weight:700}input[type=checkbox]{width:22px;height:22px;accent-color:var(--green);margin:0 8px 0 0}.hud-icon{width:24px;height:24px;image-rendering:pixelated;vertical-align:middle;flex:none}button:disabled .hud-icon{filter:grayscale(.8)}.brand{align-items:center;gap:.5rem;display:inline-flex}.brand-mark{width:34px;height:34px;font-family:var(--font-body);letter-spacing:.02em;color:var(--ink);background:var(--gold);box-shadow:0 -2px 0 0 var(--outline), 0 2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline), inset 0 -3px 0 0 #c8962a, inset 0 3px 0 0 #ffe08a;place-items:center;margin:2px;font-size:16px;font-weight:700;display:inline-grid}.brand-name{font-family:var(--font-display);white-space:nowrap;font-size:18px;font-weight:700}.brand-icon{width:34px;height:34px;image-rendering:pixelated}.brand-logo{width:min(384px,82vw);height:auto;image-rendering:pixelated;display:block}.brand-wordmark{width:auto;height:36px;image-rendering:pixelated;display:block}.brand-emblem{width:40px;height:40px;image-rendering:pixelated;display:none}.login{min-height:100dvh;padding:calc(1.5rem + var(--safe-t)) calc(1rem + var(--safe-r)) calc(1.5rem + var(--safe-b)) calc(1rem + var(--safe-l));background:repeating-linear-gradient(90deg, #0000000f 0 4px, transparent 4px 8px), linear-gradient(var(--wood), var(--wood-dark));color:var(--parch);align-content:center;justify-items:center;gap:1.5rem;display:grid}.login-brand{color:var(--parch);text-align:center;margin:0}.login-brand .brand-name{white-space:normal;font-size:clamp(26px,8vw,40px)}.login-brand .brand{flex-direction:column;gap:.75rem}.login-brand .brand-mark{width:56px;height:56px;font-size:26px}.login-brand .brand-icon{width:64px;height:64px}.login-brand .brand-logo{margin:0 auto}.login-card{width:min(24rem,100%);padding:1.25rem 1.25rem 1.5rem}.login-card h2{margin:0 0 1rem;font-size:1.4rem}.field{gap:.35rem;margin:0 0 1rem;display:grid}.field input{width:calc(100% - 4px)}.btn-primary{background:var(--gold);min-height:44px;font-family:var(--font-display);padding:.4rem 1.4rem;font-size:1.1rem}.login-card [role=alert]{color:#8a1f14;font-weight:700}.login>p[role=status],.login>p[role=alert]{color:var(--parch)}.plain-bar{padding:calc(.5rem + var(--safe-t)) 1rem .5rem;background:var(--wood);color:var(--parch);border-bottom:3px solid var(--wood-dark);flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.plain-bar a{color:var(--gold)}.plain-bar nav{flex:1}.plain-bar nav a+a{margin-left:.75rem}.plain-bar [aria-current=page]{color:#fff}body:has(.plain-bar){background:var(--parch)}main:not(.login):not(.village-main){max-width:60rem;padding:1rem}table{border-collapse:collapse;margin-bottom:1rem}th,td{text-align:left;border-bottom:1px solid #5a40264d;padding:.25rem .75rem}progress{max-width:100%}@media (width<=700px){main:not(.login):not(.village-main){overflow-wrap:anywhere;min-width:0}.data-table,.data-table tbody{width:100%;display:block}.data-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.data-table tr{background:var(--parch-dark);margin-bottom:.6rem;padding:.3rem .7rem;display:block;box-shadow:inset 0 0 0 2px #3b2a1a59}.data-table th,.data-table td{border:0;padding:.2rem 0;display:block}.data-table th[scope=row]{font-family:var(--font-display);font-size:1.05rem}.data-table td{grid-template-columns:minmax(5.5rem,34%) minmax(0,1fr);gap:.5rem;display:grid}.data-table td:before{content:attr(data-label);color:var(--ink-soft);font-weight:700}}.village{width:100%;height:100dvh;color:var(--ink);background:#2f5f2b;position:fixed;top:0;left:0;overflow:hidden}.village-main{max-width:none;padding:0;position:absolute;inset:0}.scene-wrap{position:absolute;inset:0}.scene-host{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#2f5f2b;position:absolute;inset:0;overflow:hidden}.scene-host canvas{touch-action:none;display:block}.scene-note{top:calc(var(--bar-edge) + var(--banner-h) + 16px);z-index:15;margin:0;padding:.4rem .9rem;position:absolute;left:50%;transform:translate(-50%)}.topbar{z-index:20;min-height:calc(var(--bar-h) + var(--safe-t));padding:var(--safe-t) max(10px, var(--safe-r)) 0 max(10px, var(--safe-l));background-color:var(--wood);border-bottom:4px solid var(--wood-dark);color:var(--parch);background-image:repeating-linear-gradient(90deg,#00000014 0 4px,#0000 4px 8px);align-items:center;gap:10px;display:flex;position:absolute;top:0;left:0;right:0;box-shadow:inset 0 3px #ffe0a02e}.tb-group{align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tb-group>li{display:flex}.tb-spacer{flex:1 1 0}.tb-brand .brand-name{color:var(--parch);text-shadow:0 2px 0 var(--wood-dark)}.btn-icon{align-items:center;gap:.4rem;min-height:40px;display:inline-flex;position:relative}.badge{font-family:var(--font-display);color:var(--gold-deep);font-weight:700}.envelope-on{background:var(--gold)}.envelope-on .badge{color:var(--ink)}.chip{background:var(--parch);min-height:32px;box-shadow:0 -2px 0 0 var(--outline), 0 2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline), inset 0 -3px 0 0 var(--parch-shade), inset 0 3px 0 0 var(--parch-hi);align-items:center;gap:.35rem;margin:2px;padding:.1rem .6rem;font-size:.88rem;font-weight:700;display:inline-flex}.chip .dot{width:10px;height:10px;box-shadow:0 0 0 2px var(--outline);background:#8a8a95}.conn-live .dot{background:#3f9a3f}.conn-reconnecting .dot,.conn-connecting .dot{background:#e08a1e}.conn-replay .dot{background:#8a63d0}.chip-warn,.quota-warn{background:#ffd29a}.quota-rest{background:#e8a79f}.quota-unknown{background:var(--parch-dark)}.chip .quota-btn{min-height:28px;box-shadow:none;font-size:inherit;white-space:nowrap;background:0 0;margin:0;padding:.1rem 0}.chip .quota-btn:hover:not(:disabled){background:0 0;text-decoration:underline}.quota-name{font-family:var(--font-display);margin-right:.15rem}.tb-quotas-compact{display:none}.tb-quotas-compact .quota-btn{flex-direction:column;justify-content:center;align-items:center;line-height:1.05;display:flex}.quota-pct{font-weight:700}.bank-pool{background:var(--parch-dark);margin:0 0 .75rem;padding:.5rem .7rem .6rem;box-shadow:inset 0 0 0 2px #3b2a1a59}.bank-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem .6rem;display:flex}.bank-head h3{margin:0}.bank-badge{font-family:var(--font-display);background:var(--parch);box-shadow:inset 0 0 0 2px var(--outline);padding:.1rem .55rem;font-weight:700}.bank-ok{background:#cfe3b8}.bank-warn{background:#ffd29a}.bank-rest{background:#e8a79f}.bank-note,.bank-resting{margin:.4rem 0 0}.bank-resting h4{margin:0}.bank-resting ul{margin:.2rem 0 0;padding-left:1.1rem}.bank-windows{gap:.65rem;margin:.5rem 0;padding:0;list-style:none;display:grid}.bank-windows li{overflow-wrap:anywhere;gap:.15rem;display:grid}.bank-wname{font-weight:700}.qbar{background:var(--parch-hi);height:14px;box-shadow:inset 0 0 0 2px var(--outline);display:block}.qfill{background:var(--green);height:100%;display:block}.qfill-warn{background:#c98a1a}.qfill-rest{background:var(--red)}.qfill-unknown{background:repeating-linear-gradient(45deg,#8a7a64 0 4px,#b7a785 4px 8px)}.bank-crew{overflow-wrap:anywhere;margin:.3rem 0 0}.menu-wrap{display:inline-flex;position:relative}.popover{z-index:30;width:min(20rem,100vw - 24px);max-height:calc(100dvh - var(--bar-h) - var(--safe-t) - 24px);padding:.6rem .8rem .8rem;position:absolute;top:calc(100% + 12px);right:0;overflow:auto}.popover p{margin:0 0 .5rem}.places{gap:6px;margin:0;padding:0;list-style:none;display:grid}.places li{gap:6px;display:flex}.place-go{text-align:left;flex:1;min-height:44px}.place-open{min-width:64px;min-height:44px}.rail{z-index:18;top:calc(var(--bar-edge) + var(--banner-h) + 16px);left:max(14px, var(--safe-l));pointer-events:none;flex-direction:column;align-items:flex-start;gap:12px;display:flex;position:absolute}.rail>*{pointer-events:auto}.rail-toggle{flex:none;justify-content:center;align-items:center;width:48px;min-height:48px;padding:0;display:inline-flex;position:relative}.rail-list{pointer-events:none;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.rail-list[hidden]{display:none}.rail-list>li{pointer-events:auto;flex:none}.rail-chip{background:var(--parch-dark);place-items:center;width:52px;height:52px;min-height:52px;padding:0;display:grid;position:relative}.rail-chip.is-tip{background:var(--parch-hi)}.portrait{image-rendering:pixelated;background-repeat:no-repeat;display:block}.portrait-empty{background:var(--parch-shade)}.status-dot{width:14px;height:14px;box-shadow:0 0 0 2px var(--outline);background:#8a8a95;position:absolute;bottom:-4px;right:-4px}.dot-working{background:var(--gold)}.dot-reviewing{background:#3e8fc2}.dot-planning{background:#9b7bd6}.dot-idle{background:#7fbf6a}.dot-resting,.dot-paused{background:#a9a9b4}.dot-blocked,.dot-error{background:#e0592b}.rail-marker{pointer-events:none;line-height:0;position:absolute;top:-12px;right:-10px}.marker-icon{image-rendering:pixelated;background-repeat:no-repeat;display:block}.rail-tip{z-index:40;pointer-events:none;gap:2px;width:max-content;max-width:min(260px,100vw - 16px);padding:.5rem .7rem;font-size:.9rem;display:grid;position:fixed;transform:translateY(-50%)}.rail-tip.below{transform:translate(-50%)}.tip-name{font-family:var(--font-display);font-size:1.05rem}.tip-title,.tip-mission{color:var(--ink-soft)}.view-ctl{z-index:18;top:calc(var(--bar-edge) + var(--banner-h) + 16px);right:max(14px, var(--safe-r));flex-direction:column;gap:10px;display:flex;position:absolute}.btn-view{width:44px;height:44px;min-height:44px;font-family:var(--font-display);place-items:center;padding:0;font-size:26px;line-height:1;display:grid;position:relative}.glyph{width:20px;height:20px;display:block;position:relative}.glyph-fit{background:linear-gradient(var(--ink), var(--ink)) 0 0 / 8px 3px no-repeat, linear-gradient(var(--ink), var(--ink)) 0 0 / 3px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) 100% 0 / 8px 3px no-repeat, linear-gradient(var(--ink), var(--ink)) 100% 0 / 3px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) 0 100% / 8px 3px no-repeat, linear-gradient(var(--ink), var(--ink)) 0 100% / 3px 8px no-repeat, linear-gradient(var(--ink), var(--ink)) 100% 100% / 8px 3px no-repeat, linear-gradient(var(--ink), var(--ink)) 100% 100% / 3px 8px no-repeat}.glyph-follow:before{content:"";border:3px solid var(--ink);border-radius:50%;position:absolute;inset:1px}.glyph-follow:after{content:"";background:var(--ink);width:6px;height:6px;position:absolute;top:7px;left:7px}.glyph-joy{background:linear-gradient(var(--ink), var(--ink)) 50% 0 / 4px 100% no-repeat, linear-gradient(var(--ink), var(--ink)) 0 50% / 100% 4px no-repeat, linear-gradient(var(--ink), var(--ink)) 50% 50% / 10px 10px no-repeat}.joystick{z-index:17;left:max(18px, var(--safe-l));bottom:calc(max(10px, var(--safe-b)) + var(--cmd-h) + 18px);width:112px;height:112px;box-shadow:0 0 0 3px var(--outline), inset 0 0 0 6px #3b2a1a59;touch-action:none;-webkit-user-select:none;user-select:none;background:#f3e6c48c;border-radius:50%;place-items:center;display:grid;position:absolute}.joystick-knob{background:var(--parch);width:52px;height:52px;box-shadow:0 0 0 3px var(--outline), inset 0 -4px 0 0 var(--parch-shade);pointer-events:none;border-radius:50%}.hint-wrap{z-index:16;left:0;right:0;bottom:calc(max(12px, var(--safe-b)) + var(--cmd-h) + 64px);pointer-events:none;justify-content:center;padding:0 12px;display:flex;position:absolute}.hint{pointer-events:auto;background:var(--parch-hi);max-width:100%;min-height:44px;padding:.3rem 1rem}.cmd-wrap{z-index:19;left:50%;bottom:max(12px, var(--safe-b));width:min(560px,100% - 24px);position:absolute;transform:translate(-50%)}.toast-slot{pointer-events:none;justify-content:center;display:flex;position:absolute;bottom:calc(100% + 12px);left:0;right:0}.toast{margin:0;padding:.5rem 1rem;font-weight:700;animation:.2s ease-out toast-in}.cmd{min-height:var(--cmd-h);align-items:center;gap:8px;padding:8px 8px 8px 10px;display:flex}.cmd input{flex:auto;min-width:0}.cmd-hint{flex:none}.btn-send{background:var(--gold);min-width:72px;min-height:44px;font-family:var(--font-display);padding:.3rem 1rem;font-size:1.05rem}.village{--bar-edge:max(calc(var(--safe-t) + var(--bar-h)), var(--bar-real-h,0px));--view-col-h:224px;--feed-bottom:max(16px, var(--safe-b));--feed-top:calc(var(--bar-edge) + var(--banner-h) + 16px + var(--view-col-h) + 12px)}.feed-card{z-index:17;right:max(16px, var(--safe-r));bottom:var(--feed-bottom);width:min(340px,100vw - 32px);max-height:min(60dvh, calc(100dvh - var(--feed-bottom) - var(--feed-top)));flex-direction:column;display:flex;position:absolute}.feed-full{width:min(420px,100vw - 32px)}@media (width>=1181px){.feed-full{width:min(420px,max(300px,50vw - 308px))}}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;padding:6px 8px 6px 12px;display:flex}.card-title{flex:auto;align-items:center;gap:.4rem;min-width:0;margin:0;font-size:1.1rem;display:flex}.card-actions{flex:none;gap:6px;margin-left:auto;display:flex}.btn-mini{min-height:32px;padding:.15rem .6rem;font-size:.85rem}.card-body{flex-direction:column;min-height:0;padding:0 12px 12px;display:flex;overflow:hidden}.card-body[hidden]{display:none}.feed-latest{gap:4px;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.feed-latest li{white-space:nowrap;text-overflow:ellipsis;background:var(--parch-dark);padding:3px 6px;overflow:hidden}.feed-new{animation:.35s ease-out feed-in}.cc-tools{flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem;display:flex}.cc-tools select{max-width:11rem}.feed{background:var(--parch-hi);min-height:0;max-height:40dvh;margin:0;padding:.25rem;font-size:.9rem;list-style:none;overflow:auto}.feed li{border-bottom:1px solid #5a40262e;padding:.25rem}.feed time,.feed-latest time{color:var(--ink-soft);font-variant-numeric:tabular-nums}.tag{background:var(--parch-shade);text-transform:uppercase;letter-spacing:.03em;padding:0 .35rem;font-size:.75rem;font-weight:700;display:inline-block}.pill{background:var(--parch-dark);border-left:6px solid #8a8a95;padding:0 .5rem;font-size:.82rem;font-weight:700;display:inline-block}.pill-working{border-color:#d29a1a}.pill-reviewing{border-color:#3e8fc2}.pill-planning{border-color:#9b7bd6}.pill-idle{border-color:#5fa84a}.pill-blocked,.pill-error{border-color:#d9622b}.pill-resting,.pill-paused{border-color:#8a8a95}.dialog-backdrop{inset:0;top:var(--vv-top,0px);height:var(--vv-h,100dvh);z-index:50;padding:max(14px, var(--safe-t)) max(14px, var(--safe-r)) max(14px, var(--safe-b)) max(14px, var(--safe-l));background:#140c0699;place-items:center;display:grid;position:fixed;bottom:auto}.dialog{width:min(36rem,100%);max-height:min(86dvh, 46rem, calc(var(--vv-h,100dvh) - 28px));flex-direction:column;padding:0;animation:.16s ease-out pop-in;display:flex;overflow:hidden}.sheet-grip{display:none}.dialog-head{background-color:var(--wood);color:var(--parch);background-image:repeating-linear-gradient(90deg,#00000014 0 4px,#0000 4px 8px);justify-content:space-between;align-items:center;gap:1rem;padding:8px 10px 8px 16px;display:flex;box-shadow:inset 0 3px #ffe0a02e}.dialog-head h2{color:var(--parch);text-shadow:0 2px 0 var(--wood-dark);margin:0;font-size:1.35rem}.btn-close{flex:none;place-items:center;width:44px;height:44px;min-height:44px;padding:0;display:grid}.x-icon{width:18px;height:18px;display:block;position:relative}.x-icon:before,.x-icon:after{content:"";background:var(--ink);width:4px;height:20px;position:absolute;top:-1px;left:7px}.x-icon:before{transform:rotate(45deg)}.x-icon:after{transform:rotate(-45deg)}.dialog-body{overscroll-behavior:contain;padding:.8rem 1rem 1.1rem;overflow:auto}.dialog-body h3{margin:1rem 0 .4rem;font-size:1.1rem}.dialog-body>p:first-child{margin-top:0}.facts{grid-template-columns:max-content 1fr;gap:.25rem 1rem;margin:.5rem 0;display:grid}.facts dt{color:var(--ink-soft)}.facts dd{margin:0}.cards{gap:.5rem;margin:0 0 .75rem;padding:0;list-style:none;display:grid}.cards li{background:var(--parch-dark);padding:.4rem .6rem;box-shadow:inset 0 0 0 2px #3b2a1a59}.logbox{color:#f3e6c4;overflow-wrap:anywhere;background:#2b1d11;max-height:14rem;margin:0;padding:.4rem .6rem .4rem 1.6rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;overflow:auto}.form-grid{gap:.7rem;display:grid}.form-grid p{margin:0}.form-grid label{gap:.25rem;display:grid}.form-grid label.check{align-items:center;min-height:44px;display:flex}.row-actions{flex-wrap:wrap;gap:.75rem;display:flex}details summary{cursor:pointer;min-height:32px;font-weight:700}.dialog-confirm{z-index:60}.dialog-modal{z-index:55;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#140c068c}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dialog-modal{background:#140c06d9}}.dialog-modal .dialog{width:min(44rem,100%)}.new-mission{gap:.6rem;margin:0}.new-mission-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.new-mission-row>label{min-width:0}@media (width<=700px),(height<=500px){.new-mission-row{grid-template-columns:minmax(0,1fr)}}.form-error{color:#8a1f14;margin:.2rem 0;font-weight:700}.result{color:#25561d;overflow-wrap:anywhere;min-height:0;margin:0 0 .5rem;font-weight:700}.result:empty{display:none}.result:focus{outline:none}.mission-form{background:var(--parch-dark);margin:0 0 1rem;padding:.6rem .7rem;box-shadow:inset 0 0 0 2px #3b2a1a59}.mission-form select,.mission-form input[type=text],.mission-actions select,.approval-note input{width:calc(100% - 4px)}.form-actions{z-index:3;background:var(--parch);margin:.4rem 0 0;padding:.5rem 0 .2rem;position:sticky;bottom:0;box-shadow:0 -2px #3b2a1a40}.mission-form .form-actions{background:var(--parch-dark)}.dialog-confirm .form-actions{box-shadow:none;background:0 0;position:static}.mission-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.mission-head>span{overflow-wrap:anywhere;min-width:0}.mission-head button{flex:none;min-width:44px;min-height:44px}.mission-actions{border-top:2px dashed #3b2a1a59;margin-top:.5rem;padding-top:.5rem}.action-row{flex-wrap:wrap;align-items:end;gap:.6rem;display:flex}.action-row label{flex:10rem;min-width:0}.action-row button{min-height:44px}.approval p{margin:.25rem 0}.approval-why{overflow-wrap:anywhere}.approval-note{gap:.25rem;margin:.4rem 0;display:grid}.working strong{font-family:var(--font-display)}.logbox{white-space:pre-wrap}.bell-paused,.bell-paused:hover:not(:disabled){background:var(--gold)}.pause-banner-wrap{z-index:19;top:calc(var(--bar-edge) + 8px);left:max(10px, var(--safe-l));right:max(10px, var(--safe-r));pointer-events:none;justify-content:center;display:flex;position:absolute}.pause-banner{background-color:var(--gold);pointer-events:auto;justify-content:space-between;align-items:center;gap:.75rem;max-width:calc(100% - 4px);min-height:48px;margin:2px;padding:.15rem .5rem .15rem .9rem;display:flex}@media (width<=700px){.pause-banner-more{display:none}}.pause-banner-text{min-width:0}.pause-banner button{min-height:44px}.village[data-pause=paused],.village[data-pause=stopping],.village[data-pause=resuming]{--banner-h:60px}@keyframes feed-in{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (width>=1001px) and (width<=1499px) and (height>=501px){.tb-brand .brand-wordmark{display:none}.tb-brand .brand-emblem{display:block}.topbar,.topbar .tb-group{gap:6px}}@media (width>=1001px) and (width<=1199px) and (height>=501px){.topbar .tb-brand{display:none}.topbar .tb-actions .menu-wrap .lbl{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width>=1001px) and (height>=501px){.topbar .tb-group{flex-shrink:0}.topbar .btn-icon{white-space:nowrap;gap:6px;min-height:44px;padding-inline:8px;line-height:1.15}.topbar .btn-icon .lbl{white-space:nowrap}.topbar .conn{white-space:nowrap;min-height:44px;padding-inline:10px}.topbar .tb-stats .chip-quota{margin-inline:0}.topbar .tb-quotas-wide .chip-quota{padding-block:0}.topbar .quota-btn{min-width:44px;min-height:44px}}@media (width>=1001px) and (width<=1199px) and (height>=501px){.topbar .btn-icon{padding-inline:4px}}@media (width<=1000px),(height<=500px){.topbar .tb-quotas-wide{display:none}.topbar .tb-quotas-compact{display:flex}.topbar,.tb-group{gap:6px}.brand-wordmark{display:none}.brand-emblem{display:block}.lbl,.tb-brand .brand-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.topbar .tb-quotas{top:100%;right:calc(max(8px, var(--safe-r)) + 56px);gap:4px;position:absolute}.topbar .chip-quota{min-height:44px;margin:0;padding:0}.topbar .chip-quota .quota-btn{min-width:44px;min-height:44px;padding:0 8px}.btn-icon{justify-content:center;min-width:44px;min-height:44px;padding:.2rem}.btn-icon .badge{text-align:center;min-width:20px;color:var(--parch);background:var(--red);box-shadow:0 0 0 2px var(--outline);padding:0 4px;font-size:.8rem;line-height:18px;position:absolute;top:-4px;right:-7px}.envelope-on .badge{color:var(--parch)}.rail-toggle .badge{text-align:center;min-width:20px;color:var(--parch);background:var(--outline);box-shadow:0 0 0 2px var(--parch);padding:0 4px;font-size:.8rem;line-height:18px;position:absolute;top:-4px;right:-7px}.chip.conn{min-height:44px;margin:2px 1px;padding:0 3px}.chip.conn .dot{width:14px;height:14px}}@media (height<=500px) and (width>=701px){.topbar .tb-quotas{top:calc(100% + var(--banner-h) + 72px);right:max(8px, var(--safe-r))}}@media (width>=1001px) and (height>=501px){.rail-toggle .badge{text-align:center;min-width:20px;color:var(--parch);background:var(--outline);box-shadow:0 0 0 2px var(--parch);padding:0 4px;font-size:.8rem;line-height:18px;position:absolute;top:-4px;right:-7px}}@media (width<=1180px){.village{--feed-bottom:calc(max(12px, var(--safe-b)) + var(--cmd-h) + 24px)}.hint-wrap{bottom:calc(max(12px, var(--safe-b)) + var(--cmd-h) + 24px + 124px)}}.rail-scroll{pointer-events:none;min-width:0;min-height:0;display:flex;position:relative}.rail-scroll[hidden]{display:none}.rail-list{overscroll-behavior:contain;scrollbar-width:none;max-height:calc(100dvh - var(--safe-t) - var(--bar-h) - var(--banner-h) - 16px - 48px - 12px - max(14px, var(--safe-b)) - 24px);margin:-6px -14px -50px -6px;padding:6px 14px 50px 6px;overflow:auto}.rail-list::-webkit-scrollbar{display:none}.rail-more{z-index:3;background:var(--parch-hi);min-height:0;color:var(--ink);pointer-events:auto;justify-content:center;align-items:center;gap:1px;margin:0;padding:0;font-size:11px;line-height:1;display:flex;position:absolute}.more-arrow{border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);width:8px;height:8px}.more-count{font-family:var(--font-body);font-weight:700}.rail-more{flex-direction:column-reverse;height:44px;left:0;right:0}.rail-more-prev{top:0}.rail-more-next{bottom:0}.rail-more-next .more-arrow{margin-top:-3px;transform:rotate(45deg)}.rail-more-prev .more-arrow{margin-bottom:-3px;transform:rotate(-135deg)}@media (width<=700px){:root{--bar-h:56px}.topbar{padding-left:max(8px, var(--safe-l));padding-right:max(8px, var(--safe-r));gap:4px}.tb-group{gap:4px}.rail{left:0;right:0;top:calc(var(--bar-edge) + var(--banner-h) + 12px);padding:0 max(10px, var(--safe-r)) 0 max(14px, var(--safe-l));flex-direction:row;align-items:center;gap:8px}.rail-toggle{width:44px;min-height:44px}.rail-chip{width:44px;height:44px;min-height:44px}.rail-list{pointer-events:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-direction:row;flex:1;gap:10px;min-width:0;margin:-12px 0 -8px;padding:12px 8px 8px 6px;overflow:auto hidden}.rail-list::-webkit-scrollbar{display:none}.rail-list>li{scroll-snap-align:start}.rail-scroll{flex:1;min-width:0}.rail-list{max-height:none;margin:-12px 0 -8px;padding:12px 8px 8px 6px;scroll-padding:0 8px 0 6px}.rail-scroll[data-more-next=true]:after{content:"";pointer-events:none;background:linear-gradient(to right, transparent, var(--parch-hi));width:10px;position:absolute;top:9px;bottom:5px;right:0}.village{--rail-h:70px;--joy-clear:0px;--feed-bottom:calc(max(10px, var(--safe-b)) + var(--cmd-h) + 18px);--feed-top:calc(var(--bar-edge) + var(--banner-h) + 8px + var(--rail-h))}.village[data-joystick=on]{--joy-clear:calc(112px + 10px)}.view-ctl{top:calc(var(--bar-edge) + var(--banner-h) + 12px);right:max(12px, var(--safe-r));gap:8px}.rail{right:calc(max(12px, var(--safe-r)) + 56px)}.topbar .tb-quotas-compact{top:calc(100% + var(--banner-h) + 72px);left:max(8px, var(--safe-l));right:auto}.topbar .tb-quotas-compact .quota-btn{width:62px}.village[data-feed=full] .view-ctl{display:none}.scene-note{top:calc(var(--bar-edge) + var(--banner-h) + 150px)}.cmd-wrap{left:max(10px, var(--safe-l));right:max(10px, var(--safe-r));bottom:max(10px, var(--safe-b));width:auto;transform:none}.cmd-hint{display:none}.feed-card{left:calc(max(12px, var(--safe-l)) + max(0px, var(--joy-clear) + 4px));right:max(12px, var(--safe-r));width:auto;max-height:none}.feed-card.feed-full{left:max(12px, var(--safe-l));bottom:calc(max(10px, var(--safe-b)) + var(--cmd-h) + 10px + var(--joy-stack,0px));max-height:calc(100dvh - var(--feed-top) - max(10px, var(--safe-b)) - var(--cmd-h) - 10px - var(--joy-stack,0px))}.village[data-joystick=on] .feed-card.feed-full{--joy-stack:calc(8px + 112px + 10px)}.feed-card.feed-full .card-body{flex:auto}.feed-card.feed-full .feed{flex:auto;max-height:none}.feed-latest li:nth-child(n+2){display:none}.card-head{padding-left:10px}.card-actions .btn-mini{min-width:44px;padding-left:.5rem;padding-right:.5rem}.joystick{left:max(16px, var(--safe-l));bottom:calc(max(10px, var(--safe-b)) + var(--cmd-h) + 18px)}.hint-wrap{bottom:calc(max(10px, var(--safe-b)) + var(--cmd-h) + 18px + 136px + 12px);padding:0 calc(max(12px, var(--safe-r), var(--safe-l)) + 44px + 10px)}.hint{white-space:normal}.popover{top:calc(var(--bar-edge) + 8px);left:max(10px, var(--safe-l));right:max(10px, var(--safe-r));width:auto;position:fixed}.menu-wrap{position:static}}@media (width<=360px){.topbar{padding-left:max(4px, var(--safe-l));padding-right:max(4px, var(--safe-r));gap:2px}.tb-group{gap:2px}.tb-brand{display:none}.topbar .btn-icon{margin:0}.chip.conn{margin:2px 0;padding:0 2px}}@media (width<=700px),(height<=500px){.dialog-backdrop{place-items:end center;padding:0}.dialog{width:100%;max-width:42rem;max-height:min(88dvh, var(--vv-h,100dvh));padding-bottom:var(--safe-b);box-shadow:0 -2px 0 0 var(--outline), -2px 0 0 0 var(--outline), 2px 0 0 0 var(--outline), inset 0 4px 0 0 var(--parch-hi);margin:0;animation:.22s ease-out sheet-up}.sheet-grip{background:var(--outline);opacity:.55;width:44px;height:6px;margin:8px auto 0;display:block}.dialog-head{margin-top:6px}}@media (height<=500px){:root{--bar-h:48px;--cmd-h:54px}.rail-list{max-height:calc(100dvh - var(--bar-h) - var(--banner-h) - var(--safe-t) - var(--cmd-h) - var(--safe-b) - 100px);scrollbar-width:none;margin:-8px -14px -50px -6px;padding:8px 14px 50px 6px;overflow-y:auto}.rail-chip{width:48px;height:48px;min-height:48px}.cmd-wrap{left:calc(max(14px, var(--safe-l)) + 124px);right:calc(max(14px, var(--safe-r)) + min(260px, 30vw) + 14px);width:auto;transform:none}.feed-card{width:min(260px,30vw);bottom:max(10px, var(--safe-b))}.feed-latest li:nth-child(n+2){display:none}.feed-compact .card-title-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card-head{padding-left:8px}.card-actions .btn-mini{min-width:44px;padding-left:.4rem;padding-right:.4rem}.feed-card.feed-full{width:min(360px,50vw);max-height:calc(100dvh - var(--bar-h) - var(--banner-h) - var(--safe-t) - 40px)}.hint-wrap{bottom:calc(max(10px, var(--safe-b)) + var(--cmd-h) + 14px);padding:0 max(136px, calc(max(14px, var(--safe-l)) + 124px))}.joystick{bottom:max(14px, var(--safe-b));width:104px;height:104px}.view-ctl{right:max(14px, var(--safe-r));flex-direction:row}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.village[data-motion=reduced] *,.village[data-motion=reduced] :before,.village[data-motion=reduced] :after{transition:none!important;animation:none!important}@media (pointer:coarse){.btn-mini,.btn-send,button,button.px,select,textarea,.btn,.dialog summary{min-height:44px}.dialog summary{align-items:center;display:flex}.btn-mini{min-width:56px}.feed-latest li{padding:6px}}
