html,body{height:100%;overflow:hidden;overscroll-behavior:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}html{font-size:calc(16px * var(--ui-scale, 1))}#app{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}#ui-root{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none;display:grid;gap:var(--gap);padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto auto;grid-template-areas:"top" "stage" "act" "content" "nav"}#ui-root.ui-hidden{display:none}#app:not([data-tier=phone],[data-tier=phone-compact]) #ui-root{max-width:26.875rem;margin-inline:auto}#app:not([data-tier=phone],[data-tier=phone-compact]) .edit-screen{max-width:26.875rem;margin-inline:auto}[data-slot=top]{grid-area:top;--occlude: top}[data-slot=act]{grid-area:act;--occlude: bottom}[data-slot=content]{grid-area:content;--occlude: bottom}[data-slot=nav]{grid-area:nav;--occlude: bottom}#app[data-mode=tab] #ui-root{grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"top" "content" "nav"}#app:is([data-mode=tab],[data-mode=edit]) [data-slot=act]{display:none}#app:not([data-status=settled]) [data-slot=act]>:not(.act-chat,.hud-chat-ticker){display:none}#app[data-mode=edit] #ui-root>:not([data-slot=top]),#app[data-mode=edit] .hud-top>:not(.hud-res){display:none}#ui-root[inert]{pointer-events:none}.hud-top{position:relative;display:grid;grid-template-columns:minmax(0,1fr) var(--tide-w);grid-template-areas:"id tide" "res tide";column-gap:.5rem;row-gap:.375rem;align-items:start;container-type:inline-size;min-width:0}.hud-id{grid-area:id;display:flex;align-items:stretch;gap:.375rem;min-width:0;height:var(--top-row-h)}.hud-res{grid-area:res;min-width:0}.hud-tide{grid-area:tide;min-width:0;position:relative}.hud-id .player-badge{flex:1 1 auto;min-width:0;height:100%;padding:.25rem .625rem .25rem .375rem}.hud-id .player-info{min-width:0;flex:1 1 auto}.hud-id .player-title{display:flex;align-items:baseline;gap:.25rem;min-width:0;white-space:nowrap;font-size:.8125rem;line-height:1.2}.hud-id .player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-id .level-chip{flex:none;white-space:nowrap}.hud-id .level-chip .lv-short{display:none}.hud-id .player-sub{font-size:var(--fs-meta);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-id .btn-sound-toggle{flex:none;width:var(--hit);min-width:var(--hit);height:100%}.hud-res .resource-bar{height:var(--shelf-h);grid-template-columns:1fr 1.6fr 1fr 1fr 1fr;grid-template-rows:minmax(0,1fr);padding:.25rem;gap:.1875rem}.hud-res .res-pill{min-width:0;min-height:0;padding:.125rem 1px}.hud-res .res-icon{flex:0 1 auto;min-height:0}.hud-res .res-val{flex:none;max-width:100%;overflow:hidden;text-overflow:ellipsis}.hud-res .res-pill[data-fill]{position:relative;overflow:hidden;--fill-ink: var(--teal-shutter)}.hud-res .res-pill[data-fill]:after{content:"";position:absolute;left:.1875rem;right:.1875rem;bottom:1px;height:.1875rem;border-radius:.125rem;background:linear-gradient(90deg,var(--fill-ink) var(--fill, 0%),rgba(59,36,22,.14) var(--fill, 0%));pointer-events:none}.hud-res .res-pill[data-fill=near]{--fill-ink: var(--mustard)}.hud-res .res-pill[data-fill=full]{--fill-ink: var(--terracotta-ink);border-color:var(--terracotta-ink)}.hud-res .res-pill[data-fill=full] .res-val{color:var(--terracotta-ink)}.hud-tide .tide-clock-card{width:var(--tide-w);height:var(--tide-h);justify-content:center}.tide-label-core{text-transform:none}.hud-tide .btn-announce-hud{position:absolute;top:calc(0px - min(.625rem,var(--safe-t)));right:calc(0px - min(.625rem,var(--safe-r)));padding:0;border-radius:50%}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .hud-tide{display:flex;align-items:center;gap:.375rem}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .hud-tide .btn-announce-hud{position:relative;top:auto;right:auto;flex:none}@container (max-width: 21rem){.hud-top:has(.hud-tide .btn-announce-hud:not([hidden])) .hud-id .level-chip{display:none}}#app[data-tier=phone-compact] .hud-top{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"id tide" "res res"}#app[data-mode=edit] .hud-top{grid-template-columns:minmax(0,1fr);grid-template-areas:"res"}#app[data-mode=edit] .hud-top>.hud-tide{display:none}#app[data-tier=phone-compact] .hud-id .avatar-frame{width:2rem;height:2rem}#app[data-tier=phone-compact] .hud-id .player-sub{display:none}#app[data-tier=phone-compact] .hud-id .player-badge{padding:.1875rem .5rem .1875rem .3125rem;gap:.375rem}#app[data-tier=phone-compact] .hud-id .level-chip .lv-long,#app[data-tier=phone-compact] .hud-id .level-chip .lv-sep{display:none}#app[data-tier=phone-compact] .hud-id .level-chip .lv-short{display:inline}#app[data-tier=phone-compact] .hud-id .level-chip{padding:0 .3125rem;border:1.5px solid var(--outline-brown);border-radius:62.4375rem;background:var(--mustard);font-size:var(--fs-label);line-height:1.3}#app[data-tier=phone-compact] .hud-res .resource-bar{grid-template-columns:minmax(3.25rem,1fr) minmax(3.25rem,1.4fr) minmax(3.25rem,1fr) minmax(3.25rem,1fr) minmax(3.25rem,1fr);padding:.1875rem .25rem;gap:.25rem}#app[data-tier=phone-compact] .hud-res .res-pill{gap:0;padding:1px .125rem}#app:is([data-tier=phone-compact],[data-tier=phone-land]) .hud-res .resource-bar{padding:0 .25rem}#app[data-tier=phone-compact] .hud-res .res-icon{width:.875rem;height:.875rem}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-clock-card{flex:none;flex-direction:row;align-items:center;justify-content:flex-start;gap:.125rem;padding:.1875rem;border-radius:.875rem}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-dial{width:1.75rem;height:1.75rem;flex:none;border-width:.125rem;box-shadow:none}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-text{display:flex;flex-direction:column;align-items:flex-start;min-width:0}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-label{font-size:var(--fs-meta)}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-label-prefix,#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-cd-next{display:none}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-label-core{text-transform:capitalize}#app:is([data-tier=phone-compact],[data-tier=phone-land],[data-tier=wide][data-short]) .tide-countdown{padding:0 .125rem;border-width:1.5px;letter-spacing:-.5px}.hud-actions{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:.375rem;height:var(--act-h);min-width:0;container-type:inline-size}.hud-guide-slot{flex:0 1 3rem;min-width:0;height:3rem;margin-right:auto}.hud-guide-slot:empty{display:none}.hud-actions>:first-child:not(.hud-guide-slot),.hud-guide-slot:empty+*{margin-left:auto}.hud-actions .btn-chunky{flex:none;height:var(--hit);min-height:var(--hit);padding:0 .625rem;font-size:var(--fs-body);white-space:nowrap;touch-action:manipulation}.hud-actions .act-primary{height:var(--hit-primary);min-width:6.5rem;font-size:var(--fs-btn);padding:0 .5rem;gap:.3125rem}.act-glyph,.act-icon{width:1.375rem;height:1.375rem;flex:none;display:block}.act-primary .act-icon{width:1.25rem;height:1.25rem;object-fit:contain}.act-edit .act-glyph{display:none}.hud-actions .btn-chat-hud{width:var(--hit);padding:0;overflow:visible}@container (max-width: 35rem){.hud-actions .act-secondary{width:var(--hit);padding:0}.hud-actions .act-secondary .act-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@container (max-width: 22.2rem){.hud-actions .act-edit{width:var(--hit);padding:0}.hud-actions .act-edit .act-glyph{display:block}.hud-actions .act-edit .act-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@container (max-width: 20rem){.hud-actions{gap:.25rem}.hud-actions .act-primary .act-icon{display:none}}.hud-actions .hud-chat-ticker{position:absolute;right:0;bottom:calc(100% + .375rem);margin:0;max-width:min(17.5rem,100%)}.hud-popup{position:absolute;z-index:12;top:calc(var(--hud-top-bottom, 8.125rem) + .5rem);left:calc(var(--free-l, .625rem) + .5rem);inline-size:min(25.625rem,calc(var(--free-w, 25.625rem) - 1rem));pointer-events:none}.hud-popup:empty{display:none}.hud-popup>*{pointer-events:auto}#app>#toast-stack{position:absolute;z-index:30;top:calc(var(--hud-top-bottom, 8.125rem) + .5rem);left:calc(var(--free-l, .625rem) + .5rem);inline-size:min(25.625rem,calc(var(--free-w, 25.625rem) - 1rem))}#app[data-mode=home] [data-slot=content]{align-self:end;justify-self:center;inline-size:min(var(--room-w),100%);display:flex;flex-direction:column;gap:.375rem;min-width:0}.room-card{min-width:0}.room-card .wood-header{padding:.25rem .875rem .25rem 1rem;font-size:var(--fs-body);gap:.5rem}.room-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-card .room-status{flex:none;white-space:nowrap;font-size:var(--fs-label)}.room-card[data-variant=full] .room-card-body{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"out act" "work act" "prev prev" "note note";align-items:center;gap:.1875rem .5rem;padding:.3125rem .5625rem .375rem}.room-out{grid-area:out;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;min-width:0}.room-card .worker-row{grid-area:work;min-width:0;flex-wrap:wrap}.room-card .room-right-actions{grid-area:act;align-self:stretch;justify-content:center}.room-preview{grid-area:prev;min-width:0}.room-understaffed{grid-area:note;min-width:0}.room-card .room-output-pill{padding:1px .4375rem;font-size:var(--fs-label);white-space:nowrap}.room-card .room-output-pill .res-icon{width:1rem;height:1rem}.room-use-chip{display:inline-flex;align-items:center;padding:1px .4375rem;border:1.5px solid var(--outline-brown);border-radius:.5625rem;background:#fbe9dc;color:#8a3a1f;font-size:var(--fs-label);font-weight:800;white-space:nowrap}.worker-chip{display:inline-flex;align-items:center;padding:1px .4375rem;border:1.5px solid var(--outline-brown);border-radius:62.4375rem;background:var(--cream-light);color:var(--outline-brown);font-size:var(--fs-label);font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}.room-preview,.room-understaffed{font-size:var(--fs-meta);font-weight:800;line-height:1.25;color:var(--rust)}.room-understaffed{color:#a4452a}.room-card .btn-upgrade{min-height:var(--hit-primary);min-width:6.5rem;height:100%}.room-card .room-cost{flex-wrap:nowrap;white-space:nowrap}.room-toggle{flex:none;width:var(--hit);height:var(--hit);border:0;border-radius:.625rem;background:none;color:var(--outline-brown);font:800 1.125rem var(--font-main);cursor:pointer;touch-action:manipulation}.room-toggle:focus-visible{outline:.1875rem solid var(--mustard);outline-offset:-.1875rem}.room-card[data-variant=strip]{display:flex;align-items:center;gap:.375rem;max-height:var(--room-strip-max);padding:.1875rem .1875rem .1875rem .625rem}.room-strip-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.125rem}.room-strip-row{display:flex;align-items:center;gap:.375rem;min-width:0}.room-strip-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body);font-weight:800}.room-strip-out{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-label);font-weight:800;color:#1f6e43}.room-card[data-variant=strip] .btn-upgrade{flex:none;height:var(--hit-primary);min-width:5.75rem;padding:.125rem .5rem}.room-card[data-variant=strip] .btn-upgrade-title{font-size:var(--fs-body)}.room-card[data-variant=strip] .btn-upgrade-cost{padding:0 .3125rem}.room-card[data-variant=idle]{display:flex;align-items:center;gap:.5rem;max-height:var(--room-idle-max);padding:.25rem .625rem}.room-idle-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-body);font-weight:800}.room-idle-icon{width:2.25rem;height:2.25rem;object-fit:contain;flex:none}.sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}[data-slot=nav]{min-width:0}.bottom-nav{height:var(--nav-h);padding:.375rem;gap:.3125rem}.bottom-nav .nav-tab{min-width:0;min-height:var(--hit);padding:.1875rem .125rem;touch-action:manipulation}.bottom-nav .nav-tab-label{font-size:var(--fs-nav)}#app[data-tier=phone-compact] .bottom-nav{padding:.1875rem .25rem;gap:.1875rem}#app[data-tier=phone-compact] .bottom-nav .nav-svg{width:1.375rem;height:1.375rem}#app[data-sheet=peek]{--sheet-h: var(--sheet-peek)}#app[data-sheet=half]{--sheet-h: var(--sheet-half)}#app[data-sheet=full]{--sheet-h: var(--sheet-full)}#app[data-mode=tab] [data-slot=content]{align-self:end;block-size:var(--sheet-h, 50%);min-block-size:0;min-width:0;display:flex;flex-direction:column}#app[data-tier=phone-compact][data-mode=tab]:not([data-tab=market],[data-tab=drain]) .hud-res{display:none}#app[data-tier=phone-compact][data-mode=tab]:not([data-tab=market],[data-tab=drain]) .hud-top{grid-template-areas:"id tide"}.tab-sheet{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-radius:1rem}.sheet-grip{flex:none;display:flex;align-items:center;gap:.25rem;min-height:2.75rem;padding:0 .125rem;border-bottom:.125rem dashed rgba(59,36,22,.35);touch-action:none}.sheet-handle{flex:none;position:relative;width:3.5rem;height:var(--hit);border:0;border-radius:.75rem;background:none;cursor:pointer;touch-action:manipulation}.sheet-handle:before{content:"";position:absolute;left:.75rem;right:.75rem;top:50%;height:.375rem;margin-top:-.1875rem;border-radius:62.4375rem;background:var(--rust);box-shadow:inset 0 1.5px #ffffff59}.sheet-handle:focus-visible{outline:.1875rem solid var(--mustard);outline-offset:-.1875rem}.sheet-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-sheet);font-weight:800;color:var(--outline-brown)}.sheet-grip .panel-close{color:var(--outline-brown);border-radius:.75rem}.sheet-body{position:relative;flex:1 1 auto;min-block-size:0;overflow:auto;overscroll-behavior:contain;container:sheet / inline-size;padding:.375rem .375rem .5rem;scrollbar-width:thin;scrollbar-color:var(--rust) transparent}.sheet-body[data-more]:after{content:"";position:sticky;display:block;bottom:-.5rem;height:1.375rem;margin-top:-1.375rem;pointer-events:none;background:linear-gradient(180deg,#f3e6c800,#f3e6c8eb)}.sheet-body .tab-panel-stack{block-size:auto;max-height:none;overflow:visible;padding-right:0}.sheet-body :is(.member-list,.ward-chat-log,.order-list,.slot-list,.ledger-list){max-height:none;overflow:visible}.sheet-body .tab-panel-stack>*{flex-shrink:0}.sheet-body .ward-banner{overflow:visible}.sheet-body .bridge-peek-bar{position:sticky;top:-.375rem;z-index:3;display:flex;align-items:center;gap:.5rem;margin:0;padding:.1875rem .1875rem .1875rem .625rem;font-size:var(--fs-label);line-height:1.25}.bridge-peek-text{flex:1 1 auto;min-width:0}.sheet-body .bridge-peek-bar .btn-chunky{flex:none;min-height:var(--hit);padding:0 .875rem;font-size:var(--fs-body)}#app[data-sheet=peek] .sheet-body[data-bridge]:after{display:none}@container sheet (max-width: 22.5rem){.sheet-body .wood-header{flex-wrap:wrap;row-gap:.125rem}}#app[data-tier^=phone]:not([data-tier=phone-land]) .game-modal-backdrop[data-dialog-variant=sheet]{align-items:flex-end;padding:0 0 calc(var(--safe-b) + var(--kb, 0px))}.game-modal-backdrop[data-dialog-variant=sheet] .dialog-panel{max-height:calc(var(--vvh, 100%) - var(--safe-t) - 1.5rem - var(--safe-b) - var(--kb, 0px));border-radius:1rem}.game-modal-backdrop[data-dialog-variant=sheet] .dialog-header{border-radius:.75rem .75rem 0 0;touch-action:none}.game-modal-backdrop[data-dialog-variant=sheet] .dialog-header:before{content:"";position:absolute;left:50%;top:.25rem;width:2.5rem;height:.25rem;margin-left:-1.25rem;border-radius:62.4375rem;background:#f3e6c8b3}.game-modal-backdrop[data-scrim=light][data-dialog-variant=sheet] .dialog-panel{max-height:min(calc(var(--vvh, 100%) * .6),calc(var(--vvh, 100%) - var(--safe-t) - 1.5rem - var(--safe-b) - var(--kb, 0px)))}#app[data-mode=auth] #ui-root{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.625rem}#ui-root.auth-root>*{width:100%;max-width:23.75rem;flex:none}.auth-brand{margin-bottom:auto;align-self:center;width:auto;max-width:100%;padding:.375rem 1.125rem;font-size:1.375rem;font-weight:800;letter-spacing:1px;text-align:center;pointer-events:none}.auth-brand small{display:block;font-size:var(--fs-meta);letter-spacing:.2px}#app[data-tier=phone-compact] .auth-card-body{padding:.75rem .875rem .5rem}#app[data-tier=phone-compact] .auth-card h1{font-size:1.25rem;margin-bottom:.25rem}#app[data-tier=phone-compact] .game-form{gap:.5rem;margin-top:.625rem}#app[data-tier=phone-compact] .auth-brand{font-size:1.125rem;padding:.25rem .875rem}.wood-header>span:first-child:not(:only-child){flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wood-header>span:last-child:not(:only-child){flex:none;white-space:nowrap}.btn-chunky,.filter-pill{white-space:nowrap}.btn-chunky,.nav-tab,.filter-pill,.panel-close,.sheet-handle,.room-toggle{cursor:pointer}#app:is([data-input=mouse],[data-input=hybrid]) .btn-chunky:hover:not(:disabled),#app:is([data-input=mouse],[data-input=hybrid]) .nav-tab:hover{transform:translateY(-1px)}[data-scroll-x]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.75rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 1.75rem),transparent)}[data-scroll-x][data-scroll-end]{-webkit-mask-image:none;mask-image:none}.sheet-body .market-sell-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto}.sheet-body [data-sell-form] .market-sell-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr)}.sheet-body .donate-submit-col .btn-chunky{min-height:var(--hit)}@container sheet (max-width: 25rem){.sheet-body .market-sell-grid,.sheet-body [data-sell-form] .market-sell-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sheet-body .market-sell-grid>:first-child{grid-column:1 / -1}.sheet-body .market-sell-footer{flex-wrap:wrap}.sheet-body :is([data-contribute-form],[data-dike-form]) .market-sell-grid{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.375rem}.sheet-body :is([data-contribute-form],[data-dike-form]) .market-sell-grid>label:first-child{flex:1 1 100%}.sheet-body :is([data-contribute-form],[data-dike-form]) .market-sell-grid>label:not(:first-child){flex:3 1 4.5rem}.sheet-body :is([data-contribute-form],[data-dike-form]) .donate-submit-col{flex:1 0 auto;min-width:0;max-width:100%}.sheet-body :is([data-contribute-form],[data-dike-form]) .donate-submit-col .btn-chunky{inline-size:100%}}#app[data-mode=home]:not([data-status=settled]) [data-slot=content]{max-block-size:calc(var(--vvh, 37.5rem) * .5);overflow:auto}.tide-text{display:flex;flex-direction:column;align-items:center;gap:.1875rem;min-width:0;max-width:100%}.hud-tide .tide-clock-card{padding:.375rem .1875rem .4375rem}.hud-tide .tide-countdown{padding:1px .125rem;border-width:1.5px;letter-spacing:-.6px}.hud-tide .tide-cd-next{font-size:var(--fs-meta);font-weight:600;letter-spacing:-.5px}.btn-chunky{min-inline-size:max-content}.hud-actions .act-secondary,.hud-actions .btn-chat-hud{min-inline-size:var(--hit)}.drain-footer-row>:not(.btn-chunky),.market-sell-footer>:not(.btn-chunky),.room-extra>:not(.btn-chunky){min-width:0}.room-card[data-variant=strip] .worker-chip{flex:none}.room-card[data-variant=strip],.room-card[data-variant=idle]{overflow:hidden}.edit-screen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:22;padding:calc(var(--hud-top-bottom, 3.75rem) + .375rem) var(--safe-r, .625rem) var(--safe-b, .625rem) var(--safe-l, .625rem);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"hint" "world" "selected" "tray";gap:var(--gap, .5rem);pointer-events:none}.edit-hint{grid-area:hint;justify-self:center;max-width:100%;padding:.375rem .75rem;border-radius:62.4375rem;text-align:center;font-size:.75rem;font-weight:800}.edit-selected{grid-area:selected;overflow:hidden}.edit-selected .wood-header{padding:.25rem 1rem;font-size:.8125rem}.edit-tray{grid-area:tray;--occlude: bottom;display:flex;flex-direction:column;max-height:calc(var(--vvh, 100%) * .45);min-height:0;overflow:hidden}.edit-tray .wood-header{flex:none;min-height:3.25rem;padding:.125rem .25rem .125rem 1.125rem;font-size:.8125rem;gap:.375rem}.edit-tray .wood-header>.edit-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-tray [data-edit-close]{flex:none;min-height:var(--hit-primary, 3rem);min-width:4.75rem;font-size:.875rem}.edit-categories{flex:none;display:flex;gap:.4375rem;padding:.5rem .5rem .1875rem;overflow-x:auto;scrollbar-width:none}.edit-categories .btn-chunky{flex:1 0 auto;min-height:var(--hit, 2.75rem);padding:.25rem .625rem;font-size:.75rem}.edit-shop-items{flex:1 1 auto;min-height:0;display:flex;gap:.4375rem;overflow-x:auto;overflow-y:hidden;padding:.4375rem .5rem .625rem;scroll-snap-type:x mandatory;scroll-padding-inline:.5rem;scrollbar-width:thin;scrollbar-color:var(--rust) var(--cream-paper)}.edit-shop-item{width:6.5rem;min-width:6.5rem;min-height:var(--hit, 2.75rem);border:.125rem solid var(--outline-brown);border-radius:.6875rem;padding:.3125rem .3125rem .4375rem;background:var(--cream-light);color:var(--outline-brown);font-family:var(--font-main);text-align:center;display:flex;flex-direction:column;align-items:center;gap:.1875rem;box-shadow:inset 0 1.5px #fff,0 .125rem 0 var(--outline-brown);touch-action:none;cursor:grab;scroll-snap-align:start}.edit-shop-item.is-selected{background:var(--mustard)}.edit-shop-item:disabled{opacity:.6;cursor:default}.edit-shop-sprite{width:4.125rem;height:3.625rem;object-fit:contain;pointer-events:none}.edit-shop-name{font-size:.6875rem;font-weight:800;line-height:1.3}.edit-shop-cost{font-size:.6875rem;line-height:1.3;color:var(--rust)}.edit-action-row{display:flex;align-items:stretch;justify-content:space-between;gap:.375rem;padding:.375rem .5rem .5rem}.edit-action-row .btn-chunky{flex:1;flex-direction:column;gap:0;min-height:var(--hit, 2.75rem);font-size:.75rem;padding:.25rem .3125rem}.edit-action-row small{font-size:.6875rem}.edit-cancel{flex:none;min-height:var(--hit, 2.75rem);border:1.5px solid var(--outline-brown);border-radius:.5625rem;padding:.125rem .625rem;background:var(--cream-paper);color:var(--outline-brown);font:800 .6875rem var(--font-main);cursor:pointer}.btn-chunky.btn-chat-hud{position:relative;width:var(--hit, 2.75rem);height:var(--hit, 2.75rem);min-width:var(--hit, 2.75rem);min-height:var(--hit, 2.75rem);padding:0;border-radius:.875rem;background:linear-gradient(180deg,#43b5ab,#2f8f86);color:#f3e6c8;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;overflow:visible;box-shadow:inset 0 .125rem #ffffff73,inset 0 -.125rem #174f4980,0 .1875rem #3b2416}.btn-chunky.btn-chat-hud:after{display:none}.btn-chat-hud .chat-hud-svg{width:1.625rem;height:1.625rem;flex-shrink:0;display:block}.btn-chat-hud .chat-unread-badge{position:absolute;top:-.5625rem;right:-.5625rem;min-width:1.375rem;height:1.375rem;padding:0 .3125rem;border-radius:62.4375rem;background:#b8322a;color:#fff8ea;border:.125rem solid #3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.75rem;font-weight:800;line-height:1.125rem;text-align:center;box-shadow:0 .125rem #3b2416;pointer-events:none;z-index:1}.btn-chat-hud .chat-unread-badge[hidden]{display:none}.hud-chat-ticker{display:flex;align-items:center;gap:.4375rem;max-width:100%;min-height:2.75rem;padding:.375rem .75rem .375rem .4375rem;margin-top:.125rem;border-radius:62.4375rem;border:.125rem solid #3b2416;background:#fbf3dffa;box-shadow:0 .1875rem #3b2416,0 .375rem .875rem #180f0959;color:#3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.78125rem;font-weight:700;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:opacity .35s ease,transform .25s ease}.hud-chat-ticker[hidden]{display:none!important}.hud-chat-ticker.is-fading{opacity:0;transform:translateY(-.25rem);pointer-events:none}.hud-chat-ticker-badge{flex-shrink:0;padding:.125rem .5rem;border-radius:62.4375rem;background:#16534e;color:#fff8ea;border:1.5px solid #3b2416;font-size:.71875rem;font-weight:800}.hud-chat-ticker-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;top:var(--vv-top, 0px);bottom:auto;height:var(--vvh, 100%);z-index:28;display:flex;align-items:flex-end;justify-content:center;background:#180f0961;padding:0 .375rem var(--safe-b, 0px);pointer-events:auto}.chat-sheet-backdrop[hidden]{display:none!important}.chat-panel{width:100%;max-width:35rem;min-width:min(22.5rem,100% - .75rem);height:min(calc(var(--vvh, 100%) * .8),var(--chat-vv-height, 42.5rem));max-height:min(calc(var(--vvh, 100%) * .8),var(--chat-vv-height, 42.5rem));display:flex;flex-direction:column;border-radius:1rem 1rem 0 0;border:.1875rem solid #3b2416;background:#f3e6c8;box-shadow:0 -.25rem #8a5a3c,0 -.5rem 1.5rem #180f0973;overflow:hidden;overflow:clip;container:chat / inline-size}.chat-panel:focus{outline:none}#app:is([data-tier=phone],[data-tier=phone-compact]) .chat-panel{height:min(calc(var(--vvh, 100%) - var(--safe-b, 0px)),var(--chat-vv-height, 100%));max-height:min(calc(var(--vvh, 100%) - var(--safe-b, 0px)),var(--chat-vv-height, 100%))}#app .chat-panel.is-full{height:calc(var(--vvh, 100%) - var(--safe-b, 0px) - max(env(safe-area-inset-top,0px),var(--debug-safe-t, 0px)));max-height:calc(var(--vvh, 100%) - var(--safe-b, 0px) - max(env(safe-area-inset-top,0px),var(--debug-safe-t, 0px)))}#app[data-tier=phone-land] .chat-sheet-backdrop{justify-content:flex-end;align-items:stretch;background:#180f092e;padding:0 var(--safe-r, 0px) 0 0}#app[data-tier=phone-land] .chat-panel{width:23.75rem;max-width:23.75rem;min-width:min(23.75rem,100%);height:min(var(--vvh, 100%),var(--chat-vv-height, 100%));max-height:min(var(--vvh, 100%),var(--chat-vv-height, 100%));border-radius:.875rem 0 0 .875rem;border-right:none;box-shadow:-.25rem 0 #3b2416,-.5rem 0 1.5rem #180f0961}#app[data-tier=wide] .chat-sheet-backdrop.ui-interactive{justify-content:flex-end;align-items:stretch;background:transparent;padding:max(.625rem,env(safe-area-inset-top,0px),var(--debug-safe-t, 0px)) max(.625rem,env(safe-area-inset-right,0px),var(--debug-safe-r, 0px)) max(.625rem,env(safe-area-inset-bottom,0px),var(--debug-safe-b, 0px)) .625rem;pointer-events:none;overflow:hidden}#app[data-tier=wide] .chat-panel,#app[data-tier=wide] .chat-panel.is-compact{pointer-events:auto;box-sizing:border-box;width:min(25rem,100%);max-width:min(25rem,100%);min-width:0;height:auto;max-height:100%;border-radius:1rem;border:.1875rem solid #3b2416;box-shadow:0 .25rem #3b2416,0 .5rem 1.5rem #180f0961}#app[data-tier=wide] .chat-panel .chat-quick-chips{flex-wrap:wrap;overflow-x:visible}.wood-header.chat-header{flex-shrink:0;gap:.5rem;min-height:3.25rem;padding:.25rem .5rem .25rem .875rem;border-radius:.75rem .75rem 0 0}.chat-title{flex-shrink:0;font-size:.9375rem;font-weight:800;white-space:nowrap}.chat-panel .wood-header.chat-header>.chat-title{flex:0 1 auto}.chat-header .chat-tabs-bar{flex:1;min-width:0;display:flex;justify-content:flex-end;gap:.375rem}.chat-tab-btn{flex:1 1 0;max-width:8.25rem;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:.3125rem;min-height:2.75rem;padding:.25rem .625rem;border-radius:.75rem;border:.15625rem solid #3b2416;background:#fbf3df;color:#3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.875rem;font-weight:800;text-shadow:none;white-space:nowrap;cursor:pointer;box-shadow:0 .125rem #3b2416}.chat-tab-btn.is-active{background:linear-gradient(180deg,#f6d371,#e8b84a);color:#3b2416}.chat-tab-btn:disabled,.chat-tab-btn[aria-disabled=true]{cursor:not-allowed;background:#dfd0b2;color:#543824}.chat-tab-btn:focus-visible,.chat-close-btn:focus-visible,.chat-tray-toggle:focus-visible{outline:.1875rem solid #f6d371;outline-offset:.125rem}.chat-tab-badge{min-width:1.25rem;height:1.25rem;padding:0 .3125rem;border-radius:62.4375rem;background:#b8322a;color:#fff8ea;border:1.5px solid #3b2416;font-size:.71875rem;font-weight:800;line-height:1.0625rem}.chat-panel .chat-close-btn{flex-shrink:0;width:2.75rem;height:2.75rem;min-width:2.75rem;min-height:2.75rem;display:grid;place-items:center;padding:0;border-radius:62.4375rem;border:.15625rem solid #3b2416;background:#fbf3df;color:#3b2416;cursor:pointer;box-shadow:0 .125rem #3b2416}.chat-close-btn svg{width:1.125rem;height:1.125rem}.chat-no-ward-note{padding:.4375rem .75rem;background:#fbf3df;border-bottom:.125rem dashed #b99768;color:#543824;font-size:.78125rem;font-weight:600;line-height:1.4;flex-shrink:0}.chat-viewport-wrap{position:relative;flex:1 1 auto;min-height:10rem;display:flex;flex-direction:column;background:#f3e6c8}#app[data-tier=phone-compact] .chat-viewport-wrap,.chat-panel.is-compact .chat-viewport-wrap{min-height:6rem}.chat-messages-list{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.375rem .5rem .5rem;display:flex;flex-direction:column;gap:.25rem}.chat-sr-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chat-history-loader{align-self:center;padding:.1875rem .625rem;border-radius:62.4375rem;background:#e6d4ae;border:1.5px solid #3b2416;color:#543824;font-size:.75rem;font-weight:700}.chat-state-box{align-self:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:1.25rem 0;text-align:center;color:#543824;font-size:.8125rem;font-weight:600}.chat-reload-btn,.chat-retry-btn{min-height:2.5rem;min-width:2.75rem;padding:.25rem .875rem;border-radius:.625rem;border:.125rem solid #3b2416;background:#f3ca60;color:#3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.8125rem;font-weight:800;cursor:pointer;box-shadow:0 .125rem #3b2416;display:inline-flex;align-items:center;justify-content:center;gap:.25rem}.chat-day-sep{display:flex;align-items:center;justify-content:center;margin:.25rem 0 .125rem}.chat-day-sep span{padding:.125rem .6875rem;border-radius:62.4375rem;background:#e2cfa6;border:1.5px solid #3b2416;color:#3b2416;font-size:.71875rem;font-weight:800}.chat-system-chip{align-self:center;display:inline-flex;align-items:center;gap:.375rem;max-width:94%;padding:.1875rem .6875rem;margin:.125rem 0;border-radius:62.4375rem;background:#16534e;color:#fff8ea;border:.125rem solid #3b2416;box-shadow:0 .125rem #3b2416;font-size:.78125rem;font-weight:700;text-align:center;line-height:1.3;user-select:text;-webkit-user-select:text}.chat-system-chip-icon{flex-shrink:0;font-size:.875rem}.chat-row{display:flex;align-items:flex-start;gap:.375rem;max-width:100%}.chat-row:not(.is-grouped){margin-top:.1875rem}.chat-row-other{justify-content:flex-start}.chat-row-own{justify-content:flex-end}.chat-avatar-btn{width:2.375rem;height:2.375rem;min-width:2.375rem;padding:0;border-radius:.75rem;border:.125rem solid #3b2416;background:#f6d371;background:color-mix(in srgb,var(--chat-accent, #e8b84a) 26%,#fbf3df);box-shadow:0 .125rem #3b2416;flex-shrink:0;cursor:pointer;overflow:hidden;display:grid;place-items:end center}.chat-avatar-btn img{width:2.125rem;height:2.125rem;object-fit:contain;object-position:50% 15%}.chat-avatar-spacer{width:2.375rem;flex-shrink:0}#app[data-input=touch] .chat-avatar-btn,#app[data-input=touch] .chat-avatar-spacer{width:2.75rem;min-width:2.75rem}#app[data-input=touch] .chat-avatar-btn{height:2.75rem}#app[data-input=touch] .chat-avatar-btn img{width:2.5rem;height:2.5rem}#app[data-input=touch] .chat-bubble-col{max-width:calc(100% - 3.125rem)}#app[data-input=touch] .chat-quick-chip,#app[data-input=touch] .chat-emoji-btn,#app[data-input=touch] .chat-reload-btn,#app[data-input=touch] .chat-retry-btn{min-height:2.75rem}.chat-bubble-col{display:flex;flex-direction:column;max-width:calc(100% - 2.75rem);min-width:0}.chat-row-own .chat-bubble-col{align-items:flex-end;max-width:86%}.chat-row-other .chat-bubble-col{align-items:flex-start}.chat-msg-header{display:flex;align-items:center;flex-wrap:wrap;gap:.3125rem;margin-bottom:1px;padding:0 .125rem}.chat-msg-header-own{justify-content:flex-end}.chat-sender-btn{position:relative;z-index:1;min-height:2.75rem;padding:.125rem .25rem;margin:-.625rem -.25rem;border:none;background:none;font-family:Be Vietnam Pro,sans-serif;font-size:.8125rem;font-weight:800;cursor:pointer;text-align:left}.chat-sender-btn:hover,.chat-sender-btn:focus-visible{text-decoration:underline}.chat-level-chip{padding:0 .375rem;border-radius:.375rem;background:#e2cfa6;border:1.5px solid #3b2416;color:#3b2416;font-size:.6875rem;font-weight:800;line-height:1rem}.chat-time-label{color:#543824;font-size:.71875rem;font-weight:600;cursor:pointer}.chat-bubble{position:relative;padding:.375rem .6875rem;border-radius:.875rem;border:.15625rem solid #3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.9375rem;font-weight:600;line-height:1.32;color:#3b2416;overflow-wrap:anywhere;word-break:break-word;box-shadow:0 .125rem #3b241638;user-select:text;-webkit-user-select:text}.chat-bubble-other{background:#fbf3df;border-top-left-radius:.25rem;padding-left:.8125rem;box-shadow:inset .25rem 0 0 var(--chat-accent, #b99768),0 .125rem #3b241638}.chat-bubble-own{background:linear-gradient(180deg,#f6d371,#e8b84a);border-top-right-radius:.25rem}.chat-row.is-grouped .chat-bubble-other{border-top-left-radius:.875rem}.chat-row.is-grouped .chat-bubble-own{border-top-right-radius:.875rem}.chat-bubble.chat-bubble-deleted{background:#e5d6b8;color:#543824;font-style:normal;font-weight:600;box-shadow:none}.chat-bubble.chat-bubble-deleted:before{content:"🚫";margin-right:.3125rem;font-size:.8125rem}.chat-bubble-pending{border-style:dashed;background:#f5df9d;color:#3b2416}.chat-bubble-failed{border-color:#b8322a;background:#fce8e4;color:#3b2416}.chat-bubble.chat-bubble-emoji:not(.chat-bubble-pending):not(.chat-bubble-failed){padding:0 .125rem;border-color:transparent;background:transparent;box-shadow:none;font-size:1.875rem;line-height:1.2}.chat-mask{display:inline-flex;align-items:center;gap:.1875rem;margin:0 1px;padding:0 .4375rem;border-radius:62.4375rem;background:#e2cfa6;border:1.5px solid #b99768;color:#543824;font-size:.78125rem;font-weight:700;line-height:1.125rem;vertical-align:1px;white-space:nowrap}.chat-mask .chat-mask-bracket,.chat-mask[data-mask=word] .chat-mask-raw{display:none}.chat-mask[data-mask=word]:before{content:"•••";letter-spacing:1px}.chat-mask[data-mask=link]:before,.chat-mask[data-mask=phone]:before{content:"🔒";font-size:.6875rem}.chat-pending-note{font-size:.71875rem;font-weight:700;color:#543824;margin-top:.125rem}.chat-failed-actions{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.chat-failed-note{font-size:.75rem;font-weight:700;color:#8f1d14}@keyframes chatMsgPopIn{0%{opacity:0;transform:translateY(.375rem) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-msg-pop{animation:chatMsgPopIn .18s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion: reduce){.chat-msg-pop{animation:none!important}.hud-chat-ticker{transition:none!important}}.chat-new-pill{position:absolute;bottom:.5rem;left:50%;transform:translate(-50%);z-index:3;min-height:2.75rem;padding:.5rem 1rem;border-radius:62.4375rem;border:.15625rem solid #3b2416;background:linear-gradient(180deg,#f3ca60,#e8b84a);color:#3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.8125rem;font-weight:800;box-shadow:0 .1875rem #3b2416;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.chat-new-pill[hidden]{display:none!important}.chat-composer-dock{flex-shrink:0;background:#e6d4ae;border-top:.15625rem solid #3b2416;padding:.3125rem .5rem .4375rem;display:flex;flex-direction:column;gap:.375rem}.chat-tray{display:flex;flex-direction:column;gap:.375rem}.chat-tray[hidden]{display:none}.chat-quick-chips{display:flex;gap:.375rem;overflow-x:auto;scrollbar-width:none;padding-bottom:.125rem}.chat-quick-chips::-webkit-scrollbar{display:none}.chat-quick-chip{flex-shrink:0;min-height:2.5rem;padding:.25rem .8125rem;border-radius:62.4375rem;border:.125rem solid #3b2416;background:#fbf3df;color:#3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:.8125rem;font-weight:700;cursor:pointer;box-shadow:0 1.5px #3b2416;display:inline-flex;align-items:center;justify-content:center}.chat-quick-chip:active{transform:translateY(1px)}.chat-emoji-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.25rem}.chat-emoji-btn{min-width:0;min-height:2.625rem;padding:.125rem 0;border-radius:.625rem;border:.125rem solid #3b2416;background:#fbf3df;font-size:1.375rem;line-height:1;cursor:pointer;box-shadow:0 1.5px #3b2416;display:inline-flex;align-items:center;justify-content:center}.chat-composer-form{display:flex;gap:.375rem;align-items:center}.chat-tray-toggle{flex-shrink:0;width:2.75rem;height:2.75rem;padding:0;border-radius:.75rem;border:.15625rem solid #3b2416;background:#fbf3df;font-size:1.375rem;line-height:1;cursor:pointer;box-shadow:0 .125rem #3b2416;display:grid;place-items:center}.chat-tray-toggle.is-active{background:linear-gradient(180deg,#f6d371,#e8b84a);transform:translateY(1px);box-shadow:0 1px #3b2416}.chat-composer-input{flex:1;min-width:0;min-height:2.75rem;height:2.75rem;padding:0 .75rem;border-radius:.75rem;border:.15625rem solid #3b2416;background:#fffdf7;color:#3b2416;font-family:Be Vietnam Pro,sans-serif;font-size:1rem;font-weight:600;user-select:text;-webkit-user-select:text}.chat-composer-input:focus{outline:.125rem solid #16534e;outline-offset:1px}.btn-chunky[data-chat-send]{min-width:4rem;min-height:2.75rem;height:2.75rem;padding:0 1rem;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center}@container chat (max-width: 24.5rem){.chat-title{display:none}.wood-header.chat-header{padding-left:.5rem}.chat-header .chat-tabs-bar{justify-content:flex-start}.chat-tab-btn{max-width:none}}#app .chat-panel.is-compact{height:min(calc(var(--vvh, 100%) - var(--safe-t, 0px) - var(--safe-b, 0px)),var(--chat-vv-height, 100%));max-height:min(calc(var(--vvh, 100%) - var(--safe-t, 0px) - var(--safe-b, 0px)),var(--chat-vv-height, 100%))}.chat-panel.is-compact .chat-no-ward-note,.chat-panel.is-keyboard .chat-tray{display:none!important}.chat-panel.is-compact .wood-header.chat-header{min-height:3rem;padding-top:.125rem;padding-bottom:.125rem}.chat-panel.is-compact .chat-composer-dock{padding:.25rem .5rem}.ward-chat-preview-list{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.625rem}
