.brand-loop,.brand-shop{min-width:0}.brand-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 8px}.brand-filters label{min-width:0;line-height:1.8}.brand-filters select{font-size:12px;padding:8px 6px}.brand-clear{grid-column:1/-1;justify-self:start;background:transparent;min-height:38px;font-size:11px;padding:6px 0;border:0;text-decoration:underline;text-underline-offset:3px}.brand-filter-count,.brand-shop-status{font-size:12px;line-height:1.7;margin:6px 0 12px;color:#53694e}.brand-shop-status:empty{display:none}.brand-product-list{display:grid;gap:14px}.brand-product{overflow:hidden;min-width:0;border:1px solid #dce1ce;border-radius:18px;background:#f8f5eb}.brand-product.chosen{border-color:#52734a;box-shadow:0 0 0 1px #52734a}.brand-product-image{position:relative;aspect-ratio:1.4;min-height:140px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:#d2d3cc;overflow:hidden}.brand-product-image img{display:block;width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.brand-image-loading{z-index:1;padding:8px 12px;background:#fffdf2e8;border-radius:9px;font-size:11px;text-align:center;max-width:90%}.brand-image-retry{display:block;font-size:11px;margin:6px auto 0;min-height:42px}.brand-product-icon{font-size:58px;color:#96794e}.brand-image-fallback{font-size:11px;color:#61725a}.brand-product-info{padding:12px 14px 14px;min-width:0}.playable .brand-product h3{font-family:ui-serif,Hiragino Mincho ProN,Yu Mincho,serif;font-size:16px;line-height:1.55;margin:4px 0 7px;overflow-wrap:anywhere}.brand-name{font-size:11px;color:#61745b;line-height:1.6;margin:0}.brand-measures{font-size:10px;color:#6c7562;line-height:1.7;margin:6px 0 10px;overflow-wrap:anywhere}.brand-card-color{font-size:12px;min-height:44px}.brand-image-note{font-size:10px;color:#68755f;line-height:1.6;margin:6px 0}.brand-stock{font-size:12px;font-weight:600;line-height:1.8;color:#756139;margin:8px 0}.brand-card-actions{display:grid;grid-template-columns:1fr;gap:6px}.brand-card-actions button{width:100%;min-height:44px;padding:10px 7px;font-size:12px}.brand-buy{color:#fff;background:#3d6853;border-color:#3d6853}.brand-buy:hover:not(:disabled){background:#305944}.brand-empty{padding:16px;border:1px dashed #b3bea5;border-radius:12px;font-size:12px;line-height:1.8}.brand-detail{border:1px solid #b8c6a8;background:#f5f6eb;padding:13px;border-radius:18px;margin:12px 0 18px;min-width:0;scroll-margin-top:60px}.brand-detail-heading{display:flex;gap:8px;justify-content:space-between;align-items:flex-start}.brand-detail-heading h3{font-family:ui-serif,Hiragino Mincho ProN,Yu Mincho,serif;font-size:16px;line-height:1.7;margin:5px 0;min-width:0;overflow-wrap:anywhere}.brand-detail-close{flex-shrink:0;font-size:10px;padding:7px;min-height:44px}.brand-theme{font-size:12px;line-height:1.8;color:#61735c;margin:7px 0}.brand-model-host{width:100%;height:220px;border-radius:12px;background:#eeebdf;overflow:hidden}.brand-model-host canvas{display:block;width:100%;height:220px;touch-action:auto}.brand-model-status{font-size:11px;line-height:1.7;color:#546b4d;margin:7px 0;min-height:19px}.brand-model-retry{width:100%;font-size:12px;margin:5px 0}.brand-preview-actions{display:flex;gap:8px;margin:8px 0 12px}.brand-preview-actions button{flex:1;font-size:11px;min-height:44px;padding:9px 6px}.brand-colors{display:flex;flex-wrap:wrap;gap:6px}.brand-color{display:flex;align-items:center;gap:6px;min-height:44px;padding:8px 10px;font-size:11px}.brand-color[aria-pressed=true]{border-color:#3d6853;box-shadow:0 0 0 1px #3d6853;background:#e7eedc}.brand-swatch{display:inline-block;flex-shrink:0;width:16px;height:16px;border-radius:50%;border:1px solid #0003}.brand-detail-stock{font-size:12px;line-height:1.8;color:#756139}.brand-detail-actions,.brand-confirm-actions{display:grid;gap:7px}.brand-detail-actions button,.brand-confirm-actions button{font-size:12px;min-height:44px;width:100%;padding:10px 8px}.brand-confirmation{padding:15px;border:2px solid #57754b;background:#f0f4e4;border-radius:16px;margin:12px 0 18px;scroll-margin-top:60px}.brand-confirmation h3{font-size:15px;margin:0 0 8px}.brand-confirmation p{font-size:12px;line-height:1.8;margin:8px 0;overflow-wrap:anywhere}.brand-confirmation .quiet-note{font-size:11px}.brand-loop [hidden]{display:none!important}@media(max-width:360px){.brand-product-info,.brand-detail{padding:10px}.brand-detail-heading{display:block}.brand-detail-close{margin-bottom:6px}.brand-filters{gap:6px}.brand-color{padding:8px;font-size:10px}.brand-product-image{min-height:120px}}@media(prefers-reduced-motion:reduce){.brand-loop{scroll-behavior:auto}}.playable .journey-next,.playable .brand-earn-coins{width:100%;min-height:44px;margin:0 0 12px;background:#e8efdc;color:var(--ink);border-color:#849976;white-space:normal;line-height:1.6}.playable .puzzle-grid button.puzzle-hint-cell{outline:3px solid #365c42;outline-offset:2px;box-shadow:inset 0 0 0 2px #fff6c4}.playable .puzzle-reset-confirmation{padding:12px;margin:10px 0;border:2px solid #8a7453;border-radius:12px;background:#fff4dd;line-height:1.7}.playable .puzzle-reset-confirmation button{min-height:44px;margin:4px}.playable .resume-summary,.playable .history-note{font-size:12px;line-height:1.7;color:#53694e;overflow-wrap:anywhere}.playable .inventory-tray button[hidden]{display:none!important}.playable #placement-help{min-height:44px;margin:8px 0;width:100%}.playable[data-editing=false] #placement-help,.playable[data-editing=true] .journey-next,.playable[data-editing=true] .resume-summary,.playable[data-editing=true] .history-note{display:none}.playable[data-editing=true] .placement-actions{position:sticky;top:0;z-index:5;background:#fffdf6;padding:8px 0;border-bottom:1px solid #c5d1b8}.playable .editor.collapsed .resume-summary{display:none}.playable button:focus-visible,.playable select:focus-visible,.playable input:focus-visible,.playable a:focus-visible{outline:3px solid #365c42;outline-offset:3px}.playable .editor{overscroll-behavior:contain;scroll-padding-top:70px}@media(max-width:760px){.playable.room-wide .top-actions{top:70px;bottom:auto}.playable input,.playable select{font-size:16px;min-height:44px;max-width:100%}.playable #panel-toggle,.playable .top-actions button,.playable .puzzle-grid button{min-height:44px}.playable .brand-filters{grid-template-columns:minmax(0,1fr)}.playable .placement-actions{gap:6px}.playable .placement-actions button{min-height:44px;flex:1 1 44%}.playable #instructions{overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(16px,env(safe-area-inset-bottom))}}
