@font-face{font-family:Nunito Sans;src:url(/fonts/nunito-sans.ttf) format("truetype");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:Playwrite US Modern;src:url(/fonts/playwrite-us-modern.ttf) format("truetype");font-weight:100 400;font-style:normal;font-display:swap}:root{font-family:Nunito Sans,Arial,sans-serif;color:#283d35;background:#fafaf6;font-synthesis:none;--ink:#253e33;--green:#284e41;--muted:#747d73;--line:#dde1d7;--gold:#f2d183;--soft:#f0f2e9;--paper:#fff;--radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b18931;outline-offset:4px}button{transition:background .16s,border-color .16s,box-shadow .16s}button:disabled{cursor:wait;opacity:.58}button:not(:disabled):hover{filter:brightness(.97)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}fieldset{margin:25px 0 0;border:0;padding:0;min-width:0}legend{font-size:12px;font-weight:750;letter-spacing:.02em;margin-bottom:10px}svg{flex:none}main{max-width:1184px;margin:auto;padding:0 28px}.skip-link{position:absolute;left:20px;top:-70px;background:#fff;padding:12px;z-index:50}.skip-link:focus{top:8px}.site-header{border-bottom:1px solid #e5e7dd;background:#fafaf6}.header-inner{max-width:1240px;height:86px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:18px;font-weight:850;letter-spacing:-.6px;white-space:nowrap}.brand-light{font-weight:620}.header-inner nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:650;margin-left:18px}.header-inner nav>a{text-decoration:none;padding:12px 0}.header-inner nav>a:hover{color:#7d6627}.header-note{margin-left:auto;font-size:12px;color:#747d73;font-style:italic}.nav-menu{position:relative}.nav-menu summary{list-style:none;display:flex;gap:8px;align-items:center;padding:12px 0}.nav-menu summary::-webkit-details-marker{display:none}.nav-links{position:absolute;top:44px;left:-15px;z-index:20;min-width:250px;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:0 16px 28px #273e3310;border-radius:9px}.nav-links a{display:block;padding:11px 10px;text-decoration:none;border-radius:5px}.nav-links a:hover{background:var(--soft)}.intro{padding:49px 0 34px;display:flex;align-items:center;justify-content:space-between;gap:25px}.eyebrow{font-size:10px;font-weight:850;letter-spacing:1.7px;line-height:1.5;text-transform:uppercase;display:flex;align-items:center;gap:7px;color:#70816a}.eyebrow>span{width:6px;height:6px;background:#a5b48a;border-radius:50%}h1{font-size:48px;line-height:1.12;font-weight:750;letter-spacing:-1.7px;max-width:800px;margin-top:12px}.intro-copy{font-size:15px;line-height:1.65;color:#6a776c;max-width:690px;margin-top:14px}.intro-benefits{display:flex;flex-wrap:wrap;gap:21px;font-size:11px;color:#677361;margin-top:20px}.intro-benefits>span{display:flex;align-items:center;gap:5px}.handwritten-note{font-family:Playwrite US Modern,cursive;color:#597247;font-size:21px;transform:rotate(-8deg);width:150px;margin:35px 45px 0 0;white-space:nowrap}.handwritten-note svg{width:75px;height:40px;margin:15px 0 0 48px;display:block;fill:none;stroke:#a0af84;stroke-width:1.8;stroke-linecap:round}.workbench{display:grid;grid-template-columns:365px minmax(0,1fr);gap:26px;align-items:start;margin-bottom:48px}.controls-panel{background:#fff;border:1px solid #dce2d7;border-radius:var(--radius);padding:25px 24px 20px;box-shadow:0 2px 3px #2d422705}.panel-heading{display:flex;gap:10px;align-items:center;padding-bottom:24px}.panel-heading h2{font-size:16px;font-weight:800;letter-spacing:-.3px}.step-number{font-size:10px;width:26px;height:26px;display:grid;place-content:center;border-radius:50%;background:#eff2e7;color:#728561;font-weight:800}.input-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.input-label-row label{font-size:12px;font-weight:750}.text-button{border:0;background:none;font-size:11px;color:#697766;padding:8px 0 8px 12px}.text-button:hover{text-decoration:underline}textarea{width:100%;resize:vertical;min-height:116px;max-height:360px;background:#fdfdfa;border:1px solid #d6ded1;border-radius:7px;padding:13px 14px;font-size:14px;line-height:1.65;color:#334937;display:block;transition:border-color .2s;scroll-margin-bottom:140px}textarea:focus{outline:none;box-shadow:0 0 0 3px #dce7d280;border-color:#829674}textarea[aria-invalid=true]{border-color:#ba5b49}.input-meta{display:flex;align-items:flex-start;gap:10px;justify-content:space-between;font-size:9px;color:#7e857c;margin-top:8px;line-height:1.6}#char-count{white-space:nowrap}.sample-chips{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:12px;font-size:10px}.sample-chips>span{color:#90968b;margin-right:3px}.sample-chips button{border:1px solid #e3e7dd;padding:6px 9px;border-radius:20px;background:#f7f8f1;color:#637557;font-size:10px;font-weight:650;min-height:28px}.font-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dce2d7;border-radius:8px;overflow:hidden;padding:4px;gap:4px;background:#fbfcf8}.font-option{display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:5px;background:transparent;height:57px;font-size:12px;font-weight:750}.font-option>span:first-child{font-size:24px;font-weight:450}.font-option.cursive-option>span:first-child{font-family:Playwrite US Modern,cursive;font-size:22px}.font-option.selected{background:#eaf0e2;border-color:#c9d5bd;color:#32502c}.style-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.style-option{border:1px solid #dce2d7;border-radius:7px;padding:5px 4px 8px;background:#fff;font-size:10px;font-weight:750;text-align:center;overflow:hidden}.style-option>svg{width:100%;height:49px;display:block;margin-bottom:3px}.style-option.selected{border-color:#8ca275;box-shadow:0 0 0 1px #8ca275;background:#f7f9f0}.segmented{display:grid;grid-template-columns:1fr 1.22fr;padding:3px;border:1px solid #e0e5da;border-radius:7px;background:#f8faf5;gap:3px}.segmented button{border:1px solid transparent;background:none;padding:10px 3px;font-size:10px;font-weight:700;border-radius:5px;min-height:35px}.segmented button.selected{background:#fff;border-color:#d9e0d1;box-shadow:0 1px 3px #2d42270a}.settings-row{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:24px}.settings-row label{display:grid;gap:9px;font-size:11px;font-weight:750}.settings-row select{width:100%;padding:10px;border:1px solid #dce2d7;border-radius:6px;color:#5c6b55;background:#fff;font-size:12px;min-height:40px}.repeat-control{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;margin-top:23px;cursor:pointer;min-height:30px}.repeat-control input{accent-color:#536f43;width:15px;height:15px;margin:0}.repeat-hint{font-size:10px;line-height:1.5;color:#8a9383;margin:3px 0 0 23px}.control-message{min-height:16px;font-size:11px;color:#76836e;margin-top:18px;line-height:1.55}.control-message.error{color:#ac473a}.retry-button{border:1px solid #a9b79a;background:#f0f4e7;border-radius:5px;padding:8px 12px;font-size:12px;margin-top:10px}.preview-column{min-width:0;position:sticky;top:22px}.preview-toolbar{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px;font-size:11px;color:#7c8675}.preview-toolbar>div{display:flex;gap:7px;align-items:center}.preview-toolbar h2{font-size:11px;font-weight:750;color:#5f7255}.live-dot{height:6px;width:6px;background:#96af75;border-radius:100%}.preview-stage{border:1px solid #e0e4d9;border-radius:var(--radius);padding:29px 42px;background:#eef0e6;max-height:865px;overflow:auto;overscroll-behavior:contain;min-height:500px;scrollbar-color:#c4cdbc transparent;scrollbar-width:thin;background-image:radial-gradient(#cad1bf80 .65px,transparent .65px);background-size:8px 8px}.preview-stage[aria-busy=true]{opacity:.85}.preview-stage.invalid{opacity:.5}.preview-stage canvas{width:100%;height:auto;display:block;box-shadow:0 3px 5px #41543812,0 12px 26px #45533314;background:#fff;border:1px solid #e4e6de;margin:0 auto 22px;max-width:590px}.preview-stage canvas:last-child{margin-bottom:0}.preview-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;color:#8b9383;margin:13px 4px}.preview-bottom>span:first-child{display:flex;align-items:center;gap:5px}.paper-loading{aspect-ratio:8.5/11;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;color:#7d8c73;font-size:12px;box-shadow:0 4px 14px #354b3010}.loading-pencil{color:#92a07f}.download-dock{position:fixed;bottom:0;left:0;right:0;z-index:15;background:#fffffff5;border-top:1px solid #e1e6d8;padding:13px max(20px,env(safe-area-inset-right)) max(13px,env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.dock-inner{max-width:1128px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.dock-copy{display:flex;align-items:center;gap:12px;color:#778769}.dock-copy strong{display:block;font-size:12px;color:#40533a;font-weight:800}.dock-copy span{display:block;font-size:10px;margin-top:4px}.download-button{min-height:49px;display:flex;gap:10px;align-items:center;justify-content:center;border:1px solid #284e41;border-radius:7px;background:#284e41;color:#fff;padding:13px 27px;font-size:13px;font-weight:750;box-shadow:0 2px 4px #2b4d3c17;white-space:nowrap}.download-button:disabled{background:#6c8274;border-color:#6c8274}.download-button.busy svg{animation:gentle-pulse 1s alternate infinite}.toast{position:fixed;bottom:95px;left:50%;transform:translate(-50%);z-index:30;background:#2d5141;color:#fff;padding:13px 20px;border-radius:8px;box-shadow:0 5px 20px #19302320;font-size:12px;max-width:calc(100vw - 30px);width:max-content;line-height:1.5}.toast.error{background:#865548}.how-it-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;border-top:1px solid #e0e5d8;border-bottom:1px solid #e0e5d8;padding:35px 5px 39px;margin:0 0 62px}.how-it-works>div{position:relative;padding-left:35px}.how-it-works>div>span{position:absolute;top:1px;left:0;font-family:Georgia,serif;font-size:16px;color:#a2b391;font-style:italic}.how-it-works h2{font-size:14px;font-weight:800;letter-spacing:-.2px}.how-it-works p{font-size:12px;line-height:1.85;color:#87907c;margin-top:9px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:24px}.section-heading h2{font-size:28px;font-weight:750;letter-spacing:-.8px;line-height:1.2;margin-top:9px}.section-heading>p{font-size:12px;color:#8b957e;margin-bottom:2px}.worksheet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.worksheet-card{display:block;background:#fff;text-decoration:none;border:1px solid #e0e4d9;border-radius:9px;overflow:hidden;transition:transform .18s,box-shadow .18s}.worksheet-card:hover{transform:translateY(-3px);box-shadow:0 6px 18px #5262440e}.card-sheet{height:140px;margin:13px 13px 0;border-radius:4px;background:#f3f5ec;padding:26px 17px 0;overflow:hidden;position:relative}.tone-1 .card-sheet{background:#f8f2e7}.tone-2 .card-sheet{background:#edf3f4}.card-handwriting{font-family:Playwrite US Modern,cursive;font-size:25px;color:#638058;line-height:1.8;white-space:nowrap;position:relative;z-index:2;display:block}.print-sample{font-family:Nunito Sans,sans-serif}.tone-1 .card-handwriting{color:#9d8b5b}.tone-2 .card-handwriting{color:#668491}.card-line{display:block;border-top:1px solid #c8d5c0;position:relative;top:-7px;margin-bottom:26px}.card-body{padding:18px 20px 21px;position:relative}.card-body h3{font-size:15px;line-height:1.5;font-weight:800;padding-right:25px}.card-body>svg{position:absolute;right:17px;top:20px;color:#7d936e;width:17px}.card-body p{font-size:12px;color:#8b9481;line-height:1.7;margin-top:7px}.practice-guide{display:grid;grid-template-columns:300px minmax(0,1fr);gap:70px;margin-top:80px;padding:58px 0;border-top:1px solid #e0e5d8}.guide-heading h2{font-size:30px;letter-spacing:-1px;line-height:1.3;font-weight:750;margin:13px 0}.guide-heading>p:last-child{color:#819078;font-size:13px;line-height:1.85}.guide-sections details,.faq-section details{border-bottom:1px solid #e1e6d9}.guide-sections details:first-child{border-top:1px solid #e1e6d9}.guide-sections summary,.faq-section summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;list-style:none}.guide-sections summary::-webkit-details-marker,.faq-section summary::-webkit-details-marker{display:none}.guide-sections summary h2{font-size:15px;font-weight:750;line-height:1.5}.guide-sections summary>span,.faq-section summary>span{font-size:18px;font-weight:400;color:#8f9c81}.guide-sections details[open] summary>span,.faq-section details[open] summary>span{transform:rotate(45deg)}.article-copy p,.faq-section details>p{font-size:13px;color:#7a8671;line-height:1.9;margin-bottom:15px}.article-copy{padding-bottom:8px}.faq-section{display:grid;grid-template-columns:300px minmax(0,1fr);gap:70px;padding:42px 0 65px;border-top:1px solid #e0e5d8}.faq-section>div>h2{font-size:27px;font-weight:750;letter-spacing:-.6px;line-height:1.35;margin-top:10px}.faq-section h3{font-size:13px;font-weight:750;line-height:1.5}.faq-section details:first-child summary{padding-top:0}.back-home{font-size:13px;line-height:1.8;color:#7e8a73;text-align:center;padding:0 0 45px}.site-footer{max-width:1184px;padding:35px 28px 122px;margin:auto;border-top:1px solid #e0e5d8;display:grid;grid-template-columns:1fr auto;gap:22px}.footer-brand{font-size:15px;font-weight:800;letter-spacing:-.4px}.site-footer>div>p{font-size:11px;color:#8c9682;margin-top:12px}.footer-links{display:flex;gap:24px;align-items:center;font-size:11px;color:#7c8973}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}.copyright{grid-column:1/-1;font-size:10px;color:#939b88}.noscript{padding:25px;background:#f7ecd9;position:fixed;top:0;left:0;right:0;z-index:60}.policy-page{max-width:790px;margin:70px auto 100px;min-height:55vh}.policy-page h1,.not-found h1{margin-bottom:24px}.policy-intro{font-size:19px;line-height:1.75;margin-bottom:40px}.policy-page section{margin:35px 0}.policy-page section h2{font-size:22px;margin-bottom:14px}.policy-page section p{color:#71816a;font-size:15px;line-height:1.9;margin-bottom:15px}.back-link{display:inline-flex;align-items:center;gap:12px;color:#fff;background:var(--green);border-radius:6px;text-decoration:none;padding:13px 20px;font-size:14px}.not-found{text-align:center;min-height:58vh;padding:90px 20px}.not-found h1{margin-left:auto;margin-right:auto}.not-found .eyebrow{justify-content:center}.not-found p:not(.eyebrow){margin:25px 0;color:#7b8772}@keyframes gentle-pulse{to{opacity:.4;transform:translateY(2px)}}@media(min-width:1400px){.preview-stage{max-height:910px}.intro{padding-top:53px;padding-bottom:38px}}@media(max-width:1100px){.header-note{display:none}.header-inner nav{margin-left:auto}.intro h1{font-size:42px}.handwritten-note{margin-right:18px;font-size:18px}.workbench{grid-template-columns:340px minmax(0,1fr);gap:20px}.controls-panel{padding:22px 20px}.preview-stage{padding:25px 23px;min-height:450px}.practice-guide,.faq-section{grid-template-columns:250px 1fr;gap:40px}.how-it-works{gap:25px}.section-heading>p{display:none}}@media(max-width:800px){main{padding:0 20px}.header-inner{height:74px;padding:0 20px}.brand{font-size:16px}.brand-light{display:none}.header-inner nav{gap:22px;font-size:12px}.header-inner nav>a:first-child{display:none}.intro{padding:32px 0 27px}.intro h1{font-size:39px;max-width:590px}.intro-copy{font-size:14px}.handwritten-note{display:none}.intro-benefits{font-size:10px;gap:15px}.workbench{grid-template-columns:1fr 1fr;gap:16px}.controls-panel{padding:19px 16px}.preview-stage{padding:20px 12px;min-height:350px}.font-option{gap:6px}.preview-toolbar{font-size:9px}.preview-bottom{font-size:9px;flex-wrap:wrap}.how-it-works{gap:20px;padding:26px 0}.how-it-works>div{padding-left:0}.how-it-works>div>span{position:static;display:block;margin-bottom:9px}.how-it-works h2{font-size:12px}.how-it-works p{font-size:11px}.worksheet-grid{gap:13px}.card-sheet{height:100px;padding-top:13px;margin:8px 8px 0}.card-handwriting{font-size:19px}.card-body{padding:13px}.card-body h3{font-size:12px}.card-body p{font-size:11px}.card-body>svg{right:9px;top:15px;width:14px}.practice-guide,.faq-section{grid-template-columns:1fr 1.5fr;gap:28px}.guide-heading h2{font-size:24px}.guide-sections summary h2{font-size:13px}.site-footer{padding-left:20px;padding-right:20px}.footer-links{gap:15px}}@media(max-width:620px){main{padding:0 16px}.header-inner{padding:0 16px;height:68px;gap:10px}.brand{font-size:16px;gap:8px}.brand img{width:31px;height:31px}.header-inner nav{gap:17px;font-size:11px}.header-inner nav>a{display:none}.nav-links{left:auto;right:0;min-width:245px}.intro{padding-top:29px}.intro .eyebrow{font-size:9px;letter-spacing:1.5px}.intro h1{font-size:35px;letter-spacing:-1.2px;max-width:360px;line-height:1.12}.intro-copy{font-size:13px;margin-top:12px;max-width:390px}.intro-benefits{gap:12px;font-size:10px;margin-top:16px}.intro-benefits svg{width:13px;height:13px}.workbench{display:flex;flex-direction:column;gap:21px;margin-bottom:33px}.controls-panel{width:100%;padding:23px 20px 18px}.panel-heading{padding-bottom:18px}.panel-heading h2{font-size:16px}.input-label-row label,legend{font-size:12px}textarea{font-size:16px;min-height:105px}.input-meta{font-size:10px}.sample-chips{font-size:11px;gap:7px}.sample-chips button{font-size:11px;min-height:44px;padding:8px 11px}.text-button{min-height:44px}.font-option{height:59px}.font-option>span:last-child{font-size:12px}.style-option{font-size:11px;padding-bottom:9px}.style-option>svg{height:50px}.segmented button{font-size:11px;min-height:44px}.settings-row select{font-size:14px;min-height:46px}.repeat-control{min-height:44px}.repeat-hint{margin-top:-3px}.control-message{margin-top:15px}.preview-column{width:100%;position:static}.preview-toolbar{font-size:10px;height:37px}.preview-toolbar h2{font-size:12px}.preview-stage{padding:23px 24px;max-height:none;overflow:visible;min-height:450px}.preview-bottom{font-size:9px}.dock-copy{display:none}.dock-inner{justify-content:stretch}.download-dock{padding:11px 16px max(11px,env(safe-area-inset-bottom))}.download-button{width:100%;font-size:14px;height:50px}.toast{bottom:85px;font-size:12px}.how-it-works{grid-template-columns:1fr;gap:23px;margin-bottom:43px;padding:28px 4px}.how-it-works>div{padding-left:32px}.how-it-works>div>span{position:absolute;top:0}.how-it-works h2{font-size:14px}.how-it-works p{font-size:12px;margin-top:6px;max-width:370px}.section-heading h2{font-size:24px;line-height:1.25;max-width:320px}.section-heading .eyebrow{font-size:9px}.worksheet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-sheet{height:95px;padding-left:10px;padding-top:16px}.card-handwriting{font-size:19px}.card-body{padding:12px 13px 15px}.card-body h3{font-size:12px;font-weight:850;padding-right:12px;line-height:1.4}.card-body>svg{width:12px;right:8px;top:15px}.card-body p{font-size:10px;line-height:1.7;margin-top:7px}.practice-guide,.faq-section{grid-template-columns:1fr;gap:24px;margin-top:48px;padding:35px 0}.guide-heading h2{font-size:27px;max-width:340px;line-height:1.25}.guide-heading>p:last-child{font-size:12px}.guide-sections summary h2{font-size:14px}.article-copy p,.faq-section details>p{font-size:13px}.faq-section{margin-top:0}.faq-section>div>h2{font-size:26px}.faq-section h3{font-size:13px}.site-footer{display:block;margin:10px 16px 0;padding:27px 0 110px}.footer-links{margin:25px 0;font-size:11px;gap:20px}.footer-brand{font-size:15px}.copyright{margin-top:20px}.back-home{font-size:12px;padding-bottom:23px}.policy-page{margin:40px 18px 55px;padding:0}.policy-page h1{font-size:38px}.policy-intro{font-size:16px}.policy-page section p{font-size:14px}.not-found{padding:65px 5px}.not-found h1{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
