
.product-art{display:inline-block!important;width:62px;height:100px;flex-shrink:0;vertical-align:middle;background-size:500% 200%;background-position:var(--art-x) var(--art-y);background-repeat:no-repeat}
.product-sheet-0{background-image:url("assets/products-0-clear.webp")}
.product-sheet-1{background-image:url("assets/products-1-clear.webp")}
.product-sheet-2{background-image:url("assets/products-2-clear.webp")}
.product-sheet-3{background-image:url("assets/products-3-clear.webp")}
.product-sheet-4{background-image:url("assets/products-4-clear.webp")}

.npc-portrait{display:inline-block!important;width:84px;height:84px;flex-shrink:0;vertical-align:middle;background-image:url("assets/suppliers.webp");background-size:300% 200%;background-position:var(--art-x) var(--art-y);background-repeat:no-repeat;border-radius:50%;background-color:#e9dfce}
.supplier-card{align-items:center}.supplier-card>.npc-portrait{font-size:0}.chip .npc-portrait,.item>small .npc-portrait{width:30px;height:30px;margin-right:5px}.chip:has(.npc-portrait){display:inline-flex;align-items:center;gap:3px}
.item h3{display:flex;align-items:center;gap:10px;min-height:100px;margin:8px 0}.shelf-tile>.product-art{width:68px;height:110px}.shelf-tile>span:has(.product-art){display:block;font-size:0}.ledger .product-art{width:25px;height:40px}.recipe-card>small{display:flex;align-items:center;gap:6px}
@media(max-width:600px){.supplier-card>.npc-portrait{width:68px;height:68px}.item h3{font-size:15px}.product-art{width:54px;height:88px}}

.stock-panel{margin-top:16px}.stock-toolbar{display:flex;gap:10px;flex-wrap:wrap}.stock-toolbar input{flex:1;min-width:150px}.stock-toolbar input,.stock-toolbar select{padding:10px 12px;border:1px solid #c9cbb9;border-radius:8px;background:#fffdf7;color:var(--ink)}.stock-scroll{max-height:510px;overflow:auto;border:1px solid #ddd6c3;border-radius:10px}.stock-table{width:100%;border-collapse:collapse;font-size:12px;background:#fffdf7}.stock-table thead{position:sticky;top:0;z-index:1;background:#eee8d8}.stock-table th,.stock-table td{padding:7px 12px;border-bottom:1px solid #e6e0cf;text-align:right;white-space:nowrap}.stock-table th:first-child,.stock-table td:first-child{text-align:left}.stock-table tbody tr:hover{background:#f3f2e5}.stock-name{display:flex;align-items:center;gap:10px}.stock-name .product-art{width:31px;height:50px}.stock-table small{display:block;font-size:10px;color:#8c856f;margin-top:3px}.stock-empty{padding:20px}.destination-art{width:100%;aspect-ratio:1.65;background-image:url('assets/destinations.webp');background-size:300% 200%;background-position:var(--art-x) var(--art-y);border-radius:8px;margin:10px 0 14px}.quest-card .destination-art{aspect-ratio:1.5}.material-art{display:inline-block!important;width:65px;height:106px;background-image:url('assets/materials-clear.webp');background-size:500% 200%;background-position:var(--art-x) var(--art-y);vertical-align:middle;background-repeat:no-repeat}.chip .material-art{width:20px;height:32px}.material-card>.material-art{font-size:0}.material-card{overflow:hidden}#marketGrid{grid-template-columns:1fr}#marketGrid>.item{display:grid;grid-template-columns:minmax(170px,1.4fr) minmax(130px,1fr) minmax(160px,1fr);gap:5px 14px;align-items:center}#marketGrid>.item>h3{grid-column:1;grid-row:1/4;min-height:65px;margin:0;font-size:14px}#marketGrid .product-art{width:40px;height:65px}#marketGrid>.item>small:first-child{display:none}#marketGrid .chips{grid-column:2;grid-row:1}#marketGrid .row{grid-column:2;grid-row:2}#marketGrid>.item>small:not(:first-child):not(.tip){grid-column:2;grid-row:3}#marketGrid .stepper{grid-column:3;grid-row:1/3;margin:0;padding:0}#marketGrid .tip{grid-column:3;grid-row:3}#marketGrid .npc-portrait{width:24px;height:24px}
@media(max-width:600px){.stock-table th,.stock-table td{padding:6px 9px}.stock-table{font-size:11px}.stock-scroll{max-height:420px}.stock-table td:first-child{white-space:normal;min-width:150px}.stock-name{gap:5px}#marketGrid>.item{grid-template-columns:minmax(140px,1fr) minmax(125px,1fr)}#marketGrid .stepper{grid-column:2;grid-row:4}#marketGrid .tip{grid-column:1/3;grid-row:5}#marketGrid>.item>h3{grid-row:1/4}#marketGrid .chips{font-size:9px}}

.product-art,.material-art{background-image:none!important;overflow:hidden;object-fit:contain}.product-art svg,.material-art svg{overflow:hidden}.supplier-speech{line-height:1.8!important;color:#665e4c!important}.speech-note{display:block;color:#97856c;margin-bottom:3px}.destination-art,.quest-card .destination-art{height:104px;aspect-ratio:auto;background-size:300% 200%;margin:8px 0 10px}dialog .destination-art{height:110px}.quest-card:has(.destination-art){padding:14px 16px}.quest-card:has(.destination-art) h3{font-size:17px;margin:6px 0 10px}.quest-card:has(.destination-art) p{margin:10px 0}@media(max-width:600px){.destination-art,.quest-card .destination-art{height:80px}dialog .destination-art{height:90px}}

[hidden]{display:none!important}.day-flow{padding:13px 16px;margin:12px 0;background:#e8eddf;border:1px solid #bbc7a9;border-radius:10px}.day-flow[data-phase="night"]{background:#e7e5ef;border-color:#b9b2cb}.day-flow p{font-size:12px;margin:6px 0 0}.phase-steps{font-size:11px;color:#7d7969}#nightActions h2{margin:10px 0}.supplier-grid{gap:8px}@media(max-width:600px){.phase-steps{font-size:10px}.day-flow{padding:10px 12px}}

.phase-sleep{width:auto!important;padding:8px 14px!important;font-size:12px}body:has(#dayFlow[data-phase="night"]) .room-scene{aspect-ratio:auto;min-height:145px;height:145px}body:has(#dayFlow[data-phase="night"]) .room-background{object-fit:cover}body:has(#dayFlow[data-phase="night"]) .room-footnote{display:none}body:has(#dayFlow[data-phase="night"]) .room-caption{bottom:25px}

/* Compact task screens. */
#milestone,#salesFeed,#weather,.room-footnote,.room-caption h2,#phaseGuide,#eventText{display:none}.room-scene,body:has(#dayFlow[data-phase="night"]) .room-scene{aspect-ratio:auto;min-height:135px;height:135px}.room-background{object-fit:cover}.room-caption{bottom:22px}.room-badges{top:10px}.top{margin-bottom:12px}.location-dashboard{margin-top:8px}.day-flow{margin:8px 0;padding:9px 12px}.fantasy-tabs{margin:10px 0}.section-intro{padding:0;margin:12px 0}.section-intro h2{font-size:18px;margin:0}.section-intro p{display:none}.bulletin{margin-top:10px;padding:12px 16px}.bulletin h2{font-size:18px;margin:0 0 8px}.bulletin #tomorrow{margin:8px 0 0}.stock-panel{margin-top:10px}.stock-panel h2{font-size:18px}#stockCapacityNote:empty{display:none}.supplier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.supplier-card{padding:10px;gap:8px}.supplier-card>.npc-portrait{width:46px;height:46px}.supplier-card h3{font-size:14px}.supplier-card p{margin:4px 0;font-size:10px}.supplier-card small,.supplier-card b{font-size:9px}.adventure-tabs{display:flex;gap:7px;margin:10px 0}.adventure-tabs button{flex:1;padding:10px}.adventure-tabs .active{background:#526e51;color:#fff}.quest-grid{gap:10px}.quest-card:has(.destination-art){padding:10px 12px}.quest-card .destination-art{height:68px}.quest-card h3{font-size:16px}.quest-card .chips{font-size:10px}.premium-buyer{padding:10px 12px;font-size:12px}.premium-buyer p{margin:5px 0}.material-grid{grid-template-columns:1fr}.material-card{display:grid;grid-template-columns:45px minmax(100px,1fr) minmax(140px,1fr);align-items:center;gap:6px 12px;padding:10px}.material-card>.material-art{width:40px;height:65px;grid-row:1/3}.material-card h3{font-size:14px;margin:0}.material-card>.row{font-size:11px}.material-card>.row:last-child{grid-column:2/4;justify-content:flex-start}.material-card button{padding:6px 10px;font-size:11px}#recipeGrid{grid-template-columns:1fr}#recipeGrid>.recipe-card{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);gap:5px 15px;padding:10px 12px}#recipeGrid .recipe-card h3{grid-column:1;grid-row:1/4;min-height:70px;font-size:15px;margin:0}#recipeGrid .product-art{width:44px;height:71px}#recipeGrid .recipe-card>small{grid-column:2;grid-row:1}#recipeGrid .recipe-card>.chips{grid-column:2;grid-row:2}#recipeGrid .recipe-card>p{grid-column:2;grid-row:3;font-size:11px;margin:0}#recipeGrid .recipe-buttons{grid-column:1/3;display:flex;gap:8px}#recipeGrid .recipe-buttons button{margin:0;padding:8px;font-size:11px}.bottom{gap:12px;margin-top:14px}.ledger-details summary,.sales-details summary{cursor:pointer;font-size:13px;font-weight:600}.ledger-details:not([open]){padding:14px}.budget h2{font-size:19px;margin:8px 0}.budget .tip{font-size:11px}.sales-details{margin:10px 0}footer{margin-top:18px;padding:12px}
@media(max-width:700px){.supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-card{display:block}.supplier-card>.npc-portrait{float:left;margin:0 7px 3px 0}.room-scene,body:has(#dayFlow[data-phase="night"]) .room-scene{min-height:100px;height:100px}.material-card{grid-template-columns:34px 1fr 1fr;gap:5px 8px}.material-card>.material-art{width:32px;height:52px}#recipeGrid>.recipe-card{grid-template-columns:minmax(130px,1fr) minmax(130px,1fr);gap:5px 9px}#recipeGrid .recipe-card h3{font-size:13px}.location-dashboard{gap:6px}.location-dashboard b{font-size:13px}}

.npc-portrait{background-image:none!important;overflow:hidden}.town-scene{display:block;width:100%;height:auto;aspect-ratio:512/240;max-height:150px;overflow:hidden;border-radius:9px 9px 0 0;background:#e5dfcd}.district-card .district-copy{padding:12px}.district-copy h3{font-size:17px;margin:5px 0}.district-copy>p{display:none}.regional-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.regional-preview>div{display:flex;align-items:center;flex-direction:column;gap:3px}.regional-preview .npc-portrait{width:46px;height:46px}.regional-preview small,.regional-preview b{font-size:11px}.supplier-card>.npc-portrait{display:block}@media(max-width:600px){.town-scene{max-height:115px}.district-copy{padding:10px}.regional-preview{gap:7px}}

#marketGrid>.item.unavailable{background:#e8e7e2;border-color:#cecdc5;color:#85847b;filter:grayscale(1)}#marketGrid>.item.unavailable .product-art{opacity:.4}#marketGrid>.item.unavailable .chip{background:#dad9d2;color:#88877e}#marketGrid>.item.unavailable .tip{font-weight:600;color:#76756e}#marketGrid>.item.unavailable button:disabled{background:#dad9d3;color:#a4a298;opacity:.7}#marketGrid>.item.unavailable b{color:inherit}

.room-art{position:absolute;inset:0;z-index:0;overflow:hidden}.room-art>.interior-art{display:block;width:100%;height:100%}.room-expand{position:absolute;right:12px;bottom:10px;z-index:150;padding:5px 9px;font-size:11px;color:#fffaf0;background:#4f4a3cbf;border:1px solid #fff7;border-radius:6px}.room-preview>h2{font-size:17px;margin:0 0 10px}.room-preview>.interior-art{display:block;width:100%;height:65vh;max-height:700px}dialog:has(.room-preview){width:min(92vw,900px);max-width:900px;padding:16px}

.top{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{min-width:0}.stat>small{white-space:nowrap}.stat>b{white-space:nowrap}@media(max-width:600px){.top{gap:6px}.stat{padding:10px 8px}.stat>small{font-size:10px}.stat>b{font-size:clamp(15px,4.2vw,22px)}}

/* Fit content to narrow screens; keep ordinary play in the page scroll. */
html,body{max-width:100%;overflow-x:clip}
.layout>*,[data-panel],.panel,.supplier-card>div,#marketGrid>.item>*{min-width:0}
.toast{width:max-content;max-width:calc(100% - 24px);overflow-wrap:anywhere;text-align:center}
.stock-scroll{max-height:none;overflow:visible}.stock-table{table-layout:fixed}.stock-table th:first-child{width:44%}.stock-table td:first-child{white-space:normal}.stock-name>div{min-width:0;overflow-wrap:anywhere}
.cart,.log{max-height:none;overflow:visible}
.embedded-flow,.embedded-flow body{height:auto;min-height:0;overflow-y:hidden}
.embedded-flow dialog{position:fixed;top:var(--embed-dialog-top,16px);bottom:auto;margin:0 auto;max-height:calc(var(--embed-visible-height,80vh) - 32px);overflow:auto}
@media(max-width:600px){
 .stock-toolbar input,.stock-toolbar select{min-width:0;max-width:100%}.stock-toolbar input{flex-basis:140px}
 .stock-table th,.stock-table td{padding:6px 3px;white-space:normal;overflow-wrap:anywhere}.stock-table td:first-child{min-width:0}.stock-table th:first-child{width:43%}.stock-name{gap:4px}.stock-name .product-art{width:25px;height:40px;flex-shrink:0}.stock-table small{font-size:9px}.stock-table th{font-size:10px}
 #marketGrid>.item{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8px}#marketGrid .row{flex-wrap:wrap}#marketGrid .stepper{justify-content:flex-end}#marketGrid>.item>h3{overflow-wrap:anywhere;gap:5px}
 .supplier-card{gap:10px}.supplier-speech{overflow-wrap:anywhere}.market-toolbar input{width:100%;min-width:0}.row>span,.row>b{min-width:0;overflow-wrap:anywhere}
}

.embedded-flow .report{max-height:none;overflow:visible}.embedded-flow .room-preview>.interior-art{height:calc(var(--embed-visible-height,80vh) - 130px)}
@media(max-width:600px){#recipeGrid>.recipe-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.material-card{grid-template-columns:32px minmax(0,1fr) minmax(0,1fr)}}

.mobile-actions{display:none}
@media(max-width:850px){
 body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
 .mobile-actions{display:flex;position:fixed;z-index:200;bottom:0;left:0;right:0;gap:10px;padding:10px 15px calc(10px + env(safe-area-inset-bottom,0px));background:#fffaf0f5;border-top:1px solid #d9d2be;box-shadow:0 -3px 16px #51472c18}
 .mobile-actions .primary{flex:1;min-width:0;width:auto;margin:0;min-height:46px}
 #purchase,#open,#sleep,#quickSleep{display:none!important}
 .embedded-flow .mobile-actions{bottom:auto;top:calc(var(--embed-dialog-top,16px) - 16px + var(--embed-visible-height,100vh) - 67px - env(safe-area-inset-bottom,0px))}
}

.embedded-flow .toast{bottom:auto;top:calc(var(--embed-dialog-top,16px) - 16px + var(--embed-visible-height,100vh) - 140px);z-index:210}

/* Trade choices, persistent clues and visible procurement limits. */
.town-situation{margin:0 0 14px;padding:12px 15px;border:1px solid #d9cbae;border-radius:12px;background:#fff9e9;min-width:0}
.town-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}.rumor-button{padding:5px 8px;border:1px solid #d8c8a4;border-radius:7px;background:#fffdf4;color:#6f624a;font-size:11px}.rumor-dot,.rumor-flag{color:#855516;background:#f8e6b9;border:1px solid #dbc18d;border-radius:6px;padding:3px 6px;font-size:10px;font-weight:700}.rumor-flag{margin:3px 0;min-height:28px}.town-status{display:flex;gap:5px 14px;flex-wrap:wrap;margin-top:6px;font-size:11px;color:#756c58}.town-news{font-size:11px;margin:6px 0 0}.town-supply{font-size:11px;margin-top:8px;border-top:1px solid #e8ddc5;padding-top:7px}.town-supply summary,.town-ending summary,.need-examples summary{cursor:pointer}.town-aid{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}.town-aid label{display:flex;align-items:center;gap:6px;flex:1;min-width:140px}.town-aid input{width:18px;height:18px;flex-shrink:0}.town-aid small{display:block;margin-top:1px}.town-aid .customer-portrait{width:30px;height:30px}.town-alert,.story-important{color:#993f31!important;background:#f9e7dd!important;border:1px solid #dba28e!important;font-weight:600;padding:8px 10px;border-radius:6px}.town-alert{font-size:12px;margin:8px 0}.town-ending{margin-top:8px;font-size:13px}.town-ending summary{font-weight:700;color:#626d4a}.town-ending p{line-height:1.8}
.rumor-entry{display:flex;gap:10px;padding:14px 0;border-bottom:1px solid #e5dbc7}.rumor-entry .npc-portrait{width:48px;height:48px;flex-shrink:0}.rumor-entry h3{font-size:14px;margin:4px 0}.rumor-entry p{font-size:13px;line-height:1.9;margin:6px 0}.rumor-entry small{font-size:10px}.rumor-entry>div{min-width:0}.related-rumor{display:inline-block;text-align:left;background:#f5e7c7;color:#79541f;border-radius:5px;font-size:11px;padding:6px 8px;margin:8px 0}.limit-reason{color:#945a35!important;font-weight:600}.ingredient-stock{display:block;font-size:10px;font-weight:400;margin-top:3px;color:#82735c}#recipeGrid .chips>.chip{display:block;white-space:normal}.need-examples{font-size:10px;line-height:1.8;color:#827461;margin-top:6px}.need-examples p{margin:5px 0!important;font-size:11px!important;overflow-wrap:anywhere}
.customer-orders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 14px}.customer-orders:empty{display:none}.orders-heading{grid-column:1/-1;font-size:15px;margin:0}.customer-card{background:#fffaf0;border:1px solid #d7c5a1;border-radius:12px;padding:12px;min-width:0}.customer-voice{display:flex;gap:12px;align-items:center;margin-bottom:8px}.customer-voice>div{min-width:0}.customer-voice h3{font-size:15px;margin:3px 0}.customer-voice p{font-size:12px;line-height:1.8;margin:3px 0}.customer-voice small,.customer-card>small{font-size:10px;display:block}.customer-portrait{display:block;width:84px;height:84px;flex-shrink:0;overflow:hidden;border-radius:10px;background:#f5eddb}.order-actions{display:flex;gap:6px;margin-top:10px}.order-actions button{flex:1;font-size:11px;padding:8px 6px;min-height:36px}.order-actions .chosen{background:#718263;border-color:#617450;color:#fffaf0}.order-terms{font-size:11px;margin:7px 0}.customer-card>.chips{font-size:11px}.customer-card button:focus-visible,.rumor-button:focus-visible{outline:2px solid #9f783d;outline-offset:2px}
@media(max-width:700px){.customer-orders{grid-template-columns:1fr}.customer-portrait{width:68px;height:68px}.customer-voice{gap:10px}.town-situation{padding:10px 12px}.town-heading{gap:5px}.town-heading>b{font-size:12px}.town-aid{flex-direction:column}.town-aid label{min-width:0}.order-actions button{font-size:11px}.customer-card{padding:10px 12px}}

.town-ending-result{margin:0 0 18px;padding:14px;background:#f3ecd7;border:1px solid #cbb887;border-radius:10px}.town-ending-result h2{margin:6px 0 10px;font-size:21px}.town-ending-result p{font-size:13px;line-height:1.9;margin:0}.town-heading>b{margin-right:auto}

.market-requests{position:sticky;top:6px;z-index:155;background:#fff9e9f7;border:1px solid #c8bd9f;border-radius:10px;padding:10px 12px;margin:8px 0 12px;box-shadow:0 3px 10px #4f45261a;min-width:0}.market-request-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;font-size:12px}.market-request-heading>span{color:#8d6038;font-size:11px}.request-shortcuts{display:flex;flex-wrap:wrap;gap:5px}.request-shortcuts:has(button){margin:7px 0}.request-filter{padding:6px 8px;background:#eee3c9;color:#755c38;border:1px solid #dac79f;border-radius:6px;font-size:11px;min-height:30px}.request-filter.selected{background:#718263;color:#fff9ed;border-color:#718263}.market-requests summary{font-size:11px;color:#7b725c;cursor:pointer}.market-requests:has(details[open]){position:static}.market-request{padding:10px 0;border-top:1px solid #e4d8bd;margin-top:8px}.market-request>div{display:flex;justify-content:space-between;gap:6px;align-items:baseline;flex-wrap:wrap;font-size:12px;margin-bottom:6px}.market-request>div>span{font-size:11px;color:#8c7c5e}.market-request>div>.due-today{color:#9b4930;font-weight:700}.request-need{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;width:100%;text-align:left;background:#f4efdf;border-radius:6px;margin:4px 0;padding:7px 9px;color:#59614d}.request-need>span{font-size:12px}.request-need>small{grid-column:1;font-size:10px;color:#85765d}.request-need>b{grid-column:2;grid-row:1/3;align-self:center;font-size:11px}.request-missing{color:#a15b33}.request-ready{color:#637b50}.request-footnote{display:block;font-size:9px;color:#8f8169;margin-top:5px}.request-filter:focus-visible,.request-need:focus-visible{outline:2px solid #a78a53;outline-offset:2px}
@media(max-width:600px){.market-requests{top:4px;padding:9px 10px}.request-filter{font-size:10px;padding:5px 7px}.market-request-heading{font-size:11px}.request-need>span{font-size:11px}}

.embedded-flow .market-requests{top:calc(var(--embed-dialog-top,16px) - 10px)}

.furniture-illustration{display:block;width:100%;height:100%;object-fit:contain}.furniture-effects{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0 12px}.furniture-effects span{font-size:11px;padding:4px 6px;background:#e9eddf;color:#61724f;border-radius:5px}.furniture-effects .negative-effect{background:#f0e1d5;color:#965d40}.furniture-copy>.limit-reason{display:block;white-space:normal;font-size:10px;line-height:1.7;margin:7px 0 0;letter-spacing:0}.craft-result{display:block;font-size:9px!important;font-weight:400;line-height:1.5;opacity:.85;color:inherit!important;margin-top:2px}
@media(max-width:600px){.furniture-effects{gap:3px}.furniture-effects span{font-size:10px;padding:3px 5px}.recipe-buttons{flex-wrap:wrap}.recipe-buttons button{flex:1;min-width:110px}}

.expedition-material{display:inline-flex;align-items:center;gap:4px;max-width:100%}.expedition-material>span{min-width:0;line-height:1.5}.expedition-material .material-art{flex-shrink:0}

#recipeGrid .recipe-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#recipeGrid .recipe-buttons .craft-choice{width:100%;min-width:0;min-height:76px;margin:0;white-space:normal;padding:9px 5px;font-size:11px}#recipeGrid .craft-choice:enabled{background:#718263;border:1px solid #617450;color:#fffdf1;opacity:1;box-shadow:0 3px 0 #55694c}#recipeGrid .craft-choice:disabled{background:#e3e1da;border:1px solid #d1cec4;color:#8c8a81;opacity:1;box-shadow:none;cursor:default}

.purchase-record{font-size:11px;line-height:1.8;padding:6px 0;margin:0;border-bottom:1px solid #e7dfcf}

.supplier-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.supplier-tab{padding:8px 11px;border:1px solid #d9d1bd;border-radius:7px;background:#eee9db;color:#706e5c;font-size:12px;min-height:36px}.supplier-tab.selected{background:#718263;color:#fffaf0;border-color:#718263}.supplier-tab:focus-visible{outline:2px solid #c7a35b;outline-offset:2px}.supplier-focus{display:flex;align-items:center;gap:13px;padding:12px 14px;background:#fffaf0;border:1px solid #ddd0b3;border-radius:10px;min-width:0}.supplier-focus>.npc-portrait{width:78px;height:78px;flex-shrink:0}.supplier-focus>div{min-width:0;flex:1}.supplier-focus-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px}.supplier-focus h3{font-size:16px;margin:0}.supplier-focus p{font-size:12px;margin:5px 0;line-height:1.7}.supplier-focus small{font-size:10px;color:#8f8067}.supplier-focus .rumor-flag{margin-right:8px}.supplier-profile{margin-bottom:10px}.supplier-focus .npc-portrait{float:none;margin:0}
@media(max-width:600px){.supplier-tabs{gap:5px}.supplier-tab{font-size:11px;padding:7px 9px}.supplier-focus{gap:10px;padding:10px}.supplier-focus>.npc-portrait{width:64px;height:64px}.supplier-focus h3{font-size:14px}.supplier-focus p{font-size:11px}}

#appraisalGrid{grid-template-columns:1fr}.appraisal-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:12px}.appraisal-card h3{margin:0;grid-row:1/3;font-size:14px}.appraisal-card .product-art{width:42px;height:68px}.appraisal-card button{width:auto;min-width:120px;padding:10px}.appraisal-card small{font-size:10px}.appraisal-card .limit-reason:empty{display:none}.adventure-tabs{flex-wrap:wrap}.adventure-tabs button{min-width:64px;white-space:nowrap}
@media(max-width:400px){.appraisal-card{gap:5px 8px}.appraisal-card button{min-width:100px;font-size:11px}.appraisal-card h3{font-size:12px}}

/* Night actions are available from the day bar and mobile sticky actions. */
body:has(#dayFlow[data-phase="night"]) .budget{display:none}body:has(#dayFlow[data-phase="night"]) .layout{grid-template-columns:minmax(0,1fr)}

.order-warning{display:flex;align-items:center;gap:8px;margin:10px 0;padding:9px;border:1px solid #c98b78;border-radius:7px;background:#fff0e8;color:#8e3d2b}.order-warning .npc-portrait{width:42px;height:42px;flex-shrink:0}.order-warning>div{min-width:0}.order-warning b{font-size:11px}.order-warning p{font-size:11px;line-height:1.7;margin:4px 0 0}.order-warning strong{color:#8e3023}

.craft-storage{margin-top:14px;border-top:1px solid #dfd6c1;padding-top:10px}.craft-storage summary{cursor:pointer;font-size:13px;font-weight:600}.craft-storage summary b{font-size:11px;margin-left:6px}.storage-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #e6dfcf}.storage-row .product-art{width:31px;height:50px;flex-shrink:0}.storage-row .stock-name{min-width:0}.storage-row b{font-size:12px}.storage-row small{display:block;font-size:10px;line-height:1.6}.storage-row button{white-space:nowrap;padding:8px;font-size:11px}.storage-row>div:last-child{flex-shrink:0;text-align:right}.storage-row .limit-reason{max-width:140px;font-size:9px}.stock-return{display:block;font-size:10px;padding:4px 0;margin:0;color:#79735f}.storage-row .limit-reason:empty{display:none}@media(max-width:400px){.storage-row{gap:6px}.storage-row .stock-name{gap:6px}.storage-row b{font-size:11px}}

.bulk-note{display:block;font-size:10px;color:#5a784a;font-weight:600;line-height:1.6}.allocation-preview{display:block;font-size:10px;line-height:1.7;color:#6c795a;margin-top:7px;overflow-wrap:anywhere}

.active-request-filter{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#e7eddf;border:2px solid #7b9168;border-radius:10px;padding:12px;margin:12px 0;scroll-margin-top:16px}.active-request-filter[hidden]{display:none}.active-request-filter b{font-size:13px;color:#364d32}.active-request-filter button{font-size:12px;white-space:normal;min-height:40px;background:#fffdf5;color:#364d32;border:1px solid #8b9c78;padding:8px 12px}.customer-card button.request-filter{cursor:pointer;border:1px solid #94a67f;color:#344c31;font:inherit;text-align:left}.customer-card button.request-filter::after{content:' ⌕';font-weight:bold}

.appraisal-result{text-align:center;padding:12px 0}.appraisal-result>small{display:block;color:#687c52;font-weight:700}.appraisal-result>.product-art{width:136px;height:136px;display:inline-block;margin:18px auto 0;vertical-align:middle}.appraisal-result h2{margin:14px 0}.appraisal-result p{font-size:13px}.appraisal-value{background:#e9eedf;border-radius:10px;padding:12px}.appraisal-value b{font-size:24px;margin-left:8px}.appraisal-result button{width:100%;margin-top:12px}.appraised-stock{grid-column:1/-1;border-top:2px solid #d9cfb8;margin-top:14px;padding-top:12px}.appraised-stock h3{margin:0}.appraised-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #ded7c8}.appraised-row>.product-art{width:60px;height:60px;flex:0 0 60px}.appraised-row>div{min-width:0;flex:1}.appraised-row b,.appraised-row small{display:block}.appraised-row b{font-size:14px}.appraised-row small{font-size:12px;margin-top:5px}

.phase-report>small{display:inline-block;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700}.business-report>small{background:#f2e7c9;color:#795a22}.summary-report>small{background:#e5e2ef;color:#5f527e}.phase-report>h2{font-size:22px;margin:14px 0}.summary-ledger{font-size:14px;margin-bottom:18px}.summary-ledger td,.summary-ledger th{padding:11px 6px}.summary-ledger th{font-weight:400;text-align:left}.summary-report .report-total{border-radius:10px;background:#efedf5;padding:14px}.summary-report .report-total b{color:#665782}.business-report .report-total{border-radius:10px;background:#f4eedc;padding:14px}

.town-trade{background:#f0eddf;border-radius:9px;padding:10px 12px;margin:10px 0}.town-trade p{font-size:12px;margin:0 0 7px}.town-trade small{display:block;font-size:11px;line-height:1.8}.district-copy .town-trade{overflow-wrap:anywhere}

svg.product-art,svg.material-art{background:none!important;isolation:isolate}

.town-effects{margin:8px 0;padding:9px 12px;border:1px solid #c7baa4;background:#f2ecde;border-radius:8px}.town-effects summary{cursor:pointer;font-size:12px;font-weight:600}.town-effects p{font-size:11px;line-height:1.7;margin:6px 0}

/* NPC portraits share warm paper; rumor clues use ordinary body typography. */
.npc-portrait{background-color:#f5eddb}.rumor-entry .customer-portrait{width:48px;height:48px;flex-shrink:0;border-radius:50%;object-fit:cover}.rumor-entry strong{font-weight:400;color:inherit;background:none}
/* Short operational notices and inventory actions keep small screens compact. */
.supplier-condition{font-size:11px!important;line-height:1.7;margin:5px 0!important;color:#76634d}.supplier-closed>.npc-portrait{filter:grayscale(.7);opacity:.75}.supply-change{display:block;font-size:10px;color:#76634d;margin-top:3px}.town-aid .npc-portrait{width:30px;height:30px;flex-shrink:0}.town-aid .guard-portrait{object-fit:cover}.stock-discard{font-size:10px;padding:3px 0;color:#837465;display:block}.stock-name>div{min-width:0}.discard-quantity{display:flex;align-items:center;gap:12px;margin:16px 0}.discard-quantity input{width:90px;padding:9px;border:1px solid #c9bda5;border-radius:6px;background:#fffdf6;color:var(--ink)}.town-ending-result summary{cursor:pointer;font-size:13px}.town-ending-result p{font-size:12px;line-height:1.8}
.stock-discard{display:inline-block;min-width:44px;min-height:28px;text-align:left;margin-right:6px}.stock-return{display:inline-block;margin-right:6px}

/* Compact rumor pages; no nested scrolling or emphasized clue text. */
.rumor-scopes,.rumor-pages{display:flex;align-items:center;gap:8px;margin:12px 0;flex-wrap:wrap}
.rumor-scopes button{flex:1;font-size:12px;padding:9px 10px}
.rumor-scopes button.active{background:#708264;color:#fff}
.rumor-pages{justify-content:space-between}
.rumor-pages button{padding:8px 16px}
.rumor-pages button:disabled{opacity:.4;cursor:default}
