.dish-camera{margin:12px 0;color:var(--ink);max-width:470px;margin-inline:auto}
.dish-camera-stage{position:relative;width:100%;aspect-ratio:1;border-radius:18px;overflow:hidden;background:var(--subtle,#f7f2eb);border:1px solid var(--line,#efe5dc)}
.dish-camera-live,.dish-camera-preview{display:block;width:100%;height:100%;object-fit:cover}
.dish-camera-live[hidden],.dish-camera-preview[hidden],.dish-camera [hidden]{display:none!important}
.dish-camera.is-live .dish-camera-stage{background:#17130f}
.dish-camera-guide{position:absolute;inset:10%;border:1px dashed #bca998;border-radius:50%;display:grid;place-items:center;pointer-events:none}
.dish-camera-guide span{font-size:13px;line-height:1.7;text-align:center;max-width:9em;color:var(--muted,#8d7b6d);padding:12px}
.dish-camera.is-live .dish-camera-guide{border-color:#ffffff9c;box-shadow:0 0 0 70px #0002}
.dish-camera.is-live .dish-camera-guide span{align-self:end;margin-bottom:17px;background:#20171199;color:#fff;border-radius:8px;padding:4px 10px;font-size:12px}
.dish-camera-status{margin:12px 0;font-size:13px;line-height:1.6;color:var(--muted,#8d7b6d);min-height:21px}
.dish-camera-status.is-error{color:var(--danger,#ac3a30)}
.dish-camera-actions{display:flex;gap:8px;flex-wrap:wrap}
.dish-camera button{min-height:44px;min-width:44px;font-size:13px}
.dish-camera-actions>button{flex:1}
.dish-camera-fallback{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line,#efe5dc);border-radius:13px;margin-top:9px;font-size:13px;overflow:hidden;cursor:pointer;background:var(--paper,#fff)}
.dish-camera-fallback input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.dish-camera-fallback:focus-within{outline:3px solid #e5a77d;outline-offset:3px}
.dish-camera-styles{display:flex;gap:6px;padding:4px;background:var(--subtle,#f7f2eb);border-radius:14px;margin-top:12px}
.dish-camera-styles button{flex:1;background:transparent;border-color:transparent;box-shadow:none}
.dish-camera-styles button[aria-pressed=true]{background:var(--paper,#fff);border-color:var(--line,#efe5dc);color:var(--accent,#b94e26)}
.dish-camera-note{font-size:11px;line-height:1.7;color:var(--muted,#8d7b6d);margin:13px 0}
.dish-camera-save{width:100%;margin-top:3px}
@media(max-width:400px){.dish-camera{margin-top:10px}.dish-camera-guide span{font-size:12px}.dish-camera-stage{border-radius:15px}}
