/* Camera detail view: no card or panel, ink stays on the physical tabletop. */
.r28-detail { display:none; }
@media(max-width:960px){
 .r28-detail[open] { display:block;position:fixed;inset:0;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;box-sizing:border-box;margin:0;padding:0;border:0;border-radius:0;background:#071018;color:#e5edf4;overflow:hidden; }
 .r28-detail::backdrop { background:transparent; }
 .r28-viewport { position:absolute;inset:0 0 var(--r28-nav-height,64px);overflow:auto;overscroll-behavior:contain;scrollbar-width:none; }
 .r28-viewport::-webkit-scrollbar { display:none;width:0;height:0; }
 .r28-stage { position:relative;overflow:hidden;min-height:100%; }
 .r28-photo,.r28-film,.r30-return-film { position:absolute;max-width:none!important;max-height:none!important;object-fit:fill;pointer-events:none; }
 .r28-film,.r30-return-film { opacity:0; }
 .r28-ink-motion { position:absolute;inset:0;pointer-events:none; }
 .r28-ink { position:absolute;left:0;top:0;width:600px;transform-origin:0 0;opacity:0;pointer-events:none;color:#e5edf4;background:none;font-family:inherit;text-align:left;text-shadow:none; }
 .r28-ink .r14-card-label { display:flex;align-items:center;gap:26px;padding:0 10px 22px;margin:0;border-bottom:3.4px solid #e88a48;color:inherit;font-size:26px;line-height:1.13;font-weight:400;letter-spacing:.045em;text-transform:uppercase; }
 .r28-ink .r14-card-label strong { display:block;font-size:44px;line-height:1.12;font-weight:730;letter-spacing:.01em; }
 .r28-ink .r14-card-label svg { flex:none;width:52px;height:52px;stroke:currentColor; }
 .r28-copy { margin-top:26px;border-left:2px solid #d6e5ef;padding:0 24px 0 28px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#e88a48 transparent;font-size:34px;line-height:1.4;overflow-wrap:anywhere; }
 .r28-detail[data-kind=match] .r28-copy { border-left:0;border-right:2px solid #d6e5ef;padding:0 28px 0 14px; }
 .r28-copy p { margin:0 0 22px;color:inherit;font-size:inherit;line-height:inherit; }
 .r28-copy a { display:inline-block;color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:7px;padding:13px 0;min-height:64px;box-sizing:border-box; }
 .r28-copy .r14-source-note { font-size:26px;line-height:1.45; }
 .r28-copy a:focus-visible,.r28-copy:focus-visible { outline:3px solid #fff;outline-offset:5px; }
 .r28-detail[data-phase=ready] .r28-ink { opacity:1;pointer-events:auto; }
 .r28-detail[data-phase=ready] .r28-ink-motion { visibility:hidden; }
 .r28-detail[data-phase=handover] { opacity:calc(1 - var(--r30-reveal,0)); }
 .r28-detail:is([data-phase=returning],[data-phase=handover]) .r28-ink { opacity:1; }
 .r28-detail:is([data-phase=returning],[data-phase=handover]) .r28-heading { visibility:hidden; }
 .r28-detail:is([data-phase=returning],[data-phase=handover]) .r28-copy { pointer-events:none; }
 .r28-detail:is([data-phase=returning],[data-phase=handover]) .r28-controls button { opacity:0; }
 .r28-controls { position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;padding:8px 14px calc(8px + env(safe-area-inset-bottom,0px));background:#071018;z-index:4; }
 .r28-controls button { appearance:none;border:1px solid #8fa2af;background:#101f2a;color:#edf5fa;font:inherit;font-size:14px;line-height:1.25;padding:11px 20px;min-height:46px;border-radius:2px;cursor:pointer; }
 .r28-controls button:focus-visible { outline:2px solid #fff;outline-offset:3px; }
 .r28-status { position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:16px;right:16px;margin:0;text-align:center;font-size:13px;color:#e5edf4;pointer-events:none; }
 .r28-detail:not([data-phase=loading]) .r28-status { display:none; }
 .r28-measure { position:fixed;left:-20000px;top:0;width:600px;pointer-events:none; }
 .r28-measure .r28-ink { position:relative;opacity:1;transform:none!important; }
}
@media(prefers-reduced-motion:reduce){ .r28-detail,.r28-ink { scroll-behavior:auto!important; } }
