@font-face{font-family:Fixel Display;font-style:normal;font-weight:600;font-display:swap;src:url(/site-assets/fonts/FixelDisplay-SemiBold.woff2) format("woff2")}@font-face{font-family:Fixel Text;font-style:normal;font-weight:400;font-display:swap;src:url(/site-assets/fonts/FixelText-Regular.woff2) format("woff2")}@font-face{font-family:Fixel Text;font-style:normal;font-weight:500;font-display:swap;src:url(/site-assets/fonts/FixelText-Medium.woff2) format("woff2")}@font-face{font-family:Fixel Text;font-style:normal;font-weight:600;font-display:swap;src:url(/site-assets/fonts/FixelText-SemiBold.woff2) format("woff2")}:root{--bg-base: #fdfcfa;--bg-raised: #ffffff;--bg-surface: #f3f2f0;--bg-inset: #f7f6f4;--bg-hover: #efeeeb;--text-primary: #2e2e29;--text-secondary: #44443d;--text-tertiary: #696960;--text-muted: #8b8b82;--text-inverse: #fdfcfa;--accent: #2465c7;--on-accent: #ffffff;--cta-bg: color-mix(in srgb, var(--accent) 12%, var(--bg-base));--cta-bg-hover: color-mix(in srgb, var(--accent) 18%, var(--bg-base));--cta-border: color-mix(in srgb, var(--accent) 12%, transparent);--cta-text: color-mix(in srgb, var(--accent) 80%, #000000);--cta-shadow: inset 0 1px 0 0 #ffffff73, 0 1px 2px 0 #00000014;--header-glass: #fdfcfab8;--border: #39393414;--border-strong: #39393424;--tile: color-mix(in srgb, var(--text-secondary) 4%, transparent);--tile-hover: color-mix(in srgb, var(--text-secondary) 7%, transparent);--tile-inset: color-mix(in srgb, var(--text-secondary) 6%, transparent);--raised-sheen: none;--raised-shadow: inset 0 0 0 1px color-mix(in srgb, var(--text-secondary) 10%, transparent), 0 1px 2px 0 #0000000f;--panel-edge-shadow: 0 0 0 1px #00000014, 0 1px 2px 0 #0000000f, 0 24px 60px -16px #39393438;--glass-floating-shadow: inset 0 1px 0 0 #fffc, inset 0 0 0 1px #0000000a, 0 0 0 1px #0000001a, 0 1px 2px -.5px #00000014, 0 4px 8px -2px #00000014, 0 12px 20px -4px #00000014;--pill-glass-bg: color-mix(in srgb, var(--bg-surface) 52%, transparent);--max-w: 1200px;--radius: 6px;--radius-control: 9px;--radius-button: 9px;--radius-lg: 12px;--radius-xl: 16px;--ease-out: cubic-bezier(.16, 1, .3, 1);--font-display: "Fixel Display", system-ui, sans-serif;--font-body: "Fixel Text", system-ui, sans-serif;--font-mono: "Cascadia Mono", "SF Mono", monospace;--success: #237457;--success-wash: #f1faf6;--success-border: #cfe9de;--warning: #946019;--warning-wash: #fff8ee;--warning-border: #f0dbc4;--danger: #b42335;--danger-wash: #fdf2f3;--wave-surface: #f1f6ff;--wave-unplayed: #7889a5;--wave-playhead: #142b54;--writing: #8150bd;--writing-soft: #f3edff;--writing-border: #ded5f0;--writing-field: #faf7ff;--speaking: #d82d87;--speaking-soft: #fff0f8;--canvas-top: var(--bg-base);--canvas-bottom: var(--bg-base);--surface: var(--bg-raised);--mini-top: var(--bg-raised);--mini-bottom: var(--bg-surface);--ink: var(--text-primary);--muted: var(--text-tertiary);--soft: var(--bg-hover);--radius-card: var(--radius-lg);color-scheme:light;--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238b8b82' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--btn-secondary-bg: var(--bg-surface);--shadow-inset: inset 0 1px 2px #0003;--segmented-active-bg: var(--bg-surface);--footer-select-bg: var(--bg-surface);--home-art: radial-gradient(42rem 26rem at 16% 6%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 70%), radial-gradient(34rem 22rem at 84% 4%, color-mix(in srgb, var(--speaking) 9%, transparent), transparent 70%), radial-gradient(40rem 26rem at 52% 34%, color-mix(in srgb, var(--writing) 7%, transparent), transparent 72%);--home-art-veil: color-mix(in srgb, var(--bg-base) 30%, transparent)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--btn-secondary-bg: var(--bg-base);--shadow-inset: inset 0 1px 2px #3939340a;--segmented-active-bg: var(--bg-base);--footer-select-bg: var(--bg-base)}}:root[data-theme=light]{--btn-secondary-bg: var(--bg-base);--shadow-inset: inset 0 1px 2px #3939340a;--segmented-active-bg: var(--bg-base);--footer-select-bg: var(--bg-base)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-base: #120f0e;--bg-raised: #171616;--bg-surface: #1b1918;--bg-inset: #0e0c0b;--bg-hover: #221f1e;--text-primary: #ebe7dd;--text-secondary: #dbd7cc;--text-tertiary: #949187;--text-muted: #77746c;--text-inverse: #120f0e;--accent: #ffc56d;--on-accent: #101318;--cta-bg: color-mix(in srgb, var(--accent) 15%, var(--bg-base));--cta-bg-hover: color-mix(in srgb, var(--accent) 22%, var(--bg-base));--cta-border: color-mix(in srgb, var(--accent) 20%, transparent);--cta-text: var(--accent);--cta-shadow: inset 0 1px 0 0 #dbd7cc04, 0 1px 1px 0 #00000047, 0 2px 3px -2px #0003;--header-glass: #120f0e9e;--border: #dbd7cc14;--border-strong: #dbd7cc24;--tile: color-mix(in srgb, var(--text-secondary) 4%, transparent);--tile-hover: color-mix(in srgb, var(--text-secondary) 7%, transparent);--tile-inset: color-mix(in srgb, var(--text-secondary) 6%, transparent);--raised-sheen: linear-gradient(180deg, color-mix(in srgb, var(--text-secondary) 1%, transparent), transparent 50%);--raised-shadow: inset 0 1px 0 0 color-mix(in srgb, var(--text-secondary) 1.5%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--text-secondary) 6%, transparent), 0 1px 1px 0 #00000047, 0 2px 3px -2px #0003;--panel-edge-shadow: inset 0 1px 0 0 #ffffff0d, 0 0 0 1px #00000080, 0 1px 2px 0 #0003, 0 4px 8px -2px #0000002e, 0 12px 24px -8px #00000038;--glass-floating-shadow: inset 0 1px 0 0 #ffffff0f, inset 0 0 0 1px #ffffff14, 0 0 0 1px #0000005c, 0 1px 1px -.5px #00000038, 0 3px 3px -1.5px #0003, 0 6px 6px -3px #00000029;--pill-glass-bg: color-mix(in srgb, var(--bg-surface) 52%, transparent);--success: #66d19e;--success-wash: #1c2a22;--success-border: #2e4638;--warning: #ffb454;--warning-wash: #2a2118;--warning-border: #4d3b22;--danger: #ff7a70;--danger-wash: #2b1a1a;--wave-surface: #252a32;--wave-unplayed: #8b8f9c;--wave-playhead: #f8efe2;--writing: #c9a6f2;--writing-soft: #2b2338;--writing-border: #43364f;--writing-field: #241f2e;--speaking: #ff7ab8;--speaking-soft: #2e1a26;color-scheme:dark;--home-art: radial-gradient(42rem 26rem at 16% 6%, color-mix(in srgb, var(--accent) 20%, transparent), transparent 70%), radial-gradient(34rem 22rem at 84% 4%, color-mix(in srgb, var(--speaking) 15%, transparent), transparent 70%), radial-gradient(40rem 26rem at 52% 34%, color-mix(in srgb, var(--writing) 13%, transparent), transparent 72%);--home-art-veil: color-mix(in srgb, var(--bg-base) 12%, transparent)}}:root[data-theme=dark]{--bg-base: #120f0e;--bg-raised: #171616;--bg-surface: #1b1918;--bg-inset: #0e0c0b;--bg-hover: #221f1e;--text-primary: #ebe7dd;--text-secondary: #dbd7cc;--text-tertiary: #949187;--text-muted: #77746c;--text-inverse: #120f0e;--accent: #ffc56d;--on-accent: #101318;--cta-bg: color-mix(in srgb, var(--accent) 15%, var(--bg-base));--cta-bg-hover: color-mix(in srgb, var(--accent) 22%, var(--bg-base));--cta-border: color-mix(in srgb, var(--accent) 20%, transparent);--cta-text: var(--accent);--cta-shadow: inset 0 1px 0 0 #dbd7cc04, 0 1px 1px 0 #00000047, 0 2px 3px -2px #0003;--header-glass: #120f0e9e;--border: #dbd7cc14;--border-strong: #dbd7cc24;--tile: color-mix(in srgb, var(--text-secondary) 4%, transparent);--tile-hover: color-mix(in srgb, var(--text-secondary) 7%, transparent);--tile-inset: color-mix(in srgb, var(--text-secondary) 6%, transparent);--raised-sheen: linear-gradient(180deg, color-mix(in srgb, var(--text-secondary) 1%, transparent), transparent 50%);--raised-shadow: inset 0 1px 0 0 color-mix(in srgb, var(--text-secondary) 1.5%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--text-secondary) 6%, transparent), 0 1px 1px 0 #00000047, 0 2px 3px -2px #0003;--panel-edge-shadow: inset 0 1px 0 0 #ffffff0d, 0 0 0 1px #00000080, 0 1px 2px 0 #0003, 0 4px 8px -2px #0000002e, 0 12px 24px -8px #00000038;--glass-floating-shadow: inset 0 1px 0 0 #ffffff0f, inset 0 0 0 1px #ffffff14, 0 0 0 1px #0000005c, 0 1px 1px -.5px #00000038, 0 3px 3px -1.5px #0003, 0 6px 6px -3px #00000029;--pill-glass-bg: color-mix(in srgb, var(--bg-surface) 52%, transparent);--success: #66d19e;--success-wash: #1c2a22;--success-border: #2e4638;--warning: #ffb454;--warning-wash: #2a2118;--warning-border: #4d3b22;--danger: #ff7a70;--danger-wash: #2b1a1a;--wave-surface: #252a32;--wave-unplayed: #8b8f9c;--wave-playhead: #f8efe2;--writing: #c9a6f2;--writing-soft: #2b2338;--writing-border: #43364f;--writing-field: #241f2e;--speaking: #ff7ab8;--speaking-soft: #2e1a26;color-scheme:dark;--home-art: radial-gradient(42rem 26rem at 16% 6%, color-mix(in srgb, var(--accent) 20%, transparent), transparent 70%), radial-gradient(34rem 22rem at 84% 4%, color-mix(in srgb, var(--speaking) 15%, transparent), transparent 70%), radial-gradient(40rem 26rem at 52% 34%, color-mix(in srgb, var(--writing) 13%, transparent), transparent 72%);--home-art-veil: color-mix(in srgb, var(--bg-base) 12%, transparent)}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px;overflow-x:clip;scrollbar-gutter:stable}@media(max-width:768px){html{font-size:15px}}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-base);-webkit-font-smoothing:antialiased;line-height:1.6}body:after{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}:lang(ar){letter-spacing:0}:lang(ja),:lang(zh){line-height:1.7}.page{width:min(calc(100% - 3rem),60rem);margin:0 auto}.section{padding-top:clamp(5rem,11vw,9rem)}.page.section{padding-top:clamp(3rem,7vw,5.5rem);padding-bottom:clamp(4rem,9vw,7rem)}.page .h-page{font-size:clamp(2.25rem,4.5vw,3.25rem);line-height:1.08;letter-spacing:-.03em;text-wrap:balance;max-width:44rem}.page .h-page+.t-body{margin:1rem 0 clamp(2.5rem,5vw,3.5rem)}.page .t-meta+.h-page{margin:.5rem 0 clamp(2.5rem,5vw,3.5rem)}.h-page{font-family:var(--font-display);font-size:clamp(2.375rem,5.5vw,3.75rem);line-height:1.04;letter-spacing:-.035em;font-weight:600;max-width:19ch;color:var(--text-primary)}.h-section{font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,1.875rem);line-height:1.2;letter-spacing:-.02em;font-weight:600;max-width:30ch;color:var(--text-primary)}.h-section+.t-body{margin-top:.75rem}.t-body{font-size:1.0625rem;line-height:1.6;color:var(--text-tertiary);max-width:40rem;text-wrap:pretty}.t-meta{font-size:.8125rem;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.t-action{font-size:.875rem;font-weight:400;color:var(--text-tertiary)}::selection{color:inherit;background:color-mix(in srgb,var(--accent) 25%,transparent)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}[id],.docs-body h2{scroll-margin-top:96px}.button,.button-secondary,.btn,.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.4375rem;min-height:2.25rem;padding:.375rem .875rem;border-radius:var(--radius-button);font-size:.875rem;font-family:var(--font-body);white-space:nowrap;cursor:pointer;transition:background-color .15s var(--ease-out),color .15s var(--ease-out)}.button,.btn-primary{border:1px solid var(--cta-border);background-color:var(--cta-bg);background-image:var(--raised-sheen);color:var(--cta-text);box-shadow:var(--cta-shadow);font-weight:600;text-decoration:none}.button:hover,.btn-primary:hover{background-color:var(--cta-bg-hover);text-decoration:none}.button-secondary,.btn-outline{border:0;background-color:var(--btn-secondary-bg);background-image:var(--raised-sheen);color:var(--text-secondary);box-shadow:var(--raised-shadow);font-weight:500;text-decoration:none}.button-secondary:hover,.btn-outline:hover{color:var(--text-primary);text-decoration:none;background-image:linear-gradient(var(--tile-hover),var(--tile-hover))}.button:active,.btn-primary:active,.button-secondary:active,.btn-outline:active{box-shadow:none;background-image:none}.btn-sm{min-height:1.875rem;padding:.25rem .75rem;font-size:.8125rem}.topbar-wrap{position:sticky;top:0;z-index:100;padding-top:calc(env(safe-area-inset-top) + 1.25rem);padding-bottom:.75rem;background:transparent}.topbar-blur{display:none}.topbar-blur>div{position:absolute;inset:0}.topbar-blur>div:nth-child(1){backdrop-filter:blur(4px);mask-image:linear-gradient(#000,transparent 30%)}.topbar-blur>div:nth-child(2){backdrop-filter:blur(4px);mask-image:linear-gradient(#000 0% 20%,transparent 40%)}.topbar-blur>div:nth-child(3){backdrop-filter:blur(2.5px);mask-image:linear-gradient(transparent 10%,#000 20% 40%,transparent 60%)}.topbar-blur>div:nth-child(4){backdrop-filter:blur(1.5px);mask-image:linear-gradient(transparent 30%,#000 40% 60%,transparent 100%)}.topbar-inner{width:min(calc(100% - 3rem),var(--max-w));margin:0 auto;min-height:4rem;display:flex;align-items:center;justify-content:space-between}.nav-cluster,.nav-side{display:flex;align-items:center;height:2.875rem;border-radius:999px;background:var(--pill-glass-bg);backdrop-filter:blur(26px) saturate(1.16);box-shadow:var(--glass-floating-shadow)}.nav-cluster{gap:.375rem;padding:0 .3125rem}.nav-side{gap:.25rem;padding:0 .3125rem}.nav{display:flex;align-items:center;gap:.125rem}.nav a{font-family:var(--font-body);color:color-mix(in srgb,var(--text-secondary) 80%,transparent);border-radius:999px;padding:.5rem .75rem;font-size:.875rem;font-weight:500;transition:color .15s var(--ease-out),background .15s var(--ease-out)}.nav a:hover{color:var(--text-primary);text-decoration:none}.nav a.active{color:var(--text-primary);background:var(--tile-inset)}.nav-logo{display:inline-flex;align-items:center;gap:.625rem;font-family:var(--font-mono);font-size:.875rem;font-weight:500;letter-spacing:.02em;color:var(--text-primary);padding:.35rem .25rem .35rem .625rem;transition:color .2s}.nav-logo span{display:none}.nav-logo:hover{color:var(--accent);text-decoration:none}.nav-logo img{width:24px;height:24px;border-radius:6px;display:block;flex:none}.locale-select{-webkit-appearance:none;appearance:none;background-color:var(--tile);color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;height:2.25rem;font-size:.8125rem;padding:0 1.5rem 0 .625rem;background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right .5rem center;cursor:pointer;transition:color .15s var(--ease-out),background .15s var(--ease-out)}.locale-select:hover{color:var(--text-primary)}[dir=rtl] .locale-select{background-position:left .5rem center;padding:0 .625rem 0 1.5rem}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:0;border-radius:999px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:color .15s var(--ease-out),background .15s var(--ease-out)}.theme-toggle:hover{color:var(--text-primary);background:var(--tile-inset)}.theme-toggle svg{width:1rem;height:1rem}.nav-cta{min-height:2.25rem;padding:.375rem 1rem;border-radius:999px;font-size:.875rem;font-weight:600;margin-left:.25rem}.nav-toggle{display:none}.panel{background:var(--tile);border:0;border-radius:var(--radius-lg);padding:1.25rem}.panel-soft{background:var(--tile);border-color:transparent}.panel-window{margin-top:2rem;padding:0;overflow:hidden}.home-hero{position:relative;isolation:isolate;padding-top:clamp(3rem,7vw,5.5rem);--art-bottom: calc(min(40rem, 100vw - 3rem)*.26) }.home-art{position:absolute;z-index:-1;inset:-8rem 0 var(--art-bottom);pointer-events:none;background:var(--home-art);mask-image:linear-gradient(to bottom,#000 78%,transparent)}.home-art:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to right,var(--border) 0 1px,transparent 1px 64px),repeating-linear-gradient(to bottom,var(--border) 0 1px,transparent 1px 64px);mask-image:radial-gradient(56rem 30rem at 50% 8%,#000,transparent 72%)}.home-art:after{content:"";position:absolute;inset:0;background:var(--home-art-veil)}.home-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--text-tertiary)}.home-eyebrow:before{content:"";width:.375rem;height:.375rem;border-radius:999px;background:var(--accent)}:lang(ar) .home-eyebrow{letter-spacing:0}.home-col{width:min(calc(100% - 3rem),60rem);margin:0 auto}.home-doc>*{max-width:40rem}@media(min-width:900px){.home-doc{display:grid;grid-template-columns:16rem minmax(0,1fr);column-gap:3rem;align-items:start}.home-doc>.h-section{grid-column:1}.home-doc>:not(.h-section){grid-column:2}}.home-hero .h-page{text-shadow:0 2px 28px color-mix(in srgb,var(--bg-base) 55%,transparent)}.home-sub{max-width:32rem;margin-top:1.25rem;font-size:1.125rem;line-height:1.6;color:var(--text-secondary);text-wrap:pretty;text-shadow:0 0 3px color-mix(in srgb,var(--bg-base) 55%,transparent),0 1px 18px color-mix(in srgb,var(--bg-base) 90%,transparent)}.home-cta{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:2rem}.home-stage{margin-top:clamp(3.5rem,9vw,8rem);padding:0 1.5rem}.home-stage .demo{max-width:72rem;box-shadow:var(--panel-edge-shadow)}.home-stage-caption{text-align:center;margin-top:.625rem}.home-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem;margin-top:1.5rem}.home-tile{display:flex;flex-direction:column;gap:.75rem;padding:1.125rem 1.25rem;border-radius:var(--radius-lg);background:var(--tile);transition:background-color .15s;text-decoration:none}.home-tile:hover{background:var(--tile-hover);text-decoration:none}.home-tile h3{font-size:.9375rem;font-weight:500;line-height:1.4;color:var(--text-primary);margin:0}.home-tile .t-body{font-size:.875rem}.home-tile .chip{border-radius:6px;color:var(--text-secondary);font-family:var(--font-mono)}.home-screens{display:flex;justify-content:center;align-items:center;gap:clamp(1rem,4vw,3rem);margin-top:0;padding:clamp(1.5rem,4vw,3rem) 1rem;background:var(--tile);border-radius:16px}.home-screens .phone{container-type:inline-size;flex:0 1 13rem;min-width:0;width:100%;height:auto;display:block;aspect-ratio:390 / 844;border:1px solid #d5e2f8;border-radius:calc(28 * var(--u));box-shadow:0 12px 32px #244e9120;overflow:hidden}.screens-gallery{display:grid;gap:clamp(2rem,4vw,3rem);margin-top:2rem;min-width:0}.screen-group{min-width:0}.screen-group-title{font-size:.9375rem;font-weight:600;color:var(--text-secondary);margin:0 0 1rem}.home-screens.dense .phone{flex-basis:11rem}.home-screens.dense .phone-screen{--u: calc(11rem / 390)}@media(max-width:900px){.home-screens{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.home-screens::-webkit-scrollbar{display:none}.home-screens .phone{flex:0 0 13rem}.home-screens.dense .phone{flex-basis:11rem}}.phone-screen{--u: calc(13rem / 390);--pm-accent: #2465c7;--pm-soft: #eaf3ff;height:100%;display:flex;flex-direction:column;overflow:hidden;font-size:calc(16 * var(--u));direction:ltr;text-align:left;background:linear-gradient(155deg,#fff,#f4f8ff);color:#142b54}.pm-status{flex-shrink:0;height:calc(39.04 * var(--u));display:flex;align-items:center;justify-content:space-between;padding:calc(8.96 * var(--u)) calc(24 * var(--u)) 0;font-size:calc(11.04 * var(--u));font-weight:700;color:#1b2d4d}.pm-signals{display:flex;align-items:center;gap:calc(6.08 * var(--u));font-size:calc(16 * var(--u))}.pm-appbar{flex-shrink:0;min-height:calc(72 * var(--u));display:flex;align-items:center;gap:calc(8 * var(--u));padding:calc(3.04 * var(--u)) calc(16 * var(--u))}.pm-appbar h2{margin:0;flex:1;font-size:calc(18.08 * var(--u));font-weight:600;line-height:calc(26.08 * var(--u))}.pm-ib{display:inline-flex;align-items:center;justify-content:center;width:calc(48 * var(--u));height:calc(48 * var(--u));flex:0 0 calc(48 * var(--u));border-radius:50%;background:transparent;color:#2465c7}.pm-ib.push{margin-left:auto}.pm-ib.dim{opacity:.55}.pm-icon,.pm-icon-sm{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block;flex-shrink:0}.pm-icon{width:calc(24 * var(--u));height:calc(24 * var(--u))}.pm-icon-sm{width:calc(20 * var(--u));height:calc(20 * var(--u))}.pm-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:calc(8.96 * var(--u)) calc(16 * var(--u)) calc(20 * var(--u))}.pm-body.start{justify-content:flex-start}.pm-eyebrow{font-size:calc(12.96 * var(--u));line-height:calc(20 * var(--u));color:#536887;letter-spacing:calc(1.2 * var(--u));text-transform:uppercase;font-weight:400}.pm-h1{margin:calc(4.96 * var(--u)) 0 calc(8 * var(--u));font-size:calc(32 * var(--u));line-height:calc(40 * var(--u));font-weight:600}.pm-muted{font-size:calc(12.96 * var(--u));line-height:calc(20 * var(--u));color:#536887;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-split{display:flex;align-items:center;justify-content:space-between;gap:calc(12 * var(--u))}.pm-group{display:flex;align-items:center;gap:calc(4.96 * var(--u));font-size:calc(11.04 * var(--u));color:var(--pm-accent)}.pm-course{margin:calc(2.08 * var(--u)) 0;font-size:calc(20.96 * var(--u));line-height:1.28;letter-spacing:-calc(.48 * var(--u));font-weight:600}.pm-switch{display:flex;border:1px solid #d9e4f7;border-radius:calc(12 * var(--u));background:#eaf3ff;padding:calc(3.04 * var(--u));margin:calc(8 * var(--u)) 0;gap:calc(3.04 * var(--u));min-height:calc(56 * var(--u))}.pm-switch span{flex:1;display:flex;align-items:center;justify-content:center;padding:0 calc(4 * var(--u));color:#536887;font-size:calc(14.08 * var(--u));font-weight:500}.pm-switch .act{background:#fff;box-shadow:0 calc(2.08 * var(--u)) calc(8 * var(--u)) #203e6b0d;border-radius:calc(8 * var(--u));color:var(--pm-accent);font-weight:700}.pm-sentence{margin:calc(2.08 * var(--u)) 0 0;font-size:calc(28 * var(--u));line-height:calc(40 * var(--u));font-weight:400}.pm-w{color:#142b54}.pm-w.wa{background:var(--pm-soft);color:var(--pm-accent);border-radius:5px;box-shadow:inset 0 -3px var(--pm-accent);padding:0 2px}.pm-ta{display:flex;justify-content:flex-end}.pm-wave{flex-shrink:0;height:calc(44 * var(--u));margin:calc(4 * var(--u)) 0;position:relative}.pm-wave svg{display:block;width:100%;height:100%}.pm-footer{flex-shrink:0;padding:calc(8 * var(--u)) calc(16 * var(--u));background:#fff;border-top:1px solid #d5e2f8}.pm-progress{height:calc(4.96 * var(--u));border-radius:calc(10.08 * var(--u));background:#d5e2f8;overflow:hidden;margin:calc(12.96 * var(--u)) 0 calc(10.08 * var(--u))}.pm-progress>i{display:block;height:100%;border-radius:calc(10.08 * var(--u));background:linear-gradient(90deg,#2465c7,#1954b8)}.pm-progress>.purple{background:linear-gradient(90deg,#9a7be7,#d594d3)}.pm-timeline{display:flex;justify-content:space-between;margin:calc(4 * var(--u)) 0;font-size:calc(12.96 * var(--u));line-height:calc(20 * var(--u));color:#536887;font-variant-numeric:tabular-nums}.pm-transport{display:flex;align-items:center;justify-content:center;gap:calc(32 * var(--u));margin:calc(4 * var(--u)) 0}.pm-circle{width:calc(60 * var(--u));height:calc(60 * var(--u));flex:0 0 calc(60 * var(--u));border-radius:50%;background:var(--pm-accent);color:#fff;display:flex;align-items:center;justify-content:center}.pm-circle .pm-icon{width:calc(40 * var(--u));height:calc(40 * var(--u))}.pm-actions{display:flex;gap:calc(8 * var(--u));margin:calc(8 * var(--u)) 0 0}.pm-act{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:calc(8 * var(--u));min-height:calc(48 * var(--u));padding:calc(8 * var(--u)) calc(12 * var(--u));border:1px solid #d5e2f8;background:#fff;color:#142b54;border-radius:calc(12 * var(--u));font-size:calc(14.08 * var(--u));font-weight:500;white-space:nowrap;overflow:hidden}.pm-act.primary{background:var(--pm-accent);color:#fff;border-color:transparent}.pm-pill{display:inline-flex;align-items:center;padding:calc(4.96 * var(--u)) calc(8.96 * var(--u));border-radius:calc(12 * var(--u));font-size:calc(14.08 * var(--u));line-height:calc(20 * var(--u));font-weight:500;color:#8150bd;background:#f3edff;white-space:nowrap}.pm-inputs{display:flex;flex-wrap:wrap;gap:calc(10.08 * var(--u));margin:calc(22.08 * var(--u)) 0}.pm-input{position:relative;border:1px solid #ded5f0;border-radius:calc(12 * var(--u));background:#faf7ff;color:#7952ab;min-height:calc(43.2 * var(--u));min-width:calc(51.2 * var(--u));padding:calc(4 * var(--u)) calc(12 * var(--u));font-size:calc(14.08 * var(--u))}.pm-input.focus{border:2px solid #a17adb;background:#fff;padding:calc(3.04 * var(--u)) calc(11.04 * var(--u));min-width:calc(86.4 * var(--u))}.pm-input.wide{min-width:calc(140 * var(--u))}.pm-input small{position:absolute;top:-calc(7.04 * var(--u));left:calc(8.96 * var(--u));font-size:calc(8.96 * var(--u));background:#fff;padding:0 calc(3.04 * var(--u));color:#a195b4}.pm-ti{display:flex;align-items:center;gap:calc(8 * var(--u));padding:calc(12 * var(--u)) 0;border-bottom:1px solid #e3eaf6}.pm-ti .pm-copy{flex:1;min-width:0;display:grid;gap:calc(4 * var(--u))}.pm-ti strong{font-size:calc(14.08 * var(--u));font-weight:500;color:#142b54}.pm-toggle{width:calc(51.04 * var(--u));height:calc(31.04 * var(--u));flex-shrink:0;border-radius:calc(16 * var(--u));background:#d5e2f8;position:relative}.pm-toggle:before{content:"";position:absolute;top:calc(3.04 * var(--u));left:calc(3.04 * var(--u));width:calc(24.96 * var(--u));height:calc(24.96 * var(--u));border-radius:50%;background:#536887}.pm-banner{padding:calc(12 * var(--u)) calc(14.08 * var(--u));border:1px solid #d5e2f8;background:#eaf3ff;border-radius:calc(12 * var(--u));font-size:calc(12.96 * var(--u));line-height:calc(20 * var(--u));color:#536887}.pm-keyboard{flex-shrink:0;background:#e6eaf2;border-top:1px solid #cdd7e9;padding:calc(10.08 * var(--u)) calc(7.04 * var(--u)) calc(24.96 * var(--u))}.pm-keys{display:flex;justify-content:center;gap:calc(4.96 * var(--u));margin:calc(7.04 * var(--u)) 0}.pm-keys span{background:#fff;box-shadow:0 calc(.96 * var(--u)) calc(.96 * var(--u)) #8593aa55;border-radius:calc(4.96 * var(--u));min-width:calc(30.08 * var(--u));height:calc(36.96 * var(--u));display:flex;align-items:center;justify-content:center;font-size:calc(16.96 * var(--u));color:#284068;font-weight:400}.pm-keys .wide{min-width:calc(47.04 * var(--u));font-size:calc(12 * var(--u))}.pm-keys .space{width:calc(174.08 * var(--u));font-size:calc(12 * var(--u))}.pm-keys .done{background:#387fe9;color:#fff;width:calc(72 * var(--u));font-size:calc(12 * var(--u))}.pm-headline{display:flex;justify-content:space-between;align-items:center;gap:calc(12 * var(--u));margin:calc(22.08 * var(--u)) 0 calc(11.04 * var(--u))}.pm-headline h3{margin:0;font-size:calc(22.08 * var(--u));font-weight:600}.pm-textbtn{font-size:calc(14.08 * var(--u));font-weight:500;color:var(--pm-accent)}.pm-row{display:flex;align-items:center;gap:calc(8 * var(--u));padding:calc(12 * var(--u)) 0;border-bottom:1px solid #e3eaf6;min-width:0}.pm-row:last-child{border-bottom:0}.pm-copy{flex:1;min-width:0;display:grid;gap:calc(4 * var(--u))}.pm-row strong{font-size:calc(16.96 * var(--u));line-height:calc(26.08 * var(--u));font-weight:400;color:#142b54;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-row .pm-link{font-size:calc(11.04 * var(--u));color:var(--pm-accent)}.pm-row.ls strong{color:#2465c7;font-weight:700}.pm-tile{width:calc(48 * var(--u));height:calc(48 * var(--u));flex-shrink:0;border-radius:calc(12 * var(--u));display:inline-flex;align-items:center;justify-content:center;overflow:hidden;color:#fff;font-weight:750;font-size:calc(18.08 * var(--u));border:2px solid transparent;background:linear-gradient(135deg,var(--pm-tile-a, #2763a8),var(--pm-tile-b, #b43887))}.pm-pal1{--pm-tile-a: #216b83;--pm-tile-b: #65459d}.pm-pal2{--pm-tile-a: #9a4264;--pm-tile-b: #4e57a0}.pm-pal3{--pm-tile-a: #386da0;--pm-tile-b: #8d488f}.pm-nav{flex-shrink:0;height:calc(68 * var(--u));padding:calc(10.08 * var(--u)) calc(7.04 * var(--u)) calc(15.04 * var(--u));display:flex;justify-content:space-around;background:#f4f8ff;border-top:1px solid #dce5f6}.pm-nav span{font-size:calc(14.08 * var(--u));color:#7b8cad;display:flex;flex-direction:column;align-items:center;gap:calc(4.96 * var(--u));min-width:calc(60 * var(--u));font-weight:500}.pm-nav .act{color:var(--pm-accent);font-weight:750}.pm-homeline{width:calc(114.08 * var(--u));height:calc(4 * var(--u));border-radius:calc(4 * var(--u));flex-shrink:0;background:#142b5459;margin:calc(4.96 * var(--u)) auto calc(3.04 * var(--u))}.phone-screen .pm-body{overflow-y:auto;scrollbar-width:none}.phone-screen .pm-body::-webkit-scrollbar{display:none}.pm-switch button{flex:1;display:flex;align-items:center;justify-content:center;border:0;background:transparent;cursor:pointer;font:inherit;padding:0 calc(4 * var(--u));color:#536887;font-size:calc(14.08 * var(--u));font-weight:500}button.pm-ib{border:0;background:transparent;cursor:pointer}button.pm-circle{border:0;cursor:pointer;padding:0}button.pm-act{font:inherit;cursor:pointer}button.pm-act:disabled{opacity:.6;cursor:default}.pm-course-heading{display:grid;gap:calc(2 * var(--u))}.pm-sentence-meta{display:flex;align-items:center;justify-content:space-between;color:#7c8bab;font-size:calc(13 * var(--u));line-height:calc(20 * var(--u))}.pm-phase{display:flex;justify-content:space-between;align-items:center;font-size:calc(11 * var(--u));margin:0 0 calc(19 * var(--u))}.pm-phase b{font-weight:650;color:var(--pm-accent)}.pm-caption{font-size:calc(13 * var(--u));line-height:calc(20 * var(--u));color:#7184a5;text-align:center;margin:calc(4 * var(--u)) 0 0}.pm-prompt{margin:calc(8 * var(--u)) 0 0;color:#536887;font-size:calc(13 * var(--u));line-height:calc(20 * var(--u))}.pm-note{padding:calc(12 * var(--u)) calc(14 * var(--u));border:1px solid #d5e2f8;background:#eaf3ff;border-radius:calc(12 * var(--u));font-size:calc(13 * var(--u));line-height:calc(20 * var(--u));color:#536887}.pm-list{margin:0;padding-inline-start:calc(20 * var(--u));color:#536887;font-size:calc(15 * var(--u));display:grid;gap:calc(8 * var(--u))}.pm-list .act{color:#142b54;font-weight:600}.pm-field{display:grid;gap:calc(4 * var(--u));margin:0 0 calc(10 * var(--u));color:#536887;font-size:calc(13 * var(--u));line-height:calc(20 * var(--u))}.pm-field input,.pm-field textarea{width:100%;border:1px solid #d8e3f5;border-radius:calc(12 * var(--u));background:#fff;padding:calc(10 * var(--u)) calc(12 * var(--u));font:inherit;font-size:calc(15 * var(--u));color:#29436d}.pm-field textarea{min-height:calc(64 * var(--u));resize:vertical}.pm-form{display:grid;gap:calc(8 * var(--u))}.pm-sources{display:grid;gap:calc(6 * var(--u));margin-bottom:calc(10 * var(--u))}.pm-mini-wave{height:calc(44 * var(--u));display:flex;align-items:center;gap:2px;background:#f1f6ff;border-radius:calc(12 * var(--u));padding:0 calc(10 * var(--u))}.pm-mini-wave i{flex:1;border-radius:2px;background:#7889a5;min-width:2px}.pm-mini-wave.act i{background:#2465c7}.pm-wave-pair{display:grid;gap:calc(6 * var(--u));margin:calc(10 * var(--u)) 0}.phone-screen .karaoke{font-size:calc(28 * var(--u));line-height:calc(40 * var(--u))}.phone-screen .karaoke.pm-sentence-sm{font-size:calc(17 * var(--u));line-height:calc(26 * var(--u))}.app-phone .word-input{border:1px solid #ded5f0;border-radius:calc(12 * var(--u));background:#faf7ff;min-height:calc(43 * var(--u));padding:calc(10 * var(--u));font-size:calc(14 * var(--u));color:#7952ab}.app-phone .word-input:focus{border-color:#a17adb;box-shadow:inset 0 0 0 1px #a17adb}.app-phone .record-btn{width:calc(60 * var(--u));height:calc(60 * var(--u));border-radius:50%;background:#16335f;color:#fff;display:flex;align-items:center;justify-content:center;border:0}.app-phone .record-btn .pm-icon{width:calc(34 * var(--u));height:calc(34 * var(--u))}.app-phone .record-btn.recording{background:linear-gradient(140deg,#ff9653,#fc318d);box-shadow:0 0 0 calc(6 * var(--u)) #ffedf6}.app-phone .score-card{border:1px solid #cfe9de;background:#f1faf6;border-radius:calc(14 * var(--u));padding:calc(13 * var(--u)) calc(15 * var(--u));margin:calc(13 * var(--u)) 0;font-size:calc(13 * var(--u));line-height:calc(20 * var(--u));color:#60728e}.app-phone .score-card strong{color:#257354;font-size:calc(14 * var(--u))}.app-phone .score-card.score-try{border-color:#f0dbc4;background:#fff8ee}.app-phone .score-card.score-try strong{color:#965b20}.app-phone .platform-btn{border:0;border-bottom:1px solid #e3eaf6;border-radius:0;background:transparent;padding:calc(10 * var(--u)) 0;text-align:start}.app-phone .platform-btn strong{font-size:calc(15 * var(--u));font-weight:500;color:#142b54}.app-phone .platform-btn small{font-size:calc(12 * var(--u));color:#536887}.app-phone .platform-btn.act{background:#eaf3ff;border-radius:calc(10 * var(--u))}@supports (container-type: inline-size){.phone-screen{--u: calc(100cqw / 390)}}.phone-screen.speaking{--pm-accent: #d82d87;--pm-soft: #fff0f8;background:linear-gradient(160deg,#fff 12%,#fcf9ff 73%,#fff2f7)}.phone-screen.writing{--pm-accent: #8752cd;--pm-soft: #f5eeff;background:linear-gradient(160deg,#fff 12%,#fcf9ff 73%,#fff2f7)}.pm-h3{font-size:calc(22 * var(--u));line-height:calc(30 * var(--u));font-weight:600;margin:calc(22 * var(--u)) 0 calc(9 * var(--u))}.pm-chips{display:flex;gap:calc(6 * var(--u));flex-wrap:wrap;margin:calc(12 * var(--u)) 0}.pm-chip{font-size:calc(14 * var(--u));line-height:calc(20 * var(--u));padding:calc(5 * var(--u)) calc(12 * var(--u));border-radius:calc(12 * var(--u));background:#f0f5ff;border:1px solid #dce6f9;color:#5675a2}.pm-chip.act{background:color-mix(in srgb,var(--pm-accent) 14%,#fff);color:var(--pm-accent);border-color:color-mix(in srgb,var(--pm-accent) 30%,#fff);font-weight:650}.pm-panel{border:1px solid #dce6f6;border-radius:calc(18 * var(--u));background:#ffffffd9;padding:calc(16 * var(--u));margin:calc(12 * var(--u)) 0}.pm-list-sentences{display:grid;gap:calc(4 * var(--u));margin-top:calc(4 * var(--u))}.pm-list-sentence{padding:calc(8 * var(--u)) calc(12 * var(--u));font-size:calc(17 * var(--u));line-height:calc(26 * var(--u));font-weight:400;border-radius:calc(12 * var(--u))}.pm-list-sentence small{font-size:calc(10 * var(--u));color:#7c8ba5;display:block;margin-bottom:calc(7 * var(--u))}.pm-list-sentence.act{background:var(--pm-soft)}.pm-sentence-actions{display:flex;gap:calc(8 * var(--u));margin-top:calc(4 * var(--u));color:var(--pm-accent)}.pm-ok{color:#267a5f}.pm-fair{color:#a76d2f;background:#fff0da;border-radius:3px}.pm-bad{color:#b42335}.pm-note.warn{background:#fff8ee;border-color:#f0dbc4;color:#946019}.pm-input.wrong{border-color:#e7afc1;color:#b24c6c}.pm-star{color:var(--pm-accent);display:flex;align-items:center}.pm-toggle.on{background:#538bee}.pm-toggle.on:before{left:calc(26 * var(--u))}.pm-mini{margin:0 calc(10 * var(--u));border:1px solid #d5e2f8;border-radius:calc(14 * var(--u)) calc(14 * var(--u)) 0 0;padding:calc(9 * var(--u)) calc(12 * var(--u)) calc(6 * var(--u));background:linear-gradient(100deg,#fff,#f5f1ff);display:flex;align-items:center;gap:calc(10 * var(--u));flex-shrink:0}.pm-mini .pm-copy{flex:1;min-width:0;display:grid;gap:calc(2 * var(--u))}.pm-mini strong{font-size:calc(13 * var(--u));line-height:calc(20 * var(--u));font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-mini small{font-size:calc(12 * var(--u));line-height:calc(18 * var(--u));color:#6a7a98;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-mini-icon{width:calc(31 * var(--u));height:calc(34 * var(--u));display:flex;align-items:center;justify-content:center;color:#7364de}.h-section a{color:inherit;text-decoration:none;transition:color .15s}.h-section a:hover{color:var(--text-secondary);text-decoration:none}.home-more-link{display:inline-block;margin-top:1.25rem;font-size:.875rem;color:var(--text-tertiary);transition:color .15s}.home-more-link:hover{color:var(--text-primary);text-decoration:none}.app-phone{width:min(390px,100%);aspect-ratio:390 / 844;margin:0 auto;container-type:inline-size;border:1px solid #d5e2f8;border-radius:28px;overflow:hidden;background:linear-gradient(155deg,#fff,#f4f8ff);box-shadow:0 12px 32px #244e9120;color-scheme:light}.app-phone-screen{height:100%;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.app-phone-screen::-webkit-scrollbar{display:none}.app-phone .phone-screen{--u: calc(min(390px, 100vw - 3rem) / 390)}.app-phone .demo,#demos .app-phone .demo,.home-stage .app-phone .demo{max-width:none;margin:0;width:100%;min-height:100%;border-radius:0;box-shadow:none;background:transparent;display:flex;flex-direction:column}.demo{background:var(--bg-base);border:0;border-radius:var(--radius-lg);box-shadow:var(--panel-edge-shadow);overflow:hidden;max-width:640px;width:100%;margin:0 auto;color-scheme:light;color:var(--text-primary);--bg-base: #ffffff;--bg-raised: #ffffff;--bg-surface: #ffffff;--bg-inset: #eef5ff;--bg-hover: #eaf3ff;--text-primary: #142b54;--text-secondary: #536887;--text-tertiary: #536887;--text-muted: #657795;--text-inverse: #ffffff;--accent: #2465c7;--on-accent: #ffffff;--border: #d5e2f8;--border-strong: #c6d6ef;--tile: #f4f8ff;--tile-hover: #eaf3ff;--tile-inset: #eef5ff;--soft: #eaf3ff;--success: #237457;--success-wash: #f1faf6;--success-border: #cfe9de;--warning: #946019;--warning-wash: #fff8ee;--warning-border: #f0dbc4;--danger: #b42335;--danger-wash: #fdf2f3;--wave-surface: #f1f6ff;--wave-unplayed: #7889a5;--wave-playhead: #142b54;--writing: #8150bd;--writing-soft: #f3edff;--writing-border: #ded5f0;--writing-field: #faf7ff;--speaking: #d82d87;--speaking-soft: #fff0f8;--shadow-inset: inset 0 1px 2px #3939340a;--segmented-active-bg: #ffffff;--btn-secondary-bg: #ffffff;--raised-shadow: inset 0 0 0 1px color-mix(in srgb, var(--text-secondary) 10%, transparent), 0 1px 2px 0 #0000000f;--panel-edge-shadow: 0 0 0 1px #00000014, 0 1px 2px 0 #0000000f, 0 24px 60px -16px #39393438}#demos .demo{max-width:72rem}.segmented{display:flex;padding:2px;gap:0;border:0;border-radius:8px;background:var(--tile);box-shadow:var(--shadow-inset)}.segmented button{flex:1;border:0;background:transparent;border-radius:6px;padding:0 .5rem;height:1.5rem;font-size:.8125rem;font-weight:500;color:var(--text-tertiary);cursor:pointer;transition:color .15s var(--ease-out),background .15s var(--ease-out)}.segmented button:hover{color:var(--text-primary)}.segmented button[aria-pressed=true]{background:var(--segmented-active-bg);background-image:var(--raised-sheen);box-shadow:var(--raised-shadow);color:var(--text-primary)}.karaoke{font-size:1.5rem;line-height:1.45;font-weight:400}.karaoke .w{color:var(--text-primary)}.karaoke .w.done{color:var(--accent)}.karaoke .w.now{color:var(--accent);background:var(--soft);border-radius:5px;padding:1px 4px;margin:0 -1px}.karaoke .w.passed{color:var(--warning)}.wave{display:flex;align-items:center;gap:4px;height:48px;background:var(--wave-surface);border-radius:var(--radius);padding:0 .75rem;cursor:pointer;overflow:hidden}.wave i{width:3px;border-radius:2px;background:var(--wave-unplayed);display:block}.wave i.played{background:var(--accent)}.wave i.head{background:var(--wave-playhead)}.record-btn{width:60px;height:60px;border-radius:999px;border:0;cursor:pointer;background:var(--speaking);color:#fff;font-size:24px;display:inline-flex;align-items:center;justify-content:center;outline:6px solid var(--speaking-soft);transition:background-color .15s var(--ease-out)}.record-btn:hover{background:color-mix(in srgb,var(--speaking) 88%,var(--bg-base))}.record-btn:active{background:color-mix(in srgb,var(--speaking) 76%,var(--bg-base))}.record-btn.recording{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{outline-width:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.record-btn.recording{animation:none}}.score-card{border-radius:var(--radius-lg);padding:.75rem 1rem;font-size:.875rem}.score-pass{background:var(--success-wash);border:1px solid var(--success-border);color:var(--success)}.score-try{background:var(--warning-wash);border:1px solid var(--warning-border);color:var(--warning)}.verdict-ok{color:var(--success)}.verdict-warn{color:var(--warning);text-decoration:underline wavy}.verdict-bad{color:var(--danger);text-decoration:line-through}.karaoke .w.verdict-ok,.karaoke .w.verdict-warn,.karaoke .w.verdict-bad{color:inherit}.word-input{min-height:44px;border-radius:var(--radius-control);border:1px solid var(--writing-border);background:var(--writing-field);color:var(--writing);padding:.5rem .625rem;font-size:.875rem;width:86px}.word-input:focus{outline:none;border-width:1px;border-color:var(--writing);box-shadow:inset 0 0 0 1px var(--writing);background:var(--surface)}.word-input.wrong{border-color:var(--danger);color:var(--danger)}.compare{width:100%;border-collapse:collapse;font-size:14px}.compare th,.compare td{text-align:start;padding:.75rem;border-top:1px solid var(--border)}.compare th{font-weight:500;color:var(--text-tertiary)}.compare th:first-child,.compare td:first-child{padding-inline-start:1.25rem}.compare th:last-child,.compare td:last-child{padding-inline-end:1.25rem}.compare .yes{color:var(--success);font-weight:600}.compare .no{color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:.375rem;background:var(--tile-inset);color:var(--text-secondary);border-radius:6px;padding:.0625rem .4375rem;font-size:.75rem;font-weight:400}.post-row h3{transition:color .15s var(--ease-out)}.footer{width:min(calc(100% - 3rem),var(--max-w));margin:0 auto;padding:3.5rem 0 calc(2.5rem + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}.footer-brand .nav-logo{margin-bottom:.875rem}.footer-column h4{font-family:var(--font-body);color:var(--text-primary);margin:0 0 .875rem;font-size:.875rem;font-weight:600;line-height:1.4}.footer-column ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.footer-column a{color:var(--text-tertiary);font-size:.875rem;transition:color .15s var(--ease-out)}.footer-column a:hover{color:var(--text-primary)}.footer-lang{justify-self:end}.footer-lang .locale-select{background-color:var(--footer-select-bg);background-image:var(--raised-sheen),var(--select-chevron);background-position:0 0,right .5rem center;background-repeat:no-repeat;box-shadow:var(--raised-shadow);border-radius:var(--radius-button);height:auto;padding:.4rem 1.5rem .4rem .625rem;font-weight:500;line-height:1.5}[dir=rtl] .footer-lang .locale-select{background-position:0 0,left .5rem center;padding:.4rem .625rem .4rem 1.5rem}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;margin-top:3rem;font-size:.8125rem;color:var(--text-muted)}.docs-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:2rem}.docs-nav{position:sticky;top:6.5rem;align-self:start;display:grid;gap:2px}.docs-nav a{color:var(--muted);font-size:14px;padding:.4375rem .75rem;border-radius:8px}.docs-nav a:hover{background:var(--soft);color:var(--text-primary);text-decoration:none}.docs-nav a[aria-current=true]{background:var(--soft);color:var(--accent);font-weight:600}.docs-body{font-size:1.0625rem;line-height:1.75}.docs-body h2{font-family:var(--font-display);font-size:1.625rem;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:3rem 0 1rem}.docs-body h2:first-child{margin-top:0}.docs-body h3{margin:2.25rem 0 .75rem;font-size:1.3rem;font-weight:600;font-family:var(--font-display);letter-spacing:-.02em;line-height:1.2}.docs-body p{margin-bottom:1.5rem;color:var(--text-secondary)}.docs-body ul,.docs-body ol{margin:0 0 1.5rem;padding-left:1.5rem}.docs-body li{color:var(--text-secondary);margin-bottom:.5rem;padding-left:.15rem}.docs-body li::marker{color:var(--text-muted)}.docs-body a{color:var(--accent);text-decoration:underline;text-underline-offset:.2em}.docs-body a:hover{color:var(--accent)}.docs-try{color:var(--text-muted)}.docs-body :not(pre)>code{background:var(--tile-inset);font-family:var(--font-mono);color:var(--text-primary);border-radius:5px;padding:.125rem .375rem;font-size:.85em}.steps{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.steps li{display:grid;grid-template-columns:28px 1fr;gap:.75rem}.step-num{width:28px;height:28px;border-radius:999px;background:var(--soft);color:var(--accent);font-size:.8125rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;margin-top:2px}.steps p{color:var(--muted)}.tip{background:var(--soft);border-radius:var(--radius-lg);padding:.75rem 1rem;font-size:14px;color:var(--muted);margin:1rem 0}.post-list{display:flex;flex-direction:column;gap:.625rem}.post-row{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:.5rem 1rem;align-items:baseline;padding:1.125rem 1.25rem;border-radius:12px;background:var(--tile);border-bottom:0;color:inherit;transition:background-color .15s}.post-row:hover{background:var(--tile-hover);text-decoration:none}.post-row>.t-meta{grid-column:1;grid-row:1 / span 3}.post-row h3{font-family:var(--font-display);font-size:1.125rem;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--text-primary);margin:0}.post-row .t-body{font-size:.9375rem;line-height:1.55;color:var(--text-secondary)}.post-row .t-action{grid-column:2}@media(max-width:768px){.post-row{grid-template-columns:1fr}.post-row>.t-meta{grid-column:auto;grid-row:auto}}.platform-grid{display:flex;flex-direction:column;gap:0;background:var(--tile);border-radius:12px;padding:.375rem}.platform-btn{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border:0;border-radius:8px;background:transparent;color:var(--text-primary);transition:background-color .15s}a.platform-btn:hover,.platform-btn:hover,.platform-btn[aria-checked=true]{background:var(--tile-hover);text-decoration:none}.platform-btn strong{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.platform-btn small{display:block;color:var(--text-tertiary);font-size:.8125rem}.qr-panel{display:flex;gap:1.25rem;align-items:center;margin-top:1.5rem;flex-wrap:wrap}.qr-panel img,.qr-panel svg{width:128px;height:128px;background:#fff;border-radius:12px;padding:8px;border:1px solid var(--border)}.log-entry{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:.5rem 1rem;align-items:start;padding:1.125rem 1.25rem;border-radius:12px;background:var(--tile);margin:0;border-inline-start:0}.log-entry+.log-entry{margin-top:.625rem}.log-entry>.t-meta{grid-column:1;grid-row:1 / span 2}.log-entry h2{font-family:var(--font-body);font-size:.9375rem;font-weight:500;line-height:1.4;letter-spacing:0;max-width:none;color:var(--text-primary);display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.log-entry h2 span{color:var(--text-tertiary);font-weight:400}.log-version{font-family:var(--font-mono);font-size:.75rem;font-weight:400;color:var(--text-secondary);background:var(--tile-inset);border-radius:6px;padding:.0625rem .4375rem}.log-entry ul{margin:0;padding:0;display:grid;gap:.625rem;list-style:none}.log-entry li{position:relative;padding-left:1.125rem;font-size:.9375rem;line-height:1.6;color:var(--text-secondary);margin-bottom:0}.log-entry li:before{content:"";position:absolute;left:.1rem;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--text-muted)}@media(max-width:768px){.log-entry{grid-template-columns:1fr}.log-entry>.t-meta{grid-column:auto;grid-row:auto}}@media(max-width:768px){.home-stage{padding:0 .75rem}.home-tiles,.docs-grid{grid-template-columns:1fr}.docs-nav{position:static;display:flex;flex-wrap:wrap;gap:6px}.docs-nav a{padding:12px}.footer{padding:3rem 0 calc(2.25rem + env(safe-area-inset-bottom))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-lang{justify-self:start}.footer-bottom{flex-direction:column;align-items:flex-start}.topbar-wrap{padding-top:calc(env(safe-area-inset-top) + .5rem)}.topbar-inner{min-height:3.5rem}.nav-cluster,.nav-side{display:none}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:var(--pill-glass-bg);backdrop-filter:blur(26px) saturate(1.16);box-shadow:var(--glass-floating-shadow);border-radius:999px;color:var(--text-primary);cursor:pointer}.nav-toggle-box{position:relative;width:24px;height:24px;display:block}.nav-toggle-bar{position:absolute;left:3px;right:3px;height:1.5px;border-radius:1px;background:currentColor;transition:transform .25s var(--ease-out),opacity .2s var(--ease-out)}.nav-toggle-bar:nth-child(1){top:7px}.nav-toggle-bar:nth-child(2){top:11.25px}.nav-toggle-bar:nth-child(3){top:15.5px}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(1){transform:translateY(4.25px) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}.topbar-inner:has(.nav.open){border:1px solid var(--border);border-radius:1rem;background:var(--header-glass);backdrop-filter:blur(24px);padding:.875rem;flex-wrap:wrap}.topbar-inner:has(.nav.open) .nav-cluster{display:contents}.nav{display:none}.nav.open{display:flex;order:10;flex-direction:column;gap:.5rem;width:100%;padding-top:.75rem;animation:mobile-menu-in .18s var(--ease-out) both}.nav.open a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.5rem 1rem;text-align:center}.topbar-inner:has(.nav.open) .nav-logo{padding:.75rem 1rem}.topbar-inner:has(.nav.open) .nav-side{display:flex;order:11;flex-direction:column;width:100%;height:auto;padding:.5rem .75rem .75rem}.topbar-inner:has(.nav.open) .nav-side .nav-cta{margin-top:.5rem}@keyframes mobile-menu-in{0%{opacity:0;transform:translateY(-4px)}}.button,.button-secondary,.btn,.btn-outline{min-height:44px;min-width:44px}.locale-select,.segmented button{height:44px}.footer-column a{display:block;padding:.875rem 0}.page p a:not([class]),main p a:not([class]){display:inline-block;padding:16px 0;margin:-16px 0}}
