/* Shared furniture: room identity belongs to artwork, not competing UI treatments. */
:root{
 --ff-control-surface:linear-gradient(135deg,#315267,#142d3f);
 --ff-control-ink:#fff0df;
 --ff-metal:#c8a17b;
 --ff-component-radius:8px 2px 8px 2px;
 --ff-card-surface:linear-gradient(135deg,#f7f2ed,#e6edf3);
 --ff-card-ink:#28323d;
 --ff-card-shadow:0 4px 0 #aebdca,0 7px 0 #536b80,0 12px 24px #0a152144;
}
body :is(.ff-button,.ffx-action,.ffx-enter-room,.ffx-menu-toggle,.ffx-back-top,.ffx-preview-close,.ffx-relic-close,.ff-form button,.ff-filters button,[data-map-close]){
 box-sizing:border-box;min-height:48px;max-width:100%;padding:12px 20px;
 border:3px double var(--ff-metal)!important;border-radius:var(--ff-component-radius)!important;
 background:var(--ff-control-surface)!important;color:var(--ff-control-ink)!important;
 box-shadow:inset 0 0 0 2px #132b3c,0 3px 8px #07151f44!important;
 font-family:var(--ff-type-ui,system-ui,sans-serif)!important;font-size:16px!important;font-weight:500!important;line-height:1.4!important;
 letter-spacing:0!important;text-transform:none;text-align:center;text-decoration:none!important;white-space:normal;
 cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;
}
body :is(.ff-button,.ffx-action,.ffx-enter-room,.ffx-menu-toggle,.ffx-back-top,.ffx-preview-close,.ffx-relic-close,.ff-form button,.ff-filters button,[data-map-close]):hover{
 background:linear-gradient(135deg,#42657b,#213e50)!important;color:#fff8ef!important;
}
body :is(.ff-button,.ffx-action,.ffx-enter-room,.ffx-menu-toggle,.ffx-back-top,.ffx-preview-close,.ffx-relic-close,.ff-form button,.ff-filters button,[data-map-close]):focus-visible{
 outline:3px solid #f3cb91!important;outline-offset:4px;
}
body :is(.ffx-menu-toggle,.ffx-back-top)::before,body .ffx-back-top::after{content:none!important}
body :is(.ffx-preview-close,.ffx-relic-close){width:48px;padding:0!important;font-size:26px!important}
body .ffx-relic-preview{padding-right:58px}
body .ffx-back-top{padding:8px!important;width:62px}
body .ffx-back-top span{font-size:24px}
body .ff-enter span{margin-left:1rem}
body #main :is(.ff-card,.ff-note-card,.ff-showcase,.ff-collection-grid>a){
 box-sizing:border-box;min-width:0;margin:0;padding:1rem 1rem 2rem!important;
 border:4px double #9baebf!important;border-radius:3px!important;
 background:var(--ff-card-surface)!important;color:var(--ff-card-ink)!important;
 box-shadow:var(--ff-card-shadow)!important;transform:none!important;overflow:visible;
}
body #main :is(.ff-card,.ff-note-card,.ff-showcase,.ff-collection-grid>a) :is(h3,h3 a,p,.ff-text-link,.ff-room-link){
 color:var(--ff-card-ink)!important;
}
body #main :is(.ff-card,.ff-note-card,.ff-showcase) .ff-eyebrow{color:#70513d!important;background:none!important;padding:0}
body #main .ff-card::after{content:none}
body #main .ff-card>a:first-child,body #main .ff-showcase-photo{
 display:block;margin:0;padding:0;border:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none;
}
body #main .ff-card .ff-card-image,body #main .ff-showcase-photo img{
 display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;object-position:center;
 padding:8px;border:1px solid #ac9079;border-radius:0;background:#e7ecf0;box-shadow:0 0 0 4px #c6d0d8;transform:none;
}
body #main .ff-showcase-photo{aspect-ratio:auto}
body #main .ff-showcase-photo::after{content:none}
body #main .ff-showcase figcaption{padding:1rem 0 0}
body #main :is(.ff-card,.ff-note-card) .ff-status{
 border:3px double #ad7b5c;background:#e4ccbd;color:#28323d!important;padding:.35rem .55rem;
}
body #main :is(.ff-card>a:last-child,.ff-note-card .ff-text-link){display:inline-block;min-height:44px;padding-top:.5rem}
body #main .ff-note-card h3:first-letter{font-size:1em;color:inherit}
@media(prefers-reduced-motion:reduce){body :is(button,.ff-button,.ffx-action,.ffx-enter-room){transition:none}}
