:root{--paper:#fff;--white:#fff;--ink:#0f0f0f;--green:#0f0f0f;--green-deep:#272727;--blue:#065fd4;--coral:#ff0033;--muted:#606060;--line:#e5e5e5;--soft:#f2f2f2;--shadow:0 8px 24px rgba(0,0,0,.06);--sans:Arial,sans-serif;--serif:Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}::selection{background:#e5e5e5;color:var(--green-deep)}button,textarea{font:inherit}button{color:inherit}a:focus-visible,button:focus-visible,textarea:focus-visible{outline:3px solid #065fd4;outline-offset:3px}textarea{caret-color:var(--green);scrollbar-color:#b3b3b3 transparent;scrollbar-width:thin}.app-shell{min-height:100svh;max-width:1120px;padding:0 48px;margin:0 auto;display:flex;flex-direction:column}.topbar{height:88px;justify-content:space-between;border-bottom:1px solid var(--line)}.signed-in-tools,.topbar{display:flex;align-items:center}.signed-in-tools{gap:14px}.signed-in-tools form{margin:0}.signed-out-screen{flex:1 1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:58vh;padding:50px 0}.signed-out-screen h1{max-width:650px}.signed-out-screen h1 em{font-style:normal;color:var(--green)}.signed-out-screen p{max-width:410px;color:var(--muted);font-size:15px;line-height:1.6;margin:16px 0 23px}.signed-out-screen form{margin:0}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:23px;font-weight:700;letter-spacing:-1.1px}.brand-icon{width:37px;height:37px;display:block;color:var(--ink)}.footer-icon{width:22px;height:22px;object-fit:contain}.brand-period{color:var(--coral)}.top-note{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;letter-spacing:.02em}.home-screen{padding:53px 0 24px;flex:1 1}.screen-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-progress{margin:0 0 9px;color:var(--muted);font-size:12px;font-weight:600}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);font-size:clamp(38px,5.2vw,57px);letter-spacing:-1.7px;line-height:1.02;margin-bottom:0}h1,h1 em{font-weight:700}h1 em{font-style:normal;color:var(--green)}.heading-note{max-width:220px;margin:0 0 3px;color:var(--muted);font-size:13px;line-height:1.55}.home-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);grid-gap:23px;gap:23px;align-items:stretch}.add-panel,.script-list{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:25px 26px 22px;min-width:0}.add-panel{box-shadow:var(--shadow)}.panel-title{display:flex;gap:13px;align-items:center;margin-bottom:23px}.list-header h2,.panel-title h2{font-family:var(--serif);font-weight:600;letter-spacing:-.4px;font-size:24px;margin:0 0 3px}.panel-title p{color:var(--muted);font-size:12px;margin:0}label{font-size:12px;font-weight:700;margin:0 0 9px}label,textarea{display:block;color:var(--ink)}textarea{resize:vertical;width:100%;min-height:178px;border:1px solid #d9d9d9;border-radius:10px;background:#f9f9f9;padding:14px 15px;font-size:13px;line-height:1.6;transition:border-color .18s,box-shadow .18s}textarea::placeholder{color:#606060}textarea:focus{outline:none;border-color:#0f0f0f;box-shadow:0 0 0 3px #e5e5e5}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.form-foot>span{font-size:10px;color:#606060;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.primary-button,.quiet-button,.secondary-button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:background .16s,transform .16s,box-shadow .16s}.primary-button{min-height:44px;border-radius:999px;padding:0 18px;background:var(--green);color:#fff;font-size:12px;font-weight:700;letter-spacing:.01em}.primary-button:hover:not(:disabled){background:var(--green-deep);transform:translateY(-1px);box-shadow:0 5px 13px rgba(18,60,48,.15)}.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:wait}.primary-button span[aria-hidden=true]{font-size:16px;line-height:1}.helper-note{font-size:11px;color:var(--muted);margin:13px 0 0;line-height:1.5}.script-list{display:flex;flex-direction:column}.list-header{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--line)}.list-count{font-size:11px;color:#606060;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.empty-state{flex:1 1;min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px 20px}.empty-symbol{width:54px;height:54px;color:#606060;margin-bottom:15px}.empty-symbol svg{width:100%;height:100%}.empty-state h3{font-family:var(--serif);font-size:21px;font-weight:400;letter-spacing:-.2px;margin:0 0 6px}.empty-state p{max-width:230px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.script-items{max-height:305px;overflow:auto;scrollbar-color:#a6b9ad transparent;scrollbar-width:thin}.script-item{position:relative;width:100%;padding:0 2px;border-bottom:1px solid #e6e9e1}.script-item,.script-item-open{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:10px;background:transparent}.script-item-open{min-width:0;flex:1 1;padding:15px 0;border:0;cursor:pointer}.delete-script-button{border:1px solid var(--line);border-radius:999px;background:var(--white);padding:7px 10px;color:#606060;font-size:10px;font-weight:700;cursor:pointer}.delete-script-button:hover:not(:disabled){color:#a11b1b;border-color:#d7aaaa}.delete-script-button:disabled{opacity:.55;cursor:wait}.script-item.is-selected .script-title,.script-item:hover .script-title{color:var(--green)}.script-item-main{min-width:0;display:flex;flex-direction:column;gap:5px}.script-title{font-size:12px;font-weight:700;line-height:1.45;overflow-wrap:anywhere;transition:color .15s}.script-meta{font-size:10px;color:var(--muted)}.item-arrow{font-size:16px;color:#606060;flex:0 0 auto}.item-arrow svg{display:block;width:18px;height:18px}.mini-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:transparent;overflow:hidden}.mini-progress>span{display:block;height:100%;background:var(--coral);transition:width .25s}.library-foot{font-size:10px;color:var(--muted);margin:13px 0 0}.start-panel{margin-top:18px;background:#f2f2f2;border:1px solid #e5e5e5;border-radius:13px;padding:18px 21px;display:flex;align-items:center;justify-content:space-between;gap:22px;animation:arrive .35s cubic-bezier(.2,.8,.2,1) both}.start-panel h2{font-family:var(--serif);font-size:21px;font-weight:600;margin:0 0 2px;letter-spacing:-.3px}.start-panel p{margin:0;color:var(--muted);font-size:12px}.choice-actions{display:flex;gap:9px;flex:0 0 auto}.secondary-button{min-height:42px;border:1px solid #d9d9d9;border-radius:999px;background:#f2f2f2;color:var(--green);padding:0 14px;font-size:11px;font-weight:700}.secondary-button:hover:not(:disabled){background:#e5e5e5}.privacy-note{color:#606060;margin:18px 0 0}.notice,.privacy-note{font-size:12px;line-height:1.5}.notice{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:9px;margin:0 0 16px}.notice-error{background:#faece8;border:1px solid #efd0c8;color:#783c31}.quiet-button{background:transparent;color:#606060;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:3px;padding:5px}.study-screen{width:min(100%,670px);margin:0 auto;padding:38px 0 58px;flex:1 1}.back-link{border:0;background:transparent;color:#606060;padding:0;display:inline-flex;gap:9px;align-items:center;font-size:16px;cursor:pointer;margin-bottom:32px}.back-link span{font-size:12px;font-weight:600}.back-link:hover{color:var(--ink)}.study-heading{margin-bottom:27px}.study-heading h1{font-size:clamp(36px,5vw,48px);max-width:640px;overflow-wrap:anywhere}.study-intro{max-width:470px;color:var(--muted);font-size:13px;line-height:1.65;margin:12px 0 0}.lesson-sheet{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:21px 23px 24px;box-shadow:var(--shadow)}.sheet-label{display:flex;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--line);font-size:9px;font-weight:700;letter-spacing:.12em;color:#606060}.sheet-label span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lesson-sheet p{font-family:var(--serif);font-size:clamp(20px,3vw,26px);line-height:1.55;letter-spacing:-.2px;margin:17px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.copy-warning-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:rgba(15,15,15,.45)}.copy-warning{width:min(100%,420px);padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 12px 36px rgba(0,0,0,.18)}.copy-warning h2{margin:0 0 10px;font-size:22px;letter-spacing:-.4px}.copy-warning p{margin:0 0 21px;color:var(--muted);font-size:14px;line-height:1.55}.copy-warning button{width:100%}.lesson-tip{display:flex;align-items:flex-start;gap:10px;margin:16px 0 21px;color:#606060}.lesson-tip p{font-size:11px;line-height:1.5;margin:0}.tip-mark{font-size:14px;line-height:1;color:var(--coral)}.wide-button{width:100%;justify-content:space-between;padding:0 17px}.quiz-entry{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:22px;box-shadow:var(--shadow)}.quiz-entry textarea{min-height:158px}.answer-input-heading,.script-input-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.answer-input-heading label,.script-input-heading label{margin:0}.script-voice-button .mic-mark{color:var(--coral)}.script-voice-button:hover:not(:disabled){background:#f2f2f2}.script-input-heading .secondary-button{flex:0 0 auto}.answer-input-heading label{margin:0}.quiz-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:13px}.voice-button{gap:9px}.mic-mark{width:18px;height:18px;display:block}.mic-mark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.mic-mark.listening{color:var(--coral);animation:pulse 1s infinite alternate}.gentle-hint{font-size:11px;color:#63756a;margin:12px 0 0;line-height:1.5}.memory-help h2{font-size:22px;letter-spacing:-.4px;margin:0 0 14px}.memory-help blockquote{margin:0;padding:13px 15px;border-left:3px solid var(--coral);background:#f7f7f7;border-radius:0 9px 9px 0;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.memory-options{display:grid;grid-gap:9px;gap:9px;margin-top:16px}.memory-option{width:100%;height:auto;min-height:44px;justify-content:flex-start;text-align:left;white-space:normal;overflow-wrap:anywhere;border-radius:10px;line-height:1.45;padding:11px 14px;color:var(--ink)}.success-panel{position:relative;overflow:hidden;text-align:center;background:var(--white);border:1px solid var(--line);border-radius:17px;padding:34px 24px 28px;box-shadow:var(--shadow);animation:arrive .32s cubic-bezier(.2,.8,.2,1) both}.check-badge{width:55px;height:55px;display:grid;place-items:center;border-radius:50%;background:#e5f0e5;color:var(--green);margin:0 auto 17px}.check-badge svg{width:29px;height:29px}.success-panel h2{font-family:var(--serif);font-weight:600;font-size:29px;letter-spacing:-.5px;margin:0 0 7px}.success-panel>p{color:var(--muted);font-size:12px;margin:0 0 20px;line-height:1.5}.confetti{position:absolute;inset:0 0 auto;height:65px;pointer-events:none}.confetti i{position:absolute;display:block;width:6px;height:11px;border-radius:2px;top:8px;left:18%;background:var(--coral);transform:rotate(31deg);animation:fall .8s ease-out both}.confetti i:nth-child(2){left:30%;top:20px;background:#e9bc49;transform:rotate(-20deg);animation-delay:.08s}.confetti i:nth-child(3){left:70%;top:10px;background:#538b70;transform:rotate(40deg);animation-delay:.12s}.confetti i:nth-child(4){left:82%;top:24px;background:var(--blue);transform:rotate(-30deg);animation-delay:.04s}.confetti i:nth-child(5){left:11%;top:35px;background:#e9bc49;transform:rotate(-45deg);animation-delay:.16s}.confetti i:nth-child(6){left:91%;top:41px;background:var(--coral);transform:rotate(25deg);animation-delay:.1s}.confetti i:nth-child(7){left:59%;top:2px;background:#e9bc49;transform:rotate(-12deg);animation-delay:.18s}.app-footer{min-height:58px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:#68796e;font-size:10px}.app-footer>span:first-child{color:var(--ink);font-size:12px;font-weight:700;letter-spacing:-.4px}.spinner{width:13px;height:13px;display:inline-block;border:2px solid rgba(255,255,255,.35);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{to{opacity:.45}}@keyframes fall{0%{transform:translateY(-10px) rotate(0deg);opacity:0}to{opacity:1}}@media(max-width:760px){.app-shell{padding:0 25px}.topbar{height:72px}.signed-out-screen{min-height:55vh;padding:35px 0}.signed-in-tools{gap:8px}.signed-in-tools .top-note{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-screen{padding-top:37px}.screen-heading{align-items:flex-start;flex-direction:column;gap:9px;margin-bottom:23px}.heading-note{max-width:300px}.home-grid{grid-template-columns:1fr;gap:15px}.add-panel,.script-list{padding:21px}.textarea{min-height:165px}.empty-state{min-height:190px}.script-items{max-height:260px}.start-panel{align-items:flex-start;flex-direction:column;gap:14px}.choice-actions{width:100%}.choice-actions button{flex:1 1}.privacy-note{margin-top:14px}.study-screen{padding-top:28px}.back-link{margin-bottom:27px}}@media(max-width:420px){.app-shell{padding:0 17px}.topbar{height:65px}.brand{font-size:21px}.brand-icon{width:33px;height:33px}.top-note{font-size:10px}.signed-in-tools{gap:5px}.signed-in-tools .top-note{max-width:115px;font-size:9px}.signed-in-tools .quiet-button{font-size:10px;padding:5px 2px}.home-screen{padding-top:30px}h1{font-size:39px}.add-panel,.script-list{padding:19px 17px}.form-foot{align-items:flex-start;flex-direction:column}.form-foot .primary-button{width:100%;justify-content:space-between}.study-heading h1{font-size:36px}.lesson-sheet{padding:17px}.lesson-sheet p{font-size:21px}.quiz-entry{padding:17px}.quiz-actions{align-items:stretch;flex-direction:column-reverse}.quiz-actions button{width:100%;justify-content:center}.success-panel{padding:31px 17px 23px}.success-panel h2{font-size:26px}.app-footer{min-height:52px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.landing-shell{width:min(100%,1200px);min-height:100svh;margin:0 auto;padding:0 48px;display:flex;flex-direction:column;color:var(--ink)}.landing-header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.landing-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:23px;font-weight:700;letter-spacing:-1.1px;text-decoration:none}.landing-eye{display:block;width:37px;height:37px}.landing-header>p{margin:0;color:var(--muted);font-size:12px;letter-spacing:.03em}.landing-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:center;grid-gap:clamp(48px,8vw,108px);gap:clamp(48px,8vw,108px);padding:76px 0 88px;border-bottom:1px solid var(--line)}.landing-copy h1{max-width:620px;margin:0 0 24px;font-size:clamp(58px,7.5vw,92px);font-weight:700;line-height:.92;letter-spacing:-.075em}.landing-copy>p:not(.landing-note):not(.landing-error){max-width:480px;margin:0;color:var(--muted);font-size:16px;line-height:1.7}.landing-cta{min-height:52px;margin-top:27px;padding:0 21px;font-size:13px;text-decoration:none}.landing-cta svg{width:17px;height:17px}.landing-note{max-width:370px;margin:14px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.landing-error{max-width:430px;margin:18px 0 -12px;color:#783c31;font-size:13px;line-height:1.5}.landing-preview{overflow:hidden;align-self:center;width:100%;max-width:464px;border:1px solid var(--line);border-radius:17px;background:#f7f7f7;box-shadow:0 18px 48px rgba(0,0,0,.07)}.preview-toolbar{height:63px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:var(--white);border-bottom:1px solid var(--line)}.preview-brand{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:14px;font-weight:700;letter-spacing:-.4px}.preview-brand .landing-eye{width:22px;height:22px}.preview-label-top{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.13em}.preview-content{padding:32px 31px 27px}.preview-kicker{margin:0 0 21px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.14em}.preview-content h2{max-width:300px;margin:0;font-size:32px;line-height:1.05;letter-spacing:-1.1px}.preview-instruction{max-width:345px;margin:18px 0 22px;color:#454545;font-family:var(--serif);font-size:18px;line-height:1.55}.preview-separator{height:1px;background:#ddd}.preview-next{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:17px;color:var(--ink);font-size:12px;font-weight:700}.preview-arrow{color:var(--coral);font-size:21px;font-weight:400}.landing-story{padding:36px 0 47px}.story-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-bottom:21px;border-bottom:1px solid var(--line)}.story-heading h2{margin:0;font-size:25px;letter-spacing:-.7px}.story-heading p{max-width:390px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.story-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:0;list-style:none}.story-steps li{display:grid;grid-template-columns:35px 1fr;grid-gap:10px;gap:10px;padding:20px 18px 0 0}.story-steps li+li{padding-left:20px;border-left:1px solid var(--line)}.story-number{color:var(--coral);font-size:10px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.story-steps h3{margin:0 0 6px;font-size:14px;letter-spacing:-.2px}.story-steps p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.landing-footer{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;border-top:1px solid var(--line)}.landing-footer .landing-brand{font-size:15px;letter-spacing:-.5px}.landing-footer .landing-eye{width:24px;height:24px}.landing-footer>span{color:var(--muted);font-size:11px}@media(max-width:800px){.landing-shell{padding:0 25px}.landing-header{height:72px}.landing-hero{grid-template-columns:1fr;gap:42px;padding:62px 0 56px}.landing-copy h1{max-width:600px;font-size:clamp(58px,11vw,82px)}.landing-preview{max-width:none}.landing-story{padding:32px 0 40px}.story-heading{align-items:flex-start;flex-direction:column;gap:8px}.story-heading p{max-width:480px}}@media(max-width:520px){.landing-shell{padding:0 20px}.landing-header{height:66px}.landing-brand{gap:8px;font-size:21px}.landing-eye{width:33px;height:33px}.landing-header>p{font-size:10px}.landing-hero{gap:36px;padding:49px 0 42px}.landing-copy h1{max-width:340px;margin-bottom:18px;font-size:clamp(52px,14vw,64px);letter-spacing:-.075em}.landing-copy>p:not(.landing-note):not(.landing-error){font-size:14px;line-height:1.65}.landing-cta{width:100%;justify-content:space-between;margin-top:22px}.landing-note{font-size:10px}.landing-error{margin-bottom:0}.landing-preview{border-radius:13px}.preview-toolbar{height:54px;padding:0 17px}.preview-content{padding:25px 20px 21px}.preview-kicker{margin-bottom:17px}.preview-content h2{font-size:28px}.preview-instruction{margin:14px 0 19px;font-size:17px}.story-heading h2{font-size:22px}.story-steps{grid-template-columns:1fr}.story-steps li,.story-steps li+li{grid-template-columns:32px 1fr;gap:10px;padding:15px 0;border-left:0}.story-steps li+li{border-top:1px solid var(--line)}.landing-footer{min-height:58px}.landing-footer .landing-brand{font-size:14px}.landing-footer .landing-eye{width:22px;height:22px}.landing-footer>span{font-size:10px}}