.app{min-height:100vh;background-color:transparent}.navbar{display:flex;justify-content:space-between;align-items:center;background-color:#fee2bb;padding:1.2rem 1rem;font-family:Rubik,sans-serif}.navbar-left h1{margin:0;font-size:2.2rem}.navbar-right{display:flex;align-items:center;gap:1rem}.user-box{background-color:#493000;color:#fff;padding:.8rem 1.5rem;border-radius:8px;font-weight:400;font-size:18px}.logout-icon{color:#000;font-size:2rem;cursor:pointer;transition:transform .2s}.home-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center}.home-container h1{margin-bottom:0}.home-container p{font-size:20px;font-style:italic}.home-buttons{display:flex;gap:1.5rem}.all-journals-page{max-width:1400px;margin:0 auto;padding:2rem;position:relative}.search-create-row{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.search-create-row .btn-filled{padding:.75rem 1.25rem;flex:0 0 auto;width:auto;white-space:nowrap}.search-container{position:relative;max-width:800px;width:100%}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;font-size:20px;pointer-events:none}.search-container input[type=text]{width:100%;padding:.875rem 1.25rem .875rem 2.75rem;font-size:1rem;border:2px solid #e5e7eb;border-radius:12px;outline:none;transition:all .2s ease;background-color:#fff}.search-container input[type=text]:focus{border-color:#493000;box-shadow:0 0 0 3px #4930001a}.search-container input[type=text]::placeholder{color:#9ca3af}.search-create-row .btn-filled{white-space:nowrap;display:flex;align-items:center;gap:.5rem}.filters{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1.5rem;background-color:#f9fafb;border-radius:12px;margin-bottom:2rem;border:1px solid #e5e7eb}.filters-label{font-weight:600;color:#374151;font-size:.95rem;letter-spacing:.025em}.filter-group{display:flex;align-items:center;gap:.75rem}.filter-group label{font-weight:500;color:#4b5563;font-size:.9rem;white-space:nowrap}.filter-group input[type=month],.filter-group select{padding:.625rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9rem;outline:none;background-color:#fff;cursor:pointer;transition:all .2s ease;min-width:150px}.filter-group input[type=month]:focus,.filter-group select:focus{border-color:#493000;box-shadow:0 0 0 3px #4930001a}.filter-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25rem;padding-right:2.5rem}.filter-group.tags{display:flex;flex-wrap:wrap;gap:.5rem}.filter-group.tags button{padding:.5rem 1rem;border:2px solid #e5e7eb;border-radius:20px;background-color:#fff;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none}.filter-group.tags button:hover{border-color:#493000;color:#493000;transform:translateY(-1px)}.filter-group.tags button.selected{background-color:#493000;border-color:#493000;color:#fff}.journal-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-top:2rem}.journal-card{background-color:#fff;border-radius:20px;overflow:hidden;box-shadow:0 2px 12px #00000014;transition:all .3s ease;cursor:pointer;border:1px solid #e5e7eb;position:relative}.journal-card:hover{transform:translateY(-6px);box-shadow:0 12px 28px #00000026}.journal-cover{width:100%;aspect-ratio:3 / 4;position:relative;overflow:hidden;background-color:#f3f4f6}.journal-cover img{width:100%;height:100%;object-fit:cover;display:block}.journal-cover .color-cover{width:100%;height:100%}.menu-container{position:absolute;top:.75rem;right:.75rem;z-index:10}.menu-button{width:32px;height:32px;border-radius:50%;background-color:#fffffff2;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.menu-button:hover{background-color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #00000026}.menu-button i{color:#1f2937;font-size:1rem}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;border:1px solid #e5e7eb;min-width:140px;overflow:hidden;z-index:20}.dropdown-menu button{width:100%;padding:.75rem 1rem;border:none;background:none;text-align:left;cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:#374151;font-weight:500}.dropdown-menu button:hover{background-color:#f9fafb}.dropdown-menu button.delete-option{color:#ef4444}.dropdown-menu button.delete-option:hover{background-color:#fef2f2}.dropdown-menu button i{font-size:.85rem;width:16px}.journal-info{padding:1.25rem}.journal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;gap:.75rem}.journal-header h2{margin:0;color:#1f2937;font-size:1.125rem;font-weight:600;flex:1;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.add-page-button{background:none;border:none;cursor:pointer;transition:all .2s ease;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.add-page-button i{font-size:1.75rem;color:#493000}.add-page-button:hover i{color:#000;transform:scale(1.15)}.add-page-button:active i{transform:scale(.95)}.journal-description{margin:0 0 .75rem;color:#6b7280;font-size:.9rem;line-height:1.5;font-style:italic;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.journal-meta{display:flex;align-items:center;margin-top:.75rem}.journal-meta .page-count{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:#9ca3af;font-weight:500}.journal-meta i{font-size:.8rem}.empty-state{text-align:center;padding:4rem 2rem;max-width:500px;margin:2rem auto}.empty-state i{font-size:4rem;color:#d1d5db;margin-bottom:1rem}.empty-state h3{color:#374151;margin:0 0 .5rem;font-size:1.5rem}.empty-state p{color:#6b7280;margin:0 0 1.5rem;line-height:1.6}.loading-container{text-align:center;padding:4rem 2rem}.spinner{width:50px;height:50px;margin:0 auto 1rem;border:4px solid #e5e7eb;border-top-color:#493000;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:#6b7280;font-size:1rem}@media(max-width:1024px){.journal-cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(max-width:768px){.all-journals-page{padding:1rem}.page-title{font-size:2rem}.search-create-row{flex-direction:column;gap:1rem}.search-container{width:100%}.search-create-row{width:100%;justify-content:center}.btn-filled{max-width:fit-content}.filters{flex-direction:column;align-items:flex-start}.filter-group{width:100%}.filter-group input[type=month],.filter-group select{flex:1;min-width:0}.journal-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem}}@media(max-width:480px){.journal-cards{grid-template-columns:1fr}.add-page-button i{font-size:1.5rem}}*{box-sizing:border-box}button,input,select{font-family:inherit}.journal-description-subtitle{font-style:italic;color:#6b7280;margin-top:-1rem;margin-bottom:1.5rem;text-align:center;font-size:.95rem}.create-journal-page{max-width:1200px;margin:0 auto;padding:2rem;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.create-journal-page h1{text-align:center;color:#1f2937;margin:3rem 0 2.5rem;font-weight:700;font-size:50px}.create-journal-container{display:grid;grid-template-columns:400px 1fr;gap:3rem;margin-top:2rem}.cover-preview-section{display:flex;flex-direction:column;gap:1.5rem}.cover-preview{width:100%;aspect-ratio:4/5;border-radius:16px;overflow:hidden;box-shadow:0 10px 40px #00000026;background:#fff;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.cover-preview:hover{transform:translateY(-4px);box-shadow:0 15px 50px #0003}.cover-image{width:100%;height:100%;object-fit:cover;display:block}.color-cover{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb}.blank-cover-text{color:#9ca3af;font-size:1.25rem;font-weight:500;text-align:center}.upload-section{margin-bottom:.5rem}.upload-label{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:10px;color:#6b7280;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.95rem}.upload-label:hover{background-color:#f3f4f6;border-color:#493000;color:#493000}.upload-label i{font-size:1rem}.color-options{text-align:center}.color-options-label{font-size:.95rem;font-weight:600;color:#4b5563;margin-bottom:1rem}.color-circles{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.color-circle{width:50px;height:50px;border-radius:50%;cursor:pointer;transition:all .3s ease;border:3px solid transparent;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 12px #0000001a}.color-circle:hover{transform:scale(1.15);box-shadow:0 6px 20px #0003}.color-circle.selected{border-color:#1f2937;box-shadow:0 0 0 4px #8b5cf633;transform:scale(1.1)}.color-circle i{font-size:1.2rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.color-circle:focus{outline:none;box-shadow:0 0 0 4px #8b5cf64d}.journal-form{display:flex;flex-direction:column;gap:1.5rem;background-color:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014;border:1px solid #e5e7eb}.form-group{display:flex;flex-direction:column;gap:.5rem;position:relative}.form-group label{font-weight:600;color:#374151;font-size:.95rem}.form-group input[type=text],.form-group textarea{padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;outline:none;transition:all .2s ease;background-color:#fff;font-family:inherit}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:#493000;box-shadow:0 0 0 3px #8b5cf61a}.form-group input[type=text]::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{resize:vertical;min-height:100px}.char-count{font-size:.8rem;color:#9ca3af;text-align:right;margin-top:-.25rem}.form-actions{display:flex;gap:1rem;margin-top:1rem}.btn-outline,.btn-filled{flex:1;padding:.875rem 1.5rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.btn-outline{background-color:transparent;border:2px solid #e5e7eb;color:#6b7280}.btn-outline:hover{border-color:#493000;color:#493000;background-color:#f9fafb}.btn-filled:active,.btn-outline:active{transform:translateY(0)}.btn-filled:disabled{background:#d1d5db;cursor:not-allowed;box-shadow:none}@media(max-width:1024px){.create-journal-container{grid-template-columns:350px 1fr;gap:2rem}}@media(max-width:768px){.create-journal-page{padding:1rem}.back-button{position:static;margin-bottom:1rem}.create-journal-page h1{margin:1rem 0 1.5rem;font-size:1.75rem}.create-journal-container{grid-template-columns:1fr;gap:2rem}.cover-preview-section{max-width:400px;margin:0 auto}.form-actions{flex-direction:column-reverse}.btn-outline,.btn-filled{width:100%}}@media(max-width:480px){.create-journal-page h1{font-size:1.5rem}.cover-preview{max-width:300px;margin:0 auto}.color-circle{width:45px;height:45px}.journal-form{padding:1.5rem}}.journal-form.loading{opacity:.6;pointer-events:none}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.journal-form.success{animation:successPulse .5s ease}.form-group.error input,.form-group.error textarea{border-color:#ef4444}.form-group .error-message{color:#ef4444;font-size:.85rem;margin-top:.25rem}.color-circle:focus-visible{outline:3px solid #493000;outline-offset:2px}button:focus-visible{outline:3px solid #493000;outline-offset:2px}.page-layout-container{min-height:calc(100vh - 80px);padding:2rem;background-color:#fff5e7}.page-layout-header{text-align:center;margin-bottom:2rem}.page-layout-title{font-size:2.5rem;font-weight:700;color:#3d2817;margin:0;font-family:Arial Rounded MT Bold,Arial,sans-serif}.page-layout-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1400px;margin:0 auto}.page-layout-preview{display:flex;align-items:flex-start;justify-content:center}.page-preview-container{width:100%;max-width:600px;background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:2rem;min-height:600px;display:flex;align-items:center;justify-content:center}.page-layout-form{display:flex;align-items:flex-start;justify-content:center}.page-form-container{width:100%;max-width:500px}.page-form-field{margin-bottom:1.5rem}.page-form-label{display:block;font-size:1rem;font-weight:600;color:#3d2817;margin-bottom:.5rem}.page-form-input{width:100%;padding:.75rem;border:1px solid #e0d9c7;border-radius:8px;font-size:1rem;font-family:inherit;background-color:#fff;color:#3d2817;box-sizing:border-box}.page-form-input:focus{outline:none;border-color:#3d2817;box-shadow:0 0 0 2px #3d28171a}.page-form-textarea{width:100%;padding:.75rem;border:1px solid #e0d9c7;border-radius:8px;font-size:1rem;font-family:inherit;background-color:#fff;color:#3d2817;resize:vertical;min-height:100px;box-sizing:border-box}.page-form-textarea:focus{outline:none;border-color:#3d2817;box-shadow:0 0 0 2px #3d28171a}.page-layout-footer{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:2rem;max-width:1400px;margin-left:auto;margin-right:auto}.page-footer-btn{padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border:none}.page-footer-btn.back{background-color:#fff5e7;color:#3d2817;border:1px solid #3d2817}.page-footer-btn.back:hover{background-color:#f7f4ef}.page-footer-btn.primary{background-color:#3d2817;color:#fff}.page-footer-btn.primary:hover{background-color:#2d1f12}@media(max-width:1024px){.page-layout-content{grid-template-columns:1fr;gap:2rem}.page-layout-preview,.page-layout-form{justify-content:center}.page-preview-container,.page-form-container{max-width:100%}}@media(max-width:768px){.page-layout-container{padding:1rem}.page-layout-title{font-size:2rem}.page-layout-footer{flex-direction:column;gap:1rem}.page-footer-btn{width:100%}}.page-preview-loading,.page-preview-empty{text-align:center;padding:2rem;color:#666}.page-preview-canvas{position:relative;overflow:hidden;border-radius:8px}.page-preview-prompt{padding:.75rem 1rem;background-color:#ffffffe6;border-radius:8px;margin:.5rem;font-size:.9rem;color:#3d2817;font-family:Roboto,sans-serif}.page-preview-spotify{margin:.5rem;border-radius:8px;overflow:hidden}.page-preview-image,.page-preview-doodle,.page-preview-sticker{pointer-events:none;-webkit-user-select:none;user-select:none}.page-preview-text{pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:Roboto,sans-serif}.page-form-readonly{padding:.75rem;border:1px solid #e0d9c7;border-radius:8px;font-size:1rem;background-color:#f7f4ef;color:#3d2817;min-height:2.5rem;white-space:pre-wrap;word-wrap:break-word;font-family:Roboto,sans-serif}.tags-input-container{font-family:Roboto,sans-serif;display:flex;flex-direction:column;gap:.75rem}.tags-display{display:flex;flex-wrap:wrap;gap:.5rem;min-height:2.5rem;padding:.5rem;border:1px solid #e0d9c7;border-radius:8px;background-color:#fff;align-items:flex-start}.tag-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:linear-gradient(135deg,#fff5e7,#f7f4ef);border:1.5px solid #d4c5a9;border-radius:20px;font-size:.875rem;color:#3d2817;font-weight:500;box-shadow:0 2px 4px #3d28171a;transition:all .2s ease}.tag-chip:hover{background:linear-gradient(135deg,#f7f4ef,#e8e0d3);box-shadow:0 3px 6px #3d281726;transform:translateY(-1px)}.tag-remove{background:none;border:none;color:#8b6f47;font-size:1.2rem;line-height:1;cursor:pointer;padding:0;margin-left:.25rem;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.tag-remove:hover{background-color:#d4c5a9;color:#3d2817}.tags-input{width:100%;padding:.75rem;border:1px solid #e0d9c7;border-radius:8px;font-size:1rem;font-family:inherit;background-color:#fff;color:#3d2817;box-sizing:border-box}.tags-input:focus{outline:none;border-color:#3d2817;box-shadow:0 0 0 2px #3d28171a}.tags-input::placeholder{color:#999}.tags-display-readonly{display:flex;flex-wrap:wrap;gap:.5rem;min-height:2.5rem;padding:.5rem;border:1px solid #e0d9c7;border-radius:8px;background-color:#f7f4ef}.tag-chip-readonly{display:inline-block;padding:.5rem .875rem;background:linear-gradient(135deg,#fff5e7,#f7f4ef);border:1.5px solid #d4c5a9;border-radius:20px;font-size:.875rem;color:#3d2817;font-weight:500;box-shadow:0 2px 4px #3d28171a}.no-tags{color:#999;font-style:italic}.page-form-prompt-display{padding:.75rem 1rem;background-color:#f7f4ef;border:1px solid #d4c5a9;border-radius:8px;font-size:.95rem;color:#3d2817;line-height:1.5;font-style:italic;font-family:Roboto,sans-serif}.page-form-spotify-display{border-radius:8px;overflow:hidden;border:1px solid #e0d9c7;font-family:Roboto,sans-serif}.page-save-success-overlay{position:fixed;inset:0;background-color:#3d281799;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-save-success-message{background:linear-gradient(135deg,#fff5e7,#f7f4ef);border:2px solid #d4c5a9;border-radius:16px;padding:2.5rem 3rem;text-align:center;box-shadow:0 8px 24px #3d28174d;max-width:400px;animation:slideUp .4s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.page-save-success-message .success-icon{width:64px;height:64px;background:linear-gradient(135deg,#8b6f47,#6b5433);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:2rem;color:#fff5e7;font-weight:700;box-shadow:0 4px 12px #8b6f4766;animation:scaleIn .5s ease .2s both}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.page-save-success-message h3{margin:0 0 .75rem;font-size:1.5rem;color:#3d2817;font-weight:600}.page-save-success-message p{margin:0;font-size:1rem;color:#6b5433;line-height:1.5}.add-page-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#fff5e7;min-height:100vh;display:flex;flex-direction:column}.main-container{display:grid;grid-template-columns:250px 1fr 80px;flex:1;gap:0;height:calc(100vh - 120px)}.editor-sidebar{background-color:#fff;padding:2rem 1.5rem;overflow-y:auto;border-right:1px solid #e0d9c7}.editor-section{margin-bottom:2rem}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.section-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .2s}.section-header.clickable:hover{opacity:.7}.star-icon{font-size:1rem}.section-title{font-size:1rem;font-weight:500;color:#333;margin:0;flex:1}.chevron-icon{font-size:.8rem;color:#666;transition:transform .3s ease;margin-left:auto}.chevron-icon.rotated{transform:rotate(180deg)}.section-content{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;padding:0}.section-content.expanded{max-height:1000px;padding:1rem 0}.section-content.collapsed{max-height:0;padding:0}.page-background-swatches{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.page-background-swatch{width:40px;height:40px;border-radius:8px;border:2px solid #e0d9c7;cursor:pointer;padding:0;background:transparent;display:flex;align-items:center;justify-content:center;transition:all .2s;position:relative;overflow:hidden}.page-background-swatch:hover{transform:scale(1.1);border-color:#3d2817}.page-background-swatch.selected{border-width:3px;border-color:#3d2817;box-shadow:0 0 0 2px #3d281733}.background-swatch-image{width:100%;height:100%;object-fit:cover;display:block}.stickers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;padding:.5rem 0}.sticker-item{aspect-ratio:1;border:2px solid #e0d9c7;border-radius:6px;background-color:#fafafa;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:.25rem;overflow:hidden}.sticker-item:hover{border-color:#3d2817;transform:scale(1.05);box-shadow:0 2px 4px #0000001a}.sticker-item .sticker-emoji{font-size:1.5rem}.sticker-item .sticker-image{width:100%;height:100%;object-fit:contain;display:block}.canvas-sticker{position:absolute;cursor:move;-webkit-user-select:none;user-select:none;z-index:10;transition:transform .1s ease;padding:5px;min-width:50px;min-height:50px;display:flex;align-items:center;justify-content:center}.canvas-sticker:hover{transform:scale(1.05);background-color:#3d28170d;border-radius:8px}.canvas-sticker.dragging{transform:scale(1.1);opacity:.9;z-index:100;background-color:#3d28171a;border-radius:8px}.canvas-sticker-emoji{pointer-events:none;display:block}.canvas-sticker-image{pointer-events:none;display:block;-webkit-user-select:none;user-select:none}.doodle-controls{display:flex;flex-direction:column;gap:1rem}.doodle-btn{background-color:#3d2817;color:#fff;border:none;padding:.75rem 1rem;border-radius:6px;font-size:.9rem;cursor:pointer;transition:background-color .2s;width:100%}.doodle-btn:hover{background-color:#2d1f12}.doodle-options{display:flex;flex-direction:column;gap:1rem}.doodle-color-picker{width:100%;height:40px;border:2px solid #e0d9c7;border-radius:6px;cursor:pointer}.doodle-brush-slider{width:100%;height:6px;border-radius:3px;background:#e0d9c7;outline:none;-webkit-appearance:none;appearance:none}.doodle-brush-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#3d2817;cursor:pointer}.doodle-brush-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#3d2817;cursor:pointer;border:none}.brush-size-value{font-size:.9rem;color:#666;text-align:center}.button-group{flex-direction:row;gap:.5rem}.button-group .doodle-btn{flex:1}.doodle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:8;touch-action:none}.doodle-canvas.active{pointer-events:all;cursor:crosshair}.page-canvas:has(.doodle-canvas.active) .canvas-sticker,.page-canvas:has(.doodle-canvas.active) .canvas-text,.page-canvas:has(.doodle-canvas.active) .canvas-image{pointer-events:none}.text-controls{display:flex;flex-direction:column;gap:1rem}.text-input{width:100%;padding:.5rem;border:2px solid #e0d9c7;border-radius:6px;font-size:.9rem;font-family:inherit;resize:vertical}.text-input:focus{outline:none;border-color:#3d2817}.text-size-slider{width:100%;height:6px;border-radius:3px;background:#e0d9c7;outline:none;-webkit-appearance:none;appearance:none}.text-size-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#3d2817;cursor:pointer}.text-size-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#3d2817;cursor:pointer;border:none}.text-size-value{font-size:.9rem;color:#666;text-align:center}.text-color-picker{width:100%;height:40px;border:2px solid #e0d9c7;border-radius:6px;cursor:pointer}.text-btn{background-color:#3d2817;color:#fff;border:none;padding:.75rem 1rem;border-radius:6px;font-size:.9rem;cursor:pointer;transition:background-color .2s;width:100%}.text-btn:hover{background-color:#2d1f12}.canvas-text{position:absolute;cursor:move;-webkit-user-select:none;user-select:none;z-index:15;padding:.5rem;border:2px dashed transparent;border-radius:4px;min-width:50px;min-height:30px;display:inline-flex;align-items:center;justify-content:center;transition:transform .1s ease,border-color .2s ease,background-color .2s ease}.canvas-text:hover{border-color:#3d2817;transform:scale(1.02);background-color:#3d28170d}.canvas-text.dragging{transform:scale(1.05);opacity:.9;border-color:#3d2817;background-color:#3d28171a;z-index:100}.canvas-text-content{pointer-events:none;white-space:nowrap;display:block}.upload-controls{display:flex;flex-direction:column;gap:1rem}.upload-area{border:2px dashed #e0d9c7;border-radius:8px;padding:2rem 1rem;text-align:center;cursor:pointer;transition:all .2s;background-color:#fafafa}.upload-area:hover{border-color:#3d2817;background-color:#f5f5f5}.upload-area.drag-over{border-color:#3d2817;background-color:#f0f0f0;border-style:solid}.upload-icon{font-size:2.5rem;margin-bottom:.5rem}.upload-text{font-size:.9rem;color:#333;margin:.25rem 0;font-weight:500}.upload-hint{font-size:.75rem;color:#666;margin:.25rem 0 0}.canvas-image{position:absolute;cursor:move;-webkit-user-select:none;user-select:none;z-index:5;border:2px dashed transparent;border-radius:4px;transition:transform .1s ease,border-color .2s ease,background-color .2s ease;padding:5px;background-color:transparent}.canvas-image:hover{border-color:#3d2817;transform:scale(1.02);background-color:#3d28170d}.canvas-image.dragging{transform:scale(1.05);opacity:.9;border-color:#3d2817;background-color:#3d28171a;z-index:100}.canvas-image-img{width:100%;height:100%;object-fit:contain;border-radius:4px;pointer-events:none;display:block}.page-section{background-color:#fff5e7;padding:2rem;display:flex;flex-direction:column;align-items:center;overflow-y:auto}.page-title{font-family:Caprasimo,cursive;font-size:2.5rem;font-weight:700;color:#3d2817;margin-bottom:2rem}.page-alert{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem;text-align:center;width:100%;max-width:800px}.page-alert.error{background-color:#fee;color:#c00;border:1px solid #fcc}.page-alert.success{background-color:#efe;color:#060;border:1px solid #cfc;text-align:center}.page-canvas{background-color:#fff;width:100%;max-width:800px;min-height:600px;box-shadow:0 2px 8px #0000001a;border-radius:4px;position:relative;padding:2rem}.action-buttons{background-color:transparent;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;border-left:1px solid #e0d9c7;min-width:80px}.action-btn{width:50px;height:50px;border-radius:50%;border:2px solid #3d2817;background-color:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0;position:relative}.action-btn:hover{background-color:#3d28171a;transform:scale(1.1);border-color:#2d1f12}.action-btn:active{transform:scale(.95)}.action-icon{font-size:1.5rem;display:block;line-height:1}.add-page-footer{background-color:#fff5e7;padding:1.5rem 2rem;display:flex;justify-content:flex-end;border-top:1px solid #e0d9c7}.next-btn{background-color:#3d2817;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.next-btn:hover{background-color:#2d1f12}.prompt-banner{width:100%;max-width:800px;background-color:#fff;border:2px solid #3d2817;border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 12px #00000014}.prompt-banner-label{display:block;font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.prompt-banner-text{font-size:1.1rem;color:#3d2817;margin:0;font-weight:500;line-height:1.5}.spotify-banner{width:100%;max-width:800px;background-color:#f7f4ef;border:2px solid #3d2817;border-radius:12px;padding:1rem;margin-bottom:1.5rem;box-shadow:0 4px 12px #00000014}.spotify-banner-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.spotify-banner-label{font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.spotify-banner .spotify-remove-btn{background:transparent;border:1px solid #3d2817;color:#3d2817;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;cursor:pointer;transition:all .2s}.spotify-banner .spotify-remove-btn:hover{background-color:#3d2817;color:#fff}.prompt-modal-overlay{position:fixed;inset:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:999}.prompt-modal{background-color:#fff;border-radius:16px;padding:2rem;max-width:420px;width:100%;box-shadow:0 8px 30px #0003;position:relative;text-align:center}.prompt-close-btn{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:#3d2817;line-height:1;padding:.25rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.prompt-close-btn:hover{background-color:#3d28171a}.prompt-modal h3{font-size:1.5rem;color:#3d2817;margin:0 0 1rem}.prompt-text{font-size:1.1rem;color:#3d2817;margin:1rem 0 1.5rem;font-weight:500;line-height:1.6;min-height:3rem}.prompt-actions{display:flex;flex-direction:column;gap:.75rem}.prompt-action-btn{background-color:#3d2817;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.prompt-action-btn.secondary{background-color:transparent;color:#3d2817;border:2px solid #3d2817}.prompt-action-btn:hover{background-color:#2d1f12}.prompt-action-btn.secondary:hover{background-color:#3d28170d}.spotify-modal-overlay{position:fixed;inset:0;background-color:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:999}.spotify-modal{background-color:#fff;border-radius:16px;padding:2rem;max-width:500px;width:100%;box-shadow:0 8px 30px #0003;position:relative}.spotify-close-btn{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:#3d2817;line-height:1;padding:.25rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.spotify-close-btn:hover{background-color:#3d28171a}.spotify-modal h3{font-size:1.5rem;color:#3d2817;margin:0 0 1.5rem}.spotify-input-label{display:block;font-size:.875rem;font-weight:600;color:#3d2817;margin-bottom:.5rem}.spotify-input{width:100%;padding:.75rem;border:2px solid #e0d9c7;border-radius:8px;font-size:1rem;margin-bottom:1rem;box-sizing:border-box}.spotify-input:focus{outline:none;border-color:#3d2817}.spotify-error{color:#b3261e;font-size:.875rem;margin:-.75rem 0 1rem}.spotify-preview-area{margin:1.5rem 0;min-height:152px;display:flex;align-items:center;justify-content:center;background-color:#f7f4ef;border-radius:8px;padding:1rem}.spotify-preview-placeholder{color:#666;font-size:.9rem;text-align:center;margin:0}.spotify-modal-actions{display:flex;gap:.75rem;margin-top:1.5rem}.spotify-save-btn{flex:1;background-color:#3d2817;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.spotify-save-btn:hover{background-color:#2d1f12}.spotify-remove-btn.secondary{flex:1;background-color:transparent;color:#3d2817;border:2px solid #3d2817;padding:.75rem 1.25rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.spotify-remove-btn.secondary:hover{background-color:#3d28170d}@media(max-width:1024px){.main-container{grid-template-columns:200px 1fr 60px}}@media(max-width:768px){.main-container{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.editor-sidebar{border-right:none;border-bottom:1px solid #e0d9c7}.action-buttons{border-left:none;border-top:1px solid #e0d9c7;flex-direction:row;justify-content:center;padding:1rem;gap:1rem}.action-btn{width:45px;height:45px}.action-icon{font-size:1.25rem}}body{font-family:Roboto,sans-serif;margin:0;padding:0;background-color:#fff5e7;color:#000}h1,h2,h3,h4,h5,h6{font-family:Caprasimo,cursive;font-weight:400;font-style:normal;color:#000}h1{font-size:100px}h2{font-size:60px;text-align:center}.btn-filled,.btn-stroke{padding:.75rem 3rem;font-size:1.2rem;font-weight:600;border-radius:10px;cursor:pointer;transition:.3s ease}.btn-filled{background-color:#493000;color:#fff;border:2px solid #493000}.btn-filled:hover{background-color:#0a0600;border-color:#0a0600}.btn-stroke{background-color:transparent;color:#493000;border:3px solid #493000}.btn-stroke:hover{background-color:#0a0600;color:#fff;border-color:#0a0600}.back-button{position:absolute;top:2rem;left:2rem;font-size:1.5rem;color:#6b7280;cursor:pointer;transition:all .2s ease;padding:.5rem;border-radius:8px}.back-button:hover{color:#493000;transform:translate(-4px)}
