@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-latin-wght-italic.woff2)format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Figtree;src:url(/fonts/figtree-latin-wght-normal.woff2)format("woff2");font-weight:300 900;font-style:normal;font-display:swap}@font-face{font-family:Fraunces Fallback;src:local(Georgia),local(Times New Roman);size-adjust:104%;ascent-override:92%;descent-override:24%;line-gap-override:0%}@font-face{font-family:Figtree Fallback;src:local(Arial),local(Helvetica);size-adjust:102%;ascent-override:95%;descent-override:25%;line-gap-override:0%}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-display:"Fraunces", "Fraunces Fallback", Georgia, "Times New Roman", serif;--font-body:"Figtree", "Figtree Fallback", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-size-2xs:.75rem;--font-size-xs:.8125rem;--font-size-sm:.875rem;--font-size-md:.9375rem;--font-size-base:1rem;--font-size-lg:1.0625rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-display-md:clamp(2rem, 5.4vw, 3.25rem);--font-size-display-lg:clamp(2.5rem, 8.4vw, 4.5rem);--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-heavy:800;--font-weight-brand:650;--leading-none:1;--leading-tight:1.08;--leading-snug:1.2;--leading-normal:1.45;--leading-relaxed:1.6;--tracking-tighter:-.03em;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.06em;--tracking-wider:.1em;--tracking-widest:.14em;--tracking-brand:-.025em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-30:120px;--space-0-5:2px;--space-1-5:6px;--space-2-5:10px;--space-3-5:14px;--space-gutter:clamp(20px, 5vw, 40px);--space-section:clamp(64px, 9vw, 120px);--radius-2xs:6px;--radius-xs:10px;--radius-sm:12px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-2xl:36px;--radius-pill:999px;--border-hairline:1px;--border-thin:1.5px;--border-thick:2px;--border-edge:4px;--border-focus:3px;--backdrop-glass:saturate(1.4) blur(14px);--z-behind:-1;--z-base:0;--z-raised:1;--z-sticky:50;--z-nav:60;--z-dropdown:100;--z-overlay:400;--z-modal:500;--z-toast:700;--z-tooltip:800;--z-skip:900;--breakpoint-sm:520px;--breakpoint-md:720px;--breakpoint-lg:960px;--breakpoint-xl:1240px;--duration-instant:80ms;--duration-fast:.15s;--duration-base:.22s;--duration-slow:.32s;--duration-slower:.5s;--duration-reveal:.7s;--duration-entrance:.8s;--ease-standard:cubic-bezier(.2, .7, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--ease-linear:linear;--size-target-min:48px;--size-target-comfortable:48px;--size-tap-min:48px;--size-tap-row:56px;--size-control-sm:36px;--size-control-md:48px;--size-control-lg:52px;--size-icon-xs:14px;--size-icon-sm:16px;--size-icon-md:20px;--size-icon-lg:24px;--size-icon-xl:32px;--size-avatar-sm:32px;--size-avatar-md:40px;--size-avatar-lg:56px;--size-avatar-xl:80px;--size-app-bar:56px;--size-tab-bar:64px;--size-site-header:68px;--size-phone:430px;--size-sidebar:264px;--size-container:1160px;--size-content:720px;--size-prose:40rem;--size-narrow:28rem;--size-sheet-max:640px;--size-modal-sm:400px;--size-modal-md:520px;--tap-min:48px;--tap-row:56px;--icon-stroke:1.75;--icon-stroke-bold:2.25;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--color-brand-green:#046a38;--color-brand-red:#da291c;--color-brand-gold:#ffb81c;--color-brand-cream:#fbf6ec;--color-brand-azulejo:#1b4ba8;--color-brand-night:#12306e;--color-brand-terracotta:#b03f26;--color-brand-terracotta-bright:#e2603f;--color-bg:#fbf6ec;--color-bg-subtle:#f4ebda;--color-surface:#fffdf8;--color-surface-raised:#fff;--color-surface-inverse:#0f2a63;--color-surface-inverse-raised:#12306e;--color-surface-inverse-deep:#0b2150;--color-overlay:#0f1b3a7a;--color-border:#e6dac3;--color-border-strong:#857761;--color-border-inverse:#ffffff38;--color-text:#0f1b3a;--color-text-muted:#4a5672;--color-text-subtle:#5d6884;--color-text-inverse:#fbf6ec;--color-text-inverse-muted:#c9d4ee;--color-text-link:#1b4ba8;--color-primary:#1b4ba8;--color-primary-hover:#163f8f;--color-primary-pressed:#12306e;--color-primary-soft:#e3ebf8;--color-primary-softer:#f1f5fc;--color-primary-line:#b9c8ea;--color-primary-text:#1b4ba8;--color-primary-bright:#3d78e0;--color-primary-edge:#12306e;--color-on-primary:#fff;--color-accent:#b03f26;--color-accent-hover:#983520;--color-accent-soft:#f9e3da;--color-accent-text:#b03f26;--color-accent-edge:#7d2a17;--color-accent-on-inverse:#ffb199;--color-on-accent:#fff;--color-highlight:#e9b44c;--color-highlight-soft:#fbefd2;--color-on-highlight:#0f1b3a;--color-focus:#1b4ba8;--color-focus-inverse:#e9b44c;--color-success:#1a6a42;--color-success-soft:#ddf0e4;--color-on-success:#fff;--color-warning:#8a5a00;--color-warning-soft:#fbefd2;--color-on-warning:#fff;--color-error:#b0213f;--color-error-soft:#fbe4e8;--color-on-error:#fff;--color-info:#1b4ba8;--color-info-soft:#e3ebf8;--color-on-info:#fff;--color-level-a1:#1d6b77;--color-level-a1-soft:#dcefef;--color-level-a1-on:#fff;--color-level-a2:#1b4ba8;--color-level-a2-soft:#e3ebf8;--color-level-a2-on:#fff;--color-level-b1:#5b3fa6;--color-level-b1-soft:#ece6fa;--color-level-b1-on:#fff;--color-level-b2:#9b3a8a;--color-level-b2-soft:#f6e3f1;--color-level-b2-on:#fff;--color-level-c1:#b03f26;--color-level-c1-soft:#f9e3da;--color-level-c1-on:#fff;--color-level-c2:#875d00;--color-level-c2-soft:#fbefd2;--color-level-c2-on:#fff;--shadow-xs:0 1px 2px #0f1b3a0f;--shadow-sm:0 1px 2px #0f1b3a0f, 0 2px 8px #0f1b3a0d;--shadow-md:0 10px 30px -8px #0f1b3a2e, 0 2px 6px #0f1b3a0f;--shadow-lg:0 30px 60px -20px #0f1b3a59, 0 8px 20px -8px #0f1b3a2e;--shadow-accent:0 6px 16px -6px #b03f2699;--shadow-primary:0 6px 14px -4px #1b4ba880;--shadow-up-md:0 -10px 30px -12px #0f1b3a2e;--pattern-azulejo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72' fill='none' stroke='%231b4ba8' stroke-width='1.4'%3E%3Ccircle cx='36' cy='23' r='11'/%3E%3Ccircle cx='49' cy='36' r='11'/%3E%3Ccircle cx='36' cy='49' r='11'/%3E%3Ccircle cx='23' cy='36' r='11'/%3E%3Cpath d='M0 0a14 14 0 0 1 0 0M0 10A10 10 0 0 0 10 0M62 0a10 10 0 0 0 10 10M0 62a10 10 0 0 1 10 10M62 72a10 10 0 0 1 10-10'/%3E%3C/svg%3E");--pattern-azulejo-opacity:.09}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--color-bg:#0b1327;--color-bg-subtle:#0e1832;--color-surface:#131d38;--color-surface-raised:#18244a;--color-surface-inverse:#12306e;--color-surface-inverse-raised:#17387f;--color-surface-inverse-deep:#0b2150;--color-overlay:#0009;--color-border:#27365f;--color-border-strong:#64759f;--color-border-inverse:#ffffff38;--color-text:#f3eee2;--color-text-muted:#a9b4cc;--color-text-subtle:#a9b4cc;--color-text-inverse:#fbf6ec;--color-text-inverse-muted:#c9d4ee;--color-text-link:#8caef5;--color-primary:#3d6ad6;--color-primary-hover:#2f5fcb;--color-primary-pressed:#2652b3;--color-primary-soft:#1a2a57;--color-primary-softer:#152147;--color-primary-line:#2f4a8f;--color-primary-text:#8caef5;--color-primary-bright:#5b8ff0;--color-primary-edge:#12306e;--color-on-primary:#fff;--color-accent:#b03f26;--color-accent-hover:#983520;--color-accent-soft:#3a2220;--color-accent-text:#f08a6c;--color-accent-edge:#7d2a17;--color-accent-on-inverse:#ffb199;--color-on-accent:#fff;--color-highlight:#e9b44c;--color-highlight-soft:#3a2c0e;--color-on-highlight:#0f1b3a;--color-focus:#e9b44c;--color-focus-inverse:#e9b44c;--color-success:#67d39a;--color-success-soft:#12301f;--color-on-success:#0b1327;--color-warning:#efc255;--color-warning-soft:#3a2c0e;--color-on-warning:#0b1327;--color-error:#ff9db0;--color-error-soft:#3d121c;--color-on-error:#0b1327;--color-info:#8caef5;--color-info-soft:#1a2a57;--color-on-info:#0b1327;--color-level-a1:#6fcad6;--color-level-a1-soft:#12313a;--color-level-a1-on:#0b1327;--color-level-a2:#8caef5;--color-level-a2-soft:#1a2a57;--color-level-a2-on:#0b1327;--color-level-b1:#b9a4f2;--color-level-b1-soft:#241a45;--color-level-b1-on:#0b1327;--color-level-b2:#e79bd8;--color-level-b2-soft:#3a1736;--color-level-b2-on:#0b1327;--color-level-c1:#f08a6c;--color-level-c1-soft:#3a2220;--color-level-c1-on:#0b1327;--color-level-c2:#efc255;--color-level-c2-soft:#3a2c0e;--color-level-c2-on:#0b1327;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 10px 30px -8px #00000080;--shadow-lg:0 30px 60px -20px #000000b3;--shadow-accent:0 6px 16px -6px #b03f2699;--shadow-primary:0 6px 14px -4px #00000080;--shadow-up-md:0 -10px 30px -12px #0009;--pattern-azulejo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72' fill='none' stroke='%238caef5' stroke-width='1.4'%3E%3Ccircle cx='36' cy='23' r='11'/%3E%3Ccircle cx='49' cy='36' r='11'/%3E%3Ccircle cx='36' cy='49' r='11'/%3E%3Ccircle cx='23' cy='36' r='11'/%3E%3C/svg%3E");--pattern-azulejo-opacity:.1}}@media (prefers-reduced-motion:reduce){:root{--duration-instant:.01ms;--duration-fast:.01ms;--duration-base:.01ms;--duration-slow:.01ms;--duration-slower:.01ms;--duration-reveal:.01ms;--duration-entrance:.01ms}}@media (prefers-contrast:more){:root{--color-border:var(--color-border-strong);--color-text-subtle:var(--color-text-muted)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-padding-top:84px}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{min-height:100dvh;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:clip}img,svg{max-width:100%;display:block}h1,h2,h3,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;touch-action:manipulation}button,summary,label,input,select,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--color-highlight);outline-offset:3px;border-radius:6px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--color-text);min-height:48px;color:var(--color-bg);border-radius:10px;align-items:center;padding:10px 16px;font-weight:600;display:inline-flex;position:absolute;top:-80px;left:12px}.skip-link:focus{top:12px}.container{width:100%;max-width:1160px;margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;font-weight:600}h1{letter-spacing:-.03em;font-size:clamp(2.5rem,8.4vw,4.5rem);line-height:1.03}h1 em{letter-spacing:-.02em;margin-top:.14em;font-size:.66em;line-height:1.08;display:block}h2{font-size:clamp(2rem,5.4vw,3.25rem);line-height:1.08}h3{font-size:1.3rem;line-height:1.2}h1 em,h2 em{color:var(--color-accent-text);font-style:italic;font-weight:500}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary-text);margin-bottom:14px;font-size:.8125rem;font-weight:700}.lead{color:var(--color-text-muted);text-wrap:pretty;max-width:34rem;font-size:clamp(1.1rem,2.6vw,1.3rem)}.section-lead{color:var(--color-text-muted);text-wrap:pretty;max-width:40rem;margin-top:18px;font-size:1.125rem}.caption{text-align:center;color:var(--color-text-muted);margin-top:14px;font-size:.8125rem}.fineprint{text-align:center;color:var(--color-text-muted);margin-top:28px;font-size:.875rem}.badge{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:10px;margin-bottom:22px;padding:7px 14px 7px 12px;font-size:.875rem;font-weight:600;display:inline-flex}.badge-dot{background:var(--color-success);width:8px;height:8px;box-shadow:0 0 0 4px var(--color-success-soft);border-radius:50%}.icon-tile{width:44px;height:44px;color:var(--color-primary-text);background:var(--color-primary-soft);border-radius:14px;flex:none;place-items:center;display:inline-grid}.icon-tile-lg{border-radius:18px;width:56px;height:56px}.site-header{z-index:50;background:color-mix(in srgb, var(--color-bg) 86%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid color-mix(in srgb, var(--color-border) 70%, transparent);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:16px;height:68px;display:flex}.logo-link{border-radius:10px;align-items:center;min-height:48px;text-decoration:none;display:inline-flex}.nav{gap:8px;display:none}.nav a{min-height:48px;color:var(--color-text-muted);-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;padding:0 14px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.nav a:hover,.nav a:active{color:var(--color-text);background:var(--color-bg-subtle)}@media (width>=860px){.nav{display:flex}}.header-actions{align-items:center;gap:8px;display:flex}.header-login{min-height:48px;color:var(--color-text);border-radius:10px;align-items:center;padding:0 14px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.header-login:hover,.header-login:active{background:var(--color-bg-subtle)}@media (width<=400px){.header-login{display:none}}.hero{padding:clamp(36px,7vw,88px) 0 clamp(48px,7vw,96px);position:relative;overflow:clip}.hero-bg{z-index:-1;background:radial-gradient(60% 50% at 85% 10%, color-mix(in srgb, var(--color-primary-text) 16%, transparent), transparent 70%), radial-gradient(50% 45% at 5% 95%, color-mix(in srgb, var(--color-accent-text) 14%, transparent), transparent 70%);position:absolute;inset:0}.hero-bg:before{content:"";background-image:var(--pattern-azulejo);opacity:var(--pattern-azulejo-opacity);background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70% at 80% 30%,#000,#0000 75%);mask-image:radial-gradient(70% 70% at 80% 30%,#000,#0000 75%)}.hero-grid{align-items:center;gap:56px;display:grid}.hero-copy .lead{margin-top:22px}.ticks{color:var(--color-text-muted);flex-wrap:wrap;gap:10px 22px;margin-top:24px;font-size:.9375rem;font-weight:600;display:flex}.ticks li{align-items:center;gap:6px;display:inline-flex}.ticks svg{color:var(--color-success)}.hero-visual{flex-direction:column;align-items:center;display:flex}.hero-stage{flex-direction:column;align-items:center;width:100%;max-width:400px;padding:10px 0 0;display:flex;position:relative}@media (width>=960px){.hero-grid{grid-template-columns:1.08fr .92fr;gap:40px}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes rise-soft{0%{transform:translateY(12px)}to{transform:none}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes wave{0%{transform:scaleY(.45)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:no-preference){.hero-in{animation:.8s cubic-bezier(.2,.7,.2,1) both rise;animation-delay:var(--d,0s)}.hero-rise{animation:.8s cubic-bezier(.2,.7,.2,1) both rise-soft}.float-card{animation:7s ease-in-out infinite bob}.float-mistake{animation-delay:-3.5s}.wave i{animation:1.1s ease-in-out infinite alternate wave}}@keyframes force-in{to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){html.js .reveal{opacity:0;transition:opacity .7s cubic-bezier(.2, .7, .2, 1) var(--d,0s), transform .7s cubic-bezier(.2, .7, .2, 1) var(--d,0s);animation:10ms 3.5s forwards force-in;transform:translateY(22px)}html.js .reveal.in{opacity:1;transform:none}}.phone{width:292px;box-shadow:var(--shadow-lg);background:linear-gradient(160deg,#1c2a52,#0b1530);border-radius:44px;padding:9px;position:relative}.phone-notch{z-index:2;background:#0b1530;border-radius:999px;width:84px;height:22px;margin-left:-42px;position:absolute;top:17px;left:50%}.phone-screen{color:#0f1b3a;background:#fffdf8;border-radius:36px;flex-direction:column;min-height:560px;padding:46px 18px 18px;display:flex}@media (prefers-color-scheme:dark){.phone-screen{background:#f6f0e3}}.lesson-top{align-items:center;gap:10px;display:flex}.lesson-close{color:#6a7390;place-items:center;width:30px;height:30px;display:grid}.lesson-progress{background:#e8dfcb;border-radius:999px;flex:1;height:10px;overflow:hidden}.lesson-progress i,.meter i{border-radius:inherit;background:linear-gradient(90deg,#1b4ba8,#3d78e0);height:100%;display:block}.lesson-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#1b4ba8;margin-top:26px;font-size:.75rem;font-weight:700}.lesson-title{font-family:var(--font-display);letter-spacing:-.02em;margin-top:6px;font-size:1.5rem;font-weight:600;line-height:1.15}.lesson-audio{background:#e3ebf8;border-radius:18px;align-items:center;gap:12px;margin-top:22px;padding:12px 14px;display:flex}.play{color:#fff;background:#1b4ba8;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 6px 14px -4px #1b4ba899}.play svg{margin-left:2px}.speed{color:#1b4ba8;background:#fff;border-radius:999px;flex:none;padding:4px 9px;font-size:.75rem;font-weight:800}.wave{flex:1;justify-content:space-between;align-items:center;gap:2px;height:32px;display:flex}.wave i{transform-origin:50%;background:#1b4ba8;border-radius:3px;flex:none;width:3px;display:block}.wave i:nth-child(3n){background:#3d78e0}.lesson-answer{background:linear-gradient(#e6dac3,#e6dac3) 0 52px/100% 2px no-repeat,linear-gradient(#e6dac3,#e6dac3) 0 104px/100% 2px no-repeat;flex-wrap:wrap;align-content:flex-start;gap:8px;min-height:108px;margin-top:22px;padding:14px 4px 0;display:flex}.tile{color:#0f1b3a;background:#fff;border:2px solid #e6dac3;border-bottom-width:4px;border-radius:12px;align-items:center;height:40px;padding:0 14px;font-size:1rem;font-weight:700;display:inline-flex}.tile-placed{background:#f1f5fc;border-color:#b9c8ea}.tile-slot{background:0 0;border-style:dashed;border-bottom-width:2px;width:86px}.lesson-bank{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.lesson-cta{text-align:center;color:#fff;background:#1b4ba8;border-radius:14px;margin-top:auto;padding:14px;font-weight:800;box-shadow:0 4px #12306e}.float-card{z-index:3;border:1px solid var(--color-border);background:var(--color-surface-raised);box-shadow:var(--shadow-md);color:var(--color-text);border-radius:18px;position:absolute}.float-path{width:168px;padding:12px 14px;top:34px;right:-12px}.float-head{align-items:center;gap:10px;display:flex}.float-icon{width:34px;height:34px;color:var(--color-accent-text);background:var(--color-accent-soft);border-radius:11px;flex:none;place-items:center;display:grid}.float-title{font-size:.9rem;font-weight:800;line-height:1.2}.float-sub{color:var(--color-text-muted);font-size:.75rem}.meter{background:var(--color-primary-soft);border-radius:999px;height:8px;margin-top:12px;display:block;overflow:hidden}.float-mistake{z-index:3;align-self:center;width:min(292px,100%);margin-top:-38px;padding:12px 14px;position:relative}.mistake-you{background:var(--color-accent-soft);color:var(--color-accent-text);border-radius:10px;margin-bottom:8px;padding:3px 10px;font-size:.875rem;font-weight:700;text-decoration:line-through;text-decoration-thickness:1.5px;display:inline-block}.mistake-body{color:var(--color-text-muted);gap:8px;font-size:.8125rem;line-height:1.4;display:flex}.mistake-body svg{color:var(--color-primary-text);flex:none;margin-top:2px}.mistake-body b{color:var(--color-text)}@media (width>=960px){.hero-stage{flex-direction:row;justify-content:flex-end;max-width:500px;min-height:600px}.float-path{width:184px;top:8px;right:-66px}.float-mistake{align-self:auto;width:206px;margin-top:0;position:absolute;bottom:110px;left:-34px}}@media (width<=440px){.hero-stage{max-width:340px}.phone{width:268px}.phone-screen{min-height:520px}.float-path{width:148px;padding:10px 12px;right:-4px}}.cta-row{flex-wrap:wrap;gap:12px;display:flex}.hero-copy .cta-row{margin-top:30px}@media (width<=520px){.cta-row .pg-button{flex:100%}}.section{padding:clamp(64px,9vw,120px) 0}.section-sand{background:var(--color-bg-subtle)}.section-head{max-width:44rem;margin-bottom:clamp(36px,5vw,56px)}.section-head-center{text-align:center;margin-inline:auto}.section-head-center .section-lead{margin-inline:auto}.card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:28px}.card h3{margin-bottom:8px}.card p{color:var(--color-text-muted)}.card .card-sub{margin-bottom:20px}.facts{border-block:1px solid var(--color-border);background:var(--color-surface)}.facts-grid{gap:22px;padding-block:32px;display:grid}.fact{align-items:flex-start;gap:14px;display:flex}.fact-title{font-weight:800;line-height:1.3}.fact p:not(.fact-title){color:var(--color-text-muted);font-size:.9375rem;line-height:1.5}@media (width>=640px){.facts-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.facts-grid{grid-template-columns:repeat(4,1fr);gap:28px}}.problem-grid{gap:24px;display:grid}.compare,.lost{padding:clamp(24px,4vw,40px)}.compare-table{border:1px solid var(--color-border);background:var(--color-bg);border-radius:18px;display:grid;overflow:hidden}.compare-row{grid-template-columns:1fr 1.2fr;align-items:center;gap:12px;padding:14px 16px;display:grid}.compare-row+.compare-row{border-top:1px solid var(--color-border)}.compare-head{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-subtle);font-size:.75rem;font-weight:800}.compare-en{color:var(--color-text-muted);font-size:.9375rem}.compare-pt{color:var(--color-success);font-weight:800}.lost{flex-direction:column;display:flex}.lost-chat{background:var(--color-bg-subtle);border-radius:20px;gap:10px;padding:18px;display:grid}.bubble{border-radius:16px;max-width:88%;padding:10px 14px;font-size:.9375rem;line-height:1.4}.bubble-you{color:#fff;background:var(--color-primary);border-bottom-right-radius:5px;justify-self:end}.bubble-ai{color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);border-bottom-left-radius:5px;justify-self:start}.card .bubble-ai{color:var(--color-text)}.card .bubble-you{color:#fff}.bubble-dim{color:var(--color-text-muted);letter-spacing:.2em}.lost-fix{color:var(--color-text);align-items:flex-start;gap:10px;margin-top:auto;padding-top:22px;font-weight:700;display:flex}.card .lost-fix{color:var(--color-text)}.lost-fix svg{color:var(--color-success);flex:none;margin-top:3px}@media (width>=960px){.problem-grid{grid-template-columns:1.25fr 1fr}}@media (width<=520px){.compare-row{grid-template-columns:1fr;gap:2px 12px;padding:12px 14px}.compare-en{grid-column:1/-1;font-size:.8125rem}.compare-head{padding-block:10px}.compare-head span:first-child{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}.how-grid{align-items:center;gap:48px;display:grid}.steps{gap:28px;display:grid}.step{gap:18px;display:flex;position:relative}.step:not(:last-child):after{content:"";background:repeating-linear-gradient(var(--color-border) 0 6px, transparent 6px 12px);width:2px;position:absolute;top:52px;bottom:-24px;left:21px}.step-n{width:44px;height:44px;font-family:var(--font-display);color:#fff;background:var(--color-primary);border-radius:50%;flex:none;place-items:center;font-size:1.2rem;font-weight:700;display:grid;box-shadow:0 6px 14px -4px #1b4ba880}.step p{color:var(--color-text-muted)}@media (width>=960px){.how-grid{grid-template-columns:1fr 1fr;gap:72px}}.path-card{border:1px solid var(--color-border);background:var(--color-surface-raised);max-width:440px;box-shadow:var(--shadow-md);border-radius:28px;margin-inline:auto;padding:22px}.path-levels{background:var(--color-bg-subtle);border-radius:14px;gap:6px;padding:5px;display:flex}.lvl{text-align:center;color:var(--color-text-muted);border-radius:10px;flex:1;padding:6px 0;font-size:.8125rem;font-weight:800}.lvl-on{color:#fff;background:var(--color-primary)}.path-units{gap:4px;margin-top:16px;display:grid}.unit{border-radius:16px;align-items:center;gap:14px;padding:10px 12px;display:flex}.unit-dot{width:34px;height:34px;color:var(--color-text-muted);background:var(--color-bg-subtle);border-radius:50%;flex:none;place-items:center;display:grid}.unit-text{color:var(--color-text);flex-direction:column;font-weight:700;line-height:1.3;display:flex}.unit-text small{color:var(--color-text-muted);font-size:.75rem;font-weight:700}.unit-done .unit-dot{color:var(--color-success);background:var(--color-success-soft)}.unit-current{background:var(--color-primary-soft)}.unit-current .unit-dot{color:#fff;background:var(--color-primary)}.unit-locked .unit-text{color:var(--color-text-muted);font-weight:600}.path-next{background:var(--color-accent-soft);border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px 14px 14px 16px;display:flex}.path-next p{color:var(--color-text);font-size:.9375rem;font-weight:700;line-height:1.35}.path-next small{letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent-text);font-size:.75rem;font-weight:700;display:block}.bento{gap:20px;display:grid}.bento .card{flex-direction:column;gap:24px;padding:clamp(22px,3vw,32px);display:flex;overflow:hidden}.bento .card h3{margin-top:16px}.bento-text p{max-width:34rem}.mock{border:1px solid var(--color-border);background:var(--color-bg);border-radius:20px;margin-top:auto;padding:18px}.mock-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary-text);align-items:center;gap:8px;margin-bottom:12px;font-size:.75rem;font-weight:800;display:inline-flex}.card .mock p{color:var(--color-text)}.mock-pt{font-family:var(--font-display);font-size:1.35rem;font-weight:600;line-height:1.25}.card .mock .mock-en{color:var(--color-text-muted);margin-top:4px;font-size:.9375rem}.mock-audio .lesson-audio{background:var(--color-primary-soft)}.mock-audio .wave i{background:var(--color-primary)}.mock-audio .wave i:nth-child(3n){background:color-mix(in srgb, var(--color-primary) 70%, white)}.mock-audio .play{background:var(--color-primary)}.seg{background:var(--color-bg-subtle);color:var(--color-text-muted);border-radius:12px;gap:4px;margin-top:14px;padding:4px;font-size:.8125rem;font-weight:700;display:inline-flex}.seg span{border-radius:9px;padding:6px 14px}.seg .seg-on{color:var(--color-text);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.ladder{gap:10px;display:grid}.ladder-row{color:var(--color-text-muted);grid-template-columns:30px 1fr;align-items:center;gap:12px;font-size:.8125rem;font-weight:800;display:grid}.ladder-row .meter{height:10px;margin-top:0}.notice{border-left:4px solid var(--color-accent-text);background:var(--color-surface-raised);border-radius:6px 14px 14px 6px;padding:12px 14px;font-size:.9375rem;line-height:1.45}.card .mock .mock-q{margin-top:14px;font-size:.9375rem;font-weight:700}.opts{gap:8px;margin-top:10px;display:grid}.opt{border:1.5px solid var(--color-border);background:var(--color-surface-raised);border-radius:12px;align-items:center;gap:8px;padding:9px 14px;font-size:.9375rem;font-weight:600;display:flex}.opt-right{border-color:var(--color-success);color:var(--color-success);background:var(--color-success-soft)}.review-note{text-align:center;color:var(--color-text-muted);margin-top:14px;font-size:.8125rem}.flash{text-align:center;background:var(--color-surface-raised);border:1px solid var(--color-border);box-shadow:0 8px 0 -4px var(--color-surface-raised), 0 8px 0 -3px var(--color-border), 0 16px 0 -8px var(--color-surface-raised), 0 16px 0 -7px var(--color-border);border-radius:16px;padding:18px;position:relative}.flash-count{color:var(--color-primary-text);background:var(--color-primary-soft);border-radius:999px;margin-bottom:8px;padding:3px 10px;font-size:.75rem;font-weight:800;display:inline-block}.flash-word{font-family:var(--font-display);font-size:1.9rem;font-weight:600;line-height:1.2}.card .mock .flash-hint{color:var(--color-text-muted);font-size:.9375rem}.rate{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px;display:grid}.rate span{text-align:center;color:var(--color-text-muted);background:var(--color-bg-subtle);border-radius:10px;padding:8px 0;font-size:.8125rem;font-weight:700}.rate .rate-on{color:#fff;background:var(--color-primary)}.grammar-title{font-weight:800;line-height:1.35}.grammar-ex{gap:8px;margin-top:12px;display:grid}.grammar-ex li{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:12px;padding:10px 14px;font-size:.9375rem}.grammar-ex span{color:var(--color-primary-text);font-weight:800}.grammar-ex em{color:var(--color-text-muted);font-size:.875rem;font-style:normal;display:block}.mock-ai{gap:10px;display:grid}.mock-ai .mock-label{margin-bottom:2px}.mock-ai .bubble{max-width:94%}.ai-chip{color:var(--color-success);background:var(--color-success-soft);border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:5px 12px;font-size:.8125rem;font-weight:700;display:inline-flex}.card .mock-ai .bubble-you{color:#fff}@media (width>=720px){.bento{grid-template-columns:repeat(6,minmax(0,1fr))}.bento-audio,.bento-progress{grid-column:span 6}.bento-exam,.bento-review,.bento-grammar,.bento-ai{grid-column:span 3}}@media (width>=1000px){.bento .bento-audio{grid-column:span 4;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;display:grid}.bento-audio .mock{margin-top:0}.bento-progress{grid-column:span 2}}.levels{gap:16px;display:grid;position:relative}.level{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:24px;flex-direction:column;padding:22px;display:flex;position:relative;overflow:hidden}.level:first-child{--lc:#1d6b77}.level:nth-child(2){--lc:#1b4ba8}.level:nth-child(3){--lc:#5b3fa6}.level:nth-child(4){--lc:#9b3a8a}.level:nth-child(5){--lc:#b03f26}.level:nth-child(6){--lc:#9a6a00}@media (prefers-color-scheme:dark){.level:first-child{--lc:#6fcad6}.level:nth-child(2){--lc:#8caef5}.level:nth-child(3){--lc:#b9a4f2}.level:nth-child(4){--lc:#e79bd8}.level:nth-child(5){--lc:#f08a6c}.level:nth-child(6){--lc:#efc255}}.level:before{content:"";background:var(--lc);border-radius:24px 24px 0 0;height:5px;position:absolute;inset:0 0 auto}.level-top{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-top:4px;display:flex}.level-code{font-family:var(--font-display);letter-spacing:-.03em;color:var(--lc);font-size:2.4rem;font-weight:700;line-height:1}.level-name{letter-spacing:.04em;text-transform:uppercase;overflow-wrap:break-word;max-width:100%;color:var(--color-text-muted);font-size:.8125rem;font-weight:800;line-height:1.2}.level-tag{color:#fff;background:var(--color-primary);border-radius:999px;align-self:flex-start;margin-top:10px;padding:3px 10px;font-size:.75rem;font-weight:800}.level-can{margin-top:14px;font-weight:700;line-height:1.4}.level-topics{color:var(--color-text-muted);gap:6px;margin-top:14px;font-size:.9375rem;display:grid}.level-topics li{padding-left:16px;position:relative}.level-topics li:before{content:"";background:var(--lc);border-radius:50%;width:6px;height:6px;position:absolute;top:.65em;left:0}.level-meta{color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:auto;padding-top:18px;font-size:.8125rem;font-weight:700;display:flex}.level-meta span:last-child{color:var(--lc)}.levels-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(-1*clamp(20px,5vw,40px));padding:6px clamp(20px,5vw,40px) 18px;scroll-padding-inline:clamp(20px,5vw,40px);overflow-x:auto}.levels-scroll::-webkit-scrollbar{display:none}@media (width<=679px){.levels{gap:12px;width:max-content;display:flex}.level{scroll-snap-align:start;flex:none;width:min(78vw,300px)}}@media (width>=680px){.levels-scroll{margin-inline:0;padding:0;overflow:visible}.levels{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=940px){.levels{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1240px){.levels{grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;gap:14px}.level{margin-top:calc((5 - var(--i)) * 30px);padding:18px}.level-code{font-size:2.1rem}}.audience{gap:20px;display:grid}.audience-card{padding:clamp(24px,3vw,34px)}.audience-card .icon-tile{margin-bottom:20px}@media (width>=900px){.audience{grid-template-columns:repeat(3,1fr)}}.section-night{color:var(--color-text-inverse);background:radial-gradient(60% 80% at 100% 0%, #3d78e059, transparent 70%), linear-gradient(180deg, var(--color-surface-inverse), #0b2150);position:relative;overflow:clip}.section-night:before{content:"";background-image:var(--pattern-azulejo);filter:invert()brightness(2);opacity:.05;background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.section-night .container{position:relative}.section-night .eyebrow{color:var(--color-highlight)}.section-night h2 em{color:#ffb199}.section-night .section-lead{color:var(--color-text-inverse-muted)}.ai-grid{gap:16px;display:grid}.ai-point{background:#ffffff0f;border:1px solid #ffffff29;border-radius:24px;padding:28px}.ai-point p{color:var(--color-text-inverse-muted)}.ai-n{width:38px;height:38px;font-family:var(--font-display);color:#0f1b3a;background:var(--color-highlight);border-radius:50%;place-items:center;margin-bottom:18px;font-weight:700;display:grid}@media (width>=860px){.ai-grid{grid-template-columns:repeat(3,1fr)}}.faq-wrap{gap:8px;display:grid}.faq-wrap .section-head{margin-bottom:24px}@media (width>=960px){.faq-wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:64px}.faq-wrap .section-head{position:sticky;top:110px}}.faq-list{gap:12px;display:grid}.faq{border:1px solid var(--color-border);background:var(--color-surface);border-radius:20px;transition:box-shadow .15s}.faq[open]{box-shadow:var(--shadow-sm)}.faq summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:20px 22px;font-size:1.0625rem;font-weight:700;line-height:1.4;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary svg{color:var(--color-primary-text);flex:none;transition:transform .2s}.faq[open] summary svg{transform:rotate(180deg)}.faq p{color:var(--color-text-muted);max-width:44rem;padding:0 22px 22px}.final{padding:0 0 clamp(64px,9vw,120px)}.final-inner{color:var(--color-text-inverse);background:radial-gradient(60% 90% at 100% 0%, #3d78e073, transparent 70%), radial-gradient(50% 80% at 0% 100%, #b03f2666, transparent 70%), linear-gradient(160deg, var(--color-surface-inverse-raised), #0b2150);box-shadow:var(--shadow-lg);border-radius:36px;width:min(100% - clamp(40px,10vw,80px),1160px);padding:clamp(32px,6vw,72px);position:relative;overflow:hidden}.final-bg{background-image:var(--pattern-azulejo);filter:invert()brightness(2);opacity:.07;background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 90% at 100% 0,#000,#0000 75%);mask-image:radial-gradient(70% 90% at 100% 0,#000,#0000 75%)}.final-inner{align-items:center;gap:40px;display:grid}.final-copy{max-width:40rem;position:relative}.final-steps{align-items:flex-end;gap:10px;height:260px;display:none;position:relative}.final-steps span{height:calc(70px + var(--i) * 34px);font-family:var(--font-display);color:var(--color-text-inverse);background:#ffffff14;border:1px solid #ffffff38;border-radius:18px 18px 8px 8px;flex:1;justify-content:center;align-items:flex-start;padding-top:14px;font-size:1.35rem;font-weight:700;display:flex}.final-steps span:first-child{color:#fff;background:#b03f26;border-color:#d9674a;box-shadow:0 14px 30px -10px #b03f26cc}.final-steps span:last-child{color:#0f1b3a;background:var(--color-highlight);border-color:var(--color-highlight)}@media (width>=960px){.final-inner{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}.final-steps{display:flex}}.final h2 em{color:#ffb199}.final .section-lead{color:var(--color-text-inverse-muted);margin-bottom:30px}.site-footer{border-top:1px solid var(--color-border);background:var(--color-surface)}.footer-grid{gap:28px;padding-block:48px 28px;display:grid}.footer-brand p{max-width:24rem;color:var(--color-text-muted);margin-top:14px;font-size:.9375rem}.footer-nav{flex-wrap:wrap;gap:8px;font-size:.9375rem;font-weight:600;display:flex}.footer-nav a{min-height:48px;color:var(--color-text-muted);border-radius:10px;align-items:center;padding:0 12px;text-decoration:none;display:inline-flex}.footer-nav a:hover,.footer-nav a:active{color:var(--color-text);background:var(--color-bg-subtle)}.footer-legal{color:var(--color-text-muted);padding-bottom:40px;font-size:.8125rem}.footer-legal p{border-top:1px solid var(--color-border);max-width:48rem;padding-top:24px}@media (width>=760px){.footer-grid{grid-template-columns:1.2fr 1fr;align-items:start}.footer-nav{justify-content:flex-end}}.waitlist-card{gap:var(--space-4);max-width:28rem;margin-top:var(--space-5);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);display:grid;position:relative}.waitlist-soon{font-weight:var(--font-weight-bold);margin:0}.waitlist-note{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.waitlist-status{font-weight:var(--font-weight-bold);margin:0}.waitlist-trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.test-app-line{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0;display:flex}.test-app-link{align-items:center;min-height:48px;font-weight:700;display:inline-flex}.test-app-note{color:var(--color-text-muted);font-size:.8125rem;font-weight:500}.final .test-app-note,.site-footer .test-app-note{color:var(--color-text-muted)}.pricing{gap:16px;display:grid}.price-card{padding:var(--space-6) var(--space-5)}.price-card h3{font-size:1.125rem}.price-amount{font-family:var(--font-display);font-size:2.5rem;font-weight:var(--font-weight-brand);letter-spacing:var(--tracking-brand);line-height:var(--leading-tight);margin-top:12px}.price-period{color:var(--color-text-muted);margin-top:4px}.price-points{gap:8px;margin-top:18px;display:grid}.price-points li{align-items:center;gap:8px;display:flex}.legal-grid{gap:28px;display:grid}.legal-grid h2{font-family:var(--font-display);font-size:1.5rem;font-weight:var(--font-weight-brand);letter-spacing:var(--tracking-brand);line-height:var(--leading-tight)}.legal-grid p{color:var(--color-text-muted);margin-top:8px}.legal-doc{padding:clamp(40px,6vw,72px) 0}.legal-doc-inner{max-width:44rem}.legal-doc h1{font-size:clamp(2rem,5vw,3rem)}.legal-doc h2{font-family:var(--font-display);font-size:1.5rem;font-weight:var(--font-weight-brand);letter-spacing:var(--tracking-brand);line-height:var(--leading-tight);margin-top:36px}.legal-doc p,.legal-doc li{color:var(--color-text-muted);margin-top:12px;font-size:1.0625rem}.legal-doc a{color:var(--color-primary-text);text-underline-offset:3px;text-decoration:underline}.legal-doc ul{padding-left:1.25rem;list-style:outside}.not-found{padding:clamp(40px,6vw,72px) 0}.not-found-inner{max-width:40rem}.not-found h1{font-size:clamp(2rem,5vw,3rem)}.not-found .lead{margin-top:16px}.not-found-phrase{color:var(--color-text-muted);margin-top:12px;font-size:1.0625rem}.not-found .cta-row{margin-top:28px}@media (width>=760px){.pricing{grid-template-columns:repeat(3,minmax(0,1fr))}.legal-grid{grid-template-columns:1fr 1fr}}.pg-spinner{--_size:var(--size-icon-md);width:var(--_size);height:var(--_size);border:var(--border-thick) solid currentColor;border-radius:var(--radius-pill);animation:pg-spin calc(var(--duration-slower) * 1.6) linear infinite;border-right-color:#0000;flex:none;display:inline-block}.pg-spinner--sm{--_size:var(--size-icon-sm)}.pg-spinner--lg{--_size:var(--size-icon-xl);border-width:var(--border-focus)}@keyframes pg-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.pg-spinner{opacity:.6;animation:none}}.pg-button{--_height:var(--size-control-md);--_pad:var(--space-5);--_radius:var(--radius-sm);--_font:var(--font-size-md);--_bg:var(--color-primary);--_bg-hover:var(--color-primary-hover);--_bg-active:var(--color-primary-pressed);--_fg:var(--color-on-primary);--_shadow:none;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--_height);padding:0 var(--_pad);border-radius:var(--_radius);color:var(--_fg);background:var(--_bg);box-shadow:var(--_shadow);font:inherit;font-size:var(--_font);font-weight:var(--font-weight-bold);line-height:var(--leading-snug);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:transform var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);border:0;text-decoration:none;display:inline-flex;position:relative}.pg-button:hover{background:var(--_bg-hover)}.pg-button:active{background:var(--_bg-active,var(--_bg-hover))}.pg-button svg{flex:none}.pg-button--sm{--_height:var(--size-tap-min);--_pad:var(--space-4);--_radius:var(--radius-sm);--_font:var(--font-size-sm)}.pg-button--lg{--_height:var(--size-control-lg);--_pad:var(--space-6);--_radius:var(--radius-sm);--_font:var(--font-size-lg)}.pg-button--full{width:100%;display:flex}.pg-button--accent{--_bg:var(--color-accent);--_bg-hover:var(--color-accent-hover);--_bg-active:var(--color-accent-edge);--_fg:var(--color-on-accent);--_shadow:none}.pg-button--secondary{--_bg:var(--color-surface-raised);--_bg-hover:var(--color-bg-subtle);--_fg:var(--color-text);--_shadow:inset 0 0 0 var(--border-thin) var(--color-border-strong)}.pg-button--ghost{--_bg:transparent;--_bg-hover:var(--color-primary-soft);--_fg:var(--color-primary-text);--_shadow:none}.pg-button--danger{--_bg:var(--color-error);--_bg-hover:var(--color-error);--_fg:var(--color-on-error);--_shadow:none}.pg-button--inverse{--_bg:var(--color-text-inverse);--_bg-hover:var(--color-surface);--_fg:var(--color-surface-inverse);--_shadow:none}.pg-button:disabled,.pg-button[aria-disabled=true]:not(.pg-button--loading){--_bg:var(--color-bg-subtle);--_bg-hover:var(--color-bg-subtle);--_fg:var(--color-text-subtle);--_shadow:none;cursor:not-allowed;transform:none}.pg-button--loading{cursor:progress;transform:none}.pg-button--ghost:disabled{--_bg:transparent}.pg-icon-button{--_size:var(--size-control-md);width:var(--_size);height:var(--_size);border-radius:var(--radius-pill);color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.pg-icon-button:hover{color:var(--color-text);background:var(--color-bg-subtle)}.pg-icon-button--sm{--_size:var(--size-tap-min)}.pg-icon-button:active:not(:disabled){background:var(--color-bg-subtle)}.pg-icon-button--lg{--_size:var(--size-control-lg)}.pg-icon-button--secondary{color:var(--color-text);background:var(--color-surface-raised);box-shadow:inset 0 0 0 var(--border-thin) var(--color-border-strong)}.pg-icon-button--primary{color:var(--color-on-primary);background:var(--color-primary)}.pg-icon-button--primary:hover{color:var(--color-on-primary);background:var(--color-primary-hover)}.pg-icon-button--inverse{color:var(--color-text-inverse)}.pg-icon-button--inverse:hover{color:var(--color-text-inverse);background:var(--color-border-inverse)}.pg-icon-button[aria-pressed=true]{color:var(--color-primary-text);background:var(--color-primary-soft)}.pg-icon-button:disabled{color:var(--color-text-subtle);box-shadow:none;cursor:not-allowed;background:0 0}.pg-choice{gap:var(--space-3);width:100%;min-height:var(--size-tap-row);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-items:center;display:flex}.pg-choice:active{background:var(--color-bg-subtle)}.pg-choice:has(.pg-choice__input:checked){background:var(--color-primary-soft);box-shadow:inset 0 0 0 var(--border-thin) var(--color-primary)}.pg-choice:has(.pg-choice__input:checked):active{background:var(--color-primary-softer)}.pg-choice:has(.pg-choice__input:focus-visible){outline:var(--border-focus) solid var(--color-focus);outline-offset:var(--border-thick)}.pg-choice-group--horizontal .pg-choice{width:auto;min-width:var(--size-tap-min);flex:auto}.pg-choice__control{width:var(--size-icon-lg);height:var(--size-icon-lg);flex:none;place-items:center;display:inline-grid;position:relative}.pg-choice__input{z-index:var(--z-raised);opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.pg-choice__input:focus-visible{outline:none}.pg-choice__input:disabled{cursor:not-allowed}.pg-choice__box{width:var(--size-icon-lg);height:var(--size-icon-lg);border-radius:var(--radius-2xs);background:var(--color-surface-raised);box-shadow:inset 0 0 0 var(--border-thick) var(--color-border-strong);color:#0000;transition:background-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);place-items:center;display:grid}.pg-choice__box--radio{border-radius:var(--radius-pill)}.pg-choice__input:hover+.pg-choice__box{box-shadow:inset 0 0 0 var(--border-thick) var(--color-primary)}.pg-choice__input:checked+.pg-choice__box,.pg-choice__input:indeterminate+.pg-choice__box:not(.pg-choice__box--radio){background:var(--color-primary);box-shadow:none;color:var(--color-on-primary)}.pg-choice__input:checked+.pg-choice__box--radio{background:var(--color-surface-raised);box-shadow:inset 0 0 0 var(--border-thick) var(--color-primary), inset 0 0 0 calc(var(--space-1-5)) var(--color-surface-raised), inset 0 0 0 var(--size-icon-lg) var(--color-primary)}.pg-choice__input[aria-invalid=true]+.pg-choice__box{box-shadow:inset 0 0 0 var(--border-thick) var(--color-error)}.pg-choice__input:disabled+.pg-choice__box{background:var(--color-bg-subtle);box-shadow:inset 0 0 0 var(--border-thick) var(--color-border)}.pg-choice__input:disabled:checked+.pg-choice__box{color:var(--color-text-subtle)}.pg-choice__text{gap:var(--space-0-5);min-width:0;display:grid}.pg-choice__label{align-items:center;gap:var(--space-2);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug);cursor:pointer;flex-wrap:wrap;display:flex}.pg-choice__description{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.pg-choice--disabled{cursor:not-allowed}.pg-choice--disabled .pg-choice__label{color:var(--color-text-muted);cursor:not-allowed}.pg-choice-group{border:0;min-width:0;margin:0;padding:0}.pg-choice-group__legend{margin-bottom:var(--space-3);font-weight:var(--font-weight-bold);padding:0}.pg-choice-group__legend.is-hidden{margin:0;padding:0}.pg-choice-group__items{gap:var(--space-2);display:grid}.pg-choice-group--horizontal .pg-choice-group__items{gap:var(--space-2);flex-wrap:wrap;display:flex}.pg-switch{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:var(--size-tap-row);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;display:flex}.pg-switch:active{background:var(--color-bg-subtle)}.pg-switch:has(.pg-choice__input:focus-visible){outline:var(--border-focus) solid var(--color-focus);outline-offset:var(--border-thick)}.pg-switch__control{width:calc(var(--size-target-comfortable) + var(--space-2));height:var(--size-tap-min);flex:none;place-items:center;display:inline-grid;position:relative}.pg-switch__track{width:var(--size-tap-min);height:var(--size-icon-lg);padding:var(--space-0-5);border-radius:var(--radius-pill);background:var(--color-border-strong);transition:background-color var(--duration-fast) var(--ease-standard);align-items:center;display:flex}.pg-switch__thumb{width:var(--size-icon-md);height:var(--size-icon-md);border-radius:var(--radius-pill);background:var(--color-surface-raised);box-shadow:var(--shadow-xs);transition:transform var(--duration-base) var(--ease-spring)}.pg-switch .pg-choice__input:checked+.pg-switch__track{background:var(--color-primary)}.pg-switch .pg-choice__input:checked+.pg-switch__track .pg-switch__thumb{transform:translateX(var(--size-icon-md))}.pg-switch .pg-choice__input:disabled+.pg-switch__track{opacity:.5}.pg-field{gap:var(--space-1-5);display:grid}.pg-field__label{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);line-height:var(--leading-snug);color:var(--color-text)}.pg-field__optional{font-weight:var(--font-weight-regular);color:var(--color-text-muted)}.pg-field__hint{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text-muted)}.pg-field__hint--warning{color:var(--color-warning);font-weight:var(--font-weight-semibold)}.pg-field__message{gap:var(--space-1-5);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--leading-normal);align-items:flex-start;display:flex}.pg-field__message svg{margin-top:var(--space-0-5)}.pg-field__message.is-error{color:var(--color-error)}.pg-field__message.is-success{color:var(--color-success)}.pg-field--disabled .pg-field__label{color:var(--color-text-muted)}.pg-input{--_border:var(--color-border-strong);--_bg:var(--color-surface-raised);align-items:center;gap:var(--space-2);min-height:var(--size-target-comfortable);padding:0 var(--space-4);border-radius:var(--radius-sm);background:var(--_bg);box-shadow:inset 0 0 0 var(--border-thin) var(--_border);transition:box-shadow var(--duration-fast) var(--ease-standard);display:flex}.pg-input--lg{min-height:var(--size-control-lg);border-radius:var(--radius-sm)}.pg-input:hover{--_border:var(--color-text-muted)}.pg-input:has(:focus-visible){--_border:var(--color-primary);box-shadow:inset 0 0 0 var(--border-thick) var(--_border), 0 0 0 var(--border-focus) var(--color-primary-soft)}.pg-input__control{min-width:0;height:100%;min-height:inherit;color:var(--color-text);font-size:max(var(--font-size-base), 1rem);background:0 0;border:0;flex:1;padding:0}.pg-input--lg .pg-input__control{font-size:var(--font-size-lg)}.pg-input__control:focus-visible{outline:none}.pg-input__control::placeholder{color:var(--color-text-muted);opacity:1}.pg-input__icon{color:var(--color-text-muted)}.pg-input__end{margin-right:calc(-1 * var(--space-2));align-items:center;display:inline-flex}.pg-field-status{padding-inline:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);white-space:nowrap}.pg-field-status.is-success{color:var(--color-success)}.pg-field-status.is-error{color:var(--color-error)}.pg-field-status.is-almost{color:var(--color-warning)}:is(.pg-input:has(.pg-input__control[aria-invalid=true]),.pg-input--error){--_border:var(--color-error)}.pg-input:has(.pg-input__control:disabled){--_bg:var(--color-bg-subtle);--_border:var(--color-border);color:var(--color-text-muted)}.pg-input:has(.pg-input__control[readonly]){--_bg:var(--color-bg-subtle)}.pg-input.pg-input--success,.pg-input.pg-input--almost,.pg-input.pg-input--error{--_bg:var(--color-surface-raised);box-shadow:inset 0 0 0 var(--border-thick) var(--_border)}.pg-input.pg-input--success{--_border:var(--color-success)}.pg-input.pg-input--almost{--_border:var(--color-warning)}.pg-input__toggle{align-items:center;gap:var(--space-1-5);min-width:var(--size-tap-min);min-height:var(--size-tap-min);padding:0 var(--space-2-5);border-radius:var(--radius-xs);color:var(--color-primary-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;border:0;display:inline-flex}.pg-input__toggle:hover,.pg-input__toggle:active{background:var(--color-primary-soft)}.pg-textarea{gap:var(--space-1);display:grid}.pg-textarea__control{width:100%;min-height:calc(var(--size-target-comfortable) * 2);padding:var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-raised);box-shadow:inset 0 0 0 var(--border-thin) var(--color-border-strong);color:var(--color-text);font-size:max(var(--font-size-base), 1rem);line-height:var(--leading-normal);resize:vertical;field-sizing:content;border:0}.pg-textarea__control:focus-visible{box-shadow:inset 0 0 0 var(--border-thick) var(--color-primary), 0 0 0 var(--border-focus) var(--color-primary-soft);outline:none}.pg-textarea__control[aria-invalid=true]{box-shadow:inset 0 0 0 var(--border-thin) var(--color-error)}.pg-textarea--error .pg-textarea__control{box-shadow:inset 0 0 0 var(--border-thick) var(--color-error)}.pg-textarea--success .pg-textarea__control{box-shadow:inset 0 0 0 var(--border-thick) var(--color-success)}.pg-textarea--almost .pg-textarea__control{box-shadow:inset 0 0 0 var(--border-thick) var(--color-warning)}.pg-textarea__control::placeholder{color:var(--color-text-muted);opacity:1}.pg-textarea__control:disabled{background:var(--color-bg-subtle);color:var(--color-text-muted)}.pg-textarea__count{font-size:var(--font-size-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums;justify-self:end}.pg-select{align-items:center;display:flex;position:relative}.pg-select__control{appearance:none;width:100%;min-height:var(--size-target-comfortable);padding:0 calc(var(--space-4) * 2 + var(--size-icon-md)) 0 var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-raised);box-shadow:inset 0 0 0 var(--border-thin) var(--color-border-strong);color:var(--color-text);font-size:max(var(--font-size-base), 1rem);cursor:pointer;border:0}.pg-select__control:focus-visible{box-shadow:inset 0 0 0 var(--border-thick) var(--color-primary), 0 0 0 var(--border-focus) var(--color-primary-soft);outline:none}.pg-select__control[aria-invalid=true]{box-shadow:inset 0 0 0 var(--border-thin) var(--color-error)}.pg-select__control:disabled{background:var(--color-bg-subtle);color:var(--color-text-muted);cursor:not-allowed}.pg-select__chevron{right:var(--space-4);color:var(--color-text-muted);pointer-events:none;position:absolute}.pg-logo{align-items:center;gap:var(--space-2-5);display:inline-flex}.pg-logo__word{font-family:var(--font-display);font-weight:var(--font-weight-brand);font-size:var(--font-size-2xl);letter-spacing:var(--tracking-brand);color:var(--color-text)}.pg-logo--sm{gap:var(--space-2)}.pg-logo--sm .pg-logo__word{font-size:var(--font-size-xl)}
