.camera-light { padding: .5rem 1rem 0; flex: 0 0 auto; position: relative; }
.camera-light[hidden], .camera-light-modes[hidden], .camera-light-status[hidden] { display: none; }
.camera-light-toolbar, .camera-light-modes { display: flex; align-items: center; justify-content: center; gap: .5rem; }
.camera-light-modes button, .camera-light-help summary { display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; padding: 8px; border-radius: 50%; border: 1px solid transparent; background: transparent; color: #eee; cursor: pointer; }
.camera-light-modes svg { width: 28px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; stroke-linecap: round; }
.camera-light-modes button[aria-pressed="true"] { background: #f5f5f5; color: #161616; border-color: #f5f5f5; }
.camera-light-modes button:focus-visible, .camera-light-help summary:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.camera-light-modes button:disabled { cursor: wait; opacity: .65; }
.camera-light-help { position: static; }
.camera-light-help summary { list-style: none; }
.camera-light-help summary::-webkit-details-marker { display: none; }
.camera-light-help summary svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
.camera-light-help[open] summary { background: #333; }
.camera-light-help-text { position: absolute; z-index: 8; bottom: calc(100% + .35rem); left: 50%; transform: translateX(-50%); width: min(290px, calc(100vw - 3rem)); padding: 1rem; border: 1px solid #555; border-radius: 14px; background: #252525; color: #eee; box-shadow: 0 8px 32px #0008; font-size: .85rem; line-height: 1.5; }
.camera-light-help-text p { margin-top: .5rem; }
.camera-light-status { text-align: center; font-size: .78rem; color: #c5c5c5; line-height: 1.4; margin: .4rem 0 0; }
