@charset "UTF-8";:root{--c-bg: #FAF7F2;--c-bg-subtle: #F4EFEB;--c-surface: #FFFFFF;--c-surface-glass: rgba(255, 255, 255, .82);--c-primary: #D47A83;--c-primary-hover: #BF656E;--c-primary-light: #FDF0F2;--c-accent: #E0A96D;--c-accent-light: #FCF5EC;--c-sage: #889C86;--c-sage-light: #F0F4EF;--c-text-main: #2A2421;--c-text-muted: #7A6F68;--c-text-light: #A49B95;--c-border: #E8DFD5;--c-border-light: #F0E9E1;--c-danger: #D9534F;--c-danger-light: #FDF2F2;--c-success: #5CB85C;--c-success-light: #F0F9F0;--c-warning: #F0AD4E;--c-warning-light: #FEF9F0;--font-serif: "Playfair Display", Georgia, serif;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-sm: 0 2px 8px rgba(42, 36, 33, .04);--shadow-md: 0 8px 24px rgba(42, 36, 33, .07);--shadow-lg: 0 16px 40px rgba(42, 36, 33, .11);--shadow-xl: 0 24px 60px rgba(42, 36, 33, .15);--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-full: 9999px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-sans);background-color:var(--c-bg);color:var(--c-text-main);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}h1,h2,h3,.font-serif{font-family:var(--font-serif);font-weight:600;line-height:1.25}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease}input,textarea,select{font-family:inherit;font-size:.95rem;border-radius:var(--radius-sm);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text-main);padding:10px 14px;outline:none;transition:border-color .2s,box-shadow .2s;width:100%}input:focus,textarea:focus,select:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px #d47a832e}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;font-weight:500;font-size:.95rem;border-radius:var(--radius-full);transition:all .25s ease}.btn.btn-primary{background:linear-gradient(135deg,var(--c-primary) 0%,#C35B65 100%);color:#fff;box-shadow:0 4px 14px #d47a8359}.btn.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #d47a8373}.btn.btn-primary:active{transform:translateY(0)}.btn.btn-secondary{background:var(--c-surface);color:var(--c-text-main);border:1px solid var(--c-border)}.btn.btn-secondary:hover{background:var(--c-bg-subtle);border-color:var(--c-text-muted)}.btn.btn-accent{background:linear-gradient(135deg,var(--c-accent) 0%,#D49B5D 100%);color:#fff;box-shadow:0 4px 14px #e0a96d59}.btn.btn-accent:hover{transform:translateY(-1px)}.btn.btn-danger{background:var(--c-danger-light);color:var(--c-danger);border:1px solid rgba(217,83,79,.2)}.btn.btn-danger:hover{background:var(--c-danger);color:#fff}.btn.btn-sm{padding:6px 14px;font-size:.85rem}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge.badge-pending{background:var(--c-warning-light);color:#b26a00;border:1px solid rgba(240,173,78,.3)}.badge.badge-approved{background:var(--c-success-light);color:#2d7a2d;border:1px solid rgba(92,184,92,.3)}.badge.badge-rejected{background:var(--c-danger-light);color:var(--c-danger);border:1px solid rgba(217,83,79,.3)}.badge.badge-admin{background:var(--c-primary-light);color:var(--c-primary);border:1px solid rgba(212,122,131,.3)}.glass-card{background:var(--c-surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.anti-save-overlay{position:absolute;inset:0;background:transparent;z-index:5;cursor:pointer;-webkit-user-select:none;user-select:none}.parallax-container{overflow-x:hidden;perspective:1000px;transform-style:preserve-3d}.gpu-accelerated{transform:translateZ(0);will-change:transform;backface-visibility:hidden}@keyframes floatSoft{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes sparkleTwinkle{0%,to{transform:scale(1) rotate(0);opacity:.85;filter:drop-shadow(0 0 2px rgba(224,169,109,.4))}50%{transform:scale(1.22) rotate(15deg);opacity:1;filter:drop-shadow(0 0 8px rgba(224,169,109,.9))}}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1)}42%{transform:scale(1.14)}70%{transform:scale(1)}}@keyframes bottleWiggle{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-10deg) scale(1.05)}75%{transform:rotate(10deg) scale(1.05)}}@keyframes moonSway{0%,to{transform:rotate(-5deg) translateY(0);filter:drop-shadow(0 0 4px rgba(224,169,109,.3))}50%{transform:rotate(6deg) translateY(-6px);filter:drop-shadow(0 0 10px rgba(224,169,109,.6))}}@keyframes starPulse{0%,to{transform:scale(.92);opacity:.7}50%{transform:scale(1.15);opacity:1;filter:drop-shadow(0 0 6px rgba(253,226,179,.8))}}@keyframes balanceTilt{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@keyframes calPulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes cameraPop{0%,to{transform:scale(1)}50%{transform:scale(1.16) rotate(-4deg)}}@keyframes envelopeFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(4deg)}}@keyframes storyPulseRing{0%{transform:scale(.95);box-shadow:0 0 #d47a83b3}70%{transform:scale(1.15);box-shadow:0 0 0 8px #d47a8300}to{transform:scale(.95);box-shadow:0 0 #d47a8300}}@keyframes slideNextBounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-6px)}}.anim-sparkle{display:inline-block;animation:sparkleTwinkle 2.6s ease-in-out infinite;transform-origin:center}.anim-heartbeat{display:inline-block;animation:heartbeat 2.2s ease-in-out infinite;transform-origin:center}.anim-bottle{display:inline-block;animation:bottleWiggle 3.5s ease-in-out infinite;transform-origin:bottom center}.anim-moon{display:inline-block;animation:moonSway 4.5s ease-in-out infinite;transform-origin:center}.anim-star{display:inline-block;animation:starPulse 2.8s ease-in-out infinite;transform-origin:center}.anim-balance{display:inline-block;animation:balanceTilt 3.2s ease-in-out infinite;transform-origin:center}.anim-cal{display:inline-block;animation:calPulse 2.5s ease-in-out infinite;transform-origin:center}.anim-camera{display:inline-block;animation:cameraPop 3s ease-in-out infinite;transform-origin:center}.anim-envelope{display:inline-block;animation:envelopeFloat 3s ease-in-out infinite;transform-origin:center}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
