/* v17: lavender scrapbook, mint selection, paper-first controls.
   Keep book geometry/motion in album.css; all surface refinements live here. */
:root{--ink:#382759;--paper:#fcfaff;--lilac:#ede6fa;--mint:#dff2e8;--mint-line:#78aa99;--light-line:#d8cce9}
body{background-size:44px 44px;background-image:radial-gradient(circle at 12px 12px,#d6c9eb 1px,transparent 1.5px)}
.dressing-room,.wardrobe{padding:26px 24px 30px;box-shadow:inset 0 0 0 5px #f6f1fc}
.dressing-room{display:flex;flex-direction:column}
.page-heading,.record-heading,.wardrobe-heading,.snack-page h2{border:0;box-shadow:none;border-radius:3px;background:transparent;padding:8px 0}
.page-heading{letter-spacing:1px;margin-bottom:8px}
.page-heading i,.record-heading i,.wardrobe-heading i{width:28px;height:28px;flex-shrink:0}
.record-heading,.wardrobe-heading{background:var(--mint);padding:8px 12px}
.record-heading{margin-top:18px}
.photo-mount{padding:5px;border-color:#d0c1e2}
.heart{width:40px;height:40px;border:0;background:#fcfaffd9;border-radius:5px}
.outfit-summary{border:0;background:transparent;flex:1}
.part-summary{min-height:49px;flex:1;border-bottom:1px dashed #ded2ec;padding:6px 10px}
.part-summary strong{color:#586d83}
.part-summary>i{opacity:.55;width:18px;height:18px}
.part-summary:hover>i,.part-summary:focus-visible>i{opacity:1}
.background-picker{height:auto;min-height:44px;margin-top:12px;gap:12px}
.swatches{gap:2px}
.swatch{width:28px;height:28px;border:5px solid var(--paper);outline:0;border-radius:50%;box-shadow:0 0 0 1px #d4c5e4;flex-shrink:0;margin:4px}
.swatch[aria-pressed=true]{outline:2px solid #7d65a8;outline-offset:1px}
.background-name{margin-left:auto;color:#77648d}
.keepsakes{grid-template-columns:1fr 1fr;gap:18px;height:266px;margin-bottom:22px}
.portrait-slot{border-color:#b9a8cf;box-shadow:none}
.portrait-slot #album-portrait{object-fit:cover;object-position:50% 50%}
.portrait-slot>i{width:22px;height:22px;left:13px;top:15px;color:#796290}
.snack-page h2{height:44px;font-size:24px;gap:8px;margin-bottom:8px}
.snack-page h2 i{width:24px;height:24px;flex-shrink:0}
.food-tray{gap:7px}
.snack{border:1px solid #dfd3eb;box-shadow:none;background:#f7f3fb;border-radius:5px;padding:6px;transition:background .15s,border-color .15s}
.snack:hover{transform:none;background:var(--mint);border-color:var(--mint-line)}
.snack img{max-width:58px;height:65px}
.snack-empty{font-size:24px;background:transparent}
.count{font:12px/1.5 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;color:#74618c}
.tabs{margin:10px 0 12px;gap:3px}
.tab{border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 0;font-size:24px}
.tab:hover{background:#f1eafa}
.tab.active{background:var(--mint);border-bottom:2px solid var(--mint-line)}
.looks{grid-auto-rows:126px;max-height:262px;gap:8px;padding:1px 5px 3px 1px}
.look-card{border:1px solid #e0d5eb;border-radius:4px;box-shadow:none;background:#f7f3fb;gap:5px;padding:7px 4px 6px;transition:border-color .15s,background .15s}
.look-card .item-image{flex:1;min-height:0}
.look-card .item-image img{max-height:100%}
.song-name{display:flex;align-items:center;justify-content:center;flex:0 0 32px;line-height:16px;white-space:normal;overflow-wrap:anywhere;text-align:center;text-wrap:balance;text-overflow:clip}
.kind-ensemble .song-name{flex-direction:column;width:100%}
.song-stage{font:11px/14px -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;color:#74618c}
.song-title{display:block;width:100%;text-wrap:balance}
.look-card:hover{border-color:#aa91c2;background:#f1eafa}
.look-card[aria-pressed=true]{background:var(--mint);border-color:var(--mint-line);box-shadow:inset 0 0 0 1px var(--mint-line)}
.look-card[aria-pressed=true]:after{content:'✓';position:absolute;right:6px;top:3px;font:13px system-ui;color:#4e7c69}
.actions{gap:10px;margin-top:16px}
.actions button{border:1px solid #b9a5d0;box-shadow:none;background:var(--paper);border-radius:4px;font-size:24px;min-height:52px;padding:8px}
.actions button i{width:24px;height:24px}
.actions .primary{background:#6e538e;border-color:#6e538e;color:#fff}
.actions button:hover{transform:none;filter:none;background:#f0e9f8}
.actions .primary:hover{background:#5e447e}
.extra-actions{margin-top:4px}
.extra-actions button{color:#76628e;padding:9px 0;min-height:36px}
.side-bookmarks button{box-shadow:inset 0 0 0 2px #faf6ff;border-width:2px}
.album footer{color:#7e6b95;font:12px/1.7 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}
button:focus-visible{outline:3px solid #76529c;outline-offset:3px}
.portrait-save:before{background:#fcfaffdd}
@media(min-width:801px), (orientation:landscape){.dressing-room .background-picker{margin-top:auto;padding-top:14px}.part-summary>span,.part-summary strong{font-size:24px}.book-world{width:1220px}}
@media(max-width:800px) and (orientation:portrait){
 body{padding:42px 16px 45px}.dressing-room,.wardrobe{padding:20px 13px 27px}
 .part-summary{min-height:47px;grid-template-columns:32px 42px 1fr 18px;padding:5px 6px;gap:6px}
 .part-summary>span,.part-summary strong{font-size:12px}
 .background-picker{gap:6px;flex-wrap:wrap}.background-name{font-size:12px}
 .swatch{width:26px;height:26px;margin:3px;border-width:4px}
 .keepsakes{height:190px;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:18px}
 .portrait-slot #album-portrait{position:static;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
 .snack-page h2{font-size:18px;height:36px;gap:5px}.snack-page h2 i{width:20px;height:22px}
 .snack{padding:3px}.snack img{max-width:48px;height:50px}.food-tray{gap:4px}
 .tab{font-size:12px;min-height:44px;padding:10px 0}
 .actions button{font-size:12px;min-height:48px}.actions button i{width:22px;height:22px}
 .side-bookmarks{justify-content:space-between;margin-bottom:18px;gap:8px}
 .side-bookmarks button,.side-bookmarks #close-book{width:46px;height:44px;padding:8px}
 .looks{grid-auto-rows:126px;max-height:262px}
 .owner-tag{left:50px;top:58px;font-size:18px;gap:6px}
 .cover-flower.top{width:108px;right:12px;top:115px;height:130px}
 .cover-lettering{left:13%;width:82%;top:39%}.cover-subtitle{top:61%}
 .cover-scene{height:600px}.book-closed:not(.opening) .album{height:600px}
 .cover-flower.bottom{width:145px;height:170px;left:28px;bottom:25px}
 .cover-lightstick{width:50px;height:100px;bottom:50px;right:40px}
}
@media(max-width:380px){.keepsakes{height:190px;gap:9px}.snack-page h2{font-size:12px}.snack img{height:44px}.count{font-size:11px}.background-name{display:none}}

/* Fine pointers only: native cursor with a hotspot at the lightstick tip. */
@media(hover:hover) and (pointer:fine){body{cursor:var(--lightstick-cursor),auto}button,[role="button"],a,.feed-hit{cursor:var(--lightstick-cursor),pointer}button:disabled{cursor:not-allowed}input,textarea,[contenteditable=true]{cursor:text}}
