/* V9 · Consistent, mobile-safe Cozy Room layout. */
body.cozy-world-v2, body.cozy-world-v2 * { box-sizing: border-box; }
body.cozy-world-v2 { overflow-x: clip; }
.cw-container { width:min(100% - 24px,1150px); max-width:1150px; min-width:0; padding:12px 0 40px; }
.cw-room-actions,.rw-banner,.cw-dock,.cw-reward-shelf,.cw-room-builder,.cw-room-foot {width:100%;max-width:960px;margin-left:auto;margin-right:auto;min-width:0;}
.cw-room-actions {margin-top:14px;}
.cw-reward-shelf {min-width:0; overflow:hidden; margin-top:15px; margin-bottom:15px; padding:14px; border:1px solid rgba(244,213,191,.28);border-radius:22px;background:linear-gradient(145deg,rgba(75,50,86,.96),rgba(46,32,62,.98));}
.cw-reward-intro {margin-bottom:8px;min-width:0;}
.cw-reward-intro span {display:block;color:#ffdbb2;font-size:.76rem;letter-spacing:.1em;font-weight:800;}
.cw-reward-intro p {margin:6px 0 10px;font-size:.91rem;line-height:1.55;color:#eee0e6;}
.cw-reward-shelf .rw-shop-wrap {max-width:100%;min-width:0;width:100%;padding:10px 8px 4px;margin:0;overflow:hidden;}
.cw-reward-shelf .rw-shop-top,.cw-reward-shelf .rw-shop-top > div {max-width:100%;min-width:0;}
.cw-reward-shelf .rw-shop-track {display:flex;grid-auto-flow:unset;grid-template-columns:none;flex-flow:row nowrap;overflow-x:auto;overflow-y:hidden;max-width:100%;min-width:0;width:100%;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;touch-action:pan-x pan-y;gap:12px;padding:7px 2px 12px;-webkit-overflow-scrolling:touch;}
.cw-reward-shelf .rw-shop-card {flex:0 0 250px;max-width:calc(100% - 8px);min-width:0;width:auto;min-height:218px;scroll-snap-align:start;}
.cw-reward-shelf .rw-shop-card select {width:100%;max-width:100%;min-width:0;}
.cw-dock {margin-top:17px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);}
.cw-dock > *,.cw-panel,.cw-room-builder,.rw-section {min-width:0;max-width:100%;}
.cw-room-builder {padding:18px 16px; margin-top:17px;overflow:hidden;}
.cw-room-builder .section-heading {min-width:0;max-width:100%;}
.cozy-v2-form {display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;min-width:0;overflow:visible;}
.cozy-v2-form > *,.cozy-v2-two,.cozy-v2-book-grid,.rw-selects,.cozy-v2-actions {width:100%;max-width:100%;min-width:0;}
.cozy-v2-two,.cozy-v2-book-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
.rw-selects {grid-template-columns:repeat(2,minmax(0,1fr));}
.cozy-v2-form label,.rw-section label {min-width:0;max-width:100%;}
.cozy-v2-form input:not([type="checkbox"]),.cozy-v2-form select,.rw-selects select {display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;}
.cozy-v2-checks {grid-template-columns:repeat(2,minmax(0,1fr));}
.cw-note-form {min-width:0;}
.cw-note-form input {min-width:0;max-width:100%;}
@media(max-width:800px) {
 .cw-dock{grid-template-columns:minmax(0,1fr);}
 .cw-room-actions{grid-template-columns:repeat(3,minmax(0,1fr));}
 .cw-reward-shelf .rw-shop-card{flex-basis:240px;}
}
@media(max-width:600px) {
 .cw-container{width:calc(100% - 12px);padding:8px 0 32px;}
 .cw-reward-shelf{padding:12px 10px;margin-top:12px;border-radius:17px;}
 .cw-reward-shelf .rw-shop-wrap{padding:8px 4px 2px;}
 .cw-reward-shelf .rw-shop-track{gap:10px;}
 .cw-reward-shelf .rw-shop-card{flex-basis:min(78vw,270px);max-width:calc(100% - 12px);}
 .cw-room-builder{padding:14px 12px;border-radius:18px;}
 .cozy-v2-two,.cozy-v2-book-grid,.rw-selects,.cozy-v2-checks{grid-template-columns:minmax(0,1fr);}
 .cozy-v2-form{padding:13px 10px;}
 .cw-room-builder .section-heading h2{font-size:1.65rem;overflow-wrap:anywhere;}
 .cw-room-builder .microcopy {max-width:100%;overflow-wrap:break-word;}
 .cw-room-actions .cw-action{min-width:0;}
}
@media(prefers-reduced-motion:reduce){.cw-reward-shelf .rw-shop-track{scroll-behavior:auto;}}
