/* EZSC course camera — isolated full-screen capture UI. */
.ezsc-course-camera{
  position:fixed;inset:0;z-index:1000030;display:none;background:#000;color:#fff;
  font-family:var(--ezsc-font,inherit);direction:rtl;overflow:hidden;
}
.ezsc-course-camera.is-open{display:block}
.ezsc-course-camera *{box-sizing:border-box}
.ezsc-course-camera-stage{position:absolute;inset:0;background:#000;overflow:hidden}
.ezsc-course-camera-live,.ezsc-course-camera-preview-image,.ezsc-course-camera-preview-video{
  width:100%;height:100%;display:block;object-fit:cover;background:#000;
}
.ezsc-course-camera-preview-image,.ezsc-course-camera-preview-video{display:none}
.ezsc-course-camera.is-preview .ezsc-course-camera-live{display:none}
.ezsc-course-camera.is-preview.has-image .ezsc-course-camera-preview-image{display:block}
.ezsc-course-camera.is-preview.has-video .ezsc-course-camera-preview-video{display:block}
.ezsc-course-camera-shade{position:absolute;inset:auto 0 0;height:38%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(0,0,0,.78))}
.ezsc-course-camera-top{position:absolute;z-index:4;top:max(16px,env(safe-area-inset-top));left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;direction:ltr}
.ezsc-course-camera-icon-btn{width:48px;height:48px;border:0;border-radius:50%;background:rgba(22,22,22,.58);color:#fff;display:grid;place-items:center;font-size:28px;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 7px 20px rgba(0,0,0,.18)}
.ezsc-course-camera-icon-btn:focus-visible,.ezsc-course-camera-shutter:focus-visible,.ezsc-course-camera-mode:focus-visible,.ezsc-course-camera-preview-action:focus-visible{outline:3px solid #fff;outline-offset:3px}
.ezsc-course-camera-switch svg{width:25px;height:25px;display:block}
.ezsc-course-camera-rec-time{position:absolute;top:max(24px,calc(env(safe-area-inset-top) + 8px));left:50%;z-index:5;transform:translateX(-50%);display:none;padding:7px 12px;border-radius:999px;background:rgba(20,20,20,.62);font-weight:800;font-size:13px;direction:ltr;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.ezsc-course-camera.is-recording .ezsc-course-camera-rec-time{display:block}
.ezsc-course-camera-rec-time:before{content:'';display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#ff3b30;vertical-align:1px;animation:ezscCamPulse 1s infinite}
@keyframes ezscCamPulse{50%{opacity:.35}}
.ezsc-course-camera-bottom{position:absolute;z-index:4;left:0;right:0;bottom:max(18px,env(safe-area-inset-bottom));padding:0 20px;display:grid;gap:18px}
.ezsc-course-camera-controls{display:grid;grid-template-columns:72px 1fr 72px;align-items:center;gap:18px;direction:ltr}
.ezsc-course-camera-gallery,.ezsc-course-camera-placeholder{width:58px;height:58px;border-radius:16px;border:2px solid rgba(255,255,255,.82);background:rgba(25,25,25,.5);overflow:hidden;display:grid;place-items:center;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ezsc-course-camera-gallery svg{width:28px;height:28px}
.ezsc-course-camera-shutter{position:relative;justify-self:center;width:82px;height:82px;border-radius:50%;border:4px solid #fff;background:transparent;padding:6px;cursor:pointer;transition:transform .16s ease}
.ezsc-course-camera-shutter:active{transform:scale(.93)}
.ezsc-course-camera-shutter:before{content:'';position:absolute;top:50%;left:50%;display:block;width:calc(100% - 12px);height:calc(100% - 12px);margin:0;transform:translate(-50%,-50%);border-radius:50%;background:#fff;transition:.18s ease}
.ezsc-course-camera.mode-video .ezsc-course-camera-shutter:before{width:36px;height:36px;margin:0;border-radius:8px;background:#ff3b30}
.ezsc-course-camera.mode-video:not(.is-recording) .ezsc-course-camera-shutter:before{width:60px;height:60px;margin:0;border-radius:50%;background:#ff3b30}
.ezsc-course-camera-modes{display:flex;align-items:center;justify-content:center;gap:28px;direction:rtl;font-size:16px;font-weight:700}
.ezsc-course-camera-mode{border:0;background:transparent;color:rgba(255,255,255,.78);padding:5px 2px;cursor:pointer;font:inherit}
.ezsc-course-camera-mode.is-active{color:#ffd54a}
.ezsc-course-camera-error{position:absolute;z-index:6;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(86vw,420px);display:none;padding:18px;border-radius:18px;background:rgba(20,20,20,.82);text-align:center;line-height:1.6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.ezsc-course-camera.has-error .ezsc-course-camera-error{display:block}
.ezsc-course-camera-preview-bar{position:absolute;z-index:5;left:16px;right:16px;bottom:max(22px,env(safe-area-inset-bottom));display:none;gap:12px;grid-template-columns:1fr 1fr;direction:rtl}
.ezsc-course-camera.is-preview .ezsc-course-camera-bottom{display:none}
.ezsc-course-camera.is-preview .ezsc-course-camera-preview-bar{display:grid}
.ezsc-course-camera-preview-action{min-height:52px;border:0;border-radius:999px;font-size:16px;font-weight:800;cursor:pointer}
.ezsc-course-camera-preview-action.is-use{background:#16a34a;color:#fff}
.ezsc-course-camera-preview-action.is-retake{background:rgba(20,20,20,.7);color:#fff;border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.ezsc-course-camera-hidden-input{position:fixed!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;left:-9999px!important}
body.ezsc-course-camera-open{overflow:hidden!important;touch-action:none}
@media(min-width:900px){
  .ezsc-course-camera{background:rgba(0,0,0,.94)}
  .ezsc-course-camera-stage{left:50%;right:auto;width:min(540px,100vw);transform:translateX(-50%);box-shadow:0 0 80px rgba(0,0,0,.7)}
  .ezsc-course-camera-top,.ezsc-course-camera-bottom,.ezsc-course-camera-preview-bar{left:calc(50% - min(270px,50vw) + 16px);right:calc(50% - min(270px,50vw) + 16px)}
}

/* Photo editor — shown only for captured/selected images. */
.ezsc-course-camera-editor{position:absolute;z-index:3;inset:0;display:none;pointer-events:none}
.ezsc-course-camera.is-preview.has-image .ezsc-course-camera-editor{display:block}
.ezsc-course-camera-editor-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;pointer-events:auto}
.ezsc-course-camera.is-editing-image .ezsc-course-camera-preview-image{visibility:hidden}
.ezsc-course-camera-editor-tools{position:absolute;z-index:7;top:max(84px,calc(env(safe-area-inset-top) + 68px));right:18px;display:flex;flex-direction:column;gap:13px;pointer-events:auto}
.ezsc-course-camera-editor-tool{border:0;background:rgba(20,20,20,.58);color:#fff;width:54px;min-height:54px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:700 10px/1.1 inherit;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.ezsc-editor-tool-icon{font:800 25px/1 Arial,sans-serif}
.ezsc-course-camera-editor-tool.is-active{background:rgba(255,255,255,.94);color:#111827}
.ezsc-course-camera-editor-colors{position:absolute;z-index:7;top:50%;right:22px;transform:translateY(-10%);display:none;flex-direction:column;gap:10px;pointer-events:auto}
.ezsc-course-camera.is-drawing .ezsc-course-camera-editor-colors,.ezsc-course-camera.is-adding-text .ezsc-course-camera-editor-colors{display:flex}
.ezsc-course-camera-editor-colors button{width:28px;height:28px;padding:0;border:3px solid rgba(255,255,255,.75);border-radius:50%;background:var(--editor-color);box-shadow:0 2px 8px rgba(0,0,0,.35);cursor:pointer}
.ezsc-course-camera-editor-colors button[data-ezsc-editor-color="#ffffff"]{background:#fff}.ezsc-course-camera-editor-colors button[data-ezsc-editor-color="#ffd54a"]{background:#ffd54a}.ezsc-course-camera-editor-colors button[data-ezsc-editor-color="#ff4d67"]{background:#ff4d67}.ezsc-course-camera-editor-colors button[data-ezsc-editor-color="#35a7ff"]{background:#35a7ff}.ezsc-course-camera-editor-colors button[data-ezsc-editor-color="#111827"]{background:#111827}
.ezsc-course-camera-editor-colors button.is-active{outline:2px solid #fff;outline-offset:3px}
.ezsc-course-camera-text-entry{position:absolute;z-index:9;left:18px;right:86px;top:42%;display:none;grid-template-columns:1fr auto auto;gap:7px;padding:10px;border-radius:18px;background:rgba(10,10,10,.68);pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.ezsc-course-camera.is-adding-text .ezsc-course-camera-text-entry{display:grid}
.ezsc-course-camera-text-entry input{min-width:0;border:0;border-radius:12px;padding:11px 13px;background:#fff;color:#111827;font-family:inherit;font-size:17px;font-weight:700;line-height:1.2;direction:rtl;-webkit-text-size-adjust:100%}
.ezsc-course-camera-text-entry button{border:0;border-radius:12px;padding:8px 11px;font:800 12px/1 inherit;cursor:pointer}.ezsc-course-camera-text-entry [data-ezsc-editor-text-add]{background:#fff;color:#111827}.ezsc-course-camera-text-entry [data-ezsc-editor-text-cancel]{background:rgba(255,255,255,.16);color:#fff}
.ezsc-course-camera.is-preview.has-image .ezsc-course-camera-switch{display:none}
@media(max-width:480px){.ezsc-course-camera-editor-tools{right:12px}.ezsc-course-camera-editor-tool{width:50px;min-height:50px}.ezsc-course-camera-editor-colors{right:18px}.ezsc-course-camera-text-entry{left:12px;right:74px}}
