:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eee;background:#101114;font-synthesis:none;--panel:#191b20;--line:#30323a;--muted:#9fa3ae;--accent:#d7ff62;--danger:#ff6b7a}*{box-sizing:border-box}body{margin:0;min-width:320px}button,.button,input,textarea,select{font:inherit}button,.button{border:1px solid var(--line);background:#22252b;color:#eee;border-radius:10px;padding:.65rem .85rem;cursor:pointer;text-decoration:none}button:hover,.button:hover{border-color:#686d78}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--accent);color:#15170e;border-color:var(--accent);font-weight:750}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 60px #0005}.app-header{height:68px;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:2rem;padding:0 max(18px,calc((100vw - 1500px)/2));background:#101114e8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.7rem;white-space:nowrap}.brand span,.logo{display:grid;place-items:center;background:var(--accent);color:#10120b;font-weight:900;border-radius:12px;width:38px;height:38px}.app-header nav{display:flex;gap:.35rem;flex:1}.app-header nav button{border:0;background:transparent}.app-header nav button.active{background:#292c33;color:var(--accent)}.app{max-width:1500px;margin:auto;padding:28px 18px 80px}.generator{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.workspace{min-width:0}.settings{padding:22px;position:sticky;top:92px;height:max-content}.settings label,.form label,.login label,.workspace>label{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0;color:#c8cad0}.settings select,.form input,.form textarea,.login input,.workspace textarea{width:100%;border:1px solid var(--line);background:#121318;color:#eee;border-radius:11px;padding:.8rem}.generate{width:100%;margin-top:22px;padding:1rem}.section-title{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:18px}.section-title h1,.section-title h2{margin:0}.section-title p{margin:.35rem 0;color:var(--muted)}h1{font-size:clamp(1.8rem,4vw,3.2rem);letter-spacing:-.045em}h2{font-size:1.08rem}.dropzone{position:relative;display:grid;place-items:center;gap:.3rem;min-height:170px;border:1px dashed #5f6470;border-radius:18px;background:#16181d;color:var(--muted);margin:22px 0}.dropzone strong{color:#eee}.dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.references{display:flex;gap:12px;overflow-x:auto;padding:4px 0 18px}.reference{position:relative;flex:0 0 126px;height:126px;border-radius:15px;overflow:hidden;border:2px solid transparent;background:#24262c}.reference img{width:100%;height:100%;object-fit:cover}.reference span{position:absolute;bottom:6px;left:6px;background:#111c;border-radius:9px;padding:.2rem .45rem}.reference button{position:absolute;top:6px;right:6px;border:0;border-radius:50%;width:28px;height:28px;padding:0;background:#111d}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips button.selected{border-color:var(--accent);background:#29301e;color:var(--accent)}.selected-prompts{padding:0;list-style:none}.selected-prompts li{display:flex;align-items:center;gap:6px;padding:.45rem;border-bottom:1px solid var(--line)}.selected-prompts li span{flex:1}.selected-prompts li button{padding:.25rem .5rem}.final{border-color:#596235!important;background:#15180e!important}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}.tile{padding:0;text-align:left;overflow:hidden;position:relative;background:#181a1f}.tile img,.placeholder{width:100%;aspect-ratio:1/1;object-fit:cover;display:grid;place-items:center;color:var(--muted)}.tile span{display:block;padding:.7rem}.tile i{position:absolute;top:8px;right:8px;background:#111c;border-radius:50%;padding:.35rem}.modal{position:fixed;z-index:50;inset:0;background:#060709df;display:grid;place-items:center;padding:18px;overflow:auto}.modal .panel{width:min(900px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:20px}.modal header{display:flex;align-items:center;justify-content:space-between}.result-image{display:block;max-width:100%;max-height:64vh;margin:18px auto;border-radius:10px}.result-actions,.toolbar,.actions{display:flex;flex-wrap:wrap;gap:8px}.details textarea{width:100%;background:#111;color:#eee;border:1px solid var(--line);padding:1rem;border-radius:10px}.details dl{display:grid;grid-template-columns:110px 1fr}.details dt{color:var(--muted)}.editor{width:min(1200px,100%)!important}.editor canvas{display:block;max-width:100%;max-height:58vh;margin:16px auto;background:#fff;touch-action:none}.editor textarea{width:100%;margin:12px 0;background:#111;color:#eee;border:1px solid var(--line);border-radius:10px;padding:.8rem}.toolbar button.active{border-color:var(--accent);color:var(--accent)}.prompt-list{display:grid;gap:10px}.prompt-card{display:flex;justify-content:space-between;gap:1rem;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.prompt-card small{display:block;color:var(--muted);margin-top:.35rem}.prompt-card p{white-space:pre-wrap;color:#c8cad0}.form{max-width:600px!important}.check{flex-direction:row!important}.error{color:var(--danger)}.banner{display:flex;justify-content:space-between;padding:12px;border:1px solid #793440;background:#30171c;border-radius:10px;margin-bottom:16px}.banner button{border:0;background:transparent;color:inherit}.login{min-height:100vh;display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 50% 0,#2c3421,transparent 35%)}.login form{width:min(420px,100%);padding:34px}.login .logo{width:52px;height:52px;font-size:1.4rem}.login h1{font-size:2.2rem;margin-bottom:.2rem}.login p{color:var(--muted)}.login button{width:100%;padding:.9rem}@media(max-width:800px){.app-header{gap:.5rem;padding:0 10px}.brand strong{display:none}.app-header nav{overflow-x:auto}.app-header>button{font-size:0}.app-header>button:after{content:"↪";font-size:1rem}.generator{grid-template-columns:1fr}.settings{position:static;order:-1}.dropzone{min-height:120px}.gallery{grid-template-columns:repeat(2,1fr)}.result-actions>*{flex:1}.prompt-card{flex-direction:column}}@media(prefers-reduced-motion:no-preference){button,.tile{transition:transform .15s,border-color .15s}.tile:hover{transform:translateY(-2px)}}
