:root{--surface: #f8f5ef;--surface-raised: #ffffff;--surface-sunken: #efeae1;--surface-stage: #e9e4da;--line: #e2dcd1;--line-strong: #c2b9aa;--ink: #15191c;--ink-soft: #485057;--ink-inverse: #ffffff;--brand: #0b5b57;--brand-strong: #074340;--brand-deep: #06322f;--brand-tint: #e4f0ee;--brand-tint-strong: #cfe4e0;--brand-glow: #ffd8a8;--tap: #c2410c;--tap-ink: #9a3412;--tap-tint: #fff3eb;--tap-halo: rgba(194, 65, 12, .22);--focus: #1d4ed8;--radius-sm: .5rem;--radius: .75rem;--radius-lg: 1.25rem;--radius-xl: 1.75rem;--shadow-xs: 0 1px 2px rgba(21, 25, 28, .06);--shadow-soft: 0 1px 2px rgba(21, 25, 28, .05), 0 4px 14px rgba(21, 25, 28, .06);--shadow-card: 0 1px 2px rgba(21, 25, 28, .05), 0 10px 30px -8px rgba(21, 25, 28, .12);--shadow-lift: 0 18px 50px -12px rgba(21, 25, 28, .28);--font: "Atkinson Hyperlegible Next", "Atkinson Hyperlegible", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-device: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;--text-base: 1.125rem;--text-small: 1rem;--text-lede: 1.25rem;--text-step: clamp(1.5rem, 1.2rem + 1.3vw, 1.9rem);--text-title: clamp(1.75rem, 1.35rem + 1.4vw, 2.35rem);--text-display: clamp(2.4rem, 1.5rem + 3.6vw, 4rem);--container: 72rem;--gutter: clamp(1rem, .5rem + 2.5vw, 2.5rem);--control-min: 3.5rem}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface: #121518;--surface-raised: #1b1f24;--surface-sunken: #0d0f12;--surface-stage: #171b1f;--line: #2c323a;--line-strong: #46505b;--ink: #f3f1ed;--ink-soft: #bcc3cc;--brand: #5fd3c4;--brand-strong: #8ee6da;--brand-deep: #0b2a28;--brand-tint: #15302d;--brand-tint-strong: #1c3f3b;--ink-inverse: #08201e;--tap: #ff9d5c;--tap-ink: #ffb788;--tap-tint: #2c1d14;--tap-halo: rgba(255, 157, 92, .24);--focus: #8ab4ff;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .5);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .5), 0 4px 14px rgba(0, 0, 0, .35);--shadow-card: 0 1px 2px rgba(0, 0, 0, .5), 0 10px 30px -8px rgba(0, 0, 0, .6);--shadow-lift: 0 18px 50px -12px rgba(0, 0, 0, .7)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font);font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{line-height:1.2;text-wrap:balance;margin:0}p{text-wrap:pretty}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:var(--radius-sm)}[hidden]{display:none!important}.pu-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.pu-skip{position:absolute;left:1rem;top:-5rem;z-index:50;padding:.9rem 1.25rem;background:var(--brand);color:var(--ink-inverse);border-radius:var(--radius);font-weight:700;text-decoration:none;transition:top .15s ease}.pu-skip:focus{top:1rem}.pu-phone{font-family:var(--font-device)}.pu-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--control-min);padding:.6rem 1.25rem;font:inherit;font-size:1.05rem;font-weight:700;line-height:1.2;border-radius:var(--radius);border:1.5px solid var(--line-strong);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-xs);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .08s ease}.pu-btn:hover:not(:disabled){border-color:var(--brand);background:var(--brand-tint)}.pu-btn:active:not(:disabled){transform:translateY(1px)}.pu-btn:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.pu-btn--play{background:var(--brand);border-color:var(--brand);color:var(--ink-inverse);box-shadow:0 1px 2px #07434033,0 6px 16px -6px #07434080}.pu-btn--play:hover:not(:disabled){background:var(--brand-strong);border-color:var(--brand-strong);color:var(--ink-inverse)}.pu-btn--quiet{min-height:var(--control-min);padding-inline:1rem;font-size:1rem;font-weight:700;color:var(--brand);background:transparent;border-color:transparent;box-shadow:none}.pu-btn--quiet:hover:not(:disabled){background:var(--brand-tint);border-color:transparent}.pu-play-glyph:before{content:"▶"}.pu-btn--play.is-playing .pu-play-glyph:before{content:"■"}.pu-bar{position:relative;z-index:10;background:color-mix(in srgb,var(--surface-raised) 88%,transparent);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.4) blur(10px)}.pu-bar-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;width:min(100% - 2 * var(--gutter),var(--container));min-height:4.5rem;margin-inline:auto;padding-block:.6rem}a.pu-brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none;border-radius:var(--radius-sm)}.pu-brand-mark{flex:none;width:2.5rem;height:2.5rem;filter:drop-shadow(0 2px 4px rgba(11,91,87,.25))}.pu-brand-name{display:grid;font-size:1.2rem;font-weight:800;letter-spacing:-.01em;line-height:1.1}.pu-brand-tag{font-size:.85rem;font-weight:600;letter-spacing:.01em;color:var(--ink-soft)}.pu-backlink{display:inline-flex;align-items:center;gap:.35rem;min-height:3rem;padding:.4rem 1rem .4rem .7rem;border:1.5px solid var(--line-strong);border-radius:999px;background:var(--surface-raised);color:var(--ink);font-size:1rem;font-weight:700;text-decoration:none;transition:border-color .15s ease,background .15s ease}.pu-backlink svg{width:1.2rem;height:1.2rem;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.pu-backlink:hover{border-color:var(--brand);background:var(--brand-tint)}.pu-bar-note{display:flex;align-items:center;gap:.65rem;margin:0 0 0 auto;padding:.45rem 1rem .45rem .7rem;background:var(--brand-tint);border-radius:999px;font-size:.98rem;line-height:1.3;color:var(--ink)}.pu-bar-note>span{display:flex;flex-wrap:wrap;column-gap:.35rem}.pu-bar-note strong{color:var(--brand-strong)}.pu-bar-note-icon{flex:none;width:1.5rem;height:1.5rem;fill:none;stroke:var(--brand);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pu-main{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:calc(var(--container) + 2 * var(--gutter));margin-inline:auto;padding:1rem}.pu-main>*,.pu-phonepanel,.pu-phoneslot{min-width:0}.pu-chooser,.pu-lessonbox{order:1}.pu-stepbar{order:2}.pu-guide{order:3}.pu-phonepanel{order:4}.pu-actions{order:5}[data-mode=choose] .pu-lessonbox,[data-mode=choose] .pu-stepbar,[data-mode=choose] .pu-guide,[data-mode=choose] .pu-actions,[data-mode=choose] .pu-controls,[data-mode=choose] .pu-spotlight,[data-mode=choose] .pu-safety,[data-mode=learn] .pu-chooser,[data-mode=learn] .pu-phonewait{display:none!important}[data-complete=true] .pu-instruction,[data-complete=true] .pu-controls,[data-demonstrating=true] .pu-controls{display:none}.pu-chooser{display:grid;gap:.75rem;align-content:start}.pu-chooser-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem}.pu-chooser-top:empty{display:none}.pu-chooser-back{display:inline-flex;align-items:center;gap:.5rem;min-height:3rem;padding:.4rem 1rem .4rem .8rem;font:inherit;font-size:1rem;font-weight:700;color:var(--ink);background:var(--surface-raised);border:1.5px solid var(--line-strong);border-radius:999px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.pu-chooser-back:hover{border-color:var(--brand);background:var(--brand-tint)}.pu-chooser-phone{display:inline-flex;align-items:center;gap:.35rem;margin:0;padding:.3rem .85rem;border-radius:999px;background:var(--surface-sunken);font-size:.98rem;color:var(--ink-soft)}.pu-chooser-phone strong{color:var(--ink)}.pu-question{margin-top:.25rem;font-family:var(--font-display);font-size:var(--text-title);font-weight:600;letter-spacing:-.015em;font-variation-settings:"opsz" 72}.pu-question:focus,.pu-lessonbox-title:focus,.pu-step-title:focus,#pu-completion-title:focus{outline:none}.pu-question-hint{margin:0;font-size:var(--text-lede);color:var(--ink-soft)}.pu-options{display:grid;gap:.65rem;margin-top:.5rem}.pu-option{display:flex;align-items:center;gap:1rem;width:100%;min-height:4.5rem;padding:.8rem 1rem .8rem 1.1rem;font:inherit;text-align:left;color:var(--ink);background:var(--surface-raised);border:1.5px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .2s ease,transform .2s ease}.pu-option:hover{border-color:var(--brand);box-shadow:var(--shadow-card);transform:translateY(-1px)}.pu-option:active{transform:translateY(0)}.pu-option[aria-pressed=true]{border-color:var(--brand);background:var(--brand-tint);box-shadow:inset 0 0 0 1.5px var(--brand),var(--shadow-soft)}.pu-option-icon{flex:none;width:3rem;height:3rem;padding:.6rem;border-radius:var(--radius);background:var(--brand-tint);fill:none;stroke:var(--brand);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pu-option[aria-pressed=true] .pu-option-icon{background:var(--surface-raised)}.pu-option-text{display:grid;flex:1;gap:.1rem;line-height:1.3}.pu-option-name{font-size:1.2rem;font-weight:700}.pu-option-note{font-size:1rem;color:var(--ink-soft)}.pu-option-go{flex:none;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--surface-sunken);font-size:1.6rem;line-height:1;color:var(--brand);transition:background .15s ease,color .15s ease}.pu-option:hover .pu-option-go{background:var(--brand);color:var(--ink-inverse)}.pu-option[aria-pressed=true] .pu-option-go{background:var(--brand);color:var(--ink-inverse);font-size:0}.pu-option[aria-pressed=true] .pu-option-go:before{content:"✓";font-size:1.1rem;font-weight:700}.pu-device-picture{position:relative;flex:none;width:2.4rem;height:3.7rem;padding:.75rem .3rem;border:3px solid #252b34;border-radius:.55rem;background:#dce7f7}.pu-device-picture--samsung{border-radius:.3rem;background:#d1eae4}.pu-device-picture--pixel{background:#eee2ce}.pu-device-camera{position:absolute;top:.18rem;left:42%;width:.3rem;height:.3rem;border-radius:50%;background:#252b34}.pu-device-picture--iphone .pu-device-camera{left:25%;width:50%;border-radius:1rem}.pu-device-apps{display:grid;grid-template-columns:repeat(2,1fr);gap:.2rem}.pu-device-apps i{height:.5rem;border-radius:.15rem;background:#48758d}.pu-device-apps i:nth-child(2n){background:#487466}.pu-device-nav{position:absolute;bottom:.2rem;left:30%;width:40%;height:.12rem;background:#252b34}.pu-device-help{padding:.75rem 1rem;background:var(--brand-tint);border-radius:var(--radius)}.pu-device-help p{margin:.3rem 0}.pu-lessonbox{display:grid;gap:.2rem}.pu-lessonbox-label{margin:0;font-size:.85rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand)}.pu-lessonbox-title{font-family:var(--font-display);font-size:clamp(1.5rem,1.3rem + .8vw,1.9rem);font-weight:600;letter-spacing:-.01em;font-variation-settings:"opsz" 48}.pu-lessonbox-meta,.pu-lessonbox-note{margin:0;font-size:1rem;color:var(--ink-soft)}.pu-lessonbox-actions{display:flex;flex-wrap:wrap;gap:.25rem;margin:.35rem 0 0 -1rem}.pu-guide,.pu-actions{display:grid;gap:.85rem;align-content:start}.pu-stepbar{display:grid;gap:.35rem}.pu-stepbar-title{display:none;margin:0;font-size:1.1rem;font-weight:800;line-height:1.3}.pu-guide-head{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.9rem}.pu-step-count{font-size:1rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.pu-progress{height:.6rem;background:var(--surface-sunken);border-radius:999px;box-shadow:inset 0 1px 2px #15191c14;overflow:hidden}.pu-progress-fill{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand) 70%,#3fbfae));border-radius:999px;transition:width .4s cubic-bezier(.22,1,.36,1)}.pu-instruction{position:relative;display:grid;gap:.65rem;padding:1.25rem 1.35rem 1.1rem;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.pu-instruction:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--tap)}.pu-step-title{font-size:var(--text-step);font-weight:800;letter-spacing:-.015em}.pu-step-detail{margin:0;font-size:var(--text-lede);line-height:1.5}.pu-glossary{display:grid;gap:.1rem;margin:0;padding:.75rem .95rem;background:var(--surface-sunken);border-radius:var(--radius);font-size:1rem}.pu-glossary dt{font-weight:700}.pu-glossary dd{margin:0;color:var(--ink-soft)}.pu-taphint{display:flex;align-items:center;gap:.6rem;margin:.1rem 0 0;padding:.6rem .85rem;background:var(--tap-tint);border-radius:var(--radius);font-size:1rem;font-weight:700;line-height:1.35;color:var(--tap-ink)}.pu-taphint-dot{flex:none;width:1.3rem;height:1.3rem;border:3px solid var(--tap);border-radius:50%;box-shadow:0 0 0 4px var(--tap-halo)}.pu-taphint-arrow{margin-left:auto}.pu-taphint-arrow:before{content:"↓";font-size:1.3rem}.pu-controls{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}.pu-controls .pu-btn{font-size:1rem}.pu-demo,.pu-completion{padding:1.25rem;background:var(--brand-tint);border:1px solid var(--brand-tint-strong);border-radius:var(--radius-lg)}.pu-demo p,.pu-completion p{margin:0 0 .75rem}.pu-demo-actions,.pu-completion-actions{display:flex;flex-wrap:wrap;gap:.6rem}.pu-feedback{margin:0;padding:.85rem 1rem;background:var(--tap-tint);border-radius:var(--radius);border-left:4px solid var(--tap)}.pu-completion{display:grid;gap:.75rem;justify-items:start}.pu-completion h3{font-family:var(--font-display);font-size:var(--text-title);font-weight:600}.pu-completion-mark{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:50%;background:var(--brand);color:var(--ink-inverse);font-size:1.6rem;font-weight:700}.pu-phonepanel{position:relative;display:grid;justify-items:center;align-content:start;gap:.75rem;width:100%}.pu-phoneheading{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem}.pu-phonecaption{display:inline-flex;align-items:center;gap:.5rem;margin:0;padding:.35rem .95rem;background:var(--surface-raised);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow-xs);font-size:.95rem;font-weight:700;color:var(--ink-soft)}.pu-phonecaption-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}.pu-phoneslot{display:flex;justify-content:center;min-height:0}.pu-safety{margin:0;max-width:28rem;text-align:center;color:var(--ink-soft);font-size:.95rem}[data-mode=choose] .pu-phonepanel{display:none}.pu-phonewait{position:absolute;inset:.6rem;z-index:6;display:grid;place-content:center;gap:.4rem;padding:1rem;border-radius:var(--screen-radius);background:#ffffffdb;backdrop-filter:blur(3px);color:#17191d;text-align:center;font-family:var(--font);font-size:1rem;font-weight:700}.pu-phonewait p{margin:0;text-wrap:balance}@media(max-width:59.999rem){.pu-main{gap:.85rem;padding:.85rem 1rem 1.5rem}.pu-bar-inner{min-height:4rem}.pu-bar-note{margin-left:0;width:100%;border-radius:var(--radius)}[data-mode=learn] .pu-bar-note,.pu-brand-tag{display:none}.pu-lessonbox{padding-bottom:.4rem;border-bottom:1px solid var(--line)}.pu-lessonbox-actions{margin-left:-.5rem}.pu-lessonbox-actions .pu-btn{flex:1;padding-inline:.5rem}.pu-step-title{font-size:1.35rem}.pu-step-detail{font-size:1.08rem}.pu-instruction{gap:.5rem;padding:.9rem 1rem .85rem 1.2rem}.pu-glossary{padding:.5rem .7rem;font-size:.95rem}.pu-taphint{padding:.5rem .7rem}.pu-stepbar{position:sticky;top:0;z-index:8;margin-inline:-1rem;padding:.6rem 1rem;background:var(--surface);transition:box-shadow .2s ease}[data-title-pinned=true] .pu-stepbar{border-bottom:1px solid var(--line);box-shadow:0 6px 16px -10px #15191c59}[data-title-pinned=true] .pu-stepbar-title{display:block}.pu-stepbar .pu-feedback{padding:.5rem .75rem;font-size:1rem}.pu-phonepanel{gap:.6rem;padding:.75rem;background:var(--surface-stage);border-radius:var(--radius-xl);scroll-margin-top:5rem}.pu-phoneheading{order:2}.pu-phoneslot{order:1;width:100%}.pu-safety{order:3}.pu-phoneslot .pu-phone{width:auto;height:min(calc((100vw - 3.5rem) * 19 / 9),calc(100svh - 6rem),46rem);min-height:26rem}}@media(min-width:60rem){.pu-app{display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden}.pu-main{display:grid;grid-template-columns:minmax(24rem,34rem) minmax(0,1fr);grid-template-rows:auto auto minmax(0,auto) auto 1fr;gap:1.25rem 3rem;padding:1.5rem var(--gutter);min-height:0}.pu-chooser{grid-column:1;grid-row:1 / -1;min-height:0;overflow-y:auto;padding:.5rem .4rem 1rem;margin-inline:-.4rem;align-content:safe center}.pu-lessonbox{grid-column:1;grid-row:1;padding-top:.5rem}.pu-stepbar{grid-column:1;grid-row:2}.pu-guide{grid-column:1;grid-row:3;min-height:0;overflow-y:auto;padding:.4rem;margin:-.8rem -.4rem 0}.pu-actions{grid-column:1;grid-row:4}.pu-options--many{grid-template-columns:1fr 1fr}[data-mode=choose] .pu-phonepanel{display:grid}.pu-phonepanel{grid-column:2;grid-row:1 / -1;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch;padding:1.25rem;border-radius:var(--radius-xl);background:radial-gradient(ellipse 60% 55% at 50% 50%,color-mix(in srgb,var(--brand-tint) 80%,transparent),transparent 70%),radial-gradient(circle,color-mix(in srgb,var(--line-strong) 55%,transparent) 1px,transparent 1.5px) 0 0 / 22px 22px,var(--surface-stage);box-shadow:inset 0 0 0 1px var(--line)}.pu-phoneslot{height:100%;width:100%;align-items:center}.pu-phoneslot .pu-phone{height:100%;max-height:46rem;width:auto;max-width:100%}.pu-taphint-arrow:before{content:"→"}}@media(min-width:60rem)and (max-height:50rem){.pu-bar-inner{min-height:3.75rem;padding-block:.35rem}.pu-bar-note>span>span{display:none}.pu-main{padding-block:.85rem}.pu-phonepanel{padding:.6rem;gap:.4rem}.pu-safety{display:none}}@media(min-width:60rem)and (max-height:38rem){.pu-app{height:auto;overflow:visible}.pu-main{min-height:0}.pu-phonepanel{grid-template-rows:auto auto}.pu-phoneslot .pu-phone{height:32rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
