/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-9{margin:calc(var(--spacing) * 9)}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.w-0{width:calc(var(--spacing) * 0)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.p-1{padding:calc(var(--spacing) * 1)}.p-4{padding:calc(var(--spacing) * 4)}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#27324a;--muted:#7d7b74;--paper:#f7f0df;--surface:#fffcf5;--coral:#ff6f64;--blue:#3156d7;--line:#ded8ca}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);font-family:var(--font-noto), sans-serif;background:#e9e5dd;margin:0}button,input,select{font:inherit}button{color:inherit}.support-page{background:radial-gradient(circle at 85% 10%,#ffd76652,#0000 20rem),#e9e5dd;place-items:center;min-height:100dvh;padding:32px 18px;display:grid}.support-card{background:#fffcf5;border:1px solid #27324a1f;border-radius:28px;width:min(720px,100%);padding:clamp(24px,5vw,48px);box-shadow:0 24px 70px #27324a24}.support-brand{width:fit-content;color:var(--ink);align-items:center;gap:12px;font-family:Georgia,serif;font-size:24px;text-decoration:none;display:flex}.support-kicker{color:var(--coral);letter-spacing:.16em;margin:34px 0 8px;font-size:12px;font-weight:700}.support-card h1{font-family:Georgia, var(--font-mincho), serif;margin:0;font-size:clamp(32px,7vw,48px)}.support-lead{color:#66645e;margin:14px 0 30px;line-height:1.9}.support-card section{border-top:1px solid var(--line);padding:20px 0}.support-card section h2{margin:0 0 8px;font-size:17px}.support-card section p{color:#66645e;margin:0;font-size:14px;line-height:1.9}.support-links{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px 22px;padding-top:24px;display:flex}.support-links a{color:var(--blue);font-size:14px;font-weight:700}.app-shell{background:radial-gradient(circle at 86% 8%,#ffd76659,#0000 18rem),#e9e5dd;min-height:100dvh;overflow:hidden}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:50;background:#fffcf5f0;border-bottom:1px solid #27324a1f;justify-content:space-between;align-items:center;height:72px;padding:0 24px;display:flex;position:relative}.brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--coral);color:#fff;border-radius:12px 12px 14px 9px;place-items:center;width:40px;height:40px;font-family:Georgia,serif;font-size:25px;font-style:italic;display:grid;transform:rotate(-4deg);box-shadow:3px 3px #ffd766}.brand strong,.brand span{display:block}.brand strong{letter-spacing:-.02em;font-family:Georgia,serif;font-size:22px;line-height:1}.brand span{color:var(--muted);letter-spacing:.08em;white-space:nowrap;margin-top:4px;font-size:9px}.top-actions{align-items:center;gap:10px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:12px;height:40px;padding:0 16px;font-size:13px;font-weight:700}.button-ghost{border-color:var(--line);background:#fffdf8}.button-primary{background:var(--blue);color:#fff;box-shadow:0 5px 14px #3156d73d}.button-preview{color:#304a9c;background:#f3f5fb;border-color:#bfc7df;font-weight:700}.button-library{color:#6c5136;background:#fffaf0;border-color:#d8c6a9}.book-library-modal{z-index:120;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#201d197a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.book-library-panel{background:#fffdf8;border:1px solid #5f49312e;border-radius:24px;width:min(780px,100%);max-height:min(720px,100dvh - 48px);padding:24px;overflow-y:auto;box-shadow:0 28px 90px #1915114d}.book-library-head{justify-content:space-between;align-items:start;margin-bottom:20px;display:flex}.book-library-head h2{color:#27324a;margin:4px 0 0;font-family:Georgia,serif;font-size:25px}.book-library-head>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;width:34px;height:34px;font-size:20px}.book-library-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.book-library-grid>button{text-align:left;cursor:pointer;background:#f8f5ee;border:1px solid #493d3024;border-radius:18px;min-width:0;padding:14px;transition:transform .16s,border-color .16s,box-shadow .16s}.book-library-grid>button:hover{transform:translateY(-2px);box-shadow:0 10px 24px #2f261d1f}.book-library-grid>button.active{border-color:var(--blue);box-shadow:0 0 0 2px #3156d71f}.library-cover{aspect-ratio:4/3;background-color:var(--library-book-color);color:#fff;border-radius:4px 13px 13px 4px;place-items:center;width:100%;margin-bottom:11px;font-style:normal;display:grid;position:relative;overflow:hidden;box-shadow:inset 8px 0 10px #00000029,inset 0 0 0 2px #ffffff29,0 7px 12px #27201933}.library-cover:after{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 2px,#ffffff0e 2px 3px),linear-gradient(135deg,#ffffff2e,#0000 44%);position:absolute;inset:0}.library-cover b{z-index:1;text-align:center;border:1px solid #ffffff7a;max-width:80%;padding:8px 10px;font-family:Georgia,serif;font-size:12px;position:relative}.book-library-grid span{min-width:0;display:block}.book-library-grid span strong,.book-library-grid span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.book-library-grid span strong{color:#27324a;font-size:13px}.book-library-grid span small{color:var(--muted);margin-top:4px;font-size:10px}.book-library-grid .new-book-card{text-align:center;background:#fffdf8;border-style:dashed;align-content:center;place-items:center;min-height:204px;display:grid}.new-book-card>i{width:54px;height:54px;color:var(--blue);background:#eef1fb;border-radius:50%;place-items:center;margin-bottom:12px;font-size:28px;font-style:normal;display:grid}.style-popover{z-index:80;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8fa;border:1px solid #27324a21;border-radius:18px;width:360px;max-height:calc(100dvh - 82px);padding:18px;animation:.16s ease-out popover-in;position:fixed;top:64px;right:104px;overflow-y:auto;box-shadow:0 18px 50px #27324a33}.popover-head{justify-content:space-between;align-items:start;margin-bottom:15px;display:flex}.popover-head strong{font-family:var(--font-hand), cursive;margin-top:4px;font-size:19px;font-weight:400;display:block}.popover-head>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;width:29px;height:29px}.style-subtitle{color:var(--muted);margin:13px 0 7px;font-size:9px;font-weight:700;display:block}.cover-options{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.cover-options button{border:1px solid var(--line);min-width:0;color:var(--muted);cursor:pointer;background:#fff;border-radius:11px;padding:7px 4px 6px}.cover-options button.active{border-color:var(--blue);color:var(--blue);background:#f1f4ff}.cover-options button span{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:8px;display:block;overflow:hidden}.cover-swatch{width:38px;height:46px;color:var(--book-ink,var(--cover-ink,#f8f1df));isolation:isolate;border-radius:3px 7px 7px 3px;place-items:center;margin:0 auto;font-family:Georgia,serif;font-style:normal;display:grid;position:relative;overflow:hidden;box-shadow:inset 4px 0 7px #00000029,2px 3px 4px #27324a2e}.cover-swatch:before,.cover-thumb:before{content:"";z-index:0;background:var(--book-color);opacity:.52;position:absolute;inset:0}.cover-swatch:after{content:"";opacity:.55;border:1px solid;position:absolute;inset:8px 6px}.cover-swatch b{z-index:1;font-size:13px}.color-options{flex-wrap:wrap;gap:9px;display:flex}.color-options button{cursor:pointer;border:3px solid #fff;border-radius:50%;width:31px;height:31px;box-shadow:0 0 0 1px #d8d1c5}.color-options button.active{box-shadow:0 0 0 2px var(--ink), 0 0 0 4px white}.cover-font-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cover-font-options label{min-width:0;color:var(--muted);font-size:8px}.cover-font-options label span{margin-bottom:4px;display:block}.cover-font-options select{border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;width:100%;height:38px;padding:0 8px;font-size:10px}.shape-options{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.orientation-options{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.orientation-options button{border:1px solid var(--line);height:54px;color:var(--muted);cursor:pointer;background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:10px;font-size:10px;font-weight:700;display:flex}.orientation-options button.active{border-color:var(--blue);color:var(--blue);background:#f1f4ff}.orientation-icon{background:#fffdf8;border:2px solid;border-radius:2px;display:block;box-shadow:2px 2px}.orientation-icon.portrait{width:24px;height:32px}.orientation-icon.landscape{width:35px;height:26px}.material-options{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.material-options button{border:1px solid var(--line);min-width:0;min-height:66px;color:var(--muted);cursor:pointer;background:#fff;border-radius:11px;padding:6px 4px}.material-options button.active{border-color:var(--blue);color:var(--blue);background:#f1f4ff}.material-options button span{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:7px;display:block;overflow:hidden}.material-swatch{border-radius:7px 7px 5px 6px;width:35px;height:35px;margin:0 auto;display:block;box-shadow:inset 0 0 0 1px #27324a14,1px 2px 3px #27324a1f}.material-swatch.paper-kraft{background-image:linear-gradient(25deg,#5c39181a,#0000 38%),url(/textures/paper-kraft.png)!important;background-size:cover!important}.material-swatch.paper-heavy{box-shadow:inset 0 0 0 2px #78694b17,2px 3px #ddd5c3}.shape-options button{border:1px solid var(--line);cursor:pointer;min-height:67px;color:var(--muted);background:#fff;border-radius:11px;padding:7px 3px 6px;font-size:8px}.shape-options button.active{border-color:var(--blue);color:var(--blue);background:#f1f4ff}.book-shape-icon{background:#fffdf8;border:2px solid;width:35px;height:39px;margin:0 auto 5px;display:block;box-shadow:3px 2px}.book-shape-icon.rounded{border-radius:9px}.book-shape-icon.ring{border-left:5px double;border-radius:2px 7px 7px 2px}.book-shape-icon.album{border:4px solid;border-radius:4px;box-shadow:inset 4px 0 #27324a2e}@keyframes popover-in{0%{opacity:0;transform:translateY(-7px)scale(.98)}}.save-state{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.save-state i{background:#e0a73a;border-radius:50%;width:7px;height:7px}.save-state.is-saved i{background:#55a57b}.workspace{grid-template-columns:276px minmax(0,1fr);height:calc(100dvh - 72px);display:grid}.side-panel{background:#fffcf5f0;border-right:1px solid #27324a1f;padding:28px 20px;overflow:auto}.panel-heading p,.section-label{color:#9a958b;letter-spacing:.17em;margin:0;font-size:9px;font-weight:800}.panel-heading h1{font-family:var(--font-hand), cursive;margin:5px 0 22px;font-size:24px;font-weight:400}.upload-card{cursor:pointer;background:#fffaf0;border:1.5px dashed #cfc6b6;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:112px;transition:all .16s;display:flex}.upload-card:hover{border-color:var(--coral);transform:translateY(-2px)}.upload-icon{background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:31px;height:31px;font-size:20px;line-height:1;display:grid}.upload-card strong{margin-top:8px;font-size:13px}.upload-card small{color:var(--muted);margin-top:2px;font-size:10px}.tool-section{margin-top:28px}.tool-grid{grid-template-columns:repeat(5,1fr);gap:7px;margin-top:10px;display:grid}.tool-grid button{cursor:pointer;background:0 0;border:0;padding:0}.tool-grid button b{border:1px solid var(--line);background:#fff;border-radius:12px;place-items:center;height:47px;font-family:Georgia,serif;font-size:17px;transition:all .15s;display:grid}.tool-grid button:hover b{border-color:#bbb2a3;transform:rotate(-3deg)translateY(-2px)}.tool-grid button span{color:var(--muted);margin-top:5px;font-size:8px;display:block}.tool-grid .tape-mini{position:relative}.tool-grid .tape-mini:after,.tape-mobile:after{content:"";background:#ffd766d1;width:30px;height:13px;transform:rotate(-7deg)}.tool-grid .heart-mini{color:var(--coral);font-family:Arial,sans-serif}.tool-grid .star-mini{color:var(--blue)}.tool-grid .draw-mini{color:#4f6b5d;font-family:var(--font-hand), cursive;font-size:24px}.stamp-palette{background:#fffaf0;border:1px solid #e2dccf;border-radius:14px;margin-top:18px;padding:12px}.stamp-palette-title{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.stamp-palette-title span{font-size:10px;font-weight:800}.stamp-palette-title small{color:#47755b;background:#e9f3eb;border-radius:999px;padding:3px 6px;font-size:7px;font-weight:800}.stamp-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.stamp-grid>button{aspect-ratio:1;cursor:pointer;background:#fff;border:1px solid #e2dccf;border-radius:10px;font-family:Georgia,serif;font-size:22px;line-height:1;transition:transform .14s}.stamp-grid>button:hover{transform:rotate(-5deg)translateY(-2px)}.pages-section{margin-top:30px}.pages-title{justify-content:space-between;align-items:center;display:flex}.pages-title button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:25px;height:25px}.pages-actions{gap:6px;display:flex}.pages-title .delete-page-button{color:#b44f49;font-size:18px}.pages-title button:disabled{opacity:.34;cursor:not-allowed}.page-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.page-list>button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:51px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:6px;display:grid}.page-list>button.active{background:#f2eee5;border-color:#ddd6c8}.page-thumb{background:#f5ecd7;border-radius:3px;width:47px;height:59px;position:relative;overflow:hidden;box-shadow:0 1px 4px #27324a1f}.page-thumb i{font-size:7px;font-style:normal;position:absolute;bottom:1px;right:3px}.page-thumb em{background:#bdc9c1;width:20px;height:24px;position:absolute;top:8px;left:4px;transform:rotate(-5deg)}.page-thumb em+em{background:#e3a59d;top:16px;left:24px;transform:rotate(6deg)}.page-list strong,.page-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.page-list strong{font-size:11px}.page-list small{color:var(--muted);margin-top:4px;font-size:8px}.editor-area{min-width:0;height:100%;padding:23px 28px 100px;position:relative;overflow:auto}.editor-meta{justify-content:space-between;align-items:end;width:min(100%,900px);margin:0 auto 13px;display:flex}.editor-meta>div>span{color:#8b877e;letter-spacing:.14em;font-size:9px;font-weight:800;display:block}.editor-meta input{width:min(360px,60vw);color:var(--ink);font-family:var(--font-hand), cursive;background:0 0;border:0;border-bottom:1px solid #0000;outline:none;padding:2px 0;font-size:21px}.editor-meta input:focus{border-color:#a7a095}.editor-meta input.font-hand,.cover-inset h2.font-hand,.cover-inset p.font-hand{font-family:var(--font-hand), cursive}.editor-meta input.font-sans,.cover-inset h2.font-sans,.cover-inset p.font-sans{font-family:var(--font-noto), sans-serif}.editor-meta input.font-serif,.cover-inset h2.font-serif,.cover-inset p.font-serif{font-family:var(--font-mincho), "Yu Mincho", serif}.editor-meta input.font-rounded,.cover-inset h2.font-rounded,.cover-inset p.font-rounded{font-family:var(--font-rounded), "Hiragino Maru Gothic ProN", sans-serif}.editor-meta .cover-subtitle-input{width:min(430px,66vw);color:var(--muted);font-family:var(--font-noto), sans-serif;letter-spacing:.04em;font-size:10px;display:block}.edit-hint{color:#8c887f;font-size:10px}.editor-page-actions{gap:7px;display:flex}.editor-page-actions button{border:1px solid var(--line);color:#655f56;cursor:pointer;background:#fffdf8;border-radius:9px;height:30px;padding:0 10px;font-size:9px}.editor-page-actions button:first-child{color:#aa4d48}.editor-page-actions button:disabled{opacity:.35;cursor:not-allowed}.canvas-wrap{perspective:1800px;isolation:isolate;width:min(100%,720px);margin:0 auto;padding:9px 12px 15px 9px;position:relative}.canvas-wrap.orientation-landscape{width:min(100%,900px)}.orientation-landscape .scrap-canvas,.orientation-landscape .front-cover{aspect-ratio:5/4}.book-cover{z-index:-2;background:var(--book-color);border-radius:5px 10px 10px 5px;position:absolute;inset:0 2px 4px 0;box-shadow:0 24px 45px #36322b38,inset -8px 0 14px #00000014}.book-cover:before{content:"";background:#ffffff1f;border-right:1px solid #0000001f;width:10px;position:absolute;top:0;bottom:0;left:9px}.front-cover{--cover-ink:#f8f1df;aspect-ratio:4/5;width:100%;color:var(--book-ink,var(--cover-ink));isolation:isolate;border:1px solid #2a221947;border-radius:5px 12px 12px 5px;position:relative;overflow:hidden;box-shadow:inset 13px 0 22px #0000002e,inset -2px 0 2px #fff3,5px 7px #c8bcaa,9px 12px #5e503e4d,0 22px 38px #36322b40}.front-cover:before{content:"";z-index:1;background:var(--book-color);opacity:.48;pointer-events:none;position:absolute;inset:0}.cover-linen{--cover-ink:#4d4438;background-color:#d9cbb4;background-image:linear-gradient(#fffaee1f,#64543e0f),url(/textures/cover-linen.png);background-size:cover,360px}.cover-leather{--cover-ink:#ead99d;background-color:#253a52;background-image:radial-gradient(circle at 68% 12%,#ffffff1a,#0000 38%),url(/textures/cover-leather.png);background-size:cover,390px}.cover-kraft{--cover-ink:#4c3422;background-blend-mode:multiply, soft-light, normal;background-color:#af8659;background-image:linear-gradient(#5f3a1a0a,#fff4d90a),repeating-linear-gradient(7deg,#50311714 0 1px,#0000 1px 8px),url(/textures/cover-kraft.png);background-size:cover,auto,390px}.cover-botanical{--cover-ink:#263d2d;background-color:#8da187;background-image:linear-gradient(#e0ebd414,#2c4e3417),url(/textures/cover-botanical.png);background-size:cover,420px}.cover-classic{--cover-ink:#fff6dc;background-image:linear-gradient(105deg,#ffffff21,#0000 18%,#0000001f),url(/textures/cover-leather.png);background-color:var(--book-color);background-blend-mode:soft-light, multiply;background-size:cover,390px}.cover-collage{--cover-ink:#3f352b;background-color:#c6a57c;background-image:linear-gradient(18deg,#0000 0 18%,#e79d8fbf 18% 34%,#0000 34%),linear-gradient(-16deg,#0000 0 57%,#9cbcb4b8 57% 73%,#0000 73%),url(/textures/cover-kraft.png);background-size:cover,cover,390px}.front-cover.cover-linen:after{content:"";z-index:1;pointer-events:none;opacity:.42;mix-blend-mode:overlay;background:repeating-linear-gradient(0deg,#ffffff38 0 1px,#0000 1px 4px),repeating-linear-gradient(90deg,#4030201f 0 1px,#0000 1px 5px);position:absolute;inset:0}.front-cover.cover-kraft:after{content:"";z-index:1;pointer-events:none;mix-blend-mode:multiply;opacity:.62;background:radial-gradient(circle at 18% 24%,#43271138 0 .7px,#0000 1.3px) 0 0/19px 23px,radial-gradient(circle at 74% 66%,#ffefc52e 0 .8px,#0000 1.4px) 0 0/27px 21px,repeating-linear-gradient(8deg,#0000 0 10px,#46291214 10px 11px);position:absolute;inset:0}.cover-spine{z-index:3;background:linear-gradient(90deg,#0000002b,#ffffff1f 45%,#00000014);border-left:1px solid #ffffff2e;border-right:1px solid #0000002e;width:24px;position:absolute;top:0;bottom:0;left:14px;box-shadow:6px 0 13px #0000001a}.cover-inset{z-index:2;text-align:center;border:1px solid;flex-direction:column;justify-content:center;align-items:center;padding:11%;display:flex;position:absolute;inset:11% 12% 12% 16%;box-shadow:0 0 0 4px #ffffff14,inset 0 0 24px #0000000a}.cover-botanical .cover-inset,.cover-collage .cover-inset{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffaecc7;border:0;border-radius:3px;box-shadow:0 9px 25px #262d232b,inset 0 0 0 1px #423b2b1f}.cover-collage .cover-inset{transform:rotate(-1.8deg)}.cover-kicker{letter-spacing:.2em;font-family:Georgia,serif;font-size:clamp(7px,1.4vw,12px);font-weight:700}.cover-inset h2{max-width:100%;font-family:var(--font-hand), cursive;overflow-wrap:anywhere;margin:9% 0 5%;font-size:clamp(25px,6vw,54px);font-weight:400;line-height:1.25}.cover-inset p{max-width:90%;margin:0;font-size:clamp(8px,1.6vw,13px);line-height:1.8}.cover-photo{z-index:6}.cover-ornament{align-items:center;gap:8px;margin-top:10%;display:flex}.cover-ornament i{background:currentColor;border-radius:50%;width:4px;height:4px}.cover-ornament i:nth-child(2){border-radius:0;width:48px;height:1px}.cover-edge{z-index:3;opacity:.75;background:linear-gradient(90deg,#0000002e,#ffffff59);border-radius:50%;width:6px;position:absolute;top:1%;bottom:1%;right:0}.cover-thumb{color:var(--book-ink,var(--cover-ink));isolation:isolate;border-radius:3px 7px 7px 3px;place-items:center;display:grid;box-shadow:inset 5px 0 7px #00000029,2px 3px 4px #27324a2b}.cover-thumb:after{content:"";opacity:.55;border:1px solid;position:absolute;inset:9px 7px 9px 10px}.cover-thumb b{z-index:1;font-family:Georgia,serif;font-size:16px}.turning-cover{border-radius:5px 12px 12px 5px;box-shadow:9px 3px 36px #251f1857}.page-stage{width:100%;transform-style:preserve-3d;touch-action:pan-y;position:relative}.book-rounded .book-cover,.book-rounded .scrap-canvas,.book-rounded .front-cover,.book-rounded .turning-sheet{border-radius:24px}.book-ring{padding-left:24px}.book-ring .book-cover{border-radius:8px 16px 16px 8px;left:10px}.book-ring .scrap-canvas{border-radius:5px 14px 14px 5px}.book-ring .front-cover{border-radius:7px 15px 15px 7px}.book-ring .page-stage:before{content:"";z-index:20;pointer-events:none;filter:drop-shadow(1px 1px 1px #0000005c);background:radial-gradient(circle,#252525 0 2.7px,#77736b 2.9px 3.6px,#eee8dd 3.8px 5.1px,#0000 5.3px) top/14px 14.28% repeat-y;width:15px;position:absolute;top:4%;bottom:4%;left:-1px}.book-rings{z-index:25;pointer-events:none;flex-direction:column;justify-content:space-around;display:flex;position:absolute;top:7%;bottom:8%;left:-5px}.book-rings i{background:linear-gradient(#fff 0 9%,#c8c9c5 14%,#6c6d6b 42%,#f2f2ee 57%,#858682 74%,#d9d9d4 100%);border:4px solid #666763;border-radius:999px;width:49px;height:19px;position:relative;transform:rotate(-2deg);box-shadow:1px 4px 5px #0000004d,-1px 0 1px #ffffffb3,inset 0 2px 1px #fffc,inset 0 -2px 2px #0000004d}.book-rings i:after{content:"";background:#ffffffd9;border-radius:999px;height:2px;position:absolute;top:-3px;left:5px;right:5px}.book-rings i:before{content:"";opacity:.9;background:linear-gradient(90deg,#777,#f8f8f5 48%,#6b6b69);border-radius:999px;height:3px;position:absolute;bottom:-3px;left:7px;right:7px}.book-album{padding:16px 20px 22px 17px}.book-album .book-cover{border:8px solid var(--book-color)}@supports (color:color-mix(in lab, red, red)){.book-album .book-cover{border:8px solid color-mix(in srgb, var(--book-color), #111 24%)}}.book-album .book-cover{background:linear-gradient(#ffffff0d, #00000014), url(/textures/cover-kraft.png), var(--book-color);background-blend-mode:overlay, multiply, normal;background-size:cover,480px,auto;border-radius:8px}.book-album .scrap-canvas{border:3px solid #53412640;box-shadow:inset 9px 0 18px #53412614,4px 5px #f4efe3,7px 8px #ded5c5,10px 11px #c9bca7,13px 14px #ad9d83,0 22px 32px #36322b3d}.book-album .front-cover{border:10px solid var(--book-color)}@supports (color:color-mix(in lab, red, red)){.book-album .front-cover{border:10px solid color-mix(in srgb, var(--book-color), #211b14 24%)}}.book-album .front-cover{border-radius:9px;box-shadow:inset 0 0 0 2px #ffffff1f,inset 14px 0 24px #0000002e,4px 5px #ddd4c4,8px 9px #c7b9a2,12px 14px #9e8c70,0 25px 38px #36322b47}.book-album .page-stage:after{content:"";z-index:-1;border-radius:inherit;background:repeating-linear-gradient(0deg,#b9aa92 0 1px,#eee7d9 1px 3px,#d4c8b5 3px 4px);border:1px solid #5341262e;position:absolute;inset:6px -13px -15px 9px;box-shadow:7px 10px 19px #36322b3d}.page-turn-button{z-index:35;cursor:pointer;width:40px;height:54px;color:var(--ink);background:#fffdf8f0;border:1px solid #27324a24;border-radius:13px;font-family:Georgia,serif;font-size:29px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 20px #27324a24}.page-turn-button.previous{left:-50px}.page-turn-button.next{right:-50px}.page-turn-button:disabled{opacity:.22;cursor:default}.turning-sheet{z-index:30;transform-origin:0;transform-style:preserve-3d;pointer-events:none;backface-visibility:hidden;position:absolute;inset:0;box-shadow:8px 0 30px #36322b33}.turning-sheet:before{content:"";backface-visibility:hidden;background:linear-gradient(90deg,#3e301d21,#0000 12%,#ffffff57) 0 0/cover,url(/textures/paper-fine.png) 0 0/520px;position:absolute;inset:0;transform:rotateY(180deg)translateZ(1px)}.turning-sheet:after{content:"";backface-visibility:hidden;background:linear-gradient(90deg,#3226181f,#0000 13% 72%,#ffffff80 89%,#382b1c33);position:absolute;inset:0}.page-curl{z-index:2;filter:blur(1px);backface-visibility:hidden;background:linear-gradient(90deg,#0000,#ffffffb3);border-radius:50%;width:13px;position:absolute;top:1%;bottom:1%;right:-2px}.turn-forward .turning-sheet{animation:.68s cubic-bezier(.5,.02,.24,1) turn-forward}.turn-back .turning-sheet{transform-origin:100%;animation:.68s cubic-bezier(.5,.02,.24,1) turn-back}.is-gesture .gesture-sheet{will-change:transform;animation:none}.page-gesture-guide{z-index:34;color:#27324a85;pointer-events:none;letter-spacing:.06em;white-space:nowrap;align-items:center;gap:10px;font-size:9px;display:flex;position:absolute;bottom:-37px;left:50%;transform:translate(-50%)}.page-gesture-guide span{background:#fffdf8b3;border:1px solid #27324a24;border-radius:50%;place-items:center;width:22px;height:22px;font-family:Georgia,serif;font-size:16px;display:grid}@keyframes turn-forward{0%{transform:rotateY(0)skewY(0)}45%{transform:rotateY(-82deg)skewY(-1.2deg);box-shadow:30px 2px 46px #36322b4d}to{transform:rotateY(-179deg)skewY(0)}}@keyframes turn-back{0%{transform:rotateY(0)skewY(0)}45%{transform:rotateY(82deg)skewY(1.2deg);box-shadow:-30px 2px 46px #36322b4d}to{transform:rotateY(179deg)skewY(0)}}.scrap-canvas{aspect-ratio:4/5;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;position:relative;overflow:hidden;box-shadow:4px 5px #ffffff80,7px 8px #e1d9c7cc,0 12px 28px #36322b24}.paper-cream,.paper-fine{background-color:#f7f2e8;background-image:linear-gradient(#fffef92e,#eee8d80f),url(/textures/paper-fine.png);background-size:cover,520px}.paper-kraft{background-color:#c6a071;background-image:linear-gradient(25deg,#53361b0f,#0000 38%),url(/textures/paper-kraft.png);background-size:cover,520px}.paper-heavy{background-color:#e9e2d3;background-image:linear-gradient(100deg,#fff3,#0000 44%),url(/textures/paper-heavy.png);background-size:cover,520px}.paper-color-coral,.paper-color-blue,.paper-color-green,.paper-color-yellow{background-image:linear-gradient(var(--page-paper-tint), var(--page-paper-tint)), url(/textures/paper-heavy.png);background-color:var(--page-paper-color);background-blend-mode:multiply, normal;background-size:cover,520px}.paper-color-coral{--page-paper-color:#e99a8f;--page-paper-tint:#e8766791}.paper-color-blue{--page-paper-color:#9dbdd3;--page-paper-tint:#5b94b880}.paper-color-green{--page-paper-color:#a8c4a3;--page-paper-tint:#66a0667a}.paper-color-yellow{--page-paper-color:#e7cb72;--page-paper-tint:#d3ab2b75}.paper-noise{opacity:.5;pointer-events:none;background:radial-gradient(circle at 20% 30%,#7a603b0d 0 1px,#0000 1.5px) 0 0/17px 19px,radial-gradient(circle at 70% 80%,#7a603b0a 0 1px,#0000 1.5px) 0 0/23px 29px;position:absolute;inset:0}.scrap-item{transform-origin:50%;cursor:grab;touch-action:none;position:absolute}.scrap-item:active{cursor:grabbing}.scrap-item.selected:after{content:"";border:2px solid var(--blue);pointer-events:none;border-radius:7px;position:absolute;inset:-8px}.selection-dot{border:3px solid var(--blue);background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;bottom:-14px;right:-14px}.item-placeholder,.item-photo{background:#fffdf8;padding:13px 13px 42px;box-shadow:5px 7px 16px #3b33282e}.item-placeholder{background:#fffdf8}.item-placeholder:before{content:"";background:radial-gradient(circle at 70% 30%,#ffd766 0 9%,#0000 9.5%),linear-gradient(135deg,#0000 45%,#b8d5ca 45% 65%,#7898a8 65%);position:absolute;inset:13px 13px 42px}.item-placeholder button{color:var(--ink);cursor:pointer;background:#27324a14;border:0;flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex;position:absolute;inset:13px 13px 42px}.item-placeholder button span{background:#ffffffd1;border-radius:50%;place-items:center;width:35px;height:35px;font-size:22px;display:grid}.item-photo img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.item-photo.shape-round{aspect-ratio:1;background:0 0;border:7px solid #fffdf8;border-radius:50%;padding:0;overflow:hidden}.item-photo.shape-arch{background:0 0;border:8px solid #fffdf8;border-radius:50% 50% 6px 6px;padding:0;overflow:hidden}.item-photo.shape-torn{clip-path:polygon(2% 3%,12% 0,23% 3%,35% 0,48% 3%,62% 0,74% 2%,87% 0,99% 4%,97% 18%,100% 31%,97% 46%,100% 60%,97% 75%,100% 91%,96% 100%,81% 97%,68% 100%,51% 97%,37% 100%,21% 97%,5% 100%,2% 86%,4% 70%,1% 54%,4% 38%,1% 22%);padding:7px}.item-photo.shape-heart{aspect-ratio:1;clip-path:polygon(50% 92%,43% 85%,15% 60%,7% 45%,8% 28%,17% 15%,31% 11%,43% 15%,50% 25%,57% 15%,69% 11%,83% 15%,92% 28%,93% 45%,85% 60%,57% 85%);background:0 0;padding:0;overflow:hidden}.item-photo.shape-blob{background:0 0;border:7px solid #fffdf8;border-radius:47% 53% 39% 61%/58% 39% 61% 42%;padding:0;overflow:hidden}.item-photo.shape-custom{filter:drop-shadow(5px 7px 8px #3b332833);background:0 0;border:0;padding:0;overflow:hidden}.item-photo.shape-film{background:repeating-linear-gradient(#20201f 0 8px,#f4ecd9 8px 13px) 0/8px 100% no-repeat,repeating-linear-gradient(#20201f 0 8px,#f4ecd9 8px 13px) 100%/8px 100% no-repeat,#20201f;border-radius:3px;padding:15px 11px;overflow:hidden}.item-text{font-family:var(--font-hand), cursive;white-space:pre-wrap;align-items:center;font-size:clamp(12px,3.1vw,31px);line-height:1.35;display:flex}.item-text.font-hand{font-family:var(--font-hand), cursive}.item-text.font-sans{font-family:var(--font-noto), sans-serif}.item-text.font-serif{font-family:var(--font-mincho), "Yu Mincho", serif}.item-text.font-rounded{font-family:var(--font-rounded), "Hiragino Maru Gothic ProN", sans-serif}.item-sticker{filter:drop-shadow(2px 3px #fffc);place-items:center;font-family:Georgia,serif;font-size:clamp(28px,8vw,74px);line-height:1;display:grid}.item-tape{opacity:.76;clip-path:polygon(3% 7%,12% 0,22% 7%,33% 1%,44% 6%,57% 0,68% 6%,80% 1%,91% 7%,100% 2%,97% 94%,87% 100%,75% 94%,62% 100%,49% 95%,38% 100%,26% 94%,14% 100%,2% 93%);box-shadow:inset 0 0 0 1px #503e140f}.item-drawing{filter:drop-shadow(1px 2px 1px #ffffff47);background:0 0}.drawing-graphic{pointer-events:none;width:100%;height:100%;display:block;overflow:visible}.drawing-graphic polyline,.drawing-overlay polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}.drawing-overlay{z-index:45;border-radius:inherit;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;position:absolute;inset:0;overflow:hidden}.drawing-overlay svg{pointer-events:none;background:0 0;width:100%;height:100%;display:block}.drawing-overlay>span{color:#fff;pointer-events:none;white-space:nowrap;background:#27324ac7;border-radius:999px;padding:9px 14px;font-size:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.drawing-toolbar{z-index:90;background:#fffdf8fa;border:1px solid #27324a24;border-radius:14px;justify-content:center;align-items:center;gap:9px;width:min(720px,100vw - 326px);min-height:46px;padding:6px 9px;display:flex;position:fixed;inset:auto auto 18px calc(50% + 138px);transform:translate(-50%);box-shadow:0 10px 28px #27324a2b}.drawing-colors{gap:5px;display:flex}.drawing-colors button{cursor:pointer;border:2px solid #fff;border-radius:50%;width:23px;height:23px;box-shadow:0 0 0 1px #27324a3d}.drawing-colors button.active{box-shadow:0 0 0 2px var(--blue), 0 0 0 4px white}.drawing-toolbar label{color:var(--muted);align-items:center;gap:5px;font-size:8px;display:flex}.drawing-toolbar label input{width:82px}.drawing-toolbar>button{border:1px solid var(--line);cursor:pointer;white-space:nowrap;background:#fff;border-radius:9px;height:30px;padding:0 9px;font-size:9px}.drawing-toolbar .drawing-apply{border-color:var(--blue);background:var(--blue);color:#fff;font-weight:700}.drawing-toolbar .drawing-cancel{color:#a34843}.drawing-toolbar button:disabled{opacity:.35}.page-number{color:#999184;font-family:Georgia,serif;font-size:11px;position:absolute;bottom:13px;right:18px}.selection-toolbar{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f5;border:1px solid #27324a1f;border-radius:17px;justify-content:center;align-items:center;gap:12px;width:min(100vw - 326px,760px);min-height:64px;padding:10px 12px;display:flex;position:fixed;bottom:18px;left:calc(50% + 138px);transform:translate(-50%);box-shadow:0 13px 34px #27324a2e}.selection-toolbar label{flex:1;min-width:110px}.selection-toolbar label span{color:var(--muted);margin-bottom:3px;font-size:8px;display:block}.selection-toolbar input,.selection-toolbar select{width:100%}.selection-toolbar input:not([type=range]),.selection-toolbar select{border:1px solid var(--line);background:#fff;border-radius:9px;outline:none;height:34px;padding:0 8px;font-size:11px}.selection-toolbar .text-editor{flex:1.8}.selection-toolbar .font-editor{min-width:125px}.font-select.font-hand{font-family:var(--font-hand), cursive}.font-select.font-sans{font-family:var(--font-noto), sans-serif}.font-select.font-serif{font-family:var(--font-mincho), "Yu Mincho", serif}.font-select.font-rounded{font-family:var(--font-rounded), "Hiragino Maru Gothic ProN", sans-serif}.selection-toolbar button{border:1px solid var(--line);cursor:pointer;white-space:nowrap;background:#fff;border-radius:9px;height:35px;padding:0 10px;font-size:10px}.selection-toolbar .cutout-button{border-color:var(--blue)}@supports (color:color-mix(in lab, red, red)){.selection-toolbar .cutout-button{border-color:color-mix(in srgb, var(--blue), white 62%)}}.selection-toolbar .cutout-button{color:var(--blue);background:#f1f4ff;font-weight:700}.selection-toolbar .delete-button{color:#c64b45}.preview-modal{z-index:130;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(circle at 50% 42%,#ffffff29,#0000 42%),#1d1f25f0;grid-template-rows:auto minmax(0,1fr) auto;padding:18px 24px;animation:.18s ease-out preview-in;display:grid;position:fixed;inset:0}.preview-header{justify-content:space-between;align-items:center;width:100%;max-width:1100px;margin:0 auto;display:flex}.preview-header span,.preview-header strong{display:block}.preview-header span{color:#ffffff8c;letter-spacing:.18em;font-size:8px;font-weight:800}.preview-header strong{font-family:var(--font-hand), cursive;margin-top:3px;font-size:20px;font-weight:400}.preview-header>button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff47;border-radius:12px;width:38px;height:38px;font-size:20px}.preview-stage{place-items:center;min-height:0;padding:14px 70px;display:grid;overflow:auto}.preview-canvas-wrap{width:min(64vh,680px);max-width:100%;color:var(--ink)}.preview-canvas-wrap.orientation-landscape{width:min(88vh,900px)}.preview-surface{pointer-events:none}.preview-item{cursor:default}.preview-placeholder{background:#27324a14;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex;position:absolute;inset:13px 13px 42px}.preview-placeholder span{font-size:20px}.preview-navigation{grid-template-columns:90px minmax(0,1fr) 90px;align-items:center;gap:14px;width:min(100%,760px);margin:0 auto;display:grid}.preview-navigation>button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:11px;height:36px;font-size:11px}.preview-navigation>button:disabled{opacity:.25;cursor:default}.preview-navigation>div{justify-content:center;align-items:center;gap:7px;display:flex;overflow-x:auto}.preview-navigation i{cursor:pointer;background:#ffffff47;border-radius:50%;flex:none;width:7px;height:7px}.preview-navigation i.active{background:#fff;border-radius:999px;width:20px}@keyframes preview-in{0%{opacity:0}}.cutout-modal{z-index:120;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c1e23ad;place-items:center;padding:22px;animation:.18s ease-out cutout-modal-in;display:grid;position:fixed;inset:0}.cutout-panel{background:#fffdf8;border:1px solid #fff6;border-radius:22px;width:min(92vw,720px);max-height:calc(100dvh - 44px);padding:19px;overflow:auto;box-shadow:0 28px 70px #11141b57}.cutout-head{justify-content:space-between;align-items:start;gap:18px;margin-bottom:14px;display:flex}.cutout-head h2{font-family:var(--font-hand), cursive;margin:3px 0 2px;font-size:24px;font-weight:400}.cutout-head p{color:var(--muted);margin:0;font-size:10px}.cutout-head>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;flex:none;width:32px;height:32px}.cutout-canvas{aspect-ratio:4/3;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background-color:#f6f3ed;background-image:linear-gradient(45deg,#e9e6df 25%,#0000 25%),linear-gradient(-45deg,#e9e6df 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#e9e6df 75%),linear-gradient(-45deg,#0000 75%,#e9e6df 75%),none;background-position:0 0,0 10px,10px -10px,-10px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;border:1px solid #27324a2e;border-radius:14px;width:min(100%,620px);margin:0 auto;position:relative;overflow:hidden}.cutout-canvas img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.cutout-canvas svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cutout-canvas polygon{fill:#3156d729;stroke:none}.cutout-canvas polyline{fill:none;stroke:#fff;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px #18213dd9)}.cutout-instruction{color:#fff;white-space:nowrap;pointer-events:none;background:#27324ad1;border-radius:999px;padding:8px 12px;font-size:10px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.cutout-actions{justify-content:flex-end;gap:9px;margin-top:14px;display:flex}@keyframes cutout-modal-in{0%{opacity:0;transform:scale(.985)}}.mobile-tools,.mobile-stamp-drawer{display:none}.button-plus{color:#71520d;background:#fff6d9;border-color:#e2aa388c}.button-plus.is-active{color:#fff6d9;background:#27324a}.plus-locked{opacity:.58;position:relative}.plus-modal{z-index:140;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2226307a;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.plus-panel{text-align:center;background:#fffcf5;border-radius:26px;width:min(460px,100%);padding:30px 26px;position:relative;box-shadow:0 24px 70px #1c202b4d}.plus-close{border:1px solid var(--line);background:#fff;border-radius:50%;width:34px;height:34px;position:absolute;top:14px;right:14px}.plus-crown{color:#d49a20;font-size:42px;display:block}.plus-panel h2{margin:5px 0 4px;font-family:Georgia,serif;font-size:32px}.plus-panel>p{color:var(--muted);margin:0 0 18px}.plus-panel ul{text-align:left;background:#f7f0df;border-radius:17px;margin:0;padding:16px 18px 16px 38px;line-height:1.9}.plus-prices{justify-content:center;gap:10px;margin:18px 0 10px;display:flex}.plus-prices strong{background:#fff9e8;border:1px solid #dcc27b;border-radius:12px;padding:10px 13px}.toast{z-index:100;background:var(--ink);color:#fff;border-radius:999px;padding:10px 16px;font-size:12px;animation:.18s ease-out toast-in;position:fixed;top:88px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #27324a40}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-8px)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=820px){.topbar{height:62px;padding:0 14px}.brand span,.save-state,.button-ghost,.book-style-button{display:none}.style-popover{width:auto;inset:auto 10px 78px}.brand-mark{width:35px;height:35px;font-size:22px}.button-primary{height:36px;padding:0 11px;font-size:11px}.button-preview,.button-library{height:34px;padding:0 9px;font-size:9px}.book-library-modal{align-items:end;padding:10px}.book-library-panel{border-radius:22px;max-height:calc(100dvh - 20px);padding:18px}.book-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{height:calc(100dvh - 62px);display:block}.side-panel{display:none}.editor-area{padding:15px 10px 150px}.editor-meta{margin-bottom:9px;padding:0 4px}.editor-meta input{font-size:18px}.edit-hint{display:none}.canvas-wrap{width:calc(100% - 18px);max-width:600px;padding:7px 8px 11px 6px}.book-ring{padding-left:16px}.book-rings{left:-4px}.book-rings i{border-width:2px;width:27px;height:9px}.book-album{padding:11px 13px 15px 11px}.page-turn-button{border-radius:11px;width:42px;height:38px;font-size:23px;top:auto;bottom:-51px;transform:none}.page-turn-button.previous{left:calc(50% - 48px)}.page-turn-button.next{right:calc(50% - 48px)}.page-gesture-guide{display:none}.item-text{font-size:clamp(12px,4.2vw,29px)}.selection-toolbar{justify-content:flex-start;width:auto;min-height:58px;padding:8px;bottom:83px;left:10px;right:10px;overflow-x:auto;transform:none}.selection-toolbar label{min-width:104px}.selection-toolbar .text-editor{min-width:170px}.selection-toolbar .cutout-button{min-width:128px}.drawing-toolbar{z-index:90;flex-wrap:wrap;gap:6px;width:auto;min-height:54px;position:fixed;inset:auto 8px 76px;transform:none}.drawing-toolbar label input{width:62px}.drawing-colors button{width:21px;height:21px}.cutout-modal{align-items:end;padding:10px}.cutout-panel{border-radius:20px;width:100%;max-height:calc(100dvh - 20px);padding:14px}.cutout-canvas{aspect-ratio:1}.cutout-actions .button{flex:1}.mobile-tools{z-index:70;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);height:70px;padding-bottom:env(safe-area-inset-bottom);background:#fffdf8f5;border-top:1px solid #27324a1f;grid-template-columns:repeat(7,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tools button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:9px}.mobile-tools button>span{height:30px;color:var(--ink);place-items:center;font-family:Georgia,serif;font-size:20px;display:grid}.mobile-tools .tape-mobile{position:relative}.mobile-tools .tape-mobile:after{display:block}.mobile-stamp-drawer{z-index:75;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8fa;border:1px solid #27324a21;border-radius:18px;padding:14px;animation:.16s ease-out popover-in;display:block;position:fixed;bottom:78px;left:10px;right:10px;box-shadow:0 16px 42px #27324a33}.mobile-stamp-drawer>div:first-child{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.mobile-stamp-drawer>div:first-child strong{font-family:var(--font-hand), cursive;font-size:18px;font-weight:400}.mobile-stamp-drawer>div:first-child button{border:1px solid var(--line);background:#fff;border-radius:9px;width:29px;height:29px}.mobile-stamp-drawer .stamp-grid{grid-template-columns:repeat(5,1fr)}.mobile-stamp-drawer .stamp-grid>button{flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:21px;display:flex}.mobile-stamp-drawer .stamp-grid small{color:var(--muted);font-family:var(--font-noto), sans-serif;font-size:7px}.preview-modal{padding:12px 10px}.preview-stage{padding:12px 24px}.preview-canvas-wrap{width:min(70vh,100%)}.preview-canvas-wrap.orientation-landscape{width:min(82vh,100%)}.preview-navigation{grid-template-columns:72px minmax(0,1fr) 72px;gap:8px}.preview-navigation>button{font-size:9px}.toast{text-align:center;max-width:calc(100vw - 28px);top:73px}}@media (width<=430px){.brand>div:last-child{display:none}.top-actions{gap:5px}.button-library,.button-preview,.button-primary{padding:0 7px;font-size:8px}.scrap-canvas{box-shadow:0 12px 30px #36322b21}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.legal-page{color:#27324a;background:radial-gradient(circle at 85% 8%,#ffd76647,#0000 24rem),#f5f0e7;min-height:100dvh;padding:54px 20px 90px}.legal-page article{background:#fffdf8f0;border:1px solid #27324a1f;border-radius:24px;width:min(720px,100%);margin:0 auto;padding:38px;box-shadow:0 18px 50px #36322b1a}.legal-brand{color:#27324a;font-family:Georgia,serif;font-size:30px;font-style:italic;text-decoration:none}.legal-kicker{color:#3156d7;letter-spacing:.16em;margin:34px 0 4px;font-size:10px;font-weight:800}.legal-page h1{font-family:var(--font-mincho), serif;margin:0;font-size:clamp(28px,6vw,43px)}.legal-updated{color:#7d7b74;margin:10px 0 34px;font-size:11px}.legal-page section{border-top:1px solid #27324a1a;padding:23px 0}.legal-page h2{margin:0 0 9px;font-size:16px}.legal-page section p{color:#565b68;margin:0;font-size:14px;line-height:1.9}@media (width<=600px){.legal-page{padding:18px 12px 60px}.legal-page article{border-radius:19px;padding:25px 21px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
