:root {
  color-scheme: dark;
  --bg: #080907;
  --surface: #10110e;
  --surface-2: #151611;
  --surface-3: #1b1b15;
  --line: rgba(244, 234, 203, .12);
  --line-strong: rgba(231, 201, 105, .34);
  --text: #f5f1e8;
  --muted: rgba(245, 241, 232, .53);
  --soft: rgba(245, 241, 232, .34);
  --gold: #e8ca6b;
  --gold-light: #f5dda0;
  --gold-dark: #b98530;
  --blue: #93b6ff;
  --green: #6fd9a8;
  --sidebar: 228px;
  --topbar: 64px;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html, body { width: 100%; min-width: 1024px; height: 100%; margin: 0; overflow: hidden; }
body {
  color: var(--text);
  background:
    radial-gradient(circle at 68% -10%, rgba(208, 169, 71, .10), transparent 33rem),
    radial-gradient(circle at 95% 92%, rgba(61, 91, 72, .08), transparent 34rem),
    var(--bg);
}
button, input, textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }

.studio-shell { width: 100%; height: 100%; display: grid; grid-template-columns: var(--sidebar) minmax(0, 1fr); grid-template-rows: var(--topbar) minmax(0, 1fr); }
.studio-sidebar { grid-row: 1 / -1; position: relative; z-index: 4; display: flex; min-height: 0; flex-direction: column; padding: 18px 14px 14px; border-right: 1px solid var(--line); background: rgba(10, 11, 9, .95); box-shadow: 24px 0 70px rgba(0, 0, 0, .18); }
.studio-sidebar::after { content: ""; position: absolute; inset: 0 0 auto; height: 190px; background: radial-gradient(circle at 18% 0, rgba(226, 193, 92, .10), transparent 68%); pointer-events: none; }

