:root{font-family:Inter,"Segoe UI","Malgun Gothic",sans-serif;color:#e9eee8;background:#101310;font-synthesis:none;color-scheme:dark;--accent:#c5f871;--muted:#a3afa2;--line:#30372e}*{box-sizing:border-box}body{margin:0}header{height:86px;padding:0 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{color:#f6f8f3;text-decoration:none;font-size:18px;font-weight:750;letter-spacing:2px}.brand span{color:var(--accent);font-size:28px;margin-right:14px}.header-right{display:flex;align-items:center;gap:15px;font-size:12px;color:var(--muted)}main{max-width:1460px;margin:auto;padding:44px 5% 72px}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px}.eyebrow{font-size:10px;letter-spacing:2.4px;color:var(--accent);margin:0 0 12px}h1{font-size:clamp(24px,3vw,38px);font-weight:550;letter-spacing:-1.4px;margin:0 0 14px}p{color:var(--muted);font-size:14px;line-height:1.7}.docs-link,.small-link{color:var(--muted);font-size:12px;text-underline-offset:5px}.workspace{display:grid;grid-template-columns:390px minmax(0,1fr);gap:38px}.panel{background:#1a1f19;border:1px solid var(--line);border-radius:16px;padding:26px}.composer{align-self:start}.section-top{display:flex;align-items:center;justify-content:space-between;gap:16px}h2{font-size:19px;font-weight:550;margin:0 0 16px}.small{font-size:10px;color:var(--muted);letter-spacing:2px}.tabs{display:flex;background:#11150f;border-radius:9px;padding:4px;margin:10px 0 24px;gap:4px}.tabs button{width:50%;border:none;background:transparent;color:var(--muted)}.tabs .active{background:#303a27;color:var(--accent)}label{display:block;font-size:12px;color:#cad3c6;margin-top:19px}input,select,textarea{display:block;width:100%;padding:12px;border:1px solid #3b4435;background:#131811;border-radius:8px;color:#edf1e8;font:inherit;font-size:13px;margin-top:8px}textarea{resize:vertical;line-height:1.7}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.small-link{display:inline-block;margin-top:10px;font-size:11px}.options{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.checkbox{display:flex;align-items:center;gap:8px}.checkbox input{width:16px;margin:0;accent-color:var(--accent)}.hint{font-size:11px;line-height:1.8;color:#a3afa2}.actions{display:flex;gap:10px;margin-top:20px}button{cursor:pointer;border:1px solid #424d3b;background:#252d21;border-radius:8px;color:#d7e0d0;padding:11px 15px;font:inherit;font-size:12px;transition:background .15s}button:hover{background:#35432c}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.primary{background:var(--accent);color:#15200e;font-weight:700;border-color:var(--accent);flex:1}.primary span{margin-left:24px}button:disabled{opacity:.45;cursor:wait}.results>.section-top h2{margin-bottom:0}.results>.hint{margin-bottom:25px}.empty{min-height:360px;border:1px dashed #3b4634;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:radial-gradient(ellipse at center,#202a1b,transparent 70%)}.empty-symbol{font-size:46px;color:#627b4c;margin-bottom:16px}.empty h3{font-size:18px;font-weight:500;margin:0}.empty p{font-size:12px;max-width:290px}.job{border:1px solid var(--line);border-radius:13px;padding:20px;background:#171d15;margin-bottom:18px}.job-top{display:flex;justify-content:space-between;gap:12px;font-size:12px}.status{color:var(--accent);white-space:nowrap}.job p{font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}.job time{font-size:10px;color:var(--muted)}.job-actions{display:flex;gap:10px;margin-top:13px}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.media-grid img,.media-grid video{display:block;width:100%;max-height:440px;object-fit:contain;background:#0c100a;border-radius:8px}.media-grid a{display:block;color:var(--accent);font-size:12px;margin:10px 0}.media-grid:has(> :only-child){grid-template-columns:1fr}#notice{background:#2c3324;border:1px solid #677650;border-radius:9px;padding:13px 18px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:24px 5%;display:flex;justify-content:space-between;font-size:10px;color:#86917e;letter-spacing:1px}[hidden]{display:none!important}@media(max-width:950px){.workspace{grid-template-columns:330px minmax(0,1fr);gap:22px}.panel{padding:20px}.intro{align-items:start}.docs-link{display:none}}@media(max-width:720px){header{height:70px}.brand{font-size:12px;letter-spacing:1px}.brand span{margin-right:4px}.header-right{font-size:10px}main{padding-top:30px}.workspace{grid-template-columns:1fr}.results{margin-top:14px}.media-grid{grid-template-columns:1fr}footer{gap:20px;font-size:8px}}
:root {
  --accent: #d3ff00;
  --muted: #96989c;
  --line: #303236;
  background: #0e0f11;
  color: #f3f3f4;
}
header { height: 70px; padding: 0 32px; background: #101113; }
.brand { display: flex; align-items: center; gap: 10px; font-size: 21px; letter-spacing: -.7px; }
.brand .brand-mark { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 8px; background: #f5f5f5; color: #111; font-style: italic; font-size: 25px; margin: 0; }
.brand .brand-tag { font-size: 9px; letter-spacing: 1px; color: #a6a8ad; margin: 0 0 0 5px; border: 1px solid #37393d; border-radius: 4px; padding: 4px 6px; }
.header-right { font-size: 11px; }
main { max-width: 1540px; padding: 34px 32px 70px; }
.intro { margin-bottom: 24px; }
.eyebrow { color: #999ba1; font-size: 10px; letter-spacing: 1.7px; }
h1 { font-size: clamp(26px,3vw,40px); font-weight: 800; letter-spacing: -1.8px; margin-bottom: 9px; line-height: 1.12; }
h1 span { color: var(--accent); }
.intro p:not(.eyebrow) { margin-bottom: 0; font-size: 13px; }
.docs-link { border: 1px solid var(--line); border-radius: 8px; padding: 11px 14px; text-decoration: none; color: #cccdd0; }
.workspace { grid-template-columns: 380px minmax(0,1fr); gap: 24px; }
.mode-bar { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 4px 0 16px; border-bottom: 1px solid var(--line); margin-bottom: 4px; }
.mode-switch { display: flex; gap: 10px; flex-shrink: 0; }
.mode-switch button { display: flex; align-items: center; gap: 14px; padding: 12px 18px; border-radius: 10px; background: #1b1d20; border: 1px solid #333539; color: #c6c7ca; }
.mode-switch button span { font-size: 13px; font-weight: 650; }
.mode-switch button small { font-size: 10px; color: #9fa1a5; }
.mode-switch button.active { border-color: #a5bb29; background: #272c17; color: var(--accent); }
.mode-switch button.active small { color: #c0ca8f; }
.mode-bar p { color: #999ba1; font-size: 11px; margin: 0; }
.panel { background: #191b1e; border-color: #303237; border-radius: 14px; padding: 24px; }
.section-top h2 { font-size: 17px; font-weight: 650; }
.tabs { background: #101113; border: 1px solid #2d2f32; padding: 4px; margin: 8px 0 20px; }
.tabs .active { background: #2c2f33; color: #fff; box-shadow: 0 1px 4px #0004; }
label { color: #c2c3c7; font-size: 11px; margin-top: 17px; }
input, select, textarea { background: #111315; border-color: #36383d; color: #e8e9ec; border-radius: 8px; padding: 11px 12px; font-size: 12px; }
textarea { min-height: 135px; }
input::placeholder, textarea::placeholder { color: #777b82; }
.small-link { color: #999ba1; font-size: 10px; }
.options { gap: 0 12px; }
.hint { color: #979aa0; font-size: 10px; }
.checkbox input { accent-color: var(--accent); }
button { background: #25272b; border-color: #3a3d42; color: #d2d4d8; border-radius: 8px; }
button:hover { background: #33363b; }
button.primary { background: var(--accent); border-color: var(--accent); color: #171b00; }
button.primary:hover { background: #e0ff50; }
.fixed-settings { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 13px; border: 1px solid #424c26; background: #222719; border-radius: 8px; margin-top: 20px; font-size: 11px; }
.fixed-settings span { color: #b9c393; }
.fixed-settings strong { color: var(--accent); margin-left: auto; font-size: 13px; }
.fixed-settings i { font-style: normal; padding: 0 4px; color: #88925f; }
.fixed-settings small { font-size: 9px; color: #a5ad8d; }
.dropdown { position: relative; margin-top: 8px; }
.dropdown-trigger { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; margin: 0; padding: 11px 12px; border: 1px solid #3c3f45; border-radius: 8px; background: #111315; color: #e6e7ea; text-align: left; font-size: 12px; line-height: 1.5; }
.dropdown-trigger:hover { background: #202226; border-color: #5c6068; }
.dropdown-trigger[aria-expanded="true"] { border-color: #a2b832; box-shadow: 0 0 0 2px #d3ff0012; }
.dropdown-chevron { color: #94989f; font-size: 17px; line-height: 1; transition: transform .15s; }
.dropdown-trigger[aria-expanded="true"] .dropdown-chevron { transform: rotate(180deg); color: var(--accent); }
.dropdown-menu { position: absolute; z-index: 20; top: calc(100% + 6px); left: 0; right: 0; padding: 5px; border: 1px solid #484b51; background: #222428; border-radius: 10px; box-shadow: 0 16px 35px #0008; max-height: 250px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #54575d #222428; }
.dropdown-option { display: flex; justify-content: space-between; align-items: center; gap: 8px; width: 100%; border: 0; background: transparent; border-radius: 5px; padding: 10px; text-align: left; color: #d1d3d7; font-size: 12px; line-height: 1.5; }
.dropdown-option:hover, .dropdown-option:focus-visible { background: #373a40; outline: none; }
.dropdown-option[aria-selected="true"] { background: #333a20; color: var(--accent); }
.dropdown-check { opacity: 0; color: var(--accent); }
.dropdown-option[aria-selected="true"] .dropdown-check { opacity: 1; }
.results { min-width: 0; padding: 5px 0; }
.results .eyebrow { margin-bottom: 10px; }
.empty { background: #141619; border: 1px solid #2d3035; min-height: 410px; border-radius: 14px; }
.empty-symbol { color: var(--accent); width: 66px; height: 66px; display: grid; place-items: center; border: 1px solid #3c4329; border-radius: 17px; background: #232819; font-size: 38px; margin-bottom: 22px; }
.empty h3 { color: #e5e6e9; font-size: 17px; }
.empty p { color: #8f939a; font-size: 11px; }
.job { background: #1c1e22; border-color: #33363c; border-radius: 12px; }
.job p { color: #c0c2c7; }
.job .job-settings { display: inline-block; padding: 5px 9px; border-radius: 5px; background: #2b3020; color: #b9ce76; font-size: 10px; }
.media-grid img, .media-grid video { background: #0b0c0e; }
#notice { background: #23271c; border-color: #424c2b; color: #b7c59d; font-size: 12px; margin-bottom: 22px; }
footer { border-color: #2a2c30; color: #7b7f87; padding: 22px 32px; font-size: 9px; }
@media (max-width: 1050px) {
  .workspace { grid-template-columns: 340px minmax(0,1fr); gap: 20px; }
  .mode-bar { flex-wrap: wrap; gap: 12px; }
}
@media (max-width: 720px) {
  header { padding: 0 18px; height: 64px; }
  .brand { font-size: 17px; gap: 7px; }
  .brand .brand-mark { width: 27px; height: 27px; font-size: 22px; }
  .brand .brand-tag { display: none; }
  .header-right { font-size: 9px; }
  main { padding: 28px 18px 48px; }
  h1 { font-size: 29px; max-width: 330px; letter-spacing: -1px; line-height: 1.18; }
  .workspace { grid-template-columns: 1fr; gap: 18px; }
  .mode-bar { display: block; padding-bottom: 15px; }
  .mode-switch { gap: 8px; }
  .mode-switch button { width: 50%; align-items: flex-start; flex-direction: column; gap: 5px; padding: 12px; }
  .mode-bar p { margin-top: 12px; font-size: 10px; }
  .panel { padding: 20px; }
  .results { margin-top: 6px; }
  .empty { min-height: 300px; }
  footer { padding: 20px 18px; font-size: 8px; }
}
dialog { width: min(420px, calc(100% - 36px)); padding: 26px; background: #1b1d21; color: #f3f3f4; border: 1px solid #44484f; border-radius: 14px; box-shadow: 0 24px 80px #0009; }
dialog::backdrop { background: #000a; backdrop-filter: blur(4px); }
dialog .section-top h2 { margin: 0; }
dialog p { font-size: 12px; }
dialog button.primary { width: 100%; margin-top: 14px; }
#production-error { color: #f3b1a4; }
#production-lock { white-space: nowrap; font-size: 10px; }
#production-badge { font-size: 10px; }
#generation-dialog { text-align: center; }
.generation-spinner { width: 58px; height: 58px; margin: 8px auto 24px; border: 4px solid #363d28; border-top-color: var(--accent); border-radius: 50%; animation: generation-spin 1s linear infinite; }
.status-running::before { content: ''; display: inline-block; width: 9px; height: 9px; margin-right: 7px; border: 2px solid #485333; border-top-color: var(--accent); border-radius: 50%; animation: generation-spin 1s linear infinite; }
.prompt-history { margin-top: 28px; border-top: 1px solid var(--line); padding-top: 20px; }
.prompt-history .job p { white-space: pre-wrap; overflow-wrap: anywhere; }
.prompt-history time { display: block; margin-top: 8px; }
@keyframes generation-spin { to { transform: rotate(360deg); } }
.results { grid-column: 1 / -1; }
.creation-guide { align-self: start; min-width: 0; }
.creation-guide button { margin-top: 12px; }
#production-source-content p { white-space: pre-wrap; overflow-wrap: anywhere; }
.list-filters { display: grid; grid-template-columns: minmax(180px, 1fr) 190px; gap: 16px; margin-bottom: 22px; }
.list-filters label { margin-top: 0; }
.job-table-scroll { overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; }
.job-table { width: 100%; min-width: 850px; border-collapse: collapse; background: #191b1e; text-align: left; }
.job-table th { padding: 14px 16px; font-size: 11px; color: #aeb1b7; background: #23252a; font-weight: 500; }
.job-table td { padding: 16px; border-top: 1px solid var(--line); vertical-align: middle; font-size: 12px; }
.job-table td:nth-child(2) { width: 34%; }
.job-table strong { font-size: 12px; }
.job-table time { font-size: 10px; color: var(--muted); }
.job-excerpt { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; font-size: 11px; margin: 7px 0; }
.job-thumbnail { width: 100px; height: 65px; display: grid; place-items: center; padding: 0; overflow: hidden; background: #101113; color: var(--accent); font-size: 22px; }
.job-thumbnail img, .job-thumbnail video { width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.job-table .job-actions { flex-direction: column; margin: 0; min-width: 135px; gap: 7px; }
.job-table .job-actions button { padding: 8px 10px; white-space: nowrap; font-size: 11px; }
#job-detail-dialog { width: min(780px, calc(100% - 36px)); max-height: 85vh; overflow-y: auto; }
.detail-prompt { white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 720px) {
  .mode-switch { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mode-switch button { width: 100% !important; }
  .list-filters { grid-template-columns: 1fr; }
  .header-right { flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
  #author-change { max-width: 145px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 9px; padding: 7px; }
}
@media (prefers-reduced-motion: reduce) { .generation-spinner, .status-running::before { animation: none; } }
.prompt-workspace { grid-column: 1 / -1; display: grid; grid-template-columns: 380px minmax(0,1fr); gap: 24px; }
.prompt-composer { align-self: start; }
.openai-status { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px; border: 1px solid #353b2a; border-radius: 8px; background: #222719; font-size: 11px; color: #c5d893; margin: 20px 0 12px; }
.openai-status small { color: #979f87; margin-left: auto; font-size: 10px; }
.setup-note { border-left: 2px solid var(--accent); padding: 9px 12px; background: #242720; margin-top: 12px; }
.setup-note strong { font-size: 11px; color: #d1dfa3; }
.setup-note p { font-size: 10px; margin: 7px 0 0; }
#prompt-create > .primary { width: 100%; margin-top: 12px; }
.prompt-result { min-width: 0; }
#prompt-draft { min-height: 320px; font-size: 14px; line-height: 1.85; }
@media (max-width: 1050px) { .prompt-workspace { grid-template-columns: 340px minmax(0,1fr); gap: 20px; } }
@media (max-width: 720px) {
  .prompt-workspace { grid-template-columns: 1fr; gap: 18px; }
  .mode-switch button { width: calc((100% - 16px) / 3); gap: 7px; padding: 11px 8px; }
  .mode-switch button span { font-size: 11px; }
  .mode-switch button small { font-size: 8px; line-height: 1.4; }
  #prompt-draft { min-height: 270px; }
}
