.jcds-open-btn{appearance:none;border:0;border-radius:14px;background:#006cff;color:#fff;font-weight:700;padding:14px 20px;font-size:16px;box-shadow:0 8px 22px rgba(0,108,255,.25);cursor:pointer}.jcds-open-btn:active{transform:translateY(1px)}.jcds-modal{position:fixed;inset:0;z-index:999999;background:#05070d;color:#fff;display:none;overflow:hidden}.jcds-modal.is-open{display:block}.jcds-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000}.jcds-video,.jcds-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.jcds-canvas,.jcds-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.jcds-top{position:absolute;top:0;left:0;right:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 12px) 14px 12px;background:linear-gradient(to bottom,rgba(0,0,0,.65),rgba(0,0,0,0))}.jcds-title{font-weight:800;font-size:16px}.jcds-close{border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.35);color:#fff;border-radius:999px;width:42px;height:42px;font-size:24px;line-height:1;cursor:pointer}.jcds-bottom{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:14px 14px calc(env(safe-area-inset-bottom,0px) + 14px);background:linear-gradient(to top,rgba(0,0,0,.75),rgba(0,0,0,0));display:flex;flex-direction:column;align-items:center;gap:12px}.jcds-status{border-radius:999px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.18);padding:10px 14px;font-size:14px;text-align:center;backdrop-filter:blur(8px)}.jcds-count{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:5;display:none;align-items:center;justify-content:center;width:92px;height:92px;border-radius:999px;border:5px solid #1089ff;background:rgba(0,0,0,.38);font-size:42px;font-weight:900;color:#fff;box-shadow:0 0 45px rgba(0,136,255,.65)}.jcds-count.is-visible{display:flex}.jcds-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.jcds-action{border:0;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer}.jcds-action.primary{background:#0a84ff;color:#fff}.jcds-action.secondary{background:rgba(255,255,255,.92);color:#111}.jcds-action.hidden{display:none}.jcds-result{margin-top:12px}.jcds-result img{max-width:220px;border-radius:10px;border:1px solid #ddd}.jcds-hint{display:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(82vw,620px);aspect-ratio:1.414/1;border:2px dashed rgba(255,255,255,.28);border-radius:18px;z-index:1;pointer-events:none}.jcds-flash{position:absolute;inset:0;background:#fff;opacity:0;z-index:6;pointer-events:none}.jcds-flash.is-on{animation:jcdsFlash .28s ease}@keyframes jcdsFlash{0%{opacity:0}35%{opacity:.88}100%{opacity:0}}
.jcds-format{position:absolute;top:calc(env(safe-area-inset-top,0px) + 62px);left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:7px;background:rgba(0,0,0,.42);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:6px;backdrop-filter:blur(10px)}
.jcds-format button{border:0;border-radius:999px;padding:8px 11px;background:transparent;color:#fff;font-weight:800;font-size:12px;cursor:pointer;white-space:nowrap}
.jcds-format button.is-active{background:#078cff;box-shadow:0 0 18px rgba(0,132,255,.55)}
.jcds-stage{touch-action:manipulation;cursor:pointer}.jcds-preview{cursor:default}
@media(max-width:520px){.jcds-format{top:calc(env(safe-area-inset-top,0px) + 58px);gap:4px}.jcds-format button{font-size:11px;padding:7px 9px}.jcds-status{font-size:13px;max-width:92vw}}

.jcds-blur-mask{position:absolute;z-index:2;pointer-events:none;background:rgba(0,0,0,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.jcds-overlay{z-index:3}.jcds-flash{z-index:8}.jcds-top,.jcds-format,.jcds-bottom,.jcds-count{z-index:7}
.jcds-shutter{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 82px);transform:translateX(-50%);z-index:7;width:74px;height:74px;border-radius:999px;border:4px solid rgba(255,255,255,.95);background:rgba(255,255,255,.24);box-shadow:0 8px 32px rgba(0,0,0,.45);cursor:pointer;display:flex;align-items:center;justify-content:center}
.jcds-shutter span{display:block;width:52px;height:52px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 2px rgba(0,0,0,.06)}
.jcds-shutter:active{transform:translateX(-50%) scale(.96)}
.jcds-preview~.jcds-blur-mask{display:block}
.jcds-modal.is-captured .jcds-shutter,.jcds-modal.is-captured .jcds-format,.jcds-modal.is-captured .jcds-blur-mask{display:none}
.jcds-modal.is-processing .jcds-shutter{opacity:.55;pointer-events:none;transform:translateX(-50%) scale(.94)}
.jcds-modal.is-processing .jcds-status{background:rgba(0,0,0,.72)}