.studio-brand { position: relative; z-index: 1; display: flex; align-items: center; gap: 11px; width: 100%; padding: 0 5px 17px; border: 0; color: var(--text); background: transparent; text-align: left; cursor: pointer; }
.studio-brand-mark { width: 36px; height: 36px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 11px; color: #16140d; background: linear-gradient(145deg, #f8e4a7, #c89a3d); box-shadow: 0 10px 28px rgba(221, 180, 74, .17), inset 0 1px rgba(255,255,255,.6); font-size: 12px; font-weight: 950; letter-spacing: -.04em; }
.studio-brand > span:last-child { min-width: 0; display: grid; gap: 2px; }
.studio-brand b { font-size: 15px; letter-spacing: -.035em; }
.studio-brand small { color: var(--soft); font-size: 8px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }

.studio-create { position: relative; z-index: 1; min-height: 44px; display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: center; gap: 8px; width: 100%; margin: 4px 0 16px; padding: 0 11px; border: 1px solid rgba(247, 226, 153, .38); border-radius: 12px; color: #18160e; background: linear-gradient(135deg, #f3dc91, #c5953c); box-shadow: 0 11px 26px rgba(217, 176, 67, .12); cursor: pointer; }
.studio-create > span { font-size: 20px; font-weight: 400; }
.studio-create b { font-size: 11px; text-align: left; }

.studio-navigation { display: grid; gap: 3px; }
.studio-navigation button { min-height: 41px; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 8px; width: 100%; padding: 0 10px; border: 1px solid transparent; border-radius: 10px; color: rgba(245, 241, 232, .58); background: transparent; text-align: left; cursor: pointer; transition: color .16s ease, border-color .16s ease, background .16s ease, transform .16s ease; }
.studio-navigation button:hover { color: var(--text); background: rgba(255,255,255,.04); transform: translateX(1px); }
.studio-navigation button.is-active { color: var(--gold-light); border-color: rgba(230, 198, 100, .20); background: linear-gradient(90deg, rgba(226, 193, 92, .14), rgba(226, 193, 92, .025)); }
.studio-navigation i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: rgba(244, 218, 133, .74); background: rgba(255,255,255,.028); font-size: 13px; font-style: normal; }
.studio-navigation button.is-active i { color: #1c190f; background: linear-gradient(145deg, var(--gold-light), #c99a3d); }
.studio-navigation span { font-size: 11px; font-weight: 760; }
.studio-navigation em { color: rgba(245, 241, 232, .29); font-size: 8px; font-style: normal; font-weight: 850; }
.studio-navigation-secondary button { min-height: 37px; }
.studio-navigation-secondary i { background: transparent; font-size: 11px; }
.studio-sidebar-caption { display: flex; align-items: center; gap: 10px; margin: 18px 10px 8px; color: rgba(245, 241, 232, .24); font-size: 8px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.studio-sidebar-caption::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, var(--line), transparent); }

html.cv-studio-simple .studio-sidebar-caption,
html.cv-studio-simple .studio-navigation-secondary [data-filter-target] { display: none; }
html.cv-studio-simple .studio-navigation-secondary { margin-top: 7px; }
html.cv-studio-simple .studio-favorites { display: none; }
html.cv-studio-simple .studio-dashboard-grid { grid-template-columns: 1fr; }
html.cv-studio-simple .studio-navigation-secondary:empty { display: none; }

.studio-sidebar-bottom { display: grid; gap: 9px; margin-top: auto; }
.studio-plan { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 10px; padding: 12px; border: 1px solid rgba(227, 195, 96, .16); border-radius: 13px; background: radial-gradient(circle at 100% 0, rgba(227, 195, 96, .12), transparent 55%), rgba(255,255,255,.02); }
.studio-plan span { color: var(--soft); font-size: 8px; font-weight: 800; letter-spacing: .10em; text-transform: uppercase; }
.studio-plan b { font-size: 15px; }
.studio-plan button { grid-row: 1 / 3; grid-column: 2; height: 28px; border: 1px solid var(--line-strong); border-radius: 8px; padding: 0 9px; color: var(--gold-light); background: rgba(226, 193, 92, .08); font-size: 8px; font-weight: 850; cursor: pointer; }
.studio-profile { min-height: 50px; display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; align-items: center; gap: 9px; width: 100%; padding: 7px 8px; border: 1px solid transparent; border-radius: 12px; color: var(--text); background: transparent; text-align: left; cursor: pointer; }
.studio-profile:hover { border-color: var(--line); background: rgba(255,255,255,.025); }
.studio-avatar { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid rgba(246, 221, 144, .30); border-radius: 10px; color: var(--gold-light); background: #222016; font-size: 11px; font-weight: 900; }
.studio-profile > span:nth-child(2) { display: grid; gap: 3px; }
.studio-profile b { font-size: 10px; }
.studio-profile small { color: var(--soft); font-size: 8px; }
.studio-profile > i { color: var(--soft); font-style: normal; }

.studio-topbar { grid-column: 2; position: relative; z-index: 3; min-width: 0; display: grid; grid-template-columns: minmax(180px, 1fr) minmax(300px, 520px) minmax(250px, 1fr); align-items: center; gap: 20px; padding: 0 25px; border-bottom: 1px solid var(--line); background: rgba(10, 11, 9, .84); backdrop-filter: blur(18px); }
.studio-breadcrumb { min-width: 0; display: flex; gap: 8px; color: var(--soft); font-size: 10px; font-weight: 700; }
.studio-breadcrumb i { color: rgba(232, 202, 107, .45); font-style: normal; }
.studio-breadcrumb b { overflow: hidden; color: var(--gold-light); white-space: nowrap; text-overflow: ellipsis; }
.studio-search { min-height: 38px; display: grid; grid-template-columns: 24px minmax(0,1fr) auto; align-items: center; gap: 7px; width: 100%; padding: 0 10px; border: 1px solid var(--line); border-radius: 11px; color: var(--soft); background: rgba(255,255,255,.025); text-align: left; cursor: pointer; }
.studio-search > span:first-child { color: var(--gold); font-size: 18px; }
.studio-search > span:nth-child(2) { font-size: 10px; }
.studio-search kbd { padding: 4px 6px; border: 1px solid var(--line); border-radius: 6px; color: var(--soft); background: rgba(255,255,255,.03); font-size: 8px; }
.studio-top-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.studio-status { min-height: 34px; display: flex; align-items: center; gap: 7px; border: 0; padding: 0 9px; color: var(--soft); background: transparent; font-size: 8px; cursor: default; }
.studio-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(111,217,168,.08); }
.studio-icon-button { position: relative; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: rgba(255,255,255,.025); cursor: pointer; }
.studio-icon-button em { position: absolute; top: -4px; right: -4px; width: 15px; height: 15px; display: grid; place-items: center; border-radius: 50%; color: #17140d; background: var(--gold); font-size: 7px; font-style: normal; font-weight: 900; }

.studio-main { grid-column: 2; min-width: 0; overflow: auto; scroll-behavior: smooth; background-image: linear-gradient(rgba(249,238,204,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(249,238,204,.018) 1px, transparent 1px); background-size: 44px 44px; }
.studio-view { display: none; width: min(100%, 1500px); min-height: 100%; margin: 0 auto; padding: 38px clamp(26px, 3.1vw, 54px) 56px; opacity: 0; transform: translateY(8px); }
.studio-view.is-active { display: block; animation: studioViewIn .26s cubic-bezier(.2,.8,.2,1) forwards; }
@keyframes studioViewIn { to { opacity: 1; transform: none; } }
.studio-kicker, .studio-section-label { color: var(--gold); font-size: 8px; font-weight: 950; letter-spacing: .17em; text-transform: uppercase; }

.studio-welcome { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; padding: 8px 2px 30px; }
.studio-welcome h1 { margin: 12px 0 12px; font-size: clamp(44px, 5.2vw, 78px); line-height: .91; letter-spacing: -.067em; }
.studio-welcome h1 em { color: var(--gold-light); font-style: normal; }
.studio-welcome p { margin: 0; color: var(--muted); font-size: 13px; }
.studio-primary, .studio-secondary { min-height: 43px; border-radius: 11px; padding: 0 15px; font-size: 10px; font-weight: 900; cursor: pointer; }
.studio-primary { border: 0; color: #17140c; background: linear-gradient(135deg, var(--gold-light), var(--gold-dark)); box-shadow: 0 12px 30px rgba(211, 166, 55, .13); }
.studio-primary span { margin-left: 14px; }
.studio-secondary { border: 1px solid var(--line); color: var(--text); background: rgba(255,255,255,.025); }

.studio-home-hub { display: none; }
html.cv-studio-home-hub .studio-home-hub { display: block; }
html.cv-studio-home-hub .studio-view[data-view="home"] > .studio-welcome,
html.cv-studio-home-hub .studio-view[data-view="home"] > .studio-start-grid { display: none; }
html.cv-studio-home-hub .studio-view[data-view="home"] > .studio-dashboard-grid { margin-top: 40px; }

.studio-home-hero { position: relative; min-height: 350px; display: grid; grid-template-columns: minmax(480px, 1.06fr) minmax(380px, .94fr); align-items: center; gap: 34px; overflow: hidden; padding: 48px clamp(38px, 4vw, 66px); border: 1px solid rgba(231,201,105,.25); border-radius: 28px; background: radial-gradient(circle at 83% 18%, rgba(229,194,92,.17), transparent 24rem), radial-gradient(circle at 12% 100%, rgba(104,139,126,.09), transparent 28rem), linear-gradient(145deg,#17170f,#0d0f0c 67%); box-shadow: 0 34px 90px rgba(0,0,0,.24); }
.studio-home-hero::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px); background-size:46px 46px; mask-image:linear-gradient(90deg,#000,transparent 72%); }
.studio-home-hero-copy { position: relative; z-index: 2; }
.studio-home-hero h1 { max-width: 710px; margin: 15px 0 17px; font-size: clamp(48px,5vw,76px); line-height:.92; letter-spacing:-.068em; }
.studio-home-hero h1 em { color:var(--gold-light); font-style:normal; }
.studio-home-hero p { max-width:610px; margin:0; color:rgba(245,241,232,.63); font-size:13px; line-height:1.65; }
.studio-home-hero-actions { display:flex; gap:10px; margin-top:25px; }
.studio-home-hero-actions .studio-primary,.studio-home-hero-actions .studio-secondary { min-height:48px; padding-inline:20px; }
.studio-home-hero-visual { position:relative; align-self:stretch; min-height:250px; }
.studio-home-hero-frame { position:absolute; display:block; overflow:hidden; border:1px solid rgba(242,220,148,.26); background:#151712; box-shadow:0 28px 70px rgba(0,0,0,.38); }
.studio-home-hero-frame img { width:100%; height:100%; display:block; object-fit:cover; filter:saturate(.88) contrast(1.04); }
.studio-home-hero-frame::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,transparent 62%,rgba(8,9,7,.42)); }
.studio-home-hero-frame-main { right:4%; top:5%; width:68%; height:88%; border-radius:24px; transform:rotate(2.5deg); }
.studio-home-hero-frame-side { left:3%; bottom:4%; width:42%; height:65%; border-radius:20px; transform:rotate(-5deg); }
.studio-home-hero-badge { position:absolute; z-index:3; right:0; bottom:3%; min-width:96px; display:grid; justify-items:center; gap:2px; padding:14px 16px; border:1px solid rgba(247,225,153,.34); border-radius:18px; color:#17140d; background:linear-gradient(145deg,#f6dfa0,#bd8833); box-shadow:0 18px 42px rgba(0,0,0,.3); }
.studio-home-hero-badge i { font-size:28px; line-height:1; font-style:normal; font-weight:950; letter-spacing:-.06em; }
.studio-home-hero-badge small { font-size:7px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }

.studio-home-section { margin-top:42px; }
.studio-home-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:16px; padding:0 3px; }
.studio-home-section-head h2 { margin:6px 0 0; font-size:clamp(24px,2.2vw,33px); line-height:1; letter-spacing:-.052em; }
.studio-home-section-head > p { max-width:430px; margin:0; color:var(--soft); font-size:9px; line-height:1.55; text-align:right; }
.studio-home-section-head > button { border:0; padding:0 2px; color:var(--gold-light); background:transparent; font-size:9px; font-weight:850; cursor:pointer; }

.studio-home-task-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
.studio-home-task { position:relative; min-width:0; min-height:126px; display:grid; grid-template-columns:46px minmax(0,1fr) auto; align-items:center; gap:13px; padding:18px; overflow:hidden; border:1px solid var(--line); border-radius:17px; color:var(--text); background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012)); text-align:left; cursor:pointer; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.studio-home-task:hover { transform:translateY(-3px); border-color:var(--line-strong); box-shadow:0 20px 46px rgba(0,0,0,.22); }
.studio-home-task.is-featured { border-color:rgba(231,201,105,.31); background:radial-gradient(circle at 0 0,rgba(231,201,105,.14),transparent 65%),rgba(255,255,255,.025); }
.studio-home-task > i { width:46px; height:46px; display:grid; place-items:center; border:1px solid rgba(231,201,105,.22); border-radius:14px; color:var(--gold-light); background:rgba(231,201,105,.07); font-size:17px; font-style:normal; }
.studio-home-task > span { min-width:0; display:grid; gap:5px; }
.studio-home-task small { color:var(--gold); font-size:6px; font-weight:950; letter-spacing:.14em; }
.studio-home-task b { font-size:15px; letter-spacing:-.035em; }
.studio-home-task em { overflow:hidden; color:var(--soft); font-size:8px; line-height:1.35; font-style:normal; white-space:nowrap; text-overflow:ellipsis; }
.studio-home-task > strong { color:var(--gold); font-size:15px; font-weight:500; }

.studio-home-ad-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:11px; }
.studio-home-ad-card { min-width:0; display:grid; align-content:start; gap:7px; overflow:hidden; padding:0 14px 15px; border:1px solid var(--line); border-radius:18px; color:var(--text); background:var(--surface); text-align:left; cursor:pointer; transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.studio-home-ad-card:hover { transform:translateY(-3px); border-color:var(--line-strong); box-shadow:0 23px 54px rgba(0,0,0,.24); }
.studio-home-ad-card > span { position:relative; height:136px; display:block; overflow:hidden; margin:0 -14px 6px; background:#171813; }
.studio-home-ad-card > span::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,var(--surface)); }
.studio-home-ad-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .45s ease; }
.studio-home-ad-card:hover img { transform:scale(1.035); }
.studio-home-ad-card > small,.studio-home-solution-grid small { color:var(--gold); font-size:6px; font-weight:950; letter-spacing:.15em; }
.studio-home-ad-card > b { min-height:34px; font-size:16px; line-height:1.05; letter-spacing:-.04em; }
.studio-home-ad-card > em { min-height:34px; color:var(--muted); font-size:8px; line-height:1.45; font-style:normal; }
.studio-home-ad-card > i,.studio-home-solution-grid i { margin-top:4px; color:var(--gold-light); font-size:8px; font-style:normal; font-weight:850; }

.studio-home-model-head { align-items:center; }
.studio-home-model-actions { display:flex; align-items:center; gap:9px; }
.studio-home-model-tabs { display:flex; gap:3px; padding:3px; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.02); }
.studio-home-model-tabs button { min-height:35px; border:0; border-radius:8px; padding:0 13px; color:var(--soft); background:transparent; font-size:8px; font-weight:850; cursor:pointer; }
.studio-home-model-tabs button.is-active { color:#18150e; background:linear-gradient(135deg,var(--gold-light),#c99a3d); }
.studio-home-all-models { min-height:41px; border:1px solid var(--line); border-radius:11px; padding:0 13px; color:var(--gold-light); background:rgba(255,255,255,.025); font-size:8px; font-weight:850; cursor:pointer; }
.studio-home-model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.studio-home-model-card { min-width:0; min-height:116px; display:grid; grid-template-columns:112px minmax(0,1fr); overflow:hidden; padding:0; border:1px solid var(--line); border-radius:16px; color:var(--text); background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.01)); text-align:left; cursor:pointer; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.studio-home-model-card:hover { transform:translateY(-2px); border-color:var(--line-strong); box-shadow:0 18px 42px rgba(0,0,0,.2); }
.studio-home-model-card > span:first-child { position:relative; min-width:0; overflow:hidden; background:#191a16; }
.studio-home-model-card > span:first-child::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 62%,rgba(15,16,13,.48)); }
.studio-home-model-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .4s ease; }
.studio-home-model-card:hover img { transform:scale(1.04); }
.studio-home-model-card > span:last-child { min-width:0; display:grid; align-content:center; gap:6px; padding:15px; }
.studio-home-model-card small { color:var(--gold); font-size:6px; font-weight:900; letter-spacing:.12em; }
.studio-home-model-card b { overflow:hidden; font-size:14px; letter-spacing:-.035em; white-space:nowrap; text-overflow:ellipsis; }
.studio-home-model-card em { min-height:24px; color:var(--muted); font-size:8px; line-height:1.4; font-style:normal; }
.studio-home-model-card strong { padding-top:6px; border-top:1px solid rgba(245,241,232,.07); color:var(--gold-light); font-size:8px; }

