:root{color-scheme:light dark;font-family:Space Grotesk,Inter,system-ui,sans-serif;--bg:#0e0b16;--surface:hsla(0,0%,100%,.08);--accent:#9dfb63;--accent-2:#70f4d2;--text-muted:hsla(0,0%,100%,.7)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 82% 12%,rgba(165,48,214,.34),transparent 44%),radial-gradient(circle at 8% 6%,rgba(0,147,224,.28),transparent 38%),linear-gradient(170deg,#031420,#050714 52%,#0a0814);color:#fff}.app-shell,body{min-height:100vh}.app-shell{position:relative;padding:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;overflow-x:hidden}.app-glow{position:absolute;inset:10% auto auto 30%;width:360px;height:360px;background:radial-gradient(circle,rgba(117,249,255,.55),transparent 65%);filter:blur(30px);z-index:0}.hero{width:min(100%,800px);gap:1.5rem;background:linear-gradient(145deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.03));border:1px solid hsla(0,0%,100%,.15);border-radius:32px;padding:clamp(2rem,4vw,3rem);box-shadow:0 25px 60px rgba(0,0,0,.45)}.dashboard-shell,.hero{position:relative;z-index:1;display:flex;flex-direction:column}.dashboard-shell{width:min(100%,1100px);gap:1.15rem;margin:0 auto;padding:clamp(1.6rem,2.4vw,2.4rem)}.dashboard-topbar{position:relative;z-index:10;width:100%;padding:1.15rem clamp(1.2rem,3vw,2.8rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}.topbar-logo{font-size:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#d8f5ff}.topbar-actions{position:relative;display:flex;align-items:center;gap:.65rem}.topbar-user{font-size:.86rem;padding:.45rem .75rem;border-radius:999px;border:1px solid hsla(0,0%,100%,.18);color:hsla(0,0%,100%,.88);background:hsla(0,0%,100%,.04)}.auth-btn{padding:.56rem 1.12rem;font-size:.88rem}.auth-popover{position:absolute;top:calc(100% + .55rem);right:0;width:min(88vw,280px);padding:.85rem;border-radius:16px;border:1px solid hsla(0,0%,100%,.18);background:rgba(8,10,18,.96);box-shadow:0 16px 36px rgba(0,0,0,.45);z-index:6}.auth-tip{margin:0 0 .65rem;font-size:.8rem;color:hsla(0,0%,100%,.62)}.auth-switch{display:grid;grid-template-columns:1fr 1fr;grid-gap:.4rem;gap:.4rem;margin-bottom:.7rem}.auth-switch button{border:1px solid hsla(0,0%,100%,.22);background:transparent;color:hsla(0,0%,100%,.85);border-radius:10px;padding:.45rem .55rem;cursor:pointer}.auth-switch button.active{border-color:transparent;color:#0b0b0f;background:linear-gradient(120deg,var(--accent),var(--accent-2))}.auth-form{display:flex;flex-direction:column;gap:.55rem}.auth-form input{width:100%;border-radius:10px;border:1px solid hsla(0,0%,100%,.22);background:hsla(0,0%,100%,.03);color:#fff;padding:.55rem .7rem;font-size:.9rem}.auth-form input::placeholder{color:hsla(0,0%,100%,.45)}.auth-error{margin:.1rem 0;font-size:.82rem}.auth-submit-btn{width:100%;padding:.6rem .9rem;font-size:.88rem}.history-panel{order:3;max-width:860px;width:100%;margin:0 auto;background:rgba(6,11,20,.62);border-radius:20px;padding:1rem 1.1rem;border:1px solid rgba(142,214,255,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:.75rem}.history-panel h2{margin:0;font-size:1.1rem}.history-header{display:flex;justify-content:space-between;align-items:center}.history-header h2{margin:0;font-size:1.4rem}.history-list{padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.history-list,.history-list li{list-style:none}.history-item-btn{width:100%;text-align:left;border:none;padding:.65rem .9rem;border-radius:12px;background:hsla(0,0%,100%,.03);font-size:.92rem;color:var(--text-muted);cursor:pointer;transition:background .2s ease,color .2s ease}.history-item-btn:hover{background:hsla(0,0%,100%,.08)}.history-item-btn.active{background:rgba(157,251,99,.18);color:#fff}.input-panel{order:2;width:100%;max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:.75rem}.hero-title{margin:0;text-align:center;font-size:clamp(1.9rem,3.2vw,2.45rem);font-weight:700;color:#d8f7ff}.status-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.badge-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.badge{border-radius:999px;padding:.25rem .9rem;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid hsla(0,0%,100%,.25);color:hsla(0,0%,100%,.75)}.badge.live{color:#0b0b0f;background:linear-gradient(120deg,var(--accent),var(--accent-2));border-color:transparent}.quick-tags{display:flex;gap:.5rem;flex-wrap:wrap}.tag{border:none;background:hsla(0,0%,100%,.04);color:#fff;padding:.35rem .85rem;border-radius:999px;font-size:.85rem;cursor:pointer;transition:background .2s ease}.tag:hover{background:hsla(0,0%,100%,.15)}.preview-card{margin-top:1.1rem;padding:1.5rem;border-radius:20px;border:1px solid rgba(142,214,255,.14);background:rgba(8,14,24,.72);box-shadow:0 10px 30px rgba(0,0,0,.4)}.preview-card h3{margin:.5rem 0}.subtext{margin:0;color:rgba(224,239,255,.65);text-align:center}.secondary{border:1px solid hsla(0,0%,100%,.4);background:transparent;color:#fff;padding:.45rem 1.05rem;border-radius:999px;font-size:.85rem;cursor:pointer;transition:background .2s ease}.secondary:hover{background:hsla(0,0%,100%,.1)}.task-id{font-size:.85rem;color:var(--accent-2);margin:.4rem 0 0}.error-text{color:#ff8a8a;font-size:.9rem;margin:.35rem 0 0}.progress-bar{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.progress-track{flex:1 1;height:6px;background:hsla(0,0%,100%,.15)}.progress-fill,.progress-track{border-radius:999px;overflow:hidden}.progress-fill{display:block;height:100%;background:linear-gradient(120deg,var(--accent),var(--accent-2));position:relative;transition:width .45s cubic-bezier(.2,.8,.2,1)}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.35) 45%,hsla(0,0%,100%,0));transform:translateX(-120%);animation:progressShimmer 1.2s linear infinite}@keyframes progressShimmer{to{transform:translateX(120%)}}.preview-image{margin-top:1rem;border-radius:20px;overflow:hidden;border:1px solid hsla(0,0%,100%,.1)}.preview-image img{width:100%;display:block}.glb-viewer{margin-top:1rem;border-radius:20px;border:1px solid hsla(0,0%,100%,.12);background:hsla(0,0%,100%,.02);overflow:hidden}.glb-lite-host{width:100%;min-height:360px;display:block}.glb-lite-host lite-model-viewer{width:100%}.model-link{display:inline-block;margin-top:.85rem;color:var(--accent-2);text-decoration:none}.model-link:hover{text-decoration:underline}.texture-box{margin-top:1rem;display:flex;justify-content:flex-start}.muted{margin:0;color:hsla(0,0%,100%,.5);font-size:.92rem}.hero-content h1{font-size:clamp(2.5rem,5vw,4rem);margin:.4rem 0}.hero-content p{color:var(--text-muted);font-size:1.05rem;line-height:1.6}.prompt-form{margin-top:.5rem;display:flex;flex-direction:column;gap:.75rem}.hero-form{border-radius:28px}.prompt-compose{position:relative}.prompt-form label{font-size:.85rem;letter-spacing:.25em;text-transform:uppercase;color:var(--accent-2)}.prompt-form textarea{width:100%;border-radius:24px;border:1px solid rgba(155,225,255,.3);background:#020307;color:#fff;padding:1.15rem 1.25rem;font-size:1rem;font-family:inherit;resize:vertical;min-height:140px;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.03)}.prompt-form textarea::placeholder{color:rgba(214,225,235,.42)}.auth-form input:focus-visible,.prompt-form textarea:focus-visible{outline:2px solid rgba(157,251,99,.65);outline-offset:0}.prompt-clear{position:absolute;top:.8rem;right:.8rem;width:1.55rem;height:1.55rem;border-radius:999px;border:1px solid hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.12);color:hsla(0,0%,100%,.95);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.prompt-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.prompt-hint-wrap{min-width:0;display:flex;align-items:center;gap:.6rem}.prompt-hint-label{font-size:.78rem;color:rgba(228,239,251,.6)}.prompt-suggestion{max-width:320px;border:1px solid hsla(0,0%,100%,.14);background:hsla(0,0%,100%,.06);color:rgba(225,236,249,.86);border-radius:999px;padding:.38rem .78rem;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.prompt-actions{display:flex;align-items:center;gap:.65rem}.credit-pill{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;height:2rem;padding:0 .65rem;border-radius:999px;border:1px solid rgba(255,204,92,.45);color:#ffd36a;font-size:.84rem;background:rgba(255,179,66,.1)}.primary{background:linear-gradient(120deg,var(--accent),#7bf463 80%);color:#0b0b0f;border:none;border-radius:999px;padding:.95rem 1.75rem;font-weight:600;cursor:pointer;transition:transform .2s ease}.primary:hover{transform:translateY(-2px)}.generate-btn{min-width:132px;padding:.72rem 1.35rem}.ghost:disabled,.primary:disabled{opacity:.45;cursor:not-allowed}.ghost{background:transparent;border:1px solid hsla(0,0%,100%,.5);color:#fff;padding:.95rem 1.75rem;border-radius:999px;cursor:pointer;transition:background .2s ease}.ghost:hover{background:hsla(0,0%,100%,.08)}@media (max-width:960px){.dashboard-topbar{flex-wrap:wrap}.prompt-footer{flex-direction:column;align-items:stretch}.prompt-actions{justify-content:flex-end}.prompt-suggestion{max-width:100%}}.eyebrow{text-transform:uppercase;letter-spacing:.4em;font-size:.75rem;color:var(--accent-2)}