@font-face{font-family:"Fanren Serif SC";src:url("assets/fonts/fanren-serif-sc.woff?v=20260817-serif-7") format("woff");font-style:normal;font-weight:200 900;font-display:swap}
:root{
  color-scheme:dark;
  --bg:#070a0f;
  --panel:#10141b;
  --panel-2:#151a22;
  --line:rgba(255,255,255,.09);
  --text:#f3f0e9;
  --muted:#aeb2b8;
  --gold:#d6b071;
  --gold-2:#edcc91;
  --gold-soft:#edd6a7;
  --teal:#72a2a6;
  --danger:#b96c71;
  --phone-w:min(430px,calc(100vw - 40px));
  --ease:cubic-bezier(.22,.72,.18,1);
  --choice-bg:rgba(24,28,34,.78);
  --choice-selected-bg:rgba(92,70,42,.72);
  --display-font:"Fanren Serif SC";
  --body-font:"PingFang SC";
  --card-radius:15px;
  --button-radius:14px;
  --theme-transition-ms:380ms;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);font-family:var(--body-font),"Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit}
button:focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px}
body{overflow:hidden;background:
  radial-gradient(circle at 22% 20%,rgba(76,110,112,.16),transparent 33%),
  radial-gradient(circle at 82% 80%,rgba(123,81,52,.13),transparent 30%),
  linear-gradient(145deg,#080b11,#05070a)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to right,transparent 0,#000 32%,#000 100%)}
.hidden{display:none!important}
.app-shell{height:100dvh;display:grid;grid-template-columns:minmax(340px,430px) minmax(310px,360px);gap:38px;align-items:center;justify-content:center;padding:22px 28px;position:relative}
html[data-mode="viewer"] .app-shell{grid-template-columns:minmax(340px,430px);gap:0}
html[data-mode="viewer"] .director-panel{display:none}
html[data-mode="viewer"] .app-shell[data-show-player-topbar="false"] .player-topbar,
html[data-mode="viewer"] .app-shell[data-show-player-caption="false"] .scene-caption,
html[data-mode="viewer"] .app-shell[data-show-player-progress="false"] .progress-track,
html[data-mode="viewer"] .app-shell[data-show-player-seek="false"] .playback-controls,
html[data-mode="viewer"] .app-shell[data-show-player-topbar="false"] .cinema-shade,
html[data-mode="viewer"] .app-shell[data-show-choice-context="false"] .choice-topline span,
html[data-mode="viewer"] .app-shell[data-show-choice-hints="false"] .choice-copy small,
html[data-mode="viewer"] .app-shell[data-show-keyboard-tip="false"] .keyboard-tip,
html[data-mode="viewer"] .app-shell[data-show-ending-badge="false"] .ending-badge,
html[data-mode="viewer"] .app-shell[data-show-ending-description="false"] .ending-card>p,
html[data-mode="viewer"] .app-shell[data-show-ending-stats="false"] .ending-stats,
html[data-mode="viewer"] .app-shell[data-show-ending-variables="false"] .ending-variables{display:none}
html[data-mode="viewer"] .app-shell[data-show-choice-context="false"] .choice-topline{justify-content:flex-end}
html[data-mode="viewer"] .app-shell[data-show-ending-description="false"] .ending-card h2{margin-bottom:16px}
html[data-mode="viewer"] .story-video{transform:none}
html[data-mode="viewer"] .stage{font-family:var(--display-font),"Songti SC","STSong",serif}
.phone-column{display:flex;align-items:center;justify-content:center;min-width:0;height:100%}
.phone-frame{width:min(430px,calc((100dvh - 44px)*9/16),calc(100vw - 40px));max-height:calc(100dvh - 44px);aspect-ratio:var(--media-aspect,9/16);border-radius:34px;background:#020304;padding:0;box-shadow:0 34px 80px rgba(0,0,0,.54),0 0 0 1px rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.05);position:relative;transition:width .28s var(--ease),aspect-ratio .28s var(--ease)}
.app-shell[data-media-orientation="landscape"] .phone-frame{width:min(960px,calc((100dvh - 44px)*16/9),calc(100vw - 40px))}
.app-shell[data-media-orientation="square"] .phone-frame{width:min(720px,calc(100dvh - 44px),calc(100vw - 40px))}
.phone-frame:before{content:"";position:absolute;z-index:20;top:12px;left:50%;transform:translateX(-50%);width:82px;height:19px;border-radius:12px;background:#030507;box-shadow:0 1px 0 rgba(255,255,255,.05)}
.stage{position:relative;width:100%;height:100%;overflow:hidden;border-radius:34px;background:#05070a;isolation:isolate}
.story-video,.freeze-layer,.home-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.story-video{z-index:0;opacity:0;transition:opacity .38s var(--ease);background:#05070a}
.story-video.active{opacity:1;z-index:1}
.freeze-layer{z-index:3;background-position:center;background-size:contain;background-repeat:no-repeat;opacity:0;pointer-events:none;transition:opacity .24s ease}
.freeze-layer.visible{opacity:1}
.cinema-shade{position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(to bottom,rgba(3,5,8,.54) 0,transparent 24%,transparent 57%,rgba(3,5,8,.18) 76%,rgba(3,5,8,.72) 100%)}
.screen{position:absolute;inset:0;z-index:8;opacity:0;pointer-events:none;transition:opacity .35s var(--ease)}
.screen.active{opacity:1;pointer-events:auto}
.home-screen{overflow:hidden}
.home-backdrop{background-size:contain;background-position:center;background-repeat:no-repeat;transform:scale(1.015);animation:homeDrift 11s ease-in-out infinite alternate}
@keyframes homeDrift{to{transform:scale(1.085) translate3d(-5px,-7px,0)}}
.home-gradient{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,12,.88) 0,rgba(5,8,12,.37) 62%,rgba(5,8,12,.18)),linear-gradient(to top,rgba(4,6,9,.96) 0,rgba(4,6,9,.32) 58%,rgba(4,6,9,.12))}
.home-content{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;padding:54px 30px max(30px,env(safe-area-inset-bottom));justify-content:flex-end}
.brand-pill{position:absolute;left:28px;top:34px;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(236,211,169,.3);background:rgba(10,13,17,.34);backdrop-filter:blur(12px);font-size:10px;letter-spacing:.09em;color:#e9d7b4}
.brand-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold)}
.title-stack{display:flex;gap:22px;align-items:flex-end;margin-bottom:18px}
.vertical-title{font-family:var(--display-font),"Songti SC","STSong",serif;font-size:62px;font-weight:600;line-height:.93;letter-spacing:.11em;writing-mode:vertical-rl;color:var(--gold-2);text-shadow:0 1px 0 rgba(94,52,26,.85),0 4px 18px rgba(0,0,0,.72),0 0 22px rgba(215,176,106,.15)}
.app-shell[data-cover-title-layout="horizontal"] .title-stack{display:block}
.app-shell[data-cover-title-layout="horizontal"] .vertical-title{writing-mode:horizontal-tb;font-size:46px;line-height:1.05;letter-spacing:.04em;margin-bottom:18px}
.app-shell[data-cover-template="character-focus"] .home-gradient{background:linear-gradient(to top,rgba(4,6,9,.97) 0,rgba(4,6,9,.2) 58%,rgba(4,6,9,.08))}.app-shell[data-cover-template="character-focus"] .home-content{text-align:center;align-items:center}.app-shell[data-cover-template="character-focus"] .brand-pill{left:50%;transform:translateX(-50%)}.app-shell[data-cover-template="character-focus"] .title-stack{display:block}.app-shell[data-cover-template="character-focus"] .vertical-title{writing-mode:horizontal-tb;font-size:44px;letter-spacing:.06em;margin-bottom:10px}.app-shell[data-cover-template="character-focus"] .title-copy p{margin-inline:auto}.app-shell[data-cover-template="character-focus"] .home-actions{width:100%}
.app-shell[data-cover-template="suspense-hook"] .home-gradient{background:linear-gradient(135deg,rgba(31,5,9,.85),transparent 55%),linear-gradient(to top,rgba(4,6,9,.98),rgba(4,6,9,.1) 66%)}.app-shell[data-cover-template="suspense-hook"] .vertical-title{writing-mode:horizontal-tb;font-size:47px;line-height:1;letter-spacing:.02em;border-left:3px solid var(--gold);padding-left:13px}.app-shell[data-cover-template="suspense-hook"] .title-stack{display:block}.app-shell[data-cover-template="suspense-hook"] .eyebrow{color:#e3a793}
.app-shell[data-cover-template="clean-series"] .home-gradient{background:linear-gradient(to top,rgba(6,10,15,.96),rgba(6,10,15,.12) 72%)}.app-shell[data-cover-template="clean-series"] .brand-pill{border-radius:5px;letter-spacing:.16em}.app-shell[data-cover-template="clean-series"] .title-stack{display:block;padding-top:16px;border-top:1px solid rgba(255,255,255,.55)}.app-shell[data-cover-template="clean-series"] .vertical-title{writing-mode:horizontal-tb;font-size:40px;letter-spacing:.08em;margin-bottom:12px}.app-shell[data-cover-template="clean-series"] .title-copy h1{display:none}
.title-copy{padding-bottom:2px;min-width:0}
.eyebrow{font-size:9px;letter-spacing:.23em;color:rgba(236,216,178,.69);margin-bottom:8px}
.title-copy h1{font-family:var(--display-font),"Songti SC","STSong",serif;font-size:24px;line-height:1.2;margin:0 0 10px;font-weight:600;letter-spacing:.07em}
.title-copy p{font-family:var(--display-font),"Songti SC","STSong",serif;font-size:12px;line-height:1.7;color:rgba(240,239,235,.72);margin:0;max-width:270px}
.feature-row{display:flex;align-items:center;gap:8px;font-family:var(--display-font),"Songti SC","STSong",serif;font-size:10px;color:rgba(236,234,228,.72);margin:0 0 18px 0}
.feature-row i{width:3px;height:3px;border-radius:50%;background:rgba(236,211,169,.6)}
.home-actions{display:grid;gap:9px}
.primary-button,.ghost-button{border:0;border-radius:var(--button-radius);min-height:49px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease;font-weight:650;font-size:14px}
.primary-button{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#071216;box-shadow:0 12px 26px rgba(20,80,86,.26)}
.primary-button:hover{transform:translateY(-1px)}
.primary-button:active,.ghost-button:active{transform:scale(.985)}
.play-icon{font-size:10px;margin-left:-3px}
.ghost-button{background:rgba(16,20,25,.42);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);color:#f3eee4}
.ghost-button .arrow{margin-left:auto;padding-right:18px}
.demo-note{text-align:center;font-family:var(--display-font),"Songti SC","STSong",serif;font-size:9px;color:rgba(237,235,230,.48);margin:11px 0 0}
.player-screen{z-index:7}
.player-topbar{position:absolute;z-index:10;top:0;left:0;right:0;padding:max(28px,env(safe-area-inset-top)) 18px 10px;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px}
.icon-button:disabled{opacity:.42;cursor:default}
.icon-button{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.13);background:rgba(7,10,14,.28);backdrop-filter:blur(12px);display:grid;place-items:center;cursor:pointer;font-size:17px}
.node-heading{text-align:center;min-width:0;text-shadow:0 2px 12px #000}
.node-heading span{display:block;font-size:9px;letter-spacing:.18em;color:rgba(238,215,175,.78);margin-bottom:3px}
.node-heading strong{display:block;font-family:var(--display-font),"Songti SC","STSong",serif;font-size:15px;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.progress-track{position:absolute;z-index:10;left:18px;right:18px;top:84px;height:2px;border-radius:2px;background:rgba(255,255,255,.14);overflow:hidden}
.progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#b98d52,#ead1a1);box-shadow:0 0 8px rgba(230,196,136,.7);transition:width .25s linear}
.scene-caption{position:absolute;z-index:10;left:28px;right:28px;bottom:104px;text-align:center;font-family:var(--display-font),"Songti SC","STSong",serif;font-size:14px;line-height:1.75;letter-spacing:.04em;text-shadow:0 2px 14px rgba(0,0,0,.92);opacity:0;transform:translateY(8px);transition:.45s var(--ease)}
.app-shell[data-show-player-seek="false"] .scene-caption{bottom:38px}
.scene-caption.visible{opacity:1;transform:none}
.scene-caption.choice-active{opacity:0;transform:translateY(-8px)}
.playback-controls{position:absolute;z-index:16;left:14px;right:14px;bottom:max(14px,env(safe-area-inset-bottom));display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:10px;padding:10px 12px 8px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(6,9,13,.58);box-shadow:0 12px 30px rgba(0,0,0,.25);backdrop-filter:blur(16px);transition:opacity .25s ease,transform .25s ease}
.seek-step-button{width:40px;height:40px;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:rgba(255,255,255,.07);color:var(--text);font:600 11px/1 var(--body-font),sans-serif;letter-spacing:-.02em;cursor:pointer;touch-action:manipulation;transition:background .16s ease,transform .16s ease}
.seek-step-button:hover{background:rgba(255,255,255,.13)}
.seek-step-button:active{transform:scale(.94)}
.seek-step-button:disabled,.seek-range:disabled{cursor:default;opacity:.42}
.seek-main{display:grid;min-width:0;gap:2px}
.seek-range{--seek-ratio:0%;width:100%;height:26px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;touch-action:none}
.seek-range::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(90deg,var(--gold) 0,var(--gold) var(--seek-ratio),rgba(255,255,255,.18) var(--seek-ratio),rgba(255,255,255,.18) 100%)}
.seek-range::-webkit-slider-thumb{width:17px;height:17px;margin-top:-6.5px;border:2px solid rgba(255,255,255,.88);border-radius:50%;appearance:none;-webkit-appearance:none;background:var(--gold);box-shadow:0 2px 10px rgba(0,0,0,.55)}
.seek-range::-moz-range-track{height:4px;border:0;border-radius:999px;background:rgba(255,255,255,.18)}
.seek-range::-moz-range-progress{height:4px;border-radius:999px;background:var(--gold)}
.seek-range::-moz-range-thumb{width:14px;height:14px;border:2px solid rgba(255,255,255,.88);border-radius:50%;background:var(--gold);box-shadow:0 2px 10px rgba(0,0,0,.55)}
.seek-range:focus-visible{outline:2px solid var(--gold-soft);outline-offset:2px;border-radius:8px}
.seek-time{display:flex;justify-content:space-between;color:rgba(255,255,255,.63);font:500 8px/1 var(--body-font),sans-serif;font-variant-numeric:tabular-nums}
.transition-card{position:absolute;z-index:18;left:50%;top:50%;transform:translate(-50%,-48%) scale(.95);min-width:150px;padding:15px 20px;border-radius:16px;background:rgba(9,12,16,.68);border:1px solid rgba(235,209,163,.22);backdrop-filter:blur(18px);text-align:center;opacity:0;pointer-events:none;transition:.28s var(--ease);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.transition-card.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.transition-card span{display:block;font-size:9px;letter-spacing:.17em;color:#d7b77f;margin-bottom:5px}
.transition-card strong{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:16px;letter-spacing:.06em}
.tap-to-play{position:absolute;z-index:24;inset:0;display:grid;place-items:center;background:rgba(4,6,9,.26);backdrop-filter:blur(4px)}
.tap-to-play button{border:1px solid rgba(255,255,255,.23);border-radius:999px;background:rgba(9,12,16,.72);padding:12px 18px;cursor:pointer}
.choice-overlay{position:absolute;z-index:20;left:0;right:0;bottom:0;padding:20px 22px max(24px,env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(5,7,10,.98) 0,rgba(5,7,10,.92) 72%,rgba(5,7,10,0));opacity:0;transform:translateY(28px);pointer-events:none;transition:.4s var(--ease)}
.choice-overlay.visible{opacity:1;transform:none;pointer-events:auto}
.choice-topline{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.06em;color:rgba(232,225,213,.58);margin-bottom:8px}
.choice-topline strong{font-size:12px;color:#ead0a0}
.countdown-track{height:2px;background:rgba(255,255,255,.11);border-radius:3px;overflow:hidden;margin-bottom:15px}
.countdown-track span{display:block;height:100%;width:100%;transform-origin:left;background:linear-gradient(90deg,#d5ad6b,#f0ddb8)}
.choice-overlay h2{font-family:var(--display-font),"Songti SC","STSong",serif;font-size:17px;line-height:1.45;margin:0 0 13px;letter-spacing:.045em}
.choice-list{display:grid;gap:9px}
.choice-button{position:relative;width:100%;border:1px solid rgba(255,255,255,.14);border-radius:var(--card-radius);background:var(--choice-bg);backdrop-filter:blur(14px);padding:12px 15px 12px 48px;text-align:left;cursor:pointer;transition:var(--theme-transition-ms) var(--ease);overflow:hidden}
.choice-button:hover{border-color:rgba(231,202,150,.52);background:rgba(45,43,39,.8);transform:translateY(-1px)}
.choice-button:disabled{cursor:default;opacity:.62;transform:none}
.choice-button.selected{border-color:var(--gold);background:var(--choice-selected-bg);box-shadow:0 0 0 1px rgba(226,188,126,.18),0 12px 28px rgba(0,0,0,.23)}
.choice-key{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(235,207,161,.11);border:1px solid rgba(235,207,161,.23);font-size:10px;color:#ead1a5}
.choice-copy strong{display:block;font-size:13px;margin-bottom:3px}
.choice-copy small{display:block;font-size:9px;color:rgba(238,236,230,.53);line-height:1.35}
.keyboard-tip{text-align:center;margin-top:9px;font-size:8px;color:rgba(255,255,255,.31)}
.app-shell[data-choice-layout="split-cards"] .choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell[data-choice-layout="split-cards"] .choice-button{min-height:88px;padding:34px 12px 12px;text-align:center}.app-shell[data-choice-layout="split-cards"] .choice-key{left:50%;top:10px;transform:translateX(-50%)}.app-shell[data-choice-layout="split-cards"] .choice-copy small{margin-top:5px}.app-shell[data-choice-layout="split-cards"] .choice-button:last-child:nth-child(odd){grid-column:1/-1}
.app-shell[data-choice-layout="center-dialog"] .choice-overlay{inset:0;padding:34px 25px;display:flex;flex-direction:column;justify-content:center;background:rgba(4,7,10,.67);backdrop-filter:blur(9px);transform:scale(.96)}.app-shell[data-choice-layout="center-dialog"] .choice-overlay.visible{transform:none}.app-shell[data-choice-layout="center-dialog"] .choice-topline,.app-shell[data-choice-layout="center-dialog"] .choice-overlay h2{text-align:center}.app-shell[data-choice-layout="center-dialog"] .choice-button{background:rgba(16,22,29,.9);border-color:rgba(255,255,255,.2)}
.app-shell[data-choice-layout="minimal-pills"] .choice-overlay{padding:13px 18px max(18px,env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(4,7,10,.94),rgba(4,7,10,.48) 74%,transparent)}.app-shell[data-choice-layout="minimal-pills"] .choice-topline,.app-shell[data-choice-layout="minimal-pills"] .countdown-track{margin-bottom:7px}.app-shell[data-choice-layout="minimal-pills"] .choice-overlay h2{font-size:13px;margin-bottom:8px}.app-shell[data-choice-layout="minimal-pills"] .choice-list{display:flex;flex-wrap:wrap}.app-shell[data-choice-layout="minimal-pills"] .choice-button{width:auto;flex:1 1 42%;min-height:35px;padding:8px 10px 8px 34px;border-radius:999px}.app-shell[data-choice-layout="minimal-pills"] .choice-key{left:7px;width:22px;height:22px}.app-shell[data-choice-layout="minimal-pills"] .choice-copy small{display:none}.app-shell[data-choice-layout="minimal-pills"] .keyboard-tip{display:none}
.ending-overlay{position:absolute;z-index:22;inset:0;display:flex;align-items:flex-end;padding:24px 20px max(24px,env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(4,6,9,.98) 0,rgba(4,6,9,.82) 55%,rgba(4,6,9,.08) 100%);opacity:0;pointer-events:none;transition:.55s var(--ease)}
.ending-overlay.visible{opacity:1;pointer-events:auto}
.ending-card{width:100%;transform:translateY(22px);transition:.55s var(--ease)}
.ending-overlay.visible .ending-card{transform:none}
.ending-badge{display:inline-flex;padding:6px 10px;border:1px solid rgba(226,194,137,.32);border-radius:999px;color:#e5c790;background:rgba(224,188,126,.08);font-size:9px;letter-spacing:.12em}
.ending-card h2{font-family:var(--display-font),"Songti SC","STSong",serif;font-size:30px;letter-spacing:.08em;margin:10px 0 7px}
.ending-card>p{font-size:11px;color:rgba(239,236,228,.69);line-height:1.65;margin:0 0 14px}
.ending-stats{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(255,255,255,.1);border-radius:13px;overflow:hidden;margin-bottom:11px;background:rgba(18,21,27,.55)}
.ending-stats div{padding:10px 12px}.ending-stats div+div{border-left:1px solid rgba(255,255,255,.08)}
.ending-stats span{display:block;font-size:8px;color:rgba(255,255,255,.46);margin-bottom:3px}.ending-stats strong{font-size:12px;color:#ead4aa}
.ending-variables{display:flex;gap:7px;margin-bottom:13px;flex-wrap:wrap}
.ending-variables span{padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.07);font-size:9px;color:rgba(244,241,234,.76)}
.ending-actions{display:grid;grid-template-columns:1.3fr 1fr;gap:8px}.ending-actions button{min-height:45px}
.status-toast{position:absolute;z-index:30;left:50%;top:110px;transform:translate(-50%,-8px);padding:9px 13px;border-radius:999px;background:rgba(9,12,16,.82);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px);font-size:10px;opacity:0;pointer-events:none;transition:.25s ease;white-space:nowrap}
.status-toast.visible{opacity:1;transform:translate(-50%,0)}
.preload-bin{position:fixed;width:1px;height:1px;overflow:hidden;opacity:.001;pointer-events:none;left:-10px;top:-10px}
.director-panel{align-self:center;height:min(760px,calc(100dvh - 56px));border-radius:24px;background:linear-gradient(155deg,rgba(20,25,33,.94),rgba(11,15,21,.94));border:1px solid rgba(255,255,255,.09);box-shadow:0 28px 70px rgba(0,0,0,.32);padding:22px;overflow:auto;backdrop-filter:blur(22px);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}
.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.panel-kicker{font-size:8px;letter-spacing:.22em;color:#b69a6d}.panel-header h2{font-size:16px;margin:5px 0 0;letter-spacing:.03em}
.version-chip{font-size:8px;white-space:nowrap;padding:6px 8px;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:rgba(255,255,255,.5)}
.status-line{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:14px 0 4px}.status-line strong{font-size:11px}.status-line small{font-size:8px;color:rgba(255,255,255,.4)}
.live-dot{width:7px;height:7px;border-radius:50%;background:#5a616b}.live-dot.active{background:#69b99d;box-shadow:0 0 10px rgba(105,185,157,.7);animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.45}}
.panel-section{padding:15px 0;border-bottom:1px solid var(--line)}
.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.section-heading>span{font-size:10px;color:rgba(255,255,255,.7)}.section-heading small,.section-heading code{font-size:8px;color:rgba(255,255,255,.34)}
.node-card{border-radius:13px;padding:12px;background:linear-gradient(145deg,rgba(103,133,135,.13),rgba(255,255,255,.035));border:1px solid rgba(129,164,166,.15);display:flex;align-items:center;justify-content:space-between}.node-card strong{font-size:12px}.node-card span{font-size:8px;padding:4px 6px;border-radius:5px;background:rgba(111,153,155,.15);color:#9bc1c2}
.variable-panel{display:grid;gap:9px}.variable-row{display:grid;grid-template-columns:42px 1fr 22px;align-items:center;gap:8px}.variable-row label{font-size:9px;color:rgba(255,255,255,.56)}.variable-row strong{font-size:9px;text-align:right;color:#e6d3ad}.variable-track{height:5px;border-radius:5px;background:rgba(255,255,255,.07);overflow:hidden}.variable-track i{display:block;height:100%;width:0;border-radius:5px;background:linear-gradient(90deg,#688e91,#d4ad6d);transition:width .45s var(--ease)}
.chip-row{display:flex;gap:6px;flex-wrap:wrap}.chip-row span{font-size:8px;padding:6px 7px;border-radius:7px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.58)}.chip-row .empty-chip{color:rgba(255,255,255,.28)}
.route-section{min-height:96px}.path-panel{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.path-node{display:flex;align-items:center;gap:5px;font-size:8px;padding:5px 7px;border-radius:7px;background:rgba(214,176,113,.09);border:1px solid rgba(214,176,113,.12);color:#d8c29b}.path-node:after{content:"→";color:rgba(255,255,255,.22);margin-left:2px}.path-node:last-child:after{display:none}.path-empty{font-size:8px;color:rgba(255,255,255,.27);line-height:1.5}
.analytics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.analytics-grid div{padding:10px 8px;border-radius:10px;background:rgba(255,255,255,.04);text-align:center}.analytics-grid strong{display:block;font-size:17px;font-weight:600;color:#e7d4ae}.analytics-grid span{display:block;font-size:7px;color:rgba(255,255,255,.39);margin-top:2px}
.panel-footer{padding-top:16px}.panel-footer button{width:100%;height:34px;border-radius:9px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);font-size:9px;color:rgba(255,255,255,.55);cursor:pointer}.panel-footer p{font-size:8px;line-height:1.55;color:rgba(255,255,255,.3);margin:9px 1px 0}
html[data-mode="studio"] body{background:radial-gradient(circle at 9% 25%,rgba(55,104,111,.18),transparent 29%),radial-gradient(circle at 86% 78%,rgba(165,111,55,.12),transparent 32%),#070a0f}
html[data-mode="studio"] .app-shell{grid-template-columns:minmax(300px,360px) minmax(650px,820px);gap:24px;padding:16px 22px}
html[data-mode="studio"] .phone-frame{width:min(360px,calc((100dvh - 32px)*9/16),calc(100vw - 40px))}
html[data-mode="studio"] .director-panel{width:100%;height:calc(100dvh - 32px);max-height:none;padding:0;border-radius:22px;overflow:hidden;background:linear-gradient(155deg,rgba(18,24,32,.97),rgba(8,12,18,.98))}
.studio-header{display:flex;justify-content:space-between;gap:20px;padding:19px 22px 12px}.studio-header h2{font-size:19px;line-height:1.15;margin:5px 0 4px;letter-spacing:.025em}.studio-header p{margin:0;font-size:9px;color:rgba(255,255,255,.42)}
.studio-project-switcher{display:flex;align-items:center;gap:6px;max-width:390px}.studio-project-switcher label{display:grid;min-width:180px}.studio-project-switcher select{height:31px;padding:0 28px 0 9px}.studio-project-switcher button{height:31px;padding:0 9px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.04);font-size:8px;color:rgba(255,255,255,.6);cursor:pointer;white-space:nowrap}.studio-project-switcher button:hover{border-color:rgba(214,176,113,.3);color:#e8d0a8}
.studio-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 22px;border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.018)}
.studio-save-state{display:flex;align-items:center;min-width:0;gap:7px;font-size:9px;color:rgba(255,255,255,.49)}.studio-save-state i{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#7f8994}.studio-save-state.dirty i{background:#e3b36d;box-shadow:0 0 8px rgba(227,179,109,.48)}.studio-save-state.ready i{background:#69b99d;box-shadow:0 0 8px rgba(105,185,157,.48)}.studio-save-state.error i{background:#d9757c}
.studio-toolbar-actions{display:flex;gap:7px}.studio-tool-button{height:30px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.04);font-size:9px;cursor:pointer}.studio-tool-button:hover{background:rgba(255,255,255,.08)}.studio-tool-button.primary{border-color:rgba(102,170,158,.28);background:rgba(60,125,115,.17);color:#b8ded7}.studio-tool-button.publish{border-color:rgba(214,176,113,.3);background:rgba(214,176,113,.14);color:#ead4ad}.studio-tool-button:disabled{opacity:.45;cursor:wait}
.studio-logout-entry{border-color:rgba(217,117,124,.2);color:#dca0a4}.studio-logout-entry:hover{background:rgba(217,117,124,.1)}
.studio-project-file-actions{margin-left:auto}.studio-project-file-actions button{height:30px;padding:0 11px;border:1px solid rgba(105,185,157,.2);border-radius:8px;background:rgba(105,185,157,.07);color:#a8d4ca;font-size:9px;cursor:pointer}.studio-project-file-actions button:hover{background:rgba(105,185,157,.13)}.studio-project-file-actions button:disabled{opacity:.5;cursor:wait}
.studio-tabs{display:grid;grid-template-columns:repeat(5,1fr);padding:0 18px;border-bottom:1px solid rgba(255,255,255,.075)}.studio-tab{position:relative;height:42px;border:0;background:transparent;font-size:10px;color:rgba(255,255,255,.44);cursor:pointer}.studio-tab:after{content:"";position:absolute;left:18px;right:18px;bottom:-1px;height:2px;border-radius:2px;background:var(--gold);transform:scaleX(0);transition:.2s ease}.studio-tab.active{color:#f2e7d2}.studio-tab.active:after{transform:scaleX(1)}
.studio-tab:focus-visible{outline:0;background:rgba(214,176,113,.045);color:#f2e7d2}
.studio-message{display:flex;align-items:center;gap:12px;margin:12px 22px 0;padding:10px 12px;border:1px solid rgba(105,185,157,.2);border-radius:10px;background:rgba(105,185,157,.08);font-size:9px;line-height:1.5;color:#b9d8d1}.studio-message>span{min-width:0;flex:1}.studio-message>button{width:24px;height:24px;flex:0 0 auto;border:0;border-radius:7px;background:rgba(255,255,255,.055);color:currentColor;cursor:pointer}.studio-message>button:hover{background:rgba(255,255,255,.12)}.studio-message.error{border-color:rgba(211,104,113,.27);background:rgba(180,61,70,.1);color:#efb8bc}
.studio-pane{display:none;height:calc(100% - 166px);overflow:auto;padding:18px 22px 24px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.13) transparent}.studio-pane.active{display:block}
.studio-pane-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.studio-pane-heading>div:first-child span{display:block;font-size:8px;letter-spacing:.14em;color:#b79b6e;margin-bottom:4px}.studio-pane-heading>div:first-child strong{display:block;font-size:15px}.studio-pane-heading>small{font-size:8px;color:rgba(255,255,255,.32);padding-top:3px;max-width:240px;text-align:right}
.studio-form-grid{display:grid;gap:12px}.studio-form-grid.two-columns{grid-template-columns:1fr 1fr}.studio-field,.studio-form-grid label{display:grid;gap:6px;margin-bottom:12px}.studio-field>span,.studio-form-grid label>span{font-size:8px;color:rgba(255,255,255,.46)}
.studio-panel input,.studio-panel textarea,.studio-panel select{width:100%;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.04);color:var(--text);padding:9px 10px;font:10px/1.4 var(--body-font),sans-serif;outline:none}.studio-panel input:focus,.studio-panel textarea:focus,.studio-panel select:focus{border-color:rgba(214,176,113,.42);box-shadow:0 0 0 3px rgba(214,176,113,.07)}.studio-panel textarea{resize:vertical;min-height:68px}.studio-panel option{background:#111720}
.studio-theme-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:5px 0 16px}.studio-theme-card{position:relative;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:11px;padding:10px;background:rgba(255,255,255,.025);cursor:pointer;text-align:left}.studio-theme-card.active{border-color:rgba(214,176,113,.38);background:rgba(214,176,113,.07)}.studio-theme-swatch{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--theme-accent),var(--theme-bg));box-shadow:inset 0 0 0 1px rgba(255,255,255,.13)}.studio-theme-card strong{display:block;font-size:10px}.studio-theme-card small{display:block;font-size:7px;color:rgba(255,255,255,.37);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.studio-choice-layout-cards,.studio-cover-template-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:17px}.studio-presentation-card,.studio-cover-template-card{min-width:0;border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(255,255,255,.022);padding:7px;text-align:left;cursor:pointer;color:var(--text)}.studio-presentation-card.active,.studio-cover-template-card.active{border-color:rgba(214,176,113,.48);background:rgba(214,176,113,.075);box-shadow:0 0 0 2px rgba(214,176,113,.05)}.studio-presentation-card>span:last-child,.studio-cover-template-card>strong,.studio-cover-template-card>small{display:block}.studio-presentation-card>span:last-child{margin-top:7px}.studio-presentation-card strong,.studio-cover-template-card>strong{font-size:8px}.studio-presentation-card small,.studio-cover-template-card>small{display:block;margin-top:3px;font-size:6px;line-height:1.35;color:rgba(255,255,255,.35)}
.studio-choice-demo{height:66px;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;padding:6px;border-radius:8px;overflow:hidden;background:linear-gradient(to top,rgba(4,7,10,.96),rgba(26,37,48,.42)),linear-gradient(135deg,#40535d,#111820)}.studio-choice-demo em{font:6px/1.2 var(--body-font);color:rgba(255,255,255,.74)}.studio-choice-demo>span{display:grid;gap:3px}.studio-choice-demo i{position:relative;display:flex;align-items:center;gap:4px;min-width:0;padding:4px;border:1px solid rgba(255,255,255,.16);border-radius:4px;background:rgba(8,12,17,.64);font-style:normal}.studio-choice-demo b{width:12px;height:12px;display:grid;place-items:center;border-radius:50%;background:rgba(214,176,113,.18);font-size:5px}.studio-choice-demo i span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:5px}.studio-choice-demo.split-cards>span{grid-template-columns:1fr 1fr}.studio-choice-demo.split-cards i{height:31px;display:grid;place-items:center;padding:2px;text-align:center}.studio-choice-demo.split-cards b{position:absolute;top:2px;left:50%;transform:translateX(-50%)}.studio-choice-demo.split-cards i span{padding-top:11px}.studio-choice-demo.center-dialog{justify-content:center;background:linear-gradient(rgba(3,5,8,.66),rgba(3,5,8,.66)),linear-gradient(135deg,#5a5154,#18232a);box-shadow:inset 0 0 14px rgba(255,255,255,.05)}.studio-choice-demo.center-dialog em{text-align:center}.studio-choice-demo.minimal-pills>span{display:flex;flex-wrap:wrap}.studio-choice-demo.minimal-pills i{flex:1;border-radius:999px}.studio-choice-demo.minimal-pills i span{font-size:4px}
.studio-cover-template-card>i{position:relative;height:84px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border-radius:8px;padding:7px;background:linear-gradient(to top,rgba(4,6,9,.92),rgba(4,6,9,.08)),var(--cover-thumb) center/cover no-repeat;font-style:normal}.studio-cover-template-card>i span,.studio-cover-template-card>i b,.studio-cover-template-card>i em{position:relative;z-index:1}.studio-cover-template-card>i span{font-size:4px;letter-spacing:.14em;color:rgba(255,255,255,.66)}.studio-cover-template-card>i b{font:700 10px/1.15 var(--display-font);margin-top:2px}.studio-cover-template-card>i em{font-size:4px;color:#e2c48f;margin-top:3px}.studio-cover-template-card>strong{margin-top:7px}.studio-cover-template-card.character-focus>i{text-align:center;align-items:center}.studio-cover-template-card.suspense-hook>i{background:linear-gradient(135deg,rgba(79,8,16,.6),transparent 55%),linear-gradient(to top,rgba(4,6,9,.94),transparent),var(--cover-thumb) center/cover no-repeat}.studio-cover-template-card.suspense-hook>i b{border-left:2px solid #d9a55e;padding-left:5px}.studio-cover-template-card.clean-series>i{border-radius:2px}.studio-cover-template-card.clean-series>i b{padding-top:4px;border-top:1px solid rgba(255,255,255,.55)}
.studio-cover-workbench{display:grid;grid-template-columns:150px minmax(0,1fr);gap:11px;margin-bottom:18px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.02)}.studio-cover-preview{position:relative;min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border-radius:10px;padding:13px;background:linear-gradient(to top,rgba(4,6,9,.96),rgba(4,6,9,.05)),var(--cover-preview-image) center/cover no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,.11)}.studio-cover-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(214,176,113,.12),transparent 46%);pointer-events:none}.studio-cover-preview span,.studio-cover-preview strong,.studio-cover-preview small{position:relative;z-index:1}.studio-cover-preview span{font-size:5px;letter-spacing:.2em;color:#d6bd91}.studio-cover-preview strong{font:700 18px/1.08 var(--display-font);margin-top:5px}.studio-cover-preview small{font-size:6px;line-height:1.45;color:rgba(255,255,255,.68);margin-top:5px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.studio-cover-preview[data-template="character-focus"]{align-items:center;text-align:center}.studio-cover-preview[data-template="suspense-hook"]{background:linear-gradient(135deg,rgba(82,8,18,.62),transparent 58%),linear-gradient(to top,rgba(4,6,9,.96),transparent),var(--cover-preview-image) center/cover no-repeat}.studio-cover-preview[data-template="suspense-hook"] strong{border-left:3px solid #d7a55f;padding-left:7px}.studio-cover-preview[data-template="clean-series"]{border-radius:2px}.studio-cover-preview[data-template="clean-series"] strong{padding-top:7px;border-top:1px solid rgba(255,255,255,.66)}.studio-cover-brief{display:flex;min-width:0;flex-direction:column;gap:7px}.studio-cover-brief label{display:grid;gap:5px;flex:1}.studio-cover-brief label>span{font-size:7px;color:rgba(255,255,255,.4)}.studio-cover-brief textarea{height:100%;min-height:150px;resize:none;font-size:8px;line-height:1.55}.studio-cover-brief button{align-self:flex-end;height:29px;padding:0 10px;border:1px solid rgba(105,185,157,.24);border-radius:7px;background:rgba(105,185,157,.09);color:#b9ddd4;font-size:7px;cursor:pointer}
.studio-subsection-heading{display:flex;justify-content:space-between;align-items:center;margin:4px 0 9px}.studio-subsection-heading>div span,.studio-subsection-heading>div small{display:block}.studio-subsection-heading>div span{font-size:9px}.studio-subsection-heading>div small{font-size:7px;color:rgba(255,255,255,.33);margin-top:3px}.studio-subsection-heading button{border:1px solid rgba(255,255,255,.09);border-radius:7px;background:rgba(255,255,255,.04);padding:6px 9px;font-size:8px;cursor:pointer}
.studio-variable-list{display:grid;gap:7px;margin-bottom:15px}.studio-variable-row{display:grid;grid-template-columns:minmax(80px,.8fr) 1.2fr 80px 80px 28px;gap:7px;align-items:end;padding:9px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.022)}.studio-variable-row label{display:grid;gap:4px;min-width:0}.studio-variable-row label span{font-size:7px;color:rgba(255,255,255,.35)}.studio-variable-key{height:33px;display:flex;align-items:center;overflow:hidden;color:#b6ccce;font:8px/1.2 ui-monospace,monospace}.studio-variable-remove{width:28px;height:33px;border:0;background:transparent;color:rgba(255,255,255,.3);cursor:pointer}
.studio-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.studio-summary-grid div{padding:12px;border-radius:11px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.065)}.studio-summary-grid span{display:block;font-size:7px;color:rgba(255,255,255,.35)}.studio-summary-grid strong{display:block;font-size:20px;font-weight:500;margin-top:4px;color:#e9d5af}
.studio-dropzone{width:100%;min-height:128px;border:1px dashed rgba(214,176,113,.34);border-radius:15px;background:radial-gradient(circle at 50% 0,rgba(214,176,113,.1),transparent 72%),rgba(255,255,255,.018);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer}.studio-dropzone.dragover{border-style:solid;border-color:var(--gold);background:rgba(214,176,113,.1)}.studio-upload-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(214,176,113,.11);font-size:19px;color:#e6c894}.studio-dropzone strong{font-size:11px}.studio-dropzone small{font-size:8px;color:rgba(255,255,255,.4)}
.studio-asset-tools{display:flex;justify-content:space-between;align-items:center;margin:12px 0 10px}.studio-asset-tools span{font-size:8px;color:rgba(255,255,255,.4)}.studio-asset-tools button,.studio-heading-actions button{border:1px solid rgba(255,255,255,.09);border-radius:7px;background:rgba(255,255,255,.04);padding:6px 9px;font-size:8px;cursor:pointer}
.studio-asset-list{display:grid;gap:7px}.studio-asset-row{display:grid;grid-template-columns:32px minmax(100px,1fr) minmax(140px,1.1fr) auto;align-items:center;gap:9px;padding:8px;border-radius:10px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025)}.studio-asset-kind{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:rgba(96,147,151,.12);font-size:8px;color:#a9d1d2}.studio-asset-kind.image{background:rgba(191,148,83,.13);color:#e4c493}.studio-asset-copy{min-width:0}.studio-asset-copy strong,.studio-asset-copy span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-asset-copy strong{font-size:9px}.studio-asset-copy span{font-size:7px;color:rgba(255,255,255,.32);margin-top:3px}.studio-asset-copy span.media-pass{color:#8dc9ba}.studio-asset-copy span.media-warning{color:#e1bd83}.studio-asset-path{font-size:7px;color:rgba(255,255,255,.38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-asset-actions{display:flex;align-items:center;gap:4px}.studio-asset-action{height:27px;padding:0 7px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(255,255,255,.035);font-size:7px;cursor:pointer;color:rgba(255,255,255,.55)}.studio-asset-action:hover{border-color:rgba(214,176,113,.28);color:#e7c994}.studio-asset-remove{width:28px;height:28px;border:0;background:transparent;color:rgba(255,255,255,.3);cursor:pointer}.studio-asset-remove:hover{color:#e8a6aa}.studio-media-report{grid-column:2/5;margin-top:-2px;padding:8px 10px;border-radius:8px;background:rgba(255,255,255,.025);display:flex;gap:12px;flex-wrap:wrap;font-size:7px;color:rgba(255,255,255,.42)}.studio-media-report strong{color:rgba(255,255,255,.65);font-weight:500}.studio-media-warning{flex-basis:100%;color:#dfbd87}
.studio-heading-actions{display:flex;gap:6px}.studio-story-workspace{display:grid;grid-template-columns:190px minmax(0,1fr);gap:12px;min-height:460px}.studio-node-list{display:grid;align-content:start;gap:7px}.studio-node-item{position:relative;width:100%;padding:10px 11px 10px 31px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.025);text-align:left;cursor:pointer}.studio-node-item:before{content:"";position:absolute;left:12px;top:15px;width:8px;height:8px;border-radius:3px;background:#709a9c;box-shadow:0 0 0 3px rgba(112,154,156,.1)}.studio-node-item.ending:before{border-radius:50%;background:#cf9f5f}.studio-node-item.active{border-color:rgba(214,176,113,.36);background:rgba(214,176,113,.07)}.studio-node-item strong,.studio-node-item span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-node-item strong{font-size:9px}.studio-node-item span{font-size:7px;color:rgba(255,255,255,.35);margin-top:3px}.studio-node-item:not(:last-child):after{content:"";position:absolute;left:15px;bottom:-8px;height:8px;border-left:1px solid rgba(255,255,255,.12)}
.studio-view-switch{display:flex;padding:2px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.025)}.studio-heading-actions .studio-view-switch button{border:0;padding:4px 9px;background:transparent;color:rgba(255,255,255,.38)}.studio-heading-actions .studio-view-switch button.active{background:rgba(214,176,113,.14);color:#ead4ad;box-shadow:inset 0 0 0 1px rgba(214,176,113,.16)}
.studio-story-workspace.graph-mode{grid-template-columns:minmax(0,1.65fr) minmax(290px,.85fr)}.studio-story-workspace.graph-mode .studio-node-list{display:none}.studio-story-workspace.list-mode .studio-graph-panel{display:none}
.studio-graph-panel{min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(6,10,15,.62)}.studio-graph-toolbar{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.018)}.studio-graph-toolbar>div:first-child{min-width:0}.studio-graph-toolbar strong,.studio-graph-toolbar span{display:block}.studio-graph-toolbar strong{font-size:9px}.studio-graph-toolbar span{margin-top:3px;font-size:7px;color:rgba(255,255,255,.34);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-graph-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.studio-graph-actions button{height:25px;min-width:25px;padding:0 7px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:rgba(255,255,255,.035);font-size:7px;color:rgba(255,255,255,.52);cursor:pointer}.studio-graph-actions button:hover{border-color:rgba(214,176,113,.28);color:#e7c994}.studio-graph-actions output{min-width:34px;text-align:center;font:7px/1 ui-monospace,monospace;color:rgba(255,255,255,.4)}.studio-graph-actions #studioGraphCancelLink{border-color:rgba(227,179,109,.34);background:rgba(227,179,109,.1);color:#e8c48b}
.studio-graph-viewport{position:relative;height:500px;overflow:hidden;outline:none;overscroll-behavior:contain;touch-action:none;background-color:#080d13;background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:40px 40px,40px 40px,10px 10px,10px 10px}.studio-graph-viewport:focus-visible{box-shadow:inset 0 0 0 2px rgba(214,176,113,.25)}.studio-graph-surface{position:absolute;inset:0;overflow:hidden}.studio-graph-content{position:absolute;z-index:2;left:0;top:0;width:1px;height:1px;transform-origin:0 0;will-change:transform;pointer-events:none}.studio-graph-lines{position:absolute;z-index:1;inset:0;pointer-events:auto}.studio-graph-lines.edge-hover{cursor:pointer}.studio-graph-nodes{position:absolute;inset:0;pointer-events:none}
.studio-graph-node{position:absolute;width:184px;min-height:104px;pointer-events:auto;border:1px solid rgba(112,154,156,.3);border-radius:12px;background:linear-gradient(155deg,rgba(25,37,44,.98),rgba(12,18,25,.98));box-shadow:0 12px 24px rgba(0,0,0,.26);overflow:hidden}.studio-graph-node.selected{border-color:rgba(214,176,113,.68);box-shadow:0 0 0 2px rgba(214,176,113,.12),0 16px 30px rgba(0,0,0,.3)}.studio-graph-node.ending{border-color:rgba(207,159,95,.38);background:linear-gradient(155deg,rgba(52,38,27,.98),rgba(17,17,20,.98))}.studio-graph-node.link-target{border-color:rgba(105,185,157,.7);box-shadow:0 0 0 3px rgba(105,185,157,.13),0 16px 30px rgba(0,0,0,.3);cursor:crosshair}.studio-graph-node.link-source{opacity:.7}.studio-graph-node-drag{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 9px 6px;cursor:grab;touch-action:none}.studio-graph-node-drag:active{cursor:grabbing}.studio-graph-node-tags{display:flex;align-items:center;gap:4px;min-width:0}.studio-graph-tag{padding:3px 5px;border-radius:5px;background:rgba(112,154,156,.13);font:6px/1 ui-monospace,monospace;color:#9cc2c4}.studio-graph-tag.start{background:rgba(214,176,113,.15);color:#e3c187}.studio-graph-node.ending .studio-graph-tag{background:rgba(207,159,95,.14);color:#e0bb86}.studio-graph-node-drag code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:6px/1 ui-monospace,monospace;color:rgba(255,255,255,.26)}.studio-graph-node-select{display:block;width:100%;padding:1px 9px 8px;border:0;background:transparent;text-align:left;cursor:pointer}.studio-graph-node-select strong,.studio-graph-node-select span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-graph-node-select strong{font-size:9px;color:#eee6d7}.studio-graph-node-select span{margin-top:3px;font-size:6px;color:rgba(255,255,255,.34)}.studio-graph-ports{display:grid;gap:4px;padding:0 8px 8px}.studio-graph-port{position:relative;display:grid;grid-template-columns:10px auto minmax(0,1fr) auto;align-items:center;gap:5px;width:100%;height:24px;padding:0 6px;border:1px solid rgba(255,255,255,.055);border-radius:6px;background:rgba(255,255,255,.025);font-size:6px;color:rgba(255,255,255,.48);cursor:crosshair;text-align:left}.studio-graph-port:before{content:"";width:6px;height:6px;border-radius:50%;background:#71999b;box-shadow:0 0 0 2px rgba(113,153,155,.1)}.studio-graph-port.choice:before{background:#d3a864}.studio-graph-port.condition:before{background:#927cc7}.studio-graph-port:hover,.studio-graph-port.active{border-color:rgba(214,176,113,.34);background:rgba(214,176,113,.08);color:#ecd8b3}.studio-graph-port span,.studio-graph-port small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-graph-port small{max-width:58px;color:rgba(255,255,255,.27)}.studio-graph-ending-label{margin:0 8px 8px;padding:7px;border-radius:7px;background:rgba(207,159,95,.08);font-size:6px;color:#d8b57e;text-align:center}.studio-graph-legend{display:flex;gap:12px;align-items:center;padding:8px 10px;border-top:1px solid rgba(255,255,255,.055);font-size:6px;color:rgba(255,255,255,.32)}.studio-graph-legend span{display:flex;align-items:center;gap:4px}.studio-graph-legend i{width:7px;height:7px;border-radius:50%;background:#71999b}.studio-graph-legend i.choice{background:#d3a864}.studio-graph-legend i.condition{background:#927cc7}.studio-graph-legend i.ending{border-radius:2px;background:#cf9f5f}
.studio-node-editor{border:1px solid rgba(255,255,255,.065);border-radius:13px;background:rgba(255,255,255,.018);padding:14px;min-width:0}.studio-empty{height:100%;min-height:300px;display:grid;place-items:center;color:rgba(255,255,255,.27);font-size:9px}.node-editor-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.node-editor-header>div:first-child strong,.node-editor-header>div:first-child span{display:block}.node-editor-header>div:first-child strong{font-size:12px}.node-editor-header>div:first-child span{font:7px/1.4 ui-monospace,monospace;color:rgba(255,255,255,.34);margin-top:3px}.node-editor-actions{display:flex;align-items:center;gap:7px}.node-editor-header button{border:0;background:transparent;color:rgba(255,255,255,.35);font-size:8px;cursor:pointer}.node-editor-header button:hover{color:#e99ca3}.node-editor-actions [data-set-start]{padding:5px 7px;border:1px solid rgba(214,176,113,.2);border-radius:6px;color:#d8ba88}.node-media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.node-media-grid label{min-width:0}.node-transition-card{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.065)}.node-transition-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.node-transition-heading strong{font-size:9px}.node-transition-heading select{width:130px;padding:7px 8px}.node-choice-options{display:grid;gap:7px;margin-top:9px}.node-choice-option{padding:7px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(255,255,255,.016)}.node-choice-row{display:grid;grid-template-columns:44px 1fr 1fr 100px 26px;gap:6px;align-items:center}.node-choice-row input,.node-choice-row select{padding:7px}.node-choice-row button{width:26px;height:26px;border:0;background:transparent;color:rgba(255,255,255,.32);cursor:pointer}.node-choice-effect{display:grid;grid-template-columns:auto minmax(100px,1fr) 80px;gap:7px;align-items:center;margin-top:6px}.node-choice-effect>span{font-size:7px;color:rgba(255,255,255,.34)}.node-choice-effect select,.node-choice-effect input{padding:6px 7px}.node-add-choice{margin-top:8px;border:1px dashed rgba(255,255,255,.13);border-radius:8px;background:transparent;color:rgba(255,255,255,.5);width:100%;height:30px;font-size:8px;cursor:pointer}.node-condition-rules{display:grid;gap:7px}.node-condition-row{display:grid;grid-template-columns:minmax(100px,1fr) 58px 72px minmax(110px,1fr) 26px;gap:6px;align-items:center;padding:7px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(255,255,255,.016)}.node-condition-row.default{grid-template-columns:70px minmax(120px,1fr);color:rgba(255,255,255,.4);font-size:8px}.node-condition-row select,.node-condition-row input{padding:7px}.node-condition-row button{width:26px;height:26px;border:0;background:transparent;color:rgba(255,255,255,.32);cursor:pointer}.node-add-rule{margin-top:8px;border:1px dashed rgba(255,255,255,.13);border-radius:8px;background:transparent;color:rgba(255,255,255,.5);width:100%;height:30px;font-size:8px;cursor:pointer}
.studio-publish-card{display:grid;gap:8px;margin-bottom:13px}.publish-step{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.02)}.publish-step i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.06);font:9px/1 ui-monospace,monospace;color:rgba(255,255,255,.42)}.publish-step.done i{background:rgba(105,185,157,.15);color:#a9d4c9}.publish-step strong,.publish-step span{display:block}.publish-step strong{font-size:9px}.publish-step span{font-size:7px;color:rgba(255,255,255,.34);margin-top:3px}.studio-publish-primary{width:100%;min-height:62px;border:1px solid rgba(214,176,113,.34);border-radius:13px;background:linear-gradient(135deg,rgba(129,88,41,.7),rgba(65,106,104,.62));cursor:pointer;box-shadow:0 15px 30px rgba(0,0,0,.18)}.studio-publish-primary span,.studio-publish-primary small{display:block}.studio-publish-primary span{font-size:12px}.studio-publish-primary small{font-size:7px;color:rgba(255,255,255,.56);margin-top:4px}.studio-download-link{display:flex;justify-content:center;align-items:center;height:38px;margin-top:9px;border:1px solid rgba(105,185,157,.28);border-radius:9px;background:rgba(105,185,157,.09);color:#b7dcd2;text-decoration:none;font-size:9px}.studio-validation-list{margin-top:13px;display:grid;gap:6px}.studio-validation-list p{margin:0;color:rgba(255,255,255,.35);font-size:8px;line-height:1.5}.studio-validation-item{padding:8px 10px;border-left:2px solid #69b99d;border-radius:0 8px 8px 0;background:rgba(105,185,157,.06);font-size:8px;line-height:1.45;color:#b7d6cf}.studio-validation-item.error{border-color:#d46f77;background:rgba(196,72,82,.08);color:#edb2b7}.studio-validation-item.warning{border-color:#d3a864;background:rgba(211,168,100,.07);color:#e8cca1}.studio-package-note{display:flex;justify-content:space-between;gap:14px;margin-top:14px;padding:11px;border-radius:10px;background:rgba(255,255,255,.025)}.studio-package-note strong{font-size:8px;white-space:nowrap}.studio-package-note span{font-size:7px;line-height:1.5;text-align:right;color:rgba(255,255,255,.35)}
@media(max-width:860px){body{overflow:hidden;background:#080b10}.app-shell{display:block;width:100vw;height:100dvh;padding:0}.director-panel{display:none}.phone-column{position:relative;isolation:isolate;overflow:hidden;width:100%;height:100%}.phone-column:before{content:"";position:absolute;z-index:-1;inset:-36px;background:linear-gradient(rgba(4,6,9,.28),rgba(4,6,9,.7)),var(--story-cover) center/cover no-repeat;filter:blur(22px);transform:scale(1.12);opacity:.78}.phone-frame{z-index:1;width:min(100vw,calc(100dvh*9/16));height:auto;aspect-ratio:var(--media-aspect,9/16);padding:0;border-radius:0;box-shadow:0 0 60px rgba(0,0,0,.48)}.app-shell[data-media-orientation="landscape"] .phone-frame{width:min(100vw,calc(100dvh*16/9))}.app-shell[data-media-orientation="square"] .phone-frame{width:min(100vw,100dvh)}.phone-frame:before{display:none}.stage{border-radius:0}.home-content{padding-left:26px;padding-right:26px}.brand-pill{top:max(19px,env(safe-area-inset-top));left:24px}.player-topbar{padding-top:max(18px,env(safe-area-inset-top))}.progress-track{top:max(72px,calc(env(safe-area-inset-top) + 55px))}}
@media(max-width:1080px){html[data-mode="studio"] .app-shell{display:block;padding:12px}html[data-mode="studio"] .phone-column{display:none}html[data-mode="studio"] .director-panel{display:block;height:calc(100dvh - 24px);max-width:820px;margin:0 auto}.studio-pane{height:calc(100% - 166px)}}
@media(max-width:620px){html[data-mode="studio"] .app-shell{padding:0}html[data-mode="studio"] .director-panel{height:100dvh;border:0;border-radius:0}.studio-header{padding-left:16px;padding-right:16px}.studio-toolbar{padding-left:16px;padding-right:16px}.studio-pane{padding-left:16px;padding-right:16px}.studio-save-state{display:none}.studio-pane-heading{display:grid}.studio-heading-actions{flex-wrap:wrap}.studio-form-grid.two-columns,.studio-theme-cards{grid-template-columns:1fr}.studio-summary-grid{grid-template-columns:repeat(2,1fr)}.studio-variable-row{grid-template-columns:1fr 1fr}.studio-variable-remove{grid-column:2;justify-self:end}.studio-story-workspace,.studio-story-workspace.graph-mode{grid-template-columns:1fr}.studio-node-list{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-graph-toolbar{align-items:flex-start;flex-direction:column}.studio-graph-actions{width:100%;flex-wrap:wrap}.studio-graph-viewport{height:430px}.node-choice-row{grid-template-columns:40px 1fr 1fr}.node-choice-row select{grid-column:2/4}.node-condition-row{grid-template-columns:1fr 60px 70px}.node-condition-row select:nth-of-type(2){grid-column:1/3}.studio-asset-row{grid-template-columns:32px 1fr auto}.studio-asset-path{display:none}.studio-media-report{grid-column:2/4}}

/* Studio 0.3: Panda Canvas-style full-screen workspace with on-demand preview. */
.studio-preview-backdrop,.studio-preview-close{display:none}
html[data-mode="studio"],html[data-mode="studio"] body{width:100%;height:100%;overflow:hidden}
html[data-mode="studio"] .app-shell{display:block;width:100vw;height:100dvh;padding:0;background:#080c12}
html[data-mode="studio"] .director-panel{position:relative;z-index:1;display:flex;flex-direction:column;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:linear-gradient(160deg,rgba(14,20,28,.99),rgba(7,11,17,.995));box-shadow:none;overflow:hidden}
html[data-mode="studio"] .studio-header{flex:0 0 62px;min-height:62px;align-items:center;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.065);background:rgba(9,14,20,.92)}
html[data-mode="studio"] .studio-header h2{margin:3px 0 1px;font-size:16px}html[data-mode="studio"] .studio-header p{font-size:8px}html[data-mode="studio"] .studio-header .version-chip{position:absolute;top:20px;left:224px;margin:0}
html[data-mode="studio"] .studio-toolbar{position:absolute;z-index:4;top:11px;right:16px;width:auto;padding:5px 6px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.025);backdrop-filter:blur(16px)}
html[data-mode="studio"] .studio-tool-button.preview{border-color:rgba(123,142,205,.26);background:rgba(84,99,156,.13);color:#c9d1f0}html[data-mode="studio"] .studio-tool-button.preview.active{border-color:rgba(139,159,230,.5);background:rgba(104,121,185,.28);color:#eef1ff}
html[data-mode="studio"] .studio-tabs{flex:0 0 43px;grid-template-columns:repeat(5,minmax(78px,112px));justify-content:start;padding:0 18px;background:rgba(255,255,255,.012)}
html[data-mode="studio"] .studio-tab{height:43px}
html[data-mode="studio"] .studio-message{position:absolute;z-index:12;top:112px;left:50%;width:min(560px,calc(100vw - 32px));margin:0;transform:translateX(-50%);box-shadow:0 12px 30px rgba(0,0,0,.28);backdrop-filter:blur(18px)}
html[data-mode="studio"] .studio-pane{flex:1 1 auto;width:min(1180px,100%);height:auto;min-height:0;margin:0 auto;padding:22px 28px 30px}
html[data-mode="studio"] .studio-pane[data-studio-pane="story"]{width:100%;margin:0;padding:0;overflow:hidden}
html[data-mode="studio"] .studio-pane[data-studio-pane="story"].active{display:flex;flex-direction:column}
html[data-mode="studio"] .studio-pane[data-studio-pane="story"]>.studio-pane-heading{flex:0 0 54px;align-items:center;margin:0;padding:9px 16px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.012)}
html[data-mode="studio"] .studio-pane[data-studio-pane="story"]>.studio-pane-heading>div:first-child span{margin-bottom:2px}html[data-mode="studio"] .studio-pane[data-studio-pane="story"]>.studio-pane-heading>div:first-child strong{font-size:13px}
html[data-mode="studio"] .studio-story-workspace{flex:1 1 auto;height:auto;min-height:0;gap:0}
html[data-mode="studio"] .studio-story-workspace.graph-mode.inspector-collapsed{grid-template-columns:minmax(0,1fr)}
html[data-mode="studio"] .studio-story-workspace.graph-mode.inspector-open{grid-template-columns:minmax(0,1fr) minmax(340px,380px)}
html[data-mode="studio"] .studio-story-workspace.graph-mode.inspector-collapsed .studio-node-editor{display:none}
html[data-mode="studio"] .studio-story-workspace.list-mode{grid-template-columns:240px minmax(0,1fr);gap:12px;padding:16px;overflow:auto}
html[data-mode="studio"] .studio-story-workspace.list-mode [data-close-inspector]{display:none}
html[data-mode="studio"] .studio-graph-panel{display:flex;flex-direction:column;height:100%;border:0;border-radius:0;background:#080d13}
html[data-mode="studio"] .studio-graph-toolbar{flex:0 0 49px;padding:7px 12px;background:rgba(12,18,26,.96)}
html[data-mode="studio"] .studio-graph-viewport{flex:1 1 auto;height:auto;min-height:0;cursor:grab}
html[data-mode="studio"] .studio-graph-viewport.is-panning{cursor:grabbing;user-select:none}
html[data-mode="studio"] .studio-graph-legend{flex:0 0 31px;background:rgba(9,14,20,.96)}
html[data-mode="studio"] .studio-story-workspace.graph-mode .studio-node-editor{height:100%;border-width:0 0 0 1px;border-radius:0;padding:16px 14px 28px;overflow:auto;background:rgba(12,17,24,.98)}
html[data-mode="studio"] .studio-story-workspace.graph-mode .node-media-grid{grid-template-columns:1fr}
html[data-mode="studio"] .studio-story-workspace.graph-mode .studio-form-grid.two-columns{grid-template-columns:1fr}
html[data-mode="studio"] .studio-story-workspace.graph-mode .node-choice-row{grid-template-columns:44px 1fr 26px}html[data-mode="studio"] .studio-story-workspace.graph-mode .node-choice-row input[data-choice-field="hint"]{grid-column:1/3}html[data-mode="studio"] .studio-story-workspace.graph-mode .node-choice-row select{grid-column:1/3}
html[data-mode="studio"] .studio-story-workspace.graph-mode .node-choice-effect{grid-template-columns:1fr 74px}html[data-mode="studio"] .studio-story-workspace.graph-mode .node-choice-effect>span{grid-column:1/3}
html[data-mode="studio"] .studio-story-workspace.graph-mode .node-condition-row{grid-template-columns:1fr 58px 72px 26px}html[data-mode="studio"] .studio-story-workspace.graph-mode .node-condition-row select:nth-of-type(3){grid-column:1/4}
html[data-mode="studio"] .phone-column{position:fixed;z-index:31;top:0;right:0;display:flex;width:min(470px,96vw);height:100dvh;padding:58px 24px 22px;background:linear-gradient(160deg,rgba(19,25,34,.99),rgba(7,11,17,.995));border-left:1px solid rgba(255,255,255,.09);box-shadow:-30px 0 70px rgba(0,0,0,.42);opacity:0;visibility:hidden;pointer-events:none;transform:translateX(30px);transition:opacity .2s ease,transform .2s ease,visibility .2s}
html[data-mode="studio"] .app-shell[data-media-orientation="landscape"] .phone-column{width:min(980px,96vw)}
html[data-mode="studio"] body.studio-preview-open .phone-column{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0)}
html[data-mode="studio"] .phone-frame{width:min(360px,calc((100dvh - 88px)*9/16));max-height:calc(100dvh - 84px)}
html[data-mode="studio"] .app-shell[data-media-orientation="landscape"] .phone-frame{width:min(900px,calc((100dvh - 88px)*16/9),calc(96vw - 48px))}
html[data-mode="studio"] .app-shell[data-media-orientation="square"] .phone-frame{width:min(680px,calc(100dvh - 88px),calc(96vw - 48px))}
html[data-mode="studio"] .studio-preview-backdrop{position:fixed;z-index:30;inset:0;display:block;border:0;background:rgba(2,5,8,.58);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s;backdrop-filter:blur(2px)}
html[data-mode="studio"] body.studio-preview-open .studio-preview-backdrop{opacity:1;visibility:visible;pointer-events:auto}
html[data-mode="studio"] .studio-preview-close{position:absolute;z-index:33;top:16px;right:18px;display:inline-flex;height:30px;align-items:center;padding:0 11px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.62);font-size:8px;cursor:pointer}
html[data-mode="studio"] .studio-graph-viewport.is-space-pan{cursor:grab}html[data-mode="studio"] .studio-graph-viewport.is-space-pan.is-panning{cursor:grabbing}
.studio-graph-node-actions{display:flex;align-items:center;gap:3px;min-width:0}.studio-graph-node-actions code{max-width:58px}.studio-graph-node-actions button{display:grid;width:18px;height:18px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.06);border-radius:5px;background:rgba(255,255,255,.025);color:rgba(255,255,255,.38);font-size:10px;line-height:1;cursor:pointer}.studio-graph-node-actions button:hover{border-color:rgba(214,176,113,.3);background:rgba(214,176,113,.1);color:#e9ce9d}.studio-graph-node-actions button.danger:hover{border-color:rgba(220,104,113,.32);background:rgba(190,60,70,.12);color:#efa7ad}
.studio-graph-input{position:absolute;z-index:3;left:4px;top:32px;width:9px;height:9px;border:2px solid #0d141b;border-radius:50%;background:#8ea3a5;box-shadow:0 0 0 1px rgba(142,163,165,.4);pointer-events:auto;cursor:crosshair;transition:.15s ease}.studio-graph-node.link-target .studio-graph-input{width:13px;height:13px;left:2px;top:30px;background:#75c3aa;box-shadow:0 0 0 4px rgba(105,185,157,.18),0 0 15px rgba(105,185,157,.55)}
.studio-graph-cut-edge{position:absolute;z-index:12;display:flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid rgba(236,174,113,.55);border-radius:13px;background:rgba(35,25,21,.96);box-shadow:0 8px 22px rgba(0,0,0,.42),0 0 0 3px rgba(223,155,91,.1);color:#f3c891;font-size:7px;line-height:1;cursor:pointer;transform:translate(-50%,-50%);pointer-events:auto}.studio-graph-cut-edge:hover{border-color:#f1b978;background:#4a2d20;color:#fff0d7}.studio-graph-cut-edge span{font-size:11px}
.studio-graph-port-row{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:4px;align-items:center}.studio-graph-port{overflow:visible}.studio-graph-port:after{content:"";position:absolute;z-index:2;right:-5px;top:50%;width:9px;height:9px;border:2px solid #0d141b;border-radius:50%;background:#71999b;transform:translateY(-50%);box-shadow:0 0 0 1px rgba(113,153,155,.35)}.studio-graph-port.choice:after{background:#d3a864}.studio-graph-port.condition:after{background:#927cc7}.studio-graph-port.active:after{box-shadow:0 0 0 4px rgba(214,176,113,.18),0 0 14px rgba(214,176,113,.5)}.studio-graph-port-insert{display:grid;width:22px;height:22px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.065);border-radius:6px;background:rgba(255,255,255,.025);color:rgba(255,255,255,.34);font-size:10px;cursor:pointer}.studio-graph-port-insert:hover{border-color:rgba(105,185,157,.28);background:rgba(105,185,157,.09);color:#a9d5c8}
.studio-graph-context-menu{position:fixed;z-index:90;width:196px;padding:7px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(16,22,30,.98);box-shadow:0 18px 46px rgba(0,0,0,.48);backdrop-filter:blur(18px)}.studio-graph-context-menu>strong{display:block;padding:6px 8px 8px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06);font-size:8px;color:rgba(255,255,255,.44);text-overflow:ellipsis;white-space:nowrap}.studio-graph-context-menu button{display:flex;width:100%;height:32px;align-items:center;justify-content:space-between;padding:0 8px;border:0;border-radius:7px;background:transparent;color:rgba(255,255,255,.68);font-size:8px;text-align:left;cursor:pointer}.studio-graph-context-menu button:hover{background:rgba(255,255,255,.06);color:#fff}.studio-graph-context-menu button.danger{color:#e5a0a6}.studio-graph-context-menu button:disabled{opacity:.28;cursor:not-allowed}.studio-graph-context-menu kbd{font:6px/1 ui-monospace,monospace;color:rgba(255,255,255,.28)}
.studio-graph-node.mainline{border-color:rgba(118,163,176,.38);background:linear-gradient(155deg,rgba(30,43,52,.98),rgba(14,21,29,.98))}.studio-graph-node.mainline .studio-graph-tag{background:rgba(118,163,176,.14);color:#aacbd5}.studio-graph-node.branch{border-color:rgba(157,151,194,.34);background:linear-gradient(155deg,rgba(38,37,52,.98),rgba(19,20,30,.98))}.studio-graph-node.branch .studio-graph-tag{background:rgba(157,151,194,.12);color:#cbc7df}.studio-graph-node.ending{border-color:rgba(218,153,72,.55);background:linear-gradient(155deg,rgba(67,42,21,.98),rgba(25,18,18,.98))}.studio-graph-node.ending .studio-graph-tag{background:rgba(218,153,72,.18);color:#f0c184}.studio-graph-node.selected{border-color:rgba(235,195,116,.82);box-shadow:0 0 0 2px rgba(235,195,116,.15),0 16px 30px rgba(0,0,0,.34)}
.studio-graph-legend em{font-style:normal;color:rgba(255,255,255,.2)}.studio-graph-legend i.node-mainline{background:#87acba}.studio-graph-legend i.node-branch{background:#a39fbd}.studio-graph-legend i.node-ending{border-radius:2px;background:#da9948}
.studio-graph-create-menu{position:absolute;z-index:24;width:252px;padding:9px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(15,21,30,.98);box-shadow:0 20px 50px rgba(0,0,0,.52),0 0 0 3px rgba(255,255,255,.025);backdrop-filter:blur(18px)}.studio-graph-create-menu>strong{display:block;padding:6px 7px 9px;font-size:8px;color:rgba(255,255,255,.58);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-graph-create-menu>button{display:grid;width:100%;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:9px;padding:8px;border:0;border-radius:9px;background:transparent;color:#eee;text-align:left;cursor:pointer}.studio-graph-create-menu>button:hover{background:rgba(255,255,255,.065)}.studio-graph-create-menu button i{width:10px;height:10px;border-radius:50%;background:#4ca9b2;box-shadow:0 0 0 3px rgba(76,169,178,.11)}.studio-graph-create-menu button i.ending{border-radius:3px;background:#da9948;box-shadow:0 0 0 3px rgba(218,153,72,.11)}.studio-graph-create-menu button span,.studio-graph-create-menu button b,.studio-graph-create-menu button small{display:block;min-width:0}.studio-graph-create-menu button b{font-size:8px}.studio-graph-create-menu button small{margin-top:3px;font-size:6px;color:rgba(255,255,255,.32)}.studio-graph-create-menu>button.cancel{display:block;margin-top:3px;padding:6px;color:rgba(255,255,255,.32);font-size:7px;text-align:center}
.studio-tool-button.history{padding:0 9px;color:rgba(255,255,255,.52)}.studio-tool-button.history:disabled{opacity:.25;cursor:not-allowed}.studio-graph-node{overflow:visible}.studio-graph-input{left:-7px;top:50%;width:13px;height:13px;padding:0;border:2px solid #0d141b;background:#91aab2;transform:translateY(-50%);box-shadow:0 0 0 1px rgba(145,170,178,.42)}.studio-graph-node.link-target .studio-graph-input{left:-9px;top:50%;width:17px;height:17px;transform:translateY(-50%);background:#82c2b0;box-shadow:0 0 0 4px rgba(105,185,157,.16),0 0 15px rgba(105,185,157,.42)}.studio-graph-ports{padding-right:8px}.studio-graph-port-row{position:relative}.studio-graph-port-copy{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,52px);align-items:center;gap:5px;min-width:0;height:24px;padding:0 7px;border:1px solid rgba(255,255,255,.05);border-radius:6px;background:rgba(255,255,255,.022);font-size:6px;color:rgba(255,255,255,.48)}.studio-graph-port-copy span,.studio-graph-port-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-graph-port-copy small{color:rgba(255,255,255,.26)}.studio-graph-output{position:absolute;z-index:5;right:-14px;top:50%;width:13px;height:13px;padding:0;border:2px solid #0d141b;border-radius:50%;background:#87acba;box-shadow:0 0 0 1px rgba(135,172,186,.4);cursor:crosshair;transform:translateY(-50%);transition:width .14s ease,height .14s ease,box-shadow .14s ease,background .14s ease}.studio-graph-output.choice{background:#d4ae74;box-shadow:0 0 0 1px rgba(212,174,116,.42)}.studio-graph-output.condition{background:#aaa1c8;box-shadow:0 0 0 1px rgba(170,161,200,.42)}.studio-graph-output:hover,.studio-graph-output.active{width:17px;height:17px;right:-16px;box-shadow:0 0 0 4px rgba(214,176,113,.16),0 0 14px rgba(214,176,113,.42)}.studio-graph-create-menu button i.branch{background:#a39fbd;box-shadow:0 0 0 3px rgba(163,159,189,.11)}
.studio-graph-marquee{position:absolute;z-index:20;border:1px solid rgba(127,181,208,.78);border-radius:4px;background:rgba(92,154,184,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 18px rgba(75,151,190,.12);pointer-events:none}.studio-graph-viewport.is-selecting{cursor:crosshair;user-select:none}.studio-graph-node.selected{box-shadow:0 0 0 2px rgba(235,195,116,.15),0 16px 30px rgba(0,0,0,.34)}
.studio-graph-node-media{position:relative;display:block;width:calc(100% - 16px);height:64px;margin:0 8px 7px;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#0b1118;cursor:pointer}.studio-graph-node-media video,.studio-graph-node-media img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.studio-graph-node-media>span{position:absolute;right:6px;bottom:5px;padding:3px 5px;border-radius:5px;background:rgba(5,9,13,.72);color:rgba(255,255,255,.72);font-size:6px;backdrop-filter:blur(6px)}.studio-graph-node-media.empty{display:grid;place-items:center;border-style:dashed;background:rgba(255,255,255,.015);color:rgba(255,255,255,.23);font-size:6px;cursor:default}.studio-graph-node.asset-drop-target{border-color:rgba(112,195,165,.88);box-shadow:0 0 0 4px rgba(92,190,154,.2),0 20px 42px rgba(0,0,0,.38)}.studio-graph-viewport.asset-drag-over{box-shadow:inset 0 0 0 2px rgba(100,184,154,.22)}
.studio-graph-asset-dock{position:absolute;z-index:23;left:12px;top:12px;bottom:12px;width:270px;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(13,19,27,.97);box-shadow:0 20px 52px rgba(0,0,0,.48);backdrop-filter:blur(18px)}.studio-graph-asset-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:2px 2px 9px;border-bottom:1px solid rgba(255,255,255,.06)}.studio-graph-asset-heading strong,.studio-graph-asset-heading small{display:block}.studio-graph-asset-heading strong{font-size:9px}.studio-graph-asset-heading small{margin-top:3px;font-size:6px;color:rgba(255,255,255,.33)}.studio-graph-asset-heading button{width:24px;height:24px;border:0;border-radius:7px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.45);cursor:pointer}.studio-graph-asset-list{display:grid;gap:8px;max-height:calc(100% - 48px);padding-top:9px;overflow:auto}.studio-graph-asset-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.025);cursor:grab}.studio-graph-asset-card:hover{border-color:rgba(134,177,190,.24);background:rgba(134,177,190,.055)}.studio-graph-asset-card.dragging{opacity:.45;cursor:grabbing}.studio-graph-asset-thumb{position:relative;width:72px;height:48px;overflow:hidden;border-radius:7px;background:#080c12}.studio-graph-asset-thumb video{width:100%;height:100%;object-fit:cover;pointer-events:none}.studio-graph-asset-thumb button{position:absolute;inset:0;border:0;background:linear-gradient(transparent,rgba(0,0,0,.24));color:rgba(255,255,255,.86);font-size:12px;cursor:pointer}.studio-graph-asset-card>div:nth-child(2){min-width:0}.studio-graph-asset-card strong,.studio-graph-asset-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-graph-asset-card strong{font-size:7px;color:rgba(255,255,255,.72)}.studio-graph-asset-card small{margin-top:4px;font-size:6px;color:rgba(255,255,255,.28)}.studio-graph-asset-card>span{font-size:6px;color:rgba(255,255,255,.25);writing-mode:vertical-rl}.studio-graph-asset-empty{padding:28px 12px;border:1px dashed rgba(255,255,255,.08);border-radius:10px;color:rgba(255,255,255,.3);font-size:7px;line-height:1.7;text-align:center}.studio-graph-actions #studioGraphAssetsToggle.active{border-color:rgba(121,174,191,.3);background:rgba(121,174,191,.1);color:#b9d3dc}
.studio-graph-video-preview{position:absolute;z-index:32;inset:0;display:grid;place-items:center;padding:38px;background:rgba(3,6,10,.82);backdrop-filter:blur(6px)}.studio-graph-video-preview>div{position:absolute;top:16px;left:50%;display:flex;width:min(720px,calc(100% - 40px));align-items:center;justify-content:space-between;transform:translateX(-50%)}.studio-graph-video-preview strong{font-size:9px}.studio-graph-video-preview button{height:28px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.62);font-size:7px;cursor:pointer}.studio-graph-video-preview video{width:min(720px,90%);max-height:calc(100% - 66px);border-radius:12px;background:#000;box-shadow:0 26px 70px rgba(0,0,0,.55)}
.studio-graph-node{width:var(--graph-node-width,184px);transition:width .18s ease,border-color .15s ease,box-shadow .15s ease}
.studio-graph-node-media{height:auto;aspect-ratio:var(--graph-media-ratio,16/9);border-color:rgba(255,255,255,.075);border-radius:9px;background:#070b10;box-shadow:inset 0 0 0 1px rgba(255,255,255,.018)}
.studio-graph-node-media:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 34%,transparent 58%,rgba(2,5,8,.78));pointer-events:none}
.studio-graph-node-media video{object-fit:contain}
.studio-graph-media-aspect,.studio-graph-media-play,.studio-graph-media-replace{position:absolute!important;z-index:2}
.studio-graph-node-media .studio-graph-media-aspect{left:6px;right:auto;top:6px;bottom:auto;margin:0;padding:3px 5px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:rgba(4,8,12,.66);color:rgba(255,255,255,.64);font-size:6px;backdrop-filter:blur(7px)}
.studio-graph-node-media .studio-graph-media-play{left:50%;right:auto;top:50%;bottom:auto;display:grid;gap:4px;margin:0;padding:0;place-items:center;background:transparent;color:#fff;transform:translate(-50%,-50%);text-shadow:0 2px 8px rgba(0,0,0,.7);backdrop-filter:none}
.studio-graph-media-play i{display:grid;width:28px;height:28px;place-items:center;padding-left:2px;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:rgba(4,9,13,.54);font:10px/1 sans-serif;backdrop-filter:blur(7px);transition:.15s ease}.studio-graph-media-play b{font-size:6px;font-weight:600}
.studio-graph-node-media .studio-graph-media-replace{right:6px;bottom:5px;margin:0;padding:0;background:transparent;color:rgba(255,255,255,.52);font-size:6px;backdrop-filter:none}.studio-graph-node-media:hover .studio-graph-media-play i{background:rgba(107,166,183,.62);transform:scale(1.06)}
.studio-graph-node-media .studio-graph-media-play{left:50%;right:auto;top:50%;bottom:auto;display:grid;width:34px;height:34px;margin:0;padding:0 0 0 2px;place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(4,9,13,.58);color:#fff;font:12px/1 sans-serif;cursor:pointer;transform:translate(-50%,-50%);text-shadow:0 2px 8px rgba(0,0,0,.7);backdrop-filter:blur(7px);transition:opacity .15s ease,background .15s ease,transform .15s ease}.studio-graph-node-media .studio-graph-media-play:hover{background:rgba(107,166,183,.68);transform:translate(-50%,-50%) scale(1.06)}.studio-graph-node-media .studio-graph-media-play.playing{padding-left:0;opacity:.58}.studio-graph-node-media:hover .studio-graph-media-play.playing{opacity:1}
.studio-graph-media-fullscreen{position:absolute;z-index:3;right:6px;bottom:6px;display:grid;width:24px;height:24px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:rgba(4,8,12,.62);color:rgba(255,255,255,.76);font:12px/1 sans-serif;cursor:pointer;backdrop-filter:blur(7px)}.studio-graph-media-fullscreen:hover{border-color:rgba(154,202,215,.38);background:rgba(91,149,166,.54);color:#fff}
.studio-graph-node-media.empty{display:grid;height:76px;aspect-ratio:auto;place-content:center;gap:5px;border-style:dashed;background:linear-gradient(145deg,rgba(117,169,184,.04),rgba(255,255,255,.012));color:rgba(255,255,255,.34);text-align:center;cursor:pointer}.studio-graph-node-media.empty:after{display:none}.studio-graph-node-media.empty strong{font-size:7px;color:rgba(174,207,215,.72)}.studio-graph-node-media.empty span{position:static;margin:0;padding:0;background:transparent;color:rgba(255,255,255,.28);font-size:6px;backdrop-filter:none}
.studio-graph-output.asset-port-drop-target{width:21px;height:21px;right:-18px;background:#79c6aa;box-shadow:0 0 0 6px rgba(99,191,157,.2),0 0 22px rgba(99,191,157,.72)}.studio-graph-asset-thumb video{object-fit:contain}
@media(max-width:820px){html[data-mode="studio"] .studio-header p,html[data-mode="studio"] .studio-save-state,html[data-mode="studio"] .studio-header .version-chip{display:none}html[data-mode="studio"] .studio-toolbar{right:10px}html[data-mode="studio"] .studio-tabs{grid-template-columns:repeat(5,1fr);padding:0 6px}html[data-mode="studio"] .studio-story-workspace.graph-mode.inspector-open{grid-template-columns:minmax(0,1fr) minmax(300px,340px)}}
@media(max-width:620px){html[data-mode="studio"] .studio-header{padding-left:12px}html[data-mode="studio"] .studio-header h2{font-size:13px}html[data-mode="studio"] .studio-toolbar{top:10px;right:8px;padding:4px}html[data-mode="studio"] .studio-toolbar-actions{gap:3px}html[data-mode="studio"] .studio-tool-button{padding:0 7px;font-size:7px}html[data-mode="studio"] .studio-tool-button.preview{font-size:0}html[data-mode="studio"] .studio-tool-button.preview:after{content:"预览";font-size:7px}html[data-mode="studio"] .studio-pane[data-studio-pane="story"]>.studio-pane-heading{display:flex;padding-left:10px;padding-right:10px}html[data-mode="studio"] .studio-pane[data-studio-pane="story"]>.studio-pane-heading>div:first-child{display:none}html[data-mode="studio"] .studio-story-workspace.graph-mode.inspector-open{grid-template-columns:1fr}html[data-mode="studio"] .studio-story-workspace.graph-mode.inspector-open .studio-graph-panel{display:none}html[data-mode="studio"] .studio-story-workspace.graph-mode .studio-node-editor{border:0}html[data-mode="studio"] .studio-graph-toolbar{flex-direction:column;align-items:flex-start;height:auto;flex-basis:auto}html[data-mode="studio"] .studio-graph-actions{width:100%;overflow-x:auto;flex-wrap:nowrap}html[data-mode="studio"] .studio-graph-legend{overflow-x:auto}html[data-mode="studio"] .studio-preview-close{top:10px;right:10px}}
@media(max-width:820px){html[data-mode="studio"] .studio-project-switcher label{min-width:150px}.studio-choice-layout-cards,.studio-cover-template-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){html[data-mode="studio"] .studio-header>div:first-child p,html[data-mode="studio"] .studio-project-switcher>button:last-child{display:none}html[data-mode="studio"] .studio-project-switcher label{min-width:126px}.studio-project-switcher button{padding:0 7px;font-size:7px}.studio-cover-workbench{grid-template-columns:1fr}.studio-cover-preview{min-height:240px}}
@media(max-height:700px) and (min-width:861px){.director-panel{height:calc(100dvh - 24px)}.phone-frame{width:min(430px,calc((100dvh - 20px)*9/16),calc(100vw - 40px))}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}}

/* Stable graph thumbnails: keep paused videos off the compositor until play is requested. */
.studio-graph-node-media>img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.studio-graph-node-media>video{display:none;width:100%;height:100%;object-fit:contain;pointer-events:none}
.studio-graph-node-media.video-active>img,.studio-graph-node-media.video-active>.studio-graph-media-placeholder{display:none}
.studio-graph-node-media.video-active>video{display:block}
.studio-graph-media-placeholder,.studio-graph-asset-placeholder{display:grid;width:100%;height:100%;place-items:center;background:linear-gradient(145deg,rgba(92,132,146,.16),rgba(9,15,22,.72));color:rgba(190,217,224,.46);font:700 10px/1 ui-monospace,monospace;letter-spacing:.12em}
.studio-graph-asset-thumb>img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}

/* Desktop shell polish: native controls share the canvas chrome, while the studio header stays unobstructed. */
.desktop-drag-strip{display:none}
.studio-brand-lockup{display:flex;min-width:0;align-items:center;gap:12px}.studio-brand-lockup>div{min-width:0}.studio-brand-logo{display:block;width:40px;height:40px;flex:0 0 40px;border:1px solid rgba(255,255,255,.11);border-radius:11px;object-fit:cover;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.studio-pane-heading>div:first-child{min-width:0}.studio-pane-heading [data-studio-project-name]{max-width:min(620px,55vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-mode="studio"] .studio-toolbar{position:relative;z-index:4;top:auto;right:auto;width:100%;flex:0 0 43px;padding:6px 16px;border-width:0 0 1px;border-radius:0;background:#0a1017;backdrop-filter:none}
html[data-mode="studio"] .studio-toolbar-actions{min-width:0;align-items:center}.studio-tool-button.history:disabled{border-color:rgba(142,163,174,.07);background:#0b1118;color:rgba(159,177,185,.28);opacity:1;box-shadow:none}
html[data-mode="studio"] .studio-header{background:#090e14}.studio-project-switcher{position:relative;z-index:5}
html[data-mode="studio"] .studio-pane[data-studio-pane="monitor"]>.studio-pane-heading{margin-bottom:13px}
html[data-desktop="true"] .desktop-drag-strip{display:block;position:fixed;z-index:1000;top:0;left:0;right:140px;height:36px;background:#080d13;-webkit-app-region:drag}
html[data-desktop="true"] .app-shell{height:calc(100dvh - 36px);margin-top:36px}
html[data-desktop="true"][data-mode="studio"] .director-panel{height:100%}
html[data-desktop="true"][data-mode="studio"] .studio-header{flex-basis:76px;min-height:76px;padding-top:20px;padding-bottom:10px}
html[data-desktop="true"][data-desktop-platform="darwin"] .desktop-drag-strip{left:0;right:94px}
@media(max-width:1100px){html[data-mode="studio"] .studio-save-state{display:none}.studio-project-switcher label{min-width:150px}.studio-tool-button{padding-right:9px;padding-left:9px}}

/* Visual theme signatures. Tokens carry the palette; these rules carry the genre language. */
.app-shell[data-theme-id="cinematic-film"] .cinema-shade{background:linear-gradient(to bottom,#000 0,#000 5.5%,rgba(0,0,0,.48) 5.6%,transparent 27%,transparent 74%,rgba(0,0,0,.58) 94.4%,#000 94.5%,#000 100%)}
.app-shell[data-theme-id="cinematic-film"] .choice-overlay{padding-bottom:max(34px,env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.12)}
.app-shell[data-theme-id="cinematic-film"] .choice-button{border-left:2px solid var(--gold);letter-spacing:.04em}
.app-shell[data-theme-id="cinematic-film"] .scene-caption{bottom:9%;max-width:84%;margin:auto;padding:7px 12px;border-radius:2px;background:rgba(0,0,0,.72);letter-spacing:.05em}

.app-shell[data-theme-id="chinese-tv-warm"] .home-gradient{background:linear-gradient(to top,rgba(27,16,12,.96),rgba(62,39,28,.18) 68%)}
.app-shell[data-theme-id="chinese-tv-warm"] .brand-pill{border-color:rgba(255,210,170,.35);background:rgba(67,38,27,.46)}
.app-shell[data-theme-id="chinese-tv-warm"] .choice-overlay{background:linear-gradient(to top,rgba(35,22,17,.98),rgba(35,22,17,.84) 72%,transparent)}
.app-shell[data-theme-id="chinese-tv-warm"] .choice-button{box-shadow:0 8px 28px rgba(41,20,13,.28)}

.app-shell[data-theme-id="period-courtyard"] .home-gradient{background:linear-gradient(90deg,rgba(12,28,21,.88),rgba(12,28,21,.15) 66%),linear-gradient(to top,rgba(13,25,19,.95),transparent 65%)}
.app-shell[data-theme-id="period-courtyard"] .brand-pill{border-radius:3px;border-color:rgba(207,213,169,.38);background:rgba(25,48,38,.48)}
.app-shell[data-theme-id="period-courtyard"] .title-stack{padding-left:12px;border-left:1px solid rgba(222,214,168,.46)}
.app-shell[data-theme-id="period-courtyard"] .choice-overlay{background:linear-gradient(to top,rgba(15,29,23,.98),rgba(22,42,33,.9) 73%,transparent)}
.app-shell[data-theme-id="period-courtyard"] .choice-button{border-color:rgba(211,211,170,.2);background:linear-gradient(90deg,rgba(38,57,46,.9),rgba(25,41,33,.88))}

.app-shell[data-theme-id="wasteland-amber"] .cinema-shade{background:repeating-linear-gradient(108deg,rgba(255,133,44,.025) 0,rgba(255,133,44,.025) 1px,transparent 1px,transparent 12px),linear-gradient(to bottom,rgba(24,13,5,.58),transparent 38%,rgba(27,14,6,.72))}
.app-shell[data-theme-id="wasteland-amber"] .brand-pill,.app-shell[data-theme-id="wasteland-amber"] .choice-button,.app-shell[data-theme-id="wasteland-amber"] .primary-button{border-radius:2px;text-transform:uppercase}
.app-shell[data-theme-id="wasteland-amber"] .choice-overlay{border-top:1px solid rgba(244,134,53,.38);background:linear-gradient(to top,rgba(28,16,8,.99),rgba(42,25,13,.92) 74%,transparent)}
.app-shell[data-theme-id="wasteland-amber"] .choice-key{border-radius:2px;border-color:rgba(255,173,91,.45)}

.app-shell[data-theme-id="cyber-neon"] .cinema-shade{background:linear-gradient(rgba(0,220,235,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,220,235,.028) 1px,transparent 1px),linear-gradient(to bottom,rgba(1,4,13,.46),transparent 50%,rgba(1,4,13,.78));background-size:28px 28px,28px 28px,100% 100%}
.app-shell[data-theme-id="cyber-neon"] .brand-pill{border-radius:2px;border-color:rgba(27,223,236,.52);box-shadow:0 0 18px rgba(25,215,229,.15);color:#adfbff}
.app-shell[data-theme-id="cyber-neon"] .vertical-title,.app-shell[data-theme-id="cyber-neon"] .title-copy h1{text-shadow:2px 0 rgba(243,41,255,.36),-2px 0 rgba(25,215,229,.42)}
.app-shell[data-theme-id="cyber-neon"] .choice-overlay{border-top:1px solid rgba(25,215,229,.38);background:linear-gradient(to top,rgba(2,8,20,.99),rgba(4,17,34,.9) 74%,transparent)}
.app-shell[data-theme-id="cyber-neon"] .choice-button{border-left:2px solid #19d7e5;box-shadow:inset 0 0 24px rgba(25,215,229,.035)}
.app-shell[data-theme-id="cyber-neon"] .choice-button:nth-child(even){border-left-color:#d83df2}

.app-shell[data-theme-id="ink-wash"] .home-backdrop{filter:grayscale(.82) contrast(1.04)}
.app-shell[data-theme-id="ink-wash"] .home-gradient{background:linear-gradient(90deg,rgba(15,15,13,.94),rgba(15,15,13,.12) 68%),linear-gradient(to top,rgba(14,14,12,.96),transparent 64%)}
.app-shell[data-theme-id="ink-wash"] .brand-pill{border:0;border-left:2px solid #b4473f;border-radius:0;background:rgba(20,20,18,.52)}
.app-shell[data-theme-id="ink-wash"] .choice-overlay{background:linear-gradient(to top,rgba(20,20,17,.99),rgba(31,31,27,.9) 72%,transparent)}
.app-shell[data-theme-id="ink-wash"] .choice-button{border-width:0 0 1px;border-color:rgba(239,235,221,.26);background:rgba(238,232,215,.055)}
.app-shell[data-theme-id="ink-wash"] .choice-key{border-radius:0;border-color:#b4473f;color:#eadfd0}

/* Studio 0.4: unmistakable theme previews and complete visual presets. */
.studio-theme-cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.studio-theme-card{grid-template-columns:88px minmax(0,1fr);min-height:86px;padding:9px;overflow:hidden}
.studio-theme-card.active{border-color:var(--theme-accent);background:color-mix(in srgb,var(--theme-accent) 10%,rgba(255,255,255,.025));box-shadow:0 0 0 1px color-mix(in srgb,var(--theme-accent) 24%,transparent)}
.studio-theme-scene{position:relative;isolation:isolate;width:88px;height:66px;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 75% 20%,color-mix(in srgb,var(--theme-accent) 70%,transparent),transparent 30%),linear-gradient(145deg,var(--theme-bg),color-mix(in srgb,var(--theme-accent) 28%,var(--theme-bg)));box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.studio-theme-scene:before,.studio-theme-scene:after{content:"";position:absolute;pointer-events:none}
.studio-theme-scene:before{z-index:-1;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82),transparent 68%)}
.studio-theme-scene:after{inset:5px;border:1px solid color-mix(in srgb,var(--theme-accent) 40%,transparent)}
.studio-theme-scene b{position:absolute;z-index:2;left:9px;top:8px;color:var(--theme-accent-strong);font:700 19px/1 "Fanren Serif SC",serif;letter-spacing:.06em;text-shadow:0 2px 12px #000}
.studio-theme-scene em{position:absolute;left:9px;right:34px;top:33px;height:1px;background:var(--theme-accent)}
.studio-theme-scene span{position:absolute;z-index:2;left:8px;right:8px;bottom:7px;display:flex;gap:4px}
.studio-theme-scene u{flex:1;padding:3px 0;border:1px solid color-mix(in srgb,var(--theme-accent) 65%,transparent);border-radius:3px;background:rgba(0,0,0,.42);color:var(--theme-accent-strong);font:5px/1 ui-monospace,monospace;text-align:center;text-decoration:none}
.studio-theme-card>span strong{font-size:11px;letter-spacing:.03em}.studio-theme-card>span small{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.45}

.studio-theme-card[data-theme-id="cinematic-film"] .studio-theme-scene{border-radius:2px;box-shadow:inset 0 10px #000,inset 0 -10px #000,inset 0 0 0 1px rgba(255,255,255,.2)}
.studio-theme-card[data-theme-id="cinematic-film"] .studio-theme-scene b{top:14px;font-family:"Fanren Serif SC",serif;letter-spacing:.16em}
.studio-theme-card[data-theme-id="chinese-tv-warm"] .studio-theme-scene{border-radius:12px;background:radial-gradient(circle at 72% 24%,rgba(255,210,170,.58),transparent 26%),linear-gradient(145deg,#5a3629,#1a1311)}
.studio-theme-card[data-theme-id="chinese-tv-warm"] .studio-theme-scene u{border-radius:7px;background:rgba(109,59,41,.66)}
.studio-theme-card[data-theme-id="period-courtyard"] .studio-theme-scene{background:radial-gradient(circle at 80% 18%,rgba(223,215,168,.34),transparent 23%),linear-gradient(135deg,#243b30,#101b16)}
.studio-theme-card[data-theme-id="period-courtyard"] .studio-theme-scene b{left:auto;right:10px;top:7px;writing-mode:vertical-rl;font:600 15px/1.08 "Fanren Serif SC",serif}
.studio-theme-card[data-theme-id="period-courtyard"] .studio-theme-scene:after{border-radius:50% 50% 4px 4px;border-color:rgba(211,211,170,.24)}
.studio-theme-card[data-theme-id="wasteland-amber"] .studio-theme-scene{border-radius:1px;background:repeating-linear-gradient(115deg,rgba(255,178,91,.08) 0 2px,transparent 2px 13px),linear-gradient(145deg,#4d2b16,#110d08)}
.studio-theme-card[data-theme-id="wasteland-amber"] .studio-theme-scene b{font-family:"Arial Narrow","Microsoft YaHei UI",sans-serif;font-style:italic;font-weight:900;transform:skew(-8deg)}
.studio-theme-card[data-theme-id="wasteland-amber"] .studio-theme-scene u{border-radius:0;clip-path:polygon(5% 0,100% 0,95% 100%,0 100%)}
.studio-theme-card[data-theme-id="cyber-neon"] .studio-theme-scene{border-radius:1px;background:linear-gradient(rgba(25,215,229,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(25,215,229,.08) 1px,transparent 1px),linear-gradient(145deg,#07172a,#02050c);background-size:12px 12px,12px 12px,100% 100%;box-shadow:inset 0 0 0 1px #19d7e5,0 0 16px rgba(25,215,229,.16)}
.studio-theme-card[data-theme-id="cyber-neon"] .studio-theme-scene b{font-family:Consolas,monospace;text-shadow:2px 0 #d83df2,-2px 0 #19d7e5}
.studio-theme-card[data-theme-id="cyber-neon"] .studio-theme-scene u{border-radius:0;box-shadow:inset 2px 0 #d83df2}
.studio-theme-card[data-theme-id="ink-wash"] .studio-theme-scene{border-radius:0;background:radial-gradient(ellipse at 70% 35%,rgba(241,238,228,.2),transparent 8%),radial-gradient(ellipse at 65% 38%,rgba(0,0,0,.78),transparent 28%),linear-gradient(135deg,#ddd7c7,#858074)}
.studio-theme-card[data-theme-id="ink-wash"] .studio-theme-scene:before{background:linear-gradient(to top,rgba(14,14,12,.78),transparent 63%)}
.studio-theme-card[data-theme-id="ink-wash"] .studio-theme-scene b{color:#f2eee3;font-family:"Fanren Serif SC",serif}.studio-theme-card[data-theme-id="ink-wash"] .studio-theme-scene em{background:#b4473f}.studio-theme-card[data-theme-id="ink-wash"] .studio-theme-scene u{border-width:0 0 1px;border-radius:0}

.studio-theme-live-preview{position:relative;isolation:isolate;min-height:220px;overflow:hidden;margin:-2px 0 18px;border:1px solid color-mix(in srgb,var(--theme-preview-accent) 52%,rgba(255,255,255,.08));border-radius:14px;background:var(--theme-preview-bg);box-shadow:0 18px 42px rgba(0,0,0,.2)}
.studio-theme-live-preview:before{content:"";position:absolute;z-index:-2;inset:0;background:var(--theme-preview-image) center 34%/cover no-repeat;filter:var(--theme-preview-filter,none);transform:scale(1.02)}
.studio-theme-live-preview:after{content:"";position:absolute;z-index:-1;inset:0;background:var(--theme-preview-overlay,linear-gradient(90deg,var(--theme-preview-bg) 0,rgba(0,0,0,.72) 46%,rgba(0,0,0,.18)))}
.studio-theme-preview-grade{position:absolute;inset:0;pointer-events:none;background:var(--theme-preview-grade,none)}
.studio-theme-preview-copy{position:absolute;z-index:1;left:22px;right:22px;bottom:18px;max-width:540px;color:#fff}
.studio-theme-preview-meta{display:flex;align-items:center;gap:9px;margin-bottom:13px}.studio-theme-preview-meta span{padding:4px 7px;border:1px solid color-mix(in srgb,var(--theme-preview-accent) 68%,transparent);border-radius:4px;background:rgba(0,0,0,.34);color:var(--theme-preview-accent-strong);font-size:7px;letter-spacing:.08em}.studio-theme-preview-meta em{font-size:6px;color:rgba(255,255,255,.56)}
.studio-theme-preview-copy>strong{display:block;color:var(--theme-preview-title,#fff);font:700 28px/1.08 var(--theme-preview-font,"Fanren Serif SC"),serif;letter-spacing:var(--theme-preview-letter,.08em);text-shadow:0 3px 18px rgba(0,0,0,.88)}
.studio-theme-preview-copy>p{margin:8px 0 13px;max-width:420px;color:rgba(255,255,255,.72);font:8px/1.55 var(--theme-preview-body,"Microsoft YaHei UI"),sans-serif}
.studio-theme-preview-choices{display:grid;grid-template-columns:22px minmax(0,1fr) 22px minmax(0,1fr);align-items:center;max-width:430px;border:1px solid color-mix(in srgb,var(--theme-preview-accent) 38%,transparent);border-radius:var(--theme-preview-choice-radius,6px);overflow:hidden;background:color-mix(in srgb,var(--theme-preview-panel) 86%,transparent);backdrop-filter:blur(10px)}
.studio-theme-preview-choices i{height:31px;display:grid;place-items:center;color:var(--theme-preview-accent-strong);font:7px/1 ui-monospace,monospace}.studio-theme-preview-choices span{height:31px;display:flex;align-items:center;padding-right:10px;color:rgba(255,255,255,.78);font-size:7px}
.studio-theme-live-preview[data-theme-id="cinematic-film"]{border-radius:2px;--theme-preview-filter:saturate(.68) contrast(1.18) brightness(.77);--theme-preview-overlay:linear-gradient(90deg,rgba(3,3,3,.94),rgba(3,3,3,.55) 56%,rgba(0,0,0,.28));--theme-preview-grade:linear-gradient(#000 0 9%,transparent 9% 91%,#000 91%);--theme-preview-font:"Fanren Serif SC";--theme-preview-letter:.15em;--theme-preview-choice-radius:1px}
.studio-theme-live-preview[data-theme-id="chinese-tv-warm"]{--theme-preview-filter:sepia(.12) saturate(1.14) brightness(1.04);--theme-preview-overlay:linear-gradient(90deg,rgba(48,27,20,.9),rgba(48,27,20,.4) 58%,transparent);--theme-preview-grade:radial-gradient(circle at 76% 30%,rgba(255,202,156,.16),transparent 28%);--theme-preview-font:"Microsoft YaHei UI";--theme-preview-letter:.02em;--theme-preview-choice-radius:12px}
.studio-theme-live-preview[data-theme-id="period-courtyard"]{--theme-preview-filter:sepia(.18) saturate(.72) brightness(.9);--theme-preview-overlay:linear-gradient(90deg,rgba(14,35,25,.95),rgba(20,45,33,.52) 58%,rgba(9,20,15,.14));--theme-preview-grade:radial-gradient(ellipse at 78% 20%,rgba(224,211,163,.14),transparent 25%);--theme-preview-font:"Fanren Serif SC";--theme-preview-body:"Fanren Serif SC";--theme-preview-letter:.18em;--theme-preview-choice-radius:3px}
.studio-theme-live-preview[data-theme-id="period-courtyard"] .studio-theme-preview-copy>strong{writing-mode:vertical-rl;max-height:96px}.studio-theme-live-preview[data-theme-id="period-courtyard"] .studio-theme-preview-copy>p{margin-left:54px}
.studio-theme-live-preview[data-theme-id="wasteland-amber"]{border-radius:1px;--theme-preview-filter:sepia(.42) saturate(1.35) contrast(1.25) brightness(.68);--theme-preview-overlay:linear-gradient(90deg,rgba(35,18,7,.96),rgba(62,32,11,.54) 56%,rgba(0,0,0,.18));--theme-preview-grade:repeating-linear-gradient(112deg,rgba(255,169,79,.035) 0 2px,transparent 2px 18px);--theme-preview-font:"Arial Narrow";--theme-preview-letter:.03em;--theme-preview-choice-radius:0}
.studio-theme-live-preview[data-theme-id="wasteland-amber"] .studio-theme-preview-copy>strong{font-family:"Arial Narrow","Microsoft YaHei UI",sans-serif;font-style:italic;font-weight:900;transform:skew(-6deg);text-transform:uppercase}
.studio-theme-live-preview[data-theme-id="cyber-neon"]{border-radius:1px;--theme-preview-filter:saturate(1.28) contrast(1.2) brightness(.72) hue-rotate(8deg);--theme-preview-overlay:linear-gradient(90deg,rgba(2,8,20,.97),rgba(4,14,31,.55) 60%,transparent);--theme-preview-grade:linear-gradient(rgba(25,215,229,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(25,215,229,.045) 1px,transparent 1px);--theme-preview-font:Consolas;--theme-preview-letter:.04em;--theme-preview-choice-radius:0}.studio-theme-live-preview[data-theme-id="cyber-neon"] .studio-theme-preview-grade{background-size:26px 26px}.studio-theme-live-preview[data-theme-id="cyber-neon"] .studio-theme-preview-copy>strong{text-shadow:3px 0 rgba(216,61,242,.7),-3px 0 rgba(25,215,229,.7),0 0 22px rgba(25,215,229,.28)}.studio-theme-live-preview[data-theme-id="cyber-neon"] .studio-theme-preview-choices{box-shadow:inset 3px 0 #19d7e5,inset -3px 0 #d83df2,0 0 22px rgba(25,215,229,.12)}
.studio-theme-live-preview[data-theme-id="ink-wash"]{border-radius:0;--theme-preview-filter:grayscale(.9) contrast(1.12) brightness(.9);--theme-preview-overlay:linear-gradient(90deg,rgba(18,18,15,.95),rgba(29,29,24,.48) 58%,rgba(0,0,0,.08));--theme-preview-grade:radial-gradient(ellipse at 79% 34%,rgba(238,233,218,.16),transparent 8%),radial-gradient(ellipse at 76% 36%,rgba(0,0,0,.28),transparent 26%);--theme-preview-font:"Fanren Serif SC";--theme-preview-body:"Fanren Serif SC";--theme-preview-letter:.2em;--theme-preview-choice-radius:0}.studio-theme-live-preview[data-theme-id="ink-wash"] .studio-theme-preview-meta span{border-width:0 0 0 2px;border-color:#b4473f;border-radius:0}.studio-theme-live-preview[data-theme-id="ink-wash"] .studio-theme-preview-choices{border-width:0 0 1px}.studio-theme-live-preview[data-theme-id="ink-wash"] .studio-theme-preview-choices i{color:#d26b60}

.studio-ai-connection{margin-top:11px;padding:11px;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:rgba(2,7,12,.28)}
.studio-ai-connection-heading,.studio-ai-connection-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.studio-ai-connection-heading strong,.studio-ai-connection-heading span{display:block}.studio-ai-connection-heading strong{font-size:9px}.studio-ai-connection-heading span{margin-top:3px;color:rgba(255,255,255,.36);font-size:6px}.studio-ai-connection-heading em{padding:4px 7px;border-radius:999px;background:rgba(206,103,111,.1);color:#e3a0a6;font-size:6px}.studio-ai-connection-heading em.connected{background:rgba(105,185,157,.12);color:#a8d4c8}
.studio-ai-connection-fields{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:8px;margin-top:10px}.studio-ai-connection-fields label{display:grid;gap:4px}.studio-ai-connection-fields label span{font-size:6px;color:rgba(255,255,255,.42)}.studio-ai-connection-fields input,.studio-ai-connection-fields select{width:100%;height:34px;padding:0 9px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#111820;color:#eef3f6;font-size:8px;outline:none}.studio-ai-connection-fields input:focus,.studio-ai-connection-fields select:focus{border-color:rgba(105,185,157,.48)}
.studio-ai-connection-actions{justify-content:flex-end;margin-top:9px}.studio-ai-connection-actions small{margin-right:auto;color:rgba(255,255,255,.35);font-size:6px;line-height:1.45}.studio-ai-connection-actions button{height:29px;padding:0 10px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.58);font-size:7px;cursor:pointer}.studio-ai-connection-actions button:last-child{border-color:rgba(105,185,157,.3);background:rgba(105,185,157,.11);color:#b7ddd3}.studio-ai-connection-actions button:disabled{opacity:.34;cursor:not-allowed}

/* The selected preset grades footage, typography and controls—not only colors. */
.app-shell[data-theme-id="cinematic-film"] .story-video,.app-shell[data-theme-id="cinematic-film"] .freeze-layer,.app-shell[data-theme-id="cinematic-film"] .home-backdrop{filter:saturate(.68) contrast(1.18) brightness(.8)}
.app-shell[data-theme-id="cinematic-film"] .vertical-title,.app-shell[data-theme-id="cinematic-film"] .title-copy h1{letter-spacing:.16em}.app-shell[data-theme-id="cinematic-film"] .primary-button{border-radius:1px;letter-spacing:.12em}
.app-shell[data-theme-id="chinese-tv-warm"] .story-video,.app-shell[data-theme-id="chinese-tv-warm"] .freeze-layer,.app-shell[data-theme-id="chinese-tv-warm"] .home-backdrop{filter:sepia(.1) saturate(1.12) brightness(1.04)}
.app-shell[data-theme-id="chinese-tv-warm"] .stage{font-family:"Microsoft YaHei UI","Microsoft YaHei",sans-serif}.app-shell[data-theme-id="chinese-tv-warm"] .vertical-title,.app-shell[data-theme-id="chinese-tv-warm"] .title-copy h1{font-family:"Microsoft YaHei UI","Microsoft YaHei",sans-serif;font-weight:700;letter-spacing:.02em}.app-shell[data-theme-id="chinese-tv-warm"] .primary-button{box-shadow:0 12px 28px rgba(103,51,34,.3)}
.app-shell[data-theme-id="period-courtyard"] .story-video,.app-shell[data-theme-id="period-courtyard"] .freeze-layer,.app-shell[data-theme-id="period-courtyard"] .home-backdrop{filter:sepia(.18) saturate(.74) contrast(.96) brightness(.9)}
.app-shell[data-theme-id="period-courtyard"] .stage{font-family:"Fanren Serif SC","Songti SC",serif}.app-shell[data-theme-id="period-courtyard"] .vertical-title{letter-spacing:.2em}.app-shell[data-theme-id="period-courtyard"] .choice-button{font-family:"Fanren Serif SC","Songti SC",serif}.app-shell[data-theme-id="period-courtyard"] .primary-button{border-radius:2px;background:linear-gradient(90deg,#56684c,#859168);box-shadow:inset 0 0 0 1px rgba(239,232,194,.22)}
.app-shell[data-theme-id="wasteland-amber"] .story-video,.app-shell[data-theme-id="wasteland-amber"] .freeze-layer,.app-shell[data-theme-id="wasteland-amber"] .home-backdrop{filter:sepia(.4) saturate(1.38) contrast(1.22) brightness(.72)}
.app-shell[data-theme-id="wasteland-amber"] .vertical-title,.app-shell[data-theme-id="wasteland-amber"] .title-copy h1,.app-shell[data-theme-id="wasteland-amber"] .choice-button strong{font-family:"Arial Narrow","Microsoft YaHei UI",sans-serif;font-weight:900;font-style:italic;letter-spacing:.035em}.app-shell[data-theme-id="wasteland-amber"] .primary-button{clip-path:polygon(3% 0,100% 0,97% 100%,0 100%);font-weight:900;letter-spacing:.08em}
.app-shell[data-theme-id="cyber-neon"] .story-video,.app-shell[data-theme-id="cyber-neon"] .freeze-layer,.app-shell[data-theme-id="cyber-neon"] .home-backdrop{filter:saturate(1.3) contrast(1.2) brightness(.74) hue-rotate(8deg)}
.app-shell[data-theme-id="cyber-neon"] .stage{font-family:Consolas,"Microsoft YaHei UI",sans-serif}.app-shell[data-theme-id="cyber-neon"] .vertical-title,.app-shell[data-theme-id="cyber-neon"] .title-copy h1,.app-shell[data-theme-id="cyber-neon"] .choice-button{font-family:Consolas,"Microsoft YaHei UI",sans-serif}.app-shell[data-theme-id="cyber-neon"] .primary-button{border:1px solid #19d7e5;border-radius:0;background:linear-gradient(90deg,rgba(25,215,229,.35),rgba(216,61,242,.3));box-shadow:inset 3px 0 #19d7e5,inset -3px 0 #d83df2,0 0 24px rgba(25,215,229,.18)}.app-shell[data-theme-id="cyber-neon"] .seek-range::-webkit-slider-thumb{box-shadow:0 0 12px #19d7e5}
.app-shell[data-theme-id="ink-wash"] .story-video,.app-shell[data-theme-id="ink-wash"] .freeze-layer,.app-shell[data-theme-id="ink-wash"] .home-backdrop{filter:grayscale(.88) contrast(1.12) brightness(.9)}
.app-shell[data-theme-id="ink-wash"] .stage{font-family:"Fanren Serif SC","Songti SC",serif}.app-shell[data-theme-id="ink-wash"] .vertical-title{letter-spacing:.24em}.app-shell[data-theme-id="ink-wash"] .primary-button{border-radius:0;background:linear-gradient(90deg,#7c302c,#b4473f);box-shadow:none}.app-shell[data-theme-id="ink-wash"] .countdown-track span{background:#b4473f}

@media(max-width:620px){.studio-theme-cards{grid-template-columns:1fr}.studio-theme-live-preview{min-height:250px}.studio-ai-connection-fields{grid-template-columns:1fr}.studio-ai-connection-actions{flex-wrap:wrap}.studio-ai-connection-actions small{flex-basis:100%}}

.studio-web-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.studio-web-links>div{display:grid;gap:4px;padding:11px;border:1px solid rgba(105,185,157,.16);border-radius:10px;background:rgba(105,185,157,.045)}.studio-web-links span{font-size:7px;color:#a9d4c9}.studio-web-links strong{font-size:7px;line-height:1.45;color:rgba(255,255,255,.54)}.studio-web-links a{overflow:hidden;color:#d8c08f;font:7px/1.45 ui-monospace,monospace;text-overflow:ellipsis;white-space:nowrap}.studio-web-links a:hover{color:#fff}.studio-web-links>div:last-child{border-color:rgba(214,176,113,.18);background:rgba(214,176,113,.045)}.studio-web-links>div:last-child span{color:#d9bd8e}
@media(max-width:620px){.studio-web-links{grid-template-columns:1fr}}

.studio-ai-director{margin-bottom:18px;padding:11px;border:1px solid rgba(91,172,189,.16);border-radius:12px;background:linear-gradient(135deg,rgba(35,101,116,.08),rgba(121,72,145,.055)),rgba(255,255,255,.018)}
.studio-ai-director-intro{display:flex;align-items:center;gap:9px}.studio-ai-director-intro>i{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border:1px solid rgba(92,206,223,.26);border-radius:9px;background:linear-gradient(135deg,rgba(27,190,210,.22),rgba(157,65,191,.2));color:#bfeef2;font:700 8px/1 ui-monospace,monospace}.studio-ai-director-intro strong,.studio-ai-director-intro span{display:block}.studio-ai-director-intro strong{font-size:9px}.studio-ai-director-intro span{margin-top:3px;font-size:7px;color:rgba(255,255,255,.37)}
.studio-visual-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px}.studio-visual-plan>div{padding:9px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(4,10,17,.28)}.studio-visual-plan>div.wide{grid-column:1/-1}.studio-visual-plan span,.studio-visual-plan strong,.studio-visual-plan small{display:block}.studio-visual-plan span{font-size:6px;letter-spacing:.08em;color:rgba(127,209,219,.62)}.studio-visual-plan strong{margin-top:4px;font-size:9px;line-height:1.4}.studio-visual-plan small{margin-top:4px;font-size:7px;line-height:1.55;color:rgba(255,255,255,.43)}.studio-visual-keywords{display:flex!important;flex-wrap:wrap;gap:4px;margin-top:6px!important}.studio-visual-keywords em{padding:4px 6px;border-radius:999px;background:rgba(91,172,189,.09);color:#acd5dc;font-size:6px;font-style:normal}.studio-visual-palette{display:flex!important;gap:5px;margin-top:7px!important}.studio-visual-palette i{width:22px;height:22px;border:1px solid rgba(255,255,255,.18);border-radius:6px;background:var(--swatch);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.studio-ai-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:9px}.studio-apply-visual,.studio-generate-cover{display:block;width:100%;height:34px;border:1px solid rgba(92,206,223,.22);border-radius:8px;background:linear-gradient(90deg,rgba(28,132,145,.18),rgba(115,62,141,.15));color:#c4e9ec;font-size:8px;cursor:pointer}.studio-generate-cover{border-color:rgba(214,176,113,.28);background:linear-gradient(90deg,rgba(164,109,44,.17),rgba(101,72,42,.15));color:#ead3aa}.studio-apply-visual:hover{border-color:rgba(92,206,223,.42);background:linear-gradient(90deg,rgba(28,132,145,.28),rgba(115,62,141,.24))}.studio-generate-cover:hover{border-color:rgba(214,176,113,.48);background:linear-gradient(90deg,rgba(164,109,44,.26),rgba(101,72,42,.22))}.studio-ai-result-actions .hidden{display:none}
@media(max-width:620px){.studio-visual-plan{grid-template-columns:1fr}}

/* Dedicated AI visual-direction workspace. */
.studio-ai-launch-card{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin-bottom:18px;padding:13px 15px;border:1px solid rgba(91,172,189,.15);border-radius:12px;background:linear-gradient(135deg,rgba(35,101,116,.075),rgba(121,72,145,.045)),rgba(255,255,255,.016)}.studio-ai-launch-card>div{display:flex;align-items:center;gap:9px;min-width:0}.studio-ai-launch-card i{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;border-radius:8px;background:rgba(91,172,189,.1);color:#9fd1d8;font:7px/1 ui-monospace,monospace}.studio-ai-launch-card span,.studio-ai-launch-card strong,.studio-ai-launch-card small{display:block;min-width:0}.studio-ai-launch-card strong{font-size:8px}.studio-ai-launch-card small{margin-top:3px;overflow:hidden;color:rgba(255,255,255,.35);font-size:6px;text-overflow:ellipsis;white-space:nowrap}.studio-ai-launch-card>b{color:rgba(255,255,255,.18);font-size:10px}
.studio-ai-workbench{position:fixed;z-index:900;inset:0;display:grid;place-items:center;padding:28px;background:rgba(2,5,9,.3)}.studio-ai-workbench.hidden{display:none}.studio-ai-workbench-backdrop{position:absolute;inset:0;border:0;background:rgba(1,4,8,.72);backdrop-filter:blur(12px);cursor:default}.studio-ai-workbench-panel{position:relative;z-index:1;display:flex;width:min(980px,calc(100vw - 56px));height:auto;max-height:min(790px,calc(100dvh - 76px));flex-direction:column;overflow:hidden;border:1px solid rgba(130,192,205,.19);border-radius:18px;background:linear-gradient(155deg,#101820,#080d14 62%);box-shadow:0 30px 90px rgba(0,0,0,.62)}.studio-ai-workbench-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;border-bottom:1px solid rgba(255,255,255,.075);background:linear-gradient(90deg,rgba(38,109,123,.1),rgba(113,65,139,.065))}.studio-ai-workbench-header span,.studio-ai-workbench-header strong,.studio-ai-workbench-header small{display:block}.studio-ai-workbench-header span{color:#83c5d0;font:6px/1.3 ui-monospace,monospace;letter-spacing:.16em}.studio-ai-workbench-header strong{margin-top:4px;font-size:15px}.studio-ai-workbench-header small{margin-top:4px;color:rgba(255,255,255,.39);font-size:7px}.studio-ai-workbench-header>button{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.58);font-size:20px;cursor:pointer}.studio-ai-workbench-header>button:hover{border-color:rgba(255,255,255,.2);color:#fff}.studio-ai-workbench-scroll{min-height:0;overflow:auto;padding:17px 20px 24px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.13) transparent}.studio-ai-input-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.studio-ai-input-summary>div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.018)}.studio-ai-input-summary i,.studio-ai-input-summary strong,.studio-ai-input-summary small{display:block}.studio-ai-input-summary i{color:#d5b985;font-size:6px;font-style:normal}.studio-ai-input-summary strong{margin-top:5px;font-size:9px}.studio-ai-input-summary small{margin-top:4px;color:rgba(255,255,255,.34);font-size:6px;line-height:1.45}.studio-ai-workbench .studio-ai-director{margin:0;padding:13px}.studio-ai-workbench .studio-ai-connection-fields{grid-template-columns:repeat(3,minmax(150px,1fr))}.studio-ai-workbench .studio-ai-brief-field{grid-column:1/-1}.studio-ai-workbench .studio-ai-brief-field textarea{min-height:72px;resize:vertical}.studio-ai-primary-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px;padding:10px;border:1px solid rgba(92,206,223,.13);border-radius:10px;background:rgba(45,124,137,.045)}.studio-ai-primary-action button{height:34px;padding:0 14px;border:1px solid rgba(92,206,223,.27);border-radius:8px;background:linear-gradient(90deg,rgba(28,132,145,.22),rgba(115,62,141,.18));color:#c7edf0;font-size:8px;cursor:pointer}.studio-ai-primary-action small{color:rgba(255,255,255,.33);font-size:6px}.studio-ai-workbench-open{overflow:hidden!important}
html[data-desktop="true"] .studio-ai-workbench{top:36px}
@media(max-width:760px){.studio-ai-workbench{padding:10px}.studio-ai-workbench-panel{width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);border-radius:13px}.studio-ai-workbench-header{padding:13px}.studio-ai-workbench-header small{display:none}.studio-ai-workbench-scroll{padding:12px}.studio-ai-input-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-ai-workbench .studio-ai-connection-fields{grid-template-columns:1fr}.studio-ai-workbench .studio-ai-brief-field{grid-column:auto}.studio-ai-primary-action{align-items:stretch;flex-direction:column}.studio-ai-result-actions{grid-template-columns:1fr}.studio-ai-launch-card{grid-template-columns:1fr}.studio-ai-launch-card>b{display:none}html[data-desktop="true"] .studio-ai-workbench{top:36px}.studio-ai-workbench-panel{max-height:calc(100dvh - 56px)}}

/* Studio 17.1: three clean chrome rows — brand, project, then navigation/actions. */
html[data-mode="studio"] .studio-header{flex:0 0 62px;min-height:62px;padding:10px 160px 10px 18px;background:#090e14}
html[data-mode="studio"] .studio-toolbar{flex:0 0 54px;min-height:54px;padding:6px 16px;background:#0a1017}
html[data-mode="studio"] .studio-tabs{display:flex;flex:0 0 47px;min-height:47px;align-items:center;gap:0;padding:0 16px;overflow:hidden;background:#0b1118}
html[data-mode="studio"] .studio-tab{width:112px;height:47px;flex:0 0 112px}
html[data-mode="studio"] .studio-tabs .studio-toolbar-actions{margin-left:auto;flex:0 0 auto;align-items:center}
html[data-mode="studio"] .studio-message{top:171px}
html[data-desktop="true"] .desktop-drag-strip{height:62px;right:150px;background:transparent}
html[data-desktop="true"] .app-shell{height:100dvh;margin-top:0}
html[data-desktop="true"][data-mode="studio"] .director-panel{height:100dvh}
html[data-desktop="true"][data-mode="studio"] .studio-header{flex-basis:62px;min-height:62px;padding-top:10px;padding-bottom:10px}
html[data-desktop="true"][data-desktop-platform="darwin"] .studio-header{padding-left:18px;padding-right:94px}
html[data-desktop="true"] .studio-ai-workbench{top:0}

/* AI reference selection and a clean matte full-screen background. */
.studio-ai-workbench{background:#05090e}
.studio-ai-workbench-backdrop{background:#05090e;backdrop-filter:none}
.studio-ai-reference-section{margin-bottom:12px;padding:11px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:#0b1219}
.studio-ai-reference-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.studio-ai-reference-heading strong,.studio-ai-reference-heading small{display:block}.studio-ai-reference-heading strong{font-size:8px}.studio-ai-reference-heading small{margin-top:3px;color:rgba(255,255,255,.35);font-size:6px}.studio-ai-reference-actions{display:flex;gap:6px}.studio-ai-reference-heading button{height:29px;padding:0 10px;border:1px solid rgba(119,190,202,.2);border-radius:7px;background:rgba(65,139,153,.09);color:#b9dce1;font-size:7px;cursor:pointer}.studio-ai-reference-heading button:disabled{cursor:wait;opacity:.55}
.studio-ai-reference-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:9px}.studio-ai-reference-card{position:relative;min-width:0;height:74px;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#080d13;cursor:pointer}.studio-ai-reference-card img{display:block;width:100%;height:100%;object-fit:cover}.studio-ai-reference-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(2,5,8,.88),transparent 62%);pointer-events:none}.studio-ai-reference-card span{position:absolute;z-index:1;right:5px;bottom:5px;left:5px;overflow:hidden;color:rgba(255,255,255,.75);font-size:5px;text-overflow:ellipsis;white-space:nowrap}.studio-ai-reference-card i{position:absolute;z-index:2;top:5px;right:5px;display:none;width:17px;height:17px;place-items:center;border-radius:50%;background:#7ac6b5;color:#07100f;font:700 8px/1 sans-serif}.studio-ai-reference-card.active{border-color:rgba(122,198,181,.72);box-shadow:0 0 0 2px rgba(122,198,181,.12)}.studio-ai-reference-card.active i{display:grid}.studio-ai-reference-empty{grid-column:1/-1;padding:12px;border:1px dashed rgba(255,255,255,.08);border-radius:8px;color:rgba(255,255,255,.3);font-size:7px;text-align:center}
@media(max-width:1100px){html[data-mode="studio"] .studio-tabs{overflow-x:auto;scrollbar-width:none}html[data-mode="studio"] .studio-tabs .studio-toolbar-actions{padding-left:18px}.studio-ai-reference-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){html[data-mode="studio"] .studio-header{padding-right:92px}.studio-ai-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-ai-reference-heading{align-items:flex-start;flex-direction:column}.studio-ai-reference-actions{width:100%}.studio-ai-reference-heading button{flex:1}html[data-desktop="true"] .studio-ai-workbench{top:0}.studio-ai-workbench-panel{max-height:calc(100dvh - 20px)}}

/* Studio 20: account and API billing administration, backed by Panda AI cloud. */
.studio-admin-entry{position:relative;padding-left:24px!important;border-color:rgba(92,206,223,.24)!important;background:rgba(48,138,153,.09)!important;color:#b8dfe4!important}.studio-admin-entry i{position:absolute;left:10px;width:7px;height:7px;border:1px solid #83c9d3;border-radius:50%;box-shadow:0 0 9px rgba(84,207,221,.45)}
.studio-admin-workbench{position:fixed;z-index:980;inset:0;display:grid;place-items:center;padding:18px;background:#05090e}.studio-admin-workbench.hidden{display:none}.studio-admin-backdrop{position:absolute;inset:0;border:0;background:#05090e}.studio-admin-panel{position:relative;z-index:1;display:flex;width:min(1480px,calc(100vw - 36px));height:min(900px,calc(100dvh - 36px));min-height:620px;flex-direction:column;overflow:hidden;border:1px solid rgba(125,187,200,.19);border-radius:18px;background:#090f16;box-shadow:0 28px 90px rgba(0,0,0,.64)}
.studio-admin-header{display:flex;min-height:76px;flex:0 0 76px;align-items:center;justify-content:space-between;gap:24px;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.075);background:linear-gradient(90deg,rgba(42,112,127,.12),rgba(70,46,96,.055)),#0c131b}.studio-admin-brand,.studio-admin-account{display:flex;align-items:center}.studio-admin-brand{gap:13px}.studio-admin-brand img{width:42px;height:42px;border:1px solid rgba(255,255,255,.11);border-radius:12px;object-fit:cover}.studio-admin-brand span,.studio-admin-brand strong,.studio-admin-brand small{display:block}.studio-admin-brand span{color:#7ec5d0;font:700 8px/1.2 ui-monospace,monospace;letter-spacing:.17em}.studio-admin-brand strong{margin-top:5px;font-size:18px}.studio-admin-brand small{margin-top:4px;color:rgba(255,255,255,.38);font-size:10px}.studio-admin-account{gap:9px}.studio-admin-account>span{color:rgba(255,255,255,.68);font-size:11px}.studio-admin-account>em{padding:5px 8px;border-radius:999px;background:rgba(214,176,113,.1);color:#d9be8f;font-size:9px;font-style:normal}.studio-admin-account>button{display:grid;width:34px;height:34px;margin-left:8px;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.58);font-size:22px;cursor:pointer}
.studio-admin-body{display:grid;min-height:0;flex:1;grid-template-columns:220px minmax(0,1fr)}.studio-admin-nav{display:flex;min-height:0;flex-direction:column;gap:6px;padding:17px 12px;border-right:1px solid rgba(255,255,255,.065);background:#080e14}.studio-admin-nav>button{display:flex;min-height:58px;align-items:center;gap:11px;padding:0 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:rgba(255,255,255,.52);text-align:left;cursor:pointer}.studio-admin-nav>button:hover{background:rgba(255,255,255,.025);color:#eaf1f4}.studio-admin-nav>button.active{border-color:rgba(91,182,198,.18);background:linear-gradient(90deg,rgba(42,134,150,.15),rgba(42,134,150,.04));color:#d8eef1}.studio-admin-nav>button>i{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;border-radius:8px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.35);font:8px/1 ui-monospace,monospace}.studio-admin-nav>button.active>i{background:rgba(76,169,185,.15);color:#90d4dd}.studio-admin-nav>button span,.studio-admin-nav>button small{display:block}.studio-admin-nav>button span{font-size:12px;font-weight:650}.studio-admin-nav>button small{margin-top:4px;color:rgba(255,255,255,.3);font-size:9px;font-weight:400}.studio-admin-nav-note{margin-top:auto;padding:12px;border:1px solid rgba(214,176,113,.11);border-radius:10px;background:rgba(214,176,113,.035)}.studio-admin-nav-note strong,.studio-admin-nav-note span{display:block}.studio-admin-nav-note strong{color:#d6bc8e;font-size:10px}.studio-admin-nav-note span{margin-top:6px;color:rgba(255,255,255,.34);font-size:9px;line-height:1.6}
.studio-admin-content{min-width:0;min-height:0;overflow:auto;padding:0 20px 24px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.13) transparent}.studio-admin-toolbar{position:sticky;z-index:4;top:0;display:flex;min-height:64px;align-items:center;gap:11px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(9,15,22,.96)}.studio-admin-toolbar>div{margin-right:auto}.studio-admin-toolbar>div span,.studio-admin-toolbar>div small{display:block}.studio-admin-toolbar>div span{font-size:12px;font-weight:700}.studio-admin-toolbar>div small{margin-top:4px;color:rgba(255,255,255,.34);font-size:9px}.studio-admin-toolbar label{display:flex;align-items:center;gap:7px;color:rgba(255,255,255,.42);font-size:9px}.studio-admin-toolbar input,.studio-admin-toolbar button{height:32px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#111922;color:#e9eef1;font-size:10px}.studio-admin-toolbar input{padding:0 9px}.studio-admin-toolbar button{padding:0 12px;cursor:pointer}.studio-admin-toolbar button:hover{border-color:rgba(100,193,207,.3);background:rgba(57,143,158,.09)}
.studio-admin-section{display:none;padding-top:17px}.studio-admin-section.active{display:block}.studio-admin-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.studio-admin-cards.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.studio-admin-stat{min-width:0;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:linear-gradient(145deg,rgba(54,116,128,.055),rgba(255,255,255,.014))}.studio-admin-stat span,.studio-admin-stat strong,.studio-admin-stat small{display:block}.studio-admin-stat span{color:rgba(255,255,255,.4);font-size:9px}.studio-admin-stat strong{margin-top:8px;overflow:hidden;color:#f0f4f5;font-size:20px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.studio-admin-stat small{margin-top:7px;color:rgba(255,255,255,.27);font-size:8px}.studio-admin-stat.accent{border-color:rgba(100,192,205,.18);background:linear-gradient(145deg,rgba(48,145,160,.11),rgba(48,145,160,.025))}.studio-admin-stat.accent strong{color:#a9dde4}.studio-admin-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:12px;margin-top:12px}.studio-admin-card{min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:#0c131b}.studio-admin-card.full{width:100%}.studio-admin-card>header{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:14px;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.055)}.studio-admin-card>header strong,.studio-admin-card>header small{display:block}.studio-admin-card>header strong{font-size:12px}.studio-admin-card>header small{margin-top:4px;color:rgba(255,255,255,.32);font-size:8px}.studio-admin-card>header>button{height:31px;padding:0 11px;border:1px solid rgba(96,190,203,.22);border-radius:8px;background:rgba(51,143,158,.1);color:#bde1e5;font-size:9px;cursor:pointer}.studio-admin-table-wrap{max-width:100%;overflow:auto}.studio-admin-card table{width:100%;border-collapse:collapse;font-size:9px}.studio-admin-card th{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.055);color:rgba(255,255,255,.33);font-weight:500;text-align:left;white-space:nowrap}.studio-admin-card td{padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.04);color:rgba(255,255,255,.66);vertical-align:middle}.studio-admin-card tbody tr:last-child td{border-bottom:0}.studio-admin-card tbody tr:hover{background:rgba(255,255,255,.016)}.studio-admin-card td strong,.studio-admin-card td small{display:block}.studio-admin-card td strong{color:#e9eff1;font-size:10px}.studio-admin-card td small{margin-top:3px;color:rgba(255,255,255,.29);font-size:8px}.studio-admin-table-empty{padding:26px!important;color:rgba(255,255,255,.3)!important;text-align:center}.studio-admin-pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.58);font-size:8px}.studio-admin-pill.ok{background:rgba(90,179,151,.1);color:#9bd2c2}.studio-admin-pill.warn{background:rgba(214,176,113,.11);color:#ddc293}.studio-admin-pill.error{background:rgba(205,89,102,.1);color:#dba0a7}.studio-admin-table-action{height:26px;padding:0 8px;border:1px solid rgba(255,255,255,.09);border-radius:6px;background:rgba(255,255,255,.03);color:rgba(255,255,255,.64);font-size:8px;cursor:pointer}.studio-admin-table-action:hover{border-color:rgba(89,184,199,.28);color:#cae7ea}.studio-admin-activity{display:grid;max-height:360px;overflow:auto}.studio-admin-activity>div{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;padding:11px 13px;border-bottom:1px solid rgba(255,255,255,.045)}.studio-admin-activity>div:last-child{border-bottom:0}.studio-admin-activity i{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#d4b372;box-shadow:0 0 8px rgba(212,179,114,.2)}.studio-admin-activity strong,.studio-admin-activity small{display:block}.studio-admin-activity strong{font-size:9px}.studio-admin-activity small{margin-top:4px;color:rgba(255,255,255,.3);font-size:8px}.studio-admin-activity em{color:rgba(255,255,255,.35);font-size:8px;font-style:normal}.studio-admin-notice{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.045);color:rgba(255,255,255,.4);font-size:9px;line-height:1.5}
.studio-admin-empty{display:grid;min-height:410px;place-items:center;align-content:center;text-align:center}.studio-admin-empty img{width:64px;height:64px;border-radius:17px}.studio-admin-empty strong{margin-top:15px;font-size:16px}.studio-admin-empty span{max-width:470px;margin-top:8px;color:rgba(255,255,255,.4);font-size:10px;line-height:1.7}.studio-admin-model-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px;padding:14px;border:1px solid rgba(91,177,192,.13);border-radius:12px;background:rgba(46,129,143,.05)}.studio-admin-model-intro strong{font-size:12px}.studio-admin-model-intro span{max-width:720px;color:rgba(255,255,255,.38);font-size:9px;line-height:1.6}.studio-admin-model-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.studio-admin-model{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:#0c131b}.studio-admin-model>i{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;background:linear-gradient(135deg,rgba(64,164,178,.18),rgba(123,72,157,.12));color:#afdce1;font:700 10px/1 ui-monospace,monospace}.studio-admin-model strong,.studio-admin-model small,.studio-admin-model span{display:block}.studio-admin-model strong{font-size:11px}.studio-admin-model small{margin-top:4px;color:rgba(255,255,255,.32);font-size:8px;line-height:1.5}.studio-admin-model span{margin-top:6px;color:rgba(255,255,255,.27);font:8px/1.4 ui-monospace,monospace}.studio-admin-model>em{padding:5px 8px;border-radius:999px;background:rgba(90,179,151,.1);color:#99d1c0;font-size:8px;font-style:normal}.studio-admin-model>em.off{background:rgba(205,89,102,.09);color:#d59ca3}
.studio-admin-user-modal{position:absolute;z-index:10;inset:0;display:grid;place-items:center;padding:20px;background:rgba(3,6,10,.78)}.studio-admin-user-modal.hidden{display:none}.studio-admin-user-modal>button{position:absolute;inset:0;border:0;background:transparent}.studio-admin-user-modal form{position:relative;z-index:1;width:min(520px,calc(100vw - 40px));padding:0 18px 18px;border:1px solid rgba(120,188,201,.2);border-radius:15px;background:#101821;box-shadow:0 25px 70px rgba(0,0,0,.62)}.studio-admin-user-modal form>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding:15px 0 12px;border-bottom:1px solid rgba(255,255,255,.065)}.studio-admin-user-modal header span,.studio-admin-user-modal header strong{display:block}.studio-admin-user-modal header span{color:#83c8d1;font:7px/1 ui-monospace,monospace;letter-spacing:.14em}.studio-admin-user-modal header strong{margin-top:5px;font-size:15px}.studio-admin-user-modal header button{border:0;background:transparent;color:rgba(255,255,255,.45);font-size:21px;cursor:pointer}.studio-admin-user-modal label{display:grid;gap:6px;margin-top:10px}.studio-admin-user-modal label>span{color:rgba(255,255,255,.43);font-size:9px}.studio-admin-user-modal input,.studio-admin-user-modal select{width:100%;height:38px;padding:0 10px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#0b1219;color:#edf2f4;font-size:10px;outline:none}.studio-admin-user-modal input:focus,.studio-admin-user-modal select:focus{border-color:rgba(91,190,204,.4)}.studio-admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.studio-admin-user-modal p{margin:12px 0 0;color:rgba(255,255,255,.34);font-size:8px;line-height:1.6}.studio-admin-user-modal footer{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.studio-admin-user-modal footer button{height:34px;padding:0 13px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.62);font-size:9px;cursor:pointer}.studio-admin-user-modal footer button.primary{border-color:rgba(91,190,204,.28);background:rgba(48,143,157,.14);color:#c6e8ec}.studio-admin-user-modal footer button.danger{margin-right:auto;border-color:rgba(204,87,100,.23);background:rgba(204,87,100,.075);color:#d9a0a6}.studio-admin-user-modal footer button:disabled{opacity:.42;cursor:not-allowed}
.studio-admin-workbench-open{overflow:hidden!important}
@media(max-width:1050px){.studio-admin-panel{width:calc(100vw - 18px);height:calc(100dvh - 18px)}.studio-admin-body{grid-template-columns:174px minmax(0,1fr)}.studio-admin-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-admin-grid{grid-template-columns:1fr}.studio-admin-header{padding:0 15px}.studio-admin-brand small{display:none}.studio-admin-model-cards{grid-template-columns:1fr}}
@media(max-width:720px){.studio-admin-workbench{padding:0}.studio-admin-panel{width:100vw;height:100dvh;min-height:0;border:0;border-radius:0}.studio-admin-header{min-height:66px;flex-basis:66px}.studio-admin-brand img{width:36px;height:36px}.studio-admin-brand strong{font-size:14px}.studio-admin-account>span{display:none}.studio-admin-body{display:block}.studio-admin-nav{display:grid;min-height:auto;grid-template-columns:repeat(4,1fr);padding:7px;border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.studio-admin-nav>button{min-height:50px;justify-content:center;padding:0 5px}.studio-admin-nav>button>i,.studio-admin-nav>button small,.studio-admin-nav-note{display:none}.studio-admin-nav>button span{font-size:10px}.studio-admin-content{height:calc(100dvh - 123px);padding:0 10px 18px}.studio-admin-cards,.studio-admin-cards.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-admin-toolbar{flex-wrap:wrap;padding:9px 0}.studio-admin-toolbar>div{flex-basis:100%}.studio-admin-model-intro{align-items:flex-start;flex-direction:column}.studio-admin-form-grid{grid-template-columns:1fr}}