.studio-home-solution-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.studio-home-solution-grid > button { min-width:0; min-height:178px; display:grid; grid-template-columns:42% minmax(0,1fr); grid-template-rows:auto auto auto auto; align-content:center; column-gap:16px; overflow:hidden; padding:0 18px 0 0; border:1px solid var(--line); border-radius:18px; color:var(--text); background:var(--surface); text-align:left; cursor:pointer; transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.studio-home-solution-grid > button:hover { transform:translateY(-3px); border-color:var(--line-strong); box-shadow:0 23px 54px rgba(0,0,0,.23); }
.studio-home-solution-grid > button > span { grid-row:1 / 5; height:100%; overflow:hidden; background:#171813; }
.studio-home-solution-grid img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .45s ease; }
.studio-home-solution-grid button:hover img { transform:scale(1.04); }
.studio-home-solution-grid b { margin-top:7px; font-size:17px; letter-spacing:-.04em; }
.studio-home-solution-grid em { margin-top:7px; color:var(--muted); font-size:8px; line-height:1.45; font-style:normal; }
.studio-home-solution-grid i { margin-top:11px; }

.studio-platform-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.studio-platform-card { position:relative; min-width:0; min-height:170px; display:grid; grid-template-columns:55px minmax(0,1fr); grid-template-rows:auto auto auto 1fr; align-content:center; column-gap:15px; overflow:hidden; padding:23px; border:1px solid var(--line); border-radius:18px; color:var(--text); background:linear-gradient(145deg,rgba(255,255,255,.037),rgba(255,255,255,.012)); text-decoration:none; transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.studio-platform-card::before { content:""; position:absolute; inset:auto -45px -75px auto; width:155px; height:155px; border-radius:50%; background:rgba(231,201,105,.07); filter:blur(2px); }
.studio-platform-card:hover { transform:translateY(-3px); border-color:var(--line-strong); box-shadow:0 23px 54px rgba(0,0,0,.23); }
.studio-platform-card.is-current { border-color:rgba(231,201,105,.31); background:radial-gradient(circle at 0 0,rgba(231,201,105,.13),transparent 68%),rgba(255,255,255,.018); }
.studio-platform-card > span { grid-row:1 / 5; width:55px; height:55px; display:grid; place-items:center; align-self:start; border:1px solid rgba(231,201,105,.27); border-radius:16px; color:#18150d; background:linear-gradient(145deg,var(--gold-light),#c28e34); box-shadow:0 13px 30px rgba(0,0,0,.23); font-size:12px; font-weight:950; }
.studio-platform-card > small { color:var(--gold); font-size:6px; font-weight:950; letter-spacing:.15em; }
.studio-platform-card > b { margin-top:7px; font-size:17px; line-height:1.05; letter-spacing:-.04em; }
.studio-platform-card > em { max-width:310px; margin-top:8px; color:var(--muted); font-size:8px; line-height:1.5; font-style:normal; }
.studio-platform-card > i { align-self:end; margin-top:13px; color:var(--gold-light); font-size:8px; font-style:normal; font-weight:850; }
.studio-faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.studio-faq-grid details { min-width:0; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.021); transition:border-color .2s ease,background .2s ease; }
.studio-faq-grid details[open] { border-color:rgba(231,201,105,.24); background:rgba(231,201,105,.035); }
.studio-faq-grid summary { min-height:62px; display:grid; grid-template-columns:minmax(0,1fr) 28px; align-items:center; gap:14px; padding:15px 17px; list-style:none; cursor:pointer; font-size:10px; font-weight:850; line-height:1.35; }
.studio-faq-grid summary::-webkit-details-marker { display:none; }
.studio-faq-grid summary i { width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--line); border-radius:9px; color:var(--gold-light); font-size:11px; font-style:normal; transition:transform .2s ease; }
.studio-faq-grid details[open] summary i { transform:rotate(45deg); }
.studio-faq-grid p { margin:-3px 17px 17px; padding-top:12px; border-top:1px solid rgba(245,241,232,.07); color:var(--muted); font-size:9px; line-height:1.65; }

.studio-start-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-bottom: 14px; }
.studio-start-card { position: relative; min-width: 0; min-height: 238px; display: grid; grid-template-columns: 44% minmax(0, 1fr); align-items: end; overflow: hidden; padding: 0; border: 1px solid var(--line); border-radius: 21px; color: var(--text); background: linear-gradient(145deg, rgba(255,255,255,.04), rgba(255,255,255,.015)); text-align: left; cursor: pointer; transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
.studio-start-card:hover { transform: translateY(-3px); border-color: var(--line-strong); box-shadow: 0 23px 54px rgba(0,0,0,.26); }
.studio-card-media { position: absolute; inset: 0; display: block; }
.studio-card-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 20%, rgba(11,12,10,.72) 57%, #10110e 86%); }
.studio-card-media img { width: 64%; height: 100%; object-fit: cover; filter: saturate(.82) contrast(1.03); }
.studio-card-media i { position: absolute; z-index: 2; top: 15px; left: 15px; width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 9px; color: var(--gold-light); background: rgba(6,7,6,.72); font-style: normal; }
.studio-card-copy { position: relative; z-index: 2; grid-column: 2; display: grid; gap: 9px; padding: 27px 22px 27px 0; }
.studio-card-copy small { color: var(--gold); font-size: 7px; font-weight: 950; letter-spacing: .14em; }
.studio-card-copy b { font-size: clamp(21px, 2vw, 29px); line-height: .96; letter-spacing: -.05em; }
.studio-card-copy em { max-width: 190px; color: var(--muted); font-size: 9px; line-height: 1.45; font-style: normal; }
.studio-card-arrow { position: absolute; z-index: 3; right: 12px; top: 12px; width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 9px; color: var(--gold-light); background: rgba(7,8,7,.58); font-size: 13px; }

.studio-dashboard-grid { display: grid; grid-template-columns: 1fr; gap: 10px; margin-bottom: 10px; }
.studio-panel { border: 1px solid var(--line); border-radius: 16px; padding: 14px; background: linear-gradient(145deg, rgba(255,255,255,.035), rgba(255,255,255,.012)); }
.studio-panel > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 11px; }
.studio-panel h2 { margin: 4px 0 0; font-size: 16px; letter-spacing: -.045em; }
.studio-panel > header button { border: 0; padding: 0; color: var(--soft); background: transparent; font-size: 8px; font-weight: 800; cursor: pointer; }
.studio-panel > header button:hover { color: var(--gold-light); }
.studio-progress-card { min-width: 0; display: grid; grid-template-columns: 70px minmax(0,1fr) auto; align-items: center; gap: 13px; padding: 10px; border: 1px solid rgba(245,241,232,.08); border-radius: 13px; background: rgba(0,0,0,.18); }
.studio-progress-card > img { width: 70px; height: 52px; object-fit: cover; border-radius: 9px; }
.studio-progress-card > div { min-width: 0; display: grid; gap: 5px; }
.studio-progress-card small { color: var(--gold); font-size: 7px; font-weight: 900; letter-spacing: .09em; }
.studio-progress-card b { overflow: hidden; font-size: 11px; white-space: nowrap; text-overflow: ellipsis; }
.studio-progress-card span { height: 3px; overflow: hidden; border-radius: 9px; background: rgba(255,255,255,.08); }
.studio-progress-card span i { display: block; width: var(--progress); height: 100%; background: linear-gradient(90deg, #b88932, #f2d77d); }
.studio-progress-card em { color: var(--soft); font-size: 8px; font-style: normal; }
.studio-progress-card > strong { color: var(--gold-light); font-size: 18px; }
.studio-live-skeleton { min-height:74px; grid-template-columns:70px minmax(0,1fr); }
.studio-live-skeleton > i,.studio-live-skeleton > span b,.studio-live-skeleton > span small,.studio-live-skeleton > span em,.studio-recent-grid-loading > i { position:relative; overflow:hidden; display:block; border-radius:8px; background:rgba(255,255,255,.055); }
.studio-live-skeleton > i { width:70px; height:52px; }
.studio-live-skeleton > span { height:auto; display:grid; gap:6px; overflow:visible; background:transparent; }
.studio-live-skeleton > span b { width:68%; height:10px; }
.studio-live-skeleton > span small { width:88%; height:8px; }
.studio-live-skeleton > span em { width:46%; height:7px; }
.studio-live-skeleton > i::after,.studio-live-skeleton > span b::after,.studio-live-skeleton > span small::after,.studio-live-skeleton > span em::after,.studio-recent-grid-loading > i::after { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg,transparent,rgba(245,221,160,.10),transparent); animation:studioSkeleton 1.25s ease-in-out infinite; }
@keyframes studioSkeleton { to { transform:translateX(100%); } }
.studio-favorite-list { display: grid; grid-template-columns: repeat(auto-fit,minmax(205px,1fr)); gap: 8px; }
.studio-favorite-list button { min-width: 0; display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 9px; border: 1px solid rgba(245,241,232,.08); border-radius: 12px; color: var(--text); background: rgba(0,0,0,.16); text-align: left; cursor: pointer; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.studio-favorite-list button:hover { transform:translateY(-1px); border-color:var(--line-strong); background:rgba(255,255,255,.035); }
.studio-favorite-list img { width: 44px; height: 44px; object-fit: cover; border-radius: 9px; }
.studio-favorite-list span { min-width: 0; }
.studio-favorite-list b, .studio-favorite-list small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.studio-favorite-list b { font-size: 9px; }
.studio-favorite-list small { margin-top: 4px; color: var(--soft); font-size: 7px; }
.studio-favorite-list i { color: var(--gold); font-style: normal; }
.studio-favorite-empty { grid-column:1 / -1; min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 16px; border:1px dashed rgba(231,201,105,.20); border-radius:13px; background:rgba(231,201,105,.025); }
.studio-favorite-empty span { display:grid; gap:4px; }
.studio-favorite-empty b { font-size:10px; }
.studio-favorite-empty small { color:var(--soft); font-size:8px; }
.studio-favorite-empty button { min-height:34px; display:block; border:1px solid var(--line-strong); padding:0 12px; color:var(--gold-light); background:rgba(231,201,105,.06); font-size:8px; font-weight:850; }

.studio-recents { padding-bottom: 11px; }
.studio-recent-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; }
.studio-recent-grid > button { min-width: 0; border: 0; padding: 0; color: var(--text); background: transparent; text-align: left; cursor: pointer; }
.studio-recent-grid > button > span { position: relative; height: 92px; display: block; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: var(--surface-3); }
.studio-recent-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.studio-recent-grid button:hover img { transform: scale(1.035); }
.studio-recent-grid span i { position: absolute; right: 8px; top: 8px; width: 25px; height: 25px; display: grid; place-items: center; border-radius: 8px; color: var(--gold-light); background: rgba(6,7,6,.72); font-style: normal; }
.studio-recent-grid b, .studio-recent-grid small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.studio-recent-grid b { margin: 9px 2px 0; font-size: 10px; }
.studio-recent-grid small { margin: 5px 2px; color: var(--soft); font-size: 8px; }
.studio-recent-grid-loading > i { min-height:125px; border:1px solid var(--line); }

.studio-create-head { align-items:flex-end; }
.studio-create-grid { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.studio-create-option { position:relative; min-width:0; min-height:250px; display:grid; grid-template-columns:46% minmax(0,1fr); overflow:hidden; padding:0; border:1px solid var(--line); border-radius:22px; color:var(--text); background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012)); text-align:left; cursor:pointer; transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease; }
.studio-create-option:hover { transform:translateY(-4px); border-color:var(--line-strong); box-shadow:0 28px 64px rgba(0,0,0,.28); }
.studio-create-option.is-featured { border-color:rgba(231,201,105,.38); background:radial-gradient(circle at 20% 10%,rgba(231,201,105,.12),transparent 52%),var(--surface); }
.studio-create-option-media { position:relative; min-width:0; overflow:hidden; }
.studio-create-option-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 42%,rgba(15,16,13,.82)); }
.studio-create-option-media img { width:112%; height:100%; display:block; object-fit:cover; filter:saturate(.82) contrast(1.04); transition:transform .5s ease; }
.studio-create-option:hover img { transform:scale(1.04); }
.studio-create-option-copy { position:relative; z-index:2; display:grid; align-content:center; gap:10px; padding:28px 24px 28px 6px; }
.studio-create-option-copy small { color:var(--gold); font-size:7px; font-weight:950; letter-spacing:.16em; }
.studio-create-option-copy b { font-size:clamp(24px,2.3vw,34px); line-height:.98; letter-spacing:-.055em; }
.studio-create-option-copy em { color:var(--muted); font-size:10px; line-height:1.5; font-style:normal; }
.studio-create-option-copy i { margin-top:10px; color:var(--gold-light); font-size:9px; font-style:normal; font-weight:850; }
.studio-create-option-content { grid-column:1 / -1; min-height:210px; grid-template-columns:minmax(250px,32%) minmax(0,1fr); }
.studio-create-option-content .studio-create-option-media::after { background:linear-gradient(90deg,transparent 36%,rgba(15,16,13,.88)); }
.studio-create-option-content .studio-create-option-copy { max-width:620px; padding-left:20px; }

