:root{--giftbox-pop-duration:0.7s;--giftbox-hover-duration:0.35s;--giftbox-shake-duration:0.6s;--button-hover-scale:1.05;--giftbox-hover-scale:1.12;--giftbox-pop-scale-up:1.18;--giftbox-pop-scale-down:0.92;--day-content-box-width:720px;--day-content-box-min-height:500px;--calendar-day-width:50px;--calendar-day-height:50px}body{align-items:center;background:linear-gradient(135deg,#f3e8ff,#b3e5fc);color:#555;display:flex;font-family:Comic Sans MS,cursive,sans-serif;height:100vh;justify-content:center}body,html{margin:0;padding:0}body,html{box-sizing:border-box;height:100%;overflow:hidden}.day-page,.login-container,.main-screen{padding:20px;text-align:center}.day-page,.main-screen{margin:0;padding:0;position:relative}.calendar{background-color:#b3e5fc;border-radius:15px;box-shadow:0 4px 8px #0000001a;display:flex;flex-direction:column;gap:15px;margin-top:30px;padding:20px}.calendar-row{gap:10px}.calendar-row,.day{display:flex;justify-content:center}.day{align-items:center;background-color:#fff;border:2px solid #81d4fa;border-radius:10px;color:#555;cursor:pointer;font-size:18px;font-weight:700;height:50px;height:var(--calendar-day-height);padding:0;transition:transform .2s,background-color .2s;width:50px;width:var(--calendar-day-width)}.day:hover{background-color:#e1f5fe;transform:scale(1.1)}.day.locked{background-color:#f0f0f0;border:2px dashed #ccc;color:#aaa;cursor:not-allowed}.last-row .day{background-color:#ffeb3b;border:2px solid #b8860b;color:#b8860b;font-size:24px;font-weight:700;height:auto;padding:20px;transition:transform .2s,background-color .2s;width:auto}.last-row .day:hover{background-color:#ffe082;transform:scale(1.2)}.back-button{background-color:#0288d1;border:none;border-radius:20px;color:#fff;cursor:pointer;font-family:Quicksand,sans-serif;font-size:14px;font-weight:700;left:10px;margin:0;padding:10px 20px;position:fixed;top:10px;transition:background-color .2s,transform .2s;z-index:1000}.back-button:hover{background-color:#01579b;transform:scale(1.05)}.logout-button{background-color:#0288d1;border:none;border-radius:20px;color:#fff;cursor:pointer;font-family:Quicksand,sans-serif;font-size:14px;font-weight:700;margin:0;padding:10px 20px;position:fixed;right:10px;top:10px;transition:background-color .2s,transform .2s;z-index:1000}.back-button:hover,.logout-button:hover{background-color:#01579b;transform:scale(1.05)}.login-container{align-items:center;background-color:#b3e5fc;border-radius:15px;box-shadow:0 4px 8px #0000001a;box-sizing:border-box;display:flex;flex-direction:column;height:450px;justify-content:center;max-width:400px;padding:40px;text-align:center;width:100%}.login-container p{color:#ff4d4d;font-family:Quicksand,sans-serif;font-size:14px;font-weight:700;margin:0;padding:5px 0}.login-container h1{font-size:28px;margin-bottom:20px}.login-container h1,.login-container input{color:#0288d1;font-family:Quicksand,sans-serif}.login-container input{border:2px solid #81d4fa;border-radius:10px;display:block;font-size:16px;margin:10px auto;padding:10px;width:80%}.login-container input:focus{border-color:#0288d1;box-shadow:0 0 5px #0288d1;outline:none}.login-container button{background-color:#0288d1;border:none;border-radius:20px;color:#fff;cursor:pointer;font-family:Quicksand,sans-serif;font-size:16px;font-weight:700;padding:10px 20px;transition:background-color .2s}.login-container button:hover{background-color:#01579b}.login-container a{color:#0288d1;font-family:Quicksand,sans-serif;font-size:14px;text-decoration:none}.login-container a:hover{text-decoration:underline}.login-container p:last-child{color:#555;font-family:Quicksand,sans-serif;font-size:14px;margin-top:20px}.day-page{align-items:center;background:#b3eaff1a;border-radius:22px;box-shadow:0 4px 24px #b3eaff33;display:flex;flex-direction:column;margin:40px auto;max-width:900px;padding:36px 0 48px}.day-page h1{color:#4fc3f7;font-size:32px;margin-bottom:20px}.day-page p{color:#555;font-size:18px}input::placeholder{color:#4fc3f7;font-family:Quicksand,sans-serif;font-size:16px}.countdown-title{color:#0288d1;font-size:20px;font-weight:700;margin-bottom:10px}.countdown{display:flex;gap:10px;justify-content:center}.countdown,.countdown-part{color:#0288d1;font-size:36px;font-weight:700}@keyframes fadeIn{0%{opacity:.5;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fadeIn{animation:fadeIn .5s ease-in-out}[data-tooltip]{position:relative}[data-tooltip]:hover:after{background:#ffe066;border-radius:8px;box-shadow:0 2px 8px #243e631a;color:#8d5524;content:attr(data-tooltip);font-family:Quicksand,sans-serif;font-size:1rem;font-style:italic;font-weight:400;left:50%;padding:4px 12px;pointer-events:none;position:absolute;top:-12px;transform:translate(-50%,-100%);transition:opacity .15s;white-space:nowrap;z-index:4000}[data-tooltip]:after{opacity:0;pointer-events:none;transition:opacity .15s}[data-tooltip]:hover:after{opacity:1}.milestone[data-tooltip]:hover:after{z-index:4100}.access-denied{align-items:center;display:flex;height:100vh;justify-content:center}.access-denied h1{color:#ff4d4d;font-family:Quicksand,sans-serif;font-size:36px;font-weight:700;margin:0;text-align:center}.day-page img.day-image{box-shadow:0 4px 8px #0000001a}.day-page img.day-image,.day-page video.day-video{border-radius:10px;height:auto;margin:20px 0;max-width:100%}.day-page video.day-video{border:4px solid #4fc3f7;box-shadow:0 6px 12px #0003}.success-tooltip{animation:fadeInOut 3s ease-in-out;background-color:#4caf50;border-radius:5px;box-shadow:0 4px 8px #0003;color:#fff;font-size:16px;font-weight:700;left:50%;padding:10px 20px;position:absolute;top:10px;transform:translateX(-50%)}@keyframes fadeInOut{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}10%{opacity:1;transform:translateX(-50%) translateY(0)}90%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) translateY(-10px)}}.save-message{color:#4caf50;font-size:14px;margin-top:10px;text-align:center}.save-button,.save-message{font-family:Quicksand,sans-serif}.save-button{background-color:#0288d1;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:20px;padding:10px 20px;transition:background-color .3s,transform .2s}.save-button:hover{background-color:#01579b;transform:scale(1.05)}.save-button:disabled{background-color:#b0bec5;cursor:not-allowed}.save-message-tooltip{animation:fadeInOut 3s ease-in-out;border-radius:5px;box-shadow:0 4px 8px #0003;font-size:16px;left:50%;padding:10px 20px;position:fixed;top:10px;transform:translateX(-50%);z-index:1000}.checkmark,.save-message-tooltip{background-color:#4caf50;color:#fff;font-family:Quicksand,sans-serif;font-weight:700}.checkmark{align-items:center;border-radius:50%;box-shadow:0 2px 4px #0003;display:flex;font-size:14px;height:20px;justify-content:center;left:-10px;position:absolute;top:-10px;width:20px;z-index:10}button.shared-button{background-color:#0288d1;border:none;border-radius:20px;color:#fff;cursor:pointer;font-family:Quicksand,sans-serif;font-size:16px;font-weight:700;margin-top:20px;padding:10px 20px;transition:background-color .3s,transform .2s}button.shared-button:hover{background-color:#01579b;transform:scale(1.05)}button.shared-button:disabled{background-color:#b0bec5;cursor:not-allowed}.day-content-box{align-items:center;background:#b3e5fc;border-radius:22px;box-shadow:0 4px 24px #b3eaff33;display:flex;flex-direction:column;margin:40px auto;min-height:500px;min-height:var(--day-content-box-min-height);padding:36px 0 48px;width:720px;width:var(--day-content-box-width)}.gift-box-hover{transition:transform .35s cubic-bezier(.4,2,.6,1);transition:transform var(--giftbox-hover-duration) cubic-bezier(.4,2,.6,1)}.gift-box-hover:hover{animation:giftbox-rotate-shake .6s cubic-bezier(.4,2,.6,1);animation:giftbox-rotate-shake var(--giftbox-shake-duration) cubic-bezier(.4,2,.6,1);transform:scale(1.12);transform:scale(var(--giftbox-hover-scale))}.gift-box-wrapper.gift-box-pop{animation:giftbox-pop .7s cubic-bezier(.4,2,.6,1)!important;animation:giftbox-pop var(--giftbox-pop-duration) cubic-bezier(.4,2,.6,1)!important;pointer-events:none;transform:scale(1)!important}@keyframes giftbox-pop{0%{transform:scale(1)}40%{transform:scale(1.18);transform:scale(var(--giftbox-pop-scale-up))}60%{transform:scale(.92);transform:scale(var(--giftbox-pop-scale-down))}to{transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.7)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.day-image-pop{animation:popIn .55s cubic-bezier(.4,2,.6,1)}
/*# sourceMappingURL=main.1945b1cb.css.map*/