@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2")}:root{--bg: #0a0b0f;--bg-2: #101219;--panel: #14161f;--panel-2: #1a1d28;--border: #262a37;--border-2: #333848;--text: #e8eaf0;--text-dim: #9aa0b0;--muted: #7c8497;--accent: #ffd24a;--accent-2: #ffb020;--accent-glow: rgba(255, 178, 32, .25);--violet: #8b7bff;--green: #35d07f;--red: #ff5c6c;--blue: #4aa3ff;--radius: 14px;--radius-sm: 9px;--shadow: 0 8px 30px rgba(0, 0, 0, .4);--focus-ring: 0 0 0 3px var(--accent-glow)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(1200px 700px at 80% -10%,#1a1626 0%,transparent 55%),radial-gradient(900px 600px at -10% 10%,#0f1622 0%,transparent 50%),var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}button{font-family:inherit;cursor:pointer}:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:var(--radius-sm)}:where(.pill,.seg,.segmented button,.scope-toggle button,.nav-tabs button,.auth-tabs button,.up-trigger,.tb-status,.load-more,.pg-btn,.pg-num,.clear-btn,.dl-all-btn):focus-visible{outline:none;box-shadow:var(--focus-ring)}.generate-btn:focus-visible,.btn-solid:focus-visible,.btn-mini:focus-visible{outline:none;box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--accent-2)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.spinner,.spinner-sm{animation:spin .7s linear infinite!important}.generate-btn:hover:not(:disabled),.btn-solid:hover:not(:disabled),.btn-mini:not(.logout):hover,.tile:hover,.key-row:hover{transform:none!important}}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:#090a0ef0;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:12px}.logo{font-size:28px;filter:drop-shadow(0 0 12px var(--accent-glow))}.brand h1{font-size:17px;margin:0;letter-spacing:-.02em;font-weight:700}.subtitle{margin:2px 0 0;font-size:12px;color:var(--text-dim)}.topbar-right{display:flex;align-items:center;gap:10px}.badge{font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);color:var(--text-dim);background:var(--panel)}.badge.project{font-family:ui-monospace,monospace;color:var(--violet);border-color:#8b7bff4d}.status-dot{display:inline-flex;align-items:center;gap:7px}.status-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}.status-dot.bad:before{background:var(--red);box-shadow:0 0 8px var(--red)}.user-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:999px;border:1px solid var(--border-2);background:var(--panel-2);color:var(--text);font-size:13px;font-weight:500;transition:border-color .15s}.user-chip:hover{border-color:var(--accent-2)}.avatar{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#1a1200;background:linear-gradient(135deg,var(--accent),var(--accent-2))}.user-editor{display:flex;gap:6px}.user-editor input{background:var(--panel);border:1px solid var(--border-2);border-radius:8px;color:var(--text);padding:6px 10px;font-size:13px;outline:none;width:130px}.user-editor input:focus{border-color:var(--accent-2)}.btn-mini{background:var(--accent);color:#1a1200;border:none;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.btn-mini.logout{background:var(--panel-2);color:var(--text-dim);border:1px solid var(--border-2)}.btn-mini.logout:hover{color:var(--text);border-color:var(--red)}.app.boot{min-height:100vh}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:100%;max-width:400px;background:linear-gradient(180deg,var(--panel) 0%,var(--bg-2) 100%);border:1px solid var(--border);border-radius:18px;padding:28px;box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}.auth-brand h1{font-size:18px;margin:0;letter-spacing:-.02em}.auth-tabs{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:3px;margin-bottom:20px}.auth-tabs button{flex:1;background:transparent;border:none;color:var(--text-dim);padding:9px;font-size:13.5px;font-weight:600;border-radius:999px;transition:all .12s}.auth-tabs button.active{background:var(--panel-2);color:var(--text)}.auth-form{display:flex;flex-direction:column}.auth-input{width:100%;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text);padding:12px 14px;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.auth-input:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px var(--accent-glow)}.auth-form .generate-btn{margin-top:22px}.auth-hint{text-align:center;font-size:13px;color:var(--muted);margin:18px 0 0}.auth-link{background:none;border:none;color:var(--accent);font-size:13px;font-weight:600;cursor:pointer;padding:0}.layout{display:grid;grid-template-columns:400px minmax(0,1fr);gap:28px;max-width:2280px;margin:0 auto;padding:28px clamp(24px,3vw,56px);align-items:start}.compose-col{position:sticky;top:84px;display:flex;flex-direction:column;gap:20px;max-height:calc(100vh - 108px);overflow-y:auto;overflow-x:hidden;padding-right:4px}.compose-col::-webkit-scrollbar{width:8px}.compose-col::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:999px}.compose-col::-webkit-scrollbar-thumb:hover{background:var(--muted)}.compose-col{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}@media (max-width: 960px){.layout{grid-template-columns:1fr}.compose-col{position:static;max-height:none;overflow:visible;padding-right:0}}.panel{background:linear-gradient(180deg,var(--panel) 0%,var(--bg-2) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.panel-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.panel-title h2{font-size:15px;margin:0;letter-spacing:-.01em}.hint{font-size:11px;color:var(--accent);background:var(--accent-glow);padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.field-label{display:block;font-size:12px;font-weight:600;color:var(--text-dim);margin:16px 0 8px;text-transform:uppercase;letter-spacing:.05em}.field-label:first-of-type{margin-top:0}.muted{color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0}.prompt-input{width:100%;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text);padding:12px 14px;font-size:14px;line-height:1.5;resize:vertical;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit}.prompt-input:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px var(--accent-glow)}.field-label-row{display:flex;align-items:center;justify-content:space-between}.prompt-expand-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text-dim);font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;padding:3px 8px;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.prompt-expand-btn svg{width:13px;height:13px}.prompt-expand-btn:hover{color:var(--text);border-color:var(--accent-2);background:var(--accent-glow)}.prompt-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:5vh 4vw;background:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .12s ease-out}.prompt-modal{display:flex;flex-direction:column;width:min(1000px,92vw);height:min(80vh,900px);background:var(--panel);border:1px solid var(--border-2);border-radius:var(--radius);box-shadow:0 24px 64px #00000080;overflow:hidden}.prompt-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}.prompt-modal-head h3{margin:0;font-size:15px;font-weight:600;color:var(--text)}.prompt-modal-meta{display:flex;align-items:center;gap:12px}.prompt-modal-input{flex:1;width:100%;resize:none;border:none;outline:none;background:var(--bg);color:var(--text);padding:18px 20px;font-size:15px;line-height:1.6;font-family:inherit}.prompt-modal-foot{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-top:1px solid var(--border)}.prompt-modal-foot .kbd-hint{margin:0}.prompt-modal-done{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;padding:8px 20px;cursor:pointer;transition:filter .15s}.prompt-modal-done:hover{filter:brightness(1.08)}.dropzone{border:1.5px dashed var(--border-2);border-radius:var(--radius-sm);padding:14px;cursor:pointer;transition:border-color .15s,background .15s;background:var(--bg)}.dropzone.over{border-color:var(--accent);background:var(--accent-glow)}.dropzone-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 0;color:var(--muted);font-size:13px}.dz-icon{font-size:20px;color:var(--text-dim)}.ref-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:8px}.ref-thumb{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid var(--border-2);cursor:grab;transition:opacity .14s,box-shadow .14s,transform .14s}.ref-thumb:active{cursor:grabbing}.ref-thumb.dragging{opacity:.4;transform:scale(.96)}.ref-thumb.drop-target{box-shadow:0 0 0 2px var(--accent)}.ref-thumb img{width:100%;height:100%;object-fit:cover}.ref-remove{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;border:none;background:#000000b3;color:#fff;font-size:13px;line-height:1;display:grid;place-items:center}.ref-num{position:absolute;top:3px;left:3px;min-width:18px;height:18px;padding:0 4px;border-radius:6px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#1a1200;font-size:11px;font-weight:700;display:grid;place-items:center;box-shadow:0 1px 4px #0006}.ref-move{position:absolute;bottom:3px;left:50%;transform:translate(-50%);display:flex;gap:2px;opacity:0;transition:opacity .12s}.ref-thumb:hover .ref-move{opacity:1}.ref-move button{width:20px;height:18px;border:none;border-radius:5px;background:#000c;color:#fff;font-size:13px;line-height:1;display:grid;place-items:center}.ref-move button:disabled{opacity:.3}.ref-add{aspect-ratio:1;border:1px dashed var(--border-2);border-radius:8px;display:grid;place-items:center;color:var(--muted);font-size:20px}.pill-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:6px}.pill{display:flex;flex-direction:column;align-items:center;gap:5px;background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);border-radius:12px;padding:8px 4px 7px;font-size:12.5px;font-weight:500;text-align:center;transition:all .12s}.pill:hover{border-color:var(--border-2);color:var(--text)}.pill.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#1a1200;border-color:transparent;font-weight:600}.ratio-glyph-wrap{display:grid;place-items:center;width:20px;height:20px}.ratio-glyph{display:block;border:1.5px solid currentColor;border-radius:3px;opacity:.65;transition:opacity .12s}.pill:hover .ratio-glyph,.pill.active .ratio-glyph{opacity:1}.ratio-label{line-height:1;font-variant-numeric:tabular-nums}.controls-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.segmented{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;gap:3px}.segmented button{flex:1;background:transparent;border:none;color:var(--text-dim);padding:7px 4px;font-size:12.5px;font-weight:500;border-radius:6px;transition:all .12s}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--panel-2);color:var(--accent);box-shadow:0 1px 3px #0000004d}.stepper{display:flex;align-items:center;gap:12px}.stepper button{width:34px;height:34px;border-radius:9px;border:1px solid var(--border-2);background:var(--panel-2);color:var(--text);font-size:18px;line-height:1;transition:all .12s}.stepper button:hover:not(:disabled){border-color:var(--accent-2);color:var(--accent)}.stepper button:disabled{opacity:.35;cursor:not-allowed}.stepper-value{font-size:18px;font-weight:700;min-width:20px;text-align:center}.count-dots{display:flex;gap:4px;margin-left:4px}.count-dots .dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.generate-btn{width:100%;margin-top:20px;padding:14px;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#1a1200;font-size:15px;font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;justify-content:center;gap:10px;transition:transform .1s,box-shadow .15s,opacity .15s;box-shadow:0 6px 20px var(--accent-glow)}.generate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 28px var(--accent-glow)}.generate-btn:active:not(:disabled){transform:translateY(0)}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.kbd-hint{text-align:center;font-size:11px;color:var(--muted);margin:10px 0 0}.error-box{margin-top:14px;padding:10px 12px;border-radius:9px;background:#ff5c6c1f;border:1px solid rgba(255,92,108,.3);color:#ff9aa4;font-size:13px}.spinner{width:16px;height:16px;border:2px solid rgba(26,18,0,.35);border-top-color:#1a1200;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.feed-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.scope-toggle{display:flex;background:var(--panel);border:1px solid var(--border);border-radius:999px;padding:3px}.scope-toggle button{background:transparent;border:none;color:var(--text-dim);padding:7px 16px;font-size:13px;font-weight:500;border-radius:999px;transition:all .12s}.scope-toggle button.active{background:var(--panel-2);color:var(--text)}.feed-count{font-size:13px;color:var(--muted)}.queue-banner{display:flex;align-items:center;gap:14px;padding:11px 16px;margin-bottom:16px;border-radius:12px;background:linear-gradient(90deg,#ffb2201a,#8b7bff14);border:1px solid rgba(255,178,32,.25);font-size:13px}.queue-spark{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);animation:pulse 1.1s ease-in-out infinite}.queue-lead{font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px}.queue-metric{color:var(--text-dim)}.queue-metric b{color:var(--accent);font-variant-numeric:tabular-nums}.queue-metric.pending b{color:var(--blue)}.queue-metric.cooldown{color:var(--red);font-weight:600;display:inline-flex;align-items:center;gap:5px}.queue-metric.cooldown svg{width:14px;height:14px}.queue-banner.cooling{border-color:#ff5c6c66;background:linear-gradient(90deg,#ff5c6c1f,#ffb2200f)}.queue-bar{flex:1;height:6px;border-radius:999px;background:var(--bg);overflow:hidden;min-width:60px}.queue-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .5s ease}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:40px 20px;color:var(--muted)}.empty-art{display:grid;place-items:center;width:64px;height:64px;margin-bottom:14px;border-radius:18px;color:var(--accent);background:radial-gradient(120% 120% at 30% 20%,#ffb2202e,#ffb2200a);border:1px solid rgba(255,178,32,.22)}.empty-art svg{width:30px;height:30px}.empty-examples{display:flex;flex-direction:column;gap:8px;margin-top:22px;width:100%;max-width:460px}.empty-examples-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:2px}.empty-chip{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:11px;color:var(--text-dim);padding:10px 13px;font-size:13px;line-height:1.4;transition:border-color .14s,color .14s,background .14s,transform .1s}.empty-chip svg{width:15px;height:15px;flex-shrink:0;color:var(--accent);opacity:.8}.empty-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-chip:hover{color:var(--text);border-color:var(--accent-2);background:var(--panel-2);transform:translateY(-1px)}.empty h3{margin:0 0 6px;color:var(--text-dim);font-weight:600}.empty p{margin:0;font-size:14px}.feed{column-gap:18px}@media (min-width: 1150px){.feed{column-count:2}}@media (min-width: 1800px){.feed{column-count:3}}@media (min-width: 2500px){.feed{column-count:4}}.job-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin-bottom:18px;break-inside:avoid;-webkit-column-break-inside:avoid;transition:border-color .2s;animation:rise .3s ease}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.job-card.running{border-color:#ffb22059}.job-card.failed{border-color:#ff5c6c4d}.job-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.job-head-left{display:flex;align-items:center;gap:10px}.status-pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.status-pill.queued{background:#4aa3ff24;color:var(--blue)}.status-pill.running{background:var(--accent-glow);color:var(--accent)}.status-pill.completed{background:#35d07f24;color:var(--green)}.status-pill.failed{background:#ff5c6c24;color:var(--red)}.pulse{width:7px;height:7px;border-radius:50%;background:currentColor;animation:pulse 1.1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.user-tag{font-size:12px;color:var(--violet);background:#8b7bff1f;padding:3px 9px;border-radius:999px;font-weight:500}.job-time{font-size:12px;color:var(--muted)}.job-sku{display:inline-flex;align-items:center;gap:4px;font-family:inherit;font-size:11px;font-weight:600;line-height:1.4;color:var(--text);background:var(--panel-2, rgba(255, 255, 255, .06));border:1px solid var(--border);border-radius:6px;padding:1px 7px;cursor:pointer;font-variant-numeric:tabular-nums;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.job-sku:hover{border-color:var(--accent-2);background:var(--accent-glow)}.job-sku.copied{color:var(--green, #34d399);border-color:var(--green, #34d399);background:transparent}.job-sku svg{width:12px;height:12px}.job-actions{display:flex;gap:6px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:32px;height:32px;padding:0 8px;background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);border-radius:9px;font-size:12.5px;font-weight:550;cursor:pointer;transition:color .14s,background .14s,border-color .14s,transform .1s,box-shadow .14s}.icon-btn svg{width:16px;height:16px}.icon-btn:hover{color:var(--text);border-color:var(--border-2);background:var(--border)}.icon-btn:active{transform:scale(.94)}.icon-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-glow)}.icon-btn.danger{color:var(--red);border-color:#ff5c6c4d;background:#ff5c6c0f}.icon-btn.danger:hover{color:#fff;background:var(--red);border-color:var(--red);box-shadow:0 6px 16px #ff5c6c4d}.icon-btn.danger.solid{color:#fff;background:var(--red);border-color:var(--red);padding:0 12px}.btn-solid,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 16px;border-radius:10px;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:transform .1s,box-shadow .16s,opacity .15s,background .16s,border-color .16s}.btn-solid{border:none;color:#1a1200;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 5px 16px var(--accent-glow)}.btn-solid svg{width:15px;height:15px}.btn-solid:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 24px var(--accent-glow)}.btn-solid:active:not(:disabled){transform:translateY(0)}.btn-solid:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn-solid.copy.ok{background:linear-gradient(135deg,var(--green),#26b56a);color:#06210f;box-shadow:0 5px 16px #35d07f40}.btn-ghost{background:var(--panel-2);color:var(--text-dim);border:1px solid var(--border-2)}.btn-ghost svg{width:15px;height:15px}.btn-ghost:hover{color:var(--text);border-color:var(--border-2);background:var(--border)}.icon-btn.playground{font-weight:600;color:var(--accent);border-color:#ffb22059}.icon-btn.playground:hover{border-color:var(--accent-2);background:var(--accent-glow)}.job-prompt{font-size:14px;line-height:1.5;margin:0 0 12px;color:var(--text)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.chip{font-size:11px;padding:3px 9px;border-radius:6px;background:var(--bg);border:1px solid var(--border);color:var(--text-dim);font-family:ui-monospace,monospace}.chip.ref{color:var(--violet);border-color:#8b7bff4d}.ref-strip{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.ref-strip-item{position:relative;width:44px;height:44px}.ref-strip-item img{width:44px;height:44px;object-fit:cover;border-radius:7px;border:1px solid var(--border-2);cursor:pointer;opacity:.85;transition:opacity .12s}.ref-strip-item img:hover{opacity:1}.ref-strip-num{position:absolute;top:2px;left:2px;min-width:15px;height:15px;padding:0 3px;border-radius:5px;background:#000000bf;color:var(--accent);font-size:10px;font-weight:700;display:grid;place-items:center}.out-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.out-count{font-size:12px;color:var(--text-dim)}.dl-all-btn{background:var(--panel-2);border:1px solid var(--border-2);color:var(--text);border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:all .12s}.dl-all-btn:hover{border-color:var(--accent-2);color:var(--accent)}.out-num{position:absolute;top:8px;left:8px;min-width:20px;height:20px;padding:0 5px;border-radius:6px;background:#0a0b0fcc;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:11px;font-weight:700;display:grid;place-items:center}.job-error{font-size:13px;padding:10px 12px;border-radius:9px;background:#ff5c6c1a;border:1px solid rgba(255,92,108,.25);color:#ff9aa4;margin-bottom:4px}.job-error strong{text-transform:uppercase;font-size:11px;letter-spacing:.04em}.out-grid{display:grid;gap:10px}.out-grid.cols-1{grid-template-columns:minmax(0,1fr)}.out-grid.cols-2{grid-template-columns:repeat(2,1fr)}.out-grid.cols-3{grid-template-columns:repeat(3,1fr)}.out-grid.cols-4{grid-template-columns:repeat(4,1fr)}.out-cell{position:relative;border-radius:10px;overflow:hidden;background:var(--bg);border:1px solid var(--border);aspect-ratio:1}.out-cell img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;display:block;transition:transform .25s}.out-cell img:hover{transform:scale(1.03)}.dl-btn{position:absolute;bottom:8px;right:8px;width:30px;height:30px;border-radius:8px;border:none;background:#0a0b0fcc;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:15px;opacity:0;transition:opacity .15s}.out-cell:hover .dl-btn{opacity:1}.out-cell.skeleton{border-style:dashed}.shimmer{width:100%;height:100%;background:linear-gradient(100deg,var(--panel) 30%,var(--panel-2) 50%,var(--panel) 70%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#050609e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;animation:fade .2s ease}@keyframes fade{0%{opacity:0}}.lb-stage{max-width:92vw;max-height:90vh;display:flex;flex-direction:column;gap:12px;align-items:center}.lb-imgwrap{display:flex;align-items:center;justify-content:center;overflow:hidden;max-width:92vw;max-height:80vh;border-radius:12px;box-shadow:0 20px 60px #0009;cursor:zoom-in;touch-action:none}.lb-imgwrap.zoomed{cursor:grab}.lb-imgwrap.zoomed:active{cursor:grabbing}.lb-stage img{max-width:92vw;max-height:80vh;object-fit:contain;display:block;transform-origin:center center;transition:transform .04s linear;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lb-hint{color:var(--muted);font-size:12px}.lb-link.as-btn{background:none;border:none;cursor:pointer;font:inherit;padding:0}.lb-bar{display:flex;align-items:center;gap:16px;color:var(--text-dim);font-size:13px}.lb-link{color:var(--accent);text-decoration:none}.lb-close{position:fixed;top:20px;right:24px;width:40px;height:40px;border-radius:50%;border:1px solid var(--border-2);background:var(--panel);color:var(--text);font-size:22px;line-height:1}.lb-nav{position:fixed;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid var(--border-2);background:var(--panel);color:var(--text);font-size:24px;line-height:1}.lb-nav.left{left:24px}.lb-nav.right{right:24px}.feed-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.tb-search{position:relative;flex:1;min-width:160px}.tb-search input{width:100%;background:var(--panel);border:1px solid var(--border);border-radius:999px;color:var(--text);padding:9px 32px;font-size:13px;outline:none;transition:border-color .15s}.tb-search input:focus{border-color:var(--accent-2)}.tb-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:15px}.tb-search-sku{flex:0 1 220px;min-width:140px}.tb-sku-label{font-size:10px;font-weight:700;letter-spacing:.03em;color:var(--muted)}.tb-search-sku input{padding-left:44px;font-variant-numeric:tabular-nums}.tb-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:var(--panel-2);border:none;color:var(--text-dim);width:20px;height:20px;border-radius:50%;font-size:14px;line-height:1}.status-picker{flex-shrink:0}.status-trigger{min-width:150px}.up-panel.compact{width:190px}.up-check{display:inline-flex;align-items:center;color:var(--accent)}.up-check svg{width:15px;height:15px}.sdot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--muted)}.sdot.all{background:var(--text-dim)}.sdot.completed{background:var(--green);box-shadow:0 0 7px #35d07f99}.sdot.running{background:var(--accent);box-shadow:0 0 7px var(--accent-glow)}.sdot.queued{background:var(--blue);box-shadow:0 0 7px #4aa3ff80}.sdot.failed{background:var(--red);box-shadow:0 0 7px #ff5c6c80}.tb-count{font-size:13px;color:var(--muted);white-space:nowrap}.user-picker{position:relative}.up-trigger{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border-2);border-radius:999px;color:var(--text);padding:7px 12px 7px 8px;font-size:13px;font-weight:500;min-width:150px}.up-trigger:hover{border-color:var(--accent-2)}.up-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#1a1200;background:linear-gradient(135deg,var(--accent),var(--accent-2))}.up-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-caret{color:var(--muted);font-size:11px}.up-panel{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:260px;background:var(--panel-2);border:1px solid var(--border-2);border-radius:12px;box-shadow:var(--shadow);padding:8px;animation:rise .15s ease}.up-search{width:100%;background:var(--bg);border:1px solid var(--border-2);border-radius:8px;color:var(--text);padding:8px 10px;font-size:13px;outline:none;margin-bottom:6px}.up-search:focus{border-color:var(--accent-2)}.up-list{max-height:300px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.up-item{width:100%;display:flex;align-items:center;gap:9px;background:transparent;border:none;color:var(--text);padding:8px 9px;border-radius:8px;font-size:13.5px;text-align:left}.up-item:hover{background:var(--bg)}.up-item.active{background:var(--accent-glow);color:var(--accent)}.up-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-you{color:var(--muted);font-size:12px}.up-count{font-size:11px;color:var(--muted);background:var(--bg);border-radius:999px;padding:2px 8px;font-variant-numeric:tabular-nums}.up-icon-lg{width:22px;text-align:center}.avatar.sm{width:22px;height:22px;font-size:11px}.up-divider{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 9px 4px}.up-empty{padding:14px;text-align:center;color:var(--muted);font-size:13px}.feed-group{margin-bottom:22px}.group-head{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:0 0 10px;display:flex;align-items:center;gap:8px}.group-head span{color:var(--muted);background:var(--panel);border-radius:999px;padding:1px 8px;font-size:11px}.tile-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}@media (max-width: 1500px){.tile-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 1150px){.tile-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 700px){.tile-grid{grid-template-columns:repeat(2,1fr)}}.tile{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--panel);padding:0;cursor:pointer;transition:transform .14s,border-color .14s,box-shadow .14s;content-visibility:auto;contain-intrinsic-size:auto 300px}.tile:hover{transform:translateY(-2px);border-color:var(--border-2);box-shadow:0 8px 22px #00000059}.tile.running{border-color:#ffb22059}.tile.failed{border-color:#ff5c6c4d}.tile-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.tile:hover .tile-img{transform:scale(1.05)}.tile-blank{width:100%;height:100%;display:grid;place-items:center;color:var(--red);font-size:22px;background:var(--bg)}.tile-blank svg{width:26px;height:26px}.tile-status{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:#0a0b0fcc;color:#fff}.tile-status.busy{color:var(--accent)}.tile-status.failed{background:#ff5c6ce6;color:#fff}.spinner-sm{width:10px;height:10px;border:2px solid rgba(255,210,74,.35);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.tile-badges{position:absolute;top:8px;right:8px;display:flex;gap:4px}.tile-badge{font-size:10.5px;font-weight:700;padding:2px 6px;border-radius:6px;background:#0a0b0fd1;color:#fff}.tile-overlay{position:absolute;inset:auto 0 0 0;padding:20px 10px 8px;background:linear-gradient(transparent,#06070aeb);display:flex;flex-direction:column;gap:3px;opacity:0;transition:opacity .15s}.tile:hover .tile-overlay{opacity:1}.tile-user{font-size:10.5px;font-weight:600;color:var(--accent)}.tile-prompt{font-size:11.5px;color:#eef;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-align:left}.feed-sentinel{height:1px}.load-more{display:block;margin:8px auto 0;background:var(--panel-2);border:1px solid var(--border-2);color:var(--text);border-radius:999px;padding:9px 20px;font-size:13px;font-weight:500}.load-more:hover:not(:disabled){border-color:var(--accent-2);color:var(--accent)}.feed-loading{padding:60px;text-align:center;color:var(--muted)}.detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#050609d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:start center;overflow-y:auto;padding:40px 16px;animation:fade .18s ease}.detail-panel{position:relative;width:min(660px,94vw)}.detail-panel .job-card{animation:none;margin-bottom:0}.detail-close{position:absolute;top:-34px;right:0;width:34px;height:34px;border-radius:50%;border:1px solid var(--border-2);background:var(--panel);color:var(--text);font-size:20px;line-height:1}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin:24px 0 8px;flex-wrap:wrap}.pg-btn,.pg-num{min-width:36px;height:36px;padding:0 12px;border-radius:9px;border:1px solid var(--border);background:var(--panel);color:var(--text-dim);font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;transition:all .12s}.pg-num{padding:0}.pg-btn:hover:not(:disabled),.pg-num:hover{border-color:var(--border-2);color:var(--text)}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.pg-num.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#1a1200;border-color:transparent}.pg-ellipsis{color:var(--muted);padding:0 2px}.panel-title-right{display:flex;align-items:center;gap:8px}.clear-btn{background:var(--panel-2);border:1px solid var(--border-2);color:var(--text-dim);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:600;transition:all .12s}.clear-btn:hover{color:var(--red);border-color:#ff5c6c66}.nav-tabs{display:flex;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:999px;padding:3px}.nav-tabs button{background:transparent;border:none;color:var(--text-dim);padding:6px 16px;font-size:13px;font-weight:600;border-radius:999px;transition:all .12s}.nav-tabs button.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#1a1200}.api-tab{max-width:1100px;margin:0 auto;padding:28px clamp(24px,3vw,56px)}.exp-range{margin-bottom:18px;width:fit-content}.exp-stats{flex-wrap:wrap}.exp-stats .stat-val{font-variant-numeric:tabular-nums}.exp-row{gap:12px}.exp-head{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);border-bottom:1px solid var(--border);border-radius:0;padding-bottom:8px;margin-bottom:2px}.exp-head .urow-name{font-weight:600;color:var(--text-dim)}.exp-col{width:92px;flex:none;text-align:right;font-size:13px;font-variant-numeric:tabular-nums;color:var(--text-dim)}.exp-row:not(.exp-head) .exp-col{color:var(--text)}.exp-total{font-weight:700;color:var(--text);width:100px}.exp-check{width:18px;flex:none;display:flex;align-items:center;justify-content:center;color:var(--accent-2)}.exp-check svg{width:15px;height:15px}button.exp-clickable{width:100%;background:none;border:1px solid transparent;font:inherit;cursor:pointer;text-align:left}button.exp-clickable:hover{background:var(--accent-glow)}button.exp-clickable.selected{background:var(--accent-glow);border-color:var(--accent-2)}button.exp-clickable.selected .urow-name{color:var(--text);font-weight:600}@media (max-width: 640px){.exp-col{width:62px}.exp-total{width:72px}}.api-tab-head h2{margin:0 0 6px;font-size:26px;font-weight:700;letter-spacing:-.03em;background:linear-gradient(120deg,var(--text) 30%,var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.api-tab-head p{margin:0 0 24px;color:var(--text-dim);font-size:14px;max-width:60ch}.api-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:start}@media (max-width: 900px){.api-grid{grid-template-columns:1fr}}.api-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.api-card h3{margin:0 0 14px;font-size:15px}.key-create{display:flex;gap:8px;margin-bottom:14px}.key-create input{flex:1;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--text);padding:9px 12px;font-size:13px;outline:none}.key-create input:focus{border-color:var(--accent-2)}.key-list{display:flex;flex-direction:column;gap:8px}.key-empty{color:var(--muted);font-size:13px;padding:8px 0}.apanel{background:linear-gradient(180deg,var(--panel) 0%,var(--bg-2) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:0 1px #ffffff05 inset,0 10px 30px #00000040}.apanel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.apanel-title{display:flex;gap:12px;align-items:center}.apanel-title h3{margin:0;font-size:15px;font-weight:650;letter-spacing:-.01em}.apanel-title p{margin:2px 0 0;font-size:12px;color:var(--muted);max-width:44ch}.apanel-ico{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:10px;color:var(--accent);background:radial-gradient(120% 120% at 30% 20%,#ffb22038,#ffb2200f);border:1px solid rgba(255,178,32,.25)}.apanel-ico svg{width:18px;height:18px}.live-dot{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.live-dot .dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 #35d07f99;animation:livepulse 2s infinite}@keyframes livepulse{0%{box-shadow:0 0 #35d07f80}70%{box-shadow:0 0 0 7px #35d07f00}to{box-shadow:0 0 #35d07f00}}.sched-panel{margin-bottom:20px}.sched-body{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.field-label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.segmented{display:inline-flex;padding:4px;gap:4px;background:var(--bg);border:1px solid var(--border);border-radius:12px}.seg{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-dim);font-size:13px;font-weight:550;padding:8px 18px;border-radius:9px;cursor:pointer;transition:color .18s,background .18s,box-shadow .18s,transform .12s}.seg:hover{color:var(--text)}.seg.active{color:#1a1200;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 4px 14px var(--accent-glow)}.seg.active:active{transform:scale(.97)}.sched-hint{font-size:12.5px;color:var(--text-dim);margin:12px 0 0}.sched-stats{display:flex;gap:10px}.stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:78px;padding:12px 14px;background:var(--bg);border:1px solid var(--border);border-radius:12px}.stat-val{font-size:24px;font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}.stat-lbl{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:6px}.stat.split{gap:8px;align-items:flex-start}.stat-row{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-dim)}.stat-row b{color:var(--text);font-variant-numeric:tabular-nums}.stat-row svg{width:14px;height:14px;color:var(--muted)}.key-row{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:12px 14px;transition:border-color .16s,transform .12s,box-shadow .16s}.key-row:hover{border-color:var(--border-2);box-shadow:0 6px 18px #00000038}.key-row.revoked{opacity:.5}.key-row.revoked:hover{transform:none;box-shadow:none}.key-main{display:flex;flex-direction:column;gap:3px;min-width:0}.key-name{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.key-badge{font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--red);border:1px solid rgba(255,92,108,.4);border-radius:5px;padding:1px 6px}.key-meta{font-size:11.5px;color:var(--muted)}.key-actions{display:flex;gap:8px;align-items:center}.prio-stepper{display:inline-flex;align-items:center;gap:2px;background:var(--panel-2);border:1px solid var(--border);border-radius:9px;padding:2px}.prio-stepper .step{display:grid;place-items:center;width:24px;height:24px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .14s,color .14s}.prio-stepper .step:hover:not(:disabled){background:var(--border);color:var(--text)}.prio-stepper .step:disabled{opacity:.3;cursor:not-allowed}.prio-stepper .step svg{width:14px;height:14px}.prio-val{min-width:34px;text-align:center;font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--text)}.prio-val em{font-style:normal;font-size:10px;font-weight:600;color:var(--muted);margin-right:1px}.prio-editable{display:inline-flex;align-items:center;min-width:34px;justify-content:center}.prio-input{width:2.4ch;min-width:2.4ch;box-sizing:content-box;background:transparent;border:none;outline:none;padding:1px 2px;font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--text);text-align:center;border-radius:5px;transition:background .12s,box-shadow .12s;-moz-appearance:textfield}.prio-input::-webkit-outer-spin-button,.prio-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.prio-input:hover{background:var(--panel)}.prio-input:focus{background:var(--bg);box-shadow:0 0 0 2px var(--accent-glow)}.key-secret-box{background:var(--accent-glow);border:1px solid rgba(255,178,32,.4);border-radius:var(--radius);padding:14px 16px;margin-bottom:20px}.key-secret-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:10px}.key-secret-row{display:flex;gap:8px;align-items:center}.key-secret-row code{flex:1;background:var(--bg);border:1px solid var(--border-2);border-radius:8px;padding:9px 12px;font-family:ui-monospace,monospace;font-size:12.5px;color:var(--accent);overflow-x:auto;white-space:nowrap}.copy-btn,.btn-mini{white-space:nowrap}.copy-btn{background:var(--accent);color:#1a1200;border:none;border-radius:8px;padding:9px 14px;font-size:13px;font-weight:600}.api-doc-line{font-size:13px;color:var(--text-dim);margin:0 0 10px}.api-doc-line code,.api-curl{font-family:ui-monospace,monospace}.api-doc-line code{background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:1px 6px;font-size:12px;color:var(--text)}.api-curl{background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);padding:12px 14px;font-size:12px;color:var(--text);overflow-x:auto;white-space:pre;margin:0 0 12px}.api-docs-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:13px;font-weight:600;text-decoration:none;transition:gap .15s,opacity .15s}.api-docs-link svg{width:14px;height:14px}.api-docs-link:hover{gap:9px;opacity:.85}.avatar.sm.api{background:linear-gradient(135deg,var(--violet),#6b5bff);color:#fff}.up-api-badge{font-size:9.5px;font-weight:700;letter-spacing:.04em;color:var(--violet);background:#8b7bff26;border-radius:4px;padding:1px 5px;margin-left:6px}.btn-mini{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:transform .1s,box-shadow .15s,opacity .15s,background .15s}.btn-mini:not(.logout):hover{transform:translateY(-1px);box-shadow:0 6px 16px var(--accent-glow)}.btn-mini:active{transform:translateY(0)}.btn-mini svg{width:15px;height:15px}.lb-close,.lb-nav,.detail-close,.tb-clear,.ref-remove,.ref-move button,.ref-add{display:inline-flex;align-items:center;justify-content:center}.lb-close svg{width:22px;height:22px}.lb-nav svg{width:30px;height:30px}.detail-close svg{width:19px;height:19px}.tb-clear svg{width:15px;height:15px}.ref-remove svg{width:13px;height:13px}.ref-move button svg{width:14px;height:14px}.ref-add svg{width:20px;height:20px}.avatar.sm svg{width:14px;height:14px}.avatar.sm.api,.tb-search-icon{display:inline-flex;align-items:center;justify-content:center}.tb-search-icon svg{width:16px;height:16px}.pg-btn{display:inline-flex;align-items:center;gap:5px}.pg-btn svg{width:15px;height:15px}.up-icon,.up-caret{display:inline-flex;align-items:center;justify-content:center}.up-icon svg{width:15px;height:15px}.up-caret svg{width:15px;height:15px}.up-caret{transition:transform .18s}.user-picker[data-open=true] .up-caret,.up-trigger[aria-expanded=true] .up-caret svg{transform:rotate(180deg)}.up-icon-lg{display:inline-flex;align-items:center;justify-content:center}.up-icon-lg svg{width:18px;height:18px}.dl-all-btn,.clear-btn{display:inline-flex;align-items:center;gap:6px}.dl-all-btn svg{width:14px;height:14px}.clear-btn svg{width:13px;height:13px}.dl-btn{display:inline-flex;align-items:center;justify-content:center}.dl-btn svg{width:15px;height:15px}.dz-icon{display:inline-flex;align-items:center;justify-content:center}.dz-icon svg{width:24px;height:24px}.stepper button{display:inline-flex;align-items:center;justify-content:center}.stepper button svg{width:15px;height:15px}.tile-badge{display:inline-flex;align-items:center;justify-content:center}.tile-badge svg{width:12px;height:12px}.chat-panel{display:flex;flex-direction:column;min-height:320px;max-height:min(560px,calc(100vh - 200px));padding-bottom:14px;flex:0 0 auto}.chat-panel .panel-title{margin-bottom:12px}.chat-panel .panel-title h2{display:flex;align-items:center;gap:8px}.chat-title-ico{display:inline-flex;color:var(--accent)}.chat-title-ico svg{width:16px;height:16px}.chat-live{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);text-transform:none;letter-spacing:.01em}.chat-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 6px 4px 2px;margin:0 -4px 0 0;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.chat-scroll::-webkit-scrollbar{width:7px}.chat-scroll::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:999px}.chat-scroll::-webkit-scrollbar-thumb:hover{background:var(--muted)}.chat-empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--muted);font-size:13px;padding:24px 0}.chat-empty svg{width:26px;height:26px;opacity:.5}.chat-msg{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:start}.chat-msg.grouped{margin-top:-6px}.chat-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(135deg,hsl(var(--hue, 265) 70% 55%),hsl(var(--hue, 265) 70% 42%));box-shadow:inset 0 0 0 1px #ffffff14;-webkit-user-select:none;user-select:none}.chat-avatar-spacer{width:28px}.chat-body{min-width:0}.chat-meta{display:flex;align-items:baseline;gap:8px;margin-bottom:3px}.chat-author{font-size:12.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-time{font-size:10.5px;color:var(--muted);flex:0 0 auto}.chat-bubble{position:relative;display:inline-block;max-width:100%;background:var(--panel-2);border:1px solid var(--border);border-radius:4px 12px 12px;padding:7px 11px;font-size:13px;line-height:1.5;color:var(--text)}.chat-msg.mine .chat-bubble{background:linear-gradient(180deg,#ffd24a24,#ffb02014);border-color:#ffb22052}.chat-text{white-space:pre-wrap;word-break:break-word}.chat-del{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--panel);border:1px solid var(--border-2);color:var(--muted);cursor:pointer;opacity:0;transform:scale(.85);transition:opacity .12s,transform .12s,color .12s,border-color .12s}.chat-bubble:hover .chat-del{opacity:1;transform:scale(1)}.chat-del:hover{color:var(--red);border-color:var(--red)}.chat-del svg{width:12px;height:12px}.chat-error{margin:10px 0 0}.chat-composer{display:flex;align-items:flex-end;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border);flex:0 0 auto}.chat-input{flex:1 1 auto;resize:none;max-height:120px;background:var(--bg-2);border:1px solid var(--border-2);border-radius:10px;color:var(--text);padding:9px 12px;font:inherit;font-size:13px;line-height:1.4;transition:border-color .15s,box-shadow .15s}.chat-input::placeholder{color:var(--muted)}.chat-input:focus{outline:none;border-color:var(--accent-2);box-shadow:var(--focus-ring)}.chat-send{flex:0 0 auto;width:38px;height:38px;border-radius:10px;border:none;display:grid;place-items:center;cursor:pointer;color:#1a1200;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 2px 10px var(--accent-glow);transition:filter .15s,transform .06s,opacity .15s}.chat-send svg{width:17px;height:17px}.chat-send:hover:not(:disabled){filter:brightness(1.08)}.chat-send:active:not(:disabled){transform:scale(.94)}.chat-send:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.user-count{font-size:11px;color:var(--muted);background:var(--bg-2);border:1px solid var(--border);border-radius:999px;padding:2px 9px}.user-rows{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.user-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;transition:border-color .15s,opacity .15s}.user-row:hover{border-color:var(--border-2)}.user-row.blocked{opacity:.62;border-color:#ff5c6c52;background:#ff5c6c0d}.avatar.sm.off{background:var(--border-2);color:var(--muted)}.user-meta{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}.user-name{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-sub{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.blocked-chip{font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--red);background:#ff5c6c1f;border:1px solid rgba(255,92,108,.3);border-radius:999px;padding:2px 8px;flex:0 0 auto}.user-locked{display:inline-flex;align-items:center;color:var(--green);flex:0 0 auto;padding:0 6px}.user-locked svg{width:16px;height:16px}.btn-mini.danger{border-color:#ff5c6c59;color:var(--red)}.btn-mini.danger:hover:not(:disabled){background:var(--red);border-color:var(--red);color:#fff}.btn-mini:disabled{opacity:.5;cursor:not-allowed}.thinking-seg{margin-bottom:4px}.thinking-seg button.active{box-shadow:inset 0 0 0 1px var(--accent-2)}.dl-menu-wrap{position:relative}.dl-all-btn .icon-chevron,.dl-all-btn svg:last-child{opacity:.7}.dl-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:264px;background:var(--panel-2);border:1px solid var(--border-2);border-radius:12px;box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column;gap:2px;animation:dlpop .12s ease}@keyframes dlpop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dl-menu-item{display:flex;align-items:flex-start;gap:10px;text-align:left;padding:9px 10px;border:none;background:transparent;border-radius:8px;color:var(--text);cursor:pointer;transition:background .12s}.dl-menu-item:hover{background:var(--bg-2)}.dl-menu-item svg{width:16px;height:16px;margin-top:2px;color:var(--accent);flex:0 0 auto}.dl-menu-item span{display:flex;flex-direction:column;min-width:0}.dl-menu-item b{font-size:13px;font-weight:600}.dl-menu-item small{font-size:11px;color:var(--muted);line-height:1.35}.blocked-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:var(--bg);text-align:center}.blocked-screen p{max-width:640px;margin:0;font-size:clamp(20px,4vw,34px);font-weight:700;letter-spacing:-.01em;color:var(--text);line-height:1.35}.user-count em{font-style:normal;color:var(--red)}.user-search{display:flex;align-items:center;gap:8px;background:var(--bg-2);border:1px solid var(--border-2);border-radius:9px;padding:6px 10px;margin-bottom:10px}.user-search svg{width:15px;height:15px;color:var(--muted);flex:0 0 auto}.user-search input{flex:1 1 auto;min-width:0;background:transparent;border:none;outline:none;color:var(--text);font:inherit;font-size:13px}.user-search button{background:none;border:none;color:var(--muted);cursor:pointer;display:inline-flex;padding:0}.user-search button:hover{color:var(--text)}.user-list{display:flex;flex-direction:column;gap:1px;max-height:320px;overflow-y:auto;margin:0 -4px 10px 0;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.user-list::-webkit-scrollbar{width:7px}.user-list::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:999px}.urow{display:flex;align-items:center;gap:9px;padding:5px 8px;border-radius:8px;transition:background .12s}.urow:hover{background:var(--bg-2)}.urow.blocked{opacity:.66}.urow .avatar.sm{flex:0 0 auto}.urow-name{font-size:13px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.urow-tag{flex:0 0 auto;font-size:9.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:1px 6px;border-radius:999px}.urow-tag.admin{color:var(--green);background:#35d07f1f;border:1px solid rgba(53,208,127,.28)}.urow-tag.blk{color:var(--red);background:#ff5c6c1f;border:1px solid rgba(255,92,108,.3)}.urow-spacer{flex:1 1 auto}.urow-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.urow-actions .icon-btn{width:28px;height:28px}.urow-actions .icon-btn.solid{width:auto;padding:0 8px}.urow-actions .btn-mini{padding:3px 10px;font-size:11px}.user-count em.ranked{color:var(--accent)}.prio-set{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;font-size:11px;font-weight:500;padding:4px 9px;border-radius:8px;background:transparent;border:1px solid var(--border-2);color:var(--muted);cursor:pointer;transition:color .12s,border-color .12s,background .12s}.prio-set:hover{color:var(--accent);border-color:var(--accent-2);background:var(--accent-glow)}.prio-set svg{width:13px;height:13px}.urow .prio-stepper{flex:0 0 auto}.prio-stepper .prio-clear{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:2px;border:none;background:transparent;color:var(--muted);border-radius:6px;cursor:pointer;transition:color .12s,background .12s}.prio-stepper .prio-clear:hover{color:var(--red);background:#ff5c6c1f}.prio-stepper .prio-clear svg{width:12px;height:12px}.fal-extras{margin-bottom:4px}.seed-input{width:100%;background:var(--bg-2);border:1px solid var(--border-2);border-radius:9px;color:var(--text);padding:8px 11px;font:inherit;font-size:13px}.seed-input:focus{outline:none;border-color:var(--accent-2);box-shadow:var(--focus-ring)}.fal-panel{margin-bottom:20px}.fal-key-status{font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap}.fal-key-status.ok{color:var(--green);background:#35d07f1f;border:1px solid rgba(53,208,127,.28)}.fal-key-status.off{color:var(--muted);background:var(--bg-2);border:1px solid var(--border)}.fal-key-row{display:flex;gap:8px;margin:8px 0 6px}.fal-key-input{flex:1 1 auto;min-width:0;background:var(--bg-2);border:1px solid var(--border-2);border-radius:9px;color:var(--text);padding:9px 12px;font:inherit;font-size:13px;letter-spacing:.04em}.fal-key-input:focus{outline:none;border-color:var(--accent-2);box-shadow:var(--focus-ring)}.btn-mini.fal-toggle.on{color:var(--accent);border-color:var(--accent-2);background:var(--accent-glow)}.badge.fal-balance{color:var(--green);background:#35d07f1f;border:1px solid rgba(53,208,127,.3);font-variant-numeric:tabular-nums}.fal-head-right{display:inline-flex;align-items:center;gap:8px}.fal-balance-chip{font-size:12px;font-weight:700;color:var(--green);background:#35d07f1f;border:1px solid rgba(53,208,127,.28);border-radius:999px;padding:3px 10px;font-variant-numeric:tabular-nums}.fal-key-list{display:flex;flex-direction:column;gap:4px;margin:4px 0 10px}.fal-key-item{display:flex;align-items:center;gap:10px;padding:7px 10px;background:var(--bg-2);border:1px solid var(--border);border-radius:9px}.fal-key-idx{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--panel);border:1px solid var(--border-2);font-size:11px;font-weight:700;color:var(--muted);flex:0 0 auto}.fal-key-mask{font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--text);font-variant-numeric:tabular-nums}.fal-key-bal{font-size:12.5px;font-weight:700;color:var(--green);font-variant-numeric:tabular-nums;flex:0 0 auto}.fal-key-item .icon-btn{width:28px;height:28px;flex:0 0 auto}.fal-key-item .icon-btn.solid{width:auto;padding:0 8px}.provider-toggle{display:inline-flex;border:1px solid var(--border-2);border-radius:8px;overflow:hidden;flex:0 0 auto}.provider-toggle button{border:none;background:transparent;color:var(--muted);font-size:11px;font-weight:600;padding:4px 9px;cursor:pointer;transition:background .12s,color .12s}.provider-toggle button+button{border-left:1px solid var(--border-2)}.provider-toggle button:hover{color:var(--text)}.provider-toggle button.active{background:var(--accent-glow);color:var(--accent)}@media (max-width: 600px){.topbar{flex-wrap:wrap;gap:8px 10px;padding:10px 14px}.brand h1{font-size:15px}.logo{font-size:22px}.subtitle{display:none}.nav-tabs{order:3;width:100%;justify-content:space-between}.nav-tabs button{flex:1;padding:8px 10px;text-align:center}.topbar-right{gap:6px;margin-left:auto}.badge.project{display:none}.user-chip{padding:4px;gap:0}.user-name{display:none}.btn-mini.logout{padding:6px 10px}.layout{padding:16px 12px;gap:16px}.panel.compose{padding:16px}.chat-panel{display:none}.controls-2col,.feed-toolbar{gap:8px}.tb-search,.tb-search-sku{flex:1 1 100%;min-width:0}.api-tab{padding:18px 12px}}@media (max-width: 380px){.controls-2col{grid-template-columns:1fr}.tile-grid{gap:10px}.nav-tabs button{padding:8px 6px;font-size:12px}}@media (hover: none){.tile-overlay{opacity:1}.tile-overlay .tile-prompt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.nav-tabs button{min-height:40px}.generate-btn{min-height:48px}.segmented button{min-height:40px}.stepper button{width:40px;height:40px}.pill,.status-trigger,.up-trigger{min-height:40px}.tb-search input,.tb-search-sku input{padding-top:11px;padding-bottom:11px}}@media (max-width: 600px){.sched-body{grid-template-columns:1fr;gap:14px}.sched-stats,.key-row{flex-wrap:wrap}.key-main{flex:1 1 100%}.key-name,.key-meta{min-width:0;overflow:hidden;text-overflow:ellipsis}.key-actions{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-start}.urow{flex-wrap:wrap}.urow-spacer{display:none}.urow-name{flex:1 1 auto}.urow-actions{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-start;gap:6px;margin-top:2px}.fal-key-row{flex-wrap:wrap}.fal-key-row input,.fal-key-row>*{min-width:0}.apanel{padding:14px}.api-tab,.apanel{max-width:100%;overflow-x:hidden}}
