/* UIUX2: shared paper controls; image/scene assets stay unchanged. */
@font-face{font-family:'Dino WenKai';src:url('../../../assets/ui/fonts/dino-wenkai.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:'Dino Lora';src:url('../../../assets/ui/fonts/dino-lora.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--ui-paper:#fff8e8;--ui-card:#fffdf5;--ui-text:#493526;--ui-muted:#665943;--ui-line:#d4bf96;--ui-green:#1f5d3a;--ui-on-green:#fff;--ui-danger:#8f322e;--ui-danger-bg:#fff1ed;--ui-disabled-bg:#e8e1d7;--ui-disabled-text:#685e52;--ui-gap:clamp(8px,1.4vw,16px);--ui-control:44px}
body.gm-modern,body.gm-modern[data-gm-current-page]{--gm-bg:#f5ecd6;--gm-panel:var(--ui-card);--gm-line:var(--ui-line);--gm-text:var(--ui-text);--gm-muted:var(--ui-muted);--gm-accent:var(--ui-green);background:var(--gm-bg)!important;color:var(--gm-text);font-family:'Dino Lora','Dino WenKai','Microsoft YaHei',serif!important}
body.gm-modern :is(button,input,select,textarea,summary,label,h1,h2,h3,p,small){font-family:inherit!important}
html body.gm-modern>.pixel-header,body.gm-modern .gm-sidebar{background:var(--ui-paper)!important;background-image:none!important;color:var(--ui-text);border-color:var(--ui-line)!important}
html body.gm-modern>.pixel-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 20px!important}
body.gm-modern .gm-sidebar .gm-brand{display:block;color:var(--ui-text)}body.gm-modern .gm-sidebar-footer{color:var(--ui-muted)}
body.gm-modern :is(.gm-panel,.pixel-card,.control-room-panel,.pixel-modal-content,.gm-filter-menu,.gm-selection,.gm-table,.gm-map,.gm-table tr.selected,.control-room-metric){background-color:var(--ui-card)!important;color:var(--ui-text);border-color:var(--ui-line)!important}
body.gm-modern .gm-filter-menu{box-shadow:0 5px 20px #49352620;max-width:calc(100vw - 32px)}body.gm-modern .gm-filter-menu label{white-space:normal}
body.gm-modern :is(.gm-table th,.gm-note,.gm-pager,.gm-heading small,.gm-row small,.gm-empty){color:var(--ui-muted)}
body.gm-modern :is(.gm-panel,.gm-heading,.gm-row,.gm-info,.gm-filters,.gm-detail-body,.gm-table-wrap){min-width:0}
body.gm-modern .gm-panel{container-type:inline-size;container-name:ui-panel}
body.gm-modern .gm-heading{flex-wrap:wrap;gap:12px}body.gm-modern .gm-heading>div{min-width:0}body.gm-modern .gm-heading h1{font-size:clamp(22px,2.4vw,28px);overflow-wrap:anywhere}
body.gm-modern .gm-kpis{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--ui-gap)}body.gm-modern .gm-columns{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
body.gm-modern :is(button,.pixel-btn,.gm-chips button),body.bookclub-app :is(.pixel-btn,.vmd-button,.chat-send,.checkin-tabs button,.shop-category-button,.bookcoin-button,#appDrawerBody button):not(.village-name-label){box-sizing:border-box;min-height:44px;min-width:44px;max-width:100%;font-size:14px!important;font-weight:600;line-height:1.4;white-space:normal;overflow-wrap:anywhere;color:var(--ui-text)!important;background-color:var(--ui-card)!important;border-color:var(--ui-line)!important;text-shadow:none!important}
body.gm-modern :is(button.primary,button[type=submit],.pixel-btn-primary),body.bookclub-app :is(button.primary,button[type=submit],.chat-send,.pixel-btn-primary,.btn-primary,#appDrawerBody button.primary){background-color:var(--ui-green)!important;color:var(--ui-on-green)!important;border-color:var(--ui-green)!important}
body.gm-modern button.danger,body.bookclub-app :is(.danger,.btn-danger,.pixel-btn-danger){color:var(--ui-danger)!important;background-color:var(--ui-danger-bg)!important;border-color:#bf796c!important}
body.gm-modern button:disabled,body.bookclub-app :is(button:disabled,.pixel-btn:disabled){opacity:1!important;color:var(--ui-disabled-text)!important;background-color:var(--ui-disabled-bg)!important;border-color:#c8bfb1!important;cursor:not-allowed}
body.gm-modern button:hover:not(:disabled){filter:brightness(.97)}body.gm-modern button:focus-visible,body.bookclub-app button:focus-visible{outline:3px solid var(--ui-green)!important;outline-offset:2px}
body.gm-modern .gm-sidebar button{font-size:15px!important;justify-content:flex-start;min-height:48px;padding:10px 12px;background:transparent!important;color:var(--ui-text)!important;flex:none;text-align:left}
body.gm-modern .gm-sidebar button.active{background:var(--ui-green)!important;color:var(--ui-on-green)!important;box-shadow:none;border-radius:12px}
body.gm-modern :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){box-sizing:border-box;max-width:100%;min-width:0;min-height:44px;background:var(--ui-card)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important;font-size:16px!important}
body.gm-modern :is(input,select,textarea):disabled{opacity:1;background:var(--ui-disabled-bg)!important;color:var(--ui-disabled-text)!important}
body.gm-modern :is(input[type=checkbox],input[type=radio]){accent-color:var(--ui-green);width:20px;height:20px;min-height:20px;padding:0}body.gm-modern label{color:var(--ui-text);font-size:14px}body.gm-modern .gm-drawer label{font-size:14px;line-height:1.5}
body.gm-modern .gm-filters{display:flex;flex-wrap:wrap;gap:10px}body.gm-modern .gm-filters input[type=search]{min-width:0;flex:1 1 220px}body.gm-modern .gm-filters>label{flex:1 1 130px;min-width:0}
body.gm-modern :is(.gm-table-wrap,.boss-table-wrap){max-width:100%;overflow:auto}body.gm-modern .gm-table td{overflow-wrap:anywhere;color:var(--ui-text)}body.gm-modern .gm-table th{font-size:13px}
body.gm-modern #gm-detail{display:flex;flex-direction:column;box-sizing:border-box;position:fixed;inset:0 0 0 auto;margin:0;width:min(520px,100vw);max-width:100%;height:100dvh;max-height:100dvh;padding:0;background:var(--ui-paper)!important;color:var(--ui-text)!important;border:1px solid var(--ui-line)!important;border-radius:18px 0 0 18px;overflow:hidden}
body.gm-modern #gm-detail:not([open]){display:none}body.gm-modern #gm-detail>header{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--ui-line)}body.gm-modern #gm-detail>header h2{min-width:0;margin:0;font-size:20px;overflow-wrap:anywhere}
body.gm-modern #gm-detail-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:16px 20px 24px;container-type:inline-size;container-name:ui-editor}
body.gm-modern #gm-detail .gm-text{background:var(--ui-card);color:var(--ui-text);border-color:var(--ui-line)}body.gm-modern #gm-detail :is(.gm-footer,.gm-actions){background:var(--ui-paper);color:var(--ui-text);gap:10px}
body.gm-modern #gm-detail>.ui-drawer-footer,body.gm-modern #gm-detail>.gm-reward-footer{position:static;flex:none;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--ui-line);background:var(--ui-paper);display:flex;flex-wrap:wrap;gap:10px}
body.gm-modern #gm-detail>.ui-drawer-footer button{flex:1 1 130px}body.gm-modern #gm-detail>.gm-reward-footer{display:block}body.gm-modern #gm-detail>.gm-reward-footer .gm-save-note{color:var(--ui-muted)}
body.gm-modern #gm-detail input,body.gm-modern #gm-detail select,body.gm-modern #gm-detail textarea{color:var(--ui-text)!important;background-color:var(--ui-card)!important}
body.gm-modern #gm-detail .gm-stepper button{color:white!important;background-color:var(--ui-green)!important}
body.gm-modern .gm-drawer .gm-error{color:var(--ui-danger)!important;font-size:14px}body.gm-modern .gm-drawer .gm-note{color:var(--ui-muted)!important;font-size:13px}
.ui-admin-menu-toggle{display:none}.ui-admin-menu-scrim{display:none;position:fixed;inset:0;z-index:1001;background:#49352655;border:0;padding:0}.ui-admin-menu-open .ui-admin-menu-scrim{display:block}
body.bookclub-app :is(.vmd-profile,.vmd-post-card,.checkin-result-card,.my-owned-card,.v14-assets .my-owned-list){min-width:0;box-sizing:border-box}
body.bookclub-app .vmd-info,body.bookclub-app .vmd-post-card :is(p,h3,h4){min-width:0;overflow-wrap:anywhere}
body.bookclub-app .vmd-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}body.bookclub-app .vmd-tabs .vmd-button{min-width:0;width:100%;white-space:normal;padding:8px 6px}
body.bookclub-app .vmd-actions.ui-handbill-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,110px),1fr));gap:8px;border-top:1px solid var(--ui-line);padding:12px 0;margin-top:12px;width:100%}body.bookclub-app .vmd-actions.ui-handbill-actions .vmd-button{min-width:0;width:100%}
body.bookclub-app .vmd-post-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px}
body.bookclub-app :is(.checkin-tabs,.my-owned-filters){display:flex;flex-wrap:wrap;gap:8px}body.bookclub-app .checkin-tabs button{flex:1 1 120px}
body.bookclub-app #appDrawerBody :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea){font-size:16px;max-width:100%;min-width:0;box-sizing:border-box}
body.bookclub-app #mobileGameNav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}body.bookclub-app #mobileGameNav button{min-width:0;min-height:44px;white-space:normal}body.bookclub-app #mobileGameNav button span{overflow-wrap:anywhere}
@container ui-panel (max-width:560px){body.gm-modern .ui-responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}body.gm-modern .ui-responsive-table,body.gm-modern .ui-responsive-table tbody{display:block;width:100%}body.gm-modern .ui-responsive-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;border:1px solid var(--ui-line);border-radius:12px;margin:10px 0;background:var(--ui-card)}body.gm-modern .ui-responsive-table td,body.gm-modern .ui-responsive-table td:nth-child(3){display:block!important;padding:4px!important;border:0;min-width:0}body.gm-modern .ui-responsive-table td:before{content:attr(data-ui-label);display:block;color:var(--ui-muted);font-size:12px;margin-bottom:4px}body.gm-modern .ui-responsive-table td.ui-table-main,body.gm-modern .ui-responsive-table td:last-child{grid-column:1/-1}body.gm-modern .ui-responsive-table td.ui-table-main:before{display:none}}
@container ui-editor (min-width:560px){body.gm-modern .gm-form>.ui-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:959px){body.gm-modern{padding-left:0!important;padding-bottom:12px!important}body.gm-modern .gm-sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,calc(100vw - 44px));height:100dvh;box-sizing:border-box;flex-direction:column;padding:20px 14px;gap:8px;z-index:1002;transform:translateX(-100%);visibility:hidden;overflow-y:auto;border-right:1px solid var(--ui-line)}body.gm-modern.ui-admin-menu-open .gm-sidebar{transform:none;visibility:visible}body.gm-modern .gm-sidebar .gm-brand,body.gm-modern .gm-sidebar-footer{display:block}body.gm-modern .gm-sidebar button{flex:none;flex-direction:row;white-space:normal;font-size:15px!important;padding:12px;min-height:48px}body.gm-modern .ui-admin-menu-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:6px}html body.gm-modern>.pixel-header{padding:12px 14px!important}body.gm-modern .page-container{padding:18px 14px!important}body.gm-modern .gm-heading{margin-bottom:18px}body.gm-modern #gm-detail{width:100vw;border-radius:0}body.gm-modern #gm-detail>header,body.gm-modern #gm-detail-body{padding-left:16px;padding-right:16px}body.gm-modern .gm-chips button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.ui-admin-menu-scrim,.gm-sidebar{transition:none!important}}

