.camera-view .photo-thumb{cursor:pointer}
.async-upload-bar{position:fixed;z-index:20;top:14px;left:50%;transform:translateX(-50%);width:min(calc(100% - 32px),560px);background:#222522;color:#fff4e9;padding:9px 12px 10px;box-shadow:0 8px 22px #463a3040;border-radius:2px;pointer-events:none}.async-upload-meta{display:flex;justify-content:space-between;gap:10px;font:9px var(--mono);letter-spacing:.02em;margin-bottom:6px}.async-upload-track{height:3px;background:#ffffff30}.async-upload-track span{display:block;width:0;height:100%;background:#e2a276;transition:width .35s ease}
.guest-modal{position:fixed;inset:0;z-index:50;background:#17201ed9;display:flex;align-items:center;justify-content:center;padding:22px}.guest-modal-card{width:min(100%,420px);background:var(--paper);padding:30px 25px 24px;box-shadow:0 20px 60px #0005}.guest-modal-logo{display:block;width:58px;height:26px;object-fit:contain;object-position:left center;margin-bottom:28px}.guest-modal-card h2{font-size:43px;margin:0 0 16px}.guest-modal-card p{font:15px/1.4 var(--serif);color:var(--muted);margin:0 0 20px}.guest-modal-card input{width:100%;border:1px solid var(--line);background:#fffaf3;padding:15px 14px;font:15px var(--sans);color:var(--ink);outline:none;margin-bottom:10px}.guest-modal-card input:focus{border-color:var(--terracotta)}.guest-modal-card small{display:block;text-align:center;color:#9a948c;font:10px var(--mono);line-height:1.4;margin-top:12px}.guest-greeting,.guest-thanks{font:12px var(--mono);color:var(--terracotta);letter-spacing:.03em}.guest-thanks{font-family:var(--serif);font-size:17px;margin:0 0 30px}
.brand-logo{display:block;width:43px;height:20px;flex:0 0 43px;object-fit:contain;object-position:center;align-self:center}.brand-product{display:grid;align-content:center}.event-symbol{display:block;width:42px;height:20px;object-fit:contain;object-position:left center}.upload-status .status-orbit img{display:block;width:34px;height:16px;object-fit:contain}.thank-mark{display:block;width:82px;height:38px;object-fit:contain;object-position:center;margin:0 auto 45px}
@media(max-width:480px){.brand-logo{width:38px;height:18px;flex-basis:38px}.brand{gap:7px}.brand-product{font-size:13px}}
.camera-view .photo-thumb button{right:3px;top:3px;width:18px;height:18px;font-size:12px;touch-action:manipulation}
.camera-view .photo-thumb button + button{display:none}
.message-camera{height:clamp(180px,34svh,280px);margin:14px 0 12px;box-shadow:0 14px 30px #463a3026}
.message-camera video[controls]{transform:none;-webkit-transform:none}
.message-audio{width:100%;margin:14px 0 8px;accent-color:var(--terracotta)}
.record-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 12px;padding:12px 15px;background:#ebe3d9;border:1px solid var(--line)}
.record-status{display:grid;gap:6px}
.record-status span{font:12px var(--mono);color:var(--ink)}
.record-status small{font-size:11px;color:var(--muted)}
.record-ring{width:64px;height:64px;flex:0 0 64px;border:1px solid #cbbeb2;border-radius:50%;display:grid;place-items:center}
.record-ring button{width:46px;height:46px;font-size:15px}
.record-actions{display:flex;gap:10px;align-items:center}
.record-actions .secondary-button{flex:1;padding:14px 16px}
.record-actions .text-button{margin:0;padding:10px 4px}
.record-heading{display:flex;align-items:center;justify-content:space-between}.record-heading .eyebrow{margin-bottom:0}.prompt-refresh{border:1px solid var(--line);background:transparent;color:var(--terracotta);width:32px;height:32px;border-radius:50%;font-size:18px;line-height:1;cursor:pointer;touch-action:manipulation;transition:transform .25s,background .2s}.prompt-refresh:hover{background:#eee5da;transform:rotate(90deg)}#recordTitle{font-size:clamp(35px,8.5vw,52px);line-height:.98;margin-top:20px}.record-heading + #recordTitle i{display:inline;color:var(--terracotta)}
.record-tools{display:flex;align-items:center;gap:8px}.language-toggle{display:flex;border:1px solid var(--line);border-radius:999px;padding:2px}.language-button{border:0;background:transparent;color:var(--muted);font:9px var(--mono);padding:5px 7px;border-radius:999px;cursor:pointer;touch-action:manipulation}.language-button.active{background:var(--ink);color:var(--paper)}
.photo-lightbox{position:fixed;inset:0;z-index:30;background:#17201ee8;display:flex;align-items:center;justify-content:center;padding:28px}
.photo-lightbox img{display:block;width:auto;height:auto;max-width:min(92vw,520px);max-height:82svh;margin:auto;object-fit:contain;transform:none!important;-webkit-transform:none!important;box-shadow:0 18px 50px #0008}
.lightbox-close{position:absolute;right:18px;top:18px;width:38px;height:38px;border:1px solid #fff8;background:transparent;color:#fff;font-size:27px;line-height:1;cursor:pointer;touch-action:manipulation}