/* ============================================================
   WOLF STUDIO · Estilos de captions (subtítulos animados, estilo CapCut)
   Cada .cap-* es un estilo. La vista previa los anima palabra por palabra.
   ============================================================ */

/* ---- Vista previa (teléfono) ---- */
.cap-stage{position:relative;width:240px;aspect-ratio:9/16;border-radius:22px;overflow:hidden;margin:0 auto;
  border:6px solid #000;box-shadow:0 20px 50px rgba(0,0,0,.6);background:#0a0d0b}
.cap-stage.f-1-1{aspect-ratio:1/1}.cap-stage.f-16-9{aspect-ratio:16/9;width:300px}.cap-stage.f-4-5{aspect-ratio:4/5}
.cap-bg{position:absolute;inset:0;background:linear-gradient(160deg,#1f7a3d,#0a0d0b);background-size:cover;background-position:center}
.cap-bg::after{content:'';position:absolute;inset:0;
  background:radial-gradient(120% 80% at 50% 20%,transparent,rgba(0,0,0,.45));}
.cap-wolf{position:absolute;top:16%;left:0;right:0;text-align:center;font-size:62px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.5))}
.cap-zone{position:absolute;left:0;right:0;bottom:16%;padding:0 14px;text-align:center}
.cap-word{display:inline-block;margin:2px 3px;opacity:0;will-change:transform,opacity}
.cap-word.in{opacity:1}

/* ---- BEAST: mayúsculas, contorno grueso, pop ---- */
.cap-beast .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;color:#fff;
  font-size:25px;line-height:1.1;-webkit-text-stroke:2.5px #000;text-shadow:0 3px 0 #000;letter-spacing:.5px}
.cap-beast .cap-word.active{color:#ffd766}
.cap-beast .cap-word.in{animation:capPop .26s cubic-bezier(.2,1.4,.4,1) both}

/* ---- Karaoke: blanco, palabra activa resaltada en oro ---- */
.cap-karaoke .cap-word{font-family:'Inter',sans-serif;font-weight:800;color:rgba(255,255,255,.55);font-size:22px;
  text-shadow:0 2px 6px rgba(0,0,0,.6)}
.cap-karaoke .cap-word.active{color:#ffd766;text-shadow:0 0 12px rgba(255,215,102,.6)}
.cap-karaoke .cap-word.in{opacity:1}

/* ---- TikTok clásico: blanco con caja negra ---- */
.cap-tiktok .cap-word{font-family:'Inter',sans-serif;font-weight:700;color:#fff;font-size:20px;
  background:rgba(0,0,0,.82);padding:2px 7px;border-radius:5px;line-height:1.7}
.cap-tiktok .cap-word.in{animation:capCut .12s linear both}

/* ---- Neón ---- */
.cap-neon .cap-word{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;color:#fff;font-size:23px;
  text-shadow:0 0 6px #34c759,0 0 14px #34c759,0 0 26px #1f7a3d}
.cap-neon .cap-word.active{color:#eaffea}
.cap-neon .cap-word.in{animation:capPop .24s ease both}

/* ---- Wolf Oro (marca) ---- */
.cap-gold .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:23px;letter-spacing:.6px;
  background:linear-gradient(135deg,#ffd766,#e8b73a,#b8860b);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7))}
.cap-gold .cap-word.in{animation:capRise .3s ease both}

/* ---- Minimal ---- */
.cap-minimal .cap-word{font-family:'Inter',sans-serif;font-weight:500;color:#fff;font-size:19px;letter-spacing:.3px;
  text-shadow:0 1px 4px rgba(0,0,0,.5)}
.cap-minimal .cap-word.in{animation:capFade .3s ease both}

/* ---- Pop Bounce: colores que rebotan ---- */
.cap-pop .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:24px;color:#fff;
  -webkit-text-stroke:1.5px #000}
.cap-pop .cap-word:nth-child(3n){color:#ffd766}.cap-pop .cap-word:nth-child(3n+1){color:#34c759}
.cap-pop .cap-word.in{animation:capBounce .4s cubic-bezier(.2,1.5,.4,1) both}

/* ---- Subtítulo TV ---- */
.cap-tv{ }
.cap-tv .cap-zone{bottom:9%}
.cap-tv .cap-word{font-family:'Inter',sans-serif;font-weight:500;color:#fff;font-size:17px;background:rgba(0,0,0,.6);
  padding:1px 4px;line-height:1.8}
.cap-tv .cap-word.in{animation:capFade .25s ease both}

/* ---- Hormozi: amarillo bold con resaltado ---- */
.cap-hormozi .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;color:#fff;font-size:24px;
  -webkit-text-stroke:2px #000;text-shadow:0 2px 0 #000}
.cap-hormozi .cap-word.active{color:#1a1407;background:#ffd60a;padding:0 6px;border-radius:4px;-webkit-text-stroke:0}
.cap-hormozi .cap-word.in{animation:capPop .24s ease both}

/* ---- Caja: cada palabra en caja blanca ---- */
.cap-boxed .cap-word{font-family:'Inter',sans-serif;font-weight:800;color:#0a0d0b;font-size:19px;background:#fff;
  padding:2px 8px;border-radius:4px;line-height:1.8}
.cap-boxed .cap-word.active{background:#ffd766}
.cap-boxed .cap-word.in{animation:capCut .1s linear both}

/* ---- Subrayado ---- */
.cap-underline .cap-word{font-family:'Inter',sans-serif;font-weight:700;color:#fff;font-size:21px;text-shadow:0 2px 6px rgba(0,0,0,.6)}
.cap-underline .cap-word.active{box-shadow:inset 0 -8px 0 rgba(232,183,58,.7)}
.cap-underline .cap-word.in{opacity:1}

/* ---- Sombra ---- */
.cap-shadow .cap-word{font-family:'Oswald',sans-serif;font-weight:600;color:#fff;font-size:22px;text-shadow:3px 3px 0 rgba(0,0,0,.85)}
.cap-shadow .cap-word.in{animation:capRise .3s ease both}

/* ---- Burbuja ---- */
.cap-bubble .cap-word{font-family:'Inter',sans-serif;font-weight:800;color:#fff;font-size:21px;background:#34c759;
  padding:2px 11px;border-radius:14px;line-height:1.9;-webkit-text-stroke:.5px rgba(0,0,0,.3)}
.cap-bubble .cap-word:nth-child(2n){background:#e8b73a;color:#1a1407}
.cap-bubble .cap-word.in{animation:capBounce .4s cubic-bezier(.2,1.5,.4,1) both}

/* ---- Retro 80s ---- */
.cap-retro .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:23px;color:#ff2d95;
  text-shadow:2px 2px 0 #00e5ff,-1px -1px 0 #00e5ff}
.cap-retro .cap-word.active{color:#00e5ff;text-shadow:2px 2px 0 #ff2d95}
.cap-retro .cap-word.in{animation:capPop .24s ease both}

/* ---- Elegante (serif itálica) ---- */
.cap-elegant .cap-word{font-family:Georgia,serif;font-style:italic;font-weight:600;color:#fff;font-size:21px;letter-spacing:.4px;text-shadow:0 1px 5px rgba(0,0,0,.6)}
.cap-elegant .cap-word.active{color:#ffd766}
.cap-elegant .cap-word.in{animation:capFade .35s ease both}

/* ---- Comic ---- */
.cap-comic .cap-word{font-family:'Inter',sans-serif;font-weight:800;color:#fff;font-size:22px;-webkit-text-stroke:3px #000;
  paint-order:stroke fill}
.cap-comic .cap-word:nth-child(3n){color:#ffd60a}.cap-comic .cap-word:nth-child(3n+2){color:#34c759}
.cap-comic .cap-word.in{animation:capBounce .42s cubic-bezier(.2,1.5,.4,1) both}

/* ---- Fuego ---- */
.cap-fire .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:23px;
  background:linear-gradient(0deg,#ff3d00,#ffb300);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 7px rgba(255,90,0,.6))}
.cap-fire .cap-word.in{animation:capPop .24s ease both}

/* ---- Máquina (mono) ---- */
.cap-type .cap-word{font-family:'Courier New',monospace;font-weight:700;color:#34c759;font-size:19px;background:rgba(0,0,0,.65);padding:1px 5px;letter-spacing:.5px}
.cap-type .cap-word.in{animation:capCut .08s linear both}

/* ---- Glow Rosa ---- */
.cap-glow .cap-word{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;color:#fff;font-size:22px;
  text-shadow:0 0 6px #ff2d95,0 0 14px #ff2d95,0 0 26px #ff007a}
.cap-glow .cap-word.in{animation:capPop .24s ease both}

/* ---- Barra translúcida ---- */
.cap-bar{ }
.cap-bar .cap-zone{ }
.cap-bar .cap-word{font-family:'Inter',sans-serif;font-weight:700;color:#fff;font-size:20px;background:rgba(10,13,11,.55);padding:3px 7px;line-height:1.9}
.cap-bar .cap-word.active{color:#ffd766}
.cap-bar .cap-word.in{animation:capFade .25s ease both}

/* ---- Impacto (mayúsculas gigantes) ---- */
.cap-impact .cap-word{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;color:#fff;font-size:30px;
  line-height:1.05;-webkit-text-stroke:3px #000;letter-spacing:.5px;text-shadow:0 4px 0 #000}
.cap-impact .cap-word.active{color:#ffd60a}
.cap-impact .cap-word.in{animation:capPop .26s cubic-bezier(.2,1.4,.4,1) both}

@keyframes capPop{from{opacity:0;transform:scale(.6) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes capRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes capFade{from{opacity:0}to{opacity:1}}
@keyframes capCut{from{opacity:0}to{opacity:1}}
@keyframes capBounce{0%{opacity:0;transform:translateY(20px) scale(.7)}60%{opacity:1;transform:translateY(-4px) scale(1.05)}100%{transform:translateY(0) scale(1)}}

/* ---- Selector de estilos ---- */
.cap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:9px}
.cap-card{cursor:pointer;background:var(--black-2);border:1px solid var(--line);border-radius:12px;padding:11px;transition:.16s;text-align:left}
.cap-card:hover{border-color:var(--gold-deep);transform:translateY(-2px)}
.cap-card.on{border-color:var(--gold);background:linear-gradient(160deg,rgba(232,183,58,.12),rgba(16,21,18,.9))}
.cap-card b{font-size:13px;display:block;margin-bottom:3px}
.cap-card i{font-size:11px;color:var(--text-faint);font-style:normal;line-height:1.35}
.cap-mini{height:34px;border-radius:7px;background:linear-gradient(160deg,#1f7a3d,#0a0d0b);display:flex;align-items:center;
  justify-content:center;margin-bottom:8px;overflow:hidden}
.cap-mini span{font-size:13px;font-weight:800}

@media(prefers-reduced-motion:reduce){.cap-word{animation:none!important;opacity:1!important}}

/* ============================================================
   Configurador "Plantillas & Estilo"
   ============================================================ */
.ws-tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-bottom:18px}
.ws-tpl{cursor:pointer;text-align:left;background:linear-gradient(160deg,rgba(26,34,29,.8),rgba(16,21,18,.9));
  border:1px solid var(--line);border-radius:13px;padding:13px;transition:.16s;position:relative;overflow:hidden}
.ws-tpl:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.ws-tpl-em{font-size:24px;display:block;margin-bottom:6px}
.ws-tpl b{font-size:14px;display:block;color:var(--gold-bright);margin-bottom:3px}
.ws-tpl i{font-size:11.5px;color:var(--text-dim);font-style:normal;line-height:1.4;display:block;margin-bottom:8px}
.ws-tpl-tags{font-size:10px;color:var(--text-faint);letter-spacing:.3px}
.ws-fire{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#ff6a00,#ff2d2d);color:#fff;font-size:9.5px;
  font-weight:800;letter-spacing:.4px;padding:2px 7px;border-radius:20px;z-index:2}
.ws-fire.mini{top:6px;right:6px;padding:1px 5px;font-size:11px;background:none}
.cap-card{position:relative}

/* Stickers (paleta de cientos de emojis) */
.ws-stk-palette{max-height:200px;overflow-y:auto;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--black-2)}
.ws-stk-cat{font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:var(--gold-deep);font-weight:700;margin:8px 0 5px}
.ws-stk-row{display:flex;flex-wrap:wrap;gap:3px}
.ws-stk-add{background:transparent;border:0;font-size:22px;cursor:pointer;padding:3px 4px;border-radius:7px;line-height:1;transition:.12s}
.ws-stk-add:hover{background:rgba(232,183,58,.18);transform:scale(1.25)}
.ws-stk-clear{margin-top:8px;background:transparent;border:1px solid var(--line);color:var(--text-dim);font-family:inherit;
  font-size:12.5px;padding:7px 13px;border-radius:9px;cursor:pointer}
.ws-stk-clear:hover{border-color:var(--danger);color:var(--danger)}

/* Música libre */
.ws-music-src{margin-top:10px;font-size:12.5px}
.ws-music-src summary{cursor:pointer;color:var(--gold-deep);font-weight:600}
.ws-music-src summary:hover{color:var(--gold-bright)}
.ws-music-list{margin-top:8px;background:var(--black-2);border:1px solid var(--line);border-radius:10px;padding:11px;line-height:1.9}
.ws-music-list a{color:var(--gold-bright);text-decoration:none}
.ws-music-list a:hover{text-decoration:underline}
.ws-music-list i{color:var(--text-faint);font-style:normal;font-size:11px}

/* Sliders de volumen */
.ws-vol{display:flex;align-items:center;gap:10px;margin:6px 0}
.ws-vol span{font-size:12.5px;color:var(--text-dim);min-width:70px}
.ws-vol input[type=range]{flex:1;accent-color:var(--gold)}
.ws-vol b{font-size:12px;color:var(--gold-bright);min-width:38px;text-align:right}

/* Motion FX (overlays animados estilo After Effects) */
.cap-mfx{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden}
.mfx-intro{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.mfx-intro b{font-family:'Oswald',sans-serif;font-size:34px;color:#fff;letter-spacing:1px;text-transform:uppercase;
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:mfxIntro 2.4s ease infinite}
@keyframes mfxIntro{0%{opacity:0;transform:scale(.7) translateY(20px)}25%{opacity:1;transform:scale(1) translateY(0)}75%{opacity:1}100%{opacity:0;transform:scale(1.05)}}
.mfx-l3{position:absolute;left:8%;bottom:30%;background:rgba(10,13,11,.78);border-left:4px solid var(--gold);
  padding:8px 14px;border-radius:6px;animation:mfxL3 3s ease infinite}
.mfx-l3 b{display:block;color:#fff;font-family:'Oswald',sans-serif;font-size:16px}.mfx-l3 i{color:var(--gold-bright);font-size:11px;font-style:normal}
@keyframes mfxL3{0%{opacity:0;transform:translateX(-40px)}20%{opacity:1;transform:translateX(0)}80%{opacity:1}100%{opacity:0}}
.mfx-callout{position:absolute;top:30%;right:8%;background:#ffd60a;color:#1a1407;font-weight:800;padding:6px 12px;border-radius:20px;
  font-size:14px;animation:mfxPulse 1.1s ease infinite}
.mfx-badge{position:absolute;top:14%;right:8%;background:linear-gradient(135deg,#ff6a00,#ff2d2d);color:#fff;font-weight:800;
  padding:5px 11px;border-radius:8px;font-size:12px;animation:mfxPulse 1s ease infinite}
@keyframes mfxPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}
.mfx-c{position:absolute;top:-10px;width:8px;height:12px;background:var(--gold);border-radius:2px;animation:mfxFall 2.2s linear infinite}
.mfx-c:nth-child(3n){background:#34c759}.mfx-c:nth-child(3n+1){background:#ff2d95}
@keyframes mfxFall{to{transform:translateY(380px) rotate(360deg);opacity:.3}}
.mfx-scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 2px,transparent 2px 4px);animation:mfxScan 6s linear infinite}
@keyframes mfxScan{to{background-position:0 100px}}
.mfx-prog{position:absolute;left:0;right:0;bottom:0;height:6px;background:rgba(255,255,255,.15)}
.mfx-prog i{display:block;height:100%;width:0;background:var(--grad-gold);animation:mfxProg 4s linear infinite}
@keyframes mfxProg{to{width:100%}}
@media(prefers-reduced-motion:reduce){.cap-mfx *{animation:none!important}}

.ws-style-grid{display:grid;grid-template-columns:1fr 270px;gap:20px;align-items:start}
@media(max-width:760px){.ws-style-grid{grid-template-columns:1fr}}
.ws-prev-col{position:sticky;top:14px}
.ws-prev-replay{margin-top:12px;width:100%;background:rgba(232,183,58,.12);border:1px solid var(--gold-deep);
  color:var(--gold-bright);font-family:inherit;font-size:13px;padding:9px;border-radius:10px;cursor:pointer}
.ws-prev-replay:hover{background:rgba(232,183,58,.24)}

.ws-fmts,.ws-brolls{display:flex;flex-wrap:wrap;gap:8px}
.ws-fmt,.ws-broll{cursor:pointer;background:var(--black-2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;
  color:var(--text);text-align:left;transition:.15s}
.ws-fmt:hover,.ws-broll:hover{border-color:var(--gold-deep)}
.ws-fmt.on,.ws-broll.on{border-color:var(--gold);background:linear-gradient(135deg,rgba(232,183,58,.14),rgba(232,183,58,.04))}
.ws-fmt b,.ws-broll b{font-size:12.5px;display:block}
.ws-fmt i,.ws-broll i{font-size:10.5px;color:var(--text-faint);font-style:normal}

.ws-voice-tabs{display:flex;gap:8px;margin-bottom:10px}
.ws-vt{background:var(--panel);border:1px solid var(--line);color:var(--text-dim);font-family:inherit;font-size:12.5px;
  padding:8px 13px;border-radius:9px;cursor:pointer}
.ws-vt.on{border-color:var(--gold);color:var(--gold-bright);background:rgba(232,183,58,.1)}
.ws-voices{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px}
.ws-voice{display:flex;align-items:center;gap:10px;cursor:pointer;background:var(--black-2);border:1px solid var(--line);
  border-radius:11px;padding:9px 11px;color:var(--text);transition:.15s;text-align:left}
.ws-voice:hover{border-color:var(--gold-deep)}
.ws-voice.on{border-color:var(--gold);background:linear-gradient(135deg,rgba(232,183,58,.12),rgba(232,183,58,.03))}
.ws-voice-ic{font-size:20px}
.ws-voice b{font-size:13px;display:block}
.ws-voice i{font-size:10.5px;color:var(--text-faint);font-style:normal}
.ws-voice span{flex:1;min-width:0}
.ws-voice-play{margin-left:auto;background:rgba(232,183,58,.14);border:1px solid var(--gold-deep);color:var(--gold-bright);
  width:28px;height:28px;border-radius:50%;cursor:pointer;flex-shrink:0;font-size:11px}
.ws-voice-play:hover{background:rgba(232,183,58,.3)}

.ws-avs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.ws-av{cursor:pointer;border:1px solid var(--line);border-radius:13px;padding:14px 11px;color:#fff;text-align:left;
  position:relative;min-height:96px;transition:.16s;overflow:hidden}
.ws-av:hover{border-color:var(--gold);transform:translateY(-3px)}
.ws-av::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.5),transparent)}
.ws-av-ini{position:relative;z-index:1;display:inline-flex;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.18);
  align-items:center;justify-content:center;font-weight:800;margin-bottom:30px}
.ws-av b{position:relative;z-index:1;display:block;font-size:13px}
.ws-av i{position:relative;z-index:1;font-size:10.5px;opacity:.85;font-style:normal}

/* Pills (música/ritmo) + toggles */
.ws-pills{display:flex;flex-wrap:wrap;gap:7px}
.ws-pill{cursor:pointer;background:var(--black-2);border:1px solid var(--line);border-radius:20px;padding:7px 13px;
  color:var(--text-dim);font-family:inherit;font-size:12.5px;transition:.15s}
.ws-pill:hover{border-color:var(--gold-deep)}
.ws-pill.on{border-color:var(--gold);color:var(--gold-bright);background:rgba(232,183,58,.1)}
.ws-tog{display:flex;align-items:center;gap:9px;color:var(--text);font-size:13.5px;padding:7px 0;cursor:pointer}
.ws-tog input{width:17px;height:17px;accent-color:var(--gold)}

/* Editor de escenas (storyboard) */
.ws-sc-bar{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:16px}
.ws-sc-bar select{background:var(--black-2);border:1px solid var(--line);border-radius:10px;color:var(--text);
  font-family:inherit;font-size:13.5px;padding:9px 12px;min-width:200px}
.ws-scenes{display:flex;flex-direction:column;gap:10px}
.ws-scene{background:linear-gradient(160deg,rgba(20,26,22,.7),rgba(10,13,11,.85));border:1px solid var(--line);
  border-left:3px solid var(--gold-deep);border-radius:12px;padding:11px 13px}
.ws-scene-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.ws-scene-h b{font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:.4px;color:var(--gold-bright)}
.ws-scene-act{display:flex;gap:4px}
.ws-scene-act button{background:transparent;border:1px solid var(--line);color:var(--text-dim);width:28px;height:28px;
  border-radius:7px;cursor:pointer;font-size:12px;transition:.15s}
.ws-scene-act button:hover{border-color:var(--gold);color:var(--gold-bright)}
.ws-sc-tx{width:100%;background:var(--black-2);border:1px solid var(--line);border-radius:9px;color:var(--text);
  font-family:inherit;font-size:13.5px;padding:9px 11px;resize:vertical}
.ws-sc-tx:focus{outline:none;border-color:var(--gold)}
.ws-sc-dur{display:flex;align-items:center;gap:6px;margin-top:7px;flex-wrap:wrap}
.ws-sc-dur>span{font-size:11.5px;color:var(--text-faint)}
.ws-sc-dur .ws-pill{padding:4px 10px;font-size:11.5px}
.ws-sc-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}
.ws-sc-long{display:flex;align-items:center;gap:9px;color:var(--text);font-size:13px;margin:10px 0}
.ws-sc-est{color:var(--text-faint);font-size:12.5px}
.ws-proj{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.ws-proj select{background:var(--black-2);border:1px solid var(--line);border-radius:10px;color:var(--text);
  font-family:inherit;font-size:13px;padding:8px 11px;min-width:200px}
.ws-serie-mem{margin-bottom:16px}
.ws-capwords{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ws-cw{display:inline-flex;align-items:center;gap:5px;background:var(--black-2);border:1px solid var(--line);border-radius:8px;padding:4px 8px;font-size:12.5px}
.ws-cw b{cursor:pointer;font-weight:600}
.ws-cw b:hover{color:var(--gold-bright)}
.ws-cw i{cursor:pointer;color:var(--text-faint);font-style:normal;font-size:10px}
.ws-cw i:hover{color:var(--danger)}

/* Brand Kit */
.ws-brand{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.ws-brand-color{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:13px;cursor:pointer}
.ws-brand-color input[type=color]{width:38px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--black-2);cursor:pointer}
.ws-brand-logo{display:inline-flex;align-items:center;gap:8px;background:var(--black-2);border:1px solid var(--line);border-radius:10px;
  padding:8px 13px;color:var(--text-dim);font-size:13px;cursor:pointer}
.ws-brand-logo:hover{border-color:var(--gold)}
.ws-brand-logo img{width:24px;height:24px;object-fit:contain;border-radius:5px}
.cap-logo{position:absolute;top:10px;left:10px;z-index:3;display:flex;align-items:center;gap:6px;
  background:rgba(0,0,0,.4);border-radius:8px;padding:3px 8px}
.cap-logo img{height:18px;object-fit:contain}
.cap-logo span{color:#fff;font-size:11px;font-weight:700;font-family:'Oswald',sans-serif;letter-spacing:.4px}
