.app{isolation:isolate}.custom-backdrop{position:absolute;inset:-24px;z-index:-1;pointer-events:none;background-size:cover;background-repeat:no-repeat;transition:opacity 240ms ease,filter 180ms ease}.app:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#24211f55,#24211f12 45%,#24211f90);opacity:0;transition:opacity 240ms ease}body[data-photo-background=true] .app:after{opacity:1}body[data-photo-background=true] .topbar,body[data-photo-background=true] .time-control,body[data-photo-background=true] .paused-context,body[data-photo-background=true] .goal-summary{text-shadow:0 1px 12px #0009}#sector,.minute-ghost [data-ghost-kind=sector]{fill:var(--face-fill,var(--accent))}#ring-fill,.minute-ghost [data-ghost-kind=ring]{stroke:var(--face-fill,var(--accent))}body[data-photo-face=true] .seconds-on-fill{--seconds-track:#fffaf5;--seconds-track-opacity:.4;--seconds-tail:#fffaf5;filter:drop-shadow(0 1px 1px #24211fcc)}
.photo-slot{padding:18px 0;border-top:1px solid var(--line)}.photo-slot h3{font-size:13px;font-weight:500;margin:0 0 14px}.photo-preview{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.photo-preview img{width:58px;height:58px;border-radius:12px;object-fit:cover}.photo-upload{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 15px;background:#ffffff08;border-radius:10px;font-size:12px;cursor:pointer;overflow:hidden}.photo-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.photo-upload:focus-within{box-shadow:inset 0 -2px var(--ink)}.photo-preview button{font-size:11px;color:var(--muted);min-height:44px}.photo-range{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:11px;color:var(--muted);margin:18px 0}.photo-range output{font-variant-numeric:tabular-nums}.photo-range input{grid-column:1/-1;width:100%;accent-color:var(--accent);margin:0;min-height:24px}.photo-slot .clean-help{margin:16px 0 0}.photo-settings>.clean-help{margin-top:8px}
@media(prefers-reduced-motion:reduce){.custom-backdrop,.app:after{transition:none}}
