:root{--bg:#0e1113;--panel:#171b1f;--fg:#eee;--muted:#9aa;--line:#2a3036;--accent:#2c9;--err:#f66;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#fff;--panel:#f3f5f6;--fg:#111;--muted:#666;--line:#d9dee2;--accent:#0a7;--err:#c22;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--fg);margin:0;font:16px/1.4 system-ui,sans-serif;overflow-x:hidden}h1{margin:8px 0;font-size:1.5rem}h2{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:20px 0 8px;font-size:1rem}input,textarea,button,.chip,.filebtn{font:inherit;border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:8px;width:100%;margin:6px 0;padding:10px 12px}textarea{resize:none}button{background:var(--accent);color:#fff;cursor:pointer;border:0}button.ghost,.filebtn{color:var(--fg);border:1px solid var(--line);background:0 0}button:disabled{opacity:.5}button.small,.filebtn,button.icon{width:auto;margin:0;padding:6px 12px}button.icon{color:var(--fg);background:0 0;font-size:1.2rem}.filebtn{cursor:pointer;text-align:center;display:inline-block}.row{align-items:center;gap:8px;display:flex}.row>button{flex:1;width:auto}.row>button.small{flex:none}.muted{color:var(--muted)}.error{color:var(--err)}.version{margin-top:24px}.shell{flex-direction:column;height:100%;display:flex}.view{flex:1;min-height:0;overflow-y:auto}.page{max-width:640px;padding:max(16px, env(safe-area-inset-top)) 16px 24px;margin:0 auto}.tabs{border-top:1px solid var(--line);background:var(--panel);padding-bottom:env(safe-area-inset-bottom);display:flex}.tabs a{text-align:center;color:var(--muted);flex:1;padding:12px 2px;font-size:.8rem;text-decoration:none}.tabs a.on{color:var(--accent);font-weight:600}.chat{flex-direction:column;max-width:640px;height:100%;margin:0 auto;display:flex}.messages{padding:max(16px, env(safe-area-inset-top)) 16px 8px;flex:1;overflow-y:auto}.empty{text-align:center;margin-top:30vh}.composer{border-top:1px solid var(--line);background:var(--bg);padding:8px 16px}.chip{width:auto;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;text-decoration:none;display:inline-block;overflow:hidden}.send{align-items:flex-end;gap:8px;display:flex}.send textarea{flex:1}.send button{width:auto}.options label{margin:6px 0;font-size:.9rem;display:block}.strip{gap:6px;padding:6px 0;display:flex;overflow-x:auto}.strip-item{background:var(--panel);flex:0 0 64px;width:64px;height:64px;margin:0;padding:0;overflow:hidden}.strip-item img{object-fit:cover;width:100%;height:100%}.blurred-img{filter:blur(14px)}.job{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:0 0 12px;padding:12px}.job header{justify-content:space-between;gap:8px;display:flex}.job .status{color:var(--muted);font-size:.85rem}.job.done .status{color:var(--accent)}.job.failed .status{color:var(--err)}.job .prompt{overflow-wrap:anywhere;margin:6px 0}.job .row{margin-top:8px}.grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px;display:grid}.thumb{aspect-ratio:1;background:var(--bg);border:1px solid var(--line);width:100%;margin:0;padding:0;position:relative;overflow:hidden}.thumb .media{object-fit:cover;width:100%;height:100%;display:block}.thumb.blurred .media{filter:blur(22px)brightness(.8)}.reveal{color:#fff;text-shadow:0 1px 3px #000;place-items:center;font-size:.8rem;display:grid;position:absolute;inset:0}audio.media{grid-column:1/-1;width:100%}.list{margin:0;padding:0;list-style:none}.wf{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 0;display:flex}.wf-main{cursor:pointer;flex-direction:column;flex:1;min-width:0;display:flex}.wf-main strong,.wf-main span{text-overflow:ellipsis;overflow:hidden}.wf-detail{flex-basis:100%;font-size:.9rem}.toggle{align-items:center;gap:10px;display:flex}.toggle input{width:auto;margin:0}.probe{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--panel);border-radius:8px;padding:8px;font-size:.75rem}.lightbox{z-index:10;padding-bottom:env(safe-area-inset-bottom);background:#000000eb;flex-direction:column;display:flex;position:fixed;inset:0}.lb-body{flex:1;place-items:center;min-height:0;padding:12px;display:grid}.lb-body img,.lb-body video{object-fit:contain;max-width:100%;max-height:100%}.lb-bar{flex-wrap:wrap;gap:6px;padding:8px 12px 12px;display:flex}.lb-bar button{flex:28%;width:auto;margin:0}.toast{background:var(--panel);border-radius:8px;padding:6px 12px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.view-result{margin:8px 0}.grid.carrier{opacity:.7;grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}.m3ds-body{min-height:0;padding:max(16px, env(safe-area-inset-top)) 16px 8px;width:100%;max-width:720px;color:var(--fg);flex:1;margin:0 auto;overflow-y:auto}.m3ds-title{color:var(--fg);text-transform:none;letter-spacing:0;margin:0 0 8px;font-size:1.1rem}.model-host{background:var(--panel);border:1px solid var(--line);border-radius:12px;width:100%;height:55vh;overflow:hidden}.textview{background:var(--panel);border:1px solid var(--line);white-space:pre;border-radius:8px;max-height:60vh;padding:10px;font-size:.8rem;overflow:auto}.textview.wrap{white-space:pre-wrap;overflow-wrap:anywhere}.result-type{margin:8px 0;display:block}.result-type select{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--fg);font:inherit;border-radius:8px;padding:8px}.m3ds-panel{background:var(--bg)}.heat{margin:8px 0}.heat p{font-size:inherit;margin:4px 0}.heat a{color:var(--accent);font-size:inherit}.heat-add{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.heat-add input{flex:1;margin:0}.linkbtn{width:auto;color:var(--muted);font:inherit;background:0 0;border:0;margin:0;padding:0;text-decoration:underline}.banner{padding:max(8px, env(safe-area-inset-top)) 16px 8px;background:var(--accent);color:#fff;justify-content:space-between;align-items:center;gap:8px;font-size:.9rem;display:flex}.banner.offline{background:var(--panel);color:var(--fg);border-bottom:1px solid var(--line)}.banner button{background:#00000040}.install-card{background:var(--panel);border:1px solid var(--line);text-align:left;border-radius:12px;margin:12px 0;padding:12px}.install-card p{color:var(--fg);margin:0 0 8px}.empty .muted{margin-bottom:12px}.gate h1{margin-top:24px}.terms{background:var(--panel);border:1px solid var(--line);border-radius:12px;max-height:42vh;margin:12px 0;padding:4px 14px;font-size:.9rem;overflow-y:auto}.terms h2{margin:14px 0 4px;font-size:.85rem}.terms p{margin:4px 0 8px}.privacy-cover{z-index:100;background:var(--bg);color:var(--muted);place-items:center;font-size:1.2rem;display:grid;position:fixed;inset:0}.lock{text-align:center;padding-top:12vh}.dots{justify-content:center;gap:12px;margin:20px 0;display:flex}.dot{border:2px solid var(--muted);border-radius:50%;width:14px;height:14px}.dot.on{background:var(--fg);border-color:var(--fg)}.keypad{grid-template-columns:repeat(3,1fr);gap:10px;max-width:300px;margin:16px auto;display:grid}.keypad button{margin:0;padding:16px 0;font-size:1.3rem}.forgot{text-align:left;margin-top:24px}.confirm .error,.lock-settings .row{margin:8px 0}details h3{margin:12px 0 2px;font-size:.95rem}.share-preview{border-radius:12px;max-width:100%;max-height:40vh;margin:8px auto;display:block}.job.highlight{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.banner-link{color:#fff;font-weight:600;text-decoration:underline}.update-panel{margin:8px 0}.update-notes p{margin:4px 0}.update-permission{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:8px 0;padding:10px}
