.photo-quest-toggle{position:absolute;right:32px;top:252px;min-height:44px;font-size:12px}
.photo-quest{position:absolute;z-index:6;right:32px;top:92px;width:min(374px,calc(100% - 36px));max-height:calc(100svh - 174px);overflow:auto;overscroll-behavior:contain;padding:20px 22px;border:1px solid #ffffffa6;border-radius:20px;background:rgba(251,251,253,.98);box-shadow:0 12px 40px #0003;backdrop-filter:blur(16px)}
.photo-quest .panel-heading{margin-bottom:10px}.photo-quest .panel-heading h2{font-size:23px}
.photo-quest-intro{font-size:12px;color:var(--muted);margin-bottom:13px}
.photo-progress{font-size:11px;font-weight:650;color:var(--ink);padding:10px 12px;background:#ebebe9;border-radius:10px;font-variant-numeric:tabular-nums}
.photo-missions{margin:0;padding:0;list-style:none}
.photo-missions li{border-top:1px solid var(--line);padding:15px 0 16px}
.photo-mission-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.photo-mission-heading h3{font-size:14px;font-weight:630;letter-spacing:-.02em}
.photo-check{font-size:18px;color:#246045;font-weight:700}
.photo-hint,.photo-readiness,.photo-footnote{font-size:11px;line-height:1.45;color:var(--muted)}
.photo-hint{margin:3px 0 6px}.photo-readiness{margin-bottom:10px;min-height:16px}
.photo-mission-actions{display:flex;gap:7px}
.photo-mission-actions button,.photo-postcard-button,.photo-download{min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:11px;font-weight:600}
.photo-mission-actions button{flex:1}.photo-mission-actions button:last-child,.photo-postcard-button{background:var(--ink);color:white;border-color:var(--ink)}
.photo-mission-actions button:disabled,.photo-postcard-button:disabled{opacity:.45}
.photo-thumb{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;margin-top:11px;border-radius:9px;background:#e9e3d8}
.photo-feedback{min-height:17px;font-size:11px;color:var(--ink);margin:0 0 12px}
.photo-postcard-button{display:block;width:100%;font-size:12px}
.photo-download{display:flex;align-items:center;justify-content:center;width:100%;margin-top:8px;text-decoration:underline;text-underline-offset:2px}
.photo-footnote{margin-top:15px}.photo-footnote a{text-underline-offset:2px}
.photo-open .cat-controls,.photo-open .ambience-toggle,.photo-open .photo-quest-toggle{visibility:hidden}
@media(max-width:760px){.photo-quest-toggle{right:18px;top:236px;padding:10px 14px}.photo-quest{right:18px;top:78px;max-height:calc(100svh - 156px)}}
@media(max-height:500px){.photo-quest-toggle{right:max(18px,env(safe-area-inset-right));top:226px}.photo-quest{right:max(18px,env(safe-area-inset-right));top:70px;max-height:calc(100svh - 134px)}}
@media(max-height:500px) and (max-width:600px){.photo-quest-toggle{top:176px}}
@media(max-height:500px) and (min-width:601px) and (max-width:760px){.inspect:not([hidden]){right:calc(max(18px,env(safe-area-inset-right)) + 132px)}}

/* Photo mode uses the same panel rhythm as the other room activities. */
#action-list .photo-quest-toggle{position:static;top:auto;right:auto;width:100%;min-height:47px;margin:0;padding:10px 13px}
.photo-quest{z-index:8;top:97px;right:32px;max-height:calc(100svh - 129px);border-color:var(--room-panel-line);border-radius:22px;background:var(--room-panel);color:var(--room-panel-ink);box-shadow:0 18px 54px #1f1a1438}
.photo-quest .panel-heading{position:sticky;top:-20px;z-index:1;margin-bottom:10px;padding:7px 0 12px;background:var(--room-panel)}
.photo-quest .eyebrow{color:#8b523b}
.photo-progress{background:#eee8de;color:var(--room-panel-ink)}
.photo-missions li{border-color:var(--room-panel-line)}
.photo-mission-actions button,.photo-postcard-button,.photo-download{border-color:var(--room-panel-line);background:#fffdf9;color:var(--room-panel-ink)}
.photo-mission-actions button:last-child,.photo-postcard-button{background:#29241e;color:#fffaf2;border-color:#29241e}

@media(max-width:760px),(pointer:coarse){
 #action-list .photo-quest-toggle{min-height:51px}
 .photo-quest{top:calc(env(safe-area-inset-top) + 12px);right:calc(env(safe-area-inset-right) + 12px);bottom:calc(env(safe-area-inset-bottom) + 12px);left:calc(env(safe-area-inset-left) + 12px);width:auto;max-height:none;padding:19px 20px;box-shadow:0 22px 72px #1f1a1452}
 .photo-quest .panel-heading{top:-19px}
}

@media(max-width:350px){
 .photo-mission-actions{flex-wrap:wrap}
 .photo-mission-actions button{flex:1 1 100%}
}

@media(max-height:560px) and (max-width:760px), (max-height:560px) and (pointer:coarse){
 .photo-quest{top:calc(env(safe-area-inset-top) + 8px);right:calc(env(safe-area-inset-right) + 8px);bottom:calc(env(safe-area-inset-bottom) + 8px);left:calc(env(safe-area-inset-left) + 8px);padding:14px 16px}
 .inspect:not([hidden]){right:calc(env(safe-area-inset-right) + 12px)}
}
