:root{color-scheme:light;--orange:#f45b2a;--orange-soft:#fff3ed;--green:#16794c;--text:#1d2027;--muted:#69717e;--line:#e3e6eb;--surface:#fff;--surface2:#f7f8fa;--danger:#b42318;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;background:#f1f3f5;color:var(--text)}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}.topbar{height:68px;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:38px;height:38px;border-radius:11px;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:20px}.brand strong{display:block}.brand small{display:block;color:var(--muted);margin-top:2px}.top-status{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.badge{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:12px}.badge.ok{color:var(--green)}.badge.error{color:var(--danger)}.local-note{padding:8px 24px;background:var(--orange-soft);color:#8c4528;font-size:12px;border-bottom:1px solid #ffddce}.workspace{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 350px;background:var(--surface);min-height:calc(100vh - 101px)}.content{padding:24px}.sidebar{padding:24px;border-left:1px solid var(--line);background:var(--surface2)}.section-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:15px}.section-heading>span{width:26px;height:26px;border-radius:8px;background:var(--orange);color:#fff;display:grid;place-items:center;font-weight:700}.section-heading h1,.section-heading h2{font-size:18px;margin:1px 0 3px}.section-heading p{margin:0;color:var(--muted);font-size:12px}.section-heading.compact{margin-bottom:12px}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.asset-card,.carousel-card,.prompt-editor,.task-card{border:1px solid var(--line);border-radius:14px;background:var(--surface)}.asset-card{padding:14px}.preset-card{background:linear-gradient(145deg,var(--orange-soft),#fff);border-color:#ffc8af}.asset-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.asset-title b{font-size:14px}.asset-title em{font-style:normal;color:var(--orange);font-size:11px}.asset-card>p,.carousel-card>p,.task-card>p{color:var(--muted);font-size:12px;margin:7px 0 11px}.asset-preview{height:136px;border-radius:10px;background:var(--surface2);display:grid;place-items:center;overflow:hidden;color:var(--muted);font-size:12px}.asset-preview img{width:100%;height:100%;object-fit:contain;display:none}.asset-preview.has-image img{display:block}.asset-preview.has-image span{display:none}.source-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.file-button,.source-actions button,.carousel-tools button{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:8px 10px;font-size:11px;cursor:pointer}.file-button input{display:none}.restore-preset{color:var(--muted)}.url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:8px}.url-row input,.carousel-tools input{min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.url-row button,#add-carousel-url{border:0;border-radius:8px;background:var(--orange);color:#fff;padding:8px 12px;cursor:pointer}.asset-state{display:block;margin-top:8px;color:var(--muted)}.asset-state.ready{color:var(--green)}.carousel-card{margin-top:12px;padding:14px}.carousel-tools{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.carousel-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.carousel-item{position:relative;aspect-ratio:1;border-radius:9px;overflow:hidden;background:var(--surface2);border:1px solid var(--line)}.carousel-item img{width:100%;height:100%;object-fit:cover}.carousel-item button{position:absolute;top:4px;right:4px;width:23px;height:23px;border:0;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;cursor:pointer}.empty-carousel{grid-column:1/-1;padding:24px;text-align:center;color:var(--muted);background:var(--surface2);border-radius:10px}.prompt-heading{margin-top:26px}.prompt-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:9px}.prompt-tabs button{min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);cursor:pointer}.prompt-tabs button.active{border-color:var(--orange);background:var(--orange-soft);color:var(--orange);font-weight:700}.prompt-editor>div{padding:11px 13px;background:var(--surface2);display:flex;align-items:center;justify-content:space-between;border-radius:14px 14px 0 0}.prompt-editor>div button{border:0;background:transparent;color:var(--muted);cursor:pointer}.prompt-editor textarea{width:100%;min-height:135px;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px;resize:vertical;line-height:1.6}.prompt-editor>small{display:block;padding:8px 13px;color:var(--muted)}.task-card{padding:13px;margin-bottom:9px}.task-card>div{display:flex;justify-content:space-between;gap:8px}.task-card strong{color:var(--orange)}.task-card progress{width:100%;height:6px;accent-color:var(--green)}.warning{padding:10px;border:1px solid #f5c2bd;border-radius:10px;background:#fff1f0;color:var(--danger);font-size:12px;line-height:1.5;margin:12px 0}.generate{width:100%;min-height:46px;border:0;border-radius:11px;background:var(--orange);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 8px 18px rgba(244,91,42,.22)}.generate:disabled{opacity:.6;cursor:wait}.job-status{text-align:center;color:var(--muted);font-size:11px;min-height:30px;padding:8px}.results-head{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.results-head h2{font-size:15px}.results-head span{color:var(--muted);font-size:12px}.results{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.result{aspect-ratio:1;border:1px dashed var(--line);border-radius:9px;display:grid;place-items:center;color:var(--muted);font-size:11px;overflow:hidden}.result img{width:100%;height:100%;object-fit:cover}.download{display:flex;align-items:center;justify-content:center;min-height:42px;margin-top:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);text-decoration:none;font-weight:700;font-size:12px}.download.disabled{opacity:.45;pointer-events:none}
.url-row[hidden]{display:none}
.asset-card:focus,.carousel-card:focus{outline:none}.asset-card.paste-target,.carousel-card.paste-target{border-color:var(--orange);box-shadow:0 0 0 3px rgba(244,91,42,.13)}
.hover-preview{position:fixed;z-index:1000;width:min(360px,calc(100vw - 24px));height:min(360px,calc(100vh - 24px));display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 14px 38px rgba(20,22,27,.24);opacity:0;visibility:hidden;transition:opacity .12s ease,visibility .12s ease;pointer-events:none}.hover-preview.visible{opacity:1;visibility:visible}.hover-preview img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px;background:#fff}.asset-preview.has-image img,.carousel-item img,.result img{cursor:zoom-in}
.auth-locked>.topbar,.auth-locked>.local-note,.auth-locked>.workspace{display:none}.auth-screen{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#fff3ed,#f2f4f7)}.auth-screen[hidden]{display:none}.auth-card{width:min(390px,100%);padding:26px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(25,30,40,.13)}.auth-brand{margin-bottom:22px}.auth-card label{display:grid;gap:6px;margin-top:13px;color:var(--muted);font-size:12px}.auth-card input,.create-user-form input{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px}.auth-card>button,.create-user-form button{width:100%;margin-top:18px;border:0;border-radius:10px;background:var(--orange);color:#fff;padding:12px;font-weight:700;cursor:pointer}.form-error{min-height:18px;margin:10px 0 0;color:var(--danger);font-size:12px}.top-button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 10px;font-size:12px;cursor:pointer}.admin-dialog{width:min(760px,calc(100vw - 30px));max-height:85vh;border:0;border-radius:16px;padding:20px;box-shadow:0 20px 65px rgba(0,0,0,.3)}.admin-dialog::backdrop{background:rgba(20,22,27,.55)}.admin-head{display:flex;justify-content:space-between;align-items:flex-start}.admin-head h2{margin:0}.admin-head p{margin:4px 0 16px;color:var(--muted);font-size:12px}.admin-head button{border:0;background:transparent;cursor:pointer}.create-user-form{display:grid;grid-template-columns:1fr 1.4fr 100px 110px;gap:8px}.create-user-form button{margin:0}.user-list{display:grid;gap:8px;margin-top:10px}.user-row{display:grid;grid-template-columns:minmax(110px,1fr) 110px 95px 90px;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px}.user-row small{color:var(--muted)}.user-row input{width:100%;border:1px solid var(--line);border-radius:7px;padding:7px}.user-row button{border:1px solid var(--line);border-radius:7px;background:#fff;padding:7px;cursor:pointer}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.sidebar{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:600px){.topbar{height:auto;min-height:68px;padding:12px 14px;align-items:flex-start}.brand small{display:none}.local-note{padding:8px 14px}.content,.sidebar{padding:15px}.asset-grid{grid-template-columns:1fr}.carousel-tools{grid-template-columns:1fr}.carousel-list{grid-template-columns:repeat(3,1fr)}.prompt-tabs{grid-template-columns:1fr}.prompt-tabs button{min-height:38px}.asset-preview{height:180px}}
@media(max-width:700px){.create-user-form,.user-row{grid-template-columns:1fr}.admin-dialog{padding:14px}.top-status{gap:5px}.badge,.top-button{font-size:10px}}
.user-row{grid-template-columns:minmax(110px,1fr) 110px 95px 70px 70px}.user-enabled-wrap{height:100%;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.user-enabled-wrap input{width:auto;margin:0}.delete-user{color:var(--danger);border-color:#f2bbb6!important}
.storage-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:11px;border-radius:10px;background:var(--surface2)}.storage-card div{display:grid;gap:3px}.storage-card small{color:var(--muted)}.storage-card button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 10px;cursor:pointer}
@media(max-width:700px){.user-row{grid-template-columns:1fr}}
