@charset "UTF-8";
:root{--cream:#fbf6ec;--paper:#fffdf8;--plum:#35182e;--muted:#6b5360;--line:#dbcfcf;--rose:#ead3d0;--rose-deep:#8c4258;--sage:#dbe4d2;--focus:#a84f3c;--radius:14px;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--rose-deep) var(--cream)}body{margin:0;background:var(--cream);color:var(--plum);font:16px/1.6 var(--sans);caret-color:var(--rose-deep)}::selection{background:var(--rose);color:var(--plum)}button,input,textarea,select{font:inherit;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button svg, .approved svg,.save-status svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1:focus{outline:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.13;text-wrap:balance}h1{font-size:clamp(2.4rem,4.2vw,4rem);letter-spacing:-.035em}h2{font-size:2rem;letter-spacing:-.025em}h3{font-size:1.4rem}p{max-width:72ch}button.primary,button.secondary,.button,button.danger{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 24px;border-radius:7px;line-height:1.35;font-weight:600;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}button.primary{background:var(--plum);color:var(--cream);border:1px solid var(--plum)}button.primary:hover{background:#56233f}button.primary:active{transform:translateY(1px)}button.secondary,.button.secondary{background:transparent;border:1px solid var(--plum);color:var(--plum)}button.secondary:hover,.button.secondary:hover{background:var(--rose)}button.danger{background:#8a293b;color:white;border:0}button.large{padding:17px 30px;font-size:1.06rem}.text-button,.nav-link{border:0;background:none;padding:10px 0;text-decoration:underline;text-underline-offset:5px;font-weight:600}.text-button:hover,.nav-link:hover{color:var(--rose-deep)}.text-link{display:inline-block;padding:8px 0;font-weight:600}.site-header{height:94px;max-width:1280px;margin:auto;padding:0 52px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-family:var(--serif);font-size:2.05rem;font-weight:700;letter-spacing:-.04em;background:none;border:0;display:flex;align-items:center;padding:0}.brand-dot{width:7px;height:7px;align-self:flex-end;margin:0 0 10px 4px;border-radius:50%;background:var(--rose-deep)}.site-header nav{display:flex;align-items:center;gap:30px}.nav-link{font-size:.91rem;text-decoration:none}.language select{background:none;border:1px solid var(--line);border-radius:6px;padding:7px 9px;font-size:.82rem;font-weight:600}.demo-bar{background:var(--plum);color:var(--cream);text-align:center;font-size:.76rem;letter-spacing:.035em;padding:8px 20px}.home-main{max-width:1280px;margin:auto}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:60px;padding:64px 72px 88px}.hero h1{font-size:clamp(3rem,4.65vw,4.7rem);line-height:1.02;max-width:610px}.hero h1 em{font-weight:400;color:var(--rose-deep)}.hero-copy>p{font-size:1.08rem;line-height:1.75;color:var(--muted);margin:26px 0 30px;max-width:470px}.hero-copy>.note{font-size:.77rem;margin:16px 0 2px}.hero-copy>.text-link{font-size:.87rem}.hero-art{position:relative;transform:rotate(2deg);max-width:450px;margin:0 auto}.hero-art>img{width:100%;height:530px;object-fit:cover;object-position:top;box-shadow:14px 22px 40px #35182e22;border:7px solid var(--paper)}figcaption{font-size:.73rem;line-height:1.5;color:var(--muted);margin-top:13px}.hero-art figcaption{transform:rotate(-2deg);margin:20px 20px 0}.paper-tab{position:absolute;bottom:40px;left:-35px;background:var(--rose);padding:16px 24px;transform:rotate(-5deg);font-family:var(--serif);font-style:italic;font-size:1.4rem;box-shadow:4px 10px 18px #35182e18}.how{padding:62px 72px 80px;border-top:1px solid var(--line)}.how>h2{font-size:2.5rem;margin-bottom:40px}.how-list{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.how-list>div{position:relative;padding-left:45px}.how-list>div>span{position:absolute;left:0;top:-1px;font-family:var(--serif);font-style:italic;color:var(--rose-deep);font-size:2rem}.how-list h3{margin-bottom:12px}.how-list p{color:var(--muted);font-size:.91rem}.content-main{max-width:1180px;margin:0 auto;padding:54px 48px 80px;min-height:60vh}.view-heading{margin-bottom:36px}.view-heading p{font-size:1.02rem;color:var(--muted);margin-top:18px;max-width:730px}.view-heading h1{max-width:860px}.journey{max-width:1180px;margin:auto;display:flex;align-items:center;gap:24px;padding:22px 48px 0;font-size:.76rem;color:var(--muted)}.journey>span:first-child{font-weight:600;color:var(--plum)}.journey ol{display:flex;gap:22px;list-style:none;padding:0;margin:0;flex:1}.journey li{position:relative}.journey li.reached{color:var(--plum)}.journey li.reached:after{content:'';display:block;height:2px;background:var(--rose-deep);position:absolute;left:0;right:0;bottom:-8px}.step-count{font-variant-numeric:tabular-nums}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:28px}.note{font-size:.83rem;line-height:1.65;color:var(--muted);margin-top:22px;max-width:75ch}.note.warning{background:#f3dfcb;padding:16px;border-radius:8px}.alert{background:#f5ded8;border-radius:10px;padding:20px 24px;margin-bottom:28px;color:#6f2634;overflow-wrap:anywhere}.alert p{margin-top:6px}.alert button{margin-top:15px}.save-status{display:flex;align-items:center;gap:8px;color:#3f5439;font-size:.8rem;margin-bottom:20px;max-width:74ch}.save-status svg{width:16px;height:16px}.site-footer{border-top:1px solid var(--line);max-width:1180px;margin:0 auto;padding:42px 48px;display:grid;grid-template-columns:1fr auto;gap:8px 30px}.footer-brand{font-family:var(--serif);font-size:1.7rem;font-weight:bold;letter-spacing:-.03em}.site-footer p{font-size:.8rem;color:var(--muted);grid-column:1}.site-footer nav{display:flex;gap:24px;grid-column:2;grid-row:1 / 3;align-self:center;font-size:.83rem}.site-footer small{grid-column:1 / -1;color:var(--muted);font-size:.68rem;margin-top:20px;max-width:100ch}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 30px}.choice{background:transparent;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:38px 1fr 25px;align-items:center;gap:0 15px;text-align:left;padding:23px 15px;position:relative;min-height:108px;border-radius:0}.choice:hover{background:#f2e8e0}.choice.selected{background:var(--rose)}.choice strong{font-family:var(--serif);font-size:1.4rem;font-weight:400}.choice>span:not(.choice-number){grid-column:2;font-size:.81rem;color:var(--muted);padding-top:5px}.choice>svg{grid-column:3;grid-row:1 / 3;width:22px}.choice-number{grid-row:1 / 3;color:var(--rose-deep);font-size:.72rem;font-variant-numeric:tabular-nums}.field{margin-bottom:23px}.field>label,.photo-field>label{display:block;font-size:.91rem;font-weight:600;margin-bottom:8px}.field input,.field textarea,.field select,.photo-field>input{width:100%;background:var(--paper);border:1px solid #b8a6ad;border-radius:7px;padding:12px 14px;line-height:1.5}.field textarea{resize:vertical;min-height:90px}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--plum)}.field-hint{font-size:.76rem;color:var(--muted);margin-top:7px;line-height:1.55}.reading-form{max-width:740px}.check{display:flex;align-items:flex-start;gap:12px;margin-top:16px;font-size:.88rem;line-height:1.6;max-width:75ch;cursor:pointer}.check input{width:19px;height:19px;margin:4px 0 0;flex:none;accent-color:var(--plum)}[hidden]{display:none!important}.character-list{margin-bottom:22px}.character{border-top:1px solid var(--line);padding:28px 0 30px}.character:last-child{border-bottom:1px solid var(--line)}.character-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.character-top h2{font-size:1.7rem}.character-top .text-button{font-size:.8rem}.character-fields{display:grid;grid-template-columns:1.2fr 1fr;gap:42px}.photo-field{font-size:.8rem}.photo-field>input{padding:8px;font-size:.76rem}.photo-preview{height:125px;background:#eee5dd;margin-bottom:10px;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;overflow:hidden;color:var(--muted)}.photo-preview svg{width:28px;height:28px;fill:none;stroke:var(--muted);stroke-width:1.4}.photo-preview img{width:100%;height:100%;object-fit:contain}.style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 26px}.style-option{position:relative;cursor:pointer;display:block}.style-option>input{position:absolute;top:12px;left:12px;width:22px;height:22px;accent-color:var(--plum);z-index:2}.style-art{display:block;height:245px;overflow:hidden;border-radius:9px;position:relative;border:3px solid transparent}.style-art img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;transition:transform .3s ease}.style-art>span{position:absolute;bottom:8px;right:8px;background:var(--cream);font-size:.65rem;padding:3px 7px;border-radius:4px}.style-option input:checked+.style-art{border-color:var(--plum)}.style-option input:focus-visible+.style-art{outline:3px solid var(--focus);outline-offset:3px}.style-option:hover .style-art img{transform:scale(1.025)}.style-copy{display:block;padding:12px 3px}.style-copy strong{font-family:var(--serif);font-weight:400;font-size:1.45rem;display:block}.style-copy>span{display:block;color:var(--muted);font-size:.8rem;line-height:1.6;margin-top:7px}.tones{border:0;padding:0;margin:36px 0 0}.tones legend{font-family:var(--serif);font-size:1.8rem;margin-bottom:18px;line-height:1.2}.tone{display:inline-flex;position:relative;margin:0 8px 10px 0;cursor:pointer}.tone input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.tone span{display:block;padding:10px 20px;border:1px solid var(--line);border-radius:6px;font-size:.9rem}.tone input:checked+span{background:var(--plum);color:var(--cream);border-color:var(--plum)}.tone input:focus-visible+span{outline:3px solid var(--focus);outline-offset:3px}.approval-layout,.generation-layout,.finalize-layout{display:grid;grid-template-columns:.85fr 1fr;gap:65px;align-items:start}.sample-figure{max-width:410px}.sample-figure img{width:100%;max-height:560px;object-fit:contain;object-position:top;background:var(--paper);box-shadow:10px 17px 28px #35182e18}.approval-list{list-style:none;margin:22px 0 0;padding:0}.approval-list li{padding:20px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px}.approval-list strong{display:block;font-family:var(--serif);font-weight:400;font-size:1.5rem;overflow-wrap:anywhere}.approval-list li>div>span{display:block;font-size:.78rem;color:var(--muted);margin-top:4px}.approval-list button{font-size:.78rem;padding:10px 14px;max-width:220px}.approved{display:flex;align-items:center;gap:5px;font-size:.78rem;color:#3f5439}.checkout-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.price-sheet{background:var(--rose);padding:32px;border-radius:var(--radius)}.price-sheet h2{font-size:1.5rem}.price{font-family:var(--serif);font-size:3.8rem;line-height:1.2;letter-spacing:-.03em;margin:20px 0 10px}.price span{font-family:var(--sans);font-size:.85rem;letter-spacing:0;display:block;margin-top:5px}.price-sheet p{font-size:.86rem}.price-sheet hr{height:1px;background:#c2a7af;border:0;margin:25px 0}.price-sheet .renewal{margin-bottom:14px}.real-charge{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #c2a7af;margin-top:25px;padding-top:18px;font-size:.88rem}.real-charge strong{font-family:var(--serif);font-weight:400;font-size:2.1rem}.checkout-consent{padding-top:12px}.checkout-consent>p{margin-top:22px}.checkout-consent>.primary{margin-top:28px;width:100%}.checkout-consent .check{margin-top:28px}.generation-stages{padding:0;list-style:none;margin:28px 0}.generation-stages li{display:flex;align-items:center;gap:17px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--muted)}.generation-stages li>span{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:.8rem;flex:none}.generation-stages li>span svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.generation-stages li.current{color:var(--plum)}.generation-stages li.current>span{background:var(--plum);color:var(--cream);border-color:var(--plum)}.generation-stages li.done>span{background:var(--sage);border-color:var(--sage);color:#3f5439}.generation-stages strong{font-weight:600;font-size:.93rem}.generation-stages small{display:block;font-size:.72rem;margin-top:2px}.generation-layout .text-button{display:block;margin-top:10px;font-size:.8rem}.editor-toolbar{display:flex;align-items:center;gap:22px;justify-content:space-between;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.9rem;margin-bottom:28px}.editor-toolbar select{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:6px;margin-left:8px}.editor-toolbar>span{flex:1;font-family:var(--serif);font-size:1.3rem}.editor-toolbar>div{display:flex;gap:8px}.editor-toolbar button{min-height:38px;font-size:.76rem;padding:8px 13px}.editor-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:start}.editor-art{background:var(--paper);padding:10px}.editor-art img{width:100%;max-height:760px;object-fit:contain}.editor-art figcaption{padding:0 8px 8px}.text-editor h2{font-size:1.6rem;margin-bottom:24px}.text-form{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:24px}.text-form .field{margin-bottom:12px}.text-form button{font-size:.82rem;min-height:40px;padding:10px 18px}.text-form textarea{font-size:.94rem}.text-form textarea[readonly]{background:#f2ece3}.editor-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-top:35px;padding-top:24px;border-top:1px solid var(--line)}details{border-top:1px solid var(--line);padding:20px 0;font-size:.88rem}summary{cursor:pointer;font-weight:600;padding:4px 0;min-height:32px}details>p,details>form{margin-top:16px}details>p{font-size:.82rem;color:var(--muted)}.regeneration button{font-size:.8rem}.review-list{margin:26px 0}.review-list>div{border-bottom:1px solid var(--line);padding:13px 0;display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:.87rem}.review-list dt{color:var(--muted)}.review-list dd{margin:0}.finalize-layout .button{margin-top:24px}.gift-layout{display:grid;grid-template-columns:.8fr 1fr;gap:80px}.gift-book{max-width:340px;padding-top:6px}.gift-book>img{width:220px;max-height:310px;object-fit:cover;object-position:top;box-shadow:8px 14px 25px #35182e22;margin-bottom:30px;transform:rotate(-3deg)}.gift-book h2{margin-bottom:15px}.gift-book p{font-size:.78rem;color:var(--muted)}.gift-book a{font-size:.83rem;margin-top:10px}.gift-controls>h2{margin-bottom:22px}.gift-controls>details{margin-top:26px}.gift-controls>.secondary{margin-top:25px}.gift-link{padding:24px 0 4px}.gift-link input{font-size:.8rem}.gift-link .actions{margin-top:5px;font-size:.8rem}.stored-gifts{padding:0;list-style:none}.stored-gifts li{display:flex;justify-content:space-between;gap:15px;font-size:.76rem;align-items:center}.library-summary{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:32px}.library-summary p{font-size:.87rem}.library-summary p>span{margin:0 10px}.book-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}.library-book{display:grid;grid-template-columns:130px 1fr;gap:24px;padding-bottom:30px;border-bottom:1px solid var(--line);min-width:0}.library-book>img{height:190px;width:130px;object-fit:cover;object-position:top;box-shadow:4px 8px 16px #35182e18}.library-book h2{font-size:1.6rem;margin-top:7px;overflow-wrap:anywhere}.library-book p{font-size:.8rem;color:var(--muted);margin:10px 0 4px;overflow-wrap:anywhere}.library-book small{font-size:.67rem;color:var(--muted)}.library-book .actions{margin-top:18px;gap:8px}.library-book button.primary,.library-book button.secondary{font-size:.75rem;padding:10px 13px;min-height:40px}.library-book .text-button{font-size:.76rem}.status-label{font-size:.67rem;color:var(--rose-deep);font-weight:600}.delete-details{padding:9px 0 0;margin-top:14px}.delete-details summary{font-size:.73rem;color:var(--muted)}.delete-details p{font-size:.75rem;margin-top:8px}.delete-details .danger{margin-top:14px;min-height:38px;font-size:.75rem;padding:9px 12px}.subscription{margin-top:45px;padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line)}.subscription h2{font-size:1.7rem;margin-bottom:15px}.subscription p{font-size:.8rem;color:var(--muted);margin-top:7px;max-width:70ch}.subscription button{font-size:.8rem;flex:none}.activity ol{padding:0;list-style:none}.activity li{display:grid;grid-template-columns:150px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:12px 0;font-size:.76rem}.activity time{color:var(--muted)}.empty-library{text-align:center;padding:50px 20px 65px}.empty-library>svg{width:55px;height:55px;fill:none;stroke:var(--rose-deep);stroke-width:1.1;margin:0 auto 20px}.empty-library h2{font-size:2.1rem;margin-bottom:15px}.empty-library p{margin:0 auto 25px;color:var(--muted)}.sample-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 25px}.sample-gallery img{width:100%;aspect-ratio:2/3;object-fit:contain;background:var(--paper)}.sample-gallery figcaption{text-align:center}.legal-demo{max-width:760px}.legal-demo>p{margin:26px 0;line-height:1.9;color:var(--muted)}.legal-demo>.primary{margin-top:18px}.gift-reader article{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:45px;margin-bottom:50px;padding-bottom:35px;border-bottom:1px solid var(--line)}.gift-reader article img{width:100%;max-height:740px;object-fit:contain;background:var(--paper)}.gift-reader h2{margin-bottom:25px}.gift-reader h3{font:600 .9rem var(--sans);line-height:1.5;margin-bottom:22px}.gift-reader p{font-size:1rem;white-space:pre-wrap;margin-bottom:20px;overflow-wrap:anywhere}.gift-reader{margin-top:35px}.loading{padding:12vh 8vw}.skip-link{position:absolute;top:-80px;left:20px;background:var(--plum);color:var(--cream);padding:10px 20px;z-index:50}.skip-link:focus{top:10px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1000px){.hero-art{animation:open-book .8s cubic-bezier(.16,1,.3,1) both}@keyframes open-book{from{transform:rotate(0deg) translateY(15px);filter:saturate(.75)}to{transform:rotate(2deg) translateY(0);filter:saturate(1)}}}
@media(max-width:950px){.site-header{padding:0 30px}.hero{padding:55px 35px 65px;gap:35px}.hero-art>img{height:440px}.hero h1{font-size:3.6rem}.paper-tab{font-size:1.1rem;left:-15px;bottom:45px;padding:12px 17px}.how{padding:45px 35px 60px}.how-list{gap:25px}.content-main{padding:40px 30px 60px}.journey{padding:20px 30px 0;gap:15px}.journey ol{gap:15px}.approval-layout,.generation-layout,.finalize-layout,.checkout-layout{gap:35px}.book-grid{grid-template-columns:1fr}.library-book{grid-template-columns:150px 1fr}.library-book>img{width:150px;height:210px}.gift-layout{gap:40px}.style-art{height:200px}.style-grid{gap:25px 18px}}
@media(max-width:640px){body{font-size:15px}.site-header{height:76px;padding:0 22px;gap:12px}.wordmark{font-size:1.7rem}.brand-dot{margin-bottom:8px}.site-header nav{gap:17px}.nav-link{font-size:.76rem}.language select{font-size:.74rem;padding:5px}.demo-bar{font-size:.62rem;letter-spacing:.01em;line-height:1.5;padding:8px 13px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:42px 24px 55px;gap:40px}.hero h1{font-size:3.25rem;line-height:1.04;max-width:480px}.hero-copy>p{font-size:.98rem;margin:22px 0 25px;line-height:1.75}.hero-copy>.note{font-size:.7rem;line-height:1.7}.hero-copy>.large{width:100%;padding:16px 24px}.hero-copy>.text-link{font-size:.8rem;margin-top:3px}.hero-art{width:83%;max-width:345px}.hero-art>img{height:400px}.hero-art figcaption{font-size:.65rem;margin:15px 0 0}.paper-tab{left:-18px;bottom:35px;font-size:1.05rem}.how{padding:37px 24px 45px}.how>h2{font-size:2rem;margin-bottom:28px}.how-list{grid-template-columns:1fr;gap:28px}.how-list>div{padding-left:40px}.how-list h3{font-size:1.4rem;margin-bottom:8px}.how-list p{font-size:.86rem}.content-main{padding:32px 22px 52px;min-height:64vh}.view-heading{margin-bottom:26px}.view-heading h1{font-size:2.5rem;line-height:1.07}.view-heading p{font-size:.92rem;line-height:1.75;margin-top:17px}.journey{padding:20px 22px 0;gap:12px;font-size:.68rem}.journey ol{gap:10px;overflow:hidden}.journey ol li{display:none}.journey ol li.reached:last-child,.journey ol li.reached:has(+li:not(.reached)){display:block}.step-count{margin-left:auto}.journey>span:first-child{min-width:55px}.actions{gap:12px;margin-top:25px}.actions>.primary{flex:1}.actions>.secondary{padding:12px 19px}.choice-grid{grid-template-columns:1fr}.choice{padding:19px 10px;min-height:98px;gap:0 10px;grid-template-columns:30px 1fr 22px}.choice strong{font-size:1.35rem}.choice>span:not(.choice-number){font-size:.78rem}.character-fields{grid-template-columns:1fr;gap:0}.character{padding:23px 0}.character-top{margin-bottom:20px}.character-top h2{font-size:1.6rem}.photo-preview{height:130px}.photo-field{margin-bottom:8px}.check{font-size:.82rem;gap:10px}.field{margin-bottom:21px}.field>label,.photo-field>label{font-size:.85rem}.field input,.field textarea,.field select{font-size:16px;padding:11px 12px}.field-hint{font-size:.71rem}.style-grid{grid-template-columns:repeat(2,1fr);gap:25px 14px}.style-art{height:185px;border-width:2px}.style-option>input{left:9px;top:9px;width:19px;height:19px}.style-art>span{font-size:.57rem;padding:2px 5px;right:5px;bottom:5px}.style-copy{padding:10px 1px}.style-copy strong{font-size:1.22rem}.style-copy>span{font-size:.72rem}.tones legend{font-size:1.6rem}.tone span{padding:9px 14px;font-size:.8rem}.approval-layout,.generation-layout,.finalize-layout,.checkout-layout,.editor-layout,.gift-layout{grid-template-columns:1fr;gap:32px}.approval-layout .sample-figure,.generation-layout .sample-figure,.finalize-layout .sample-figure{max-width:270px;margin:0 auto}.sample-figure img{max-height:380px}.sample-figure figcaption{font-size:.67rem}.approval-list li{gap:12px}.approval-list strong{font-size:1.35rem}.approval-list button{font-size:.71rem;max-width:180px;padding:10px 12px}.approval-layout h2{font-size:1.7rem}.price-sheet{padding:25px}.price{font-size:3.5rem}.checkout-consent{padding:0}.checkout-consent h2{font-size:1.8rem}.generation-layout .primary{width:100%}.generation-stages{margin:20px 0}.generation-stages strong{font-size:.87rem}.editor-toolbar{gap:10px;flex-wrap:wrap;margin-bottom:20px;padding:13px 0}.editor-toolbar>span{font-size:1.1rem;flex:1;min-width:100px}.editor-toolbar>div{margin-left:auto}.editor-toolbar button{font-size:.68rem;min-height:35px;padding:7px 10px}.editor-art{padding:5px}.editor-art img{max-height:none}.editor-art figcaption{font-size:.67rem}.text-editor h2{font-size:1.6rem}.editor-actions{align-items:stretch;flex-direction:column}.editor-actions>button{width:100%}.finalize-layout h2{font-size:1.9rem}.review-list>div{font-size:.8rem;grid-template-columns:.8fr 1fr}.gift-book{display:grid;grid-template-columns:110px 1fr;column-gap:24px;max-width:none;align-items:start}.gift-book>img{width:110px;height:165px;grid-row:1/4;margin:0;max-height:none}.gift-book>h2{font-size:1.6rem;margin-top:8px;margin-bottom:8px}.gift-book p{font-size:.69rem}.gift-book a{font-size:.75rem;margin-top:8px}.gift-controls h2{font-size:1.8rem}.gift-controls>.primary{width:100%}.library-summary{align-items:stretch;flex-direction:column;gap:20px;margin-bottom:28px}.library-summary p{font-size:.8rem}.library-summary>button{width:100%}.library-book{grid-template-columns:100px minmax(0,1fr);gap:19px;padding-bottom:24px}.library-book>img{width:100px;height:150px}.library-book h2{font-size:1.45rem}.library-book .actions{gap:8px;flex-wrap:wrap}.library-book .actions>button{flex:none;font-size:.71rem}.library-book small{font-size:.63rem}.book-grid{gap:28px}.status-label{font-size:.62rem}.library-book p{font-size:.74rem}.subscription{display:block;margin-top:30px;padding:25px 0}.subscription h2{font-size:1.7rem}.subscription button{margin-top:22px;width:100%}.activity li{grid-template-columns:1fr;gap:5px}.sample-gallery{grid-template-columns:repeat(2,1fr);gap:25px 15px}.sample-gallery figcaption{font-size:.7rem}.gift-reader article{grid-template-columns:1fr;gap:25px}.gift-reader h2{font-size:1.8rem;margin-bottom:18px}.gift-reader h3{font-size:.82rem}.gift-reader p{font-size:.9rem}.site-footer{padding:30px 22px;grid-template-columns:1fr;gap:8px}.site-footer nav{grid-column:1;grid-row:auto;gap:25px;margin-top:20px;font-size:.78rem}.site-footer small{font-size:.64rem;margin-top:17px}.footer-brand{font-size:1.55rem}.site-footer p{font-size:.74rem}.alert{padding:17px;font-size:.85rem}.save-status{font-size:.72rem;align-items:flex-start}.save-status svg{margin-top:3px}.empty-library{padding:30px 0 45px}.empty-library h2{font-size:1.9rem}.note{font-size:.75rem}.legal-demo>p{font-size:.9rem;line-height:1.85}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.club-lock{display:block;margin-top:8px;font:600 .7rem/1.5 var(--sans);color:var(--rose-deep)}.style-option:has(input:disabled){cursor:default}.style-option:has(input:disabled) .style-art{filter:saturate(.55)}.subscription-actions{flex:0 0 315px}.subscription-actions details{margin-top:20px;font-size:.8rem}.subscription-actions details>button{margin-top:18px}.subscription-actions details>p{font-size:.77rem}@media(max-width:640px){.subscription-actions{margin-top:20px}.subscription-actions>button{margin-top:0}.subscription-actions details>button{margin-top:18px}}

.finalize-layout section>.secondary{margin-top:24px}.gift-book>.secondary{margin-top:14px}.gift-reader+.note{margin-bottom:18px}@media(max-width:640px){.gift-book>.note{grid-column:1/-1;margin-top:20px}.gift-book>.secondary{margin-top:10px;font-size:.76rem;padding:10px 12px}}
.gift-controls,.stored-gifts,.gift-link{min-width:0}.stored-gifts{margin-top:28px}.stored-gifts .gift-link{border-bottom:1px solid var(--line);padding-bottom:22px}.gift-link>p{font-size:.8rem;overflow-wrap:anywhere;margin-bottom:14px}.gift-link input{width:100%;min-width:0}.gift-book>.secondary{margin-right:10px}

/* Legal navigation and public cancellation remain usable on narrow screens. */
.site-footer nav{flex-wrap:wrap;row-gap:12px;min-width:0;max-width:100%}.site-footer nav a{overflow-wrap:anywhere}.legal-demo{overflow-wrap:anywhere}.legal-demo>h2{margin-top:30px;margin-bottom:12px}.legal-demo>nav{margin:32px 0;line-height:2}.legal-demo section{margin:28px 0}.legal-demo #cancellation-form{max-width:620px;display:grid;gap:18px}.legal-demo #cancellation-form label{display:grid;gap:6px;min-width:0}.legal-demo #cancellation-form input:not([type=checkbox]),.legal-demo #cancellation-form textarea,.legal-demo #cancellation-form select{width:100%;min-width:0;max-width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--paper,#fffdf9)}.legal-demo #cancellation-form label.check{display:flex;align-items:flex-start}.legal-demo #cancellation-form label.check input{flex:none;margin-top:7px}.legal-demo #cancellation-form [hidden]{display:none}
