/* Syenregy Video Studio — design system (spec: Görsel dil). System fonts only (CSP). */
[hidden]{display:none!important}
:root{
  color-scheme:dark;
  --bg:#0b0e13;--panel:#121720;--panel-2:#171d28;--line:#232b38;--text:#f3f5f8;--muted:#8b95a7;
  --accent-1:#ffc21a;--accent-2:#ff9f0a;--accent:linear-gradient(90deg,var(--accent-1),var(--accent-2));
  --ok:#5fd39a;--danger:#ff7a6b;--r-card:14px;--r-field:10px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}
body{min-height:100vh;overflow-x:hidden}
a{color:inherit}
button,input,textarea,select{font:inherit;color:inherit}
h1,h2,h3,p,figure,ul,ol{margin:0}
h1{font-size:22px;line-height:1.25;font-weight:650;letter-spacing:-.3px;overflow-wrap:anywhere}
h2{font-size:16px;font-weight:650}
h3{font-size:14px;font-weight:600;overflow-wrap:anywhere}
small,.muted{color:var(--muted)}
.small{font-size:12px}
.icon{flex:none}
:focus-visible{outline:2px solid var(--accent-1);outline-offset:2px}

input,textarea,select{display:block;width:100%;min-width:0;padding:10px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);outline:none}
input:focus,textarea:focus,select:focus{border-color:var(--accent-1)}
input:disabled,textarea:disabled,select:disabled{opacity:.5;cursor:not-allowed}
textarea{resize:vertical;line-height:1.6}
input::placeholder,textarea::placeholder{color:#5f6a7d}
input[type=file]{padding:8px;font-size:12px}
input[type=checkbox]{display:inline-block;width:auto}
input[type=range]{padding:0;border:0;background:none;accent-color:var(--accent-2)}
label,.field-label{display:block;font-size:12px;font-weight:600;color:#c9d1dd}
label>input,label>textarea,label>select{margin-top:6px}
label>small{display:block;margin-top:4px;font-weight:500}
.field{margin-bottom:16px}
.field-note{display:block;margin-top:6px;font-size:12px;font-weight:500;color:var(--muted)}
.field-note.warn{color:var(--accent-1)}
.field-note:empty{display:none}
.notes{display:grid;gap:6px;padding-left:18px}
.notes.warn{margin-top:6px;font-size:12px;color:var(--accent-1)}
.row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.stack{display:grid;gap:16px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.wide{width:100%}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 14px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer}
.btn:hover:not(:disabled){border-color:#3a4557}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn-primary{background:var(--accent);border-color:transparent;color:#1b1400}
.btn-primary:hover:not(:disabled){filter:brightness(1.06)}
.btn-big{flex:1;min-height:48px;font-size:15px}
.btn-danger{color:var(--danger)}
.btn-link{padding:0;background:none;border:0;color:var(--accent-1);font-size:12px;font-weight:500;text-decoration:underline;cursor:pointer}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:none;border:0;border-radius:8px;color:var(--muted);cursor:pointer}
.icon-btn:hover{color:var(--text);background:var(--panel-2)}

.seg{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;padding:4px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.seg>button{flex:1 1 auto;min-height:32px;padding:6px 10px;background:none;border:0;border-radius:7px;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer}
.seg>button[aria-pressed=true],.seg>button[aria-selected=true]{background:#fff;color:#0b0e13}
.seg>button:disabled{opacity:.55;cursor:not-allowed}
.seg.small{margin:0}
.seg.small>button{min-height:28px;font-size:12px}
.switch{position:relative;flex:none;width:42px;height:24px;padding:0;background:var(--panel-2);border:1px solid var(--line);border-radius:12px;cursor:pointer}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:transform .15s}
.switch[aria-checked=true]{background:var(--accent-2);border-color:transparent}
.switch[aria-checked=true]::after{background:#fff;transform:translateX(18px)}
.switch:disabled{opacity:.5;cursor:not-allowed}
.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
.badge.ok{color:var(--ok);border-color:#1f4a37}
.badge.warn,.badge.busy{color:var(--accent-1);border-color:#4d3d10}
.badge.danger{color:var(--danger);border-color:#4d2320}
.dot{display:inline-block;width:7px;height:7px;margin-left:6px;border-radius:50%;background:var(--accent-2);vertical-align:middle}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chip{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:36px;padding:4px 12px 4px 4px;background:var(--panel-2);border:1px solid var(--line);border-radius:999px;text-align:left;cursor:pointer}
.chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chip img,.chip .icon{width:28px;height:28px;border-radius:50%;object-fit:cover}
.chip small{font-size:11px;color:var(--accent-1)}
.chip[aria-pressed=true]{border-color:var(--accent-1);box-shadow:0 0 0 1px var(--accent-1)}
.chip:disabled{opacity:.55;cursor:not-allowed}
.chip.add{padding:6px 14px;border-style:dashed;color:var(--accent-1)}
.chip.add .icon{width:16px;height:16px}
.card{min-width:0;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card)}
.card>h2{margin-bottom:12px}
details>summary{cursor:pointer}

.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 20px;background:#0b0e13f0;border-bottom:1px solid var(--line)}
.logo{display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:750;text-decoration:none}
.logo b{background:var(--accent);-webkit-background-clip:text;background-clip:text;color:transparent}
.project-menu{position:relative;min-width:0}
.project-menu>summary{display:flex;align-items:center;gap:6px;max-width:260px;padding:6px 10px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);white-space:nowrap;list-style:none}
.project-menu>summary::-webkit-details-marker{display:none}
.project-menu>summary b{overflow:hidden;text-overflow:ellipsis}
.menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;display:grid;gap:2px;width:min(300px,calc(100vw - 32px));max-height:60vh;overflow:auto;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:0 18px 50px #000a}
.menu a,.menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:none;border:0;border-radius:8px;text-align:left;text-decoration:none;overflow-wrap:anywhere;cursor:pointer}
.menu a:hover,.menu button:hover{background:var(--panel-2)}
.menu a[aria-current=true]{color:var(--accent-1)}
.menu button{color:var(--accent-1);font-weight:600}
.tabs{display:flex;flex-wrap:wrap;gap:4px}
.tab{padding:7px 12px;border-radius:var(--r-field);color:var(--muted);font-weight:600;text-decoration:none}
.tab:hover{color:var(--text)}
.tab[aria-current=page]{color:var(--text);background:var(--panel-2)}
.account{display:flex;align-items:center;gap:8px;margin-left:auto}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--panel-2);border:1px solid var(--line);border-radius:50%;font-weight:700}
.view{width:100%;max-width:1500px;margin:0 auto;padding:20px}
.footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 20px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.page-id{display:inline-flex;align-items:center;gap:4px;font-family:ui-monospace,Consolas,monospace}
.page-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.page-head p{margin-top:4px;color:var(--muted)}
.section-gap{margin-top:24px}

.uret{display:grid;grid-template-columns:minmax(320px,440px) minmax(0,1fr);align-items:start;gap:20px}
.gen-panel{position:sticky;top:72px;display:flex;flex-direction:column;max-height:calc(100vh - 92px);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card)}
.gen-scroll{min-height:0;overflow:auto;padding:18px}
.gen-bar{padding:14px 18px;border-top:1px solid var(--line)}
.gen-actions{display:flex;gap:10px}
.estimate{margin-bottom:6px;font-size:12px;color:var(--muted)}
.blocker{margin-bottom:8px;font-size:12px;font-weight:600;color:var(--accent-1)}
.estimate:empty,.blocker:empty{display:none}
.promo-tips{margin-bottom:16px;padding:10px 12px;font-size:13px;line-height:1.5;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.promo-tips>summary{font-weight:600}
.promo-tips ol{margin:10px 0 0;padding-left:20px}
.promo-tips li+li{margin-top:6px}
.promo-tips-label{margin:12px 0 4px;font-weight:600}
.promo-tips blockquote{margin:0;padding:8px 10px;color:var(--muted);border-left:3px solid var(--accent-2);background:var(--panel)}
.promo-media-list{display:flex;flex-wrap:wrap;gap:8px}
.promo-logo{max-width:120px;max-height:80px;background:repeating-conic-gradient(var(--line) 0 25%,transparent 0 50%) 0 0/12px 12px}
.promo-media{margin:0;display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.promo-photo{display:block;max-width:160px;max-height:220px;margin-top:8px;border-radius:var(--r-field);border:1px solid var(--line);object-fit:contain}
.promo-shot{flex:1 1 100%;flex-direction:row;align-items:flex-start;gap:10px}
.promo-shot figcaption{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.promo-shot textarea{width:100%;resize:vertical}
.promo-shot-actions{display:flex;gap:4px;flex-wrap:wrap}
.promo-frame{display:block;flex:none;width:90px;aspect-ratio:9/16;object-fit:cover;border-radius:var(--r-field);border:1px solid var(--line)}
.promo-frame[data-aspect="16:9"]{width:160px;aspect-ratio:16/9}
.promo-link-box{background:var(--panel-2);padding:12px;border:1px solid var(--line);border-radius:var(--r-field);margin-bottom:14px}
.promo-link-row{display:flex;gap:8px;align-items:center;margin-top:6px}
.promo-link-row input{flex:1;min-width:0}
.promo-link-row button{flex:none;white-space:nowrap}
.model-card{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:10px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.model-card .mark{width:10px;height:10px;border-radius:50%;background:var(--accent)}
.edit-strip{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:14px;padding:8px 12px;background:#231b06;border:1px solid #4d3d10;border-radius:var(--r-field);font-weight:600}
.unsaved{font-size:11px;color:var(--accent-1)}
.counter{display:block;margin-top:4px;text-align:right;font-size:11px;color:var(--muted)}
.seconds{display:flex;align-items:center;gap:12px;margin-top:6px}
.seconds output{min-width:44px;text-align:right;font-weight:700}
.advanced{margin-top:4px;padding-top:12px;border-top:1px solid var(--line)}
.advanced>summary{margin-bottom:10px;font-weight:600}
.fix h3{margin:0 0 4px;font-size:14px}
.fix-steps{display:grid;gap:12px;margin:12px 0 0;padding:0;list-style:none;counter-reset:fix}
.fix-steps li{display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:10px;row-gap:6px;counter-increment:fix}
.fix-steps li>*{grid-column:2}
.fix-steps li::before{content:counter(fix);grid-column:1;grid-row:1 / span 3;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--line);color:var(--text);font-weight:700;font-size:13px}
.fix-steps li.done::before{content:"✓";background:var(--ok);color:#06140d}
.fix-steps li>span,.fix-steps li>label{font-weight:600;line-height:26px}
.fix-steps .actions{margin:0}
.fix,.feedback,.compose{padding:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.compose>textarea{margin-top:6px;background:var(--panel)}
/* A field the panel filled itself (Anlat, "Sözü taşı") glows once so the author checks it. */
.filled{animation:filled 2.4s ease-out}
@keyframes filled{0%,40%{box-shadow:0 0 0 2px var(--accent-2);border-radius:var(--r-field)}100%{box-shadow:0 0 0 2px transparent}}
.out{min-height:420px;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card)}
.out-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px}
video{display:block;width:100%;aspect-ratio:16/9;background:#000;border-radius:var(--r-field)}
.waiting{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:16/9;padding:12px;text-align:center;background:var(--panel-2);border:1px dashed var(--line);border-radius:var(--r-field)}
.take-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}
.region-note{flex-basis:100%;font-size:11px;color:var(--muted)}
.hint{padding:24px 0;text-align:center}
.hint-steps{display:grid;gap:12px;max-width:420px;margin:18px auto 0;padding:0;list-style:none;counter-reset:step;text-align:left}
.hint-steps li{display:flex;align-items:center;gap:12px;padding:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);counter-increment:step}
.hint-steps li::before{content:counter(step);display:flex;flex:none;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#1b1400;font-weight:700}
.others{margin-top:20px}
.others>h3,.works-group>h3{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.works-group{margin-bottom:20px}
.take-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:12px}
.take-card{min-width:0;padding:10px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-card)}
.take-card.approved{border-color:#1f4a37}
.take-card .waiting{background:var(--panel)}

.scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:14px}
.scene-card{display:grid;align-content:start;gap:10px}
.scene-card.approved{border-color:#1f4a37}
.scene-card.review{border-color:#4d3d10}
.scene-card.failed{border-color:#4d2320}
.clamp{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.older{display:grid;gap:6px;margin-top:10px}
/* Üretim ilerlemesi: yükselen çubuk + yüzde + safha. Genişlik CSSOM ile --job-pct'ye yazılır;
   satır içi style niteliği CSP (style-src 'self') tarafından engellendiği için öznitelik kullanılmaz. */
.job-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px;margin-top:8px;align-self:stretch;width:100%}
.job-progress-track{position:relative;height:8px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line);border-radius:999px}
.job-progress-bar{display:block;height:100%;width:var(--job-pct,0%);background:linear-gradient(90deg,#7c3aed,#6366f1);border-radius:999px;transition:width .4s ease}
.job-progress-pct{font:600 12px ui-monospace,Consolas,monospace;color:var(--muted);white-space:nowrap}
.job-stage{grid-column:1 / -1;font-size:12px;font-weight:600;color:var(--muted)}
.job-progress.is-done .job-progress-bar{background:linear-gradient(90deg,#3f9d6f,#5fd39a)}
.job-progress.is-done .job-progress-pct,.job-progress.is-done .job-stage{color:var(--ok)}
.job-progress.is-failed .job-progress-bar{background:var(--danger)}
.job-progress.is-failed .job-progress-pct,.job-progress.is-failed .job-stage{color:var(--danger)}
.job-error{margin-top:8px;padding:10px 12px;font-size:12px;line-height:1.45;color:#ffd9d4;background:#2a1614;border:1px solid #4d2320;border-radius:var(--r-field);overflow-wrap:anywhere;align-self:stretch;width:100%}
.job-error b{color:var(--danger)}
.job-error-log{margin:6px 0 0;padding:8px;font:11px/1.5 ui-monospace,Consolas,monospace;color:#e7c9c5;background:#1b0f0e;border-radius:8px;max-height:180px;overflow:auto;white-space:pre-wrap}
.job-error-retry{margin-top:8px}
/* Yönetim › Üretim hataları: imza bazında gruplanmış kayıt; dar ekranda akordeon, uzun metin sarar. */
.errors-card{margin-top:14px}
.errors-list{display:grid;gap:8px;margin-top:10px}
.error-item{padding:10px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.error-item>summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;list-style:none}
.error-item>summary::-webkit-details-marker{display:none}
.error-summary{overflow-wrap:anywhere}
.error-detail{margin-top:6px}
.error-detail>summary{cursor:pointer;list-style:none}
.error-detail>summary::-webkit-details-marker{display:none}
.error-signature{font:600 12px ui-monospace,Consolas,monospace;color:var(--text);overflow-wrap:anywhere}
.error-when{font-size:12px;color:var(--muted);white-space:nowrap}
.error-body{margin-top:10px;display:grid;gap:8px}
.error-cause{margin:0;font-size:12px;line-height:1.45;color:#f0b95b;overflow-wrap:anywhere}
.error-cause.is-known{color:var(--ok)}
.error-meta{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;font-size:12px}
.error-meta dt{font-weight:600;color:var(--muted)}
.error-meta dd{margin:0;overflow-wrap:anywhere}
.error-text{margin:0;padding:8px;font:11px/1.5 ui-monospace,Consolas,monospace;color:#e7c9c5;background:#1b0f0e;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:200px;overflow:auto}
.error-occurrences{margin:0;font-size:12px;color:var(--muted)}
@media (max-width:520px){.error-meta{grid-template-columns:minmax(0,1fr)}.error-when{white-space:normal}}
.proposal{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.check{display:flex;align-items:center;gap:8px}
.film-latest{margin-top:14px}
.lib-card{display:grid;align-content:start;gap:8px}
.gallery{display:flex;flex-wrap:wrap;gap:8px}
.thumb{width:92px;overflow:hidden;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.thumb img{display:block;width:100%;height:64px;object-fit:cover}
.thumb .tools{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px;padding:4px 6px}
.voice{padding:8px;border:1px solid var(--line);border-radius:var(--r-field)}
.voice b{font-size:12px;overflow-wrap:anywhere}
.voice audio{display:block;width:100%;height:32px;margin-top:6px}
.upload{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px dashed var(--line);border-radius:var(--r-field);color:var(--accent-1);cursor:pointer}
.upload input{width:auto;max-width:180px;margin:0;padding:0;background:none;border:0}

dialog{width:min(560px,calc(100vw - 32px));max-height:88vh;overflow:auto;padding:20px;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card)}
dialog::backdrop{background:#000b}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:16px}
#toast{position:fixed;left:50%;bottom:24px;z-index:100;max-width:calc(100vw - 32px);padding:12px 18px;background:#fff;color:#0b0e13;border-radius:var(--r-field);font-weight:600;opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:opacity .2s,transform .2s}
#toast.visible{opacity:1;transform:translate(-50%,0)}
.login{display:grid;place-items:center;min-height:100vh;padding:24px 16px}
.login form{display:grid;gap:12px;width:min(400px,100%)}
.boot{display:grid;place-items:center;align-content:center;gap:12px;min-height:100vh;padding:16px;text-align:center;color:var(--muted)}

/* Narrow screens: the two columns stack (spec: Görsel dil). */
@media (max-width:800px){
  .uret{grid-template-columns:1fr}
  .gen-panel{position:static;max-height:none}
  .view{padding:16px}
  .topbar{padding:10px 16px}
}
@media (max-width:480px){
  .tabs{order:3;width:100%}
  .tab{flex:1;padding:7px 4px;text-align:center}
  .account .name{display:none}
  .project-menu>summary{max-width:170px}
  .gen-actions{flex-direction:column}
  .seg>button{padding:6px;font-size:12px}
  .footer{padding:14px 16px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}.filled{animation:none}}

/* Model picker (Üretim paneli): one option per studio model in the registry. */
.models{display:grid;gap:8px;margin-top:6px}
.model-option{display:grid;gap:2px;padding:10px 12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);text-align:left;cursor:pointer}
.model-option span{font-size:12px;color:var(--muted)}
.model-option small{font-size:11px;color:var(--accent-1)}
.model-option[aria-pressed=true]{border-color:var(--accent-1);box-shadow:0 0 0 1px var(--accent-1)}
.field-note.ok{color:var(--ok)}
.link{padding:0;border:0;background:none;color:var(--accent-2);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}
.count{display:inline-block;min-width:18px;margin-left:6px;padding:0 5px;border-radius:999px;background:var(--accent-1);color:#111;font-size:11px;font-style:normal;line-height:18px;text-align:center}
.table-wrap{overflow-x:auto}
.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th{padding:8px;text-align:left;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}
.admin-table td{padding:8px;border-bottom:1px solid var(--line);vertical-align:middle}
.admin-table .actions{margin:0;justify-content:flex-end}
@media (max-width:640px){
  .tab .count{margin-left:3px}
  .admin-table thead{display:none}
  .admin-table tr{display:grid;gap:2px;padding:10px 0;border-bottom:1px solid var(--line)}
  .admin-table td{padding:0;border:0}
  .admin-table .actions{justify-content:flex-start;margin-top:6px}
}

/* Sayfa / pencere kodu rozeti (sağ üst) ve Güncellemeler penceresi (WP-0010) */
.code-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;font:600 12px ui-monospace,Consolas,monospace;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);cursor:pointer}
.code-badge:hover{color:var(--accent-1);border-color:var(--accent-1)}
.code-badge .icon{width:13px;height:13px}
.version-chip{position:relative;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font:600 12px ui-monospace,Consolas,monospace;color:var(--text);background:none;border:1px solid var(--line);border-radius:999px;cursor:pointer}
.version-chip:hover{border-color:var(--accent-1)}
.version-chip .count{position:static}
.corner-code{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:16px;z-index:5}
.dialog-tools{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}
dialog.wide{width:min(860px,calc(100vw - 32px))}
.updates .up-tools{display:grid;gap:8px;margin:10px 0 14px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{padding:4px 10px;font-size:12px;font-weight:600;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;cursor:pointer}
.chip[aria-pressed=true]{color:#111;background:var(--accent-1);border-color:var(--accent-1)}
.timeline{position:relative}
.tl-month{margin:16px 0 8px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.tl-item{position:relative;padding:0 0 16px 24px;border-left:1px solid var(--line);margin-left:6px}
.tl-dot{position:absolute;left:-6px;top:4px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:2px solid var(--accent-1)}
.tl-item header{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:6px}
.tl-ver{font-family:ui-monospace,Consolas,monospace;color:var(--accent-1)}
.tl-title{font-weight:600}
.tl-item ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.tl-item li{padding:8px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.tl-item li p{margin:4px 0 0;overflow-wrap:anywhere}
.k{display:inline-block;padding:1px 7px;font-size:11px;font-weight:700;border-radius:999px}
.k-yeni{color:#0b2a14;background:#6fe39a}.k-iyi{color:#0b1d33;background:#7fb6ff}.k-duz{color:#332205;background:#ffc21a}.k-guv{color:#330b0b;background:#ff8a8a}
.tl-where{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px}
.code-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px}
.code-chip .page-id{padding:2px 6px;color:var(--muted);background:none;border:1px solid var(--line);border-radius:6px;cursor:pointer}
.code-chip .icon{width:12px;height:12px}

/* Kütüphane: karakter kartı ve karakter düzenleme ekranı (#kutuphane/<proje>/<karakter>) */
.char-card{color:inherit;text-decoration:none;cursor:pointer}
.char-card:hover{border-color:#3a4557}
.char-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:16px}
.char-cover{display:grid;place-items:center;aspect-ratio:3/4;overflow:hidden;background:var(--panel-2);border-radius:var(--r-field);color:var(--muted)}
.char-cover img{display:block;width:100%;height:100%;object-fit:contain}
.char-cover .icon{width:40px;height:40px}
.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.char-top{margin-bottom:16px}
.char-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:24px;align-items:start}
.char-side{display:grid;gap:16px;min-width:0}
.char-block{display:grid;gap:10px;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card)}
.char-name{display:flex;align-items:center;gap:8px;min-width:0}
.char-name-form{display:grid;gap:8px}
.char-stage{display:grid;gap:12px;min-width:0}
.char-preview{display:grid;place-items:center;aspect-ratio:4/3;max-height:min(58vh,560px);overflow:hidden;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-card)}
.char-preview img{display:block;width:100%;height:100%;object-fit:contain}
.char-preview figcaption{display:flex;align-items:center;gap:8px;max-width:420px;padding:24px;text-align:center}
.char-strip{display:flex;flex-wrap:wrap;gap:10px}
.char-thumb{position:relative;width:96px;height:96px;padding:0;overflow:hidden;background:var(--panel-2);border:2px solid var(--line);border-radius:var(--r-field);cursor:pointer}
.char-thumb[aria-pressed=true]{border-color:var(--accent-1)}
.char-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.char-thumb .badge{position:absolute;top:4px;left:4px;background:var(--panel)}
.char-add{position:relative;display:grid;place-items:center;align-content:center;gap:4px;width:96px;height:96px;border:1px dashed var(--line);border-radius:var(--r-field);color:var(--accent-1);font-size:11px;text-align:center;cursor:pointer}
.char-add input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
@media (max-width:860px){.char-layout{grid-template-columns:1fr}.char-stage{order:-1}}
/* Yönetim › Üyeler: a member's production modules (admin.js) */
.module-toggles{display:flex;flex-wrap:wrap;gap:6px 14px}
.module-toggle{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.module-toggle label{cursor:pointer}

/* Karakter düzenleme: görsel üretimi ve "Üretilenler" geçmişi (portraits.py) */
.char-view{display:grid;gap:12px;min-width:0}
.char-pending{display:grid;place-items:center;align-content:center;gap:2px;padding:6px;text-align:center;cursor:default;border-style:dashed}
.char-pending b{font-size:12px;color:var(--accent-1)}
.char-pending small{font-size:11px}
.char-pending.is-failed b{color:var(--danger)}
.char-thumb .badge .icon{width:12px;height:12px}

/* Karakter: hazır ses seçimi (voices.py) */
.voice-list{display:grid;gap:6px;max-height:48vh;overflow-y:auto;padding-right:4px}
.voice-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field)}
.voice-row-text{display:grid;min-width:0}
.voice-row-text small{overflow-wrap:anywhere}
.voice-row.is-busy{border-color:var(--accent-1)}
.voice-row audio{grid-column:1/-1;width:100%;height:32px}
.voice-custom>summary{font-weight:600;margin-bottom:10px}

/* Çözünürlük/FPS: a choice the model makes and then enhances (spec 2026-09-26-cozunurluk-fps). */
.seg button.enhanced::after { content: " +"; opacity: .7; }

/* Karakter: favori, görsel türü etiketi, geçmişi gizle */
.fav-mark{color:var(--danger)}
.role-switch{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.role-switch .seg{margin-top:0}
.thumb-role{position:absolute;right:4px;bottom:4px;padding:1px 6px;border-radius:999px;background:var(--panel);color:var(--text);font-size:10px;font-weight:600}
.btn[data-lib=favorite][aria-pressed=true]{color:var(--danger)}

/* İmaj sekmesi (imaj.js, images.py): form solda, "Üretilenler" sağda, istek başına bir grup */
.imaj-layout{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:20px;align-items:start;margin-top:16px}
.imaj-form{position:sticky;top:calc(12px + env(safe-area-inset-top,0px))}
.imaj-form .seg:first-child{margin-top:0}
.imaj-form .btn-generate{width:100%;min-height:44px;justify-content:center;font-size:15px}
.imaj-models{display:grid;gap:6px;margin:0;padding:0;border:0}
.imaj-model{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);font-weight:500;cursor:pointer}
.imaj-model:has(input:checked){border-color:var(--accent-1)}
.imaj-model input{width:auto;margin-top:3px}
.imaj-model span{display:grid;gap:2px}
.imaj-model small{font-weight:500}
.imaj-sources{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.imaj-source{position:relative;width:96px;margin:0}
.imaj-source img{display:block;width:96px;height:96px;object-fit:cover;border:1px solid var(--line);border-radius:var(--r-field)}
.imaj-source figcaption{font-size:11px;color:var(--muted);text-align:center}
.imaj-source .icon-btn{position:absolute;top:4px;right:4px;background:var(--panel)}
.imaj-pick{display:grid;place-items:center;align-content:center;gap:4px;width:96px;height:96px;background:none;border:1px dashed var(--line);border-radius:var(--r-field);color:var(--accent-1);font-size:11px;cursor:pointer}
.imaj-history{min-width:0}
.imaj-batch{display:grid;gap:8px;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card)}
.imaj-batch header{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.imaj-what{color:var(--muted);font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.imaj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;align-items:start}
.imaj-tile{position:relative;display:block;width:100%;padding:0;overflow:hidden;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-field);cursor:pointer}
.imaj-tile img{display:block;width:100%;height:100%;object-fit:cover}
.imaj-pending{display:grid;place-items:center;align-content:center;gap:4px;padding:8px;text-align:center;cursor:default}
.imaj-pending small{font-size:11px;overflow-wrap:anywhere}
.imaj-pending.is-failed b{color:var(--danger)}
.imaj-activity:not(:empty){padding:16px;margin-bottom:16px;border:1px solid var(--line);border-radius:var(--r-field);background:var(--panel-2)}
.imaj-activity p{margin:8px 0}
.imaj-activity small,.imaj-request-status span{display:block;overflow-wrap:anywhere}
.imaj-activity progress,.imaj-request-status progress,.imaj-batch progress{display:block;width:100%;max-width:100%;height:8px;margin:10px 0;accent-color:var(--accent-1)}
.imaj-request-status{padding:12px;border:1px solid var(--line);border-radius:var(--r-field);background:var(--panel-2)}
.imaj-view img{display:block;max-width:100%;max-height:70vh;margin:0 auto;border-radius:var(--r-field)}
.imaj-view figcaption{margin-top:6px;text-align:center}
.imaj-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;max-height:50vh;overflow:auto;margin-top:6px}
.imaj-choice{position:relative;display:grid;gap:4px;font-weight:500;cursor:pointer}
.imaj-choice input{position:absolute;opacity:0}
.imaj-choice img{width:100%;aspect-ratio:1;object-fit:cover;border:2px solid var(--line);border-radius:var(--r-field)}
.imaj-choice:has(input:checked) img{border-color:var(--accent-1)}
.imaj-choice:has(input:focus-visible) img{outline:2px solid var(--accent-1);outline-offset:2px}
.imaj-choice span{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.settings-picture{display:block;max-width:220px;border-radius:var(--r-field);border:1px solid var(--line)}
@media (max-width:860px){.imaj-layout{grid-template-columns:1fr}.imaj-form{position:static}}
.imaj-chat { max-height: 32vh; overflow-y: auto; overflow-wrap: anywhere; }
.imaj-chat-turn { padding: 12px; border: 1px solid var(--border, #ddd); border-radius: 12px; }
.imaj-chat-turn p { white-space: pre-wrap; }
.imaj-chat-turn img { display: block; max-width: 100%; max-height: 300px; object-fit: contain; margin: auto; }
@media (max-width: 600px) { .imaj-chat { max-height: 26dvh; } .imaj-chat-turn img { max-height: 160px; } }

/* UGCmatik Dark Purple Style (S-0108 Ürün Tanıtım) */
@media (min-width:801px){.uret:has(.ugc-container){grid-template-columns:minmax(420px,580px) minmax(0,1fr);max-width:1560px}}
.ugc-file-hidden{display:none !important}
.ugc-file-label{flex:none;cursor:pointer;white-space:nowrap}
.ugc-product-preview .ugc-file-label{justify-content:center}
.ugc-file-label-sm{cursor:pointer;font-size:12px}
.ugc-link-actions{margin-top:10px;display:flex;justify-content:flex-end}
.ugc-template-desc{margin-top:8px}
.ugc-pill-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.ugc-duration-label{font-size:13px;font-weight:600}
.ugc-focus-note{margin-top:6px;display:block}
.ugc-blocker-info{margin:0;font-size:12px;color:var(--danger);max-width:320px;white-space:normal;line-height:1.3;text-align:right}
/* Yapay zekâ düğmelerinin durumu: istek sürerken ve bittiğinde görünür kalır (sessiz bekleme olmasın). */
.ugc-ai-status{margin:8px 0 0;font-size:12px;font-weight:600;line-height:1.4;color:var(--muted)}
.ugc-ai-status:empty{display:none}
.ugc-ai-status.is-busy{color:#a78bfa}
.ugc-ai-status.is-error{color:var(--danger)}
/* Seslendirme kartı: konuşan model bilgisi ve modele geçiş düğmesi. */
.ugc-voice-note{margin:0 0 10px;font-size:12px;font-weight:600;line-height:1.45;color:#f0b95b}
.ugc-voice-note:empty{display:none}
.ugc-voice-note.is-ok{color:var(--ok)}
.ugc-voice-note.is-error{color:var(--danger)}
.ugc-voice-switch{margin-left:6px;padding:4px 10px;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(135deg,#7c3aed,#4f46e5);border:0;border-radius:8px;cursor:pointer}
.ugc-voice-switch:hover{opacity:.92}
.btn[aria-busy="true"]{cursor:progress;opacity:.75}
.ugc-mt-10{margin-top:10px}
.ugc-mb-8{margin-bottom:8px}
.ugc-mb-10{margin-bottom:10px}
/* Linkten çekilen ya da yüklenen bütün görseller burada küçük resim olarak durur. */
.ugc-gallery-strip{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,0.08)}
.ugc-gallery-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:8px}
.ugc-gallery-title{font-size:13px;font-weight:700;color:#f3f4f6}
.ugc-gallery-note{font-size:12px;color:var(--muted)}
.ugc-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.ugc-thumb{position:relative;width:64px;height:64px;padding:0;overflow:hidden;background:#1a1b28;border:2px solid rgba(255,255,255,0.1);border-radius:9px;cursor:pointer;transition:border-color .15s,transform .15s}
.ugc-thumb:hover{border-color:rgba(139,92,246,0.6);transform:translateY(-1px)}
.ugc-thumb:focus-visible{outline:2px solid #8b5cf6;outline-offset:2px}
.ugc-thumb.is-main{border-color:#8b5cf6}
.ugc-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.ugc-thumb-no{position:absolute;left:3px;bottom:3px;min-width:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;color:#fff;text-align:center;background:rgba(11,14,19,0.78);border-radius:6px}
.ugc-thumb-main{position:absolute;top:3px;right:3px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px;color:#fff;background:#8b5cf6;border-radius:6px}
@media (max-width:480px){.ugc-thumb{width:56px;height:56px}}
.ugc-container{display:flex;flex-direction:column;gap:14px;padding-bottom:12px}
.ugc-card{background:#14151f;border:1px solid rgba(255,255,255,0.08);border-radius:12px;padding:16px;box-shadow:0 4px 20px rgba(0,0,0,0.3)}
.ugc-step-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.ugc-step-title{font-size:15px;font-weight:700;color:#f3f4f6;display:flex;align-items:center;gap:8px}
.ugc-step-sub{font-size:12px;color:#9ca3af;font-weight:400}
.ugc-url-box{display:flex;gap:8px;align-items:center}
.ugc-url-box input{flex:1;min-width:0;background:#1a1b28;border:1px solid rgba(255,255,255,0.12);border-radius:8px;padding:11px 14px;color:#f3f4f6;font-size:14px}
.ugc-url-box input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 2px rgba(139,92,246,0.3)}
.ugc-fetch-btn{flex:none;background:linear-gradient(135deg,#7c3aed,#4f46e5);border:none;border-radius:8px;color:#fff;font-weight:700;font-size:13px;padding:11px 16px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:opacity .15s}
.ugc-fetch-btn:hover{opacity:0.92}
.ugc-fetch-btn:disabled{opacity:0.5;cursor:not-allowed}

/* Dar ekranda ön izleme satırı sarar: düğmeler ve kurgu seçimi kendi satırına geçer, sayfa taşmaz. */
.ugc-product-preview{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:#1a1b28;border:1px solid rgba(139,92,246,0.25);border-radius:10px;padding:12px;margin-top:12px}
@media (max-width:520px){
  .ugc-product-info{flex:1 1 auto;min-width:0}
  .ugc-layout-toggle{flex:1 1 100%}
  .ugc-product-preview .ugc-file-label{flex:1 1 100%;justify-content:center}
}
.ugc-product-thumb{width:64px;height:64px;border-radius:8px;object-fit:cover;border:1px solid rgba(255,255,255,0.1);flex:none}
.ugc-product-info{flex:1 1 200px;min-width:0}
.ugc-product-name{font-size:14px;font-weight:700;color:#f3f4f6;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ugc-product-meta{font-size:12px;color:#a1a1aa;margin:0}

.ugc-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ugc-format-card{position:relative;background:#1a1b28;border:2px solid rgba(255,255,255,0.08);border-radius:10px;padding:14px;text-align:left;cursor:pointer;transition:all .18s;color:#f3f4f6}
.ugc-format-card:hover{border-color:rgba(139,92,246,0.5)}
.ugc-format-card[aria-pressed="true"]{border-color:#8b5cf6;background:rgba(139,92,246,0.12);box-shadow:0 0 20px rgba(139,92,246,0.25)}
.ugc-format-card .ugc-check{display:none;position:absolute;top:10px;right:10px;width:22px;height:22px;border-radius:50%;background:#8b5cf6;color:#fff;font-size:12px;font-weight:bold;align-items:center;justify-content:center}
.ugc-format-card[aria-pressed="true"] .ugc-check{display:flex}
.ugc-format-icon{font-size:22px;margin-bottom:6px}
.ugc-format-name{font-size:14px;font-weight:700}
.ugc-format-desc{font-size:12px;color:#9ca3af;margin-top:2px}

.ugc-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.ugc-pill{padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600;background:#1a1b28;color:#9ca3af;border:1px solid rgba(255,255,255,0.08);cursor:pointer;transition:all .15s}
.ugc-pill:hover{color:#f3f4f6;border-color:rgba(139,92,246,0.4)}
.ugc-pill[aria-pressed="true"]{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#ffffff;border-color:#8b5cf6;box-shadow:0 2px 10px rgba(124,58,237,0.3)}

.ugc-dropdown-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#1a1b28;border:1px solid rgba(139,92,246,0.35);border-radius:8px;color:#f3f4f6;font-size:14px;font-weight:600;cursor:pointer}
.ugc-dropdown-btn:hover{border-color:#8b5cf6}
.ugc-picker-grid{display:grid;gap:8px;margin-top:10px}
.ugc-picker-card{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:8px;background:#1a1b28;border:1px solid rgba(255,255,255,0.06);cursor:pointer;transition:all .15s;text-align:left;color:#f3f4f6}
.ugc-picker-card:hover{border-color:rgba(139,92,246,0.4)}
.ugc-picker-card[aria-pressed="true"]{border-color:#8b5cf6;background:rgba(139,92,246,0.15)}
.ugc-picker-title{font-size:13px;font-weight:700}
.ugc-picker-desc{font-size:11px;color:#9ca3af}

.ugc-field-input{width:100%;background:#1a1b28;border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:11px 14px;color:#f3f4f6;font-size:14px;box-sizing:border-box}
.ugc-field-input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 2px rgba(139,92,246,0.3)}
.ugc-field-textarea{width:100%;background:#1a1b28;border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:11px 14px;color:#f3f4f6;font-size:13px;line-height:1.5;box-sizing:border-box;resize:vertical}
.ugc-field-textarea:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 2px rgba(139,92,246,0.3)}

.ugc-duration-row{display:flex;align-items:center;gap:12px;margin-top:12px}

.ugc-res-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ugc-res-card{padding:12px;border-radius:8px;background:#1a1b28;border:1px solid rgba(255,255,255,0.08);cursor:pointer;text-align:center;color:#d1d5db;font-size:13px;font-weight:600;transition:all .15s}
.ugc-res-card:hover{border-color:rgba(139,92,246,0.4)}
.ugc-res-card[aria-pressed="true"]{background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;border-color:#a78bfa;box-shadow:0 2px 12px rgba(124,58,237,0.35)}

.ugc-bottom-bar{position:sticky;bottom:0;background:rgba(15,16,23,0.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:14px 16px;border-top:1px solid rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:40;border-radius:0 0 12px 12px}
.ugc-reset-btn{background:transparent;border:1px solid rgba(255,255,255,0.15);border-radius:8px;padding:11px 16px;color:#9ca3af;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}
.ugc-reset-btn:hover{color:#f3f4f6;border-color:rgba(255,255,255,0.3)}
.ugc-create-btn{flex:1;max-width:320px;background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;border-radius:10px;padding:12px 20px;color:#fff;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 16px rgba(124,58,237,0.45);transition:opacity .15s}
.ugc-create-btn:hover{opacity:0.92}
.ugc-create-btn.is-blocked{opacity:0.85;border:1px solid rgba(239,68,68,0.4);box-shadow:0 2px 10px rgba(239,68,68,0.2)}
.ugc-create-btn:disabled{opacity:0.4;cursor:not-allowed;box-shadow:none}

.ugc-details{background:#14151f;border:1px solid rgba(255,255,255,0.06);border-radius:12px;padding:12px 16px}
.ugc-details>summary{font-size:14px;font-weight:600;color:#9ca3af;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}
.ugc-details>summary::after{content:"▾";font-size:12px}
.ugc-details[open]>summary::after{content:"▴"}
.ugc-details-body{margin-top:14px;display:flex;flex-direction:column;gap:12px}

.ugc-models-grid{display:grid;grid-template-columns:1fr;gap:10px}
.ugc-model-card{position:relative;background:#1a1b28;border:2px solid rgba(255,255,255,0.08);border-radius:10px;padding:12px 14px;text-align:left;cursor:pointer;transition:all .18s;color:#f3f4f6}
.ugc-model-card:hover{border-color:rgba(139,92,246,0.5)}
.ugc-model-card[aria-pressed="true"]{border-color:#8b5cf6;background:rgba(139,92,246,0.12);box-shadow:0 0 16px rgba(139,92,246,0.22)}
.ugc-model-card .ugc-check{display:none;position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;background:#8b5cf6;color:#fff;font-size:11px;font-weight:bold;align-items:center;justify-content:center}
.ugc-model-card[aria-pressed="true"] .ugc-check{display:flex}
.ugc-model-title{font-size:14px;font-weight:700;margin-bottom:2px}
.ugc-model-desc{font-size:12px;color:#9ca3af;margin-bottom:6px;line-height:1.4}
.ugc-model-tag{font-size:11px;color:#a78bfa;font-weight:600}

.ugc-checkbox-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#f3f4f6;cursor:pointer}
.ugc-checkbox-label input[type="checkbox"]{width:16px;height:16px;accent-color:#8b5cf6;cursor:pointer}
.ugc-tab-help{font-size:12px;color:#9ca3af;margin-bottom:8px;line-height:1.4}

.ugc-duration-num{width:56px;background:#1a1b28;border:1px solid rgba(255,255,255,0.15);border-radius:6px;padding:5px 8px;color:#f3f4f6;font-size:13px;font-weight:700;text-align:center}
.ugc-duration-num:focus{border-color:#8b5cf6;outline:none}
.ugc-layout-toggle{display:flex;flex:1 1 230px;min-width:0;gap:6px;margin-bottom:0;background:#14151f;padding:4px;border-radius:8px;border:1px solid rgba(255,255,255,0.06)}
.ugc-layout-btn{flex:1 1 0;min-width:0;overflow-wrap:anywhere;padding:7px 8px;border-radius:6px;font-size:12px;font-weight:600;background:transparent;color:#9ca3af;border:none;cursor:pointer;transition:all .15s}
.ugc-layout-btn[aria-pressed="true"]{background:#7c3aed;color:#fff}