.studio-page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 27px; }
.studio-page-head h1 { margin: 10px 0 9px; font-size: clamp(38px, 4vw, 58px); line-height: .94; letter-spacing: -.06em; }
.studio-page-head p { max-width: 610px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.studio-tool-section + .studio-tool-section { margin-top: 28px; }
.studio-tool-section > header { display: grid; grid-template-columns: minmax(220px,auto) minmax(260px,1fr) auto; align-items: end; gap: 24px; margin-bottom: 13px; padding: 0 3px; }
.studio-tool-section > header span small, .studio-tool-section > header span b { display: block; }
.studio-tool-section > header span small { color: var(--gold); font-size: 7px; font-weight: 900; letter-spacing: .18em; }
.studio-tool-section > header span b { margin-top: 5px; font-size: 17px; }
.studio-tool-section > header p { margin: 0; color: var(--soft); font-size: 9px; }
.studio-tool-section > header > i { color: var(--gold); font-size: 8px; font-style: normal; font-weight: 850; }
.studio-tool-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 13px; }
.studio-tool-grid-content { grid-template-columns: repeat(3,minmax(0,1fr)); }
.studio-content-direction { max-width:1040px; }
.studio-tool-grid-content-focused { grid-template-columns:repeat(2,minmax(0,1fr)); }
.studio-tool-grid-content-focused .studio-tool-card { grid-template-rows:minmax(240px,34vh) minmax(138px,auto); }
.studio-tool-card { min-width: 0; overflow: hidden; display: grid; grid-template-rows: 190px minmax(145px,1fr); padding: 0; border: 1px solid var(--line); border-radius: 18px; color: var(--text); background: var(--surface); text-align: left; cursor: pointer; transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
.studio-tool-card:hover { transform: translateY(-3px); border-color: var(--line-strong); box-shadow: 0 25px 60px rgba(0,0,0,.24); }
.studio-tool-image { position: relative; overflow: hidden; display: block; }
.studio-tool-image::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, rgba(11,12,10,.75)); }
.studio-tool-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.studio-tool-card:hover img { transform: scale(1.035); }
.studio-tool-image em { position: absolute; z-index: 2; left: 12px; bottom: 11px; padding: 6px 8px; border: 1px solid rgba(255,255,255,.16); border-radius: 7px; color: #fff8e3; background: rgba(7,8,7,.72); font-size: 7px; font-style: normal; font-weight: 900; letter-spacing: .10em; }
.studio-tool-card > span:last-child { display: grid; align-content: start; gap: 9px; padding: 17px; }
.studio-tool-card b { font-size: 19px; letter-spacing: -.045em; }
.studio-tool-card small { min-height: 39px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.studio-tool-card > span:last-child i { margin-top: auto; color: var(--gold); font-size: 9px; font-style: normal; font-weight: 850; }
.studio-tool-card.is-featured { border-color: rgba(231,201,105,.30); }
.studio-tool-card-soft { background: linear-gradient(145deg, rgba(33,37,31,.95), rgba(16,17,14,.98)); }

.studio-models-head { align-items: flex-end; }
.studio-model-count { display: flex; gap: 7px; }
.studio-model-count span { min-width: 72px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 11px; color: var(--soft); background: rgba(255,255,255,.02); font-size: 8px; font-weight: 850; text-transform: uppercase; }
.studio-model-count b { display: block; margin-bottom: 3px; color: var(--gold); font-size: 16px; }
.studio-catalog-toolbar { position: sticky; z-index: 4; top: 0; display: grid; grid-template-columns: auto minmax(260px, 1fr) auto; align-items: center; gap: 10px; margin-bottom: 16px; padding: 9px; border: 1px solid var(--line); border-radius: 15px; background: rgba(11,12,10,.88); box-shadow: 0 16px 38px rgba(0,0,0,.16); backdrop-filter: blur(16px); }
.studio-tabs { display: flex; gap: 3px; padding: 3px; border: 1px solid rgba(245,241,232,.08); border-radius: 10px; background: rgba(255,255,255,.02); }
.studio-tabs button { min-height: 32px; border: 0; border-radius: 7px; padding: 0 11px; color: var(--soft); background: transparent; font-size: 9px; font-weight: 850; cursor: pointer; }
.studio-tabs button.is-active { color: #18150e; background: linear-gradient(135deg, var(--gold-light), #c99a3d); }
.studio-catalog-search { min-height: 38px; display: flex; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid rgba(245,241,232,.08); border-radius: 10px; background: rgba(255,255,255,.02); }
.studio-catalog-search span { color: var(--gold); font-size: 17px; }
.studio-catalog-search input { width: 100%; border: 0; outline: 0; color: var(--text); background: transparent; font-size: 10px; }
.studio-catalog-search input::placeholder { color: var(--soft); }
.studio-filter-button { min-height: 38px; border: 1px solid var(--line); border-radius: 10px; padding: 0 12px; color: var(--muted); background: rgba(255,255,255,.025); font-size: 9px; font-weight: 800; cursor: pointer; }
.studio-filter-button span { margin-left: 9px; color: var(--gold); }
.studio-model-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; }
.studio-model-card { min-width: 0; overflow: hidden; display: grid; grid-template-rows: 142px minmax(128px,1fr); padding: 0; border: 1px solid var(--line); border-radius: 17px; color: var(--text); background: var(--surface); text-align: left; cursor: pointer; transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.studio-model-card:hover { transform: translateY(-3px); border-color: var(--line-strong); box-shadow: 0 22px 50px rgba(0,0,0,.23); }
.studio-model-cover { position: relative; overflow: hidden; display: block; background: #1d1e19; }
.studio-model-cover::after { content: ""; position: absolute; inset: 48% 0 0; background: linear-gradient(transparent, rgba(10,11,9,.78)); }
.studio-model-cover img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.studio-model-card:hover .studio-model-cover img { transform: scale(1.035); }
.studio-model-cover em { position: absolute; z-index: 2; left: 10px; bottom: 9px; padding: 5px 7px; border: 1px solid rgba(255,255,255,.14); border-radius: 6px; color: #fff7df; background: rgba(7,8,7,.72); font-size: 6px; font-style: normal; font-weight: 900; letter-spacing: .1em; }
.studio-model-cover > i { position: absolute; z-index: 2; top: 9px; right: 9px; width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.15); border-radius: 8px; color: rgba(255,255,255,.82); background: rgba(7,8,7,.58); font-style: normal; }

.studio-card-media.has-media-error,
.studio-create-option-media.has-media-error,
.studio-tool-image.has-media-error,
.studio-model-cover.has-media-error {
  isolation:isolate;
  background:
    radial-gradient(circle at 22% 18%,rgba(235,205,112,.18),transparent 38%),
    linear-gradient(145deg,#202219,#0e100d 68%);
}
.studio-card-media.has-media-error::before,
.studio-create-option-media.has-media-error::before,
.studio-tool-image.has-media-error::before,
.studio-model-cover.has-media-error::before {
  content:"CV";
  position:absolute;
  z-index:0;
  inset:0;
  display:grid;
  place-items:center;
  color:rgba(236,211,137,.30);
  font-size:clamp(30px,5vw,72px);
  font-weight:950;
  letter-spacing:-.08em;
}
.studio-shell img.is-load-failed { display:none !important; }
.studio-model-info { min-width: 0; display: grid; align-content: start; gap: 8px; padding: 14px; }
.studio-model-info > b { font-size: 17px; line-height: 1; letter-spacing: -.045em; }
.studio-model-info > small { min-height: 31px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.studio-model-info > span { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 7px; margin-top: auto; padding-top: 10px; border-top: 1px solid rgba(245,241,232,.08); }
.studio-model-info span em { color: var(--gold); font-size: 9px; font-style: normal; font-weight: 900; }
.studio-model-info span i { color: var(--soft); font-size: 7px; font-style: normal; }
.studio-model-info span strong { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 8px; color: var(--gold-light); }
.studio-model-card[hidden] { display: none; }
.studio-empty-search { min-height: 190px; place-items: center; border: 1px dashed var(--line); border-radius: 16px; color: var(--soft); font-size: 11px; }
.studio-empty-search:not([hidden]) { display: grid; }

.studio-project-tabs { display: flex; gap: 5px; margin-bottom: 15px; padding-bottom: 13px; border-bottom: 1px solid var(--line); }
.studio-project-tabs button { min-height: 35px; border: 1px solid transparent; border-radius: 9px; padding: 0 12px; color: var(--soft); background: transparent; font-size: 9px; font-weight: 850; cursor: pointer; }
.studio-project-tabs button.is-active { color: var(--gold-light); border-color: var(--line-strong); background: rgba(226,193,92,.08); }
.studio-project-tabs span { margin-left: 6px; opacity: .56; }
.studio-project-status { min-height:190px; display:grid; place-items:center; border:1px dashed var(--line); border-radius:17px; color:var(--soft); font-size:10px; }
.studio-project-status[hidden] { display:none; }
.studio-project-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.studio-project-grid-loading > i { min-height:145px; display:block; position:relative; overflow:hidden; border:1px solid var(--line); border-radius:17px; background:rgba(255,255,255,.025); }
.studio-project-grid-loading > i::after { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg,transparent,rgba(245,221,160,.08),transparent); animation:studioSkeleton 1.25s ease-in-out infinite; }
.studio-project-card { min-width: 0; min-height:156px; display: grid; grid-template-columns: 168px minmax(0,1fr); overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012)); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.studio-project-card:hover { transform:translateY(-2px); border-color:var(--line-strong); box-shadow:0 20px 45px rgba(0,0,0,.20); }
.studio-project-media { position: relative; min-width:0; min-height:156px; overflow: hidden; border:0; padding:0; color:var(--text); background:#171815; cursor:pointer; }
.studio-project-card img,.studio-project-card video { width: 100%; height: 100%; display:block; object-fit: cover; }
.studio-project-media::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(5,6,5,.72)); pointer-events:none; }
.studio-project-media > em { position: absolute; z-index:2; right: 9px; top: 9px; min-width: 27px; height: 27px; display: grid; place-items: center; padding: 0 6px; border-radius: 8px; color: #18150e; background: var(--gold); font-size: 8px; font-style: normal; font-weight: 900; }
.studio-project-card.is-pending .studio-project-media > em { color:#092419; background:var(--green); }
.studio-project-card.is-failed .studio-project-media > em { color:#fff; background:#8f4d4d; }
.studio-project-media > small { position:absolute; z-index:2; left:10px; bottom:9px; color:rgba(255,255,255,.82); font-size:7px; font-weight:900; letter-spacing:.12em; }
.studio-project-placeholder { width:100%; height:100%; min-height:156px; display:grid; place-items:center; background:radial-gradient(circle,rgba(232,202,107,.13),transparent 58%),#12130f; }
.studio-project-placeholder i { width:46px; height:46px; display:grid; place-items:center; border:1px solid var(--line-strong); border-radius:15px; color:var(--gold-light); font-size:19px; font-style:normal; }
.studio-project-card > div { min-width: 0; display: grid; align-content: center; gap: 7px; padding: 17px; }
.studio-project-card small { color: var(--gold); font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.studio-project-card b { overflow: hidden; font-size: 15px; white-space: nowrap; text-overflow: ellipsis; }
.studio-project-card p { margin: 0; overflow:hidden; color: var(--muted); font-size: 8px; line-height:1.45; white-space:nowrap; text-overflow:ellipsis; }
.studio-project-card > div > span { color:var(--soft); font-size:8px; }
.studio-project-card button { width: max-content; border: 0; padding: 5px 0; color: var(--muted); background: transparent; font-size: 8px; font-weight: 850; cursor: pointer; }
.studio-project-card button:hover { color:var(--gold-light); }
.studio-project-detail-head { align-items:end; }
.studio-project-detail { padding-bottom:36px; }
.studio-project-detail-card { min-height:560px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr); overflow:hidden; border:1px solid var(--line); border-radius:22px; background:radial-gradient(circle at 90% 0,rgba(226,193,92,.09),transparent 34%),var(--surface); box-shadow:0 35px 90px rgba(0,0,0,.23); }
.studio-project-detail-media { min-height:560px; display:grid; place-items:center; overflow:hidden; border-right:1px solid var(--line); background:#050605; }
.studio-project-detail-media img,.studio-project-detail-media video { width:100%; height:100%; max-height:calc(100vh - 210px); display:block; object-fit:contain; background:#050605; }
.studio-project-detail-copy { min-width:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:18px; padding:42px; }
.studio-project-detail-status { display:inline-flex; min-height:26px; align-items:center; border:1px solid rgba(111,217,168,.24); border-radius:99px; padding:0 10px; color:var(--green); background:rgba(111,217,168,.07); font-size:7px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.studio-project-detail-status.is-failed { border-color:rgba(210,111,111,.26); color:#e59696; background:rgba(210,111,111,.07); }
.studio-project-detail-copy h2 { max-width:560px; margin:0; font-size:clamp(28px,3vw,48px); line-height:.98; letter-spacing:-.055em; }
.studio-project-detail-facts { width:100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.studio-project-detail-facts > span { min-width:0; display:grid; gap:6px; padding:13px; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.018); }
.studio-project-detail-facts small { color:var(--soft); font-size:7px; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.studio-project-detail-facts b { overflow:hidden; font-size:10px; white-space:nowrap; text-overflow:ellipsis; }
.studio-project-detail-copy details { width:100%; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:14px 0; }
.studio-project-detail-copy summary { color:var(--gold-light); font-size:9px; font-weight:850; cursor:pointer; }
.studio-project-detail-copy details p { max-height:150px; margin:12px 0 0; overflow:auto; color:var(--muted); font-size:9px; line-height:1.65; white-space:pre-wrap; }
.studio-project-detail-error { margin:0; padding:12px 14px; border:1px solid rgba(210,111,111,.23); border-radius:11px; color:#dca0a0; background:rgba(210,111,111,.06); font-size:9px; line-height:1.5; }
.studio-project-detail-actions { width:100%; display:flex; flex-wrap:wrap; gap:8px; }
.studio-project-detail-actions .studio-primary,.studio-project-detail-actions .studio-secondary { min-height:42px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.studio-project-detail-placeholder { width:100%; min-height:560px; display:grid; place-content:center; justify-items:center; gap:10px; padding:30px; text-align:center; background:radial-gradient(circle,rgba(232,202,107,.10),transparent 40%); }
.studio-project-detail-placeholder i { width:62px; height:62px; display:grid; place-items:center; border:1px solid var(--line-strong); border-radius:20px; color:var(--gold-light); font-size:25px; font-style:normal; }
.studio-project-detail-placeholder b { font-size:18px; }
.studio-project-detail-placeholder span { max-width:340px; color:var(--muted); font-size:9px; line-height:1.5; }
.studio-live-empty { grid-column:1 / -1; min-height:90px; display:grid; align-content:center; gap:6px; padding:16px; border:1px dashed var(--line); border-radius:13px; background:rgba(255,255,255,.012); }
.studio-live-empty b { font-size:11px; }
.studio-live-empty small { max-width:360px; color:var(--soft); font-size:8px; line-height:1.45; }
.studio-progress-card > .studio-live-empty { width:100%; }

.studio-photoshoot-head { align-items: end; }
.studio-photoshoot-tabs { display:flex; gap:5px; margin:1px 0 16px; padding:4px; overflow-x:auto; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.018); scrollbar-width:none; }
.studio-photoshoot-tabs::-webkit-scrollbar { display:none; }
.studio-photoshoot-tabs button { flex:0 0 auto; min-height:34px; border:0; border-radius:8px; padding:0 13px; color:var(--soft); background:transparent; font-size:8px; font-weight:850; cursor:pointer; transition:.18s ease; }
.studio-photoshoot-tabs button:hover { color:var(--text); background:rgba(255,255,255,.035); }
.studio-photoshoot-tabs button.is-active { color:#17140d; background:linear-gradient(135deg,var(--gold-light),#c99a3d); }
.studio-photoshoot-status { min-height:190px; display:grid; place-items:center; border:1px dashed var(--line); border-radius:17px; color:var(--soft); font-size:10px; }
.studio-photoshoot-status[hidden] { display:none; }
.studio-photoshoot-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding-bottom:36px; }
.studio-photoshoot-card { min-width:0; overflow:hidden; display:grid; grid-template-rows:minmax(230px,32vh) auto; padding:0; border:1px solid var(--line); border-radius:17px; color:var(--text); background:var(--surface); text-align:left; cursor:pointer; transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.studio-photoshoot-card:hover { transform:translateY(-3px); border-color:var(--line-strong); box-shadow:0 22px 52px rgba(0,0,0,.25); }
.studio-photoshoot-card > span { position:relative; overflow:hidden; background:#171815; }
.studio-photoshoot-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .45s ease; }
.studio-photoshoot-card:hover img { transform:scale(1.035); }
.studio-photoshoot-card > span::after { content:""; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(8,9,8,.8)); }
.studio-photoshoot-card em { position:absolute; z-index:2; left:10px; bottom:10px; padding:5px 7px; border:1px solid rgba(255,255,255,.15); border-radius:6px; color:#fff7df; background:rgba(7,8,7,.7); font-size:6px; font-style:normal; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.studio-photoshoot-card > span i { position:absolute; z-index:2; top:10px; right:10px; width:28px; height:28px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.16); border-radius:8px; color:var(--gold-light); background:rgba(7,8,7,.64); font-style:normal; }
.studio-photoshoot-card strong { min-width:0; display:block; padding:13px 14px 15px; }
.studio-photoshoot-card strong b { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.studio-photoshoot-card strong b { font-size:13px; }
.studio-photoshoot-detail { max-width:1180px; }
.studio-photoshoot-detail-card { min-height:590px; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(350px,.82fr); overflow:hidden; border:1px solid var(--line); border-radius:24px; background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012)); box-shadow:0 34px 90px rgba(0,0,0,.25); }
.studio-photoshoot-detail-media { min-width:0; min-height:590px; overflow:hidden; background:#12130f; }
.studio-photoshoot-detail-media img { width:100%; height:100%; display:block; object-fit:cover; }
.studio-photoshoot-detail-copy { position:relative; display:flex; flex-direction:column; justify-content:center; padding:clamp(34px,4vw,62px); }
.studio-photoshoot-detail-copy::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 0 20%,rgba(231,201,105,.10),transparent 48%); }
.studio-photoshoot-detail-category { position:relative; color:var(--gold); font-size:8px; font-weight:950; letter-spacing:.15em; text-transform:uppercase; }
.studio-photoshoot-detail-copy h2 { position:relative; margin:13px 0 13px; font-size:clamp(34px,3.7vw,55px); line-height:.94; letter-spacing:-.065em; }
.studio-photoshoot-detail-copy > p { position:relative; margin:0; color:var(--muted); font-size:11px; line-height:1.65; }
.studio-photoshoot-detail-model { position:relative; display:grid; gap:5px; margin-top:24px; padding:13px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.studio-photoshoot-detail-model small { color:var(--soft); font-size:7px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.studio-photoshoot-detail-model b { font-size:13px; }
.studio-photoshoot-detail-copy details { position:relative; margin-top:14px; color:var(--muted); font-size:9px; }
.studio-photoshoot-detail-copy summary { color:var(--gold-light); cursor:pointer; font-weight:800; }
.studio-photoshoot-detail-copy details p { max-height:110px; overflow:auto; margin:10px 0 0; padding:12px; border:1px solid var(--line); border-radius:10px; background:rgba(0,0,0,.18); line-height:1.55; }
.studio-photoshoot-repeat { position:relative; width:100%; min-height:50px; margin-top:24px; }

.studio-view[data-view="editor"] { width: 100%; max-width: none; height: 100%; min-height: 0; padding: 0; }
.studio-view[data-view="editor"].is-active { display: grid; grid-template-rows: 58px minmax(0,1fr); }
.studio-editor-head { display: grid; grid-template-columns: 35px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 0 20px; border-bottom: 1px solid var(--line); background: rgba(13,14,12,.92); }
.studio-back { width: 32px; height: 32px; border: 1px solid var(--line); border-radius: 9px; color: var(--text); background: rgba(255,255,255,.025); cursor: pointer; }
.studio-editor-head > div:nth-child(2) { min-width: 0; display: flex; align-items: baseline; gap: 9px; }
.studio-editor-head > div:nth-child(2) span { color: var(--gold); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.studio-editor-head h1 { margin: 0; font-size: 15px; letter-spacing: -.035em; }
.studio-editor-head-meta { display: flex; align-items: center; gap: 12px; }
.studio-editor-head-meta > span { display: flex; align-items: center; gap: 6px; color: var(--soft); font-size: 8px; }
.studio-editor-head-meta > span i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); }
.studio-editor-head-meta button { height: 30px; border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; color: var(--muted); background: rgba(255,255,255,.025); font-size: 8px; font-weight: 800; cursor: pointer; }
.studio-editor-layout { min-width: 0; min-height: 0; display: grid; grid-template-columns: 230px minmax(420px,1fr) 286px; }
.studio-assets-panel, .studio-settings-panel { min-height: 0; overflow: auto; padding: 15px; background: rgba(12,13,11,.96); }
.studio-assets-panel { border-right: 1px solid var(--line); }
.studio-settings-panel { border-left: 1px solid var(--line); }
.studio-assets-panel > header, .studio-settings-panel > header, .studio-prompt-box > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.studio-assets-panel > header > span, .studio-settings-panel > header > span, .studio-prompt-box > header > span { display: flex; align-items: center; gap: 8px; }
.studio-assets-panel header small, .studio-settings-panel header small, .studio-prompt-box header small { width: 22px; height: 22px; display: grid; place-items: center; border: 1px solid var(--line-strong); border-radius: 7px; color: var(--gold); font-size: 7px; }
.studio-assets-panel header b, .studio-settings-panel header b, .studio-prompt-box header b { font-size: 11px; }
.studio-assets-panel > header button, .studio-settings-panel > header button { border: 0; padding: 0; color: var(--gold); background: transparent; font-size: 8px; font-weight: 800; cursor: pointer; }
.studio-editor-uploads { display: grid; gap: 8px; }
.studio-dropzone { width: 100%; min-height: 126px; display: grid; place-items: center; align-content: center; gap: 5px; padding: 12px; border: 1px dashed rgba(231,201,105,.33); border-radius: 13px; color: var(--text); background: radial-gradient(circle at 50% 0, rgba(231,201,105,.08), transparent 64%), rgba(255,255,255,.015); cursor: pointer; }
.studio-editor-uploads .studio-dropzone:not(:only-child) { min-height: 98px; }
.studio-dropzone.is-required { border-style: solid; border-color: rgba(231,201,105,.48); }
.studio-dropzone > span { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid var(--line-strong); border-radius: 9px; color: var(--gold); background: rgba(231,201,105,.06); font-size: 18px; }
.studio-dropzone b { font-size: 9px; }
.studio-dropzone small { max-width: 160px; color: var(--soft); font-size: 7px; line-height: 1.4; }
.studio-dropzone em { color: rgba(245,241,232,.22); font-size: 6px; font-style: normal; }
.studio-assets-heading { display: flex; justify-content: space-between; margin: 17px 1px 9px; color: var(--soft); font-size: 7px; font-weight: 850; text-transform: uppercase; }
.studio-assets-heading em { font-style: normal; }
.studio-asset-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 7px; }
.studio-asset-grid button { position: relative; height: 84px; overflow: hidden; border: 1px solid transparent; border-radius: 10px; padding: 0; background: #1a1b17; cursor: pointer; }
.studio-asset-grid button.is-active { border-color: var(--gold); box-shadow: 0 0 0 2px rgba(231,201,105,.08); }
.studio-asset-grid img { width: 100%; height: 100%; object-fit: cover; }
.studio-asset-grid i { position: absolute; left: 5px; bottom: 5px; padding: 3px 5px; border-radius: 5px; color: #fff; background: rgba(6,7,6,.72); font-size: 6px; font-style: normal; }
.studio-assets-tip { display: grid; grid-template-columns: 26px 1fr; gap: 8px; margin-top: 15px; padding: 10px; border: 1px solid rgba(147,182,255,.15); border-radius: 11px; background: rgba(87,120,185,.05); }
.studio-assets-tip > i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 7px; color: var(--blue); background: rgba(147,182,255,.08); font-style: normal; }
.studio-assets-tip b, .studio-assets-tip small { display: block; }
.studio-assets-tip b { font-size: 8px; }
.studio-assets-tip small { margin-top: 4px; color: var(--soft); font-size: 7px; line-height: 1.45; }

.studio-canvas-panel { min-width: 0; min-height: 0; display: grid; grid-template-rows: 43px minmax(260px,1fr) auto; overflow: hidden; background: #060706; }
.studio-canvas-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 13px; border-bottom: 1px solid var(--line); background: #0e0f0d; }
.studio-canvas-toolbar > span { display: flex; gap: 3px; }
.studio-canvas-toolbar button { height: 27px; border: 0; border-radius: 7px; padding: 0 9px; color: var(--soft); background: transparent; font-size: 7px; font-weight: 800; cursor: pointer; }
.studio-canvas-toolbar button.is-active { color: var(--text); background: rgba(255,255,255,.055); }
.studio-canvas-toolbar > div { display: flex; align-items: center; gap: 2px; }
.studio-canvas-toolbar em { min-width: 36px; color: var(--soft); font-size: 7px; font-style: normal; text-align: center; }
.studio-canvas { min-width: 0; min-height: 0; display: grid; place-items: center; padding: 20px; overflow: hidden; background-image: linear-gradient(45deg, rgba(255,255,255,.018) 25%, transparent 25%), linear-gradient(-45deg, rgba(255,255,255,.018) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, rgba(255,255,255,.018) 75%), linear-gradient(-45deg, transparent 75%, rgba(255,255,255,.018) 75%); background-size: 24px 24px; background-position: 0 0, 0 12px, 12px -12px, -12px 0; }
.studio-canvas-result { position: relative; max-width: min(58vh, 72%); max-height: 100%; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 3px; background: #151614; box-shadow: 0 25px 80px rgba(0,0,0,.58); }
.studio-canvas-result img { max-width: 100%; max-height: calc(100vh - 355px); display: block; object-fit: contain; }
.studio-canvas-result span { position: absolute; top: 9px; left: 9px; padding: 5px 7px; border-radius: 6px; color: rgba(255,255,255,.76); background: rgba(7,8,7,.65); font-size: 6px; font-weight: 850; text-transform: uppercase; }
.studio-prompt-box { margin: 0 13px 13px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); }
.studio-prompt-box > header { margin: 0; padding: 10px 12px 8px; }
.studio-prompt-box > header > div { display: flex; gap: 5px; }
.studio-prompt-box header button { height: 25px; border: 1px solid var(--line); border-radius: 7px; padding: 0 8px; color: var(--muted); background: rgba(255,255,255,.02); font-size: 7px; font-weight: 800; cursor: pointer; }
.studio-prompt-box header button:first-child { color: var(--gold-light); border-color: var(--line-strong); }
.studio-prompt-box textarea { width: 100%; min-height: 72px; display: block; border: 0; border-top: 1px solid rgba(245,241,232,.07); border-bottom: 1px solid rgba(245,241,232,.07); padding: 11px 12px; outline: 0; resize: none; color: var(--text); background: rgba(0,0,0,.16); font-size: 10px; line-height: 1.5; }
.studio-prompt-box textarea:disabled { color: var(--soft); background: rgba(0,0,0,.08); cursor: not-allowed; }
.studio-prompt-box footer { display: flex; justify-content: space-between; padding: 7px 12px; color: var(--soft); font-size: 6px; }
.studio-prompt-box footer em { font-style: normal; }

.studio-model-select { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 8px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.02); }
.studio-model-select img { width: 42px; height: 42px; object-fit: cover; border-radius: 8px; }
.studio-model-select span { min-width: 0; }
.studio-model-select small, .studio-model-select b { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.studio-model-select small { color: var(--soft); font-size: 7px; }
.studio-model-select b { margin-top: 4px; font-size: 9px; }
.studio-model-select button { border: 0; padding: 0; color: var(--gold); background: transparent; font-size: 7px; font-weight: 850; cursor: pointer; }
.studio-setting { display: block; padding: 14px 0; border-bottom: 1px solid rgba(245,241,232,.08); }
.studio-setting > span { display: block; margin-bottom: 9px; }
.studio-setting b, .studio-setting small { display: block; }
.studio-setting b { font-size: 9px; }
.studio-setting small { margin-top: 3px; color: var(--soft); font-size: 7px; }
.studio-segments { display: grid; grid-template-columns: repeat(var(--segment-columns,3),minmax(0,1fr)); gap: 3px; padding: 3px; border: 1px solid var(--line); border-radius: 9px; background: rgba(0,0,0,.19); }
.studio-segments button { min-height: 29px; border: 0; border-radius: 6px; padding: 6px 5px; color: var(--soft); background: transparent; font-size: 7px; font-weight: 850; line-height: 1.2; overflow-wrap: anywhere; cursor: pointer; }
.studio-segments button.is-active { color: #18150e; background: linear-gradient(135deg, var(--gold-light), #c99a3d); }
.studio-range-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px; }
.studio-range-row input { width: 100%; accent-color: var(--gold); }
.studio-range-row output { min-width: 55px; padding: 7px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--gold-light); background: rgba(255,255,255,.025); font-size: 7px; font-weight: 850; text-align: center; }
.studio-range-limits { display: flex; justify-content: space-between; margin-top: 5px; color: rgba(245,241,232,.25); font-size: 6px; }
.studio-no-settings, .studio-no-uploads { margin: 13px 0 0; padding: 12px; border: 1px dashed var(--line); border-radius: 10px; color: var(--soft); background: rgba(255,255,255,.015); font-size: 7px; line-height: 1.45; }
.studio-counter { display: grid; grid-template-columns: 31px 1fr 31px; align-items: center; overflow: hidden; border: 1px solid var(--line); border-radius: 9px; }
.studio-counter button { height: 30px; border: 0; color: var(--gold); background: rgba(255,255,255,.025); cursor: pointer; }
.studio-counter b { text-align: center; }
.studio-setting-switch { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.studio-setting-switch > span { margin: 0; }
.studio-setting-switch > button { position: relative; width: 36px; height: 20px; border: 0; border-radius: 20px; background: rgba(231,201,105,.30); cursor: pointer; }
.studio-setting-switch > button i { position: absolute; top: 3px; right: 3px; width: 14px; height: 14px; border-radius: 50%; background: var(--gold-light); transition: transform .18s ease; }
.studio-setting-switch > button[aria-checked="false"] { background: rgba(255,255,255,.10); }
.studio-setting-switch > button[aria-checked="false"] i { transform: translateX(-16px); background: rgba(255,255,255,.48); }
.studio-price-box { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 15px 0 9px; }
.studio-price-box span { padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.02); }
.studio-price-box small, .studio-price-box b { display: block; }
.studio-price-box small { color: var(--soft); font-size: 6px; }
.studio-price-box b { margin-top: 4px; color: var(--gold-light); font-size: 10px; }
.studio-run { width: 100%; min-height: 40px; border: 0; border-radius: 10px; color: #17140d; background: linear-gradient(135deg, var(--gold-light), var(--gold-dark)); box-shadow: 0 12px 28px rgba(211,166,55,.14); font-size: 9px; font-weight: 900; cursor: pointer; }
.studio-run span { margin-left: 15px; }
.studio-run-note { display: block; margin-top: 8px; color: var(--soft); font-size: 6px; text-align: center; }

.studio-view[data-view="workspace"] { width: 100%; max-width: none; height: 100%; min-height: 0; padding: 0; }
.studio-view[data-view="workspace"].is-active { display: grid; grid-template-rows: 48px minmax(0,1fr); }
.studio-workspace-head { min-width: 0; display: grid; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 0 16px; border-bottom: 1px solid var(--line); background: rgba(13,14,12,.94); }
.studio-workspace-back { width: 31px; height: 31px; border: 1px solid var(--line); border-radius: 9px; color: var(--gold-light); background: rgba(255,255,255,.025); cursor: pointer; }
.studio-workspace-head > span { min-width: 0; display: flex; align-items: baseline; gap: 9px; }
.studio-workspace-head small { color: var(--gold); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.studio-workspace-head b { overflow: hidden; font-size: 13px; white-space: nowrap; text-overflow: ellipsis; }
.studio-workspace-head em { color: var(--green); font-size: 7px; font-style: normal; font-weight: 800; }
.studio-workspace-stage { position: relative; min-width: 0; min-height: 0; overflow: hidden; background: #080907; }
.studio-workspace-stage iframe { width: 100%; height: 100%; display: block; border: 0; background: #080907; opacity: 1; transition: opacity .18s ease; }
.studio-workspace-loader { position: absolute; z-index: 2; inset: 0; display: grid; place-content: center; justify-items: center; gap: 10px; color: var(--muted); background: #080907; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .16s ease, visibility .16s ease; font-size: 9px; }
.studio-workspace-loader i { width: 27px; height: 27px; border: 2px solid rgba(232,202,107,.18); border-top-color: var(--gold); border-radius: 50%; animation: studioWorkspaceSpin .7s linear infinite; }
.studio-workspace-stage.is-loading .studio-workspace-loader { opacity: 1; visibility: visible; }
.studio-workspace-stage.is-loading iframe { opacity: 0; }
@keyframes studioWorkspaceSpin { to { transform: rotate(360deg); } }

.studio-placeholder-view { place-items: center; align-content: center; min-height: 100%; text-align: center; }
.studio-placeholder-view.is-active { display: grid; }
.studio-placeholder-view > span { width: 64px; height: 64px; display: grid; place-items: center; border: 1px solid var(--line-strong); border-radius: 20px; color: #17140d; background: linear-gradient(145deg, var(--gold-light), #bd8b33); font-size: 19px; font-weight: 950; }
.studio-placeholder-view h1 { margin: 18px 0 8px; font-size: 38px; letter-spacing: -.055em; }
.studio-placeholder-view p { margin: 0 0 20px; color: var(--muted); font-size: 11px; }
.studio-favorite-dialog { position:fixed; z-index:30; inset:0; display:grid; place-items:center; padding:32px; background:rgba(3,4,3,.76); backdrop-filter:blur(13px); }
.cv-studio-dialog-open { overflow:hidden; }
.studio-favorite-dialog[hidden] { display:none; }
.studio-favorite-dialog > section { width:min(760px,calc(100vw - 64px)); max-height:min(760px,calc(100vh - 64px)); display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; overflow:hidden; border:1px solid rgba(231,201,105,.30); border-radius:24px; background:radial-gradient(circle at 100% 0,rgba(231,201,105,.11),transparent 26rem),#11120f; box-shadow:0 42px 120px rgba(0,0,0,.56); }
.studio-favorite-dialog > section > header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:25px 26px 18px; }
.studio-favorite-dialog h2 { margin:7px 0 6px; font-size:27px; line-height:1; letter-spacing:-.05em; }
.studio-favorite-dialog header p { margin:0; color:var(--muted); font-size:9px; line-height:1.5; }
.studio-favorite-dialog header > button { width:36px; height:36px; flex:0 0 auto; border:1px solid var(--line); border-radius:11px; color:var(--gold-light); background:rgba(255,255,255,.025); font-size:20px; cursor:pointer; }
.studio-favorite-search { min-height:42px; display:flex; align-items:center; gap:9px; margin:0 26px 14px; padding:0 12px; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.025); }
.studio-favorite-search span { color:var(--gold); font-size:18px; }
.studio-favorite-search input { width:100%; border:0; outline:0; color:var(--text); background:transparent; font-size:10px; }
.studio-favorite-search input::placeholder { color:var(--soft); }
.studio-favorite-picker { min-height:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:8px; overflow:auto; padding:0 26px 18px; }
.studio-favorite-picker > button { min-width:0; min-height:64px; display:grid; grid-template-columns:46px minmax(0,1fr) 28px; align-items:center; gap:10px; padding:8px; border:1px solid var(--line); border-radius:13px; color:var(--text); background:rgba(0,0,0,.17); text-align:left; cursor:pointer; }
.studio-favorite-picker > button:hover { border-color:var(--line-strong); }
.studio-favorite-picker > button.is-selected { border-color:rgba(231,201,105,.46); background:rgba(231,201,105,.075); }
.studio-favorite-picker img { width:46px; height:46px; display:block; object-fit:cover; border-radius:10px; }
.studio-favorite-picker span { min-width:0; display:grid; gap:4px; }
.studio-favorite-picker b,.studio-favorite-picker small { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.studio-favorite-picker b { font-size:10px; }
.studio-favorite-picker small { color:var(--soft); font-size:7px; }
.studio-favorite-picker i { width:27px; height:27px; display:grid; place-items:center; border:1px solid var(--line); border-radius:8px; color:var(--gold); font-style:normal; }
.studio-favorite-picker > button.is-selected i { color:#17140d; border-color:transparent; background:linear-gradient(145deg,var(--gold-light),#c49439); }
.studio-favorite-picker-empty { grid-column:1 / -1; min-height:120px; display:grid; place-items:center; color:var(--soft); font-size:9px; }
.studio-favorite-dialog footer { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 26px 20px; border-top:1px solid var(--line); }
.studio-favorite-dialog footer > span { color:var(--muted); font-size:8px; font-weight:800; }
.studio-favorite-dialog footer .studio-primary { min-height:38px; min-width:100px; }
.studio-toast { position: fixed; z-index: 20; right: 22px; bottom: 22px; max-width: 320px; padding: 12px 15px; border: 1px solid var(--line-strong); border-radius: 11px; color: var(--text); background: rgba(25,25,19,.96); box-shadow: 0 18px 60px rgba(0,0,0,.38); opacity: 0; transform: translateY(10px); pointer-events: none; transition: .2s ease; font-size: 9px; }
.studio-toast.is-visible { opacity: 1; transform: none; }

@media (max-width: 1260px) {
  :root { --sidebar: 204px; }
  .studio-topbar { grid-template-columns: minmax(150px,1fr) minmax(280px,420px) auto; padding-inline: 18px; }
  .studio-status span { display: none; }
  .studio-start-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .studio-dashboard-grid { grid-template-columns: 1fr; }
  .studio-model-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .studio-editor-layout { grid-template-columns: 205px minmax(390px,1fr) 260px; }
  .studio-tool-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .studio-photoshoot-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .studio-photoshoot-detail-card { grid-template-columns:minmax(0,1fr) 360px; }
  .studio-project-detail-card { grid-template-columns:minmax(0,1fr) 380px; }
  .studio-project-detail-copy { padding:32px; }
  .studio-home-hero { grid-template-columns:minmax(430px,1.1fr) minmax(310px,.9fr); padding-inline:38px; }
  .studio-home-task-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .studio-home-ad-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .studio-home-ad-card { grid-column:span 2; }
  .studio-home-ad-card:nth-last-child(-n+2) { grid-column:span 3; }
  .studio-home-model-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .studio-home-solution-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .studio-platform-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 1080px) {
  :root { --sidebar: 184px; }
  .studio-sidebar { padding-inline: 10px; }
  .studio-topbar { grid-template-columns: minmax(130px,1fr) minmax(260px,390px) auto; gap: 12px; }
  .studio-start-card { min-height: 205px; }
  .studio-dashboard-grid { grid-template-columns: 1fr; }
  .studio-recents { display: none; }
  .studio-model-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .studio-editor-layout { grid-template-columns: 190px minmax(380px,1fr) 245px; }
  .studio-assets-panel, .studio-settings-panel { padding: 12px; }
  .studio-card-copy b { font-size: 17px; }
  .studio-photoshoot-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .studio-create-option { min-height:220px; }
  .studio-create-option-copy { padding:22px 18px 22px 4px; }
  .studio-photoshoot-detail-card { min-height:520px; grid-template-columns:minmax(0,1fr) 330px; }
  .studio-photoshoot-detail-media { min-height:520px; }
  .studio-project-grid { grid-template-columns:1fr; }
  .studio-project-detail-card { min-height:520px; grid-template-columns:minmax(0,1fr) 330px; }
  .studio-project-detail-media,.studio-project-detail-placeholder { min-height:520px; }
  .studio-project-detail-copy { padding:26px; }
  .studio-project-detail-facts { grid-template-columns:1fr; }
  .studio-home-hero { min-height:320px; grid-template-columns:minmax(400px,1.15fr) minmax(260px,.85fr); gap:20px; padding:36px 30px; }
  .studio-home-hero h1 { font-size:50px; }
  .studio-home-hero p { font-size:11px; }
  .studio-home-hero-frame-main { width:76%; }
  .studio-home-hero-frame-side { width:48%; }
  .studio-home-ad-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .studio-home-ad-card,.studio-home-ad-card:nth-last-child(-n+2) { grid-column:auto; }
  .studio-home-ad-card:last-child { grid-column:span 2; grid-template-columns:180px minmax(0,1fr); grid-template-rows:auto auto auto auto; column-gap:16px; padding-left:0; }
  .studio-home-ad-card:last-child > span { grid-row:1 / 5; height:100%; margin:0; }
  .studio-home-solution-grid { grid-template-columns:1fr; }
  .studio-home-solution-grid > button { min-height:150px; grid-template-columns:180px minmax(0,1fr); }
  .studio-platform-grid { grid-template-columns:1fr; }
  .studio-platform-card { min-height:140px; }
  .studio-faq-grid { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
