body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.header{background:#fff;border-bottom:5px solid #eee;padding:1rem}.mobile-header{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.mobile-left,.mobile-right{display:flex;justify-content:center;width:50px}.mobile-title{color:#333;flex:1 1;font-size:1.5rem;font-style:italic;font-weight:300;margin:0;text-align:center}.mobile-title strong{color:#000;font-size:1.1em;font-weight:700}.mobile-menu-btn,.mobile-user-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:.75rem;padding:.5rem;transition:background .2s}.mobile-menu-btn{font-size:1.5rem}.mobile-menu-btn:hover,.mobile-user-btn:hover{background:#f0f0f0}.mobile-menu{background:#fff;border-top:1px solid #eee;display:flex;flex-direction:column;gap:.5rem;padding:1rem 0}.mobile-nav-button{background:none;border:none;color:#666;cursor:pointer;font-size:1rem;padding:12px 16px;text-align:center;transition:color .2s}.mobile-nav-button:hover{background:#f8f9fa;color:#333}.mobile-nav-button.active{background:#e9ecef;color:#000;font-weight:600}.desktop-header{display:none}.desktop-top-nav{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:.5rem 0}.desktop-nav-left{display:flex;gap:2rem}.desktop-nav-right{display:flex}.desktop-header h1{color:#333;font-size:1.8rem;font-style:italic;font-weight:300;text-align:center}.desktop-header h1 strong{color:#000;font-size:1.1em;font-weight:800}.nav{border-top:1px solid #f5f5f5;display:flex;gap:2rem;justify-content:center;padding-top:1rem}.nav-button{background:none;border:none;color:#666;cursor:pointer;font-size:1rem;padding:8px 16px;transition:color .2s}.nav-button:hover{color:#333}.nav-button.active{border-bottom:2px solid #333;color:#000;font-weight:600}.nav-button.logout{background-color:#dc3545;border-radius:4px;color:#fff;margin-left:auto}.nav-button.logout:hover{background-color:#c82333}.loading{align-items:center;display:flex;font-size:18px;height:200px;justify-content:center}.main{flex:1 1;margin:0 auto;max-width:1200px;padding:1rem 1rem 2rem;width:100%}.content{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;padding:2rem;text-align:center}.content h2{color:#333;font-size:1.8rem;font-weight:400;margin-bottom:1rem}.content p{color:#666;font-size:1.1rem;line-height:1.6}.footer{background:#fff;border-top:1px solid #eee;color:#666;font-size:.9rem;margin-top:auto;padding:1rem;text-align:center}@media (min-width:769px){.mobile-header{display:none}.mobile-menu{display:none!important}.desktop-header{display:block;padding:1rem 0}}@media (max-width:768px){.desktop-header{display:none}.main{padding:1rem .5rem}.content{padding:1.5rem}.content h2{font-size:1.5rem}.content p{font-size:1rem}}@media (max-width:480px){.header h1{font-size:1.5rem;letter-spacing:1px}.header{padding:1.5rem 1rem}.nav{margin-top:1.5rem}.nav-button{max-width:250px;padding:12px 20px;width:100%}.content{padding:1rem}}.images-container{margin:0 auto;max-width:1200px;padding:20px}.loading{color:#666;font-size:1.2em;padding:40px;text-align:center}.calendar-header{align-items:center;display:flex;gap:20px;justify-content:center;margin-bottom:30px}.calendar-header h2{color:#333;font-size:1.8em;margin:0;min-width:200px;text-align:center}.nav-btn{align-items:center;background:#007bff;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5em;height:40px;justify-content:center;transition:background .2s;width:40px}.nav-btn:hover{background:#0056b3}.nav-btn.disabled,.nav-btn:disabled{background:#ccc;cursor:not-allowed}.nav-btn.disabled:hover,.nav-btn:disabled:hover{background:#ccc}.load-more-btn{background:#6c757d;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:1.5rem;min-width:170px;padding:16px;transition:all .3s ease;width:20%}.load-more-btn:hover{background:#5a6268;transform:translateY(-2px)}.calendar-desktop{display:block}.calendar-grid{grid-gap:2px;background:#ddd;border-radius:8px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);overflow:hidden}.day-header{background:#f8f9fa;color:#666;font-weight:700;padding:12px;text-align:center}.calendar-day{background:#fff;display:flex;flex-direction:column;min-height:120px;position:relative}.calendar-day.future-day{background:#eee;color:#666}.calendar-day.future-day .day-number{color:#666}.calendar-day.past-day{background:#f5f5f5}.day-number{color:#333;font-weight:700;padding:8px}.day-image{flex:1 1;padding:0 8px 8px}.day-image img{border-radius:4px;cursor:pointer;height:80px;object-fit:contain;transition:transform .2s;width:100%}.day-image img:hover{transform:scale(1.05)}.calendar-mobile{display:none}.mobile-day{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:15px;overflow:hidden}.mobile-day.past-day{background:#f9f9f9}.mobile-date{background:#f8f9fa;border-bottom:1px solid #eee;color:#333;font-weight:700;padding:12px 16px}.mobile-image{padding:16px}.mobile-image img{border-radius:8px;max-height:300px;object-fit:contain;width:100%}.upload-section{padding:8px;text-align:center}.upload-btn{background:#28a745;border-radius:3px;display:inline-block;font-size:.75em;padding:4px 8px;text-decoration:none}.upload-btn:hover:not(:disabled){background:#218838}.upload-btn:disabled{background:#6c757d;opacity:.6}.upload-spinner{align-items:center;display:flex;justify-content:center;padding:8px}.spinner{animation:spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#28a745;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.upload-btn.disabled{background:#6c757d!important;cursor:not-allowed!important;opacity:.6}.upload-date-btn{background:none;border:none;color:#007bff;cursor:pointer;font-size:inherit;font-weight:700;padding:0;text-decoration:underline;transition:color .2s}.upload-date-btn:hover:not(.disabled){color:#0056b3}.upload-date-btn.disabled{color:#6c757d;cursor:not-allowed;text-decoration:none}@media (max-width:768px){.calendar-desktop{display:none}.calendar-mobile{display:block}.calendar-header{flex-direction:column;gap:15px}.calendar-header h2{font-size:1.5em}.images-container{padding:15px}}@media (max-width:480px){.calendar-grid{gap:1px;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:80px}.day-image img{height:50px}}.calendar-image{border-radius:4px;cursor:pointer;height:80px;object-fit:cover;transition:transform .2s;width:100%}.calendar-image:hover{transform:scale(1.05)}.popup-overlay{background:#000000e6;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.popup-content,.popup-overlay{align-items:center;display:flex;justify-content:center}.popup-content{height:90vh;position:relative;width:90vw}.popup-image{border-radius:8px!important;height:100%!important;object-fit:contain!important;width:100%!important}.popup-close{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 2px 8px #0000004d;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;position:absolute;right:-15px;top:-15px;width:40px;z-index:1001}.popup-close:hover{background:#f0f0f0}.upload-container{align-items:center;background:#f8f9fa;display:flex;justify-content:center;min-height:100vh;padding:20px}.upload-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:40px;text-align:center;width:100%}.upload-card h1{color:#333;margin-bottom:10px}.date{color:#666;font-size:1.1em;margin-bottom:30px}.upload-area{margin:30px 0}.file-input{border:2px dashed #ddd;border-radius:8px;cursor:pointer;margin-bottom:20px;padding:10px;width:100%}.preview{margin:20px 0}.preview-image{border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:300px;max-width:300px}.current-image{margin:20px 0;text-align:center}.current-image h3{color:#333;margin-bottom:10px}.current-image-display{border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:300px;max-width:300px}.upload-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1em;padding:12px 30px;transition:background .2s}.upload-btn:hover:not(:disabled){background:#0056b3}.upload-btn:disabled{background:#ccc;cursor:not-allowed}.message{border-radius:6px;font-weight:700;margin:20px 0;padding:12px}.message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.info{background:#f8f9fa;border-radius:8px;margin-top:30px;padding:20px;text-align:left}.info p{color:#666;font-size:.9em;margin:8px 0}@media (max-width:768px){.upload-card{margin:10px;padding:20px}.preview-image{max-height:250px;max-width:250px}}.auth-container{align-items:center;display:flex;justify-content:center;min-height:70vh;padding:20px}.auth-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:420px;padding:3rem;width:100%}.auth-form h2{color:#333;font-size:2rem;font-weight:600;margin-bottom:2rem;text-align:center}.auth-form input{background:#f8f9fa;border:2px solid #e1e5e9;border-radius:12px;box-sizing:border-box;font-size:16px;margin-bottom:1.5rem;padding:16px;transition:all .3s ease;width:100%}.auth-form input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.auth-form button{background:#6c757d;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:1.5rem;padding:16px;transition:all .3s ease;width:100%}.auth-form button:hover:not(:disabled){background:#5a6268;transform:translateY(-2px)}.auth-form button:disabled{background:#ccc;cursor:not-allowed;transform:none}.auth-form p{color:#666;margin:0;text-align:center}.link-button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:inherit;font-weight:600;padding:0;text-decoration:none;transition:color .3s ease;width:auto}.link-button:hover{color:#f5f5f5;text-decoration:underline}.error{background:linear-gradient(135deg,#ff6b6b,#ee5a52);box-shadow:0 4px 15px #ff6b6b4d}.error,.success{border-radius:12px;color:#fff;font-weight:500;margin-bottom:1.5rem;padding:16px;text-align:center}.success{background:linear-gradient(135deg,#51cf66,#40c057);box-shadow:0 4px 15px #51cf664d}
/*# sourceMappingURL=main.6de6961c.css.map*/