@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/panel/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/panel/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff")}:root{--bg:#16161a;--card:#222228;--card-2:#2b2b33;--text:#f1f1f4;--muted:#a0a0ab;--accent:#ff7a1a;--accent-2:#ff9a4d;--ok:#4cc38a;--warn:#f5c451;--error:#ff6b6b;--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);min-height:100dvh;margin:0}.app{max-width:720px;padding:0 16px calc(32px + env(safe-area-inset-bottom));margin:0 auto}.topbar{z-index:10;padding:calc(10px + env(safe-area-inset-top)) 0 10px;background:linear-gradient(var(--bg) 80%, transparent);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{color:var(--text);align-items:center;gap:10px;text-decoration:none;display:flex}.brand,.wordmark{letter-spacing:-.01em;font-family:Space Grotesk,system-ui,sans-serif;font-weight:500}.brand img{border-radius:7px}h1{margin:12px 0;font-size:1.6rem}h2{margin:0 0 12px;font-size:1.15rem}h3{margin:16px 0 6px;font-size:.95rem}.card{background:var(--card);border-radius:var(--radius);color:inherit;margin:12px 0;padding:16px;text-decoration:none;display:block}.center{place-items:center;min-height:100dvh;display:grid}.muted{color:var(--muted)}.small{font-size:.85rem}.hint{color:var(--muted);margin-top:6px;font-size:.85rem;display:block}.error{color:var(--error)}.warning{color:var(--warn);margin:4px 0}.ok{color:var(--ok)}.pre{white-space:pre-wrap;word-break:break-word}.row{align-items:center;display:flex}.row.between{justify-content:space-between;gap:12px}.row.gap{gap:10px}.row.wrap{flex-wrap:wrap}button,.button{background:var(--card-2);min-height:44px;color:var(--text);font:inherit;cursor:pointer;border:1px solid #3a3a44;border-radius:12px;justify-content:center;align-items:center;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:#1a1208}button:disabled{opacity:.5;cursor:default}button.link{min-height:auto;color:var(--muted);background:0 0;border:none;padding:6px 0;font-weight:500}button.danger,.danger{color:var(--error)}label{margin:12px 0;font-weight:600;display:block}[hidden]{display:none!important}input,textarea{width:100%;color:var(--text);font:inherit;background:#18181d;border:1px solid #3a3a44;border-radius:10px;margin-top:6px;padding:12px;font-weight:400;display:block}textarea{resize:vertical;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.8rem}.login{text-align:center;max-width:380px;margin:12vh auto 0}.login img{border-radius:14px}.login label{text-align:left}.login button{width:100%;margin-top:8px}.badge{white-space:nowrap;background:#3a3a44;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700;display:inline-block}.badge-queued,.badge-processing{color:var(--warn);background:#3d3220}.badge-ready{color:var(--ok);background:#1f3a2d}.badge-error{color:var(--error);background:#3f2226}.badge-published{color:var(--accent-2);background:#3d2a1a}.job-list{margin:0;padding:0;list-style:none}.job-card{align-items:center;gap:14px;display:flex}.thumb{object-fit:cover;background:var(--card-2);border-radius:10px;flex-shrink:0;width:96px;height:64px}.job-info{flex-direction:column;gap:4px;min-width:0;display:flex}.job-info strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty{text-align:center}.list-head{margin:12px 0}.tabs{background:var(--card);border-radius:12px;flex:1;gap:4px;max-width:320px;padding:4px;display:flex}.tabs a{min-height:36px;color:var(--muted);border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:flex}.tabs a.active{background:var(--card-2);color:var(--text)}.tabs .count{color:var(--muted);font-size:.8rem;font-weight:500}.back{color:var(--muted);margin-top:8px;text-decoration:none;display:inline-block}.hero{aspect-ratio:1200/630;object-fit:cover;border-radius:10px;width:100%;margin-bottom:12px}.toggle{align-items:center;gap:8px;margin:0;display:inline-flex}.toggle input{width:auto;margin:0;transform:scale(1.3)}.files{margin:0 0 12px;padding:0;list-style:none}.files li{border-bottom:1px solid #33333b;padding:10px 0}.file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}progress{width:100%;height:8px;accent-color:var(--accent)}.steps{gap:6px;margin:8px 0;padding:0;list-style:none;display:grid}.steps li{color:var(--muted);padding-left:26px;position:relative}.steps li:before{content:"";border:2px solid #4a4a55;border-radius:50%;width:12px;height:12px;position:absolute;top:5px;left:4px}.steps li.done{color:var(--text)}.steps li.done:before{background:var(--ok);border-color:var(--ok)}.steps li.active{color:var(--accent-2);font-weight:700}.steps li.active:before{border-color:var(--accent);animation:1.2s ease-in-out infinite pulse}.steps li.failed{color:var(--error)}.steps li.failed:before{background:var(--error);border-color:var(--error)}@keyframes pulse{50%{background:var(--accent)}}.share{gap:8px;margin-top:12px;display:grid}.share-item input,.share-item textarea{margin-bottom:8px}.qr img{background:#fff;border-radius:8px;padding:6px}.checklist summary,details summary{cursor:pointer;font-weight:700}.checklist ul{margin:6px 0;padding-left:20px}.checklist li{margin:4px 0}.plan-editor{flex-direction:column;gap:8px;display:flex}.plan-editor>.button{align-self:flex-start}.plan-rooms{flex-direction:column;gap:6px;display:flex}.plan-rooms>.room-name{align-items:center}.plan-rooms>.room-name>input{flex:1}.room-swatch{border-radius:4px;flex:none;width:14px;height:14px}.plan-canvas{cursor:crosshair;background:#fff;border:1px solid #d4d4d8;border-radius:8px;width:100%;height:auto;display:block}
