@font-face{font-family:Nanum Square;src:url(/fonts/NanumSquare-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Nanum Square Neo;src:url(/fonts/NanumSquareNeo-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Nanum Gothic;src:url(/fonts/NanumGothic-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Nanum Myeongjo;src:url(/fonts/NanumMyeongjo-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Nanum Pen Script;src:url(/fonts/NanumPenScript-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Nanum Brush Script;src:url(/fonts/NanumBrushScript-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Gowun Batang;src:url(/fonts/GowunBatang-Regular.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:Gowun Batang;src:url(/fonts/GowunBatang-Bold.ttf) format("truetype");font-display:swap;font-style:normal;font-weight:700}:root{font-family:Nanum Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#24221f;background:#e8e3da;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#e8e3da}button,input,textarea{font:inherit}button{color:inherit}.studio-shell :focus-visible{outline:2px solid #4a463f;outline-offset:2px;border-radius:6px}.studio-shell--ink :focus-visible{outline-color:#d8d2c6}.record-list,.edit-panel,.page-canvas,.spread-grid{scroll-padding-top:12px;scroll-padding-bottom:12px}.studio-shell{--ink: #24221f;--muted: #70695f;--line: #d9d0c4;--paper: #faf5ea;--accent: #b85e4f;min-height:100vh;background:#e8e3da}.studio-shell--ink{--paper: #e9e5dc;--accent: #3d4549}.studio-shell--summer{--paper: #f1f3e8;--accent: #5d807d}.studio-shell--archive{--paper: #f5eee3;--accent: #9a5e48}.studio-shell--editorial{--paper: #fffbeb;--accent: #92400e;--line: #e6ddc7}.studio-header{position:sticky;top:0;z-index:20;height:72px;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;border-bottom:1px solid var(--line);background:#fcf9f4f5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-lockup,.brand-lockup>div:last-child,.header-actions,.studio-steps,.page-counter,.zoom-control{display:flex;align-items:center}.brand-lockup{gap:11px}.brand-symbol{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#2d2a26;color:#fffaf3}.brand-lockup>div:last-child{align-items:flex-start;flex-direction:column;line-height:1.1}.brand-lockup strong{font-size:15px}.brand-lockup span{margin-top:5px;color:var(--muted);font-size:12px}.studio-steps{gap:6px;color:#716b62;font-size:12px}.studio-steps span{min-height:36px;padding:0 12px;display:flex;align-items:center;gap:5px;border-radius:999px}.studio-steps .is-complete{color:#527163}.studio-steps .is-current{color:#fff;background:#34312d}.header-actions{justify-content:flex-end;gap:8px}.button{min-height:44px;padding:0 15px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:13px;background:#fffdf9;cursor:pointer}.button--primary{border-color:#2f2c28;background:#2f2c28;color:#fff}.button:disabled{opacity:.48;cursor:not-allowed}.undo-button{gap:6px}.undo-count{min-width:20px;padding:2px 5px;border-radius:999px;background:#eee5d8;color:#6d5d50;font-size:10px;line-height:1.2;text-align:center}.undo-button:disabled .undo-count{background:#f2eee8}.privacy-strip{min-height:40px;padding:8px 24px;display:flex;justify-content:center;align-items:center;gap:8px;border-bottom:1px solid #d5c9b8;background:#ede4d6;color:#675f55;font-size:12px;line-height:1.35}.privacy-strip svg{flex:0 0 auto}.studio-workspace{height:calc(100vh - 112px);display:grid;grid-template-columns:336px minmax(400px,1fr) 268px;overflow:hidden}.record-panel,.edit-panel{min-height:0;background:#fcfaf6}.record-panel{display:flex;flex-direction:column;border-right:1px solid var(--line)}.edit-panel{padding:22px 18px;overflow-y:auto;border-left:1px solid var(--line)}.panel-heading{padding:20px 20px 14px;display:flex;align-items:center;justify-content:space-between}.eyebrow{margin:0 0 5px;color:#766f65;font-size:10px;font-weight:700;letter-spacing:.15em}.panel-heading h1,.edit-heading h2{margin:0;font-size:21px;letter-spacing:-.035em}.month-button{min-height:44px;padding:0 12px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:12px;color:#665f56}.selection-summary{margin:0 20px 16px;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#f4eee5}.selection-summary div{min-height:62px;padding:11px 14px;display:flex;flex-direction:column;justify-content:center;gap:2px;border-right:1px solid var(--line)}.selection-summary div:last-child{border-right:0}.selection-summary strong{font-size:20px}.selection-summary span{color:var(--muted);font-size:11px}.selection-start{margin:-6px 20px 16px;padding:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d8cfc2;border-radius:14px;background:#fffdf9}.selection-start p{min-width:0;margin:0;display:flex;flex-direction:column;gap:3px}.selection-start strong{font-size:12px}.selection-start span{color:#71695f;font-size:10px;line-height:1.4}.selection-start button{flex:0 0 auto;min-height:44px;padding:0 12px;border:1px solid #2f2c28;border-radius:11px;background:#2f2c28;color:#fff;font-size:11px;font-weight:700;cursor:pointer}.selection-start button:disabled{border-color:#cbc3b8;background:#e4ded5;color:#706960;cursor:default}.title-field{padding:0 20px 16px;display:flex;flex-direction:column;gap:7px;color:#686158;font-size:12px}.title-field input,.title-field textarea{width:100%;min-height:44px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;outline:none;background:#fff;color:var(--ink);font-size:16px;line-height:1.5;resize:vertical}.title-field textarea{min-height:92px}.title-field input:focus,.title-field textarea:focus,.book-text-field textarea:focus{border-color:#746c62;box-shadow:0 0 0 3px #746c6221}.record-toolbar{min-height:0;padding:10px 14px 9px;display:flex;flex-direction:column;align-items:stretch;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.library-scale-actions{margin:-7px 20px 14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.library-scale-actions button{min-height:44px;padding:0 11px;display:inline-flex;align-items:center;gap:6px;border:1px solid #d3c8ba;border-radius:10px;background:#f8f2e9;color:#71584d;font-size:11px;font-weight:700;cursor:pointer}.library-scale-actions button:hover{border-color:#aa8375;background:#fff8f2}.library-scale-actions button:disabled{opacity:.48;cursor:not-allowed}.library-scale-actions>span{color:#918276;font-size:10px}.library-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.library-tabs button{min-width:0;min-height:44px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:10px;background:#f4eee5;color:#71695f;font-size:12px;font-weight:700;cursor:pointer}.library-tabs button:hover{background:#eee5d8;color:#403b35}.library-tabs button.is-active{border-color:#a95d50;background:#fffdfa;color:#8d493f;box-shadow:inset 0 -2px #a95d50}.library-tabs button strong{min-width:22px;padding:2px 5px;border-radius:999px;background:#564c411a;color:inherit;font-size:10px;line-height:1.2}.library-tabs button.is-active strong{background:#f2ddd5}.library-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.library-heading .section-label{min-height:28px;color:#403b35}.library-hint{flex:0 1 auto;color:#9a5a4e;font-size:10px;font-weight:700;white-space:nowrap}.library-search{min-width:0;min-height:44px;padding:0 7px 0 11px;display:flex;align-items:center;gap:7px;border:1px solid #d9d0c4;border-radius:11px;background:#fffdfa;color:#85786b}.library-search:focus-within{border-color:#8e7568;box-shadow:0 0 0 3px #8e75681f}.library-search input{min-width:0;flex:1;height:42px;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px}.library-search input::placeholder{color:#a69b90}.library-search>button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#806e62;cursor:pointer}.library-search>button:hover{background:#f3ebe2}.library-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.library-filters label{min-width:0;display:flex;flex-direction:column;gap:4px;color:#766d64;font-size:10px;font-weight:700}.library-filters select{width:100%;min-height:44px;padding:0 9px;border:1px solid #d9d0c4;border-radius:9px;background:#fffdfa;color:#4f4942;font-size:13px}.library-result-row{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:6px;color:#82766b;font-size:10px}.record-toolbar-actions{align-self:flex-end;display:flex;align-items:center;gap:4px}.record-toolbar-actions button{min-height:44px;padding:0 8px;border:0;border-radius:7px;background:transparent;color:#9d5046;font-size:11px;cursor:pointer}.record-toolbar-actions button:hover{background:#f7e9e3}.library-bulk-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.library-bulk-actions button{min-width:0;min-height:44px;padding:0 7px;border:1px solid #d6c7b9;border-radius:9px;background:#fffaf4;color:#80544b;font-size:10px;font-weight:700;cursor:pointer}.library-bulk-actions button:first-child{border-color:#9d594d;background:#fff3ed;color:#8d493f}.library-bulk-actions button:hover{background:#f8e9e0}.library-bulk-actions button:disabled{opacity:.45;cursor:not-allowed}.library-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.selection-tray{margin:0 14px 10px;padding:10px 11px;border:1px solid #ded4c8;border-radius:12px;background:#f7f0e7}.selection-tray-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.selection-tray-heading strong{color:#4a433c;font-size:11px}.selection-tray-heading span{color:#8a7c70;font-size:10px;white-space:nowrap}.selection-tray p{margin:6px 0 0;color:#8b8075;font-size:10px;line-height:1.4}.selection-tray-items{margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:5px}.selection-tray-items button{min-height:44px;padding:0 7px 0 9px;display:inline-flex;align-items:center;gap:4px;border:1px solid #d6b9aa;border-radius:999px;background:#fffaf5;color:#76564d;font-size:10px;cursor:pointer}.selection-tray-items button:hover{border-color:#a95d50;background:#fff}.selection-tray-more{color:#806e62;font-size:10px}.record-list{flex:1;min-height:0;overflow-y:auto;padding-bottom:12px}.library-empty-result{min-height:180px;padding:24px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#82776c;text-align:center}.library-empty-result svg{color:#a05a4d}.library-empty-result strong{color:#4c463f;font-size:13px}.library-empty-result span{font-size:11px;line-height:1.5}.library-load-more{margin:8px 14px 4px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:6px;border-top:1px solid #e8e0d7;color:#86796d;font-size:10px}.library-load-more button{min-height:44px;padding:0 14px;border:1px solid #c7afa1;border-radius:9px;background:#fffaf5;color:#80544b;font-size:11px;font-weight:700;cursor:pointer}.library-load-more button:hover{background:#fff;border-color:#9d594d}.record-row{display:grid;grid-template-columns:44px 1fr;border-bottom:1px solid #e9e3da;background:#fcfaf6}.record-row.is-selected{background:#fffdfa}.order-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.order-controls button{width:44px;height:44px;padding:0;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#8c857b;cursor:pointer}.order-controls button:disabled{color:#d8d2ca;cursor:default}.record-select{min-width:0;min-height:94px;padding:14px 16px 14px 4px;display:grid;grid-template-columns:24px 1fr;gap:9px;border:0;background:transparent;text-align:left;cursor:pointer}.checkbox{width:22px;height:22px;display:grid;place-items:center;border:1px solid #bbb3a8;border-radius:7px;color:#fff}.is-selected .checkbox{border-color:var(--accent);background:var(--accent)}.record-content{min-width:0;display:flex;flex-direction:column;gap:6px}.record-meta{color:#736b61;font-size:11px}.record-text{overflow:hidden;color:#34312d;font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.record-media{display:flex;align-items:center;gap:4px;color:#92534b;font-size:11px}.record-thumb-strip{height:34px;display:flex;align-items:center;gap:4px;overflow:hidden}.record-thumb-strip img{width:42px;height:32px;flex:0 0 auto;object-fit:cover;border-radius:6px}.record-thumb-strip>span{margin-left:2px;color:#8f8173;font-size:10px}.photo-library-panel{flex:1;min-height:0;overflow-y:auto;padding:10px 14px 16px}.photo-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-choice{min-width:0;padding:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #ded4c8;border-radius:12px;background:#fffdfa;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.photo-choice:hover{border-color:#bda99a;transform:translateY(-1px)}.photo-choice.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px #b85e4f29}.photo-choice-image{position:relative;display:block;aspect-ratio:1.35;overflow:hidden;background:#e8e1d7}.photo-choice-image img{width:100%;height:100%;display:block;object-fit:cover}.photo-choice-check{position:absolute;top:7px;right:7px;width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.88);border-radius:50%;background:#2f2c28ad;color:#fff}.photo-choice.is-selected .photo-choice-check{background:var(--accent)}.photo-choice-copy{min-width:0;padding:9px 9px 10px;display:flex;flex-direction:column;gap:3px}.photo-choice-label{color:#3f3a35;font-size:12px;font-weight:700}.photo-choice-meta{color:#83796e;font-size:10px}.photo-choice-story{overflow:hidden;color:#686158;font-size:10px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.photo-choice-status{margin-top:3px;color:#9a5a4e;font-size:10px;font-weight:700}.photo-library-empty{min-height:220px;padding:28px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#756d64;text-align:center}.photo-library-empty svg{color:#a95d50}.photo-library-empty strong{color:#49443e;font-size:13px}.photo-library-empty span{max-width:220px;font-size:11px;line-height:1.5}.panel-note{padding:14px 18px;display:flex;gap:8px;border-top:1px solid var(--line);background:#f2ede4;color:#6e675e;font-size:11px;line-height:1.45}.panel-note svg{flex:0 0 auto;margin-top:1px}.preview-stage{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 28%,#efebe3,#d8d2c8 72%)}.preview-toolbar{height:52px;padding:0 15px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #cfc7bc;background:#f3efe8f2}.preview-toolbar>p{margin:0;color:#5d5750;font-size:12px}.page-counter,.zoom-control{gap:2px}.page-counter button,.zoom-control button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;cursor:pointer}.page-counter button:hover,.zoom-control button:hover{background:#ffffffb3}.page-counter button:disabled{color:#a9a39a;cursor:default}.page-counter svg,.zoom-control svg{width:18px}.page-counter span,.zoom-control span{min-width:54px;text-align:center;color:#625c54;font-size:12px}.zoom-control{justify-content:flex-end}.page-canvas{flex:1;min-height:0;overflow:auto;padding:34px;display:grid;place-items:center}.page-scale{width:calc(420px * var(--page-zoom));height:calc(596px * var(--page-zoom))}.page-scale>.book-page{transform:scale(var(--page-zoom));transform-origin:top left}.direct-edit-help,.direct-edit-toolbar{position:absolute;z-index:12}.direct-edit-help{top:10px;left:50%;max-width:calc(100% - 32px);padding:7px 11px;transform:translate(-50%);border:1px solid rgba(80,70,59,.18);border-radius:999px;background:#fffdf9e6;color:#6c6258;font-size:11px;text-align:center;pointer-events:none}.direct-edit-toolbar{right:18px;bottom:16px;padding:6px;display:flex;align-items:center;gap:4px;border:1px solid rgba(80,70,59,.18);border-radius:13px;background:#fffdf9f0;box-shadow:0 8px 24px #2d272024}.direct-edit-toolbar>span{padding:0 8px;color:#5e574f;font-size:11px;font-weight:700}.direct-edit-toolbar button{min-width:44px;min-height:44px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#5d5750;font-size:11px;cursor:pointer}.direct-edit-toolbar button:last-child{border-color:#c69084;color:#8d493f}.drawing-toolbar{position:absolute;left:18px;bottom:16px;z-index:12;padding:6px;display:flex;align-items:center;flex-wrap:wrap;gap:5px;max-width:min(570px,calc(100% - 36px));border:1px solid rgba(80,70,59,.18);border-radius:13px;background:#fffdf9f0;box-shadow:0 8px 24px #2d272024}.drawing-toolbar>button,.drawing-color-button{min-height:44px;padding:0 11px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#5d5750;font-size:11px;cursor:pointer}.drawing-toolbar>button.is-active,.drawing-color-button.is-active{border-color:#9d594d;background:#fff4ef;color:#8d493f;box-shadow:inset 0 0 0 1px #9d594d}.drawing-color-picker{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}.drawing-color-label{color:#746c62;font-size:10px;font-weight:700}.drawing-color-options{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.drawing-color-button{min-width:50px;padding:4px 6px;flex-direction:column;justify-content:center;gap:2px;font-size:9px}.drawing-color-button:hover{background:#f8f2e9}.drawing-color-button.is-active:hover{background:#fff4ef}.drawing-color-swatch{width:15px;height:15px;display:block;border:1px solid rgba(47,44,40,.22);border-radius:50%}.drawing-clear-button{color:#8d493f!important}.direct-edit-target{position:relative;transform:translate3d(var(--direct-edit-x, 0),var(--direct-edit-y, 0),0) scale(var(--direct-edit-scale, 1));transform-origin:center}.direct-edit-target--photo{min-width:0;min-height:0}.direct-edit-target--photo>.photo-block{width:100%;height:100%;min-height:0}.direct-edit-target.is-editable{cursor:grab;touch-action:none}.direct-edit-target.is-editable:active{cursor:grabbing}.direct-edit-target.is-edit-selected{z-index:8;outline:2px solid #9d594d;outline-offset:3px}.direct-edit-controls{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:block;pointer-events:none}.direct-edit-controls button{pointer-events:auto;cursor:pointer}.direct-edit-chip{position:absolute;top:-34px;left:0;min-height:28px;padding:6px 8px;display:inline-flex;align-items:center;border-radius:7px;background:#34312d;color:#fff;font-size:10px;white-space:nowrap}.direct-edit-controls>button:not(.direct-edit-resize){position:absolute;top:-34px;right:0;min-height:28px;padding:0 9px;border:0;border-radius:7px;background:#34312d;color:#fff;font-size:10px}.direct-edit-resize{position:absolute;right:-22px;bottom:-22px;width:44px;height:44px;padding:0;border:1px solid #9d594d;border-radius:50%;background:#fffdf9;color:#9d594d;font-size:18px;line-height:1}.book-page--paper .direct-edit-target.cover-photo-wrap{transform:translate3d(var(--direct-edit-x, 0),var(--direct-edit-y, 0),0) scale(var(--direct-edit-scale, 1)) rotate(-1deg)}.empty-preview{max-width:470px;margin:auto;padding:30px 38px 44px;text-align:center;color:#393630}.empty-preview h2{margin:8px 0 20px;font-size:24px;line-height:1.35;letter-spacing:-.04em;word-break:keep-all}.empty-preview ol{margin:0 auto 16px;padding:0;display:flex;justify-content:center;gap:8px;list-style:none;counter-reset:steps}.empty-preview li{max-width:112px;padding:10px 8px;border-radius:12px;background:#fffdf9c2;color:#59534b;font-size:11px;line-height:1.4}.empty-preview li:before{counter-increment:steps;content:counter(steps);width:20px;height:20px;margin:0 auto 6px;display:grid;place-items:center;border-radius:50%;background:#34312d;color:#fff;font-size:10px}.empty-preview>p:last-child{margin:0;color:#6f685f;font-size:12px}.sample-book-stack{position:relative;width:142px;height:174px;margin:0 auto 22px}.sample-book-back{position:absolute;top:10px;right:-12px;bottom:-8px;left:18px;border-radius:5px 13px 13px 5px;background:#c8b8a3;box-shadow:0 14px 28px #312a2229;transform:rotate(6deg)}.sample-book-cover{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;display:block;border:6px solid #fbf5e9;border-radius:4px 12px 12px 4px;background:#fffaf0;box-shadow:0 15px 36px #2d27203d;transform:rotate(-3deg)}.sample-book-cover img{width:100%;height:112px;display:block;object-fit:cover}.sample-book-cover i{position:absolute;top:7px;right:7px;padding:3px 5px;border-radius:4px;background:#23201cb8;color:#fff;font-size:7px;font-style:normal}.sample-book-cover b{padding:14px 8px 0;display:block;color:#38322c;font-family:Nanum Pen Script,cursive;font-size:24px;font-weight:400}.book-page{position:relative;width:420px;height:596px;overflow:hidden;background:var(--paper);color:#282520;font-family:var(--book-font-family, "Nanum Gothic", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);box-shadow:0 22px 54px #2a241d38,0 2px 6px #2a241d1f;isolation:isolate}.book-drawing-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9;width:100%;height:100%;overflow:visible;pointer-events:none}.book-drawing-layer.is-drawing-active{z-index:11;cursor:crosshair;pointer-events:auto;touch-action:none}.book-drawing-layer path{fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.book-page>footer{position:absolute;right:30px;bottom:19px;left:30px;display:flex;justify-content:space-between;color:#3f393294;font-size:8px;letter-spacing:.08em}.handwriting{margin:0;font-family:Nanum Pen Script,cursive;font-size:24px;font-weight:400;line-height:1}.book-page--cover{padding:34px 34px 30px;display:flex;flex-direction:column}.cover-photo-wrap{position:relative;height:330px;flex:0 0 auto}.cover-photo-wrap .photo-block{height:100%;min-height:0}.cover-photo-empty{height:100%;display:grid;place-items:center;border:1px dashed rgba(77,68,58,.35);background:#ffffff47;color:#72695f;text-align:center;font-size:12px;line-height:1.6}.cover-copy{position:relative;padding:24px 5px 0}.book-kicker{margin:0 0 8px;color:#6f675d;font-size:8px;font-weight:700;letter-spacing:.19em}.cover-copy .handwriting{margin-bottom:5px;color:#a05245}.book-page--cover h2{max-width:340px;margin:0;font-size:29px;font-weight:650;line-height:1.22;letter-spacing:-.045em;word-break:keep-all}.page-layout{height:100%;padding:40px 38px 54px;display:flex;flex-direction:column}.page-photos{display:grid;grid-template-columns:1fr;gap:8px;min-height:0}.page-layout--single .page-photos{height:354px}.page-layout--pair .page-photos{height:322px;grid-template-columns:repeat(2,minmax(0,1fr))}.page-layout--text{justify-content:center;padding-inline:58px}.page-layout--text .story-copy{position:relative;padding:38px 0 28px;border-top:1px solid rgba(75,67,57,.22);border-bottom:1px solid rgba(75,67,57,.22)}.story-copy{min-height:0;padding-top:18px}.story-copy .handwriting{margin-bottom:2px;color:#a05245}.page-meta{margin:0 0 10px;color:#6d655b;font-size:9px;letter-spacing:.06em}.page-copy{max-height:118px;margin:0;overflow:auto;color:#302c27;font-size:13px;line-height:1.76;white-space:pre-wrap;overflow-wrap:anywhere}.page-layout--text .page-copy{max-height:288px;font-size:15px;line-height:1.85}.long-copy-note{margin-top:7px;display:block;color:#985449;font-size:8px}.photo-block{position:relative;min-height:270px;margin:0;overflow:hidden;background:#c9c1b7}.photo-block img{width:100%;height:100%;display:block;object-fit:cover}.photo-block figcaption{position:absolute;right:8px;bottom:8px;padding:5px 7px;border-radius:5px;background:#1d1b18ad;color:#fff;font-size:8px;letter-spacing:.05em}.photo-block figcaption span{margin-right:5px;color:#f4cbbb}.photo-block--compact{min-height:150px}.book-page--paper .cover-photo-wrap{margin:0 8px;padding:10px 10px 24px;background:#fffdf8;box-shadow:0 4px 15px #362d231f;transform:rotate(-1deg)}.book-page--paper .cover-photo-wrap:after{content:"2026 · OUR STORY";position:absolute;right:14px;bottom:8px;color:#776e63;font-size:7px;letter-spacing:.12em}.book-page--paper .cover-photo-wrap .photo-block{height:296px}.book-page--paper .page-photos{padding:9px 9px 24px;background:#fffdf8;box-shadow:0 3px 13px #362d231c;transform:rotate(-.5deg)}.book-page--paper .page-layout--single .page-photos{height:360px}.book-page--paper .page-layout--pair .page-photos{height:328px}.book-page--ink{background:#22282a;color:#f6f0e6}.book-page--ink>footer{color:#f6f0e685}.book-page--ink .cover-photo-wrap{height:376px;margin:-34px -34px 0}.book-page--ink .cover-copy{padding:24px 2px 0}.book-page--ink .book-kicker,.book-page--ink .page-meta{color:#b9b4a9}.book-page--ink .cover-copy .handwriting,.book-page--ink .story-copy .handwriting{color:#e4b790}.book-page--ink .page-copy{color:#f6f0e6}.book-page--ink .page-layout{padding:0 0 54px}.book-page--ink .page-photos{height:392px}.book-page--ink .story-copy{padding:18px 38px 0}.book-page--ink .page-layout--text{padding:48px 54px 58px}.book-page--ink .page-layout--text .story-copy{padding:45px 0;border-color:#fff3}.book-page--summer{background:#f1f3e8}.book-page--summer .cover-photo-wrap{height:350px;overflow:hidden;border-radius:170px 170px 18px 18px}.book-page--summer .cover-copy{padding-top:18px;text-align:center}.book-page--summer .cover-copy .handwriting,.book-page--summer .story-copy .handwriting{color:#527b79}.book-page--summer h2{margin-inline:auto}.book-page--summer .page-photos{overflow:hidden;border-radius:150px 150px 16px 16px}.book-page--archive{background:#f4ede2}.book-page--archive:before{content:"";position:absolute;top:0;bottom:0;left:24px;width:2px;background:#a5674f}.book-page--archive .cover-photo-wrap{height:308px;margin-left:12px}.book-page--archive .cover-copy{margin-left:12px;padding-top:32px}.book-page--archive .cover-copy:before{content:"01";position:absolute;top:28px;right:3px;color:#714c3b40;font-size:55px;font-weight:800}.book-page--archive .story-copy .handwriting,.book-page--archive .cover-copy .handwriting{color:#9a5e48}.book-page--archive .page-meta{padding-bottom:8px;border-bottom:1px solid rgba(113,76,59,.25)}.book-page--closing{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:17px;text-align:center}.book-page--closing .closing-star{color:var(--accent);font-size:20px}.book-page--closing .handwriting{color:#a05245}.book-page--closing p{margin:0;font-size:19px;line-height:1.75;letter-spacing:-.025em}.book-page--closing strong{font-size:8px;letter-spacing:.23em}.spread-grid{flex:1;min-height:0;padding:24px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:22px}.spread-item{min-height:220px;border:0;background:transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:8px}.spread-item .book-page{transform:scale(.34);transform-origin:top left;margin-right:-277.2px;margin-bottom:-393.36px}.spread-item>span{color:#625c54;font-size:12px}.edit-heading{margin-bottom:20px}.edit-panel-close,.edit-panel-toggle{display:none}.edit-section{margin:0 -18px;padding:18px;border-top:1px solid var(--line)}.edit-section .title-field{padding:0}.field-help{margin:10px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.starter-note{color:#4f4a43}.starter-note strong{font-size:14px}.starter-note p{margin:8px 0 0;color:#625c53;font-size:12px;line-height:1.6}.section-label{min-height:44px;display:flex;justify-content:space-between;align-items:center;color:#5d5750;font-size:12px;font-weight:700}.section-label button{width:44px;height:44px;border:0;border-radius:10px;background:transparent;display:grid;place-items:center;cursor:pointer}.cover-photo-label{margin-top:14px}.layout-options{margin-top:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.layout-options button{min-height:88px;padding:8px 4px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#6d665e;font-size:10px;cursor:pointer}.layout-options button.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:#8c493f;background:#fff8f4}.layout-options button:disabled{opacity:.45;cursor:not-allowed}.layout-icon{width:36px;height:27px;display:block;border:1px solid #9e968b;border-radius:3px;background:linear-gradient(#c7b7a2 0,#c7b7a2 65%,#f4efe7 65%)}.layout-icon--pair{background:linear-gradient(90deg,#b9aa96 0 48%,transparent 48% 52%,#b9aa96 52% 100%)}.layout-icon--text{background:repeating-linear-gradient(#aaa397 0 1px,transparent 1px 6px)}.theme-options{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme-options button{min-width:0;min-height:122px;padding:9px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;cursor:pointer}.theme-options button.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.theme-options strong{font-size:11px}.theme-options small{color:var(--muted);font-size:9px;line-height:1.35}.theme-swatch{position:relative;width:100%;height:48px;overflow:hidden;display:block;border:1px solid rgba(57,52,45,.12);border-radius:7px;background:#f5ecdf}.theme-swatch:before{content:"";position:absolute;top:7px;right:34%;bottom:7px;left:7px;background:linear-gradient(145deg,#98acb4,#d4b09c)}.theme-swatch:after{content:"";position:absolute;right:7px;bottom:10px;width:25%;height:3px;box-shadow:0 -8px #b8afa3,0 8px #b8afa3;background:#756f67}.theme-swatch--ink{background:#272d2f}.theme-swatch--ink:before{top:0;right:38%;bottom:0;left:0;background:linear-gradient(145deg,#75919d,#9b705e)}.theme-swatch--ink:after{background:#ece4d7;box-shadow:0 -8px #b5afa5,0 8px #b5afa5}.theme-swatch--summer{background:#edf3e9}.theme-swatch--summer:before{border-radius:20px 20px 4px 4px;background:linear-gradient(145deg,#93b7bc,#e0b99e)}.theme-swatch--archive{background:linear-gradient(90deg,#9a654f 0,#9a654f 4px,#f1eadf 4px)}.theme-swatch--archive:before{top:7px;right:42%;bottom:7px;left:12px;background:linear-gradient(145deg,#a79582,#647e8a)}.theme-swatch--editorial{background:#fffbeb}.theme-swatch--editorial:before{top:6px;right:30%;bottom:16px;left:6px;background:linear-gradient(145deg,#a8916f,#6b5b47)}.theme-swatch--editorial:after{right:6px;bottom:6px;width:60%;height:2px;background:#92400e;box-shadow:0 -5px #c9b998,0 5px #c9b998}.font-section .section-label{align-items:center}.font-picker-toggle{min-width:132px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.font-picker-toggle span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-options{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.font-options button{min-width:0;min-height:66px;padding:9px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.font-options button.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:#fff8f4}.font-options strong{font-size:14px;font-weight:500}.font-options small{color:var(--muted);font-size:9px;line-height:1.3}.source-card{margin-top:8px;padding:13px;border-radius:12px;background:#f2ede5}.source-card summary{min-height:44px;display:flex;align-items:center;gap:6px;color:#5f594f;font-size:11px;cursor:pointer}.source-card summary::-webkit-details-marker{display:none}.source-card span{color:#7d766c;font-size:10px}.source-card p{margin:8px 0;font-size:12px;line-height:1.55}.book-text-field{display:flex;flex-direction:column;gap:8px;color:#5d5850;font-size:12px;font-weight:700}.book-text-field textarea{width:100%;min-height:148px;padding:12px;border:1px solid var(--line);border-radius:11px;resize:vertical;outline:none;background:#fff;color:var(--ink);font-size:16px;font-weight:400;line-height:1.55}.photo-options{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo-options button{min-width:0;min-height:118px;padding:6px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.photo-options button.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.photo-options .photo-block{height:78px;min-height:78px}.photo-options .photo-block figcaption{right:4px;bottom:4px;padding:3px 4px;font-size:6px}.photo-options button>span:last-child{margin-top:7px;display:block;color:#5f594f;font-size:10px}.quality-card{margin-top:18px;padding:15px;border:1px solid #d4c7b6;border-radius:14px;background:#eee5d8}.quality-card span{margin-bottom:5px;display:block;color:#945248;font-size:10px;font-weight:700;letter-spacing:.06em}.quality-card strong{font-size:13px}.quality-card p{margin:8px 0 0;color:#6e675e;font-size:11px;line-height:1.55}.studio-toast{position:fixed;left:50%;bottom:24px;z-index:40;max-width:min(90vw,520px);padding:13px 18px;transform:translate(-50%);border-radius:12px;background:#302d29;color:#fff;box-shadow:0 8px 30px #00000038;font-size:13px}.studio-shell--preview .record-panel,.studio-shell--preview .edit-panel{display:none}.studio-shell--preview .studio-workspace{grid-template-columns:1fr}@media(max-width:1180px){.studio-workspace{grid-template-columns:316px minmax(360px,1fr) 250px}.studio-header{padding-inline:16px}.selection-start{align-items:stretch;flex-direction:column}.selection-start button{width:100%}}@media(max-width:900px){.studio-header{grid-template-columns:1fr auto}.studio-steps{display:none}.studio-workspace{grid-template-columns:minmax(304px,39%) minmax(0,1fr)}.edit-panel,.studio-shell--edit-open .record-panel{display:none}.studio-shell--edit-open .studio-workspace{grid-template-columns:minmax(0,1fr) 280px}.studio-shell--edit-open .edit-panel{display:block;position:relative}.studio-shell--edit-open .edit-heading{padding-right:48px}.edit-panel-close{position:absolute;top:12px;right:12px;z-index:1;width:44px;height:44px;border:1px solid var(--line);border-radius:11px;place-items:center;background:#fff;font-size:24px;cursor:pointer}.studio-shell--edit-open .edit-panel-close{display:grid}.edit-panel-toggle{position:absolute;right:16px;bottom:16px;z-index:10;min-height:44px;padding:0 14px;border:1px solid #2f2c27;border-radius:12px;align-items:center;gap:7px;background:#2f2c27;color:#fff;box-shadow:0 8px 24px #28241e33;cursor:pointer}.preview-stage .edit-panel-toggle{display:inline-flex}.studio-shell--edit-open .edit-panel-toggle{display:none}.privacy-strip{justify-content:flex-start}.page-canvas{padding:22px}}@media(max-width:680px){.studio-header{height:auto;min-height:68px;padding:10px 12px}.brand-lockup span,.button--quiet{display:none}.undo-button{width:44px;padding-inline:0;display:inline-flex;justify-content:center}.undo-button>span{display:none}.undo-count{position:absolute;transform:translate(14px,-14px)}.privacy-strip{min-height:52px;padding-inline:14px}.studio-workspace{height:auto;min-height:calc(100vh - 120px);display:block}.record-panel{min-height:calc(100vh - 120px);border-right:0}.preview-stage,.studio-shell--preview .record-panel{display:none}.studio-shell--preview .preview-stage{min-height:calc(100vh - 120px);display:flex}.edit-panel{position:fixed;top:124px;right:12px;bottom:12px;z-index:35;width:min(360px,calc(100vw - 24px));border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 60px #28241e47}.studio-shell--edit-open .edit-panel{display:block;position:fixed}.studio-shell--edit-open .studio-workspace{display:block}.studio-shell--edit-open .record-panel{display:flex}.studio-shell--preview.studio-shell--edit-open .record-panel{display:none}.page-canvas{min-height:680px;padding:22px 10px}.preview-toolbar{position:sticky;top:68px;z-index:5}.header-actions .button{min-height:44px;padding-inline:12px}.empty-preview{padding-inline:18px}.empty-preview ol{flex-direction:column;align-items:center}.empty-preview li{width:220px;max-width:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.book-page--date{display:grid;place-items:center}.date-page-copy{padding:0 34px;text-align:center}.date-page-copy .book-kicker{margin-bottom:14px}.date-page-copy .handwriting{display:block;margin-bottom:6px;color:#a05245}.date-page-copy h2{margin:0;font-size:30px;font-weight:600;letter-spacing:-.03em}.date-page-copy i{display:block;width:46px;height:1px;margin:20px auto 0;background:#3f393257}.book-page--ink .date-page-copy .handwriting{color:#e4b790}.book-page--summer .date-page-copy .handwriting{color:#527b79}.book-page--archive .date-page-copy{margin-left:14px}.book-page--archive .date-page-copy .handwriting{color:#9a5e48}.letter-page-layout{height:100%;padding:46px 42px 56px;display:flex;flex-direction:column;gap:11px}.letter-date{margin:0;color:#6d655b;font-size:9px;letter-spacing:.07em}.letter-page-layout .handwriting{color:#a05245}.letter-copy{flex:1;min-height:0;margin:6px 0 0;padding:16px 0 0;overflow:hidden;border-top:1px solid rgba(75,67,57,.2);color:#302c27;font-size:14px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere}.letter-page-layout .photo-block{flex:0 0 auto;height:168px;min-height:168px}.letter-page-layout strong{flex:0 0 auto;color:#6f675d;font-size:8px;font-weight:700;letter-spacing:.2em;text-align:right}.book-page--ink .letter-copy{color:#f6f0e6;border-color:#fff3}.book-page--ink .letter-page-layout .handwriting{color:#e4b790}.book-page--ink .letter-date,.book-page--ink .letter-page-layout strong{color:#b9b4a9}.book-page--summer .letter-page-layout .handwriting{color:#527b79}.book-page--summer .letter-page-layout .photo-block{overflow:hidden;border-radius:84px 84px 12px 12px}.book-page--archive .letter-page-layout{margin-left:12px}.book-page--archive .letter-page-layout .handwriting{color:#9a5e48}.photo-focus-control{margin-top:12px;display:flex;flex-direction:column;gap:5px;color:#5d5750;font-size:11px;font-weight:700}.book-page--editorial{background:#fffbeb;color:#292524;font-family:var(--book-font-family, "Gowun Batang", Georgia, serif)}.book-page--editorial>footer{right:26px;left:26px;bottom:16px;color:#8a7f6a;font-size:7px;letter-spacing:.14em}.book-page--editorial .handwriting{font-family:Gowun Batang,Georgia,serif;font-size:13px;font-style:italic;letter-spacing:.01em}.book-page--editorial .book-kicker,.book-page--editorial .page-meta{color:#78716c;font-size:8px;letter-spacing:.22em}.book-page--editorial.book-page--cover{padding:0}.book-page--editorial .cover-photo-wrap{height:384px;margin:0}.book-page--editorial .cover-photo-wrap .photo-block{height:100%}.book-page--editorial .cover-copy{padding:26px 26px 0}.book-page--editorial .cover-copy .handwriting{margin-bottom:10px;color:#92400e}.book-page--editorial.book-page--cover h2{max-width:none;font-size:27px;font-weight:700;line-height:1.3;letter-spacing:-.02em}.book-page--editorial.book-page--date .date-page-copy{padding:0 30px}.book-page--editorial .date-page-copy .handwriting{color:#92400e}.book-page--editorial .date-page-copy h2{font-size:34px;font-weight:400;letter-spacing:-.01em}.book-page--editorial .date-page-copy i{width:64px;margin-top:24px;background:#92400e}.book-page--editorial .page-layout{padding:0 0 44px}.book-page--editorial .page-photos{gap:3px}.book-page--editorial .page-layout--single .page-photos{height:404px}.book-page--editorial .page-layout--pair .page-photos{height:336px}.book-page--editorial .story-copy{padding:20px 26px 0}.book-page--editorial .story-copy .handwriting{color:#92400e}.book-page--editorial .page-copy{font-size:13px;line-height:1.85}.book-page--editorial .page-layout--text{justify-content:center;padding:44px 34px 54px}.book-page--editorial .page-layout--text .story-copy{padding:0}.book-page--editorial .page-layout--text .page-copy{max-height:none;padding:22px 0;border-top:1px solid rgba(41,37,36,.18);border-bottom:1px solid rgba(41,37,36,.18);font-size:15px;line-height:2}.book-page--editorial .letter-page-layout{padding:40px 34px 50px}.book-page--editorial .letter-copy{border-color:#2925242e;font-size:14px;line-height:2.05}.book-page--editorial .letter-page-layout .handwriting{color:#92400e}.book-page--editorial .letter-page-layout strong{color:#8a7f6a}.book-page--editorial.book-page--closing .handwriting{color:#92400e}.book-page--editorial.book-page--closing p{font-size:18px;font-weight:400;line-height:1.85}.book-page--editorial .closing-star{color:#92400e}.photo-focus-control input{width:100%;min-height:44px;accent-color:var(--accent)}.photo-focus-control small{color:var(--muted);font-size:9px;font-weight:400}.layout-options--four{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-icon--letter{background:repeating-linear-gradient(#aaa397 0 1px,transparent 1px 5px),linear-gradient(#f4efe7,#f4efe7);background-size:100% 60%,100% 100%;background-repeat:no-repeat}.empty-demo-button{min-height:44px;margin:4px 0 14px;padding:0 18px;border:1px solid #2f2c28;border-radius:12px;background:#2f2c28;color:#fff;font-size:13px;font-weight:700;cursor:pointer}.print-book{display:none}@media print{@page{size:148mm 210mm;margin:0}body{background:#fff}.studio-header,.privacy-strip,.studio-workspace,.studio-toast{display:none!important}.print-book{display:block}.print-page-shell{width:148mm;height:210mm;overflow:hidden;break-after:page;page-break-after:always}.print-page-shell:last-child{break-after:auto;page-break-after:auto}.print-page-shell>.book-page{box-shadow:none;transform-origin:top left;transform:scale(1.3318)}.photo-block figcaption{background:#1d1b18bd}}
