:root{--paper:#fff9ef;--ink:#273746;--muted:#61665f;--line:#dfd5c6;--yellow:#f7cd61;--green:#325c49;--white:#fffdf7;--mint:#e3ebdc;--rose:#efcfbf;--red:#bb472e;--blue:#365e76;--radius:12px}
[hidden]{display:none!important}
.paint-cursor{display:none;position:absolute;width:22px;height:22px;border:2px solid #295544;outline:2px solid white;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.paint-board canvas:focus-visible~.paint-cursor{display:block}
.play-back{padding-top:8px}.play-badge{margin-left:auto;color:var(--green);font-size:10px;background:var(--mint);padding:6px 9px;border-radius:20px}.play-heading{padding:16px 0 20px}.play-heading h1{font-size:25px;line-height:1.45;margin-top:9px;overflow-wrap:anywhere}.play-heading p{font-size:12px;color:var(--muted);margin-top:7px}.play-tabs{display:flex;gap:4px;background:none;border-radius:0;padding:0;margin-bottom:16px;border-bottom:2px solid var(--line)}.play-tabs button{min-height:44px;flex:1;display:flex;align-items:center;justify-content:center;gap:7px;font-size:13px;border-radius:10px;font-weight:700;color:#626d61}.play-tabs button[aria-selected=true]{background:var(--yellow);color:var(--ink);box-shadow:none}.play-tabs button svg{width:18px;height:18px}.paint-board{position:relative;background:white;border:1px solid #b9b3a6;border-radius:4px;overflow:clip;aspect-ratio:1;box-shadow:3px 3px 0 #e9dfcf}.paint-board canvas{display:block;width:100%;height:auto;touch-action:none;cursor:crosshair}.paint-label{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);font-size:9px;color:#61715e;background:#fffefaed;padding:5px 9px;border-radius:20px;white-space:nowrap;pointer-events:none}.paint-toolbar{display:flex;gap:6px;margin:12px 0}.paint-toolbar button{background:var(--white);border:1px solid #dce2d2;border-radius:11px;min-height:46px;flex:1;display:flex;align-items:center;justify-content:center;gap:5px;font-size:12px;white-space:nowrap}.paint-toolbar button[aria-pressed=true]{background:var(--mint);border-color:var(--green);font-weight:700}.paint-toolbar button svg{width:18px;height:18px}.paint-toolbar button[data-paint=undo]{flex:0 0 45px}.paint-palette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.paint-palette button{position:relative;min-height:54px;border:1.5px solid transparent;border-radius:11px;background:#eeeee4;display:flex;align-items:center;justify-content:center;gap:7px}.paint-palette button[aria-pressed=true]{border-color:var(--green);background:#e2e9d9}.paint-palette button[aria-pressed=true]:after{content:'✓';position:absolute;right:4px;top:2px;font-size:10px;color:var(--green);font-weight:800}.paint-palette button span{width:25px;height:25px;border-radius:50%;box-shadow:inset 0 0 0 1px #35432e30;flex:none}.paint-palette button small{font-size:10px}.paint-footer{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:12px;min-height:29px}.paint-footer span{font-size:10px;color:#52684c}.paint-footer button{font-size:11px;text-decoration:underline;color:var(--muted);padding:7px 0;white-space:nowrap}.paint-hint{font-size:11px;line-height:1.65;color:var(--muted);margin:7px 0 16px}.brush-size{display:flex;gap:12px;align-items:center;margin:0 0 14px;font-size:11px;color:var(--muted)}.brush-size input{accent-color:var(--green);flex:1;min-width:0}.play-privacy{font-size:10px;text-align:center;color:var(--muted);margin:19px 0 0}.play-scene{aspect-ratio:1;border-radius:20px;overflow:hidden;position:relative;background:#e5edf1;border:1px solid #d4e0e5}.play-scene.ocean{background:#dfede5;border-color:#cadfce}.scene-score{position:absolute;top:15px;left:15px;display:flex;gap:6px;align-items:center;z-index:7;background:#fffef8e0;border-radius:20px;padding:8px 11px;font-size:11px;font-weight:700}.scene-score svg{width:16px;height:16px;stroke:#7a6d3e;fill:#ffda75;stroke-width:1.5}.scene-orbit{position:absolute;right:-15px;top:-27px;width:122px;height:122px;border-radius:50%;background:#f7d98c;border:1px solid #dfc777}.ocean .scene-orbit{background:#adcbb7;border-color:#94b6a0}.scene-orbit:after{content:'';position:absolute;top:38px;left:-26px;width:166px;height:40px;border:2px solid #d2bd8a;border-radius:50%;transform:rotate(-25deg)}.ocean .scene-orbit:after{border-color:#7aa88c;transform:rotate(20deg)}.scene-ground{position:absolute;width:135%;height:32%;bottom:-16%;left:-16%;border-radius:50%;background:#cbdcc2;border-top:1px solid #b7c9aa}.ocean .scene-ground{background:#cee0d8;border-color:#aecabb;transform:rotate(-8deg)}.scene-friend{position:absolute;left:50%;top:62%;width:47%;aspect-ratio:1;transform:translate(-50%,-50%);padding:0;z-index:3;transition:left .4s ease,top .4s ease;outline-offset:-4px!important;filter:drop-shadow(0 7px 1px #65755c14)}.scene-friend img{width:100%;height:100%;object-fit:contain;pointer-events:none}.collect-star{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;z-index:5;padding:4px}.collect-star svg{width:33px;height:33px;fill:#ffe59b;stroke:#8d7b45;stroke-width:1.5}.collect-star:hover{filter:brightness(1.04)}.scene-caption{position:absolute;bottom:13px;right:15px;font-size:10px;color:#536d61;z-index:6}.scene-spark{position:absolute;color:#84998d;font-size:22px;pointer-events:none}.spark-one{left:10%;top:49%}.spark-two{left:68%;top:48%;font-size:14px}.spark-three{left:41%;top:85%;font-size:15px}.motion-status{min-height:49px;font-size:12px;text-align:center;color:#52684c;margin:16px 0 9px;line-height:1.65}.motion-actions{display:flex;gap:9px}.motion-actions button{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;flex:1;min-height:76px;background:var(--white);border:1px solid #d6dfce;border-radius:13px;font-size:12px;font-weight:700}.motion-actions button svg{width:24px;height:24px}.motion-actions button:hover{background:var(--mint)}.print-details{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0}.print-details summary{font-size:12px;color:var(--muted);cursor:pointer;min-height:28px;padding:5px 0}.print-details[open] .print-mode{margin-top:15px}.preview-play-action{padding-bottom:18px!important}.paper-preview-label{text-align:center;margin:16px 0 3px;font-size:11px;color:var(--muted)}
@media(max-width:359px){.play-heading h1{font-size:23px}.paint-palette button{gap:5px}.paint-palette button span{width:21px;height:21px}.paint-toolbar button{font-size:11px;gap:3px}}
.story-shortcut{display:flex;gap:5px;align-items:center;min-height:36px;font-weight:700}.story-shortcut svg{width:15px;height:15px}.play-to-story{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.play-to-story h2{font-size:20px;margin-top:8px}.play-to-story p{font-size:12px;color:var(--muted);margin:7px 0 16px}.story-builder .back-row,.story-preview .back-row,.story-reader>.back-row{padding-top:8px}.story-builder .page-head h1,.story-preview .page-head h1{font-size:26px}.story-builder .page-head .eyebrow{display:block;margin-top:18px}.story-cast{display:flex;gap:16px;align-items:center;padding:12px 0 20px;border-bottom:1px solid var(--line)}.story-cast img{width:96px;height:96px;object-fit:contain;background:var(--mint);border-radius:14px;flex:none}.story-cast h2{margin:7px 0 4px;overflow-wrap:anywhere}.story-cast .eyebrow{font-size:9px}.story-cast p{font-size:10px;color:var(--muted)}.story-field{margin-top:24px}.story-worlds{display:flex;gap:10px}.story-world{min-height:58px;display:flex;align-items:center;justify-content:center;gap:8px;flex:1;border:1.5px solid #d8dfce;background:var(--white);border-radius:12px;font-size:13px;font-weight:700}.story-world.selected{border-color:var(--green);background:var(--mint)}.story-world svg{width:20px;height:20px}.story-style-list{display:flex;flex-direction:column;gap:8px}.story-style{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;min-height:72px;padding:13px 16px;border:1.5px solid #d8dfce;background:var(--white);border-radius:12px}.story-style.selected{border-color:var(--green);background:var(--mint)}.story-style strong{display:block;font-size:14px}.story-style small{display:block;font-size:11px;color:var(--muted);line-height:1.6;margin-top:4px}.story-main-action{margin-top:24px}.story-origin{text-align:center;margin:20px 0}.story-cover-preview{max-width:210px;margin:8px auto 20px;transform:rotate(-3deg);box-shadow:4px 5px 0 #c8d2be80}.story-cover-preview>svg{width:100%;height:auto}.story-preview-title{text-align:center;overflow-wrap:anywhere;font-size:20px}.story-metadata{text-align:center;font-size:11px;color:var(--muted);margin:7px 0 24px}.story-edit-list{border-top:1px solid var(--line)}.story-edit-page{border-bottom:1px solid var(--line)}.story-edit-page summary{min-height:56px;display:flex;align-items:center;gap:12px;font-size:13px;cursor:pointer;list-style:none}.story-edit-page summary::-webkit-details-marker{display:none}.story-page-index{font-size:11px;color:var(--green);font-weight:800;letter-spacing:1px}.story-expand{margin-left:auto;font-size:22px;color:var(--muted)}.story-edit-page[open] .story-expand{transform:rotate(45deg)}.story-edit-scene{width:160px;margin:0 auto 18px;border-radius:12px;overflow:hidden}.story-edit-page label{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-bottom:8px}.story-edit-page label small{font-size:10px;font-weight:400;color:var(--muted)}.story-edit-page textarea{width:100%;resize:vertical;min-height:116px;padding:12px 14px;border:1px solid #d6dfce;border-radius:10px;background:var(--white);font:inherit;font-size:14px;line-height:1.8;color:var(--ink);margin-bottom:20px}.story-edit-page textarea:focus-visible{outline:3px solid var(--green);outline-offset:3px}.story-reader-heading{padding:20px 0 16px}.story-reader-heading h1{font-size:23px;letter-spacing:-.8px;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}.story-reading-progress{height:4px;background:#e4ddcf}.story-reading-progress span{display:block;height:100%;background:var(--red)}.story-leaf{background:var(--white);border:1px solid #d5c8b3;border-radius:6px;overflow:hidden;scroll-margin-top:16px;box-shadow:3px 4px 0 #e8dece}.story-leaf-heading{padding:16px 18px;display:flex;align-items:center;gap:12px;background:var(--white);border-bottom:1px solid var(--line)}.story-leaf-heading>span{font-size:12px;font-weight:700;color:var(--blue);white-space:nowrap}.story-leaf-heading h2{font-size:16px;letter-spacing:-.4px}.story-scene{position:relative;aspect-ratio:1;overflow:hidden;touch-action:pan-y}.story-scene>svg{display:block;width:100%;height:auto}.story-friend{position:absolute;transform:translate(-50%,-50%);aspect-ratio:1;padding:0;filter:drop-shadow(0 5px 1px #5a74691a)}.story-friend img{width:100%;height:100%;object-fit:contain;pointer-events:none}.story-shine{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;z-index:3}.story-shine svg{width:32px;height:32px;fill:#ffe59b;stroke:#8d7b45;stroke-width:1.5}.story-paragraph{padding:22px 20px 18px;font-size:16px;line-height:1.9;overflow-wrap:anywhere;white-space:pre-line;outline:none}.story-play-hint{padding:12px 16px 16px;font-size:11px;line-height:1.65;color:var(--green);text-align:center;background:#edf1e6;min-height:44px}.story-page-nav{display:flex;align-items:center;gap:12px;margin:20px 0 14px}.story-page-nav button{flex:1;min-width:0;font-size:13px;min-height:48px;padding:12px 8px}.story-page-nav button:disabled{cursor:default}.story-page-nav button svg{width:17px;height:17px}.story-page-nav>span{font-size:12px;color:var(--muted);white-space:nowrap}.story-page-dots{display:flex;justify-content:center;gap:3px}.story-page-dots button{min-width:30px;min-height:40px;border-radius:9px;font-size:11px;color:var(--muted)}.story-page-dots button[aria-current]{background:var(--yellow);color:var(--ink);font-weight:800}.story-swipe-hint{text-align:center;margin-top:6px;font-size:10px}.story-reader-tools{margin-top:24px}.story-reader-tools .secondary{font-size:13px}.story-reader .print-details .secondary{margin-top:14px;font-size:13px}.story-preview #story-save-status[role=alert]{color:#974732;background:#f7e8df;padding:12px;border-radius:10px}
@media(max-width:359px){.story-cast{gap:12px}.story-cast img{width:78px;height:78px}.story-cast h2{font-size:18px}.story-style{padding:12px}.story-style small{font-size:10px}.story-leaf-heading{padding:16px 18px;display:flex;align-items:center;gap:12px;background:var(--white);border-bottom:1px solid var(--line)}.story-leaf-heading h2{font-size:14px}.story-paragraph{font-size:15px;padding:18px 16px}.story-reader-heading h1{font-size:22px}.story-page-nav{gap:8px}.story-page-dots{gap:0}.story-page-dots button{min-width:28px}}
*{box-sizing:border-box}body{margin:0;background:#e6dfd3;color:var(--ink);font-family:"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--green);outline-offset:4px}a{color:inherit;text-decoration:none}svg{display:block}button svg,.bottom-nav svg,.icon-button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}button{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.4;letter-spacing:-1.5px;font-weight:800}h2{font-size:20px;line-height:1.45;letter-spacing:-.7px}h3{font-size:16px;line-height:1.5}p{line-height:1.7}button{border:0;background:none}img{display:block;max-width:100%}.app-shell{max-width:480px;min-height:100dvh;margin:auto;background:var(--paper);position:relative;overflow:clip}.app-header{min-height:88px;height:auto;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:800;letter-spacing:-1.2px}.brand>svg{width:36px;height:36px;flex:none;color:var(--ink)}.icon-button{min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:50%;color:var(--ink)}.icon-button:hover{background:var(--mint)}#app{min-height:calc(100dvh - 152px);padding-bottom:112px}#app:focus{outline:none}.content{padding:0 24px}.eyebrow{font-size:12px;letter-spacing:.2px;font-weight:700;color:var(--red)}.primary,.secondary{min-height:54px;padding:14px 16px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:750;font-size:15px;width:100%;line-height:1.5}.primary{background:var(--red);color:var(--white)}.primary.yellow{background:var(--yellow);color:var(--ink)}.primary:hover{filter:brightness(.97)}.primary svg{width:20px;height:20px}.secondary{background:var(--white);border:1px solid #878776}.text-button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:17px 0;font-size:12px;font-weight:600;color:var(--muted)}.text-button svg{width:16px;height:16px}.under-button{font-size:11px;color:var(--muted);text-align:center;margin-top:9px}.section{margin-top:29px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-heading span{font-size:11px;color:var(--muted)}.steps-strip{display:flex;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:9px;justify-content:space-between}.steps-strip>div{display:flex;gap:6px;align-items:center;font-size:11px;white-space:nowrap}.steps-strip b{display:grid;place-items:center;width:22px;height:22px;background:var(--mint);border-radius:50%;font-size:10px;font-weight:700}.small-note{display:flex;align-items:flex-start;gap:8px;border-radius:0;background:none;padding:16px 0;font-size:12px;line-height:1.7;color:var(--muted);margin-top:18px;border-top:1px solid var(--line)}.small-note svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;margin-top:1px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,480px);background:var(--white);height:calc(78px + env(safe-area-inset-bottom));padding:8px 20px calc(8px + env(safe-area-inset-bottom));z-index:20;display:flex;border-top:1px solid var(--line);justify-content:space-around;align-items:center}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:12px;color:var(--muted);min-width:76px;min-height:54px;border-radius:8px}.bottom-nav a.active{color:var(--red);font-weight:800}.bottom-nav a.active:not(.make-nav)>svg{fill:none}.nav-pencil{width:30px;height:25px;display:grid;place-items:center;background:none;color:inherit;border-radius:0}.page-head{padding:24px 0}.page-head h1{font-size:28px;margin-top:10px;letter-spacing:-1.2px}.page-head p{color:var(--muted);font-size:14px;margin-top:10px}.back-row{display:flex;align-items:center;gap:10px}.back-link{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:13px;min-height:44px;padding:8px 0}.back-link svg{width:18px;height:18px}.step-label{margin-left:auto;font-size:11px;font-weight:700;color:#829075}.progress{height:4px;background:#e9dfcf;margin-top:8px;border-radius:0;overflow:hidden}.progress>span{display:block;height:100%;background:var(--red);transition:width .2s}.upload-area{height:283px;border:1px solid #b9b3a6;border-radius:3px;background:var(--white);position:relative;display:grid;place-items:center;overflow:hidden;box-shadow:4px 4px 0 #e9dfcf}.upload-area img{width:222px;height:222px;object-fit:contain}.upload-area:before,.upload-area:after{content:"";position:absolute;width:24px;height:24px;border-color:#93a18a}.upload-area:before{top:14px;left:14px;border-left:2px solid;border-top:2px solid}.upload-area:after{bottom:14px;right:14px;border-right:2px solid;border-bottom:2px solid}.upload-sticker{position:absolute;right:11px;bottom:12px;font-size:10px;background:#fff3cd;padding:7px 10px;border-radius:20px;transform:rotate(-7deg)}.upload-buttons{display:flex;gap:9px;margin-top:12px}.upload-buttons .secondary{font-size:13px;min-height:47px}.upload-buttons .icon-button{border:1px solid #d8ddce;background:var(--white);border-radius:13px;width:49px;height:47px;flex:none}.sample-section{margin:23px 0}.field-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;font-weight:700;margin-bottom:12px;flex-wrap:wrap}.field-label small{font-size:10px;font-weight:400;color:var(--muted)}.sample-list{display:flex;gap:10px}.sample-button{height:88px;flex:1;border:1.5px solid #ded5c6;border-radius:5px;background:var(--white);display:grid;place-items:center;position:relative}.sample-button img{height:66px;width:66px}.sample-button.selected{border-color:var(--green);background:#e3eada}.sample-button.selected:after{content:"✓";position:absolute;right:5px;top:5px;width:17px;height:17px;color:white;background:var(--green);border-radius:50%;font-size:11px}.name-input{width:100%;background:var(--white);border:1px solid #858778;border-radius:7px;min-height:52px;padding:13px 14px;font-size:16px;color:var(--ink)}.helper{font-size:11px;color:var(--muted);margin-top:8px;line-height:1.6}.action-space{margin-top:25px}.range-row{display:flex;align-items:center;gap:12px;padding:13px 1px;font-size:11px;color:var(--muted)}.range-row input{flex:1;min-width:0;accent-color:var(--green)}.crop-wrap{touch-action:none;cursor:grab;aspect-ratio:1;height:auto}.crop-wrap canvas{width:100%;height:auto;display:block}.crop-wrap:active{cursor:grabbing}.error-message{font-size:12px;color:#974732;padding:11px 13px;background:#f7e8df;border-radius:10px;margin-top:12px}.choice-list{display:flex;flex-direction:column;gap:12px}.choice-card{border:1.5px solid #d9dfd1;border-radius:16px;background:var(--white);width:100%;min-height:111px;text-align:left;padding:17px 16px;display:flex;gap:14px;align-items:center}.choice-card.selected{border-color:var(--green);background:#edf1e6}.choice-image{width:77px;height:77px;border-radius:12px;background:#e3eaf0;display:grid;place-items:center;flex:none;position:relative;overflow:hidden}.choice-image.ocean{background:#dceadd}.choice-image img{width:70px;height:70px}.choice-body{flex:1}.choice-body h3{font-size:17px}.choice-body p{font-size:11px;color:var(--muted);margin-top:3px}.choice-body span{font-size:10px;display:inline-block;margin-top:7px;color:var(--green)}.radio-dot{width:20px;height:20px;border:1.5px solid #b2bba8;border-radius:50%;flex:none}.selected .radio-dot{border:6px solid var(--green)}.difficulty-list{display:flex;gap:10px}.difficulty-card{border:1.5px solid #d9dfd1;border-radius:14px;background:var(--white);padding:17px 12px;text-align:left;flex:1;min-width:0}.difficulty-card.selected{border-color:var(--green);background:#edf1e6}.difficulty-card h3{font-size:14px}.difficulty-card p{font-size:10px;color:var(--muted);margin-top:5px}.difficulty-art{height:56px;display:flex;align-items:center;margin:10px 0}.difficulty-art svg{height:53px;width:100%;stroke:#75906f;stroke-width:2;fill:none}.preview-header{text-align:center;padding:16px 0 18px}.preview-header .eyebrow{font-size:10px}.preview-header h1{font-size:25px;margin-top:8px}.preview-header p{font-size:12px;color:var(--muted);margin-top:6px}.preview-carousel{display:flex;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory;padding:12px 36px 20px;scrollbar-width:none}.preview-sheet{flex:0 0 100%;width:100%;scroll-snap-align:center;box-shadow:1px 3px 9px #34442d16;position:relative}.preview-sheet>svg{width:100%;height:auto}.preview-dots{display:flex;justify-content:center;gap:7px}.preview-dots button{width:26px;height:26px;padding:8px}.preview-dots button:after{content:"";display:block;width:7px;height:7px;border-radius:50%;background:#d3d9c9}.preview-dots button.active:after{background:var(--green)}.page-caption{text-align:center;font-size:11px;color:var(--muted);margin:8px 0 20px}.book-summary{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.book-summary h2{font-size:15px}.book-summary p{font-size:11px;color:var(--muted);margin-top:5px}.book-price{font-size:23px;font-weight:800;letter-spacing:-1px}.book-price small{font-size:11px;font-weight:500}.demo-note{margin:15px 0 14px;font-size:11px;color:var(--muted);display:flex;justify-content:center;gap:6px}.demo-note svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.ready-badge{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--mint);margin:19px auto 14px;color:var(--green)}.ready-badge svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2}.ready-heading{text-align:center}.ready-heading h1{font-size:27px}.ready-heading p{font-size:13px;color:var(--muted);margin-top:9px}.ready-book{width:178px;margin:27px auto 29px;transform:rotate(-5deg);box-shadow:4px 5px 0 #c8d2be80}.ready-book svg{width:100%;height:auto}.download-actions{display:flex;flex-direction:column;gap:11px}.print-mode{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:17px;font-size:12px}.print-mode label{display:flex;gap:5px;align-items:center;cursor:pointer}.print-mode input{accent-color:var(--green)}.arrow svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.7}.empty-state{text-align:center;padding:37px 8px 24px}.empty-state img{width:158px;height:158px;margin:auto;opacity:.85}.empty-state h2{margin-top:16px;font-size:19px}.empty-state p{font-size:13px;color:var(--muted);margin:10px 0 27px}.library-footer{font-size:12px;color:var(--muted);margin-top:20px;text-align:center;line-height:1.7}.delete-button{font-size:11px;text-decoration:underline;color:var(--muted);display:block;margin:20px auto;padding:8px}.tiny-footer{text-align:center;font-size:10px;color:#61715e;margin-top:30px;letter-spacing:1px}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,12px);max-width:calc(100% - 48px);width:max-content;background:#263e35;color:white;padding:12px 17px;border-radius:12px;font-size:12px;z-index:50;opacity:0;pointer-events:none;transition:.2s}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{width:min(calc(100% - 32px),400px);border:1px solid var(--line);border-radius:8px;padding:32px 24px 24px;background:var(--paper);color:var(--ink);box-shadow:0 12px 48px #27374630}dialog::backdrop{background:#27374688}dialog h2{font-size:23px;padding-right:28px}dialog p{font-size:13px;color:var(--muted);margin-top:13px}dialog .primary{margin-top:20px}dialog .modal-close{position:absolute;right:13px;top:13px;font-size:27px}dialog .modal-item{padding:13px 0;border-bottom:1px solid var(--line)}dialog .modal-item h3{font-size:13px}dialog .modal-item p{font-size:12px;margin-top:4px}.dialog-price{display:flex;justify-content:space-between;align-items:center;margin:19px 0 5px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.dialog-price b{font-size:21px}.busy-dot{width:15px;height:15px;border-radius:50%;border:2px solid #ffffff60;border-top-color:white;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:600px){body{margin:0;background:#e6dfd3;color:var(--ink);font-family:"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;-webkit-font-smoothing:antialiased}.app-shell{min-height:calc(100dvh - 40px);box-shadow:0 0 0 1px #d4d9cc;border-radius:24px 24px 0 0}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,480px);background:var(--white);height:calc(78px + env(safe-area-inset-bottom));padding:8px 20px calc(8px + env(safe-area-inset-bottom));z-index:20;display:flex;border-top:1px solid var(--line);justify-content:space-around;align-items:center}.app-header{min-height:88px;height:auto;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}}@media(max-width:359px){.content{padding:0 24px}.app-header{min-height:88px;height:auto;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}h1{font-size:27px}.steps-strip{gap:3px}.steps-strip>div{gap:4px;font-size:10px}.preview-carousel{padding-left:27px;padding-right:27px}.difficulty-card{padding:15px 10px}.difficulty-card h3{font-size:13px}.print-mode{gap:12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Picture-book scenes for little hands. */
.story-reader-heading{padding:18px 0 14px}.story-reader-heading h1{font-size:25px;line-height:1.5;margin-top:6px;overflow-wrap:anywhere}.story-reader .play-badge{background:var(--mint);color:var(--green)}.story-reading-progress{height:4px;background:#e4ddcf}.story-reading-progress span{display:block;height:100%;background:var(--red)}.story-leaf{background:var(--white);border:1px solid #d5c8b3;border-radius:6px;overflow:hidden;scroll-margin-top:16px;box-shadow:3px 4px 0 #e8dece}.story-leaf-heading{padding:16px 18px;display:flex;align-items:center;gap:12px;background:var(--white);border-bottom:1px solid var(--line)}.story-leaf-heading>span{font-size:12px;font-weight:700;color:var(--blue);white-space:nowrap}.story-leaf-heading h2{font-size:17px}.story-friend{min-width:44px;min-height:44px;z-index:2}.slide-scene .story-friend{touch-action:none;cursor:grab}.slide-scene .story-friend:active{cursor:grabbing}.story-bubble{position:absolute;z-index:5;bottom:3%;left:6%;right:6%;padding:12px 14px;border:2px solid #f3cdd9;border-radius:18px;background:#fffdf5f5;box-shadow:0 3px 0 #d195ae15;font-size:15px;font-weight:750;text-align:center;line-height:1.6;pointer-events:none}.story-bubble:before{content:'';position:absolute;top:-9px;left:50%;width:14px;height:14px;transform:rotate(45deg);background:#fffdf5;border-left:2px solid #f3cdd9;border-top:2px solid #f3cdd9}.story-destination{position:absolute;right:11%;top:57%;color:#fff9e3;font-size:42px;text-shadow:0 3px #f3be62;pointer-events:none}.story-shine{width:52px;height:52px;border-radius:50%;background:#fffbeeae;border:2px solid #fff7e0;box-shadow:0 4px 0 #e9bf7070}.story-shine svg{width:35px;height:35px;fill:#ffe073;stroke:#bf8833;stroke-width:1.5}.story-slide-play{padding:16px 20px 12px;background:#e8eef0;text-align:center}.story-slide-play label{font-size:15px;font-weight:750}.story-slide-play>div{display:flex;align-items:center;gap:10px;color:var(--blue);margin-top:6px}.story-slide-play input{width:100%;min-width:0;min-height:48px;accent-color:var(--blue);touch-action:pan-y}.story-slide-play input::-webkit-slider-thumb{min-width:30px;min-height:30px}.story-slide-play p{font-size:12px;color:#52646b}.story-play-hint{background:#fff1d3;color:#71583e;font-size:12px}.story-play-tools{display:flex;justify-content:flex-end;padding:0 14px;background:#fffbf3}.story-play-tools button{min-height:44px;font-size:12px;color:#746388;font-weight:700;padding:10px 5px}.story-page-dots{flex-wrap:wrap;gap:4px}.story-page-dots button{min-width:32px;min-height:44px}.story-page-dots button[aria-current]{background:var(--yellow);color:var(--ink);font-weight:800}.story-next-chapter{margin-top:28px;padding:24px 0;background:none;border:0;border-top:2px solid var(--line);border-radius:0;text-align:center}.story-next-chapter h2{font-size:20px;margin-top:9px}.story-next-chapter p{font-size:14px;color:var(--muted);margin:12px 0 18px}.story-next-chapter .primary{font-size:13px;padding:14px 10px}.story-next-chapter small{display:block;font-size:12px;color:var(--muted);margin-top:12px;line-height:1.8}.parent-check input{margin-top:14px}.parent-check .error-message{min-height:34px}.payment-note{padding:14px;background:#f1e7d6;border-radius:5px;font-size:13px;line-height:1.8}.payment-status{min-height:28px}.paid-review{max-height:35vh;overflow:auto;margin-top:14px;display:grid;gap:13px}.paid-review h3{font-size:13px}.paid-review p{font-size:12px;margin-top:3px}.paid-review article{border-bottom:1px solid var(--line);padding-bottom:12px}
@media(max-width:359px){.story-paragraph{font-size:16px}.story-bubble{font-size:13px;padding:9px 10px}.story-slide-play{padding:16px 20px 12px;background:#e8eef0;text-align:center}.story-reader-heading h1{font-size:22px}.story-next-chapter{margin-top:28px;padding:24px 0;background:none;border:0;border-top:2px solid var(--line);border-radius:0;text-align:center}}
.parent-entry{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:18px 0;margin:24px 0 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:none;min-height:78px}.parent-entry>span:first-child{display:grid;place-items:center;width:40px;height:44px;color:var(--blue);flex:none;background:none;border-radius:0}.parent-entry svg{width:21px;height:21px}.parent-entry>span:nth-child(2){flex:1;min-width:0}.parent-entry b{font-size:14px}.parent-entry small{display:block;font-size:12px;color:var(--muted);margin-top:6px;line-height:1.6}.parent-center>.page-head>.eyebrow{display:block;margin-top:22px}.parent-summary{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:8px;margin:24px 0 8px;background:none;border-radius:0}.parent-summary>span{font-size:12px;color:var(--green)}.parent-summary>b{font-size:24px;letter-spacing:-1px;grid-column:2;grid-row:1 / 3;align-self:center}.parent-summary small{font-size:12px;color:var(--muted)}.service-card{border:0;border-top:1px solid var(--line);background:none;border-radius:0;padding:24px 0;margin:8px 0}.service-card h2{font-size:18px}.service-card p{font-size:14px;color:var(--muted);line-height:1.8;margin:12px 0}.service-card .section-heading{margin-bottom:6px;gap:10px}.service-card .text-button{font-size:11px;margin:0;min-height:44px}.purchase-empty{font-size:12px;text-align:center;line-height:1.9;padding:22px 0;color:var(--muted)}.purchase-list{display:grid;gap:17px}.purchase-item{padding:16px 0;border-top:1px solid var(--line)}.purchase-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.purchase-title h3{font-size:14px;overflow-wrap:anywhere}.purchase-title strong{font-size:14px;white-space:nowrap}.purchase-badge{font-size:10px;display:inline-block;padding:6px 9px;border-radius:20px;background:#f6e6cd;margin-top:10px;color:#725634}.purchase-badge.paid{background:#e4ead8;color:#526442}.purchase-item p{font-size:10px;margin:8px 0}.purchase-item details{font-size:10px;color:var(--muted)}.purchase-item details summary{min-height:34px;padding:7px 0;cursor:pointer}.purchase-item code{overflow-wrap:anywhere;display:block;font-size:10px}.purchase-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:10px}.purchase-actions .secondary{font-size:11px;min-height:44px;width:auto;padding:10px 13px;flex:1;min-width:120px}.receipt-link,.refund-link{display:inline-flex;align-items:center;min-height:44px;padding:5px 3px;font-size:11px;text-decoration:underline;color:#77695a}.backup-card{background:none;border-color:var(--line)}.backup-card h2{margin-top:7px}.backup-card .primary,.backup-card .secondary{font-size:13px;min-height:48px;margin-top:11px}.backup-card small{font-size:12px;display:block;line-height:1.8;margin-top:14px;color:var(--muted)}.recovery-card summary{font-size:13px;font-weight:700;min-height:32px;cursor:pointer;line-height:1.8}.recovery-card .field-label{font-size:12px}.recovery-card .secondary{font-size:13px;margin-top:12px}.offer-card{background:none}.offer-row{display:flex;gap:14px;justify-content:space-between;font-size:12px;line-height:1.8;padding:13px 0;border-bottom:1px solid #e5dfc9}.offer-row b{white-space:nowrap}.offer-card>p{font-size:11px}.parent-center>.text-button{width:100%;min-height:44px}.parent-center .delete-button{min-height:44px}
.service-card .section-heading .text-button{width:auto;flex:none}.service-card .section-heading h2{white-space:nowrap}
.account-card{position:relative;background:#edf1e7;overflow:hidden;padding:24px 20px;border:1px solid #cbd7c0;border-radius:4px;margin:0 0 24px;box-shadow:3px 3px 0 #e2dbc9}
.account-card h2{font-size:23px;line-height:1.5;letter-spacing:-.8px;margin:8px 50px 12px 0}
.account-card p{overflow-wrap:anywhere;line-height:1.7}
.account-illustration{position:absolute;right:12px;top:24px;pointer-events:none}
.account-illustration img{width:60px;height:60px;transform:rotate(5deg)}

.account-card .primary,.account-card .secondary{margin-top:10px}
.account-card small{display:block;font-size:12px;line-height:1.7;margin-top:16px;color:var(--muted)}
.account-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.account-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.7;margin:18px 0}
.account-consent input{width:22px;height:22px;flex:none;margin:0;accent-color:#537c4e}
.account-policy{font-size:12px;line-height:1.7;margin:12px 0}
.account-policy summary{min-height:44px;display:flex;align-items:center;text-decoration:underline;cursor:pointer}
.demo-code{border:1px dashed #c8b969;background:#fff8d6;padding:16px;border-radius:14px;font-size:13px;margin:18px 0}
.demo-code strong{display:block;font-size:30px;letter-spacing:6px;color:#415d3c;margin-top:8px}
.inquiry-list article{border-top:1px solid #ddd8cb;padding:16px 0;overflow-wrap:anywhere}
.inquiry-reply{background:#edf5ed;padding:14px;border-radius:12px;white-space:pre-wrap;font-size:13px;line-height:1.7}
#inquiry-text{resize:vertical;min-height:120px;line-height:1.7}
#account-status,#login-status{font-size:13px;line-height:1.7;color:#576d46;overflow-wrap:anywhere}
.story-wait{text-align:center;padding:10px}.story-wait img{width:100px;height:100px;animation:float 3s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.story-wait img{animation:none}}

/* Picture-book workshop: the child's drawing leads; controls stay quiet. */
.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.3px;margin-top:3px;color:var(--muted)}
.skip-link{position:fixed;left:16px;top:16px;z-index:100;transform:translateY(-150%);padding:14px 20px;background:var(--ink);color:white;border-radius:4px}
.skip-link:focus{transform:none}
.bottom-nav a.active:after{content:'';width:18px;height:3px;background:var(--red);position:absolute;bottom:5px}
.studio-intro{padding:28px 0 0}
.studio-intro h1{font-size:36px;line-height:1.35;letter-spacing:-1.8px;margin-top:10px}
.studio-intro h1 em{font-style:normal;color:var(--red)}
.studio-intro p{font-size:14px;color:var(--muted);margin-top:12px}
.studio-desk{position:relative;display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:32px;min-height:288px;padding:24px 4px 40px;margin:8px 0 16px}
.drawing-paper{position:relative;background:var(--white);border:1px solid #e2d7c3;box-shadow:3px 3px 0 #e4dac7;transform:rotate(-6deg);padding:16px 8px 12px;text-align:center}
.drawing-paper:before{content:'';position:absolute;top:-9px;left:30%;width:40%;height:20px;background:#e8ca8999;transform:rotate(2deg)}
.drawing-paper>span{font-size:10px;font-weight:700;color:var(--muted)}
.drawing-paper img{width:100%;aspect-ratio:1;object-fit:contain;margin:8px 0}
.drawing-paper small{font-size:10px;color:var(--muted)}
.desk-book{transform:rotate(5deg)}
.desk-arrow{position:absolute;left:44%;top:45%;color:var(--red);transform:rotate(-12deg)}
.desk-arrow svg{width:30px;height:30px}
.desk-caption{position:absolute;left:2px;bottom:8px;font-size:11px;color:var(--muted)}
.desk-crayons{position:absolute;right:0;bottom:6px;width:82px;height:24px;transform:rotate(-8deg)}
.sample-link{font-size:13px;min-height:48px}
.studio-process{margin-top:20px}
.steps-strip{gap:8px;padding:18px 0}
.steps-strip>div{font-size:12px;gap:7px}
.steps-strip b{width:24px;height:24px;background:#e6ebd9;color:var(--green);border-radius:6px}
.steps-strip>div:nth-child(2) b{background:#f6dfad;color:#67532f}
.steps-strip>div:nth-child(3) b{background:#e7dfed;color:#574e68}
.section-heading h2{font-size:21px}
.section-heading>span{font-size:12px}
.adventure-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:8px 4px 0}
.adventure-book{padding:0;text-align:left;min-width:0}
.adventure-book>.book-jacket{transform:rotate(-3deg)}
.adventure-book:nth-child(2)>.book-jacket{transform:rotate(3deg)}
.adventure-book>strong{display:block;font-size:16px;margin-top:16px}
.adventure-book>span:last-child{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);line-height:1.7;margin-top:4px}
.adventure-book>span:last-child svg{width:15px;height:15px;flex:none}
.book-jacket{--cover:#dce9ee;--binding:#587c8a;display:flex;flex-direction:column;position:relative;aspect-ratio:3/4;width:100%;padding:14px 10px 8px 16px;background:var(--cover);border:1px solid var(--binding);border-radius:2px 5px 5px 2px;box-shadow:3px 3px 0 #f2eadc,4px 4px 0 #bdb5a7;overflow:hidden;text-align:left}
.book-jacket:before{content:'';position:absolute;inset:0 auto 0 0;width:6px;background:var(--binding);opacity:.65;border-right:1px solid #ffffff55}
.jacket-ocean{--cover:#dce7cd;--binding:#638067}
.jacket-kind{--cover:#f1d8cd;--binding:#bd7767}
.jacket-sleep{--cover:#f5e2aa;--binding:#ab884c}
.jacket-kicker{font-size:9px;font-weight:600;letter-spacing:.3px;color:#465650}
.jacket-title{font-size:15px;font-weight:800;line-height:1.5;letter-spacing:-.5px;margin:5px 0 8px;overflow:hidden;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.jacket-picture{display:block;flex:1;min-height:0;overflow:hidden;border-radius:50% 50% 3px 3px}
.jacket-picture>svg,.jacket-picture>img{width:100%;height:100%;object-fit:contain}
.jacket-picture>img{padding:4px}
.jacket-author{font-size:9px;line-height:1.5;text-align:center;color:#465650;margin-top:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.studio-colophon{margin-top:36px;padding-top:24px;border-top:1px solid var(--line);text-align:center}
.studio-colophon>span{color:var(--red);font-size:32px}
.studio-colophon>p{font-size:20px;font-weight:700;letter-spacing:-.5px;line-height:1.6;margin:8px 0}
.library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:28px 0 24px}
.library-heading h1{font-size:34px;letter-spacing:-1.5px;margin-top:8px}
.library-heading p{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.7}
.library-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:52px;min-height:62px;background:var(--yellow);border:1px solid #c7a354;border-radius:9px;transform:rotate(4deg);margin-top:18px;font-size:11px;font-weight:700}
.library-add svg{width:21px;height:21px}
.book-shelves{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
.shelf-item{min-width:0;position:relative;padding:8px 4px 20px}
.shelf-item:after{content:'';position:absolute;left:-12px;right:-12px;bottom:0;border-top:2px solid #c8b392;border-bottom:5px solid #e4d5bb;height:4px;z-index:0;pointer-events:none}
.library-book{display:block;width:100%;padding:0;border:0;background:none;text-align:left;border-radius:4px;min-width:0}
.library-book>.book-jacket{transform:rotate(-2deg);transition:transform .15s}
.shelf-item:nth-child(even) .library-book>.book-jacket{transform:rotate(2deg)}
.library-book:hover>.book-jacket,.library-book:focus-visible>.book-jacket{transform:rotate(0)}
.library-caption{display:block;margin-top:16px}
.library-title{display:block;font-size:15px;line-height:1.6;letter-spacing:-.4px;overflow-wrap:anywhere}
.book-kind{display:block;font-size:11px;color:var(--muted);margin-top:5px}
.reading-note{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:700;color:var(--green);line-height:1.7;margin-top:8px}
.reading-note svg{width:14px;height:14px;flex:none}
.new-jacket{display:flex;flex-direction:column;width:100%;padding:0;min-width:0}
.new-jacket-paper{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;aspect-ratio:3/4;width:100%;border:1px dashed #b5a68f;background:#f8efdd;border-radius:2px;transform:rotate(3deg)}
.new-jacket-paper svg{width:32px;height:32px;color:var(--red)}
.new-jacket-paper b{font-size:15px;line-height:1.7}
.new-jacket-paper small{font-size:10px;color:var(--muted)}
.new-jacket>span:last-child{display:flex;align-items:center;gap:6px;justify-content:center;min-height:54px;margin-top:12px;font-size:12px;font-weight:700}
.new-jacket>span:last-child svg{width:16px;height:16px}
.library-storage-note{display:flex;align-items:flex-start;gap:6px;font-size:11px;line-height:1.8;color:var(--muted);margin-top:16px}
.library-storage-note svg{width:14px;height:14px;flex:none;margin-top:3px;fill:none;stroke:currentColor;stroke-width:1.7}
.empty-paper{background:#f3e8cf;border:1px solid #dacaae;max-width:210px;margin:auto;padding:16px;transform:rotate(-4deg);box-shadow:4px 4px 0 #e9ddc6}
.empty-paper img{opacity:1;width:100%;height:auto}
.account-card .demo-note{font-size:12px;justify-content:flex-start}
.parent-center .service-card .section-heading h2{white-space:normal}
.offer-row{font-size:13px}
.play-heading h1,.story-reader-heading h1{letter-spacing:-1px}
.story-cast{background:none}
.story-cast img{border-radius:3px;border:1px solid #cbd7c0}
.story-world,.story-style,.choice-card,.difficulty-card{border-radius:7px}
.story-paragraph{line-height:1.9;font-size:17px}
.story-play-tools button{color:var(--blue)}
.story-bubble{border-color:#d1a274;border-radius:12px;background:var(--white);box-shadow:none}
.story-bubble:before{background:var(--white);border-color:#d1a274}
@media(max-width:359px){.brand{font-size:21px}.brand small{font-size:9px}.studio-intro h1{font-size:32px}.studio-desk{gap:24px;min-height:250px;padding-left:0;padding-right:0}.desk-caption{font-size:10px}.desk-crayons{width:58px}.steps-strip>div{font-size:10px;gap:4px}.book-shelves,.adventure-pair{column-gap:16px}.book-jacket{padding:12px 8px 6px 13px}.jacket-title{font-size:13px;-webkit-line-clamp:2;margin:4px 0 6px}.jacket-kicker,.jacket-author{font-size:8px}.library-title{display:block;font-size:14px}.shelf-item:after{left:-8px;right:-8px}.library-heading h1{font-size:30px}.new-jacket-paper b{font-size:13px}.new-jacket-paper small{font-size:9px}}
@media(min-width:600px){.app-shell{border-radius:8px 8px 0 0;box-shadow:0 0 0 1px #d5c9b7}.app-header{height:auto}.bottom-nav{border-radius:0}}
@media(prefers-reduced-motion:reduce){.library-book>.book-jacket{transition:none}}
.flow-guide{margin:0 0 20px;padding:14px 16px;background:#f6efde;border-left:3px solid var(--blue);border-radius:0 6px 6px 0}
.guide-top,.guide-bottom{display:flex;align-items:center;gap:8px;justify-content:space-between}
.guide-top>span{color:var(--blue);font-size:11px;font-weight:700}
.guide-top button,.guide-bottom button,.flow-guide-closed button{min-height:44px;padding:7px 0;font-size:12px;color:var(--blue);font-weight:700}
.guide-top button{text-decoration:underline;text-underline-offset:3px}
.flow-guide h2{font-size:17px;margin:4px 0 8px}
.flow-guide p{font-size:13px;line-height:1.85;margin:0;word-break:keep-all;overflow-wrap:anywhere}
.guide-bottom{margin-top:5px;justify-content:flex-end}
.guide-bottom>span{display:flex;gap:5px;margin-right:auto}
.guide-bottom i{width:6px;height:6px;border-radius:50%;background:#bdc7c5}
.guide-bottom i.current{background:var(--blue)}
.guide-bottom button{display:flex;align-items:center;gap:4px}
.guide-bottom svg,.flow-guide-closed svg{width:14px;height:14px}
.flow-guide-closed{display:flex;justify-content:flex-end;margin:-8px 0 8px}
.flow-guide-closed button{display:flex;align-items:center;gap:5px}
.friend-reply{background:#fff1d3;border:1px solid #e4cca0;border-radius:10px 10px 10px 2px;color:var(--ink);font-size:14px;line-height:1.7;padding:12px 14px;margin:0 0 12px;min-height:49px;text-align:center;word-break:keep-all;overflow-wrap:anywhere}
.motion-status.friend-reply{margin:14px 0 12px}
.scene-friend{touch-action:none;cursor:grab}
.scene-friend.dragging{transition:none;cursor:grabbing}
.play-to-story small{display:block;font-size:11px;color:var(--muted);text-align:center;margin-top:9px}
.play-confetti{position:absolute;z-index:8;left:50%;top:48%;pointer-events:none;color:var(--red);font-size:22px;animation:play-celebrate 1s ease-out forwards}
.play-confetti:nth-child(3n){color:var(--blue)}.play-confetti:nth-child(3n+1){color:#a37a18}
@keyframes play-celebrate{from{opacity:1;transform:rotate(calc(var(--i)*45deg)) translateY(0) scale(.6)}to{opacity:0;transform:rotate(calc(var(--i)*45deg)) translateY(-120px) scale(1.3)}}
@media(prefers-reduced-motion:reduce){.scene-friend{transition:none}.play-confetti{display:none}}
@media(max-width:359px){.flow-guide{padding:10px 12px}.flow-guide p{font-size:12px}.guide-top{gap:4px}.guide-top>span{font-size:10px}.guide-top button{font-size:11px}}
.book-taste{margin:0 0 24px;padding:0 0 20px;border-bottom:2px solid var(--line)}
.taste-heading h2{font-size:21px;line-height:1.5;margin:7px 0}.taste-heading p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:14px}
.taste-scene{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:1;border:1px solid #d2c8b7;background:var(--mint)}
.taste-scene>svg{display:block;width:100%;height:100%}
.taste-friend{position:absolute;top:57%;width:46%;aspect-ratio:1;transform:translate(-50%,-50%);padding:0}
.taste-friend img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.book-taste .friend-reply{margin-top:12px;font-size:13px}
.taste-slide-label{display:block;font-size:12px;color:var(--blue);line-height:1.7}
#taste-slide{width:100%;min-height:48px;accent-color:var(--blue)}
.taste-paragraph{font-size:14px;line-height:1.85;margin:5px 0 10px}
.taste-details>small{display:block;color:var(--muted);font-size:11px;line-height:1.8}
.taste-details summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:8px 0;color:var(--blue);font-size:13px;font-weight:700;cursor:pointer;list-style:none}
.taste-details summary::-webkit-details-marker{display:none}.taste-details summary svg{width:18px;height:18px;transition:transform .2s}.taste-details[open] summary svg{transform:rotate(90deg)}
.taste-details[open] .taste-scene{margin-top:8px}
.social-buttons{display:grid;gap:10px;margin:18px 0 10px}
.social-button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;width:100%;padding:12px;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:500;line-height:20px;cursor:pointer}
.social-button svg{position:absolute;left:16px;width:20px;height:20px;flex-shrink:0}.social-button span{padding:0 28px}.social-button small{position:absolute;right:10px;font-size:10px}
.social-kakao{background:#fee500;color:#191919}.social-naver{background:#03c75a;color:#fff}.social-google{background:#fff;color:#1f1f1f;border-color:#747775;font-family:Arial,sans-serif}
.social-button:disabled{cursor:default;opacity:.65}.social-button:focus-visible,.login-alternatives summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.login-alternatives{margin-top:14px;border-top:1px solid #d2c8b7;padding-top:4px}.login-alternatives summary{min-height:48px;display:flex;align-items:center;font-size:13px;cursor:pointer}.login-alternatives .text-button{display:block;min-height:44px;width:100%;text-align:left}.login-alternatives small{display:block;font-size:11px;line-height:1.8;color:var(--muted)}
