/* LogoArt Story Studio — shared overlay styles (site + admin) */
@font-face{font-family:"Sahel";src:url("fonts/sahel/Sahel-Bold-FD-WOL.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Sahel";src:url("fonts/sahel/Sahel-Black-FD-WOL.woff2") format("woff2");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url("fonts/Vazirmatn-wght.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

.lso-stage{--su:3.6px;position:relative;overflow:hidden;direction:rtl;background:#0d1016;flex:0 0 auto;font-family:"Vazirmatn",Tahoma,sans-serif;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.lso-media,.lso-media>img,.lso-media>video{position:absolute;inset:0;width:100%;height:100%}
.lso-media>img,.lso-media>video{object-fit:cover;display:block;-webkit-user-drag:none}
/* background media pan / zoom / rotate inside the 9:16 frame */
.lso-media{overflow:hidden}
.lso-media>img,.lso-media>video{transform-origin:center center;transform:translate(calc((var(--mx,.5) - .5) * 100%),calc((var(--my,.5) - .5) * 100%)) rotate(calc(var(--mr,0) * 1deg)) scale(var(--ms,1))}
.lso-media.lso-fit-contain>img,.lso-media.lso-fit-contain>video{object-fit:contain}
.lso-draw{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.lso-layer{position:absolute;inset:0;pointer-events:none}
.lso-el{position:absolute;left:50%;top:50%;transform-origin:center center;pointer-events:none;-webkit-user-select:none;user-select:none;text-decoration:none;color:inherit;will-change:transform;line-height:1}
.lso-el.lso-hit,.lso-el.lso-has-hit,.lso-hit{pointer-events:auto;cursor:pointer}
.lso-ico{width:1.05em;height:1.05em;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}

/* text */
.lso-text{font-size:calc(var(--su) * var(--fs,7));line-height:1.38;max-width:calc(var(--su) * 88);width:max-content;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--c,#fff)}
.lso-align-center{text-align:center}.lso-align-right{text-align:right}.lso-align-left{text-align:left}
.lso-text.is-empty{opacity:.55}
.lso-mode-plain{text-shadow:0 .04em .16em rgba(0,0,0,.38)}
.lso-mode-box .lso-text-inner,.lso-mode-soft .lso-text-inner{background:var(--bg);padding:.1em .36em;border-radius:.2em;-webkit-box-decoration-break:clone;box-decoration-break:clone;line-height:1.62}
.lso-mode-soft .lso-text-inner{background:var(--bg-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lso-mode-neon{color:#fff;text-shadow:0 0 .05em #fff,0 0 .18em var(--glow),0 0 .45em var(--glow),0 0 .9em var(--glow)}
.lso-mode-outline{color:var(--c);-webkit-text-stroke:.11em var(--bg);paint-order:stroke fill}
.lso-emoji{font-size:calc(var(--su) * var(--fs,16));line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;filter:drop-shadow(0 .03em .08em rgba(0,0,0,.25))}

/* pill stickers */
.lso-sticker{display:inline-flex;align-items:center;gap:calc(var(--su) * 1.4);padding:calc(var(--su) * 2) calc(var(--su) * 3.4);border-radius:calc(var(--su) * 2.6);font-size:calc(var(--su) * 4.4);font-weight:900;white-space:nowrap;box-shadow:0 calc(var(--su) * .8) calc(var(--su) * 3) rgba(0,0,0,.22);letter-spacing:-.01em;max-width:calc(var(--su) * 86)}
.lso-sticker-label{overflow:hidden;text-overflow:ellipsis;line-height:1.25}
.lso-link .lso-sticker-label{direction:ltr;unicode-bidi:plaintext}
.lso-theme-light{background:#fff;color:#2b6ef3}
.lso-theme-light.lso-mention .lso-sticker-label,.lso-theme-light.lso-hashtag .lso-sticker-label{background:linear-gradient(90deg,#f58529,#dd2a7b 45%,#8134af);-webkit-background-clip:text;background-clip:text;color:transparent}
.lso-theme-light.lso-location{color:#7c3aed}
.lso-theme-dark{background:#111317;color:#fff}
.lso-theme-brand{background:linear-gradient(120deg,#c92116,#ff5a36);color:#fff}
.lso-theme-glass{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-shadow:0 1px 3px rgba(0,0,0,.25)}
a.lso-el:active .lso-sticker{transform:scale(.96)}
.lso-sticker{transition:transform .15s ease}

/* cards */
.lso-card{width:calc(var(--su) * 70);box-sizing:border-box;background:#fff;color:#14161b;border-radius:calc(var(--su) * 4.2);padding:calc(var(--su) * 3.6);box-shadow:0 calc(var(--su) * 1.2) calc(var(--su) * 5) rgba(0,0,0,.26);font-size:calc(var(--su) * 4);line-height:1.5;text-align:center}
.lso-card-q{font-weight:var(--fw,900);font-size:calc(var(--su) * 4.8 * var(--ts,1));margin:0 0 calc(var(--su) * 2.6);line-height:1.45;overflow-wrap:anywhere}
.lso-card-foot{margin-top:calc(var(--su) * 2);font-size:calc(var(--su) * 3 * var(--ts,1));color:#7a808c;font-weight:700}
.lso-opts{display:grid;gap:calc(var(--su) * 1.8)}
.lso-poll .lso-opts-2{grid-template-columns:1fr 1fr}
.lso-opt{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:calc(var(--su) * 1.5);min-height:calc(var(--su) * 11);padding:calc(var(--su) * 2) calc(var(--su) * 3);border:0;border-radius:calc(var(--su) * 2.8);background:#f1f2f5;color:var(--accent);font:inherit;font-weight:var(--fw,900);font-size:calc(var(--su) * 4.2 * var(--ts,1));cursor:inherit;-webkit-tap-highlight-color:transparent;transition:transform .15s ease,background .2s ease}
.lso-quiz .lso-opt{justify-content:flex-start;color:#1e2128;text-align:right}
.lso-opt.lso-hit:active{transform:scale(.97)}
.lso-opt-fill{position:absolute;top:0;bottom:0;right:0;width:0;background:var(--accent);opacity:.18;transition:width .7s cubic-bezier(.2,.8,.2,1)}
.lso-opt-label,.lso-opt-pct{position:relative;z-index:1}
.lso-opt-label{overflow-wrap:anywhere;line-height:1.35}
.lso-opt-pct{margin-inline-start:auto;font-size:calc(var(--su) * 3.6 * var(--ts,1));opacity:0}
.lso-opt.is-result .lso-opt-pct{opacity:1}
.lso-poll .lso-opt.is-result{justify-content:space-between}
.lso-opt.is-mine{box-shadow:inset 0 0 0 calc(var(--su) * .5) var(--accent)}
.lso-opt.is-correct{background:#e5f8ec;color:#138a43}.lso-opt.is-correct .lso-opt-fill{background:#18a957;opacity:.25}
.lso-opt.is-wrong{background:#fdeceb;color:#c92116;animation:lsoShake .45s ease}
.lso-opt:disabled{cursor:default}
@keyframes lsoShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4%)}75%{transform:translateX(4%)}}
.lso-question{padding:0;overflow:hidden}
.lso-question-top{background:var(--accent);padding:calc(var(--su) * 4) calc(var(--su) * 4) calc(var(--su) * 3.2);font-weight:var(--fw,900);font-size:calc(var(--su) * 4.8 * var(--ts,1));overflow-wrap:anywhere}
.lso-question-box{margin:calc(var(--su) * 3);padding:calc(var(--su) * 3);border-radius:calc(var(--su) * 2.6);background:#f1f2f5;color:#8b909a;font-size:calc(var(--su) * 3.6 * var(--ts,1));font-weight:700}
.lso-slider-track{direction:ltr;position:relative;height:calc(var(--su) * 2.2);margin:calc(var(--su) * 4) calc(var(--su) * 3) calc(var(--su) * 3);border-radius:99px;background:#e8e9ee;touch-action:none}
.lso-slider-track.lso-hit{cursor:grab}
.lso-slider-track::before{content:'';position:absolute;inset:calc(var(--su) * -4) calc(var(--su) * -3)}
.lso-slider-fill{position:absolute;left:0;top:0;bottom:0;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#ffcc4d)}
.lso-slider-thumb{position:absolute;top:50%;transform:translate(-50%,-52%);line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25));pointer-events:none}
.lso-slider-avg{position:absolute;top:50%;width:calc(var(--su) * 3.4);height:calc(var(--su) * 3.4);border-radius:50%;background:#fff;border:calc(var(--su) * .7) solid #1e2128;transform:translate(-50%,-50%);box-sizing:border-box}
.lso-countdown{background:linear-gradient(150deg,var(--accent),#14161b 135%);color:#fff}
.lso-countdown-title{display:flex;align-items:center;justify-content:center;gap:calc(var(--su) * 1.4);font-weight:900;font-size:calc(var(--su) * 4.6);margin-bottom:calc(var(--su) * 2.6)}
.lso-countdown-row{display:flex;justify-content:center;gap:calc(var(--su) * 1.8);direction:rtl}
.lso-cd-cell{min-width:calc(var(--su) * 12);padding:calc(var(--su) * 1.8) calc(var(--su) * 1);border-radius:calc(var(--su) * 2.4);background:rgba(255,255,255,.16)}
.lso-cd-cell b{display:block;font-size:calc(var(--su) * 7);line-height:1.1;font-weight:900}
.lso-cd-cell small{display:block;font-size:calc(var(--su) * 2.8);opacity:.85;margin-top:calc(var(--su) * .6)}
.lso-countdown-done{font-weight:900;font-size:calc(var(--su) * 5)}

/* public viewer integration */
.stories-media .story-stage-bg{position:absolute;inset:-40px;background-size:cover;background-position:center;filter:blur(30px) brightness(.62) saturate(1.15);transform:scale(1.1);pointer-events:none}
.stories-media .lso-stage{position:relative;z-index:1;border-radius:0}
.stories-media .lso-stage .lso-media>img,.stories-media .lso-stage .lso-media>video{width:100%;height:100%;object-fit:cover}
.stories-media .lso-stage .lso-media.lso-fit-contain>img,.stories-media .lso-stage .lso-media.lso-fit-contain>video{object-fit:contain}
.logoart-stories-viewer .stories-caption:empty,.logoart-stories-viewer .stories-caption.is-empty{display:none}
.story-answer-sheet{position:absolute;z-index:30;left:12px;right:12px;bottom:12px;padding:14px;border-radius:20px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.35);direction:rtl;font-family:"Vazirmatn",Tahoma,sans-serif;animation:lsoSheetIn .22s cubic-bezier(.2,.8,.2,1)}
.story-answer-sheet[hidden]{display:none}
.story-answer-sheet .sas-q{font-weight:900;font-size:14px;color:#14161b;margin:0 0 9px;padding:9px 12px;border-radius:12px;background:var(--accent,#c92116);color:#fff}
.story-answer-sheet textarea{display:block;width:100%;box-sizing:border-box;height:84px;resize:none;border:1px solid #e3e6eb;border-radius:13px;padding:10px 12px;font:inherit;font-size:13px;outline:none}
.story-answer-sheet textarea:focus{border-color:var(--accent,#c92116)}
.story-answer-sheet .sas-row{display:flex;gap:8px;margin-top:9px;align-items:center}
.story-answer-sheet button{border:0;border-radius:11px;padding:9px 15px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;background:#f1f2f5;color:#333}
.story-answer-sheet button.sas-send{background:var(--accent,#c92116);color:#fff}
.story-answer-sheet small{margin-inline-start:auto;color:#6b7280;font-size:11px}
@keyframes lsoSheetIn{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}
.story-toast-pop{position:absolute;z-index:31;left:50%;top:50%;transform:translate(-50%,-50%);padding:10px 16px;border-radius:14px;background:rgba(17,19,23,.88);color:#fff;font:800 13px "Vazirmatn",Tahoma,sans-serif;direction:rtl;pointer-events:none;animation:lsoSheetIn .2s ease}
