#simulatorView{padding-bottom:110px}.sim-app{max-width:1240px;margin:auto;color:#182137}.sim-app [hidden]{display:none!important}.sim-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 0 20px}.sim-top small{color:#ad202b;font-weight:800}.sim-top h1{font-size:clamp(22px,3vw,38px);margin:5px 0}.sim-help,.sim-toolbar button,.sim-stage-actions button{border:1px solid rgba(109,119,145,.18);background:rgba(255,255,255,.88);color:#253047;border-radius:16px;min-width:46px;min-height:46px;font:inherit;font-weight:800;cursor:pointer}.sim-help{border-radius:50%;font-size:20px}.sim-intro{overflow:hidden;position:relative;text-align:center;background:linear-gradient(145deg,#fff,#f5f1f2);border:1px solid rgba(173,32,43,.1);border-radius:32px;padding:clamp(26px,5vw,56px);box-shadow:0 24px 70px rgba(50,35,42,.1)}.sim-intro h2{font-size:clamp(24px,3vw,38px);margin:10px 0}.sim-intro p{max-width:650px;margin:0 auto 26px;color:#70788b;line-height:2}.sim-intro-visual{height:150px;position:relative;max-width:340px;margin:auto}.sim-intro-visual span{position:absolute;inset:15px 50px;border:7px solid #273149;border-radius:22px;transform:perspective(400px) rotateY(-12deg)}.sim-intro-visual i,.sim-intro-visual b{position:absolute;width:72px;height:105px;top:34px;border:4px solid #ad202b;background:linear-gradient(150deg,rgba(125,203,226,.55),rgba(255,255,255,.35));box-shadow:0 12px 24px rgba(173,32,43,.15)}.sim-intro-visual i{right:93px;transform:skewY(-7deg)}.sim-intro-visual b{left:93px;transform:skewY(7deg)}.sim-primary,.sim-secondary{border:0;border-radius:16px;padding:14px 22px;min-height:50px;font:inherit;font-weight:900;cursor:pointer}.sim-primary{background:linear-gradient(135deg,#bd202c,#8e101b);color:#fff;box-shadow:0 12px 25px rgba(173,32,43,.22)}.sim-secondary{background:#fff;color:#8e1822;border:1px solid rgba(173,32,43,.18);margin-inline-start:8px}.sim-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.sim-stage{position:relative;overflow:hidden;background:#151820;border-radius:26px;min-height:min(68vh,700px);aspect-ratio:16/10;box-shadow:0 24px 70px rgba(15,19,28,.2);touch-action:none}.sim-stage video,.sim-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.sim-stage canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:move}.sim-stage-tip{position:absolute;right:14px;bottom:14px;left:14px;padding:10px 14px;color:#fff;background:rgba(19,23,32,.62);backdrop-filter:blur(13px);border:1px solid rgba(255,255,255,.16);border-radius:14px;text-align:center;font-size:12px;pointer-events:none}.sim-stage-actions{position:absolute;top:14px;left:14px;display:flex;gap:7px}.sim-stage-actions button{min-height:38px;min-width:auto;padding:7px 12px;background:rgba(18,22,29,.65);color:#fff;border-color:rgba(255,255,255,.2);backdrop-filter:blur(12px)}.sim-toolbar{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;background:rgba(255,255,255,.86);border:1px solid rgba(110,119,143,.14);border-radius:24px;backdrop-filter:blur(18px)}.sim-system-button{grid-column:1/-1!important;display:flex;justify-content:space-between;align-items:center;padding:10px 14px}.sim-system-button span{font-size:16px}.sim-system-button small{color:#ad202b}.sim-capture{grid-column:1/-1;background:#ad202b!important;color:#fff!important;border-color:#ad202b!important}.sim-controls{grid-column:2;background:#fff;border-radius:24px;padding:18px;border:1px solid rgba(110,119,143,.13);max-height:calc(68vh - 152px);overflow:auto}.sim-control-row>label,.sim-control-grid>label{display:block;font-size:12px;color:#6d7588;font-weight:800}.sim-swatches{display:flex;gap:9px;margin:10px 0 18px}.sim-swatches button{width:36px;height:36px;border-radius:50%;border:3px solid #fff;background:var(--swatch);box-shadow:0 0 0 1px #d9dce5;cursor:pointer}.sim-swatches button.active{box-shadow:0 0 0 3px #ad202b}.sim-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sim-control-grid label{background:#f7f8fb;border-radius:14px;padding:10px}.sim-control-grid select,.sim-control-grid input{width:100%;margin-top:7px;accent-color:#ad202b;font:inherit;border:0;background:transparent}.sim-control-grid output{float:left;color:#ad202b}.sim-sheet,.sim-modal{position:fixed;z-index:5000;inset:0;display:grid;place-items:end center}.sim-sheet-backdrop,.sim-modal:before{position:absolute;inset:0;border:0;background:rgba(9,12,18,.65);content:'';backdrop-filter:blur(5px)}.sim-sheet-panel{position:relative;width:min(920px,100%);max-height:min(82vh,760px);overflow:auto;padding:14px 20px 28px;background:#f6f7fa;border-radius:30px 30px 0 0;transform:translateY(105%);transition:transform .2s ease}.sim-sheet.open .sim-sheet-panel{transform:translateY(0)}.sim-sheet-grab{width:46px;height:5px;border-radius:5px;background:#d2d5de;margin:0 auto 13px}.sim-sheet-panel header,.sim-modal-card header{display:flex;justify-content:space-between;align-items:center}.sim-sheet-panel header h2,.sim-modal-card h2{margin:3px 0}.sim-sheet-panel header button,.sim-modal-card header button{width:42px;height:42px;border:0;border-radius:50%;font-size:25px;background:#fff;cursor:pointer}.sim-system-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.sim-system-grid>button{border:1px solid transparent;background:#fff;border-radius:18px;padding:10px;text-align:right;font:inherit;cursor:pointer;transition:.18s}.sim-system-grid>button:hover,.sim-system-grid>button.selected{border-color:#ad202b;transform:translateY(-2px);box-shadow:0 10px 25px rgba(54,40,45,.08)}.sim-system-grid span{height:85px;border-radius:12px;background:linear-gradient(145deg,#edf2f5,#d7e4e8);display:grid;place-items:center;overflow:hidden}.sim-system-grid img{width:100%;height:100%;object-fit:cover}.sim-system-grid span b{font-size:24px;color:#ad202b}.sim-system-grid strong,.sim-system-grid small{display:block;margin-top:8px}.sim-system-grid small{font-size:10px;color:#8a91a1}.sim-modal{place-items:center;padding:18px}.sim-modal-card{position:relative;width:min(680px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:28px;padding:18px;transform:scale(.94);opacity:0;transition:.18s}.sim-modal.open .sim-modal-card{transform:scale(1);opacity:1}.sim-modal-card>img{display:block;width:100%;max-height:68vh;object-fit:contain;background:#171a20;border-radius:18px;margin:14px 0}.sim-modal-card>div{display:flex;justify-content:flex-end}.sim-toast{position:fixed;z-index:7000;right:50%;bottom:104px;transform:translate(50%,20px);opacity:0;pointer-events:none;max-width:min(90vw,520px);padding:12px 18px;border-radius:15px;background:#1e2738;color:#fff;box-shadow:0 14px 35px rgba(0,0,0,.25);transition:.2s}.sim-toast.error{background:#ad202b}.sim-toast.show{opacity:1;transform:translate(50%,0)}.sim-loading{grid-column:1/-1;text-align:center;color:#798094}
@media(max-width:800px){#simulatorView{padding-inline:0}.sim-top{padding:0 14px}.sim-top h1{font-size:20px}.sim-intro{margin:0 10px;border-radius:24px;padding:25px 16px}.sim-intro .sim-primary,.sim-intro .sim-secondary{display:block;width:100%;margin:8px 0}.sim-workspace{display:block}.sim-stage{border-radius:0;min-height:60vh;aspect-ratio:auto;height:calc(100dvh - 260px)}.sim-toolbar{position:relative;margin:-6px 10px 10px;grid-template-columns:2fr repeat(3,1fr);border-radius:22px;box-shadow:0 -10px 34px rgba(12,16,24,.16)}.sim-system-button{grid-column:1/-1!important}.sim-capture{grid-column:auto}.sim-controls{margin:0 10px;max-height:none}.sim-control-grid{grid-template-columns:1fr 1fr}.sim-system-grid{grid-template-columns:repeat(2,1fr)}.sim-stage-tip{bottom:10px}.sim-sheet-panel{max-height:88vh}}
@media(max-width:430px){.sim-control-grid{grid-template-columns:1fr}.sim-toolbar{grid-template-columns:repeat(3,1fr)}.sim-capture{grid-column:1/-1}.sim-stage{height:54vh}.sim-system-grid span{height:72px}}
body:has(#simulatorView.active) #appPreloader{display:none!important}
@media(max-height:800px) and (min-width:801px){.sim-top{margin-bottom:12px}.sim-top h1{font-size:30px}.sim-intro{padding:24px}.sim-intro-visual{height:105px}.sim-intro-visual span{inset:5px 70px}.sim-intro-visual i,.sim-intro-visual b{height:75px;top:18px}.sim-intro-visual i{right:108px}.sim-intro-visual b{left:108px}.sim-intro h2{font-size:28px}.sim-intro p{margin-bottom:16px}}
.sim-permission-card{width:min(560px,100%);text-align:right}.sim-permission-icon{width:72px;height:72px;margin:8px auto 14px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(145deg,#fff0f2,#f7d7db);color:#ad202b;font-size:34px;box-shadow:inset 0 0 0 1px rgba(173,32,43,.1)}.sim-permission-card>p{margin:0 0 12px;color:#3d465b;font-weight:800;line-height:1.9;text-align:center}.sim-permission-card ol{margin:0;padding:0 24px 0 0;color:#5f687b;line-height:2.1}.sim-permission-card li::marker{color:#ad202b;font-weight:900}.sim-permission-note{margin:14px 0;padding:11px 13px;border-radius:13px;background:#fff7e8;color:#825c16;font-size:11px;line-height:1.9}.sim-permission-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.sim-permission-actions .sim-secondary{margin:0}@media(max-width:480px){.sim-permission-card{padding:16px}.sim-permission-card h2{font-size:18px}.sim-permission-actions{grid-template-columns:1fr!important}.sim-permission-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.sim-sheet-panel,.sim-modal-card,.sim-system-grid>button,.sim-toast{transition:none!important}}
.sim-stage{background:radial-gradient(circle at 50% 45%,#333947,#151820 72%)}.sim-stage video,.sim-stage>img{object-fit:initial}.sim-stage video{object-fit:cover}.sim-stage>img{object-fit:contain}.sim-stage[data-source=image]:after{content:'تصویر کامل نمایش داده شده است';position:absolute;z-index:1;top:16px;right:16px;padding:6px 10px;border-radius:10px;background:rgba(15,19,28,.55);color:#fff;font-size:10px;pointer-events:none}.sim-stage canvas{z-index:2}.sim-stage-tip{z-index:3}.sim-stage-actions{z-index:4}.sim-glass-swatches button{background-color:#eaf4f7;background-image:linear-gradient(135deg,rgba(255,255,255,.8),var(--swatch));opacity:.9}.sim-motion-button{grid-column:1/-1;border:1px solid rgba(173,32,43,.2);border-radius:14px;min-height:46px;background:#fff;color:#981923;font:inherit;font-weight:900;cursor:pointer}.sim-motion-button.active{background:#981923;color:#fff;box-shadow:0 10px 24px rgba(173,32,43,.2)}

/* v45: gallery-only, event-driven simulator */
.sim-gallery-guide{max-width:720px!important;padding:13px 16px;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid rgba(173,32,43,.1);color:#596176!important}.sim-gallery-guide strong{color:#9f1a25}.sim-gallery-main{min-width:min(100%,310px)}
.sim-workspace{grid-template-areas:"guide guide" "stage toolbar" "stage controls";grid-template-columns:minmax(0,1fr) minmax(290px,340px);gap:14px 18px;width:100%}.sim-workspace-guide{grid-area:guide;margin:0;padding:10px 14px;border-radius:14px;background:#fff7e8;border:1px solid #f1dfb9;color:#74541b;font-size:12px;line-height:1.8}.sim-stage{grid-area:stage;width:100%;min-width:0;min-height:0;height:auto;max-height:760px;aspect-ratio:16/10;contain:layout paint style}.sim-toolbar{grid-area:toolbar;grid-column:auto}.sim-controls{grid-area:controls;grid-column:auto;max-height:calc(min(72vh,760px) - 174px)}.sim-stage-tip,.sim-stage-actions,.sim-stage[data-source=image]:after{display:none!important}.sim-change-image,.sim-exit{grid-column:auto!important;min-height:44px!important;font-size:12px}.sim-exit{color:#a31b26!important;background:#fff1f2!important;border-color:#f0c7cb!important}.sim-panel-count input[type=number]{box-sizing:border-box;margin-top:8px!important;padding:10px 12px!important;border:1px solid #dfe3ec!important;border-radius:10px!important;background:#fff!important;color:#1f2937;font-weight:900;text-align:center}.sim-panel-count small{display:block;margin-top:5px;color:#8b93a3;font-size:9px;font-weight:500}.sim-stage>img{user-select:none;-webkit-user-drag:none}
.sim-toolbar [data-sim-reset]{font-size:0}.sim-toolbar [data-sim-reset]::before{content:'↻  بازنشانی';font-size:11px;white-space:nowrap}
@media(max-width:1050px) and (min-width:901px){.sim-app{max-width:100%;padding-inline:12px}.sim-workspace{grid-template-columns:minmax(0,1fr) 290px}.sim-stage{aspect-ratio:4/3}.sim-control-grid{grid-template-columns:1fr}.sim-controls{max-height:calc(min(70vh,690px) - 188px)}}
@media(max-width:900px){#simulatorView{padding-inline:0}.sim-app{max-width:100%}.sim-workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"guide" "stage" "toolbar" "controls";gap:10px}.sim-workspace-guide{margin:0 10px}.sim-stage{height:min(62vh,620px);max-height:none;aspect-ratio:auto;border-radius:0}.sim-toolbar{margin:-2px 10px 0;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:22px}.sim-controls{margin:0 10px;max-height:none}.sim-system-button,.sim-capture{grid-column:1/-1!important}.sim-change-image,.sim-exit{grid-column:auto!important}}
@media(max-width:520px){.sim-stage{height:52vh;min-height:330px}.sim-workspace-guide{font-size:11px;padding:8px 11px}.sim-toolbar{padding:10px;gap:6px}.sim-toolbar button{min-width:0}.sim-change-image,.sim-exit{grid-column:span 1!important;padding-inline:6px;font-size:10px}.sim-control-grid{grid-template-columns:1fr}.sim-gallery-guide{font-size:12px}}
@media(max-width:900px),(pointer:coarse){.sim-toolbar,.sim-stage-actions button{backdrop-filter:none!important}.sim-stage{box-shadow:0 14px 32px rgba(15,19,28,.16)}.sim-system-grid>button{transition:none}}
