:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--button-accent:#80bd7a;--button-accent-strong:#6aa865;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--surface:#fff;--canvas-page-bg:#fff;--nav-hover:#f0eff1;--mobile-tool-active-bg:#1d1d1d;--mobile-tool-active-text:#fff;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:"DM Sans", system-ui, "Segoe UI", Roboto, sans-serif;--heading:"Instrument Serif", Georgia, serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--button-accent:#b77d43;--button-accent-strong:#9a6335;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--surface:#23242b;--canvas-page-bg:#16171d;--nav-hover:#30313a;--mobile-tool-active-bg:#f3f4f6;--mobile-tool-active-text:#18191f;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#6b6375;--button-accent:#80bd7a;--button-accent-strong:#6aa865;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--social-bg:#f4f3ec80;--surface:#fff;--canvas-page-bg:#fff;--nav-hover:#f0eff1;--mobile-tool-active-bg:#1d1d1d;--mobile-tool-active-text:#fff}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text:#d1d3da;--button-accent:#b77d43;--button-accent-strong:#9a6335;--text-h:#f7f7f3;--bg:#18191f;--border:#32333a;--code-bg:#23242b;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--surface:#23242b;--canvas-page-bg:#18191f;--nav-hover:#30313a;--mobile-tool-active-bg:#f7f7f3;--mobile-tool-active-text:#18191f;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}h1,h2,h3,h4,h5,h6{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{color:var(--text);margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}@font-face{font-family:PixelScript;src:url(/assets/PixelScript-BUD7psMB.ttf)format("truetype");font-weight:400;font-style:normal}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;font-family:var(--sans);color:var(--text);background:var(--bg);margin:0}:root.theme-transition,:root.theme-transition body,:root.theme-transition .navbar,:root.theme-transition .home-page,:root.theme-transition .canvas-page,:root.theme-transition .rubik-page,:root.theme-transition .rubik-scene,:root.theme-transition .base-button,:root.theme-transition .palette,:root.theme-transition .mobile-toolbar,:root.theme-transition .mobile-drawer,:root.theme-transition .hex-field,:root.theme-transition .theme-toggle,:root.theme-transition .nav-link,:root.theme-transition .drawer-link,:root.theme-transition .drawer-header button,:root.theme-transition .mobile-toolbar button,:root.theme-transition h1,:root.theme-transition h2,:root.theme-transition h3,:root.theme-transition h4,:root.theme-transition h5,:root.theme-transition h6,:root.theme-transition p,:root.theme-transition .logo{transition:background-color .35s,color .35s,border-color .35s,box-shadow .35s}:root.theme-transition h1,:root.theme-transition h2,:root.theme-transition h3,:root.theme-transition h4,:root.theme-transition h5,:root.theme-transition h6,:root.theme-transition p{transition:color .35s}:root.theme-transition .nav-link{transition:background-color .35s,color .35s}@media (prefers-reduced-motion:reduce){:root.theme-transition,:root.theme-transition body,:root.theme-transition .navbar,:root.theme-transition .home-page,:root.theme-transition .canvas-page,:root.theme-transition .rubik-page,:root.theme-transition .rubik-scene,:root.theme-transition .base-button,:root.theme-transition .palette,:root.theme-transition .mobile-toolbar,:root.theme-transition .mobile-drawer,:root.theme-transition .hex-field,:root.theme-transition .theme-toggle,:root.theme-transition .nav-link,:root.theme-transition .drawer-link,:root.theme-transition .drawer-header button,:root.theme-transition .mobile-toolbar button,:root.theme-transition h1,:root.theme-transition h2,:root.theme-transition h3,:root.theme-transition h4,:root.theme-transition h5,:root.theme-transition h6,:root.theme-transition p,:root.theme-transition .logo{transition:none}}.navbar{background:var(--bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 40px;display:flex}.menu-toggle{display:none}.nav-link,.logo{color:var(--text-h);font-weight:600;text-decoration:none}.logo{font-family:var(--heading);font-size:27px;font-weight:400}.nav-right,.nav-desktop-links{align-items:center;gap:20px;display:flex}.theme-toggle{width:32px;height:32px;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.theme-toggle:hover{background:var(--nav-hover)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-icon{place-items:center;display:grid}.theme-icon .material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;grid-area:1/1;font-size:22px;transition:opacity .35s,transform .45s cubic-bezier(.34,1.56,.64,1)}.theme-sun{opacity:0;transform:rotate(-90deg)scale(.5)}.theme-moon,.theme-toggle.is-dark .theme-sun{opacity:1;transform:rotate(0)scale(1)}.theme-toggle.is-dark .theme-moon{opacity:0;transform:rotate(90deg)scale(.5)}.nav-link:hover{background:var(--nav-hover)}.nav-link{font-family:var(--heading);letter-spacing:0;text-transform:lowercase;border-radius:14px;padding:5px 8px;font-size:21px;font-weight:400;transition:background-color .2s,color .2s}.router-link-active{font-weight:400}.drawer-backdrop{z-index:20;background:#00000061;position:fixed;inset:0}.mobile-drawer{background:var(--surface);flex-direction:column;width:min(82vw,320px);height:100%;padding:20px 16px;display:flex;box-shadow:8px 0 28px #00000038}.drawer-header{color:var(--text-h);font:500 24px var(--heading);justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.drawer-header button{width:36px;height:36px;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.drawer-link{color:var(--text-h);font-family:var(--heading);letter-spacing:0;text-transform:lowercase;border-radius:12px;padding:12px 14px;font-size:20px;font-weight:400;text-decoration:none}.drawer-link:hover,.drawer-header button:hover{background:var(--nav-hover)}.drawer-enter-active,.drawer-leave-active{transition:opacity .22s}.drawer-enter-active .mobile-drawer,.drawer-leave-active .mobile-drawer{transition:transform .28s}.drawer-enter-from,.drawer-leave-to{opacity:0}.drawer-enter-from .mobile-drawer,.drawer-leave-to .mobile-drawer{transform:translate(-100%)}@media (width<=600px){.navbar{grid-template-columns:40px minmax(0,1fr) 40px;min-height:64px;padding:10px 16px;display:grid}.menu-toggle{width:40px;height:40px;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.menu-toggle:hover,.menu-toggle:focus-visible{background:var(--nav-hover)}.menu-toggle .material-symbols-outlined{font-size:24px}.nav-left{text-align:center;grid-column:2;min-width:0}.logo{white-space:nowrap;font-size:25px}.nav-right{grid-column:3;justify-content:end}.nav-desktop-links{display:none}}.page{text-align:center;margin-top:40px;font-family:sans-serif}.title{font-family:var(--heading);image-rendering:pixelated;-webkit-font-smoothing:none;margin-bottom:20px;font-size:48px}.fade-enter-active,.fade-leave-active{transition:opacity .4s}.fade-enter-from,.fade-leave-to{opacity:0}.pretext-rain[data-v-fce2ad6c]{isolation:isolate;width:100%;min-height:460px;position:relative;overflow:hidden}.rain-canvas[data-v-fce2ad6c]{z-index:0;pointer-events:none;display:block;position:absolute;inset:0}.rain-umbrella[data-v-fce2ad6c]{z-index:2;text-align:center;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:max-content;margin:0;position:absolute;left:50%;transform:translate(-50%)}.rain-umbrella.is-ready[data-v-fce2ad6c]{top:0;left:0}.rain-umbrella.is-dragging[data-v-fce2ad6c]{cursor:grabbing}.rain-umbrella[data-v-fce2ad6c]:focus-visible{outline:2px solid var(--accent);outline-offset:7px;border-radius:2px}.rain-title[data-v-fce2ad6c]{line-height:1.05;top:4px}.rain-face[data-v-fce2ad6c]{color:var(--text);top:92px}.visually-hidden[data-v-fce2ad6c]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.pretext-rain[data-v-fce2ad6c]{min-height:400px}.rain-face[data-v-fce2ad6c]{top:64px}}.home-page[data-v-b0827e77]{background:var(--canvas-page-bg);min-height:calc(100vh - 73px);padding:48px 24px 64px;display:flex}.home-content[data-v-b0827e77]{text-align:center;width:min(100%,1120px);min-height:460px;margin:0 auto;display:flex}@media (width<=720px){.home-page[data-v-b0827e77]{min-height:calc(100dvh - 64px);padding:24px 16px 32px}.home-content[data-v-b0827e77]{min-height:400px}}.nfc-redirect[data-v-523f8f0f]{text-align:center;place-content:center;gap:.75rem;min-height:100vh;padding:2rem;display:grid}.nfc-redirect p[data-v-523f8f0f]{margin:0}.canvas-page[data-v-fbe49b1e]{background:var(--canvas-page-bg);min-height:calc(100vh - 73px);padding:48px 24px 64px}.canvas-content[data-v-fbe49b1e]{text-align:center;width:min(100%,760px);margin:0 auto}.canvas-heading[data-v-fbe49b1e]{margin-bottom:24px}.canvas-heading h1[data-v-fbe49b1e]{margin:4px 0 8px}.canvas-status[data-v-fbe49b1e]{color:#52775a;min-height:24px;font-size:15px}.canvas-status.is-error[data-v-fbe49b1e]{color:#b64040}.canvas-viewport[data-v-fbe49b1e]{width:100%;overflow:visible}.canvas-zoom-layer[data-v-fbe49b1e]{width:100%}.canvas-frame[data-v-fbe49b1e]{background:#fff;border:3px solid #1d1d1d;width:min(100%,700px);margin:0 auto;box-shadow:6px 6px #1d1d1d}.canvas-grid[data-v-fbe49b1e]{aspect-ratio:1;touch-action:none;grid-template-columns:repeat(50,1fr);width:100%;display:grid}.canvas-grid.show-borders[data-v-fbe49b1e]{background:#d9d9d9;gap:1px}.canvas-grid.is-picking-color .canvas-pixel[data-v-fbe49b1e]{cursor:copy}.canvas-pixel[data-v-fbe49b1e]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M2 2v25l7-7 5 11 4-2-5-11h11z' fill='%23000' stroke='%23fff' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") 2 2,crosshair;border:0;min-width:0;padding:0;display:block}.canvas-pixel[data-v-fbe49b1e]:focus-visible{z-index:1;outline-offset:-2px;outline:2px solid #161616;position:relative}.palette[data-v-fbe49b1e]{margin-top:40px}.palette h2[data-v-fbe49b1e]{margin-bottom:18px}.palette-colors[data-v-fbe49b1e]{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.color-swatch[data-v-fbe49b1e]{cursor:pointer;border:2px solid #00000029;border-radius:8px;width:34px;height:34px;transition:transform .16s,box-shadow .16s}.color-swatch[data-v-fbe49b1e]:hover{transform:scale(1.16);box-shadow:0 3px 8px #0003}.color-swatch.selected[data-v-fbe49b1e]{border-color:#171717;transform:scale(1.32);box-shadow:0 3px 8px #00000040}.color-swatch.selected[data-v-fbe49b1e]:hover{transform:scale(1.32)}.color-swatch[data-v-fbe49b1e]:focus-visible{outline-offset:3px;outline:3px solid #5c36b6}.hex-color-picker[data-v-fbe49b1e]{-webkit-user-select:none;user-select:none;width:min(100%,420px);margin:28px auto 0}.color-plane[data-v-fbe49b1e]{border:1px solid var(--border);cursor:crosshair;touch-action:none;border-radius:10px;height:200px;position:relative;overflow:hidden}.color-plane-white[data-v-fbe49b1e],.color-plane-black[data-v-fbe49b1e]{pointer-events:none;position:absolute;inset:0}.color-plane-white[data-v-fbe49b1e]{background:linear-gradient(90deg,#fff,#0000)}.color-plane-black[data-v-fbe49b1e]{background:linear-gradient(#0000,#000)}.color-picker-handle[data-v-fbe49b1e],.hue-handle[data-v-fbe49b1e]{z-index:1;pointer-events:none;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;box-shadow:0 0 0 1px #0000006b,0 1px 4px #00000047}.color-picker-handle[data-v-fbe49b1e]{transform:translate(-50%,-50%)}.hue-track[data-v-fbe49b1e]{cursor:ew-resize;touch-action:none;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:999px;height:13px;margin:16px 4px 0;position:relative}.hue-handle[data-v-fbe49b1e]{background:#fff;top:50%;transform:translate(-50%,-50%)}.custom-color-tools[data-v-fbe49b1e]{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:30px;display:flex}.hex-input-label[data-v-fbe49b1e]{font-size:15px;font-weight:600}.hex-field[data-v-fbe49b1e]{border:1px solid var(--border);background:var(--surface);border-radius:6px;align-items:center;display:inline-flex;overflow:hidden}.hex-field>span[data-v-fbe49b1e]{color:var(--text);font:15px var(--mono);padding-left:10px}.hex-input[data-v-fbe49b1e]{width:88px;color:var(--text-h);font:15px var(--mono);text-transform:uppercase;background:0 0;border:0;padding:8px 10px 8px 2px}.hex-field[data-v-fbe49b1e]:has(.hex-input.is-invalid){border-color:#b64040}.hex-input.is-invalid[data-v-fbe49b1e]{border-color:#b64040}.hex-field[data-v-fbe49b1e]:focus-within{border-color:var(--text-h)}.hex-input[data-v-fbe49b1e]:focus-visible{outline:none}.eyedropper-button[data-v-fbe49b1e]:focus-visible{outline-offset:2px;outline:3px solid #5c36b6}.eyedropper-button[data-v-fbe49b1e]{color:#fff;cursor:pointer;background:#1d1d1d;border:1px solid #1d1d1d;border-radius:6px;justify-content:center;align-items:center;width:36px;min-height:36px;padding:0;display:inline-flex}.eyedropper-button .material-symbols-outlined[data-v-fbe49b1e]{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;font-size:20px}.eyedropper-button.active[data-v-fbe49b1e]{color:#1d1d1d;background:#f1c40f}.custom-color-preview[data-v-fbe49b1e]:disabled{cursor:not-allowed;opacity:.65}.custom-color-preview[data-v-fbe49b1e]:disabled:hover{box-shadow:none;transform:none}.borders-toggle[data-v-fbe49b1e]{cursor:pointer;align-items:center;gap:8px;margin-top:20px;font-size:15px;display:inline-flex}.borders-toggle input[data-v-fbe49b1e]{accent-color:#5c36b6;width:16px;height:16px}.sr-only[data-v-fbe49b1e]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mobile-toolbar[data-v-fbe49b1e]{display:none}@media (width<=600px){.canvas-page[data-v-fbe49b1e]{min-height:100vh;padding:24px 0 82px}.canvas-content[data-v-fbe49b1e]{width:100%}.canvas-heading[data-v-fbe49b1e]{margin-bottom:18px;padding:0 16px}.canvas-heading h1[data-v-fbe49b1e]{margin-top:0}.canvas-viewport[data-v-fbe49b1e]{aspect-ratio:1;touch-action:none;overflow:hidden}.canvas-zoom-layer[data-v-fbe49b1e]{min-width:100%}.canvas-frame[data-v-fbe49b1e]{width:100%;box-shadow:none;border:0;margin:0}.palette[data-v-fbe49b1e]{z-index:9;border:1px solid var(--border);background:var(--surface);border-radius:14px;margin:0;padding:20px 16px;display:none;position:fixed;bottom:72px;left:12px;right:12px;box-shadow:0 8px 28px #0003}.palette.mobile-open[data-v-fbe49b1e]{display:block}.palette h2[data-v-fbe49b1e]{margin-bottom:16px}.palette-colors[data-v-fbe49b1e]{gap:12px}.color-swatch[data-v-fbe49b1e]{width:30px;height:30px}.hex-color-picker[data-v-fbe49b1e]{margin-top:22px}.color-plane[data-v-fbe49b1e]{height:170px}.custom-color-tools[data-v-fbe49b1e]{margin-top:22px}.desktop-eyedropper[data-v-fbe49b1e]{display:none}.mobile-toolbar[data-v-fbe49b1e]{z-index:10;border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 96%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:repeat(4,1fr);gap:1px;padding:8px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 14px #00000014}.mobile-toolbar button[data-v-fbe49b1e]{min-height:48px;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.mobile-toolbar button.active[data-v-fbe49b1e]{color:var(--mobile-tool-active-text);background:var(--mobile-tool-active-bg)}.mobile-toolbar .material-symbols-outlined[data-v-fbe49b1e]{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;font-size:25px}}.canvas-page[data-v-90b7d693]{--coco-accent:#588b76;--coco-accent-hover:#85aa9b;--coco-cooldown-text:#000;--coco-warning:#18392b;--coco-selected-text:#fff;background:var(--canvas-page-bg);min-height:calc(100vh - 73px);padding:48px 24px 64px}:root[data-theme=dark] .canvas-page{--coco-accent:#ff8e01;--coco-accent-hover:#fe7702;--coco-cooldown-text:#f5f5f5;--coco-warning:#ff5004;--coco-selected-text:#18191f}.canvas-content[data-v-90b7d693]{text-align:center;width:min(100%,760px);margin:0 auto}.canvas-heading[data-v-90b7d693]{margin-bottom:24px}.canvas-heading h1[data-v-90b7d693]{margin:4px 0 22px}.canvas-status[data-v-90b7d693]{color:#52775a;min-height:24px;font-size:15px}.canvas-status.is-error[data-v-90b7d693]{color:#b64040}.canvas-status.is-cooldown-warning[data-v-90b7d693]{color:var(--coco-warning);font-weight:700}.user-cooldown[data-v-90b7d693]{margin:12px 0}.user-selector[data-v-90b7d693]{justify-content:center;gap:8px;display:flex}.user-button[data-v-90b7d693]{border:1px solid var(--border);min-width:78px;color:var(--text-h);background:var(--surface);font:500 15px var(--sans);cursor:pointer;border-radius:999px;padding:7px 14px;transition:color .2s,background-color .2s,border-color .2s,transform .2s}.user-button[data-v-90b7d693]:hover{border-color:var(--coco-accent-hover);transform:translateY(-1px)}.user-button.selected[data-v-90b7d693]{border-color:var(--coco-accent);color:var(--coco-selected-text);background:var(--coco-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--coco-accent) 22%, transparent)}.user-button[data-v-90b7d693]:focus-visible{outline:2px solid var(--coco-accent);outline-offset:3px}.cooldown-status[data-v-90b7d693]{min-height:22px;color:var(--text);margin:9px 0 0;font-size:14px}.cooldown-status.is-waiting[data-v-90b7d693],.cooldown-status.is-ready[data-v-90b7d693]{color:var(--coco-cooldown-text);font-weight:700}.canvas-viewport[data-v-90b7d693]{width:100%;overflow:visible}.canvas-zoom-layer[data-v-90b7d693]{width:100%}.canvas-frame[data-v-90b7d693]{background:#fff;border:3px solid #1d1d1d;width:min(100%,700px);margin:0 auto;box-shadow:6px 6px #1d1d1d}.canvas-grid[data-v-90b7d693]{aspect-ratio:1;touch-action:none;grid-template-columns:repeat(50,1fr);width:100%;display:grid}.canvas-grid.show-borders[data-v-90b7d693]{background:#d9d9d9;gap:1px}.canvas-grid.is-picking-color .canvas-pixel[data-v-90b7d693]{cursor:copy}.canvas-pixel[data-v-90b7d693]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M2 2v25l7-7 5 11 4-2-5-11h11z' fill='%23000' stroke='%23fff' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") 2 2,crosshair;border:0;min-width:0;padding:0;display:block}.canvas-pixel[data-v-90b7d693]:focus-visible{z-index:1;outline-offset:-2px;outline:2px solid #161616;position:relative}.palette[data-v-90b7d693]{margin-top:40px}.palette h2[data-v-90b7d693]{margin-bottom:18px}.palette-colors[data-v-90b7d693]{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.color-swatch[data-v-90b7d693]{cursor:pointer;border:2px solid #00000029;border-radius:8px;width:34px;height:34px;transition:transform .16s,box-shadow .16s}.color-swatch[data-v-90b7d693]:hover{transform:scale(1.16);box-shadow:0 3px 8px #0003}.color-swatch.selected[data-v-90b7d693]{border-color:#171717;transform:scale(1.32);box-shadow:0 3px 8px #00000040}.color-swatch.selected[data-v-90b7d693]:hover{transform:scale(1.32)}.color-swatch[data-v-90b7d693]:focus-visible{outline-offset:3px;outline:3px solid #5c36b6}.hex-color-picker[data-v-90b7d693]{-webkit-user-select:none;user-select:none;width:min(100%,420px);margin:28px auto 0}.color-plane[data-v-90b7d693]{border:1px solid var(--border);cursor:crosshair;touch-action:none;border-radius:10px;height:200px;position:relative;overflow:hidden}.color-plane-white[data-v-90b7d693],.color-plane-black[data-v-90b7d693]{pointer-events:none;position:absolute;inset:0}.color-plane-white[data-v-90b7d693]{background:linear-gradient(90deg,#fff,#0000)}.color-plane-black[data-v-90b7d693]{background:linear-gradient(#0000,#000)}.color-picker-handle[data-v-90b7d693],.hue-handle[data-v-90b7d693]{z-index:1;pointer-events:none;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;box-shadow:0 0 0 1px #0000006b,0 1px 4px #00000047}.color-picker-handle[data-v-90b7d693]{transform:translate(-50%,-50%)}.hue-track[data-v-90b7d693]{cursor:ew-resize;touch-action:none;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:999px;height:13px;margin:16px 4px 0;position:relative}.hue-handle[data-v-90b7d693]{background:#fff;top:50%;transform:translate(-50%,-50%)}.custom-color-tools[data-v-90b7d693]{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:30px;display:flex}.hex-input-label[data-v-90b7d693]{font-size:15px;font-weight:600}.hex-field[data-v-90b7d693]{border:1px solid var(--border);background:var(--surface);border-radius:6px;align-items:center;display:inline-flex;overflow:hidden}.hex-field>span[data-v-90b7d693]{color:var(--text);font:15px var(--mono);padding-left:10px}.hex-input[data-v-90b7d693]{width:88px;color:var(--text-h);font:15px var(--mono);text-transform:uppercase;background:0 0;border:0;padding:8px 10px 8px 2px}.hex-field[data-v-90b7d693]:has(.hex-input.is-invalid){border-color:#b64040}.hex-input.is-invalid[data-v-90b7d693]{border-color:#b64040}.hex-field[data-v-90b7d693]:focus-within{border-color:var(--text-h)}.hex-input[data-v-90b7d693]:focus-visible{outline:none}.eyedropper-button[data-v-90b7d693]:focus-visible{outline-offset:2px;outline:3px solid #5c36b6}.eyedropper-button[data-v-90b7d693]{color:#fff;cursor:pointer;background:#1d1d1d;border:1px solid #1d1d1d;border-radius:6px;justify-content:center;align-items:center;width:36px;min-height:36px;padding:0;display:inline-flex}.eyedropper-button .material-symbols-outlined[data-v-90b7d693]{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;font-size:20px}.eyedropper-button.active[data-v-90b7d693]{color:#1d1d1d;background:#f1c40f}.custom-color-preview[data-v-90b7d693]:disabled{cursor:not-allowed;opacity:.65}.custom-color-preview[data-v-90b7d693]:disabled:hover{box-shadow:none;transform:none}.borders-toggle[data-v-90b7d693]{cursor:pointer;align-items:center;gap:8px;margin-top:20px;font-size:15px;display:inline-flex}.borders-toggle input[data-v-90b7d693]{accent-color:#5c36b6;width:16px;height:16px}.sr-only[data-v-90b7d693]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mobile-toolbar[data-v-90b7d693]{display:none}@media (width<=600px){.canvas-page[data-v-90b7d693]{min-height:100vh;padding:24px 0 82px}.canvas-content[data-v-90b7d693]{width:100%}.canvas-heading[data-v-90b7d693]{margin-bottom:18px;padding:0 16px}.canvas-heading h1[data-v-90b7d693]{margin-top:0}.canvas-viewport[data-v-90b7d693]{aspect-ratio:1;touch-action:none;overflow:hidden}.canvas-zoom-layer[data-v-90b7d693]{min-width:100%}.canvas-frame[data-v-90b7d693]{width:100%;box-shadow:none;border:0;margin:0}.palette[data-v-90b7d693]{z-index:9;border:1px solid var(--border);background:var(--surface);border-radius:14px;margin:0;padding:20px 16px;display:none;position:fixed;bottom:72px;left:12px;right:12px;box-shadow:0 8px 28px #0003}.palette.mobile-open[data-v-90b7d693]{display:block}.palette h2[data-v-90b7d693]{margin-bottom:16px}.palette-colors[data-v-90b7d693]{gap:12px}.color-swatch[data-v-90b7d693]{width:30px;height:30px}.hex-color-picker[data-v-90b7d693]{margin-top:22px}.color-plane[data-v-90b7d693]{height:170px}.custom-color-tools[data-v-90b7d693]{margin-top:22px}.desktop-eyedropper[data-v-90b7d693]{display:none}.mobile-toolbar[data-v-90b7d693]{z-index:10;border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 96%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:repeat(4,1fr);gap:1px;padding:8px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 14px #00000014}.mobile-toolbar button[data-v-90b7d693]{min-height:48px;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.mobile-toolbar button.active[data-v-90b7d693]{color:var(--mobile-tool-active-text);background:var(--mobile-tool-active-bg)}.mobile-toolbar .material-symbols-outlined[data-v-90b7d693]{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;font-size:25px}}.base-button[data-v-3a00787c]{border:1px solid var(--border);min-width:132px;min-height:42px;color:var(--text-h);background:var(--surface);font:600 14px/1 var(--sans);letter-spacing:.01em;cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;transition:transform .18s,background-color .18s,border-color .18s,box-shadow .18s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.base-button[data-v-3a00787c]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 18px #0000001a}.base-button[data-v-3a00787c]:focus-visible{outline-offset:3px;outline:3px solid #8dca8580}.base-button[data-v-3a00787c]:disabled{opacity:.5;cursor:not-allowed}.is-primary[data-v-3a00787c]{border-color:var(--button-accent-strong);color:#fff;background:var(--button-accent)}.is-primary[data-v-3a00787c]:hover:not(:disabled){border-color:var(--button-accent-strong);background:var(--button-accent-strong)}.is-secondary[data-v-3a00787c]:hover:not(:disabled){border-color:color-mix(in srgb, var(--text-h) 28%, var(--border));background:var(--nav-hover)}.is-destructive[data-v-3a00787c]{border-color:color-mix(in srgb, var(--button-accent) 72%, var(--border));background:color-mix(in srgb, var(--button-accent) 38%, var(--surface));box-shadow:inset 0 1px #ffffff24,0 1px 2px #407b3b24}.is-destructive[data-v-3a00787c]:hover:not(:disabled){border-color:color-mix(in srgb, var(--button-accent-strong) 82%, var(--border));background:color-mix(in srgb, var(--button-accent) 52%, var(--surface));box-shadow:inset 0 1px #ffffff2e,0 9px 20px #4c8e4633}.is-ghost[data-v-3a00787c]{box-shadow:none;background:0 0;border-color:#0000}.is-ghost[data-v-3a00787c]:hover:not(:disabled){background:var(--nav-hover);box-shadow:none}.base-button.is-selected[data-v-3a00787c]:not(:disabled){border-color:var(--button-accent);color:#fff;background:var(--button-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--button-accent) 22%, transparent)}.base-button2[data-v-75c96c0a]{--button2-primary:#519268;--button2-primary-hover:#88ab85;--button2-destructive:#18392b;--button2-text:#000;--button2-surface:#f5f7f6;--button2-border:#d0ded8;--button2-selection:#519268;--button2-selected-text:#fff;border:1px solid var(--button2-border);min-width:132px;min-height:42px;color:var(--button2-text);background:var(--button2-surface);font:600 14px/1 var(--sans);letter-spacing:.01em;cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;transition:transform .18s,background-color .18s,border-color .18s,box-shadow .18s,color .18s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.base-button2[data-v-75c96c0a]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 18px #0000001a}.base-button2[data-v-75c96c0a]:focus-visible{outline:3px solid color-mix(in srgb, var(--button2-selection) 55%, transparent);outline-offset:3px}.base-button2[data-v-75c96c0a]:disabled{opacity:.5;cursor:not-allowed}.is-primary[data-v-75c96c0a]{border-color:var(--button2-primary);color:#fff;background:var(--button2-primary)}.is-primary[data-v-75c96c0a]:hover:not(:disabled){border-color:var(--button2-primary-hover);background:var(--button2-primary-hover)}.is-secondary[data-v-75c96c0a]:hover:not(:disabled){border-color:var(--button2-primary-hover);background:#fff}.is-destructive[data-v-75c96c0a]{border-color:var(--button2-destructive);color:#fff;background:var(--button2-destructive)}.is-destructive[data-v-75c96c0a]:hover:not(:disabled){border-color:var(--button2-primary);background:var(--button2-primary)}.is-ghost[data-v-75c96c0a]{box-shadow:none;background:0 0;border-color:#0000}.is-ghost[data-v-75c96c0a]:hover:not(:disabled){background:var(--button2-surface);box-shadow:none}.base-button2.is-selected[data-v-75c96c0a]:not(:disabled){border-color:var(--button2-primary);color:var(--button2-selected-text);background:var(--button2-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--button2-selection) 22%, transparent)}:root[data-theme=dark] .base-button2{--button2-primary:#4c1d95;--button2-primary-hover:#5b21b6;--button2-destructive:#4c1d95;--button2-text:#f5f5f5;--button2-surface:#24252c;--button2-border:#35363e;--button2-selection:#4c1d95;--button2-selected-text:#fff}:root[data-theme=dark] .base-button2.is-secondary:hover:not(:disabled){background:#18191f}@media (prefers-color-scheme:dark){:root:not([data-theme]) .base-button2{--button2-primary:#4c1d95;--button2-primary-hover:#5b21b6;--button2-destructive:#4c1d95;--button2-text:#f5f5f5;--button2-surface:#24252c;--button2-border:#35363e;--button2-selection:#4c1d95;--button2-selected-text:#fff}:root:not([data-theme]) .base-button2.is-secondary:hover:not(:disabled){background:#18191f}}.base-button3[data-v-72a9309c]{--button3-brand:#519268;--button3-brand-hover:#88ab85;--button3-brand-active:#18392b;--button3-text:#000;--button3-surface:#f5f7f6;--button3-border:#d0ded8;--button3-danger:#18392b;--button3-focus:#519268;min-width:132px;font:600 14px/1 var(--sans);cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s;display:inline-flex}.is-small[data-v-72a9309c]{min-height:32px;padding:7px 12px;font-size:12px}.is-medium[data-v-72a9309c]{min-height:42px;padding:10px 16px;font-size:14px}.is-large[data-v-72a9309c]{min-height:52px;padding:13px 20px;font-size:16px}.is-primary[data-v-72a9309c]{color:#fff;background:var(--button3-brand);border-color:var(--button3-brand)}.is-secondary[data-v-72a9309c]{color:var(--button3-brand);border-color:var(--button3-brand);background:0 0}.is-ghost[data-v-72a9309c]{color:var(--button3-brand);background:0 0}.is-destructive[data-v-72a9309c]{color:#fff;background:var(--button3-danger);border-color:var(--button3-danger)}.is-primary[data-v-72a9309c]:is(:hover,.state-hover):not(:disabled){background:var(--button3-brand-hover);border-color:var(--button3-brand-hover)}.is-primary[data-v-72a9309c]:is(:active,.state-active):not(:disabled){background:var(--button3-brand-active);border-color:var(--button3-brand-active);transform:translateY(1px)}.is-secondary[data-v-72a9309c]:is(:hover,.state-hover):not(:disabled){background:color-mix(in srgb, var(--button3-brand) 10%, transparent)}.is-secondary[data-v-72a9309c]:is(:active,.state-active):not(:disabled){background:color-mix(in srgb, var(--button3-brand) 20%, transparent)}.is-ghost[data-v-72a9309c]:is(:hover,.state-hover):not(:disabled){background:color-mix(in srgb, var(--button3-brand) 10%, transparent)}.is-ghost[data-v-72a9309c]:is(:active,.state-active):not(:disabled){background:color-mix(in srgb, var(--button3-brand) 20%, transparent)}.is-destructive[data-v-72a9309c]:is(:hover,.state-hover):not(:disabled){background:color-mix(in srgb, var(--button3-danger) 82%, #fff);border-color:color-mix(in srgb, var(--button3-danger) 82%, #fff)}.is-destructive[data-v-72a9309c]:is(:active,.state-active):not(:disabled){background:color-mix(in srgb, var(--button3-danger) 92%, #000);border-color:color-mix(in srgb, var(--button3-danger) 92%, #000);transform:translateY(1px)}.base-button3[data-v-72a9309c]:is(:focus-visible,.state-focus):not(:disabled){outline:3px solid color-mix(in srgb, var(--button3-focus) 42%, transparent);outline-offset:3px}.base-button3[data-v-72a9309c]:disabled,.base-button3.state-disabled[data-v-72a9309c]{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .base-button3{--button3-brand:#4c1d95;--button3-brand-hover:#5b21b6;--button3-brand-active:#4c1d95;--button3-text:#f5f5f5;--button3-surface:#24252c;--button3-border:#35363e;--button3-danger:#be1916;--button3-focus:#5b21b6}@media (prefers-color-scheme:dark){:root:not([data-theme]) .base-button3{--button3-brand:#4c1d95;--button3-brand-hover:#5b21b6;--button3-brand-active:#4c1d95;--button3-text:#f5f5f5;--button3-surface:#24252c;--button3-border:#35363e;--button3-danger:#be1916;--button3-focus:#5b21b6}}.base-button4[data-v-53518cb3]{--button4-primary:#159447;--button4-primary-hover:#08743c;--button4-primary-active:#075e36;--button4-secondary:#159b5a;--button4-soft:#e7f7ee;--button4-soft-active:#d8f0e2;--button4-danger:#dd2525;--button4-danger-hover:#c91b1b;--button4-danger-active:#b31818;--button4-focus:#159b5a;min-width:132px;font:600 14px/1 var(--sans);cursor:pointer;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s;display:inline-flex}.is-small[data-v-53518cb3]{min-height:32px;padding:7px 12px;font-size:12px}.is-medium[data-v-53518cb3]{min-height:42px;padding:10px 16px;font-size:14px}.is-large[data-v-53518cb3]{min-height:52px;padding:13px 20px;font-size:16px}.is-primary[data-v-53518cb3]{color:#fff;background:var(--button4-primary);border-color:var(--button4-primary)}.is-secondary[data-v-53518cb3]{color:var(--button4-secondary);border-color:var(--button4-secondary);background:#fff}.is-ghost[data-v-53518cb3]{color:var(--button4-secondary);background:0 0}.is-destructive[data-v-53518cb3]{color:#fff;background:var(--button4-danger);border-color:var(--button4-danger)}.is-primary[data-v-53518cb3]:is(:hover,.state-hover):not(:disabled){background:var(--button4-primary-hover);border-color:var(--button4-primary-hover)}.is-primary[data-v-53518cb3]:is(:active,.state-active):not(:disabled){background:var(--button4-primary-active);border-color:var(--button4-primary-active);transform:translateY(1px)}.is-secondary[data-v-53518cb3]:is(:hover,.state-hover):not(:disabled){background:var(--button4-soft)}.is-secondary[data-v-53518cb3]:is(:active,.state-active):not(:disabled){background:var(--button4-soft-active)}.is-ghost[data-v-53518cb3]:is(:hover,.state-hover):not(:disabled){background:var(--button4-soft)}.is-ghost[data-v-53518cb3]:is(:active,.state-active):not(:disabled){background:var(--button4-soft-active)}.is-destructive[data-v-53518cb3]:is(:hover,.state-hover):not(:disabled){background:var(--button4-danger-hover);border-color:var(--button4-danger-hover)}.is-destructive[data-v-53518cb3]:is(:active,.state-active):not(:disabled){background:var(--button4-danger-active);border-color:var(--button4-danger-active);transform:translateY(1px)}.base-button4[data-v-53518cb3]:is(:focus-visible,.state-focus):not(:disabled){outline-offset:-5px;box-shadow:0 0 0 3px color-mix(in srgb, var(--button4-focus) 65%, transparent);outline:2px solid #fff}.is-ghost.state-focus[data-v-53518cb3]:not(:disabled),.is-ghost[data-v-53518cb3]:focus-visible:not(:disabled){outline:1px dashed var(--button4-secondary);outline-offset:3px;box-shadow:none}.base-button4[data-v-53518cb3]:disabled,.base-button4.state-disabled[data-v-53518cb3]{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .base-button4{--button4-primary:#4c1d95;--button4-primary-hover:#5b21b6;--button4-primary-active:#4c1d95;--button4-secondary:#4c1d95;--button4-soft:#2c2341;--button4-soft-active:#322251;--button4-danger:#be1916;--button4-danger-hover:#ca4240;--button4-danger-active:#af1714;--button4-focus:#5b21b6}:root[data-theme=dark] .base-button4.is-secondary{background:#24252c}@media (prefers-color-scheme:dark){:root:not([data-theme]) .base-button4{--button4-primary:#4c1d95;--button4-primary-hover:#5b21b6;--button4-primary-active:#4c1d95;--button4-secondary:#4c1d95;--button4-soft:#2c2341;--button4-soft-active:#322251;--button4-danger:#be1916;--button4-danger-hover:#ca4240;--button4-danger-active:#af1714;--button4-focus:#5b21b6}:root:not([data-theme]) .base-button4.is-secondary{background:#24252c}}.components-preview-page[data-v-f06fbb45]{background:var(--canvas-page-bg);min-height:calc(100vh - 73px);padding:48px 24px 64px}.page-header[data-v-f06fbb45]{margin-bottom:48px}h1[data-v-f06fbb45]{max-width:100%;font-family:var(--heading);overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:clamp(2.75rem,7vw,4.5rem);font-weight:400;line-height:1.05}.page-header p[data-v-f06fbb45]{color:var(--text);font-family:var(--sans);margin:16px 0 0}.preview-section[data-v-f06fbb45]{border:1px solid var(--border);background:var(--surface);border-radius:16px;max-width:760px;padding:28px}.preview-section+.preview-section[data-v-f06fbb45]{margin-top:24px}h2[data-v-f06fbb45]{font-family:var(--heading);margin:0 0 24px;font-size:2rem;font-weight:400}.button-list[data-v-f06fbb45]{flex-wrap:wrap;gap:12px;display:flex}.button-controls[data-v-f06fbb45]{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.button-controls label[data-v-f06fbb45]{color:var(--text);font:600 13px/1 var(--sans);gap:6px;display:grid}.button-controls select[data-v-f06fbb45]{border:1px solid var(--border);min-width:130px;color:var(--text-h);background:var(--bg);font:500 14px var(--sans);border-radius:8px;padding:8px 10px}@media (width<=720px){.components-preview-page[data-v-f06fbb45]{min-height:calc(100dvh - 64px);padding:24px 16px 32px}.page-header[data-v-f06fbb45]{margin-bottom:36px}h1[data-v-f06fbb45]{font-size:clamp(2.5rem,13vw,3.25rem);line-height:1.08}.preview-section[data-v-f06fbb45]{padding:20px}}.palettes-preview-page[data-v-56246f9e]{background:var(--canvas-page-bg);min-height:calc(100vh - 73px);padding:48px 24px 64px}.preview-section[data-v-56246f9e]{max-width:760px}.page-header[data-v-56246f9e]{margin-bottom:48px}h1[data-v-56246f9e],h2[data-v-56246f9e],h3[data-v-56246f9e]{font-family:var(--heading);font-weight:400}h1[data-v-56246f9e]{overflow-wrap:anywhere;text-wrap:balance;max-width:100%;margin:0;font-size:clamp(2.75rem,7vw,4.5rem);line-height:1.05}.page-header p[data-v-56246f9e]{color:var(--text);font-family:var(--sans);margin:16px 0 0}.preview-section>p[data-v-56246f9e]{color:var(--text);margin:16px 0 0}.preview-section[data-v-56246f9e]{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:28px}.preview-section+.preview-section[data-v-56246f9e]{margin-top:24px}h2[data-v-56246f9e]{margin:0;font-size:2rem}.pair-list[data-v-56246f9e]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.palette-pair[data-v-56246f9e]{border:1px solid var(--border);border-radius:12px;overflow:hidden}.palette-pair h3[data-v-56246f9e]{color:var(--text-h);margin:0;padding:12px 14px;font-size:1.15rem}.swatches[data-v-56246f9e]{grid-template-columns:1fr 1fr;display:grid}.swatch[data-v-56246f9e]{min-height:86px;font:600 .75rem/1 var(--sans);flex-direction:column;justify-content:space-between;padding:12px;display:flex}.swatch code[data-v-56246f9e]{color:inherit;background:0 0;padding:0;font-size:.75rem}.swatch.is-primary[data-v-56246f9e]{color:var(--pair-primary-text);background:var(--pair-primary)}.swatch.is-secondary[data-v-56246f9e]{color:var(--pair-secondary-text);background:var(--pair-secondary)}@media (width<=720px){.palettes-preview-page[data-v-56246f9e]{min-height:calc(100dvh - 64px);padding:24px 16px 32px}.page-header[data-v-56246f9e]{margin-bottom:36px}h1[data-v-56246f9e]{font-size:clamp(2.5rem,13vw,3.25rem);line-height:1.08}.preview-section[data-v-56246f9e]{padding:20px}.pair-list[data-v-56246f9e]{grid-template-columns:1fr}}.error-page[data-v-74dd7be8]{background:var(--canvas-page-bg);text-align:center;place-items:center;min-height:calc(100vh - 73px);padding:48px 24px 64px;display:grid}.error-page h1[data-v-74dd7be8]{margin:0;font-size:clamp(84px,14vw,180px);line-height:.9}@media (width<=720px){.error-page[data-v-74dd7be8]{min-height:calc(100dvh - 64px);padding:24px 16px 32px}}.not-found-page[data-v-0e4277fd]{background:var(--canvas-page-bg);text-align:center;place-items:center;min-height:calc(100vh - 73px);padding:48px 24px 64px;display:grid}.not-found-content[data-v-0e4277fd]{justify-items:center;gap:12px;display:grid}.not-found-content h1[data-v-0e4277fd]{margin:0}.not-found-page p[data-v-0e4277fd]{max-width:32rem;font-size:18px;line-height:1.4}@media (width<=720px){.not-found-page[data-v-0e4277fd]{min-height:calc(100dvh - 64px);padding:24px 16px 32px}.not-found-page p[data-v-0e4277fd]{font-size:16px}}
