/* 映序 / Atelier. Shared surfaces, controls and motion for the user workspace. */
/* Session and route commit form one first-paint boundary, including slow JS. */
body.account-app[data-auth-state=pending] :is(#welcome,#sidebar,.app-shell) { display:none!important; }
.session-boot { min-height:100dvh; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; color:#d7d3cb; padding:32px; text-align:center; }
.session-boot p { margin:0; font-size:14px; letter-spacing:.06em; }
.session-boot-mark { display:grid; place-items:center; width:54px; height:54px; border:1px solid #b8a17a55; border-radius:16px; background:linear-gradient(135deg,#b8a17a24,#24212666); box-shadow:0 0 32px #b8a17a12; font-size:24px; color:#e4d1ad; animation:session-boot-pulse 1.6s ease-in-out infinite; }
.session-boot.has-error .session-boot-mark { animation:none; }
@keyframes session-boot-pulse { 50% { opacity:.55; box-shadow:0 0 44px #b8a17a22; } }
@media (prefers-reduced-motion:reduce) { .session-boot-mark { animation:none; } }
:root.atelier-v2 {
  --bg:#171719; --surface:#0f0e10; --ink:#e7e4e0; --muted:#cfcbc3; --line:#ccc7bf28;
  --brand:#e3e0db; --brand-dark:#eceae6; --brand-soft:#1b1a1d; --sidebar:204px;
  --accent:#d9d5ce; --ui-ease:cubic-bezier(.22,.8,.25,1); --ui-spring:cubic-bezier(.2,.85,.3,1.15);
  font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; color-scheme:dark;
}
body.account-app.atelier-v2 { background:var(--bg); color:var(--ink); font-size:13px; -webkit-font-smoothing:antialiased; }
body.account-app.atelier-v2::before { content:""; position:fixed; inset:0; pointer-events:none; z-index:-1; background:radial-gradient(ellipse at 72% 0%,#23212650,transparent 42%),radial-gradient(ellipse at 16% 80%,#24222745,transparent 55%); }
body.account-app.atelier-v2 ::selection { background:#242227; color:#e8e6e2; }
body.account-app.atelier-v2 :is(button,a,input,select,textarea,[contenteditable]):focus-visible { outline:2px solid #ccc7bf28; outline-offset:3px; }
body.account-app.atelier-v2 * { scrollbar-width:thin; scrollbar-color:#484238 transparent; }
body.account-app.atelier-v2 h1,body.account-app.atelier-v2 h2,body.account-app.atelier-v2 h3,body.account-app.atelier-v2 p { margin-top:0; }
body.account-app.atelier-v2 button { -webkit-user-select:none; user-select:none; }
body.account-app.atelier-v2 :is(.btn,.icon-btn,.text-button,.page-button,.studio-frame-tab) { transition:background .16s,color .16s,border-color .16s,box-shadow .2s,transform .2s var(--ui-spring); }
body.account-app.atelier-v2 .btn { min-height:38px; border-radius:8px; padding:0 15px; gap:8px; font-size:12px; line-height:1.4; font-weight:550; border:1px solid transparent; box-shadow:none; letter-spacing:0; justify-content:center; }
body.account-app.atelier-v2 .btn svg { width:15px; height:15px; }
body.account-app.atelier-v2 .btn.primary { color:#18171a; background:linear-gradient(#c8c2b8,#d6d1ca); border-color:#ccc6bd; box-shadow:0 1px 2px #0000001a,0 1px 0 #eeedea19 inset; }
body.account-app.atelier-v2 .btn.primary:hover:not(:disabled) { background:linear-gradient(#bbb4a9,#ccc6bd); box-shadow:0 3px 7px #00000024; transform:translateY(-1px); }
body.account-app.atelier-v2 .btn.secondary { color:#dedbd5; background:#0f0e10d9; border-color:#ccc7bf28; box-shadow:0 1px 2px #00000006; }
body.account-app.atelier-v2 .btn.secondary:hover:not(:disabled) { background:#171719; border-color:#ccc7bf28; box-shadow:0 2px 5px #00000010; }
body.account-app.atelier-v2 .btn.danger { color:#18171a; background:#9b917f; border-color:#ccc6bd; }
body.account-app.atelier-v2 .btn.small { min-height:33px; font-size:12px; padding:0 12px; }
body.account-app.atelier-v2 :is(.btn,.icon-btn,.page-button):active:not(:disabled) { transform:translateY(1px) scale(.975); box-shadow:none; }
body.account-app.atelier-v2 button:disabled { opacity:.45; cursor:default; }
body.account-app.atelier-v2 .btn[aria-busy=true]::before { content:""; width:12px; height:12px; border:1.5px solid currentColor; border-right-color:transparent; border-radius:50%; animation:ui-spin .8s linear infinite; }
body.account-app.atelier-v2 .text-button { color:#d7d3cd; font-size:12px; border:0; border-radius:5px; padding:4px 2px; line-height:1.5; }
body.account-app.atelier-v2 .text-button:hover:not(:disabled) { color:#e5e3df; text-decoration:none; background:#988e7d0b; }
body.account-app.atelier-v2 .icon-btn { width:30px; height:30px; border-radius:7px; color:#d0ccc4; background:transparent; border:1px solid transparent; display:inline-grid; place-items:center; }
body.account-app.atelier-v2 .icon-btn:hover { color:#e6e4e0; background:#1d1c20; border-color:#ccc7bf28; }
body.account-app.atelier-v2 :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { color:#e3e0db; background:#0f0e10; border:1px solid #ccc7bf28; border-radius:8px; min-height:38px; padding:9px 11px; font:inherit; box-shadow:0 1px 2px #00000003 inset; transition:border-color .16s,box-shadow .16s; }
body.account-app.atelier-v2 select { color-scheme:dark; }
body.account-app.atelier-v2 select option,body.account-app.atelier-v2 select optgroup { background:#151419; color:#e3e0db; }
body.account-app.atelier-v2 select option:checked,body.account-app.atelier-v2 select option:hover { background:#2a272d; color:#fff; }
body.account-app.atelier-v2 :is(input:not([type=checkbox]),select,textarea):focus { outline:0; border-color:#ccc7bf28; box-shadow:0 0 0 3px #00000012; }
body.account-app.atelier-v2 input::placeholder,body.account-app.atelier-v2 textarea::placeholder { color:#d0ccc4; }
body.account-app.atelier-v2 input[type=checkbox] { accent-color:#b6afa2; width:15px; height:15px; border-radius:4px; cursor:pointer; }
body.account-app.atelier-v2 :is(.form-error,.studio-dialog-error,.studio-run-error) { color:#cfcbc3; font-size:12px; line-height:1.8; }

/* Workspace shell. */
body.account-app.atelier-v2 .sidebar { top:0; bottom:0; width:var(--sidebar); padding:25px 14px 20px; background:#1b1a1deb; border-right:1px solid #ccc7bf28; z-index:45; }
body.account-app.atelier-v2 .brand { padding:0 12px; font-size:21px; gap:10px; color:#e6e4e0; letter-spacing:1px; }
body.account-app.atelier-v2 .brand-mark { background:#cbc6bd; color:#18171a; width:33px; height:36px; border-radius:9px 9px 5px 9px; font:600 20px "Microsoft YaHei",sans-serif; box-shadow:0 1px 0 #eeedea4a inset,0 2px 3px #0000001c; }
body.account-app.atelier-v2 .brand small { font-size:8px; letter-spacing:2.4px; color:#d1cdc5; margin-top:4px; }
body.account-app.atelier-v2 .nav-label { margin:48px 0 14px; padding:0 13px; font-size:10px; color:#d1cdc5; letter-spacing:1px; }
body.account-app.atelier-v2 .side-nav { gap:6px; }
body.account-app.atelier-v2 .tab { gap:11px; border-radius:7px; padding:11px 13px; color:#cfcbc3; font-size:13px; background:none; border:1px solid transparent; position:relative; }
body.account-app.atelier-v2 .tab svg { width:17px; height:17px; color:#d2cdc5; stroke-width:1.65; }
body.account-app.atelier-v2 .tab:hover { background:#211f23; color:#e3e0db; }
body.account-app.atelier-v2 .tab.active { background:#131214; border-color:#ccc7bf28; color:#e2dfda; font-weight:600; box-shadow:0 2px 3px #00000006; }
body.account-app.atelier-v2 .tab.active svg { color:#d8d4cd; }
body.account-app.atelier-v2 .tab.active::after { content:""; position:absolute; right:10px; width:4px; height:4px; background:#968c7a; border-radius:50%; }
body.account-app.atelier-v2 .sidebar-help { margin-top:auto; color:#d2cdc5; font-size:11px; }
body.account-app.atelier-v2 .sidebar-footer { margin:18px 13px 0; padding-top:18px; border-top:1px solid #ccc7bf28; color:#d0ccc4; font-size:8px; letter-spacing:1.1px; line-height:2; }
body.account-app.atelier-v2 .sidebar-footer strong { display:block; color:#d1cdc5; font-size:11px; font-weight:400; letter-spacing:.5px; margin-bottom:3px; }
body.account-app.atelier-v2 .app-shell { margin-left:var(--sidebar); min-height:100dvh; }
body.account-app.atelier-v2 .topbar { height:64px; padding:0 32px; background:#151416a6; border-bottom:1px solid #ccc7bf28; backdrop-filter:blur(16px); position:relative; z-index:10; }
body.account-app.atelier-v2 .topbar-left,body.account-app.atelier-v2 .topbar-right { gap:18px; }
body.account-app.atelier-v2 .workspace-crumb { display:flex; align-items:center; gap:14px; color:#d1ccc4; font-size:11px; }
body.account-app.atelier-v2 .workspace-crumb i { width:1px; height:11px; background:#464037; transform:rotate(20deg); }
body.account-app.atelier-v2 .workspace-crumb strong { font-weight:500; color:#d7d2cb; }
body.account-app.atelier-v2 .sync-label { color:#d1cdc5; font-size:10px; gap:6px; }
body.account-app.atelier-v2 .sync-label i { width:5px; height:5px; box-shadow:0 0 0 3px #00000010; background:#897e6b; }
body.account-app.atelier-v2 .account-button { border:0; border-left:1px solid #ccc7bf28; border-radius:0; padding:0 0 0 18px; background:none; color:#d6d1ca; font-size:11px; gap:9px; }
body.account-app.atelier-v2 .account-button>svg { width:12px; height:12px; transform:rotate(90deg); color:#d1cdc5; }
body.account-app.atelier-v2 .top-avatar { width:27px; height:27px; display:grid; place-items:center; color:#d4d0c9; background:#1f1e21; border:1px solid #ccc7bf28; border-radius:50%; font-size:11px; }
body.account-app.atelier-v2 .mobile-menu { display:none; }
body.account-app.atelier-v2 .container { max-width:1760px; margin:0 auto; padding:0 32px; display:flex; flex-direction:column; min-height:calc(100dvh - 64px); }
body.account-app.atelier-v2 .page-head { position:relative; min-height:165px; padding:31px 0 29px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:0; margin:0; }
body.account-app.atelier-v2 .page-heading-copy,body.account-app.atelier-v2 .head-actions { position:relative; z-index:1; }
body.account-app.atelier-v2 .page-eyebrow { font:9px/1.5 "Segoe UI",sans-serif; color:#d1cdc5; letter-spacing:2px; margin:0 0 10px; }
body.account-app.atelier-v2 h1 { font-size:29px; font-weight:560; color:#e3e0dc; letter-spacing:-.8px; margin:0; line-height:1.25; }
body.account-app.atelier-v2 .page-head p { font-size:12px; color:#d2cdc5; line-height:1.8; margin:10px 0 0; }
body.account-app.atelier-v2 .head-actions { display:flex; align-items:center; gap:9px; }
body.account-app.atelier-v2 .scene-mode-toggle { border:0; background:none; color:#d1cdc5; font-size:10px; padding:7px; margin-right:6px; }
body.account-app.atelier-v2 .atmosphere { position:absolute; inset:0 17% 0 35%; pointer-events:none; overflow:hidden; opacity:.85; }
body.account-app.atelier-v2 .atmosphere canvas { width:100%; height:100%; display:block; position:absolute; inset:0; }
body.account-app.atelier-v2 .atmosphere-fallback { position:absolute; right:20%; top:22%; width:150px; height:100px; border-radius:13px; border:1px solid #ccc7bf28; background:linear-gradient(130deg,#0f0e10aa,#4a453b47); box-shadow:16px 12px 0 -2px #eeedea50,32px 24px 0 -4px #eeedea35; transform:rotate(-18deg) skewY(9deg); }
body.account-app.atelier-v2 .atmosphere.is-webgl .atmosphere-fallback { opacity:0; }
body.account-app.atelier-v2 .footer { margin-top:auto; padding:27px 0 22px; border-top:0; color:#d0ccc4; font-size:10px; }
body.account-app.atelier-v2 .footer .text-button { font-size:10px; color:#d1ccc4; }

/* The studio is a continuous workspace, with a dedicated action dock. */
body.account-app.atelier-v2[data-view=studio] .page-head { min-height:123px; padding:23px 0; }
body.account-app.atelier-v2[data-view=studio] h1 { font-size:25px; }
body.account-app.atelier-v2[data-view=studio] .page-eyebrow { font-size:8px; margin-bottom:6px; }
body.account-app.atelier-v2[data-view=studio] .page-head p { margin-top:6px; font-size:11px; }
body.account-app.atelier-v2 .studio-panel { border:0; background:none; box-shadow:none; padding:0; }
body.account-app.atelier-v2 .studio-layout { display:flex; flex-direction:column; gap:0;  align-items:stretch; width:100%; min-width:0; }
body.account-app.atelier-v2 .studio-projects { display:flex; flex-direction:row; align-items:center; min-width:0; padding:0 0 17px; margin:0; gap:18px; border:0; background:none; border-radius:0; box-shadow:none; }
body.account-app.atelier-v2 .studio-rail-head { display:flex; align-items:center; gap:6px; flex:none; padding:0; margin:0; }
body.account-app.atelier-v2 .studio-rail-head strong { font-size:11px; font-weight:500; color:#d1cdc5; }
body.account-app.atelier-v2 .studio-project-list { display:flex; align-items:center; gap:8px; overflow:auto; min-width:0; padding:2px; }
body.account-app.atelier-v2 .studio-project-row { display:flex; flex:none; position:relative; border:0; margin:0;  width:auto; max-width:none; }
body.account-app.atelier-v2 .studio-project-button { display:flex; align-items:center; gap:9px; min-height:34px; max-width:240px; border-radius:7px; border:1px solid transparent; color:#d1cdc5; background:transparent; padding:7px 30px 7px 11px; width:auto;  flex:none; }
body.account-app.atelier-v2 .studio-project-button>svg { width:14px; height:14px; }
body.account-app.atelier-v2 .studio-project-button strong { display:block; font-size:12px; font-weight:500; color:inherit; max-width:180px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
body.account-app.atelier-v2 .studio-project-button small { display:none; }
body.account-app.atelier-v2 .studio-project-button:hover { background:#1e1d20; color:#dad6cf; }
body.account-app.atelier-v2 .studio-project-button.active { background:#0f0e10; border-color:#ccc7bf28; color:#dcd9d3; box-shadow:0 2px 3px #00000005; }
body.account-app.atelier-v2 .studio-project-delete { position:absolute; right:4px; top:5px; width:24px; height:24px; opacity:0; }
body.account-app.atelier-v2 .studio-project-row:hover .studio-project-delete,body.account-app.atelier-v2 .studio-project-row:focus-within .studio-project-delete { opacity:1; }
body.account-app.atelier-v2 .studio-project-delete svg { width:12px; height:12px; }
body.account-app.atelier-v2 .studio-rail-note { display:none; }
body.account-app.atelier-v2 .studio-layout>.studio-board-head { display:flex; justify-content:space-between; align-items:center; min-width:0; padding:20px 23px; background:#0f0e10; border:1px solid #ccc7bf28; border-bottom:0; border-radius:12px 12px 0 0; margin:0; }
body.account-app.atelier-v2 .studio-board-head h2 { font-size:17px; font-weight:600; letter-spacing:-.3px; color:#e1ded9; margin:0 0 7px; }
body.account-app.atelier-v2 .studio-board-head p { font-size:11px; color:#d1cdc5; margin:0;  display:block; }
body.account-app.atelier-v2 .studio-head-actions { display:flex; gap:9px; align-items:center;  flex:none; }
body.account-app.atelier-v2 .studio-head-actions>.text-button { margin-right:5px; color:#d1cdc5; }
body.account-app.atelier-v2 .studio-workbench { display:grid; grid-template-columns:270px minmax(0,1fr) 268px; gap:0; height:clamp(570px,calc(100dvh - 375px),810px); min-height:570px; background:#0f0e10; border:1px solid #ccc7bf28; border-bottom:0; margin:0; overflow:hidden; align-items:stretch;  width:100%; min-width:0; }
body.account-app.atelier-v2 .studio-board,body.account-app.atelier-v2 .studio-stage,body.account-app.atelier-v2 .studio-inspector { min-width:0; height:100%; min-height:0; border:0; border-radius:0; background:#0f0e10; box-shadow:none; }
body.account-app.atelier-v2 .studio-board { display:flex; flex-direction:column; background:#131214; border-right:1px solid #ccc7bf28; overflow:hidden; }
body.account-app.atelier-v2 .studio-filterbar { flex:none; display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:15px 14px 13px; border-bottom:1px solid #ccc7bf28; background:none; font-size:10px; }
body.account-app.atelier-v2 .studio-filterbar>.studio-check { font-size:11px; color:#d2cec6; gap:7px; }
body.account-app.atelier-v2 .studio-filterbar>.text-button { margin-left:auto; font-size:10px; color:#d1cdc5; }
body.account-app.atelier-v2 .studio-filterbar>.studio-spacer { display:none; }
body.account-app.atelier-v2 .studio-filterbar>.studio-muted { width:100%; color:#d0ccc4; font-size:9px; letter-spacing:.2px; }
body.account-app.atelier-v2 .studio-filterbar .studio-segment { width:100%; display:flex; padding:3px; gap:1px; background:#1e1d21; border:1px solid #ccc7bf28; border-radius:7px; }
body.account-app.atelier-v2 .studio-segment button { flex:1; white-space:nowrap; font-size:10px; font-weight:400; background:none; color:#d2cdc5; border:0; border-radius:5px; padding:6px 5px; }
body.account-app.atelier-v2 .studio-segment button:hover { color:#dfdcd6; }
body.account-app.atelier-v2 .studio-segment button.active { background:#0f0e10; color:#ddd9d3; box-shadow:0 1px 3px #00000010; }
body.account-app.atelier-v2 .studio-shot-list { min-height:0; overflow:auto; flex:1; display:block; padding:8px; gap:0; }
body.account-app.atelier-v2 .studio-shot { display:grid; grid-template-columns:16px minmax(0,1fr); gap:9px; padding:13px 10px; margin:0 0 5px; border-radius:8px; border:1px solid transparent; box-shadow:none; background:none; cursor:pointer; position:relative; transition:background .15s,border-color .15s; }
body.account-app.atelier-v2 .studio-shot:hover { background:#19181b; }
body.account-app.atelier-v2 .studio-shot.is-current { background:#0f0e10; border-color:#ccc7bf28; box-shadow:0 2px 6px #00000008; }
body.account-app.atelier-v2 .studio-shot.is-current::before { content:""; position:absolute; width:2px; height:22px; background:#998f7e; left:-1px; top:12px; border-radius:2px; }
body.account-app.atelier-v2 .studio-shot.is-current .studio-shot-prompt { color:#d5d1ca; }
body.account-app.atelier-v2 .studio-shot.is-selected:not(.is-current),body.account-app.atelier-v2 .studio-shot.is-selected { background:#1b1a1d; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .studio-shot>.studio-check { grid-column:1; grid-row:1; align-self:start; margin-top:2px; }
body.account-app.atelier-v2 .studio-shot-number { display:none; }
body.account-app.atelier-v2 .studio-shot-main { grid-column:2; min-width:0; }
body.account-app.atelier-v2 .studio-shot-title { display:flex; margin:0 0 7px; color:#dcd8d2; font-size:12px; }
body.account-app.atelier-v2 .studio-shot-title strong { font-weight:600;  color:#e1ded9; font-size:13px; }
body.account-app.atelier-v2 .studio-shot-prompt { color:#d1cdc5; font-size:11px; line-height:1.7; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; white-space:normal;  font-size:12px; }
body.account-app.atelier-v2 .studio-shot .studio-chip-list,body.account-app.atelier-v2 .studio-shot-specs { display:none; }
body.account-app.atelier-v2 .studio-shot-status { grid-column:2; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px; min-width:0; text-align:left; }
body.account-app.atelier-v2 .studio-shot-status>small { display:block; font-size:9px; color:#d0ccc4; }
body.account-app.atelier-v2 .studio-shot-actions { justify-content:flex-start; display:flex; gap:12px; flex-basis:100%; margin:1px 0 0; flex-wrap:wrap; }
body.account-app.atelier-v2 .studio-shot-actions .text-button { display:inline-flex; font-size:10px; color:#cfcbc3; padding:2px 0; }
body.account-app.atelier-v2 .studio-shot .studio-shot-actions .studio-remove-shot { display:none; }
body.account-app.atelier-v2 .studio-pager { padding:8px; border:0; }
body.account-app.atelier-v2 .studio-pager .btn { width:100%; font-size:11px; }
body.account-app.atelier-v2 .studio-stage { display:flex; flex-direction:column; overflow:hidden; }
body.account-app.atelier-v2 .studio-stage-head { display:flex; align-items:flex-start; justify-content:space-between; padding:22px 22px 17px; gap:12px; border-bottom:0; }
body.account-app.atelier-v2 .studio-stage-head h3 { color:#e0ddd7; font-weight:550; font-size:17px; margin:0 0 6px; }
body.account-app.atelier-v2 .studio-stage-head .studio-muted { color:#d1ccc4; font-size:10px; }
body.account-app.atelier-v2 .studio-stage-nav { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
body.account-app.atelier-v2 .studio-stage-nav .text-button { color:#d1cdc5; font-size:10px; }
body.account-app.atelier-v2 .studio-stage-nav .btn { font-size:11px; min-height:32px; padding:0 11px; }
body.account-app.atelier-v2 .studio-stage-media { flex:none; position:relative; height:174px; min-height:0; aspect-ratio:auto; margin:0 22px; background:radial-gradient(ellipse at 73% 25%,#1d1c1f,transparent 55%),linear-gradient(125deg,#161517,#1a191c); border:1px solid #ccc7bf28; border-radius:8px; overflow:hidden; display:grid; place-items:center; }
body.account-app.atelier-v2 .studio-stage-media::before { content:""; position:absolute; inset:0; opacity:.1; background:url('/grain.svg'); pointer-events:none; }
body.account-app.atelier-v2 .studio-stage-media::after { content:""; position:absolute; top:15px; left:15px; width:14px; height:14px; border-top:1px solid #ccc7bf28; border-left:1px solid #ccc7bf28; }
body.account-app.atelier-v2 .studio-stage-placeholder { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:22px; gap:9px; text-align:center; width:100%; min-height:0; background:none; color:#d1cdc5; }
body.account-app.atelier-v2 .studio-stage-placeholder>svg { width:25px; height:25px; color:#d2cdc5; margin-bottom:3px; stroke-width:1.2; }
body.account-app.atelier-v2 .studio-stage-placeholder strong { color:#d6d1ca; font-size:13px; font-weight:500;  font-size:15px; }
body.account-app.atelier-v2 .studio-stage-placeholder span { font-size:10px; line-height:1.7; color:#d1cdc5; max-width:360px;  font-size:11px; }
body.account-app.atelier-v2 .studio-stage-placeholder.is-generated strong { color:#d5d0c9; }
body.account-app.atelier-v2 .studio-stage-placeholder.is-failed strong,body.account-app.atelier-v2 .studio-stage-placeholder.is-failed>svg { color:#d1cdc5; }
body.account-app.atelier-v2 .studio-generation-spinner { display:block; width:24px; height:24px; border:2px solid #ccc7bf28; border-top-color:#ccc6bd; border-radius:50%; animation:ui-spin 1s linear infinite; }
body.account-app.atelier-v2 .studio-stage-media-note { display:flex; gap:12px; align-items:center; flex-wrap:wrap; color:#d0ccc4; font-size:10px; padding:10px 23px 4px;  background:transparent; border:0; }
body.account-app.atelier-v2 .studio-stage-media-note .text-button { font-size:10px; margin-left:auto; }
body.account-app.atelier-v2 .studio-stage-prompt { padding:20px 23px; flex:1; min-height:0; max-height:none; overflow:auto; background:none; overscroll-behavior:contain; }
body.account-app.atelier-v2 .studio-stage-prompt-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px; }
body.account-app.atelier-v2 .studio-stage-prompt-head strong { font-size:12px; color:#d3cfc8; font-weight:550;  color:#dddad4; }
body.account-app.atelier-v2 .studio-stage-prompt-head .btn { border:0; background:transparent; box-shadow:none; padding:0; font-size:10px; color:#d1cdc5; min-height:25px; }
body.account-app.atelier-v2 .studio-stage-prompt>p { color:#cfcbc3; font-size:13px; line-height:2; white-space:pre-wrap; cursor:text; margin:0 0 19px; max-height:none; overflow-wrap:anywhere;  color:#d7d2cb; font-size:14px; }
body.account-app.atelier-v2 .studio-chip-list { gap:6px; display:flex; flex-wrap:wrap; }
body.account-app.atelier-v2 .studio-asset-chip { display:inline-flex; align-items:center; border:1px solid #ccc7bf28; background:#161518; color:#d2cdc5; border-radius:5px; padding:4px 7px; font-size:10px; line-height:1.5; }
body.account-app.atelier-v2 .studio-frame-strip { position:static; flex:none; overflow:auto; display:flex; gap:5px; padding:11px 20px; border-top:1px solid #ccc7bf28; background:#131214; border-radius:0; }
body.account-app.atelier-v2 .studio-frame-tab { min-width:51px; flex:none; border:1px solid transparent; background:none; color:#d0ccc4; font-size:10px; border-radius:5px; padding:7px 9px; }
body.account-app.atelier-v2 .studio-frame-tab:hover { color:#d8d4cd; background:#1a191d; }
body.account-app.atelier-v2 .studio-frame-tab.active { background:#1e1d21; color:#d3cfc8; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .studio-inspector { padding:22px 19px; border-left:1px solid #ccc7bf28; background:#121113; overflow:auto; }
body.account-app.atelier-v2 .studio-inspector-title { color:#d9d5ce; font-size:12px; font-weight:550; display:flex; align-items:center; gap:7px;  font-size:13px; }
body.account-app.atelier-v2 .studio-inspector>.studio-muted { color:#d0ccc4; font-size:10px; line-height:1.8; margin:8px 0 22px; }
body.account-app.atelier-v2 .studio-form { display:grid; gap:19px; }
body.account-app.atelier-v2 .studio-field { display:flex; flex-direction:column; gap:9px; min-width:0; color:#d2cdc5; font-size:11px; position:relative;  font-size:12px; }
body.account-app.atelier-v2 .studio-field>.studio-muted { font-size:10px; color:#d0ccc4; line-height:1.7; }
body.account-app.atelier-v2 .studio-form-grid.three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
body.account-app.atelier-v2 .studio-inspector .studio-form-grid.three { grid-template-columns:1fr; gap:18px; }
body.account-app.atelier-v2 .studio-inspector .studio-form-grid.three>.studio-field { grid-column:auto; }
body.account-app.atelier-v2 .studio-inspector>button.btn { width:100%; margin-top:22px; color:#d0ccc4; border-color:#ccc7bf28; background:#131315; }
body.account-app.atelier-v2 .studio-inspector.has-changes>button.btn { color:#18171a; background:#bbb4a9; border-color:#ccc6bd; }
body.account-app.atelier-v2 .studio-inspector-divider { border:0; height:1px; background:#1f1e21; margin:25px 0 20px; }
body.account-app.atelier-v2 .studio-batchbar { position:sticky; bottom:14px; z-index:15; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 23px; border:1px solid #ccc7bf28; border-radius:0 0 12px 12px; background:#121113e8; backdrop-filter:blur(24px); box-shadow:0 8px 18px #00000007; margin:0; transition:box-shadow .25s,border-color .25s,background .25s; }
body.account-app.atelier-v2 .studio-batchbar.has-selection { border-color:#ccc7bf28; background:#161517eF; box-shadow:0 5px 24px #00000012; }
body.account-app.atelier-v2 .studio-batchbar strong { display:block; color:#d8d4cd; font-size:12px; font-weight:550;  font-size:13px; }
body.account-app.atelier-v2 .studio-batchbar small { display:block; color:#d1ccc4; font-size:10px; line-height:1.8; margin-top:4px; }
body.account-app.atelier-v2 .studio-batch-actions { display:flex; align-items:center; gap:9px; margin:0; position:static; background:none; box-shadow:none; flex:none; }
body.account-app.atelier-v2 .studio-batch-actions .btn { font-size:11px; min-height:34px;  font-size:12px; min-height:36px; }
body.account-app.atelier-v2 .studio-inline-status,body.account-app.atelier-v2 .studio-submission-result { color:#d2cdc5; background:#19181b; border:1px solid #ccc7bf28; border-radius:7px; padding:12px 15px; font-size:11px; line-height:1.8; }
body.account-app.atelier-v2 .studio-inline-status.is-error { background:#161517; color:#d2cec6; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .studio-run { border:1px solid #ccc7bf28; background:#151416; border-radius:7px; padding:12px; margin-top:16px; font-size:10px; color:#d2cdc5; }
body.account-app.atelier-v2 .studio-run p,body.account-app.atelier-v2 .studio-run small { color:#d0ccc4; font-size:10px; }
body.account-app.atelier-v2 .studio-empty { padding:45px 22px; text-align:center; color:#d1ccc4; }
body.account-app.atelier-v2 .studio-empty>svg { color:#cfcbc3; width:30px; height:30px; margin-bottom:14px; }
body.account-app.atelier-v2 .studio-empty h3 { color:#d3cec6; font-size:14px; margin-bottom:9px; font-weight:500; }
body.account-app.atelier-v2 .studio-empty p { color:#d1ccc4; font-size:11px; line-height:1.9; }

/* Choice controls: full model names, keyboard search and visible specifications. */
body.account-app.atelier-v2 .ui-choice-native { position:absolute!important; opacity:0; width:1px!important; height:1px!important; min-height:0!important; padding:0!important; border:0!important; pointer-events:none; clip-path:inset(50%); }
body.account-app.atelier-v2 .ui-choice { min-width:0; width:100%; }
body.account-app.atelier-v2 .ui-choice-trigger { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:41px; padding:11px 12px; color:#d4d0c9; background:#0f0e10; border:1px solid #ccc7bf28; border-radius:7px; font-size:12px; text-align:left; line-height:1.65; box-shadow:0 1px 2px #00000004; transition:border-color .15s,box-shadow .15s; }
body.account-app.atelier-v2 .ui-choice-trigger>span:first-child { overflow-wrap:anywhere; }
body.account-app.atelier-v2 .ui-choice-trigger:hover,body.account-app.atelier-v2 .ui-choice-trigger[aria-expanded=true] { border-color:#ccc7bf28; box-shadow:0 0 0 3px #0000000b; }
body.account-app.atelier-v2 .ui-choice-chevron { flex:none; color:#d0ccc4; font:16px/1 sans-serif; transition:transform .2s; }
body.account-app.atelier-v2 .ui-choice-trigger[aria-expanded=true] .ui-choice-chevron { transform:rotate(180deg); }
body.account-app.atelier-v2 .ui-choice-segments { display:flex; gap:3px; padding:3px; border:1px solid #ccc7bf28; background:#1b1a1d; border-radius:7px; }
body.account-app.atelier-v2 .ui-choice-segments button { flex:1; min-width:0; min-height:29px; border:1px solid transparent; background:none; color:#d1cdc5; font-size:11px; border-radius:5px; padding:5px; white-space:nowrap; transition:background .14s,box-shadow .14s,color .14s; }
body.account-app.atelier-v2 .ui-choice-segments button:hover:not(:disabled) { color:#d9d5ce; }
body.account-app.atelier-v2 .ui-choice-segments button[aria-pressed=true] { background:#0f0e10; border-color:#ccc7bf28; color:#d9d5ce; box-shadow:0 1px 3px #00000010; }
body.account-app.atelier-v2 .ui-choice-menu { position:fixed; inset:auto; margin:0; padding:9px; border:1px solid #ccc7bf28; border-radius:12px; background:#0f0e10f5; backdrop-filter:blur(26px); box-shadow:0 18px 50px #00000021,0 3px 10px #0000000a; color:#d9d5ce; z-index:100; overflow:auto; }
body.account-app.atelier-v2 .ui-choice-menu:popover-open { animation:ui-popover .18s var(--ui-ease); }
body.account-app.atelier-v2 .ui-choice-menu::backdrop { background:transparent; }
body.account-app.atelier-v2 .ui-choice-heading { padding:7px 8px 12px; font-size:10px; color:#d1ccc4; }
body.account-app.atelier-v2 .ui-choice-search { width:100%; margin:0 0 8px; min-height:36px!important; font-size:12px!important; background:#141315!important; }
body.account-app.atelier-v2 .ui-choice-list { display:flex; flex-direction:column; gap:3px; }
body.account-app.atelier-v2 .ui-choice-option { border:1px solid transparent; border-radius:7px; padding:11px 10px; background:none; text-align:left; display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
body.account-app.atelier-v2 .ui-choice-option strong { font-size:12px; font-weight:500; color:#dcd8d2; display:block; line-height:1.7; }
body.account-app.atelier-v2 .ui-choice-option small { font:10px/1.8 ui-monospace,monospace; color:#d1ccc4; display:block; overflow-wrap:anywhere; margin-top:3px; }
body.account-app.atelier-v2 .ui-choice-option i { font-style:normal; color:#d3cec6; }
body.account-app.atelier-v2 .ui-choice-option:hover,body.account-app.atelier-v2 .ui-choice-option:focus-visible { background:#1a191c; outline:0; }
body.account-app.atelier-v2 .ui-choice-option[aria-selected=true] { background:#19181b; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .ui-choice-foot { padding:12px 9px 4px; border-top:1px solid #ccc7bf28; margin-top:8px; font-size:9px; color:#d0ccc4; }
body.account-app.atelier-v2 .ui-choice-empty { padding:18px 10px; font-size:12px; color:#d1ccc4; }

/* Account surfaces and data. */
body.account-app.atelier-v2 :is(.panel-box,.summary-card,.settings-card,.connection-card,.plugin-download-card) { background:#0f0e10f2; border:1px solid #ccc7bf28; border-radius:12px; box-shadow:0 2px 3px #00000003; }
body.account-app.atelier-v2 .panel-head { padding:24px 25px 20px; border:0; align-items:center; gap:16px; }
body.account-app.atelier-v2 .panel-head h2 { font-size:16px; font-weight:550; color:#ddd9d3; letter-spacing:-.2px; }
body.account-app.atelier-v2 .panel-head p { color:#d1ccc4; font-size:11px; margin-top:8px; line-height:1.8; }
body.account-app.atelier-v2 .count-badge { font-size:10px; color:#d1cdc5; background:#18171a; border:1px solid #ccc7bf28; border-radius:5px; padding:3px 6px; vertical-align:middle; }
body.account-app.atelier-v2 .summary-grid { display:grid; grid-template-columns:minmax(260px,1fr) minmax(480px,2fr); gap:18px; margin:0 0 26px;  border:0; background:transparent; box-shadow:none; border-radius:0; overflow:visible; }
body.account-app.atelier-v2 .summary-card { padding:23px 25px; min-height:155px; }
body.account-app.atelier-v2 .main-balance { background:radial-gradient(ellipse at 0% 0%,#1a191c,transparent 75%),#0f0e10; position:relative; overflow:hidden; }
body.account-app.atelier-v2 .main-balance::after { content:""; position:absolute; width:110px; height:110px; border:1px solid #ccc7bf28; border-radius:20px; right:-55px; bottom:-55px; transform:rotate(30deg); box-shadow:0 0 0 16px #eeedea66,0 0 0 32px #eeedea55; }
body.account-app.atelier-v2 .card-label { color:#d1cdc5; font-size:11px; }
body.account-app.atelier-v2 .card-label svg { color:#d0ccc4; width:16px; height:16px; }
body.account-app.atelier-v2 .card-label small { display:block; font:8px/1.7 "Segoe UI",sans-serif; letter-spacing:1.8px; color:#cfcbc3; margin-top:4px; }
body.account-app.atelier-v2 .balance-number { margin-top:19px; color:#dcd8d2; gap:6px; }
body.account-app.atelier-v2 .balance-number strong { font-size:29px; font-weight:450; letter-spacing:-1px; font-variant-numeric:tabular-nums; }
body.account-app.atelier-v2 .main-balance .balance-number strong { font-size:39px;  color:#e3e0db; }
body.account-app.atelier-v2 .balance-number small { color:#d0ccc4; font-size:14px; }
body.account-app.atelier-v2 .card-hint { color:#d0ccc4; font-size:10px; margin-top:10px; line-height:1.8; }
body.account-app.atelier-v2 .wallet-signature { display:none; }
body.account-app.atelier-v2 .wallet-side { display:flex; flex-direction:column; gap:12px; }
body.account-app.atelier-v2 .wallet-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; flex:1; }
body.account-app.atelier-v2 .wallet-metrics .summary-card { min-height:0; padding:21px; }
body.account-app.atelier-v2 .workspace-shortcuts { display:flex; gap:26px; padding:0 6px; }
body.account-app.atelier-v2 .workspace-shortcuts button { display:flex; align-items:center; gap:8px; color:#d1cdc5; font-size:10px; background:none; }
body.account-app.atelier-v2 .workspace-shortcuts svg { width:13px; height:13px; }
body.account-app.atelier-v2 .workspace-shortcuts button>svg:last-child { width:10px; }
body.account-app.atelier-v2:not([data-view=activity]) .summary-grid { display:none; }
body.account-app.atelier-v2 .table-toolbar { background:none; border:0; padding:0 25px 20px; display:flex; flex-wrap:wrap; gap:10px; }
body.account-app.atelier-v2 .search-field { border:1px solid #ccc7bf28; border-radius:7px; background:#131315; min-height:36px; color:#cfcbc3; padding:0 12px; }
body.account-app.atelier-v2 .search-field input:not([type=checkbox]) { background:transparent; border:0; box-shadow:none; min-height:34px; font-size:11px; }
body.account-app.atelier-v2 .search-field input:not([type=checkbox]):focus { box-shadow:none; }
body.account-app.atelier-v2 .search-field svg { width:15px; height:15px; }
body.account-app.atelier-v2 .toolbar-note { color:#d0ccc4; font-size:10px; }
body.account-app.atelier-v2 th { font-size:10px; font-weight:500; color:#d1ccc4; background:#141315; border-color:#ccc7bf28; padding:13px 25px; }
body.account-app.atelier-v2 td { font-size:12px; padding:19px 25px; border-color:#ccc7bf28; color:#d1cdc5; background:transparent; }
body.account-app.atelier-v2 tbody tr:hover td { background:#121113; }
body.account-app.atelier-v2 .entry-title { font-size:12px; color:#d5d0c9; }
body.account-app.atelier-v2 .entry-detail { font-size:10px; line-height:1.9; color:#d0ccc4; }
body.account-app.atelier-v2 .entry-id { color:#d1cdc5; font-size:10px; }
body.account-app.atelier-v2 .amount { font-variant-numeric:tabular-nums; font-weight:550; }
body.account-app.atelier-v2 .amount.positive { color:#d3cfc8!important; }
body.account-app.atelier-v2 .amount.negative { color:#d7d2cb!important; }
body.account-app.atelier-v2 .status-pill { display:inline-flex; align-items:center; gap:5px; padding:3px 6px; font-size:9px; border-radius:4px; border:1px solid #ccc7bf28; color:#d1cdc5; background:#171719; line-height:1.5; }
body.account-app.atelier-v2 .status-pill::before { content:""; width:4px; height:4px; border-radius:50%; background:currentColor; opacity:.7; }
body.account-app.atelier-v2 :is(.status-pill.completed,.status-pill.settled) { color:#d4d0c9!important; background:#171619!important; border-color:#ccc7bf28!important; color:#cfcbc3; border-color:#ccc7bf28; background:#171619; }
body.account-app.atelier-v2 :is(.status-pill.review,.status-pill.frozen) { color:#dacebd!important; background:#161518!important; border-color:#ccc7bf28!important; color:#d2cdc5; border-color:#ccc7bf28; background:#161518; }
body.account-app.atelier-v2 :is(.status-pill.processing,.status-pill.running,.status-pill.queued) { color:#cec9c1!important; background:#161517!important; border-color:#ccc7bf28!important; color:#d2cdc5; border-color:#ccc7bf28; background:#151417; }
body.account-app.atelier-v2 :is(.status-pill.failed,.status-pill.cancelled) { color:#d6bbb6!important; background:#161517!important; border-color:#ccc7bf28!important; color:#d1cdc5; border-color:#ccc7bf28; background:#151417; }
body.account-app.atelier-v2 .pager { padding:18px 25px; color:#d0ccc4; font-size:10px; background:none; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .page-button { border:1px solid #ccc7bf28; background:#0f0e10; color:#d1cdc5; border-radius:6px; min-height:30px; }
body.account-app.atelier-v2 .table-state { padding:45px 25px; color:#d0ccc4; }
body.account-app.atelier-v2 .table-state strong,body.account-app.atelier-v2 .table-state h3 { color:#d2cdc5; }
body.account-app.atelier-v2 .table-state p { color:#d0ccc4; }
body.account-app.atelier-v2 .billing-note { margin:20px 0; color:#d0ccc4; font-size:10px; line-height:1.9; gap:10px; }
body.account-app.atelier-v2 .billing-note svg { color:#d0ccc4; }
body.account-app.atelier-v2 :is(.demo-notice,.page-notice) { background:#1a191d; color:#d1cdc5; border:1px solid #ccc7bf28; border-radius:7px; padding:10px 15px; font-size:10px; margin:0 0 17px; }
body.account-app.atelier-v2 .announcement-banner { background:#161517; border:1px solid #ccc7bf28; border-radius:9px; padding:14px 19px; margin-bottom:22px; }
body.account-app.atelier-v2 .announcement-mark { color:#d1cdc5; background:#1e1d21; }
body.account-app.atelier-v2 .announcement-meta { color:#d0ccc4; }
body.account-app.atelier-v2 .announcement-banner-copy h2 { color:#d0ccc4; }
body.account-app.atelier-v2 .announcement-banner-copy p { color:#d0ccc4; }

/* Task records, assets, models and connection settings share the same hierarchy. */
body.account-app.atelier-v2 .task-column-head,body.account-app.atelier-v2 .task-row { display:grid; grid-template-columns:minmax(275px,2.2fr) minmax(100px,.75fr) minmax(85px,.6fr) minmax(125px,.9fr) minmax(90px,.6fr); gap:20px; padding:19px 25px; border-color:#ccc7bf28; background:none; }
body.account-app.atelier-v2 .task-column-head { background:#141315; color:#d0ccc4; font-size:10px; padding-block:13px; }
body.account-app.atelier-v2 .task-row:hover { background:#111113; }
body.account-app.atelier-v2 .task-row strong,body.account-app.atelier-v2 .task-model { color:#d3cec6; font-size:12px; }
body.account-app.atelier-v2 .task-row :is(p,small),body.account-app.atelier-v2 .task-meta,body.account-app.atelier-v2 .task-row-date { color:#d0ccc4; font-size:10px; }
body.account-app.atelier-v2 .task-id-line { display:grid; grid-template-columns:75px minmax(0,1fr) auto; color:#d0ccc4; font-size:10px; background:none; }
body.account-app.atelier-v2 .task-id-line code { color:#d1cdc5; font-size:10px; background:none; }
body.account-app.atelier-v2 .task-id-copy { color:#d1cdc5; background:none; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .task-row-actions { gap:8px; }
body.account-app.atelier-v2 .task-row-actions .text-button { font-size:10px; }
body.account-app.atelier-v2 .task-bulk-toolbar { display:flex; padding:13px 25px; border-color:#ccc7bf28; background:#121113; font-size:11px; color:#d0ccc4; }
body.account-app.atelier-v2 .task-bulk-actions { display:flex; gap:9px; }
body.account-app.atelier-v2 .task-selection-label { color:#d1cdc5; }
body.account-app.atelier-v2 .task-timing,body.account-app.atelier-v2 .task-update-note { color:#d1ccc4; background:#161518; border-color:#ccc7bf28; font-size:11px; }
body.account-app.atelier-v2 .task-error { color:#d1cdc5; background:#161517; border-color:#ccc7bf28; font-size:11px; }
body.account-app.atelier-v2 .studio-toolbar { display:flex; flex-wrap:wrap; gap:16px; align-items:center; margin-bottom:24px; padding:0; background:none; border:0; }
body.account-app.atelier-v2 .studio-toolbar .search-field { width:280px; }
body.account-app.atelier-v2 .studio-toolbar .studio-segment { display:flex; gap:6px; }
body.account-app.atelier-v2 .studio-toolbar .studio-segment button { font-size:11px; padding:8px 14px; border-radius:7px; }
body.account-app.atelier-v2 .studio-toolbar .studio-segment button.active { border:1px solid #ccc7bf28; }
body.account-app.atelier-v2 .studio-muted { color:#d0ccc4; font-size:11px; }
body.account-app.atelier-v2 .studio-assets-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
body.account-app.atelier-v2 .studio-asset { overflow:hidden; background:#0f0e10; border:1px solid #ccc7bf28; border-radius:10px; box-shadow:0 2px 4px #00000004; transition:transform .25s var(--ui-spring),box-shadow .25s; }
body.account-app.atelier-v2 .studio-asset:hover { transform:translateY(-3px); box-shadow:0 9px 18px #0000000b; }
body.account-app.atelier-v2 .studio-asset-thumb { aspect-ratio:4/3; background:radial-gradient(ellipse at 50% 20%,#161618,#1e1d20); color:#cfcbc3; border:0; }
body.account-app.atelier-v2 .studio-asset-thumb>svg { width:38px; height:38px; stroke-width:1.1; }
body.account-app.atelier-v2 .studio-asset-thumb>span { color:#d1ccc4; background:#0f0e10cc; border:1px solid #ccc7bf28; border-radius:5px; padding:4px 8px; font-size:10px; }
body.account-app.atelier-v2 .studio-asset-info { padding:17px; }
body.account-app.atelier-v2 .studio-asset-info h3 { color:#cfcbc3; font-size:13px; font-weight:500; }
body.account-app.atelier-v2 .studio-asset-info p { color:#d0ccc4; font-size:11px; }
body.account-app.atelier-v2 .studio-asset-actions { display:flex; gap:18px; margin-top:14px; }
body.account-app.atelier-v2 .model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:0 25px 25px; }
body.account-app.atelier-v2 .model-card { background:#0f0e10; border:1px solid #ccc7bf28; border-radius:9px; padding:22px; box-shadow:none; }
body.account-app.atelier-v2 .model-index { display:block; font:9px/1 ui-monospace,monospace; color:#cfcbc3; letter-spacing:2px; margin-bottom:15px; }
body.account-app.atelier-v2 .model-card h3 { color:#d0ccc4; font-size:15px; line-height:1.7; font-weight:550; }
body.account-app.atelier-v2 .model-card p,body.account-app.atelier-v2 .model-id { color:#d0ccc4; font-size:11px; line-height:1.9; overflow-wrap:anywhere; }
body.account-app.atelier-v2 .model-meta { border-color:#ccc7bf28; color:#d0ccc4; }
body.account-app.atelier-v2 .model-tag { border-color:#ccc7bf28; background:#161517; color:#d1ccc4; }
body.account-app.atelier-v2 .model-price { color:#d2cdc5; }
body.account-app.atelier-v2 .model-price strong { color:#d3cfc8; font-weight:550; }
body.account-app.atelier-v2 .connection-card,body.account-app.atelier-v2 .plugin-download-card { padding:24px; display:flex; gap:21px; align-items:center; margin-bottom:20px; }
body.account-app.atelier-v2 .connection-card h2,body.account-app.atelier-v2 .plugin-download-copy h2 { color:#d3cec6; font-size:18px; font-weight:500; }
body.account-app.atelier-v2 .connection-card p,body.account-app.atelier-v2 .plugin-download-copy p { color:#d0ccc4; font-size:12px; line-height:1.9; }
body.account-app.atelier-v2 .connection-card ol { color:#d1cdc5; font-size:11px; }
body.account-app.atelier-v2 .plugin-package-icon { width:50px; height:55px; background:#1b1a1d; color:#d0ccc4; border:1px solid #ccc7bf28; border-radius:9px; display:grid; place-items:center; }
body.account-app.atelier-v2 .plugin-download-copy { flex:1; min-width:0; }
body.account-app.atelier-v2 .plugin-download-actions { display:flex; flex-direction:column; gap:10px; }
body.account-app.atelier-v2 .settings-card { padding:25px; }
body.account-app.atelier-v2 .settings-columns { gap:20px; }
body.account-app.atelier-v2 .settings-card h2 { color:#cfcbc3; font-size:15px; }
body.account-app.atelier-v2 .settings-card p,body.account-app.atelier-v2 .settings-foot,body.account-app.atelier-v2 .settings-card small { color:#d0ccc4; font-size:11px; line-height:1.9; }
body.account-app.atelier-v2 .settings-foot,body.account-app.atelier-v2 .profile-id,body.account-app.atelier-v2 .profile-actions { border-color:#ccc7bf28; }
body.account-app.atelier-v2 .copy-field { background:#151417; border:1px solid #ccc7bf28; border-radius:7px; }
body.account-app.atelier-v2 .copy-field code { color:#d1cdc5; background:none; font-size:11px; }
body.account-app.atelier-v2 .legacy-plugin-config { color:#d1ccc4; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .legacy-plugin-config summary { font-size:12px; }
body.account-app.atelier-v2 .profile-list dt { color:#d0ccc4; font-size:11px; }
body.account-app.atelier-v2 .profile-list dd { color:#d2cdc5; font-size:12px; }
body.account-app.atelier-v2 .profile-id { color:#d0ccc4; font-size:11px; }
body.account-app.atelier-v2 .profile-id code { color:#d0ccc4; font-size:10px; }
body.account-app.atelier-v2 .key-row { border-color:#ccc7bf28; background:none; }
body.account-app.atelier-v2 .key-title { color:#d2cdc5; }
body.account-app.atelier-v2 .key-secret { color:#d1cdc5; background:#161517; }
body.account-app.atelier-v2 .key-meta,body.account-app.atelier-v2 .key-last-used { color:#d0ccc4; }

/* Dialogs are the glass layer; focus stays on content. */
body.account-app.atelier-v2 .modal { padding:32px; border:1px solid #ccc7bf28; border-radius:14px; background:#0f0e10f7; backdrop-filter:blur(26px); color:#dfdcd6; box-shadow:0 30px 100px #00000033,0 5px 20px #0000000d; max-height:90dvh; overflow:auto; }
body.account-app.atelier-v2 .modal::backdrop { background:#d9d5ce45; backdrop-filter:blur(6px); }
body.account-app.atelier-v2 .modal[open] { animation:ui-dialog .23s var(--ui-ease); }
body.account-app.atelier-v2 .modal h2 { color:#dbd7d1; font-size:22px; font-weight:550; letter-spacing:-.5px; }
body.account-app.atelier-v2 .modal>p { color:#d1ccc4; font-size:12px; line-height:1.9; }
body.account-app.atelier-v2 .modal label,body.account-app.atelier-v2 .password-form label { color:#d1cdc5; font-size:12px; }
body.account-app.atelier-v2 .modal label small,body.account-app.atelier-v2 .password-form label small { color:#d0ccc4; font-size:10px; }
body.account-app.atelier-v2 .modal-brand,body.account-app.atelier-v2 .modal-eyebrow { color:#d0ccc4; }
body.account-app.atelier-v2 .modal-close { right:15px; top:15px; }
body.account-app.atelier-v2 .modal .auth-tabs { padding:4px; background:#1a191c; border:1px solid #ccc7bf28; border-radius:8px; }
body.account-app.atelier-v2 .auth-tabs button { border:0; border-radius:5px; color:#d0ccc4; font-size:12px; }
body.account-app.atelier-v2 .auth-tabs button.active { background:#0f0e10; color:#d2cec6; box-shadow:0 1px 4px #0000000c; }
body.account-app.atelier-v2 .detail-list { border-color:#ccc7bf28; }
body.account-app.atelier-v2 .detail-list dt { color:#d0ccc4; font-size:11px; }
body.account-app.atelier-v2 .detail-list dd { color:#cfcac1; font-size:12px; }
body.account-app.atelier-v2 .detail-list code { color:#d1cdc5; font-size:10px; background:none; }
body.account-app.atelier-v2 .task-detail-prompt { color:#d2cdc5; background:#141315; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .task-detail-timing { color:#d1ccc4; background:#151416; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .studio-dialog { width:min(750px,94vw); }
body.account-app.atelier-v2 .studio-small-dialog { width:min(500px,94vw); }
body.account-app.atelier-v2 .studio-dialog-intro { margin-bottom:26px; }
body.account-app.atelier-v2 .studio-prompt-editor { min-height:240px; padding:17px; color:#cfcac1; background:#121113; border:1px solid #ccc7bf28; border-radius:8px; font-size:13px; line-height:2; box-shadow:none; }
body.account-app.atelier-v2 .studio-prompt-editor:focus { outline:0; border-color:#ccc7bf28; box-shadow:0 0 0 3px #00000010; }
body.account-app.atelier-v2 .studio-mention { color:#d1ccc4; background:#1d1c20; border:1px solid #ccc7bf28; border-radius:4px; }
body.account-app.atelier-v2 .studio-mention-menu { background:#0f0e10; border:1px solid #ccc7bf28; box-shadow:0 10px 30px #00000017; border-radius:9px; }
body.account-app.atelier-v2 .studio-mention-option { background:#0f0e10; color:#d2cdc5; }
body.account-app.atelier-v2 .studio-mention-option.active,body.account-app.atelier-v2 .studio-mention-option:hover { background:#1a191d; }
body.account-app.atelier-v2 .studio-asset-picker button { background:#131214; border-color:#ccc7bf28; color:#d1cdc5; border-radius:7px; }
body.account-app.atelier-v2 .studio-asset-picker button.selected { border-color:#ccc7bf28; background:#1b1a1d; color:#d0ccc4; }
body.account-app.atelier-v2 .studio-import-preview { border-color:#ccc7bf28; background:#131214; }
body.account-app.atelier-v2 .studio-import-row { border-color:#ccc7bf28; color:#d1cdc5; }
body.account-app.atelier-v2 .studio-form-actions { margin-top:24px; padding-top:20px; border-top:1px solid #ccc7bf28; display:flex; gap:10px; justify-content:flex-end; }
body.account-app.atelier-v2 :is(.recharge-card,.recharge-code-panel,.recharge-account-card) { background:#151417; border-color:#ccc7bf28; color:#d1cdc5; }
body.account-app.atelier-v2 :is(.recharge-code-panel h3,.recharge-account-card strong) { color:#cfcbc3; }
body.account-app.atelier-v2 .recharge-code-panel p { color:#d0ccc4; }
body.account-app.atelier-v2 .toast { color:#18171a; background:#c4beb4ee; border:1px solid #ccc7bf1c; backdrop-filter:blur(20px); border-radius:10px; padding:13px 19px; box-shadow:0 10px 30px #00000024; font-size:12px; }

/* Additional component states and touch targets. */
body.account-app.atelier-v2 .studio-ref-button { color:#d1ccc4; background:#131214; border:1px solid #ccc7bf28; padding:7px 10px; border-radius:6px; font-size:11px; transition:background .16s,border-color .16s; }
body.account-app.atelier-v2 .studio-ref-button.selected { color:#d2decf; background:#1a191d; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .studio-ref-button[aria-pressed=true]::after { color:#c8d5c2; }
body.account-app.atelier-v2 .studio-mention-hint,body.account-app.atelier-v2 .studio-mention-option small { color:#ccc7be; }
body.account-app.atelier-v2 .studio-mention { color:#d9d5ce; background:#1b1a1d; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .studio-mention.missing { color:#d9cbbb; border-color:#ccc7bf28; background:#161618; }
body.account-app.atelier-v2 .studio-skeleton { background:linear-gradient(100deg,#1a191d 20%,#161517 45%,#1a191d 70%); background-size:200% 100%; }
body.account-app.atelier-v2 .studio-run progress { height:3px; accent-color:#988d7b; }
body.account-app.atelier-v2 .ui-choice-segments[aria-label="画面比例"] button { display:flex; flex-direction:column; align-items:center; gap:7px; padding:9px 3px 7px; }
body.account-app.atelier-v2 .ui-choice-segments[aria-label="画面比例"] button::before { content:""; width:17px; height:12px; border:1px solid currentColor; border-radius:2px; opacity:.65; }
body.account-app.atelier-v2 .ui-choice-segments[aria-label="画面比例"] button[data-value="16:9"]::before { width:20px; height:11px; }
body.account-app.atelier-v2 .ui-choice-segments[aria-label="画面比例"] button[data-value="1:1"]::before { width:13px; height:13px; }
body.account-app.atelier-v2 .ui-choice-segments[aria-label="画面比例"] button[data-value="3:4"]::before { width:10px; height:13px; }
body.account-app.atelier-v2 .ui-choice-segments[aria-label="画面比例"] button[data-value="9:16"]::before { width:8px; height:14px; }
body.account-app.atelier-v2 .recharge-purchase { background:#141315; border:1px solid #ccc7bf28; border-radius:8px; }
body.account-app.atelier-v2 .recharge-purchase strong { color:#d5d1ca; }
body.account-app.atelier-v2 .recharge-purchase span,body.account-app.atelier-v2 #redeem-hint { color:#ccc7be; }
body.account-app.atelier-v2 .recharge-account { background:#18171a; border:1px solid #ccc7bf28; color:#d0ccc4; border-radius:8px; }
body.account-app.atelier-v2 .recharge-account strong { color:#d1ddcc; }
body.account-app.atelier-v2 .recharge-account span,body.account-app.atelier-v2 .manual-recharge summary { color:#d1cdc5; }
body.account-app.atelier-v2 .manual-recharge { border-color:#ccc7bf28; }
body.account-app.atelier-v2 .manual-recharge p,body.account-app.atelier-v2 .redeem-login { color:#cec9c0; }
body.account-app.atelier-v2 .redeem-result { color:#cee0c7; background:#19181b; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .task-id-label,body.account-app.atelier-v2 .task-query-time { color:#cbc5bc; }
body.account-app.atelier-v2 .task-query-message,body.account-app.atelier-v2 .task-query-feedback { color:#ccd5c3; }
body.account-app.atelier-v2 .task-query-feedback.is-error,body.account-app.atelier-v2 .task-public-error { color:#d8c0ba; }
body.account-app.atelier-v2 .task-public-error { background:#151417; border-color:#ccc7bf28; }
body.account-app.atelier-v2 .task-detail-query,body.account-app.atelier-v2 .task-timing-panel { background:#141315; border-color:#ccc7bf28; color:#cbd4c3; }
body.account-app.atelier-v2 .task-timing-panel strong,body.account-app.atelier-v2 .task-section-heading h3 { color:#d2deca; }
body.account-app.atelier-v2 .task-timing-panel small,body.account-app.atelier-v2 .task-timing-panel span { color:#ccc7bf; }
body.account-app.atelier-v2 .task-detail-media { background:transparent; border-color:#ccc7bf28; color:#ced8c4; }
body.account-app.atelier-v2 .task-download-ready { color:#cadbc1; }
body.account-app.atelier-v2 .task-sync-pending { color:#d9cebc; }
body.account-app.atelier-v2 .inline-note,body.account-app.atelier-v2 .recharge-steps span { color:#ccc7be; }
body.account-app.atelier-v2 .recharge-steps strong { color:#cfdcc4; }
body.account-app.atelier-v2 .btn.primary[aria-busy=true] { cursor:progress; opacity:.75; }
body.account-app.atelier-v2 .announcement-item { border-color:#ccc7bf28; }
body.account-app.atelier-v2 .announcement-item-title,body.account-app.atelier-v2 .announcement-item-heading:hover .announcement-item-title { color:#dfdcd6; }
body.account-app.atelier-v2 .announcement-content { color:#d3cec6; }
body.account-app.atelier-v2 .announcement-item-time,body.account-app.atelier-v2 .announcement-dialog-toolbar,body.account-app.atelier-v2 .announcement-message { color:#cac5bc; }
body.account-app.atelier-v2 .announcement-dialog-toolbar { border-color:#ccc7bf28; }
body.account-app.atelier-v2 .announcement-banner h2 { color:#d6dece; }
body.account-app.atelier-v2 .announcement-banner p { color:#cbc6bd; }
body.account-app.atelier-v2 .announcement-meta>span { color:#cfcac1; }

/* Public welcome. */
body.account-app.atelier-v2 .welcome { min-height:100dvh; padding:0 max(30px,calc((100vw - 1280px)/2)); background:radial-gradient(ellipse at 80% 35%,#211f23,transparent 60%),#161618; color:#dad7d1; }
/* Explicit route state also works in embedded Chromium without :has(). */
body.account-app.atelier-v2.landing-mode .sidebar,
body.account-app.atelier-v2.landing-mode .app-shell { display:none; }
body.account-app.atelier-v2 .welcome-nav { display:flex; align-items:center; justify-content:space-between; gap:24px; height:106px; border-bottom:1px solid #ccc7bf28; }
body.account-app.atelier-v2 .welcome-nav .brand { padding:0; }
body.account-app.atelier-v2 .welcome-nav nav { display:flex; align-items:center; gap:32px; margin-left:auto; font-size:12px; color:#d1cdc5; }
body.account-app.atelier-v2 .welcome-nav nav button { background:none; }
body.account-app.atelier-v2 .welcome-login { padding:10px 17px; background:#0f0e10; color:#cfcac1; border:1px solid #ccc7bf28; border-radius:7px; font-size:12px; }
body.account-app.atelier-v2 .welcome-login svg { margin-left:12px; width:14px; }
body.account-app.atelier-v2 .welcome-stage { position:relative; padding:100px 0 105px; min-height:530px; overflow:hidden; }
body.account-app.atelier-v2 .welcome-copy { position:relative; z-index:1; }
body.account-app.atelier-v2 .editorial-label { font:10px "Segoe UI",sans-serif; letter-spacing:3px; color:#d1ccc4; margin-bottom:25px; }
body.account-app.atelier-v2 .welcome h1 { font-size:clamp(40px,4.5vw,64px); letter-spacing:-2px; line-height:1.35; font-weight:500; color:#ddd9d3; }
body.account-app.atelier-v2 .welcome-copy>p { color:#d1ccc4; font-size:13px; line-height:2; margin:25px 0; }
body.account-app.atelier-v2 .welcome-actions { display:flex; gap:12px; margin-top:33px; }
body.account-app.atelier-v2 .welcome-actions .btn { padding:0 24px; min-height:43px; }
body.account-app.atelier-v2 .welcome-orbit { position:absolute; width:380px; height:300px; right:5%; top:110px; border:1px solid #ccc7bf28; border-radius:30px; transform:rotate(-16deg) skewY(8deg); background:linear-gradient(135deg,#0f0e1099,#4e483e50); box-shadow:30px 25px 0 -5px #eeedea66,60px 50px 0 -10px #eeedea44; }
body.account-app.atelier-v2 .welcome-orbit::after { content:""; position:absolute; inset:32px; border:1px solid #ccc7bf28; border-radius:13px; }
body.account-app.atelier-v2 .film-caption { color:#d0ccc4; position:absolute; bottom:70px; right:90px; font-size:10px; letter-spacing:2px; }
body.account-app.atelier-v2 .welcome-features { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding-bottom:50px; }
body.account-app.atelier-v2 .welcome-features>button { background:#0f0e10b8; border:1px solid #ccc7bf28; border-radius:10px; padding:23px; display:flex; gap:16px; align-items:center; text-align:left; transition:transform .2s,box-shadow .2s; }
body.account-app.atelier-v2 .welcome-features>button:hover { transform:translateY(-3px); box-shadow:0 8px 20px #0000000a; }
body.account-app.atelier-v2 .feature-icon { width:36px; height:36px; display:grid; place-items:center; background:#1c1a1e; color:#d1cdc5; border-radius:8px; }
body.account-app.atelier-v2 .welcome-features strong { display:block; color:#d2cdc5; font-size:13px; font-weight:500; }
body.account-app.atelier-v2 .welcome-features small { display:block; color:#d0ccc4; margin-top:7px; font-size:10px; }
body.account-app.atelier-v2 .welcome-features>button>svg { margin-left:auto; color:#cfcbc3; width:15px; }
body.account-app.atelier-v2 .welcome-footer { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #ccc7bf28; padding:23px 0; font-size:10px; color:#d0ccc4; }

@keyframes ui-spin { to { transform:rotate(360deg); } }
@keyframes ui-dialog { from { opacity:0; transform:translateY(10px) scale(.99); } to { opacity:1; transform:translateY(0) scale(1); } }
@keyframes ui-popover { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
@keyframes ui-reveal { from { opacity:.3; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
body.account-app.atelier-v2 .ui-enter,body.account-app.atelier-v2 .ui-reveal { animation:ui-reveal .32s var(--ui-ease); }

@media(min-width:1600px) {
 body.account-app.atelier-v2 .studio-workbench { grid-template-columns:300px minmax(0,1fr) 300px; }
 body.account-app.atelier-v2 .studio-inspector { padding:25px; }
 body.account-app.atelier-v2 .studio-stage-media { height:210px; }
}
@media(min-width:1081px) {
 body.account-app.atelier-v2[data-view=studio]:has(.studio-inline-status:not([hidden])) .studio-workbench { height:clamp(570px,calc(100dvh - 425px),760px); }
}
@media(max-width:1250px) {
 :root.atelier-v2 { --sidebar:178px; }
 body.account-app.atelier-v2 .container { padding:0 22px; }
 body.account-app.atelier-v2 .topbar { padding:0 22px; }
 body.account-app.atelier-v2 .studio-workbench { grid-template-columns:230px minmax(0,1fr) 235px; }
 body.account-app.atelier-v2 .studio-inspector { padding:20px 15px; }
 body.account-app.atelier-v2 .studio-stage-head { flex-wrap:wrap; }
 body.account-app.atelier-v2 .studio-stage-nav { width:100%; justify-content:flex-start; }
 body.account-app.atelier-v2 .studio-stage-nav .btn { margin-left:auto; }
 body.account-app.atelier-v2 .studio-batchbar { padding:15px 18px; }
 body.account-app.atelier-v2 .studio-batchbar small { max-width:230px; }
 body.account-app.atelier-v2 .task-column-head { display:none; }
 body.account-app.atelier-v2 .task-row { grid-template-columns:minmax(0,2fr) minmax(100px,1fr) minmax(90px,1fr); gap:16px; }
 body.account-app.atelier-v2 .task-identity { grid-column:1; grid-row:1/3; }
 body.account-app.atelier-v2 .task-row-status { grid-column:2; grid-row:1; }
 body.account-app.atelier-v2 .task-row-amount { grid-column:3; grid-row:1; }
 body.account-app.atelier-v2 .task-row-date { grid-column:2; grid-row:2; }
 body.account-app.atelier-v2 .task-row-actions { grid-column:3; grid-row:2; }
 body.account-app.atelier-v2 .summary-grid { grid-template-columns:1fr; }
 body.account-app.atelier-v2 .main-balance { min-height:180px; }
 body.account-app.atelier-v2 .model-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:1080px) {
 body.account-app.atelier-v2 .studio-workbench { grid-template-columns:230px minmax(0,1fr); height:auto; min-height:0; align-items:start; }
 body.account-app.atelier-v2 .studio-board { grid-row:1/3; height:1050px; }
 body.account-app.atelier-v2 .studio-stage { height:620px; }
 body.account-app.atelier-v2 .studio-inspector { grid-column:2; border-top:1px solid #ccc7bf28; border-left:0; height:auto; }
 body.account-app.atelier-v2 .studio-inspector .studio-form-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
 body.account-app.atelier-v2 .ui-choice-segments { flex-wrap:wrap; }
 body.account-app.atelier-v2 .studio-inspector-divider,body.account-app.atelier-v2 .studio-inspector-divider~.studio-inspector-title,body.account-app.atelier-v2 .studio-inspector-divider~.studio-muted { display:none; }
 body.account-app.atelier-v2 .studio-batchbar { flex-wrap:wrap; gap:12px; }
 body.account-app.atelier-v2 .studio-batchbar small { max-width:none; }
 body.account-app.atelier-v2 .studio-batch-actions { margin-left:auto; }
 body.account-app.atelier-v2 .studio-assets-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 body.account-app.atelier-v2 .page-head { min-height:150px; }
 body.account-app.atelier-v2 .workspace-crumb>span,body.account-app.atelier-v2 .workspace-crumb>i { display:none; }
 body.account-app.atelier-v2 .task-row { grid-template-columns:minmax(0,1fr) minmax(100px,.7fr); }
 body.account-app.atelier-v2 .task-identity { grid-column:1/-1; grid-row:1; }
 body.account-app.atelier-v2 .task-row-status { grid-column:1; grid-row:2; }
 body.account-app.atelier-v2 .task-row-amount { grid-column:2; grid-row:2; }
 body.account-app.atelier-v2 .task-row-date { grid-column:1; grid-row:3; }
 body.account-app.atelier-v2 .task-row>div.task-row-actions { grid-column:2; grid-row:3; }
 body.account-app.atelier-v2 .task-bulk-actions { flex-wrap:wrap; }
 body.account-app.atelier-v2 .scene-mode-toggle { display:none; }
}
@media(max-width:760px) {
 :root.atelier-v2 { --sidebar:230px; }
 body.account-app.atelier-v2 .app-shell { margin-left:0; }
 body.account-app.atelier-v2 .sidebar { top:0; transform:translateX(-100%); transition:transform .25s var(--ui-ease); background:#18171af5; z-index:51; }
 body.account-app.atelier-v2.nav-open { overflow:hidden; }
 body.account-app.atelier-v2.nav-open .sidebar { transform:none; }
 body.account-app.atelier-v2 .nav-backdrop { position:fixed; inset:0!important; z-index:50; background:#d7d3cd50; backdrop-filter:blur(4px); }
 body.account-app.atelier-v2 .nav-backdrop:not([hidden]) { display:block; }
 body.account-app.atelier-v2 .mobile-menu { display:inline-grid; }
 body.account-app.atelier-v2 .topbar { height:60px; padding:0 16px; }
 body.account-app.atelier-v2 .topbar-left,body.account-app.atelier-v2 .topbar-right { gap:10px; }
 body.account-app.atelier-v2 .topbar-right .sync-label { display:none; }
 body.account-app.atelier-v2 .account-button { padding-left:0; border:0; max-width:145px; }
 body.account-app.atelier-v2 .container { padding:0 16px; }
 body.account-app.atelier-v2 .page-head,body.account-app.atelier-v2[data-view=studio] .page-head { min-height:145px; padding:23px 0; gap:10px; }
 body.account-app.atelier-v2 h1,body.account-app.atelier-v2[data-view=studio] h1 { font-size:25px; }
 body.account-app.atelier-v2 .page-eyebrow { font-size:8px; letter-spacing:1.5px; }
 body.account-app.atelier-v2 .page-head p { max-width:210px; font-size:10px; }
 body.account-app.atelier-v2 .head-actions { flex-direction:column; gap:7px; }
 body.account-app.atelier-v2 .head-actions .btn { min-height:31px; padding:0 11px; font-size:11px; }
 body.account-app.atelier-v2 .atmosphere { inset:0 0 0 20%; opacity:.4; }
 body.account-app.atelier-v2 .studio-projects { gap:8px; padding-bottom:14px; }
 body.account-app.atelier-v2 .studio-rail-head { gap:3px; }
 body.account-app.atelier-v2 .studio-rail-head strong { font-size:10px; white-space:nowrap; }
 body.account-app.atelier-v2 .studio-project-button { max-width:190px; padding-left:8px; }
 body.account-app.atelier-v2 .studio-project-button strong { font-size:11px; }
 body.account-app.atelier-v2 .studio-project-delete { opacity:.6; }
 body.account-app.atelier-v2 .studio-layout>.studio-board-head { flex-direction:column; align-items:start; padding:19px 16px; gap:17px; }
 body.account-app.atelier-v2 .studio-head-actions { width:100%; gap:8px; }
 body.account-app.atelier-v2 .studio-head-actions>.text-button { margin-right:auto; }
 body.account-app.atelier-v2 .studio-head-actions .btn { font-size:11px; padding:0 10px; }
 body.account-app.atelier-v2 .studio-workbench { display:flex; flex-direction:column; height:auto; }
 body.account-app.atelier-v2 .studio-board { width:100%; height:325px; border-right:0; border-bottom:1px solid #ccc7bf28; }
 body.account-app.atelier-v2 .studio-shot-list { display:flex; gap:8px; align-items:stretch; padding:10px; scroll-snap-type:x proximity; }
 body.account-app.atelier-v2 .studio-shot { width:225px; flex:none; align-content:start; margin:0; scroll-snap-align:start; }
 body.account-app.atelier-v2 .studio-shot-prompt { -webkit-line-clamp:3; }
 body.account-app.atelier-v2 .studio-shot-status { margin-top:7px; }
 body.account-app.atelier-v2 .studio-filterbar { padding:12px 15px; }
 body.account-app.atelier-v2 .studio-filterbar>.studio-muted { display:none; }
 body.account-app.atelier-v2 .studio-stage { height:auto; width:100%; }
 body.account-app.atelier-v2 .studio-stage-head { padding:20px 17px 17px; }
 body.account-app.atelier-v2 .studio-stage-nav { gap:16px; }
 body.account-app.atelier-v2 .studio-stage-media { margin:0 16px; height:175px; }
 body.account-app.atelier-v2 .studio-stage-media-note { padding:11px 17px 0; font-size:9px; gap:8px; }
 body.account-app.atelier-v2 .studio-stage-prompt { padding:22px 17px; flex:none; max-height:none; }
 body.account-app.atelier-v2 .studio-stage-prompt>p { max-height:420px; overflow:auto; font-size:12px; }
 body.account-app.atelier-v2 .studio-stage-prompt-head .btn { font-size:9px; }
 body.account-app.atelier-v2 .studio-inspector { width:100%; padding:22px 17px; }
 body.account-app.atelier-v2 .studio-inspector>.studio-muted { margin-bottom:17px; }
 body.account-app.atelier-v2 .studio-batchbar { position:relative; bottom:auto; padding:17px; border-radius:0 0 12px 12px; }
 body.account-app.atelier-v2 .studio-batchbar strong { font-size:12px; }
 body.account-app.atelier-v2 .studio-batchbar small { font-size:10px; }
 body.account-app.atelier-v2 .studio-batch-actions { display:grid; grid-template-columns:1fr 1fr; width:100%; gap:8px; }
 body.account-app.atelier-v2 .studio-batch-actions>.text-button { grid-column:1/-1; justify-self:start; }
 body.account-app.atelier-v2 .studio-batch-actions>.btn:last-child { grid-column:1/-1; min-height:39px; }
 body.account-app.atelier-v2 .studio-batch-actions .btn { padding:0 8px; font-size:10px; }
 body.account-app.atelier-v2 .summary-grid { gap:14px; }
 body.account-app.atelier-v2 .main-balance { min-height:180px; }
 body.account-app.atelier-v2 .wallet-metrics { gap:8px; }
 body.account-app.atelier-v2 .wallet-metrics .summary-card { padding:17px 12px; }
 body.account-app.atelier-v2 .card-label { font-size:10px; }
 body.account-app.atelier-v2 .card-label svg { display:none; }
 body.account-app.atelier-v2 .balance-number strong { font-size:24px; }
 body.account-app.atelier-v2 .card-hint { font-size:9px; }
 body.account-app.atelier-v2 .workspace-shortcuts { gap:9px; justify-content:space-between; }
 body.account-app.atelier-v2 .workspace-shortcuts button { font-size:9px; gap:5px; }
 body.account-app.atelier-v2 .workspace-shortcuts button>svg:last-child { display:none; }
 body.account-app.atelier-v2 .panel-head { padding:20px 17px; align-items:start; }
 body.account-app.atelier-v2 .panel-head h2 { font-size:15px; }
 body.account-app.atelier-v2 .panel-head p { font-size:10px; }
 body.account-app.atelier-v2 .table-toolbar { padding:0 17px 17px; gap:9px; }
 body.account-app.atelier-v2 .table-toolbar .search-field { flex:1 0 100%; min-width:0; }
 body.account-app.atelier-v2 .table-toolbar select { font-size:10px; min-width:0; max-width:100%; }
 body.account-app.atelier-v2 th,body.account-app.atelier-v2 td { padding:15px 17px; }
 body.account-app.atelier-v2 .billing-note { font-size:9px; align-items:start; }
 body.account-app.atelier-v2 .billing-note>.text-button { display:none; }
 body.account-app.atelier-v2 .task-row { padding:18px 16px; gap:15px; }
 body.account-app.atelier-v2 .task-bulk-toolbar { padding:13px 16px; gap:12px; flex-wrap:wrap; }
 body.account-app.atelier-v2 .task-bulk-actions { width:100%; }
 body.account-app.atelier-v2 .task-bulk-actions .btn { flex:1; font-size:10px; padding:0 8px; }
 body.account-app.atelier-v2 .studio-toolbar { gap:10px; }
 body.account-app.atelier-v2 .studio-toolbar .search-field { flex:1 0 100%; }
 body.account-app.atelier-v2 .studio-toolbar .studio-segment { gap:2px; }
 body.account-app.atelier-v2 .studio-toolbar .studio-segment button { padding:7px 9px; font-size:10px; }
 body.account-app.atelier-v2 .studio-assets-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 body.account-app.atelier-v2 .studio-asset-info { padding:13px; }
 body.account-app.atelier-v2 .studio-asset-info h3 { font-size:12px; }
 body.account-app.atelier-v2 .studio-asset-info p { font-size:10px; }
 body.account-app.atelier-v2 .model-grid { grid-template-columns:1fr; padding:0 17px 17px; }
 body.account-app.atelier-v2 .connection-card,body.account-app.atelier-v2 .plugin-download-card { padding:20px; flex-wrap:wrap; gap:16px; }
 body.account-app.atelier-v2 .plugin-package-icon { display:none; }
 body.account-app.atelier-v2 .plugin-download-actions { width:100%; }
 body.account-app.atelier-v2 .settings-card { padding:20px; }
 body.account-app.atelier-v2 .modal { max-width:calc(100vw - 24px); border-radius:12px; padding:27px 21px; }
 body.account-app.atelier-v2 .modal .copy-field { flex-wrap:wrap; }
 body.account-app.atelier-v2 .studio-form-grid.three { grid-template-columns:1fr 1fr; }
 body.account-app.atelier-v2 .studio-prompt-editor { min-height:260px; font-size:12px; padding:13px; }
 body.account-app.atelier-v2 .welcome { padding:0 23px; }
 body.account-app.atelier-v2 .welcome-nav { height:85px; gap:12px; }
 body.account-app.atelier-v2 .welcome-nav nav a { display:none; }
 body.account-app.atelier-v2 .welcome-nav nav button { font-size:11px; }
 body.account-app.atelier-v2 .welcome-login { padding:8px 10px; font-size:11px; }
 body.account-app.atelier-v2 .welcome-login svg { display:none; }
 body.account-app.atelier-v2 .welcome-stage { padding:80px 0 75px; }
 body.account-app.atelier-v2 .welcome-orbit { right:-65%; opacity:.35; }
 body.account-app.atelier-v2 .welcome-features { grid-template-columns:1fr; gap:12px; }
 body.account-app.atelier-v2 .welcome-actions .btn { padding:0 16px; font-size:11px; }
 body.account-app.atelier-v2 .film-caption { display:none; }
 body.account-app.atelier-v2 .welcome-footer>span:last-child { display:none; }
}
@media(prefers-reduced-motion:reduce) {
 body.account-app.atelier-v2 *,body.account-app.atelier-v2 *::before,body.account-app.atelier-v2 *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* Earth horizon: photo and optical softness stay behind the interface. */
body.account-app.atelier-v2 { background:#0a090a; }
body.account-app.atelier-v2::before { z-index:0; inset:-4px; top:-170px; height:760px; background:linear-gradient(180deg,#090809c9 0%,#0a090a70 26%,#0a090ab9 58%,#0a090a 96%),url('/assets/yingxu-cinema.webp') center 45%/cover no-repeat; filter:blur(2px); }
body.account-app.atelier-v2 .app-shell { position:relative; z-index:1; }
body.account-app.atelier-v2 .sidebar { background:#0e0e10d4; backdrop-filter:blur(24px); border-color:#ffffff12; }
body.account-app.atelier-v2 .topbar { background:#0c0c0d80; border-color:#ffffff10; }
body.account-app.atelier-v2 .atmosphere { opacity:.35; }
body.account-app.atelier-v2 .atmosphere-fallback { display:none; }
body.account-app.atelier-v2 .tab.active { background:#d2cec613; border-color:#dcd9d31c; box-shadow:0 1px 0 #ffffff05 inset; }
body.account-app.atelier-v2 .tab.active::after { background:#d6d1ca; }
body.account-app.atelier-v2 .btn.primary { background:linear-gradient(#f4f3f2,#e9e7e3); color:#1c1b1f; border-color:#ebe9e5; box-shadow:0 1px 0 #fff8 inset,0 3px 8px #0002; }
body.account-app.atelier-v2 .btn.primary:hover:not(:disabled) { background:#fff; color:#19181b; border-color:#fff; box-shadow:0 4px 15px #0003; }
body.account-app.atelier-v2 .btn.secondary { background:#ffffff04; color:#d7d2cb; border-color:#c7c1b72d; box-shadow:0 1px 0 #ffffff04 inset; }
body.account-app.atelier-v2 .btn.secondary:hover:not(:disabled) { background:#cec9c112; border-color:#d5d1ca4d; }
body.account-app.atelier-v2 .btn.danger { background:#914d4d; color:#fff; border-color:#b16d64; }
body.account-app.atelier-v2 :is(.panel-box,.summary-card,.settings-card,.connection-card,.plugin-download-card) { background:#141315c9; border-color:#dedad41b; box-shadow:0 1px 0 #ffffff04 inset,0 8px 24px #0000000e; backdrop-filter:blur(22px); }
body.account-app.atelier-v2 .main-balance { background:linear-gradient(125deg,#423d34cc,#19181bcc); }
body.account-app.atelier-v2 .main-balance .balance-number strong { color:#f7f6f5; }
body.account-app.atelier-v2 .balance-number strong { color:#edebe7; }
body.account-app.atelier-v2 .main-balance::after { border-color:#e6e4e00d; box-shadow:0 0 0 16px #dcd9d305,0 0 0 32px #dcd9d303; }
body.account-app.atelier-v2 .amount { color:#d7d3cd!important; }
body.account-app.atelier-v2 .amount.plus { color:#acd0ba!important; }
body.account-app.atelier-v2 .amount.minus { color:#d8b5a9!important; }
body.account-app.atelier-v2 .op-cell button,body.account-app.atelier-v2 .op-cell a { color:#d4d0c8; }
body.account-app.atelier-v2 .entry-icon { color:#c3bdb2; background:#e6e4e007; border-color:#e8e6e219; }
body.account-app.atelier-v2 .entry-icon.deposit { color:#a6c4af; background:#7299820c; }
body.account-app.atelier-v2 .state-pill { border-radius:5px; border:1px solid #d6d2cb11; color:#c3bdb2; background:#bbb4a80a; }
body.account-app.atelier-v2 :is(.state-settled,.state-credited,.state-completed) { color:#a8cdb7; background:#69987c15; }
body.account-app.atelier-v2 :is(.state-frozen,.state-review) { color:#d2b78b; background:#b7975815; }
body.account-app.atelier-v2 :is(.state-failed,.state-debited) { color:#d4a5a0; background:#aa746615; }
body.account-app.atelier-v2 .task-identity h3,body.account-app.atelier-v2 .task-row-amount strong { color:#e5e2de; }
body.account-app.atelier-v2 .task-specs,body.account-app.atelier-v2 .task-prompt-excerpt { color:#b3ac9f; }
body.account-app.atelier-v2 .spec-tags span { color:#c9c3ba; background:#c8c2b80d; border:1px solid #cdc8c01c; }
body.account-app.atelier-v2 .model-card-foot,body.account-app.atelier-v2 .form-actions { border-color:#ccc7bf28; }
body.account-app.atelier-v2 .summary-grid { background:transparent; border:0; box-shadow:none; backdrop-filter:none; }
body.account-app.atelier-v2 .studio-layout>.studio-board-head { background:#141316bb; backdrop-filter:blur(24px); }
body.account-app.atelier-v2 .studio-workbench { background:transparent; }
body.account-app.atelier-v2 .studio-board { background:#121214d9; backdrop-filter:blur(24px); }
body.account-app.atelier-v2 .studio-stage { background:#131215d1; backdrop-filter:blur(24px); }
body.account-app.atelier-v2 .studio-inspector { background:#141315de; backdrop-filter:blur(24px); }
body.account-app.atelier-v2 .studio-stage-media { background:radial-gradient(ellipse at 70% 0%,#433d3433,transparent 70%),#0d0c0eaa; border-color:#ffffff0b; }
body.account-app.atelier-v2 .studio-batchbar { background:#171619e8; border-color:#dddad426; box-shadow:0 -1px 0 #ffffff04,0 12px 30px #0003; }
body.account-app.atelier-v2 .studio-batchbar.has-selection { background:#211f23eF; border-color:#d9d5ce48; }
body.account-app.atelier-v2 .studio-shot.is-current { background:#dedbd50d; border-color:#d0ccc438; box-shadow:none; }
body.account-app.atelier-v2 .studio-shot.is-selected:not(.is-current),body.account-app.atelier-v2 .studio-shot.is-selected { background:#c1bbb017; border-color:#d0cbc345; }
body.account-app.atelier-v2 .studio-inspector.has-changes>button.btn { background:#ddd9d3; color:#1a191d; border-color:#e8e6e2; }
body.account-app.atelier-v2 .studio-inspector>button.btn { background:#ffffff03; color:#c1baaf; border-color:#dad6cf20; }
body.account-app.atelier-v2 .ui-choice-trigger { background:#121113a6; border-color:#d5d1ca26; }
body.account-app.atelier-v2 .ui-choice-menu { background:#1a191df5; border-color:#d6d2cb38; box-shadow:0 20px 60px #0006,0 1px 0 #ffffff0a inset; }
body.account-app.atelier-v2 .ui-choice-search { background:#100f11e6!important; }
body.account-app.atelier-v2 .ui-choice-option:hover,body.account-app.atelier-v2 .ui-choice-option:focus-visible,body.account-app.atelier-v2 .ui-choice-option[aria-selected=true] { background:#d3cfc80e; border-color:#d2cdc51b; }
body.account-app.atelier-v2 .ui-choice-segments { background:#0c0c0d80; border-color:#cfcac119; }
body.account-app.atelier-v2 .ui-choice-segments button[aria-pressed=true] { background:#29282d; color:#edebe7; border-color:#cfcbc32b; box-shadow:0 2px 4px #0002; }
body.account-app.atelier-v2 .studio-filterbar .studio-segment { background:#0b0a0c80; border-color:#ffffff09; }
body.account-app.atelier-v2 .studio-segment button.active { background:#29272d; color:#f1efed; box-shadow:0 1px 3px #0002; }
body.account-app.atelier-v2 .modal { background:#18171af5; border-color:#e1ded92b; box-shadow:0 30px 100px #0008,0 1px 0 #ffffff08 inset; }
body.account-app.atelier-v2 .modal::backdrop { background:#09080985; backdrop-filter:blur(8px); }
body.account-app.atelier-v2 .modal .auth-tabs { background:#0f0e10; }
body.account-app.atelier-v2 .auth-tabs button.active { background:#2b292e; color:#edece9; }
body.account-app.atelier-v2 .studio-ref-button { background:#121214; border-color:#dcd8d220; }
body.account-app.atelier-v2 .studio-ref-button.selected { background:#c8c3ba1a; border-color:#cec9c14a; color:#e0ddd8; }
body.account-app.atelier-v2 .studio-mention { background:#bfb9ae18; border-color:#ccc7bf2a; color:#dad7d1; }
body.account-app.atelier-v2 .studio-mention.missing { background:#a8863217; color:#d7b888; border-color:#d8ad5940; }
body.account-app.atelier-v2 .recharge-account { background:#a1978711; border-color:#d2cdc527; }
body.account-app.atelier-v2 .redeem-result { background:#66957a15; color:#b2d1bc; border-color:#7aa78a38; }
body.account-app.atelier-v2 .announcement-banner { background:linear-gradient(110deg,#53432c33,#171719bb); border-color:#c7ac6a27; backdrop-filter:blur(20px); }
body.account-app.atelier-v2 .announcement-mark { color:#c9b584; background:#b7944b0c; border-color:#c3a36022; }
body.account-app.atelier-v2 .status-pill { color:#b4ada0; background:#c3bdb20a; border-color:#ffffff0c; }
body.account-app.atelier-v2 :is(.status-pill.completed,.status-pill.settled) { color:#a8ccb6!important; background:#61967815!important; border-color:#95bda425!important; }
body.account-app.atelier-v2 :is(.status-pill.review,.status-pill.frozen) { color:#d4b98b!important; background:#a7833917!important; border-color:#c7a35e29!important; }
body.account-app.atelier-v2 :is(.status-pill.processing,.status-pill.running,.status-pill.queued) { color:#cdc8bf!important; background:#9f95851a!important; border-color:#bfb9ae28!important; }
body.account-app.atelier-v2 :is(.status-pill.failed,.status-pill.cancelled) { color:#d2a39c!important; background:#b1665715!important; border-color:#c68e7b23!important; }
body.account-app.atelier-v2 .task-public-error { background:#5c3e301e; color:#d5aa91; border-color:#b7886630; }
body.account-app.atelier-v2 .welcome { background:linear-gradient(90deg,#0b0a0cef,#0b0a0c80),url('/assets/yingxu-cinema.webp') center/cover no-repeat; position:relative; z-index:1; }
body.account-app.atelier-v2 .welcome-orbit { display:none; }
body.account-app.atelier-v2 .welcome-features>button { background:#18171abd; backdrop-filter:blur(24px); }
body.account-app.atelier-v2 .toast { color:#f4f2f0; background:#242327ee; border-color:#c4bfb531; }
@media(max-width:760px) {
 body.account-app.atelier-v2 .studio-inspector .studio-form-grid.three { grid-template-columns:1fr; gap:18px; }
 body.account-app.atelier-v2::before { top:-40px; height:680px; background:linear-gradient(#0a090a70,#0a090ad9 68%,#0a090a),url('/assets/yingxu-cinema-mobile.webp') center top/cover no-repeat; }
 body.account-app.atelier-v2 .sidebar { background:#151417f7; }
 body.account-app.atelier-v2 .nav-backdrop { background:#090809aa; }
}
