*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#6c5ce7;--secondary-color:#fd79a8;--accent-color:#00cec9;--background-color:#f8f9fa;--card-bg:#fff;--text-color:#2d3436;--text-light:#636e72;--border-radius:16px;--box-shadow:0 10px 30px rgba(0,0,0,.1);--gradient-1:linear-gradient(135deg,#a29bfe,#6c5ce7);--gradient-2:linear-gradient(135deg,#ff9a9e,#fad0c4);--gradient-3:linear-gradient(135deg,#81ecec,#00cec9);--gradient-4:linear-gradient(135deg,#fab1a0,#e17055);--gradient-5:linear-gradient(135deg,#55efc4,#00b894)}html{font-size:16px;scroll-behavior:smooth}body{font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-color);line-height:1.6;background-color:var(--background-color);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%23a29bfe' fill-opacity='0.1'%3E%3Cpath opacity='.5' d='M96 95h4v1h-4v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4h-9v4h-1v-4H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15v-9H0v-1h15V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h9V0h1v15h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9h4v1h-4v9zm-1 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm9-10v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-10 0v-9h-9v9h9zm-9-10h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9zm10 0h9v-9h-9v9z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:.5em}.app-container{max-width:1200px;margin:0 auto;padding:2rem}.app-header{text-align:center;margin-bottom:3rem;position:relative}.title-container{position:relative;display:inline-block;padding:1rem 2rem;background:var(--gradient-1);border-radius:var(--border-radius);box-shadow:var(--box-shadow);transform:rotate(-1deg)}.main-title{font-size:2.5rem;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.2);letter-spacing:1px;margin:0}.subtitle{font-size:1.2rem;color:hsla(0,0%,100%,.9);margin-top:.5rem}.emoji{display:inline-block;animation:bounce 2s infinite;margin:0 .5rem}.main-content{display:flex;flex-direction:column;gap:3rem}.birthday-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:2rem;gap:2rem}.birthday-item{position:relative;transition:transform .3s ease,box-shadow .3s ease}.birthday-item:hover{transform:translateY(-10px);z-index:10}.next-birthday{grid-column:1/-1;transform:scale(1.05);z-index:5}.next-birthday:hover{transform:scale(1.08) translateY(-10px)}.birthday-card{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--box-shadow);overflow:hidden;transition:all .3s ease;height:100%}.birthday-header{padding:1.5rem;background:var(--gradient-2);color:#fff;text-align:center}.birthday-title{font-size:1.5rem;margin:0}.birthday-content{padding:1.5rem}.countdown-circles{display:flex;justify-content:space-around;margin-bottom:1.5rem}.countdown-circle{width:80px;height:80px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 10px rgba(0,0,0,.1);position:relative;overflow:hidden;transition:transform .3s ease}.countdown-circle:hover{transform:scale(1.1)}.days-circle{background:var(--gradient-3)}.hours-circle{background:var(--gradient-2)}.minutes-circle{background:var(--gradient-4)}.countdown-value{font-size:1.8rem;font-weight:700;line-height:1}.countdown-label{font-size:.7rem;text-transform:uppercase;letter-spacing:1px;opacity:.9}.stats-container{display:flex;flex-direction:column;gap:1rem}.stat-box{background-color:hsla(0,0%,100%,.8);border-radius:var(--border-radius);padding:1rem;box-shadow:0 4px 6px rgba(0,0,0,.05);position:relative;overflow:hidden}.stat-box h3{color:var(--primary-color);display:flex;align-items:center}.stat-box h3,.stat-value{font-size:1.1rem;margin-bottom:.5rem}.stat-value{font-weight:600}.seconds-lived,.seconds-until{font-size:.9rem;color:var(--text-light);font-style:italic}.age-emoji{font-size:2rem;position:absolute;right:1rem;top:1rem;opacity:.7}.progress-container{height:8px;background-color:#e9ecef;border-radius:4px;margin-top:.5rem;overflow:hidden}.progress-bar{height:100%;border-radius:4px;transition:width .3s ease}.fun-fact-box,.progress-bar{background:var(--gradient-1)}.fun-fact-box{color:#fff;padding:1rem;border-radius:var(--border-radius);margin-top:.5rem}.fun-fact-box h3{color:#fff}.birthday-today{text-align:center;padding:2rem;position:relative;overflow:hidden}.confetti-animation{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle,#fd79a8 10%,transparent 0),radial-gradient(circle,#ffeaa7 15%,transparent 0),radial-gradient(circle,#55efc4 10%,transparent 0),radial-gradient(circle,#a29bfe 15%,transparent 0);background-size:30px 30px;background-position:0 0,15px 15px,20px 10px,5px 25px;animation:confetti-fall 10s linear infinite;opacity:.5;z-index:-1}.birthday-message{font-size:1.2rem;margin-top:1rem;color:var(--text-color)}.add-birthday-section{background:var(--card-bg);border-radius:var(--border-radius);padding:2rem;box-shadow:var(--box-shadow);margin-top:2rem}.section-title{text-align:center;color:var(--primary-color);margin-bottom:1.5rem;font-size:1.8rem}.add-birthday-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:600;color:var(--text-color)}.form-group input,.form-group select{padding:.8rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .3s;background-color:#fff}.form-group input:focus,.form-group select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px rgba(108,92,231,.2)}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236c5ce7' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.add-button{grid-column:1/-1;background:var(--gradient-1);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .3s,box-shadow .3s;margin-top:1rem}.add-button:hover{transform:translateY(-3px);box-shadow:0 5px 15px rgba(108,92,231,.4)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes confetti-fall{0%{background-position:0 0,15px 15px,20px 10px,5px 25px}to{background-position:0 100px,15px 115px,20px 110px,5px 125px}}@media (max-width:768px){.app-container{padding:1rem}.main-title{font-size:1.8rem}.birthday-grid{grid-template-columns:1fr}.countdown-circles{flex-wrap:wrap;justify-content:center;gap:1rem}.add-birthday-form{grid-template-columns:1fr}}