/* Keepsakes only: warm photo chest, actual group members, and their private previews.
   The shared chooser and final blue Change room stylesheet remain untouched. */
.connected-root[data-room="keepsakes"]{--live-bg:#fff0e3;--live-paper:#fff9f1;--live-soft:#fce6d4;--live-line:#efd2bd;--live-input-line:#c48d65;--live-ink:#59331e;--live-muted:#805d47;--live-title:#45230e;--live-accent:#955536;--tactile-ink:#59331e;--tactile-page:#fff0e3;background:#fff0e3}
.connected-root[data-room="keepsakes"] .workspace{background:radial-gradient(ellipse at 5% 15%,#fff9f0 0,transparent 43%),linear-gradient(140deg,#ffeddf,#fff3e7)}
.connected-root[data-room="keepsakes"] .connected-strip{background:#f4ddcb;color:#7b5a46}
.connected-root[data-room="keepsakes"] .topbar{background:#fffbf7e8;border:0;box-shadow:0 3px 12px #99643e0b}
.connected-root[data-room="keepsakes"] .getaway-top-brand strong{color:#492510}
.connected-root[data-room="keepsakes"] .getaway-top-brand small{color:#775641}
.connected-root[data-room="keepsakes"] .live-top-actions button[data-live-action="members"]{padding:10px 15px;border:1px solid #f0d2ba;border-radius:18px;background:linear-gradient(145deg,#fff0e3,#fce2ce);box-shadow:inset 0 1px 0 #fff,0 3px 8px #b5815920;font-weight:750;font-size:13px;color:#59331e}
.connected-root[data-room="keepsakes"] .live-top-actions button[data-live-action="sign-out"]{color:#704b34;font-size:12px}
.connected-root[data-room="keepsakes"] #live-main{max-width:1000px;padding-top:8px}
.connected-root[data-room="keepsakes"] .keepsakes-hero{position:relative;isolation:isolate;width:100%;aspect-ratio:2/1;min-height:0;max-height:none;margin:0 0 18px;border:1px solid #eacbb5;border-radius:24px;overflow:hidden;background:#f4ddc6 url('keepsakes-chest-scene.webp') center/100% 100% no-repeat;box-shadow:0 6px 16px #a56b4214}
.connected-root[data-room="keepsakes"] .keepsakes-hero-heading{position:absolute;left:3.5%;top:7%;z-index:1;display:flex;gap:12px;align-items:center;max-width:91%;pointer-events:none}
/* The exact approved chooser sprite is also used by the current-room footer. */
.connected-root[data-room="keepsakes"] .keepsakes-hero-icon{display:block;flex:none;width:clamp(34px,6vw,58px);height:clamp(34px,6vw,58px);border-radius:50%;background:url('room-picker-reference.jpg') 57.782516% 40.344828%/1190.697674% 1786.046512% no-repeat;box-shadow:0 2px 7px #a67b5220}
.connected-root[data-room="keepsakes"] .keepsakes-hero-heading h1{margin:0;font:850 clamp(28px,5.6vw,48px)/1.08 var(--getaway-ui,system-ui,sans-serif);letter-spacing:-1.5px;color:#412009;text-shadow:0 1px 5px #fff6;transform:none}
.connected-root[data-room="keepsakes"] .live-photo-boxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 24px;align-items:stretch}
.connected-root[data-room="keepsakes"] .keepsake-person-card{position:relative;min-width:0;display:flex;border:1px solid #f3d6c2;border-radius:25px;background:linear-gradient(140deg,#fffaf3,#ffedde);box-shadow:inset 0 1px 0 #fff,0 7px 12px #b17b5230;overflow:hidden}
.connected-root[data-room="keepsakes"] .keepsake-person-card>.live-photo-box{display:flex;width:100%;min-height:0;min-width:0;flex:1;align-items:stretch;justify-content:flex-start;gap:0;padding:12px;border:0;border-radius:inherit;background:none;box-shadow:none;text-align:left;overflow:hidden}
.connected-root[data-room="keepsakes"] .keepsake-person-card>.live-photo-box::before{display:none}
.connected-root[data-room="keepsakes"] .keepsake-person-card>.live-photo-box:focus-visible{outline-offset:-4px;outline:3px solid #9a5c39}
.connected-root[data-room="keepsakes"] .keepsake-photo-stack{position:relative;display:block;width:100%;aspect-ratio:1.72;min-width:0;margin:0;overflow:hidden;border-radius:15px;background:linear-gradient(135deg,#edcdb6,#f6e3d4)}
.connected-root[data-room="keepsakes"] .keepsake-polaroid{position:absolute;display:grid;place-items:center;left:12%;top:10%;width:76%;height:85%;padding:6px 6px 19px;border:1px solid #e8dbcb;border-radius:1px;background:#fffdf6;box-shadow:0 4px 9px #68452d35;overflow:hidden;font-size:10px;line-height:1.2;color:#805d47;text-align:center}
.connected-root[data-room="keepsakes"] .keepsake-polaroid-0{z-index:3;left:13%;top:9%;transform:rotate(3deg)}
.connected-root[data-room="keepsakes"] .keepsake-polaroid-1{z-index:2;left:5%;top:14%;transform:rotate(-12deg)}
.connected-root[data-room="keepsakes"] .keepsake-polaroid-2{z-index:1;left:22%;top:7%;transform:rotate(12deg)}
.connected-root[data-room="keepsakes"] .keepsake-polaroid .live-private-image{display:block;width:100%;height:100%;max-height:none;min-height:0;object-fit:cover;border-radius:0;background:#ebddcd}
.connected-root[data-room="keepsakes"] .keepsake-preview-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:70px;padding:15px;font-size:12px;line-height:1.4;color:#86654e;text-align:center}
.connected-root[data-room="keepsakes"] .keepsake-box-label{display:flex;align-items:center;gap:12px;min-width:0;min-height:65px;padding:8px 0 0}
.connected-root[data-room="keepsakes"] .keepsake-box-icon{display:grid;place-items:center;align-self:flex-end;flex:none;width:52px;height:52px;border:1px solid #f3d0b5;border-radius:15px;background:linear-gradient(145deg,#fff1e0,#ffdfc6);box-shadow:inset 0 1px 2px #d3a17c20;color:#855030}
.connected-root[data-room="keepsakes"] .keepsake-box-icon>.icon{width:32px;height:32px;stroke-width:1.6}
.connected-root[data-room="keepsakes"] .live-photo-box b{display:block;min-width:0;flex:1;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font:750 clamp(15px,2.7vw,23px)/1.2 var(--getaway-ui,system-ui,sans-serif);color:#63361e;overflow-wrap:anywhere}
.connected-root[data-room="keepsakes"] .keepsake-box-chevron{flex:none;align-self:center;margin-left:auto;padding-right:1px;color:#874e2f;font:400 34px/1 system-ui,sans-serif}
.connected-root[data-room="keepsakes"] .keepsake-box-icon .live-balloon-box-art{width:58px;height:58px;max-width:none;margin:-9px 0 0}
.connected-root[data-room="keepsakes"] .keepsake-box-lid-control{position:absolute;left:12px;bottom:12px;width:52px;height:57px;min-height:44px;max-width:none;margin:0;padding:0;align-self:auto;border:0;border-radius:15px;background:transparent;box-shadow:none;z-index:2;touch-action:manipulation}
.connected-root[data-room="keepsakes"] .keepsake-box-lid-control:hover{background:#fff2}
.connected-root[data-room="keepsakes"] .keepsake-box-lid-control:focus-visible{outline:3px solid #8c4b2d;outline-offset:2px}
.connected-root[data-room="keepsakes"] .keepsake-box-lid-control:disabled{background:#fff6;cursor:wait}
.connected-root[data-room="keepsakes"] .keepsake-selected-title{margin:4px 0 5px;color:#63361e;font:750 25px/1.25 var(--getaway-ui,system-ui,sans-serif);overflow-wrap:anywhere}
.connected-root[data-room="keepsakes"]>.mobile-nav{background:linear-gradient(135deg,#fffaf4,#ffedde);border-top:1px solid #fff;border-radius:0;box-shadow:0 -4px 16px #b77c4d18}
.connected-root[data-room="keepsakes"] .room-picker-bar .room-home{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:15px;border:1px solid #edc7ab;background:#ffe6d2;box-shadow:inset 0 1px 2px #d7a17c22}
.connected-root[data-room="keepsakes"] .mobile-nav .room-picker-bar .room-home>.room-current-symbol{width:34px;height:34px}
.connected-root[data-room="keepsakes"] .room-picker-bar b{color:#63361e;font:800 15px/1.2 var(--getaway-ui,system-ui,sans-serif)}
@media(max-width:600px){
 .connected-root[data-room="keepsakes"] #live-main{padding-inline:13px;padding-top:3px}
 .connected-root[data-room="keepsakes"] .keepsakes-hero{border-radius:19px;margin-bottom:15px}
 .connected-root[data-room="keepsakes"] .keepsakes-hero-heading{gap:8px}
 .connected-root[data-room="keepsakes"] .live-photo-boxes{gap:11px}
 .connected-root[data-room="keepsakes"] .keepsake-person-card{border-radius:20px}
 .connected-root[data-room="keepsakes"] .keepsake-person-card>.live-photo-box{padding:9px}
 .connected-root[data-room="keepsakes"] .keepsake-photo-stack{aspect-ratio:1.55;border-radius:12px}
 .connected-root[data-room="keepsakes"] .keepsake-polaroid{padding:4px 4px 13px}
 .connected-root[data-room="keepsakes"] .keepsake-box-label{gap:8px;min-height:57px}
 .connected-root[data-room="keepsakes"] .keepsake-box-icon{width:42px;height:44px;border-radius:12px}
 .connected-root[data-room="keepsakes"] .keepsake-box-icon>.icon{width:28px;height:28px}
 .connected-root[data-room="keepsakes"] .keepsake-box-icon .live-balloon-box-art{width:51px;height:52px}
 .connected-root[data-room="keepsakes"] .keepsake-box-chevron{font-size:27px}
 .connected-root[data-room="keepsakes"] .keepsake-box-lid-control{left:9px;bottom:9px;width:44px;height:50px;border-radius:12px}
}
@media(max-width:340px){
 .connected-root[data-room="keepsakes"] .keepsakes-hero-heading h1{font-size:25px}
 .connected-root[data-room="keepsakes"] .keepsake-box-label{gap:5px}
 .connected-root[data-room="keepsakes"] .keepsake-box-icon{width:36px}
 .connected-root[data-room="keepsakes"] .live-photo-box b{font-size:14px}
 .connected-root[data-room="keepsakes"] .keepsake-box-chevron{font-size:23px}
}
@media(forced-colors:active){
 .connected-root[data-room="keepsakes"] :is(.keepsake-person-card,.keepsake-polaroid,.keepsake-box-icon){border:1px solid CanvasText;box-shadow:none;background:Canvas}
 .connected-root[data-room="keepsakes"] .keepsakes-hero-heading{padding:5px;background:Canvas}
 .connected-root[data-room="keepsakes"] .keepsakes-hero-icon{forced-color-adjust:none}
}
