:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;width:100vw;height:100vh;overflow:hidden}#root{width:100%;height:100%}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.dashboard{font-family:Georgia,serif;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;height:100vh;width:100vw;overflow:hidden;position:fixed;inset:0}.main-layout{display:flex;height:100vh;width:100vw;overflow:hidden}.hero{flex:0 0 65%;text-align:center;padding:20px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start}.right-panel{flex:0 0 40%;display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:5px 20px 5px 5px;gap:5px}.chronicles-section{flex:0 0 44vh;max-height:44vh;position:relative}.chronicles-section .daily-posts{overflow-y:auto;flex:1;min-height:0;max-height:calc(44vh - 100px)}.chronicles-section::-webkit-scrollbar,.wishes-section::-webkit-scrollbar{width:8px}.chronicles-section::-webkit-scrollbar-track,.wishes-section::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.chronicles-section::-webkit-scrollbar-thumb,.wishes-section::-webkit-scrollbar-thumb{background:#667eea99;border-radius:10px}.chronicles-section::-webkit-scrollbar-thumb:hover,.wishes-section::-webkit-scrollbar-thumb:hover{background:#667eeacc}.wishes-section{flex:0 0 48vh;max-height:48vh;position:relative;overflow:hidden}.edit-icon{position:fixed;top:20px;right:20px;background:#fff3;border:2px solid rgba(255,255,255,.4);color:#fff;font-size:2em;width:60px;height:60px;border-radius:50%;cursor:pointer;z-index:1000;transition:all .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.edit-icon:hover{background:#ffffff4d;transform:rotate(90deg) scale(1.1)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;overflow-y:auto;padding:20px}.modal-content{background:#fff;padding:40px;border-radius:15px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;color:#333;box-shadow:0 10px 50px #00000080}.modal-content h2{color:#667eea;margin-bottom:25px;text-align:center}.notification{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:15px 30px;border-radius:8px;font-weight:700;z-index:3000;animation:slideDown .3s ease-out;box-shadow:0 4px 15px #0000004d}.notification.success{background:#4caf50;color:#fff}.notification.error{background:#f44336;color:#fff}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.hero{text-align:center;padding:40px 20px;position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.hero:before{content:"🎉";position:absolute;font-size:120px;opacity:.1;top:-30px;right:-30px;animation:float 6s ease-in-out infinite}.hero:after{content:"🎈";position:absolute;font-size:100px;opacity:.1;bottom:-20px;left:-20px;animation:float 8s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.hero h1{font-size:3em;margin-bottom:5px;margin-top:0;text-shadow:3px 3px 6px rgba(0,0,0,.3);animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{text-shadow:3px 3px 6px rgba(0,0,0,.3),0 0 20px rgba(255,255,255,.3)}to{text-shadow:3px 3px 6px rgba(0,0,0,.3),0 0 40px rgba(255,255,255,.6)}}.subtitle{font-size:1.6em;font-style:italic;margin-bottom:15px;opacity:.95}.countdown-container{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:25px;margin:0 auto 15px;max-width:700px;box-shadow:0 8px 32px #0003;border:2px solid rgba(255,255,255,.2)}.countdown{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.time-unit{text-align:center;min-width:100px}.time-value{font-size:3em;font-weight:700;display:block;line-height:1;text-shadow:2px 2px 4px rgba(0,0,0,.3);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-10px)}}.scroll-indicator{display:none}.scroll-indicator.visible{display:block;position:fixed;bottom:20px;left:50%;font-size:2.5em;animation:bounce 2s ease-in-out infinite;opacity:.8;z-index:100;transition:opacity .3s}.time-label{font-size:1.1em;text-transform:uppercase;letter-spacing:2px;margin-top:5px;opacity:.9}.dramatic-text{font-size:1.2em;margin-top:15px;font-style:italic;opacity:.9}.birthday-boy-section{margin:0 auto;text-align:center}.birthday-boy-image{width:300px;height:300px;border-radius:50%;object-fit:cover;border:8px solid rgba(255,255,255,.9);box-shadow:0 15px 50px #0006;margin-bottom:15px}.birthday-boy-caption{font-size:2.2em;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3);margin-bottom:10px}.birthday-boy-subcaption{font-size:1.5em;font-style:italic;opacity:.95}.section{background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;padding:12px;margin-right:150px;color:#333;box-shadow:0 4px 20px #0003;display:flex;flex-direction:column;height:100%;overflow:visible}.section h2{color:#667eea;font-size:1.2em;margin-bottom:8px;text-align:center;position:relative;padding-bottom:8px;flex-shrink:0}.section h2:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:2px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px}.daily-posts{display:grid;gap:8px;overflow-y:auto;flex:1;padding-right:5px;min-height:0}.daily-posts::-webkit-scrollbar,.comments-section::-webkit-scrollbar{width:6px}.daily-posts::-webkit-scrollbar-track,.comments-section::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.daily-posts::-webkit-scrollbar-thumb,.comments-section::-webkit-scrollbar-thumb{background:#667eea80;border-radius:10px}.daily-posts::-webkit-scrollbar-thumb:hover,.comments-section::-webkit-scrollbar-thumb:hover{background:#667eeab3}.post{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:6px;padding:10px;border-left:3px solid #667eea;position:relative}.delete-post-btn{position:absolute;top:5px;right:5px;background:#ff00001a;border:1px solid rgba(255,0,0,.3);color:#d32f2f;font-size:.9em;width:24px;height:24px;border-radius:50%;cursor:pointer;transition:all .2s;padding:0}.delete-post-btn:hover{background:#f003;transform:scale(1.1)}.post-date{font-weight:700;color:#667eea;font-size:.85em;margin-bottom:5px}.post-content{line-height:1.4;margin-bottom:5px;font-size:.8em}.post-image{width:100%;max-width:200px;border-radius:5px;margin-top:5px;box-shadow:0 2px 10px #0003}.add-post-form{background:#faf8f8cc;padding:8px;border-radius:6px;margin-top:5px;flex-shrink:0}.add-post-form h3{margin-bottom:6px;color:#333;font-size:.9em}.form-group{margin-bottom:6px}.form-group label{display:block;margin-bottom:3px;font-weight:700;color:#555;font-size:.75em}.form-group input,.form-group textarea{width:100%;padding:6px;border:2px solid #ddd;border-radius:4px;font-size:.8em;font-family:inherit;background:#f5f5f5;color:#333}.form-group textarea{min-height:45px;resize:vertical}button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:6px 15px;font-size:.85em;border-radius:4px;cursor:pointer;transition:transform .2s,box-shadow .2s;font-weight:700}button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.comments-section{overflow-y:auto;flex:1;padding-right:5px;min-height:0}.comment{background:#f8f9fae6;padding:8px;border-radius:5px;margin-bottom:6px;border-left:3px solid #764ba2;position:relative}.comment-author{font-weight:700;color:#764ba2;margin-bottom:3px;font-size:.8em}.comment-text{color:#555;line-height:1.4;font-size:.75em}.comment-date{font-size:.7em;color:#999;margin-top:3px}.emoji-decoration{font-size:1em;margin:0 5px}.wishes-intro{text-align:center;margin-bottom:8px;font-style:italic;color:#666;font-size:.75em;flex-shrink:0}.wishes-section .comments-section{overflow-y:auto;flex:1;padding-right:5px;min-height:0;max-height:calc(40vh - 100px)}.wishes-section .sticky-add-btn{position:absolute;bottom:12px;left:12px;right:27px;width:auto;margin-top:0;z-index:20}.sticky-add-btn{position:sticky;bottom:0;width:100%;padding:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9em;font-weight:700;cursor:pointer;box-shadow:0 2px 10px #0003;transition:transform .2s,box-shadow .2s;flex-shrink:0;margin-top:8px;z-index:10}.sticky-add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}@media(max-width:768px){.dashboard{overflow-y:auto;position:relative}.main-layout{flex-direction:column;height:auto;min-height:100vh;overflow:visible}.hero{flex:none;width:100%;min-height:auto;padding:15px 10px;overflow:visible}.right-panel{flex:none;width:calc(100% - 30px);max-width:600px;margin:0 auto;height:auto;padding:10px 15px;gap:10px;overflow:visible}.chronicles-section,.wishes-section{flex:none;max-height:none;height:auto;overflow:visible}.chronicles-section .daily-posts,.wishes-section .comments-section{max-height:none;overflow:visible}.wishes-section .sticky-add-btn{position:relative;bottom:auto;left:auto;right:auto;width:100%}.hero h1{font-size:1.8em}.subtitle{font-size:1.1em;margin-bottom:10px}.countdown-container{padding:15px;margin-bottom:10px}.countdown{gap:10px}.time-unit{min-width:70px}.time-value{font-size:2em}.time-label{font-size:.8em}.dramatic-text{font-size:.9em;margin-top:10px}.birthday-boy-image{width:200px;height:200px;border:6px solid rgba(255,255,255,.9)}.birthday-boy-caption{font-size:1.5em}.birthday-boy-subcaption{font-size:1.1em}.section{margin-right:0;padding:10px;margin-bottom:10px}.section h2{font-size:1em}.edit-icon{width:50px;height:50px;font-size:1.5em;top:10px;right:10px}.hero:before{font-size:80px}.hero:after{font-size:60px}}@media(max-width:480px){.hero h1{font-size:1.5em}.subtitle{font-size:1em}.countdown-container{padding:10px}.time-unit{min-width:60px}.time-value{font-size:1.5em}.time-label{font-size:.7em}.birthday-boy-image{width:150px;height:150px}.birthday-boy-caption{font-size:1.3em}.birthday-boy-subcaption{font-size:1em}}