/* Public chat uses available screen space; prefs stay out of the message flow. */
html body.bookclub-app #v14ChatLauncher{left:12px!important;right:auto!important;width:max-content!important;max-width:180px;min-height:44px;margin:0!important;padding:8px 14px;border-radius:24px;color:var(--ui-text)!important;background:var(--ui-paper)!important;border-color:var(--ui-line);touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;z-index:231;font-size:15px!important}
html body.bookclub-app #v14ChatSheet{box-sizing:border-box;left:12px;right:12px;width:auto;max-width:680px;margin:auto;padding:12px;background:var(--ui-paper);color:var(--ui-text);height:75dvh;overflow:visible;overscroll-behavior:contain}
html body.bookclub-app #v14ChatSheet header{grid-template-columns:minmax(0,1fr) repeat(3,44px);gap:6px;align-items:center;padding-bottom:8px;flex:none}
html body.bookclub-app #v14ChatSheet header strong{font-size:clamp(17px,5vw,21px);line-height:1.3;overflow-wrap:anywhere}
html body.bookclub-app #v14ChatSheet header button{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:grid;place-items:center;border:1px solid var(--ui-line);border-radius:12px;color:var(--ui-text)!important;background:var(--ui-card)!important;font-size:24px!important;line-height:1}
#v14ChatSheet header [data-chat-settings] .component-icon{width:24px;height:24px}
html body.bookclub-app #v14ChatSheet .chat-history{flex:1;min-height:0;overflow:hidden;margin-top:6px}html body.bookclub-app #v14ChatSheet .chat-messages{height:100%;min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;padding:4px 0}
html body.bookclub-app #v14ChatSheet .chat-preferences{display:block;position:absolute;z-index:6;right:12px;top:64px;width:min(320px,calc(100% - 24px));box-sizing:border-box;max-height:calc(100% - 80px);overflow:auto;padding:14px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-card);box-shadow:0 8px 24px #49352630;font-size:14px;color:var(--ui-text)}
#v14ChatSheet .chat-preferences-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}#v14ChatSheet .chat-preferences-heading button{min-width:44px;min-height:44px;background:var(--ui-card);border:1px solid var(--ui-line);border-radius:12px;color:var(--ui-text);font-size:23px}
html body.bookclub-app #v14ChatSheet .chat-preferences label{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;line-height:1.4;margin:4px 0}html body.bookclub-app #v14ChatSheet .chat-preferences input{flex:none;width:22px;height:22px;accent-color:var(--ui-green)}
#v14ChatSheet .chat-preferences small,#v14ChatSheet .chat-retention-note{display:block;font-size:13px;line-height:1.5;color:var(--ui-muted)}#v14ChatSheet .chat-retention-note{border-top:1px solid var(--ui-line);padding-top:10px;margin:12px 0}
html body.bookclub-app #v14ChatSheet .chat-compose{flex:none;display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:8px;align-items:end;padding-top:8px;border-top:1px solid var(--ui-line)}#v14ChatSheet .chat-input{position:relative;min-width:0}html body.bookclub-app #v14ChatSheet .chat-compose textarea{display:block;box-sizing:border-box;width:100%;min-height:44px;max-height:120px;padding:10px 48px 10px 12px;font-size:16px!important;line-height:1.4;background:var(--ui-card);color:var(--ui-text);border:1px solid var(--ui-line);border-radius:12px;resize:vertical}
html body.bookclub-app #v14ChatSheet .chat-count{position:absolute;right:8px;bottom:10px;font-size:11px;color:var(--ui-muted);pointer-events:none}html body.bookclub-app #v14ChatSheet .chat-send{min-height:44px;max-width:64px;padding:10px 8px;font-size:15px!important;border-radius:12px;background:var(--ui-green)!important;color:#fff!important}
#v14ChatSheet .chat-status:empty{display:none}#v14ChatSheet .chat-status{flex:none;margin:6px 0 0;font-size:13px;line-height:1.4;color:var(--ui-danger)}
@media(min-width:960px){html body.bookclub-app #v14ChatSheet{left:12px;right:auto;width:clamp(390px,36vw,620px);max-width:calc(100% - 24px);margin:0}}
@media(max-width:359px){html body.bookclub-app #v14ChatSheet header{grid-template-columns:minmax(0,1fr) repeat(3,44px);gap:4px}html body.bookclub-app #v14ChatSheet header strong{font-size:16px}html body.bookclub-app #v14ChatSheet{left:8px;right:8px;padding:10px}html body.bookclub-app #v14ChatLauncher{left:8px!important}}

body.gm-modern .ui-admin-menu-scrim{background:#49352655!important;border:0!important;border-radius:0!important;max-width:none!important}
body.bookclub-app .village-resource-retry{position:absolute;left:12px;bottom:150px;z-index:21;min-height:44px;padding:8px 14px;border:1px solid var(--ui-line);border-radius:14px;background:var(--ui-paper);color:var(--ui-text)}
body.bookclub-app #v14ChatSheet button{min-height:44px}body.gm-modern .gm-table td:nth-child(3),body.gm-modern .gm-table th:nth-child(3){display:table-cell}

.ui-world-regions{min-width:0;container-type:inline-size;container-name:ui-world;color:var(--ui-text)}.ui-world-summary{border:1px solid var(--ui-line);border-radius:14px;padding:14px;background:var(--ui-paper);margin-bottom:12px}.ui-world-summary h3{font-size:21px;margin:0 0 6px}.ui-world-summary p{margin:4px 0;font-size:15px}.ui-world-summary small,.ui-world-footnote{font-size:13px;line-height:1.5;color:var(--ui-muted)}.ui-region-grid{display:grid;grid-template-columns:1fr;gap:12px}.ui-region-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--ui-line);border-radius:14px;background:var(--ui-card);min-width:0}.ui-region-card img{width:96px;aspect-ratio:4/3;object-fit:contain;border-radius:10px}.ui-region-copy{min-width:0}.ui-region-copy h4{font-size:18px;line-height:1.4;margin:0 0 6px;overflow-wrap:anywhere}.ui-region-copy p,.ui-region-copy small{display:block;font-size:13px;line-height:1.5;margin:4px 0;color:var(--ui-muted)}.ui-region-copy button{width:100%;margin-top:8px}.ui-region-copy progress{width:100%;height:10px;accent-color:var(--ui-green)}.ui-construction-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}.ui-construction-fields label{display:grid;gap:6px;font-size:14px}.ui-construction-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.ui-construction-actions button{flex:1 1 180px}.ui-start-confirm{display:flex;align-items:flex-start;gap:10px;line-height:1.5;margin-bottom:12px}.ui-start-confirm input{flex:none}.ui-construction-status{font-size:14px;color:var(--ui-muted)}.ui-construction-status[data-error=true]{color:var(--ui-danger)}
@container ui-world (min-width:600px){.ui-region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-region-card{grid-template-columns:128px minmax(0,1fr)}.ui-region-card img{width:128px}}
html body.bookclub-app #appDrawerRoot[data-mode="v13:regions"]{width:min(1120px,calc(var(--ui-width,100vw) - 24px));max-width:calc(100% - 24px)}
body.gm-modern .gm-avatar{background:var(--ui-disabled-bg);color:var(--ui-text)}body.gm-modern .ui-admin-account-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}body.gm-modern .ui-admin-account-actions button{flex:1 1 130px}
@media(max-width:959px){body.gm-modern>.pixel-header .brand small{display:none}body.gm-modern .gm-eyebrow{display:none}}
