@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}@font-face{font-family:Spectral;font-style:italic;font-weight:200;font-display:swap;src:url(/_next/static/media/44a3a81720231bdd-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:italic;font-weight:200;font-display:swap;src:url(/_next/static/media/176dcb044624c80b-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:italic;font-weight:200;font-display:swap;src:url(/_next/static/media/cfbfdf6d6828565f-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:italic;font-weight:200;font-display:swap;src:url(/_next/static/media/cdf899d82ee048ad-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:italic;font-weight:200;font-display:swap;src:url(/_next/static/media/1bbb407b579f4f29-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/1392a8708768005c-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/6a64cc3acf910f14-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/b42be14db559d7fe-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/84d7006d28fb721d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/a8803dd9fdd15a53-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Spectral Fallback;src:local("Times New Roman");ascent-override:96.46%;descent-override:42.17%;line-gap-override:0.00%;size-adjust:109.78%}.__className_b53f42{font-family:Spectral,Spectral Fallback;font-style:italic}.__variable_b53f42{--font-spectral:"Spectral","Spectral Fallback"}:root{--background:#ffffff;--foreground:#171717;--muted:#6b6b6b;--border:#e2e2e2;--surface:#f6f6f6}:root[data-theme=dark]{--background:#0a0a0a;--foreground:#ededed;--muted:#a1a1a1;--border:#2a2a2a;--surface:#161616}html{height:100%;touch-action:manipulation}body,html{max-width:100vw;overflow-x:hidden}body{min-height:100%;display:flex;flex-direction:column;color:var(--foreground);background:var(--background);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}.nav{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--background);font-family:Arial,Helvetica,sans-serif}.logo{font-weight:700;font-size:1.1rem;letter-spacing:-.02em}.nav-right{display:flex;align-items:center;gap:1.75rem}.nav-link{font-size:.95rem;font-weight:500}.nav-link:hover{color:var(--muted)}.nav-link-active{font-weight:700}.nav-actions{gap:.75rem}.nav-actions,.theme-toggle{display:flex;align-items:center}.theme-toggle{width:36px;height:36px;border-radius:50%;background:var(--surface);border:1px solid var(--border);justify-content:center;color:var(--foreground)}.avatar-menu{position:relative}.avatar-menu>summary{list-style:none;cursor:pointer;width:36px;height:36px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:600}.avatar-menu>summary::-webkit-details-marker{display:none}.avatar-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:140px;background:var(--background);border:1px solid var(--border);border-radius:8px;padding:.4rem;display:flex;flex-direction:column;gap:.2rem;z-index:10}.avatar-dropdown a,.avatar-dropdown button{display:block;width:100%;text-align:left;padding:.5rem .6rem;border-radius:4px}.avatar-dropdown a:hover,.avatar-dropdown button:hover{background:var(--surface)}.avatar-dropdown-name{padding:.5rem .6rem .3rem;font-weight:600;border-bottom:1px solid var(--border);margin-bottom:.2rem}.login-page{--background:#ffffff;--foreground:#171717;--muted:#6b6b6b;--border:#e2e2e2;--surface:#f6f6f6;--home-sans:"General Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--home-serif:var(--font-spectral),Georgia,"Times New Roman",serif;position:relative;flex:1 1;justify-content:center;min-height:100dvh;padding:24px;background:var(--background);color:var(--foreground);font-family:var(--home-sans)}.login-inner,.login-page{display:flex;align-items:center}.login-inner{gap:clamp(60px,6vw,80px)}.login-wheel{position:relative;flex:0 0 clamp(280px,32vw,440px);width:clamp(280px,32vw,440px);height:clamp(280px,32vw,440px)}.login-inner .auth-page{flex:none;padding:0}.auth-page{flex:1 1;display:flex;align-items:center;justify-content:center;padding:1.5rem}.auth-card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:.75rem}.auth-title{font-size:1.5rem;font-weight:600;text-align:center}.auth-subtitle{color:var(--muted);text-align:center;margin-bottom:.5rem}.auth-error{color:#d64545;text-align:center;font-size:.9rem}.auth-notice{text-align:center;color:var(--muted);line-height:1.5}.auth-notice-secondary{margin-top:.75rem;font-size:.85rem}.auth-back-link{display:block;margin-top:1.5rem;text-align:center;color:var(--muted);font-size:.9rem;text-decoration:underline;text-underline-offset:3px}.auth-back-link:hover{color:var(--foreground)}.auth-provider-button{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;min-height:44px;border:1px solid var(--border);border-radius:999px;background:var(--background);font-weight:500}.auth-provider-button:hover{background:var(--surface)}.auth-divider{display:flex;align-items:center;gap:.75rem;color:var(--muted);font-size:.85rem}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.auth-email-form{display:flex;flex-direction:column;gap:.6rem}.auth-input{width:100%;min-height:44px;padding:0 .8rem;border:1px solid var(--border);border-radius:8px;background:var(--background);color:var(--foreground);font-size:1rem}.auth-email-button{width:100%;min-height:44px;border-radius:999px;background:var(--foreground);color:var(--background);font-weight:600}.auth-hint{font-size:.8rem}.auth-hint,.auth-legal-notice{text-align:center;color:var(--muted)}.auth-legal-notice{margin-top:.75rem;font-size:.75rem;line-height:1.4}.auth-legal-notice a{text-decoration:underline;text-underline-offset:2px}.auth-legal-notice a:hover{color:var(--foreground)}@media (max-width:860px){.login-inner{flex-direction:column;gap:32px}.login-wheel{flex:none;width:260px;height:260px}.login-inner .auth-page{padding:0 1.5rem}}.site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:auto;padding:1.5rem clamp(20px,2.5vw,36px);background:var(--background);color:var(--foreground);border-top:1px solid var(--border);font-size:.85rem}.site-footer-copy{color:var(--muted)}.site-footer-links{display:flex;align-items:baseline;gap:1.25rem}.site-footer-links a:hover{color:var(--muted)}.onboarding-form{display:flex;flex-direction:column;gap:1rem}.onboarding-label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.5rem}.onboarding-hint{margin-top:.4rem;color:var(--muted);font-size:.8rem}.onboarding-role{border:none;display:flex;flex-direction:column;gap:.6rem}.onboarding-role-option{display:flex;align-items:center;gap:.6rem;padding:.6rem .7rem;border:1px solid var(--border);border-radius:8px;font-size:.9rem}.visitor-home{--home-bg:#ffffff;--home-ink:#000;--home-sans:"General Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--home-serif:var(--font-spectral),Georgia,"Times New Roman",serif;position:relative;flex:1 1;display:flex;flex-direction:column;background:var(--home-bg);color:var(--home-ink);font-family:var(--home-sans);touch-action:none}.hero-nail-canvas{position:fixed;inset:0;z-index:5;pointer-events:none}.demo-section{position:relative;background:#fff}.demo-section-filler{height:100vh;display:flex;align-items:center;justify-content:center;color:#999}.nail-wheel-canvas{position:absolute;inset:0}.home-second-section{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;min-height:100vh;background:var(--home-bg)}.home-second-section-heading{max-width:700px;padding:96px 24px 0;text-align:center}.home-second-section-heading h2{font-family:var(--home-serif);font-style:italic;font-weight:200;font-size:clamp(1.5rem,2.36vw,34px);line-height:1.15;text-wrap:balance}.home-second-section-heading h2 strong{font-weight:600}.home-second-section-heading p{margin-top:12px;font-size:16px;font-weight:500;line-height:1.3}.home-second-section-row{position:relative;width:100%;flex:1 1}.home-second-section-wheel{position:absolute;left:0;top:0;bottom:0;width:62%}.home-second-section-image{position:absolute;top:50%;right:8%;transform:translateY(-50%)}.suaje-hover-image{position:relative;overflow:hidden;width:100%;height:100%;border-radius:inherit}.about-page{--home-bg:#ffffff;--home-ink:#000;--home-sans:"General Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--home-serif:var(--font-spectral),Georgia,"Times New Roman",serif;--about-hairline:rgba(0,0,0,0.12);--about-muted:rgba(0,0,0,0.5);position:relative;flex:1 1;display:flex;flex-direction:column;background:var(--home-bg);color:var(--home-ink);font-family:var(--home-sans)}.about-page--themed{--home-bg:var(--background);--home-ink:var(--foreground);--about-hairline:var(--border);--about-muted:var(--muted)}.about-main{flex:1 1;display:flex;align-items:center;gap:clamp(32px,6vw,96px);max-width:1100px;margin:0 auto;padding:120px 24px 64px}.about-page--themed .about-main{padding-top:64px}.about-wheel{position:relative;flex:0 0 clamp(220px,30vw,400px);width:clamp(220px,30vw,400px);height:clamp(220px,30vw,400px)}.about-content{flex:1 1;min-width:0;max-width:560px}.about-title{margin-bottom:24px;font-family:var(--home-serif);font-style:italic;font-weight:200;font-size:clamp(2rem,3.5vw,48px)}.about-content p{font-size:16px;font-weight:500;line-height:1.5}.about-content p+p{margin-top:16px}.about-contact{margin-top:40px;padding-top:24px;border-top:1px solid var(--about-hairline)}.about-contact-links{display:flex;gap:16px;margin-top:16px}.about-icon-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--home-ink);color:var(--home-bg);border-radius:999px;transition:opacity .15s ease}.about-icon-link:hover{opacity:.7}.about-support{margin-top:24px;font-size:15px}.about-support a{font-weight:600;text-decoration:underline;text-underline-offset:2px}@media (max-width:720px){.about-main{flex-direction:column;padding-top:96px}.about-wheel{width:220px;height:220px}}.legal-main{max-width:720px;margin:0 auto;padding:96px 24px;line-height:1.6}.legal-title{font-family:var(--home-serif);font-style:italic;font-weight:200;font-size:clamp(1.8rem,3vw,40px)}.legal-updated{margin-top:8px;margin-bottom:40px;color:var(--about-muted);font-size:14px}.legal-main h2{margin-top:40px;margin-bottom:12px;font-size:1.2rem;font-weight:600}.legal-main p,.legal-main ul{font-size:15px}.legal-main p+p,.legal-main p+ul,.legal-main ul+p{margin-top:12px}.legal-main ul{padding-left:1.25rem;list-style:disc}.legal-main li+li{margin-top:8px}.legal-main a{text-decoration:underline;text-underline-offset:2px}@media (max-width:720px){.legal-main{padding-top:96px}}.legal-doc-fixed{max-width:860px;padding-top:96px;background:#fff;color:#000}.legal-doc-fixed table{margin:12px 0}.legal-doc-fixed td,.legal-doc-fixed th{vertical-align:top}.suaje-hover-image:hover{cursor:none}.suaje-hover-image-img{display:block;width:100%;height:100%;object-fit:cover}.suaje-hover-overlay{position:absolute;inset:0;background:rgba(0,0,0,.7);opacity:0;transition:opacity .12s ease;pointer-events:none}.suaje-hover-image:hover .suaje-hover-overlay{opacity:1}.suaje-hover-outline{position:absolute;top:0;left:0;overflow:visible;pointer-events:none;opacity:0;transition:opacity .12s ease;filter:drop-shadow(0 0 1px rgba(0,0,0,.6))}.suaje-hover-image:hover .suaje-hover-outline{opacity:1}.suaje-hover-image.is-loading{cursor:none}.suaje-hover-image.is-loading .suaje-hover-overlay{opacity:1;mask-image:none!important;-webkit-mask-image:none!important}.suaje-hover-image.is-loading .suaje-hover-outline{opacity:0}.suaje-hover-spinner-wrap{position:absolute;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0;transition:opacity .12s ease}.suaje-hover-image.is-loading .suaje-hover-spinner-wrap{opacity:1}.suaje-hover-spinner{position:absolute;top:-11px;left:-11px;width:22px;height:22px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:suaje-hover-spin .7s linear infinite}@keyframes suaje-hover-spin{to{transform:rotate(1turn)}}.texture-stack{position:relative;width:320px;height:320px}.texture-stack-layer{position:absolute;inset:0;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.15);transition-property:transform,filter,opacity;transition-timing-function:ease}.texture-stack-img{display:block;width:100%;height:100%;object-fit:cover}html.nail-hover,html.nail-hover *{cursor:grab!important}html.nail-dragging,html.nail-dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.home-nav{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:31px clamp(20px,2.5vw,36px) 0}.home-logo{font-size:24px;font-weight:600;line-height:normal}.home-nav-links{display:flex;align-items:center;gap:20px;font-size:16px;font-weight:500;line-height:1.3}.home-nav-link-active{font-weight:700}.home-logo:hover,.home-nav-links a:hover{opacity:.6}.home-hero{flex:1 1;justify-content:center;padding:96px 24px;text-align:center}.home-hero,.home-hero-copy{display:flex;flex-direction:column;align-items:center}.home-hero h1{max-width:645px;font-family:var(--home-serif);font-style:italic;font-weight:200;font-size:clamp(2.5rem,4.72vw,68px);line-height:1.0441;text-wrap:balance}.home-hero h1 strong{font-weight:600}.home-hero p{max-width:513px;margin-top:19px;font-size:16px;font-weight:500;line-height:1.3}.home-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:42px;padding:8px 16px;border:2px solid var(--home-ink);border-radius:25px;font-size:20px;font-weight:500;line-height:normal;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.home-cta:hover{background:var(--home-ink);color:var(--home-bg)}.home-cta:focus-visible,.home-logo:focus-visible,.home-nav-links a:focus-visible{outline:2px solid var(--home-ink);outline-offset:3px}.grid-main{padding:1.5rem}.captures-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.captures-grid-cell{position:relative;aspect-ratio:3/4;background:var(--background)}@media (max-width:640px){.grid-main{padding:1rem}.captures-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.captures-grid-cell[role=button]{cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none}.capture-viewer{display:contents}.capture-viewer-bg{position:fixed;inset:0;z-index:50;touch-action:none;background:var(--background);opacity:0;pointer-events:none;transition:opacity .32s ease}.capture-viewer.is-shown .capture-viewer-bg{opacity:1;pointer-events:auto}.capture-viewer-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:51;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .2s ease}.capture-viewer-canvas--ready{opacity:1}html.nail-viewer-open .capture-viewer-canvas{visibility:visible}html.nail-viewer-open,html.nail-viewer-open body{overflow:hidden}.capture-viewer-stage{position:fixed;inset:0;z-index:50;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;pointer-events:none}.capture-viewer.is-settled .capture-viewer-stage{pointer-events:auto}.capture-viewer-bottom,.capture-viewer-top{position:fixed;left:0;right:0;z-index:52;display:flex;pointer-events:none;touch-action:none;opacity:0;transition:opacity .2s ease}.capture-viewer.is-settled .capture-viewer-bottom,.capture-viewer.is-settled .capture-viewer-top{opacity:1}.capture-viewer.is-settled .capture-viewer-bottom>button,.capture-viewer.is-settled .capture-viewer-top>button{pointer-events:auto}.capture-viewer-top{top:0;justify-content:space-between;padding:calc(env(safe-area-inset-top) + 12px) 16px 0}.capture-viewer-bottom{bottom:0;flex-direction:column;align-items:center;gap:16px;padding:0 16px calc(env(safe-area-inset-bottom) + 24px)}.capture-viewer-round-button{width:44px;height:44px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.capture-viewer-flood{position:fixed;inset:0;z-index:50;pointer-events:none;transition:opacity .65s ease,background-color .65s ease}.capture-viewer-swatches{position:relative;pointer-events:none}.capture-viewer.is-settled .capture-viewer-swatches{pointer-events:auto}.capture-viewer-swatch-tip{position:absolute;bottom:calc(100% + 14px);left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;width:max-content;max-width:220px;padding:14px;border-radius:14px;background:var(--foreground);color:var(--background);box-shadow:0 6px 20px rgba(0,0,0,.3);animation:capture-viewer-swatch-tip-in .2s ease-out}.capture-viewer-swatch-tip-text{margin:0;font-size:.82rem;font-weight:500;line-height:1.35;text-align:center}.capture-viewer-swatch-tip-button{padding:6px 16px;border-radius:999px;background:var(--background);color:var(--foreground);font-size:.78rem;font-weight:600}.capture-viewer-swatch-tip:after{content:"";position:absolute;top:100%;left:50%;width:10px;height:10px;background:var(--foreground);transform:translate(-50%,-50%) rotate(45deg)}@keyframes capture-viewer-swatch-tip-in{0%{opacity:0;transform:translateX(-50%) translateY(4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.capture-viewer-swatch-chip{position:absolute;left:50%;top:50%;border-radius:50%;border:2px solid rgba(0,0,0,.15);-webkit-tap-highlight-color:transparent;transition:transform .4s cubic-bezier(.22,1,.36,1),width .4s cubic-bezier(.22,1,.36,1),height .4s cubic-bezier(.22,1,.36,1),box-shadow .2s ease}.capture-viewer-swatch-chip.is-active{box-shadow:0 0 0 2px rgba(255,255,255,.9),0 0 0 4px rgba(0,0,0,.35)}.capture-viewer-menu-backdrop{position:fixed;inset:0;z-index:53;touch-action:none}.capture-viewer-menu{position:fixed;top:calc(env(safe-area-inset-top) + 12px + 44px + 8px);right:16px;z-index:54;min-width:190px;padding:6px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 8px 28px rgba(0,0,0,.35);touch-action:none;transform-origin:top right;animation:capture-viewer-menu-in .14s ease-out}@keyframes capture-viewer-menu-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.capture-viewer-menu-item{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:0 14px;border-radius:10px;font-weight:500;text-align:left;-webkit-tap-highlight-color:transparent}.capture-viewer-menu-item:hover{background:var(--border)}.capture-viewer-menu-item-danger{color:#d64545}.capture-viewer-confirm{touch-action:none;position:fixed;left:0;right:0;bottom:0;z-index:53;display:flex;flex-direction:column;align-items:center;gap:14px;padding:20px 16px calc(env(safe-area-inset-bottom) + 20px);background:var(--background);border-top:1px solid var(--border);font-size:.9rem;text-align:center;animation:capture-viewer-sheet-in .18s ease-out}@keyframes capture-viewer-sheet-in{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.capture-viewer-confirm p{color:var(--muted)}.capture-viewer-actions{display:flex;gap:12px}.capture-viewer-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:24px;background:var(--surface);border:1px solid var(--border);font-weight:600;-webkit-tap-highlight-color:transparent}.capture-viewer-button:disabled{opacity:.6}.capture-viewer-button-danger{background:#d64545;border-color:#d64545;color:#fff}.shapes-grid-note{max-width:1000px;margin:0 auto 1rem;font-size:.85rem;opacity:.6}.shapes-grid{display:grid;grid-template-columns:90px repeat(var(--shapes-grid-cols,5),minmax(0,1fr));gap:10px;max-width:1000px;margin:0 auto;align-items:center}.shapes-grid-colhead{text-align:center;font-size:.8rem;opacity:.6}.shapes-grid-rowhead{font-size:.85rem;text-transform:capitalize;opacity:.8}.shapes-grid-cell{position:relative;aspect-ratio:2/5;background:var(--background);border:1px solid color-mix(in srgb,currentColor 10%,transparent);border-radius:10px}.nail-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;background:var(--background);opacity:0;transition:opacity .2s ease}.nail-canvas--ready{opacity:1}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:9rem 1.5rem}.empty-state-title{max-width:500px;font-family:var(--font-spectral),Georgia,"Times New Roman",serif;font-style:italic;font-weight:200;font-size:clamp(1.8rem,4vw,2.75rem);line-height:1.1;color:var(--foreground)}.empty-state-sub{max-width:360px;margin-top:.9rem;font-size:.95rem;color:var(--muted)}.empty-state-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:1.75rem;padding:.65rem 1.3rem;border-radius:25px;background:var(--foreground);color:var(--background);font-size:.95rem;font-weight:500;transition:opacity .15s ease}.empty-state-cta:hover{opacity:.85}.settings-main{max-width:640px;margin:0 auto;padding:1.5rem}.settings-title{margin-bottom:2rem;font-size:1.6rem;font-weight:700}.settings-group{margin-bottom:2.5rem}.settings-group-title{margin-bottom:.5rem;font-size:1rem;font-weight:600;color:var(--muted)}.settings-section{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 0;border-top:1px solid var(--border)}.settings-section-text{min-width:0}.settings-section-label{font-weight:600}.settings-section-description{margin-top:.25rem;color:var(--muted);font-size:.9rem}.settings-button,.settings-danger-button{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 20px;border-radius:20px;font-weight:600;white-space:nowrap}.settings-button{background:var(--surface);border:1px solid var(--border)}.settings-danger-button{border:1px solid #d64545;color:#d64545;background:transparent}.settings-button:disabled,.settings-danger-button:disabled{opacity:.6}.settings-dialog-backdrop{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.5)}.settings-dialog{position:relative;width:100%;max-width:420px;padding:1.75rem;border-radius:16px;background:var(--background);border:1px solid var(--border)}.settings-dialog-close{position:absolute;top:1rem;right:1rem;width:28px;height:28px;border-radius:50%;background:var(--surface);font-size:1.1rem;line-height:1}.settings-dialog-title{margin-bottom:1rem;font-size:1.3rem;font-weight:700}.settings-dialog-danger{margin-top:.5rem;color:#d64545;font-weight:600}.settings-dialog-form{display:flex;flex-direction:column;gap:.9rem;margin-top:1.25rem}.settings-dialog-hint{color:var(--muted);font-size:.9rem}.settings-username-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .6rem;border-radius:6px;background:var(--surface);border:1px solid var(--border);font-weight:600;color:var(--foreground)}.settings-copy-button{font-size:.85rem;color:var(--muted)}.settings-copy-button:hover{color:var(--foreground)}.settings-dialog-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.25rem}