:root{--background:oklch(99.4% 0 0);--foreground:oklch(0% 0 0);--card:oklch(99.4% 0 0);--popover:oklch(99.11% 0 0);--primary:#d97757;--primary-hover:#e08a6d;--primary-foreground:oklch(16% .02 40);--secondary:oklch(99.33% .0011 197.139);--muted:oklch(97.02% 0 0);--muted-foreground:oklch(43.86% 0 0);--accent:oklch(96.5% .022 45);--accent-foreground:oklch(53% .14 39);--destructive:oklch(66.65% .2111 2.8306);--destructive-text:oklch(52% .2 5);--success:oklch(50% .13 150);--warning:oklch(55% .12 75);--border:oklch(93% .003 248);--input:oklch(90% 0 0);--ring:#d97757;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lift:0 1px 3px 0 #0000001a, 0 12px 28px -6px #00000024;--sans:Outfit, ui-sans-serif, system-ui, sans-serif;--serif:Lora, Georgia, serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--radius:1.4rem;--radius-sm:calc(var(--radius) - .5rem);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root.dark{--background:oklch(0% 0 0);--foreground:oklch(95.51% 0 0);--card:oklch(14.48% 0 0);--popover:oklch(22.1% .0015 197.045);--primary-foreground:oklch(12% .02 40);--secondary:oklch(47% .09 40);--muted:oklch(26.53% .0037 286.147);--muted-foreground:oklch(67.31% 0 0);--accent:oklch(30% .06 40);--accent-foreground:oklch(78% .12 42);--destructive:oklch(74.25% .1696 1.0847);--destructive-text:oklch(74.25% .1696 1.0847);--success:oklch(80% .15 152);--warning:oklch(82% .12 80);--border:oklch(27% .002 286);--input:oklch(35.23% 0 0);--shadow-lift:0 1px 3px 0 #0006, 0 12px 28px -6px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{background:var(--background);color:var(--foreground);font-family:var(--sans);-webkit-text-size-adjust:100%;font-size:16px;line-height:1.5}body{flex-direction:column;min-height:100vh;margin:0;display:flex}#root{display:contents}a{color:var(--accent-foreground)}h1,h2,h3{letter-spacing:-.02em;font-family:var(--sans);text-wrap:balance;margin:0;font-weight:600;line-height:1.15}p{margin:0}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}main{flex:1;width:100%;max-width:1160px;margin:0 auto;padding:0 20px 64px}.fine{color:var(--muted-foreground);margin-top:12px;font-size:.85rem}.top{justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:1160px;margin:0 auto;padding:16px 20px;display:flex}.brand{color:var(--foreground);letter-spacing:-.01em;align-items:center;gap:8px;font-weight:650;text-decoration:none;display:inline-flex}.brand-tld{color:var(--muted-foreground);margin-left:-8px}.brand-mark{grid-template-columns:repeat(3,8px);gap:2px;display:inline-grid}.brand-mark i{background:var(--primary);border-radius:3px;height:18px}.brand-mark i:nth-child(2){background:var(--primary);opacity:.65}.brand-mark i:nth-child(3){background:var(--primary);opacity:.35}.top nav{align-items:center;gap:4px;display:flex}.top nav>a:not(.icon-button){color:var(--muted-foreground);border-radius:var(--radius-sm);white-space:nowrap;padding:6px 10px;font-size:.95rem;text-decoration:none}.top nav>a.active{color:var(--foreground);background:var(--muted)}.foot{border-top:1px solid var(--border);text-align:center;color:var(--muted-foreground);padding:20px;font-size:.85rem}.button,.icon-button,.tag,.tab,.chip{font:inherit;cursor:pointer;border:1px solid var(--input);background:var(--background);color:var(--foreground)}.button{border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:8px;padding:9px 14px;font-size:.95rem;font-weight:550;text-decoration:none;display:inline-flex}.button:hover,.icon-button:hover,.tag:hover,.chip:hover{background:var(--muted)}.button.is-primary{background:var(--primary);color:var(--primary-foreground);border-color:#0000}.button.is-primary:hover{background:var(--primary-hover)}.button:disabled,.button.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.icon-button{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--muted-foreground);background:0 0;border-color:#0000;flex:none;place-items:center;display:inline-grid}.hero{max-width:720px;padding:48px 0 36px}.hero h1{letter-spacing:-.02em;font-size:clamp(2.1rem,5.5vw,3.4rem)}.hero p{color:var(--muted-foreground);max-width:58ch;margin-top:16px;font-size:1.1rem}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.search{border-radius:var(--radius-sm);border:1px solid var(--input);background:var(--background);color:var(--muted-foreground);flex:220px;align-items:center;gap:8px;max-width:320px;padding:0 12px;display:flex}.search:focus-within{outline:2px solid var(--primary);outline-offset:1px}.search input{min-width:0;color:var(--foreground);font:inherit;background:0 0;border:0;outline:0;flex:1;padding:9px 0}.search input::placeholder,.field input::placeholder{color:var(--muted-foreground)}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{color:var(--muted-foreground);background:0 0;border-radius:999px;padding:4px 11px;font-size:.85rem}.tag.is-on{background:var(--accent);color:var(--accent-foreground);border-color:#0000}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.card{box-shadow:var(--shadow-sm);color:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--card);text-decoration:none;transition:transform .15s,box-shadow .15s;display:block;position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-lift);transform:translateY(-2px)}.card .mock{border:0;border-bottom:1px solid var(--border);border-radius:0}.card-meta{justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.card-name{font-weight:600}.card-author{color:var(--muted-foreground);font-size:.85rem}.swatches{display:flex}.swatches span{border:2px solid var(--card);border-radius:50%;width:16px;height:16px;margin-left:-4px}.badges{gap:4px;display:flex;position:absolute;top:10px;right:10px}.badge{background:var(--foreground);color:var(--background);border-radius:999px;padding:2px 8px;font-size:.72rem}.badge.is-inline{vertical-align:2px;margin-left:8px}.empty{text-align:center;color:var(--muted-foreground);justify-items:center;gap:16px;padding:48px 0;display:grid}.how{border-top:1px solid var(--border);margin-top:64px;padding-top:40px}.how h2{font-size:1.7rem}.steps{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;margin-top:24px;display:grid}.steps h3{margin-bottom:6px;font-size:1.1rem}.steps p{color:var(--muted-foreground)}.back{color:var(--muted-foreground);align-items:center;gap:6px;margin:12px 0 20px;font-size:.9rem;text-decoration:none;display:inline-flex}.theme-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.theme-head h1{letter-spacing:-.02em;font-size:clamp(2rem,5vw,3rem)}.theme-by{color:var(--muted-foreground);margin-top:6px}.theme-desc{color:var(--muted-foreground);max-width:60ch;margin-top:8px}.theme-actions,.share-actions{flex-wrap:wrap;gap:8px;display:flex}.theme-preview .mock{box-shadow:var(--shadow-lift)}.theme-cols{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:36px;margin-top:40px;display:grid}.theme-cols h2,.share h2{margin-bottom:12px;font-size:1.3rem}.theme-cols p{color:var(--muted-foreground);margin:12px 0 8px}.theme-cols h2+p{margin-top:0}.command{border-radius:var(--radius-sm);background:var(--background);border:1px solid var(--border);align-items:center;gap:8px;padding:6px 6px 6px 14px;display:flex}.command code{white-space:nowrap;min-width:0;font-family:var(--mono);flex:1;padding:4px 0;font-size:.85rem;overflow-x:auto}.palette{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.chip{border-radius:var(--radius-sm);text-align:left;grid-template-columns:22px 1fr;align-items:center;column-gap:10px;padding:8px 10px;font-size:.85rem;display:grid}.chip>span:first-child,.chip>svg{border:1px solid var(--input);border-radius:6px;grid-row:span 2;width:22px;height:22px}.chip>svg{border:0;padding:3px}.chip code{font-family:var(--mono);color:var(--muted-foreground);font-size:.78rem}.create{grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start;gap:40px;padding-top:24px;display:grid}.create h1{letter-spacing:-.02em;font-size:2.2rem}.lede{color:var(--muted-foreground);margin:10px 0 20px}.create-side{gap:20px;display:grid;position:sticky;top:16px}fieldset{box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--card);min-width:0;margin:0 0 16px;padding:14px 16px 16px}legend{padding:0 6px;font-size:.9rem;font-weight:600}.field{color:var(--muted-foreground);gap:4px;margin-bottom:10px;font-size:.85rem;display:grid}.field input,.hex{font:inherit;color:var(--foreground);background:var(--background);border:1px solid var(--input);border-radius:var(--radius-sm);min-width:0;padding:8px 10px;font-size:.95rem}.field-color{grid-template-columns:34px 1fr 92px 34px;align-items:center;gap:10px;padding:4px 0;display:grid}.field-color input[type=color]{border:1px solid var(--input);border-radius:var(--radius-sm);cursor:pointer;background:0 0;width:34px;height:34px;padding:0;overflow:hidden}.field-color input[type=color]::-webkit-color-swatch-wrapper{padding:0}.field-color input[type=color]::-webkit-color-swatch{border:0}.field-label{font-size:.92rem}.hex{font-family:var(--mono);padding:6px 8px;font-size:.82rem}.auto{color:var(--muted-foreground);text-align:center;font-size:.72rem}.mode-tabs{align-items:center;gap:6px;margin-bottom:10px;display:flex}.tab{border-radius:var(--radius-sm);text-transform:capitalize;color:var(--muted-foreground);background:0 0;padding:5px 14px;font-size:.88rem}.tab.is-on{background:var(--foreground);color:var(--background);border-color:#0000}.tab:disabled{opacity:.4;cursor:not-allowed}.mode-checks{color:var(--muted-foreground);gap:12px;margin-left:auto;font-size:.82rem;display:flex}.mode-checks input{accent-color:var(--primary)}.checks{gap:8px;display:grid}.check{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--border);color:var(--muted-foreground);padding:10px 12px;font-size:.9rem}.check svg{vertical-align:-2px;margin-right:4px}.check.is-bad{color:var(--destructive-text);border-color:color-mix(in srgb, var(--destructive-text) 40%, transparent)}.check.is-good{color:var(--success);border-color:color-mix(in srgb, var(--success) 40%, transparent)}.check summary{cursor:pointer}.check ul{color:var(--muted-foreground);max-height:180px;margin:8px 0 0;padding-left:18px;font-size:.82rem;overflow:auto}.share .check{margin-bottom:10px}.mock{aspect-ratio:16/10;background:var(--s0);color:var(--tp);border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);font-family:var(--sans);-webkit-user-select:none;user-select:none;grid-template-columns:27% 1fr;line-height:1.4;display:grid;overflow:hidden;container-type:inline-size}.mock>*{font-size:clamp(6px,2.05cqw,15px)}.mock svg{vertical-align:-.12em}.mock-side{border-right:1px solid color-mix(in srgb, var(--ink) 10%, transparent);flex-direction:column;gap:.25em;min-width:0;padding:1.2em .8em;display:flex}.mock-new{color:var(--accent);margin-bottom:.5em;padding:.4em .6em;font-weight:600}.mock-item{color:var(--ts);white-space:nowrap;text-overflow:ellipsis;border-radius:.5em;padding:.4em .6em;overflow:hidden}.mock-item.is-active{background:color-mix(in srgb, var(--ink) 10%, transparent);color:var(--tp)}.mock-item-muted,.mock-muted{color:var(--tm)}.mock-item-muted{margin-top:.6em;font-size:.85em}.mock-main{background:var(--s1);flex-direction:column;gap:.8em;min-width:0;padding:1.4em 1.6em 1.2em;display:flex}.mock-user{background:var(--s2);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:1em;align-self:flex-end;max-width:80%;padding:.55em .9em}.mock-inline{font-family:var(--mono);color:var(--danger);background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:.3em;padding:.05em .35em;font-size:.9em}.mock-tool{color:var(--ts);align-items:center;gap:.5em;font-size:.9em;display:flex}.mock-added{color:var(--added);margin-left:auto}.mock-removed{color:var(--removed)}.mock-code{font-family:var(--mono);background:var(--s0);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);white-space:pre;border-radius:.7em;margin:0;padding:.8em 1em;font-size:.85em;line-height:1.55;overflow:hidden}.mock-code .k{color:var(--accent)}.mock-code .s{color:var(--success)}.mock-code .l{color:var(--pro)}.mock-code .n{color:var(--danger)}.mock-code .v{color:var(--warning)}.mock-status{gap:1.2em;font-size:.88em;display:flex}.mock-ok{color:var(--success)}.mock-warn{color:var(--warning)}.mock-link{color:var(--accent);margin-left:auto}.mock-prompt{background:var(--s2);border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);color:var(--tm);border-radius:1em;justify-content:space-between;align-items:center;margin-top:auto;padding:.55em .6em .55em 1em;display:flex}.mock-send{background:var(--accent-fill);width:2em;height:2em;color:var(--on-accent);border-radius:.6em;place-items:center;display:grid}@media (width<=860px){.create{grid-template-columns:1fr}.create-side{order:-1;position:static}}@media (width<=520px){.brand-tld,.top nav>a:not(.icon-button):first-child{display:none}.hero{padding-top:28px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.upload{max-width:980px;margin:0 auto;padding-top:24px}.upload h1{font-size:clamp(2rem,5vw,2.8rem)}.upload-steps{counter-reset:step;gap:20px;margin:28px 0;padding:0;list-style:none;display:grid}.upload-steps>li{counter-increment:step;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-sm);justify-items:start;gap:12px;padding:22px 24px;display:grid}.upload-steps>li>*{max-width:100%}.upload-steps h2{font-size:1.2rem}.upload-steps h2:before{content:counter(step);background:var(--primary);width:1.7em;height:1.7em;color:var(--primary-foreground);border-radius:50%;place-items:center;margin-right:.6em;font-size:.8em;display:inline-grid}.upload-steps p{color:var(--muted-foreground)}.drop{border:2px dashed var(--input);border-radius:var(--radius-sm);text-align:center;justify-self:stretch;justify-items:center;gap:10px;padding:28px 20px 20px;display:grid}.drop.is-over{border-color:var(--primary);background:var(--accent)}.drop>svg{width:30px;height:30px;color:var(--primary)}.drop textarea{resize:none;width:100%;max-width:460px;font:inherit;color:var(--foreground);background:var(--background);border:1px solid var(--input);border-radius:var(--radius-sm);padding:10px 12px;font-size:.9rem}.link{font:inherit;color:var(--accent-foreground);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.upload-review{grid-template-columns:minmax(0,340px) minmax(0,1fr);justify-self:stretch;align-items:start;gap:28px;display:grid}.upload-fields{gap:10px;display:grid}.upload-fields .field{margin:0}.advanced{color:var(--muted-foreground);margin-top:14px;font-size:.9rem}.advanced summary{cursor:pointer;margin-bottom:8px}.mock{position:relative}.mock-scene{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.mock.has-scene>:not(.mock-scene){position:relative}.mock.has-scene .mock-side{background:color-mix(in srgb, var(--s0) 55%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.mock.has-scene .mock-main{background:0 0}.mock.has-scene .mock-user,.mock.has-scene .mock-prompt,.mock.has-scene .mock-code{background:color-mix(in srgb, var(--s1) 70%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media (width<=760px){.upload-review{grid-template-columns:1fr}}.nudge{z-index:20;border:1px solid var(--border);border-radius:var(--radius);background:var(--popover);width:min(320px,100vw - 32px);color:var(--foreground);box-shadow:var(--shadow-lift);justify-items:start;gap:8px;padding:18px 20px 20px;animation:.35s cubic-bezier(.2,.9,.3,1.2) nudge-in;display:grid;position:fixed;bottom:20px;right:20px}.nudge-title{padding-right:28px;font-size:1.05rem;font-weight:650}.nudge-text{color:var(--muted-foreground);margin-bottom:4px;font-size:.92rem}.nudge-close{position:absolute;top:10px;right:10px}@keyframes nudge-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}@media (width<=520px){.nudge{bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.nudge{animation:none}}
