/* Image-led album viewer; the locked Album Ready cover retains sindoor. */
#phone .album-fullscreen,#phone .album-scroll>[data-scene]{
 --album-black:#edf3f0;--album-ivory:#365663!important;--album-muted:#6c848a!important;
 --album-gold:#9e8148!important;--album-line:#9fae9f66!important;
 --album-btn-bg:#9e2432!important;--album-btn-fg:#fffaf0!important;--album-chip:#fffaf0e6!important;
 --space-bg:linear-gradient(145deg,#e5eef0,#fff8e9)!important;--space-bc:#fffaf1!important;
 --space-shadow:0 12px 30px #54778718!important;
 background-color:transparent;color:#365663;
}
#phone .album-backdrop{background:#edf3f0}
#phone .album-bd[data-bd="0"]{background:radial-gradient(ellipse at 50% 12%,#fffdf7,transparent 65%),linear-gradient(150deg,#f2e6d5,#fff8ed 52%,#e3cbb3)}
#phone .album-bd[data-bd="1"]{background:radial-gradient(ellipse at 70% 28%,#fbfdff,transparent 65%),linear-gradient(150deg,#c9e2ed,#e8f3f5 55%,#d5e5e8)}
#phone .album-bd[data-bd="2"]{background:radial-gradient(ellipse at 40% 15%,#fffbed,transparent 65%),linear-gradient(150deg,#e9d5b2,#faf1df 55%,#d8bf99)}
#phone .album-bd[data-bd="3"]{background:radial-gradient(ellipse at 55% 20%,#fff8f1,transparent 65%),linear-gradient(150deg,#ead0ca,#f8e9e1 55%,#d8b7b4)}
#phone .album-bd[data-bd="4"]{background:radial-gradient(ellipse at 40% 20%,#f9fbef,transparent 65%),linear-gradient(150deg,#d6dfcf,#eef2e7 55%,#c4d1c5)}
#phone .album-bd[data-bd="5"]{background:radial-gradient(ellipse at 65% 20%,#fffaf2,transparent 65%),linear-gradient(150deg,#d5e4e8,#edf1ed 50%,#e4d2b6)}
#phone .album-backdrop .bd-tex,#phone .album-backdrop .bd-vignette,#phone .album-backdrop .bd-sheen,#phone .album-particles{display:none}
#phone .album-entry-panel{position:relative;padding:0;isolation:isolate}
#phone .album-entry-card,#phone .album-fullscreen.is-ready .album-entry-card{position:relative;width:100%;height:100%;min-height:100%;aspect-ratio:auto;transform:none;opacity:1;border:0;box-shadow:none;background:#e4edf0;display:flex;align-items:flex-start;justify-content:flex-end;padding:90px 28px 55px;isolation:isolate}
#phone .album-entry-card::before{display:none}
#phone .album-entry-card::after{content:'';position:absolute;inset:0;z-index:0;border:0;background:linear-gradient(0deg,#fffaf0f5 0%,#fffaf0c4 20%,transparent 55%,#edf5f5b8 100%);pointer-events:none}
#phone .album-entry-image{position:absolute;inset:0;z-index:-1;width:100%;height:100%;aspect-ratio:auto;margin:0;padding:0;border:0;box-shadow:none;background:#e4edf0}
#phone .album-entry-image::before,#phone .album-entry-image::after{display:none}
#phone .album-entry-image img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}
#phone .album-entry-title{z-index:1;font-size:clamp(38px,11vw,52px);font-style:normal;color:#365663;text-align:left;text-shadow:none;max-width:100%;line-height:1.05}
#phone .album-entry-copy{z-index:1;margin-top:18px;color:#58727b;text-align:left;letter-spacing:.17em;font-size:9px}
#phone .album-name-trigger{z-index:1;margin-top:20px;min-height:44px;padding:12px 22px;border:1px solid #881d29;background:#9e2432;color:#fffaf0;box-shadow:none;font-size:10px;letter-spacing:.08em}
#phone .album-entry-arrow{position:absolute;right:30px;bottom:59px;z-index:1;font-size:35px;color:#527787;transform:none;text-shadow:none}
#phone .album-viewer-chrome{top:18px;left:18px;right:72px;display:flex;justify-content:flex-start;gap:8px}
#phone .album-current-chapter,#phone .album-progress-count,#phone .album-viewer-chrome>i{display:none}
#phone .album-viewer-search{background:#fffaf0e6;color:#365663;border:1px solid #a9bdbe;min-height:40px;font-size:9px;letter-spacing:.08em;backdrop-filter:blur(12px)}
#phone .album-close{top:18px;right:18px;width:40px;height:40px;box-shadow:none;border:1px solid #a9bdbe;background:#fffaf0e6;color:#365663}
#phone .album-name-popup{background:#6c8c9666;backdrop-filter:blur(12px)}
#phone .album-name-box{background:#fffaf0;color:#365663;border:1px solid #c2b186;box-shadow:0 20px 60px #54778730;border-radius:20px}
#phone .album-name-input,#phone .album-name-options{background:#edf3f0;color:#365663;border-color:#bccac5}
#phone .album-name-input::placeholder{color:#6c848a}
#phone .album-name-option,#phone .album-name-close{color:#365663}
#phone .album-name-apply{background:#9e2432;color:#fffaf0;border-color:#881d29}
#phone .album-name-clear{color:#527787;border-color:#a9bdbe;background:#fffaf0}
#phone .album-film-stage,#phone .album-film-stage em,#phone .album-peel-back,#phone .album-stack-card,#phone .album-flip-back{background:#edf3f0;color:#365663;box-shadow:0 12px 30px #54778718}
#phone .album-entry-panel::before,#phone .album-entry-panel::after{display:none}
#phone .album-name-close{background:#e4ece9;color:#365663;border-color:#b5c6c2}#phone .album-name-status{color:#627d86}#phone .album-camera-card{background:#edf3f0;box-shadow:0 20px 50px #54778725}
#phone .album-space{overflow:hidden}
#phone .album-space .album-photo-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;z-index:0;filter:none}
#phone .album-space>span,#phone .album-space>b{z-index:2;color:#fffaf0;text-shadow:0 1px 4px #36566399}
#phone .album-space>span{background:#36566380;padding:4px 7px;border-radius:20px}
#phone .album-space>i{display:none}
#phone .album-space::after{pointer-events:none}
#phone .album-credits-link{color:#527787;font-size:11px;margin-top:15px;text-underline-offset:4px}
#phone .album-demo-note{font-size:9px!important;max-width:240px;line-height:1.6;letter-spacing:0!important;color:#71878a}
/* Native fullscreen where supported; safe areas keep controls clear of cutouts. */
#phone:fullscreen{width:100%;height:100%;min-height:0;max-width:none;max-height:none;margin:0;border:0;border-radius:0;transform:none}
#phone .album-viewer-chrome,#phone .album-close{top:max(18px,env(safe-area-inset-top))}
#phone .album-chapter-continue{position:relative;display:grid;place-items:center;align-self:center;min-width:200px;padding:12px 38px;text-align:center}
#phone .album-chapter-continue i{position:absolute;right:22px;top:50%;transform:translateY(-50%);margin:0}
/* Two CSS chevrons, with no assets, timers or animation loop. */
#phone .album-navigation{position:static;display:none;align-items:center;gap:2px;margin-left:auto;padding:0;background:none;color:#365663;white-space:nowrap;pointer-events:auto;flex-shrink:0}
#phone .album-fullscreen.is-ready .album-navigation{display:flex}
#phone .album-navigation button{display:grid;place-items:center;width:44px;height:40px;border-radius:50%;background:#fffaf0dc;touch-action:manipulation}
#phone .album-navigation button:disabled{opacity:.25;cursor:default}
#phone .album-navigation button:focus-visible{outline:2px solid #9e2432;outline-offset:1px}
#phone .album-navigation i{width:10px;height:10px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}
#phone .album-navigation .album-previous i{transform:rotate(-135deg)}
#phone .album-navigation span{font:600 10px var(--sans);letter-spacing:.02em}
#phone .album-viewer-search{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1}
/* Give the available page to the photographs, rather than staggered empty space. */
#phone .album-frame-panel{padding:max(74px,calc(env(safe-area-inset-top) + 56px)) 12px max(48px,calc(env(safe-area-inset-bottom) + 34px))}
#phone .album-frame-panel::before{display:none}
#phone .album-panel-meta{bottom:max(20px,env(safe-area-inset-bottom));left:16px;right:16px}
#phone .album-composition{display:grid;grid-template-rows:minmax(0,1fr);gap:12px;container-type:size}
#phone .album-composition:has(> .album-space:not([hidden]) ~ .album-space:not([hidden])){grid-template-rows:repeat(2,minmax(0,1fr))}
#phone .album-frame-panel .album-composition .album-space{position:relative;inset:auto;width:100%;height:100%;max-height:none;aspect-ratio:auto;transform:none;rotate:none;border:3px solid #fffaf0;border-radius:3px;overflow:hidden}
#phone .album-frame-panel .album-composition>.album-space:only-child{width:fit-content;height:fit-content;max-width:100%;max-height:100%;align-self:center;justify-self:center;display:block}
#phone .album-frame-panel .album-space:only-child .album-photo-image{position:static;width:auto;height:auto;max-width:calc(100cqw - 6px);max-height:calc(100cqh - 6px);object-fit:contain}
#phone .album-interlude{padding:max(78px,calc(env(safe-area-inset-top) + 56px)) 20px max(100px,calc(env(safe-area-inset-bottom) + 78px));gap:14px}
#phone .album-interlude>p{font-size:24px;text-align:center}
#phone .album-peel-section{padding-bottom:max(28px,calc(env(safe-area-inset-bottom) + 16px));gap:12px}
#phone .album-peel-section>p,#phone .album-peel-controls{flex-shrink:0}
#phone .album-peel-controls{display:flex;flex-direction:column;align-items:center;gap:8px}
#phone .album-peel-toggle{display:flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 24px;border:1px solid #881d29;border-radius:99px;background:#9e2432;color:#fffaf0;font:600 13px var(--sans);touch-action:manipulation}
#phone .album-peel-toggle:focus-visible{outline:2px solid #365663;outline-offset:3px}
#phone .album-peel-toggle>span{font-size:20px}
#phone .album-peel-status{font:500 10px var(--sans);color:#58727b;text-align:center}
#phone .album-peel-status:empty{display:none}
#phone .sindoor-splash{position:absolute;inset:0;width:100%;height:100%;z-index:6;pointer-events:none}
#phone .album-card-deck,#phone .album-peel-stage,#phone .album-flip-stage,#phone .album-film-stage,#phone .album-fan-stage{width:min(440px,calc(100% - 20px));height:min(620px,calc(100dvh - 250px));min-height:0;flex-shrink:1}
#phone .album-peel-stage{width:min(440px,calc(100% - 20px),calc((100dvh - 240px)*.75));height:auto;aspect-ratio:3/4;flex-shrink:0}
#phone .album-interlude-note{bottom:76px}
#phone .album-space{cursor:zoom-in}
#phone .album-interlude .album-space{cursor:pointer}
#phone .album-space:focus-visible{outline:3px solid #9e2432;outline-offset:2px}
/* One selected image. Closing releases its source; there is no photo carousel. */
#phone .album-photo-viewer{position:absolute;inset:0;z-index:10010;background:#182a30;display:grid;place-items:center;padding:max(70px,calc(env(safe-area-inset-top) + 56px)) max(8px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));overscroll-behavior:contain}
#phone .album-photo-viewer img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
#phone .album-photo-close{position:absolute;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));width:44px;height:44px;display:grid;place-items:center;border:1px solid #a9bdbe;border-radius:50%;background:#fffaf0;color:#365663}
#phone .album-photo-close:focus-visible{outline:2px solid #fffaf0;outline-offset:3px}
@media(min-aspect-ratio:1/1){#phone .album-composition:has(> .album-space:not([hidden]) ~ .album-space:not([hidden])){grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Offset portraits fill opposite corners; a lone filtered result stays full-size. */
#phone .album-layout--portraits .album-composition:has(>.album-photo-1:not([hidden])+ .album-photo-2:not([hidden])){display:block}
#phone .album-layout--portraits .album-composition:has(>.album-photo-1:not([hidden])+ .album-photo-2:not([hidden]))>.album-space{position:absolute;width:62%;height:74%}
#phone .album-layout--portraits .album-composition:has(>.album-photo-1:not([hidden])+ .album-photo-2:not([hidden]))>.album-photo-1{top:0;right:0;bottom:auto;left:auto;z-index:1}
#phone .album-layout--portraits .album-composition:has(>.album-photo-1:not([hidden])+ .album-photo-2:not([hidden]))>.album-photo-2{top:auto;right:auto;bottom:0;left:0;z-index:2}
/* One two-screen canvas: each row is a single image, never separate halves. */
#phone .album-detail-spread{position:relative;flex:0 0 200%;min-width:200%;height:100%;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:0;padding:max(74px,calc(env(safe-area-inset-top) + 56px)) 0 max(12px,env(safe-area-inset-bottom));background:#fffaf0;scroll-snap-align:none}
#phone .album-detail-spread[data-scene]>.album-space{position:relative;inset:auto;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;transform:none;rotate:none;overflow:hidden;background:none}
#phone .album-detail-spread>.album-space>span,#phone .album-detail-spread>.album-space>b,#phone .album-detail-spread>.album-space::after{display:none}
#phone .album-spread-stop{position:absolute;top:0;bottom:0;left:0;width:50%;pointer-events:none;scroll-snap-align:start}
#phone .album-spread-second{left:50%}
