body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:#f0f2f5;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5}.calculator-container{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;margin:2rem auto;max-width:800px;padding:2rem;transition:transform .3s ease}.header{border-bottom:2px solid #f0f2f5;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.header h1{align-items:center;color:#2d3748;display:flex;font-size:2rem;gap:.5rem;justify-content:center;margin-bottom:.5rem}.header-icon{color:#4263eb}.header-subtitle{color:#718096;font-size:1rem}.calculator-grid{display:flex;flex-direction:column;gap:1.5rem}.input-grid{display:grid;gap:1rem;margin-bottom:1.5rem}@media (min-width:640px){.input-grid{grid-template-columns:repeat(2,1fr)}}.input-section{display:grid;gap:1rem}@media (min-width:640px){.input-section{grid-template-columns:repeat(2,1fr)}}.input-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem;position:relative;transition:all .2s ease}.input-group:hover{box-shadow:0 2px 8px #0000000d;transform:translateY(-2px)}.input-group label{color:#4a5568;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.input-group input{border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .2s ease;width:100%}.input-group input:focus{border-color:#4263eb;box-shadow:0 0 0 3px #4263eb1a;outline:none}.weight-badge{background:#4263eb;border-radius:12px;color:#fff;font-size:.8rem;padding:.2rem .5rem;position:absolute;right:.5rem;top:.5rem}.button-group{display:flex;gap:1rem;justify-content:center;margin:1rem 0}.calculate-btn,.download-btn,.history-toggle-btn,.reset-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.calculate-btn{background:#4263eb;color:#fff}.calculate-btn:hover{background:#364fc7}.reset-btn{background:#e2e8f0;color:#4a5568}.reset-btn:hover{background:#cbd5e0}.download-btn{background:#37b24d;color:#fff;margin:1rem auto}.download-btn:hover{background:#2f9e44}.history-toggle-btn{background:#845ef7;color:#fff}.history-toggle-btn:hover{background:#7048e8}.error-message{background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:.9rem;margin:1rem 0;padding:1rem;text-align:center}.results-container,.results-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.percentage-display{border-radius:8px;font-size:1.5rem;font-weight:700;margin-bottom:1rem;padding:1rem;text-align:center;transition:all .3s ease}.percentage-high{background:#c6f6d5;color:#2f855a}.percentage-medium{background:#fefcbf;color:#975a16}.percentage-low{background:#fed7d7;color:#c53030}.analysis-card,.improvement-card,.recommendation-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-top:1rem;padding:1.25rem}.analysis-card h3,.improvement-card h3,.recommendation-card h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.improvement-text,.recommendation-text{color:#4a5568;font-size:.95rem;line-height:1.5}.improvement-text p{margin-bottom:.5rem}.history-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.history-container h2{color:#2d3748;font-size:1.2rem;margin-bottom:1rem;text-align:center}.history-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.history-item{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1rem}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.history-subject{color:#2d3748;font-weight:600}.history-timestamp{color:#718096;font-size:.8rem}.history-percentage{align-items:center;color:#4263eb;display:flex;font-size:1.2rem;font-weight:700;margin:.5rem 0}.history-components{display:flex;flex-wrap:wrap;font-size:.8rem;gap:.5rem}.history-components span{background:#f1f3f5;border-radius:4px;color:#495057;padding:.2rem .5rem}.history-navigation{gap:1rem;margin-bottom:1rem}.history-nav-btn,.history-navigation{align-items:center;display:flex;justify-content:center}.history-nav-btn{background:none;border:none;color:#4263eb;cursor:pointer;padding:.5rem}.history-nav-btn:disabled{color:#cbd5e0;cursor:not-allowed}.analysis-grid{display:grid;gap:1rem;margin-top:1rem}@media (min-width:640px){.analysis-grid{grid-template-columns:repeat(2,1fr)}}.attendance-display{align-items:center;border-radius:12px;display:flex;font-size:2rem;font-weight:700;gap:.5rem;justify-content:center;margin-bottom:1.5rem;padding:1.5rem;text-align:center}.attendance-excellent{background:#c6f6d5;color:#2f855a}.attendance-good{background:#fefcbf;color:#975a16}.attendance-warning{background:#fed7d7;color:#c53030}.copyright{border-top:1px solid #e2e8f0;color:#718096;font-size:.8rem;margin-top:2rem;padding-top:1rem;text-align:center}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-section{animation:slideIn .3s ease-out}@media (max-width:640px){.calculator-container{margin:1rem;padding:1.5rem}.header h1{font-size:1.5rem}.button-group{flex-direction:column}.calculate-btn,.download-btn,.history-toggle-btn,.reset-btn{justify-content:center;width:100%}.analysis-grid,.history-list{grid-template-columns:1fr}}@media print{.calculator-container{box-shadow:none;margin:0;padding:1rem}.button-group,.input-section{display:none}.results-section{break-inside:avoid;page-break-inside:avoid}}.erp-quick-access{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin:2rem 0;overflow:hidden}.erp-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;text-align:center}.erp-header h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.erp-header p{font-size:.9rem;margin:0;opacity:.9}.erp-content{background:#fff;padding:2rem}.erp-info{align-items:flex-start;display:flex;gap:1.5rem;margin-bottom:2rem}.erp-icon{flex-shrink:0;font-size:3rem}.erp-text h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.erp-text ol{color:#4a5568;line-height:1.6;margin:0;padding-left:1.5rem}.erp-text li{margin-bottom:.5rem}.erp-actions{align-items:center;display:flex;flex-direction:column;gap:1rem}.erp-primary-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;box-shadow:0 4px 12px #3b82f64d;color:#fff;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;text-decoration:none;transition:all .3s ease}.erp-primary-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 6px 20px #3b82f666;transform:translateY(-2px)}.erp-secondary-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.erp-secondary-btn{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.erp-secondary-btn:hover{background:#e2e8f0;box-shadow:0 2px 4px #0000001a;color:#475569;transform:translateY(-1px)}.erp-footer{background:#f1f5f9;border-top:1px solid #e2e8f0;padding:1rem 1.5rem;text-align:center}.erp-footer p{color:#64748b;font-size:.9rem;margin:0}@media (max-width:768px){.erp-content{padding:1.5rem}.erp-info{flex-direction:column;gap:1rem;text-align:center}.erp-icon{font-size:2.5rem}.erp-secondary-actions{flex-direction:column;width:100%}.erp-secondary-btn{justify-content:center;width:100%}}@media (max-width:480px){.erp-content,.erp-header{padding:1rem}.erp-header h3{font-size:1.1rem}.erp-footer{padding:.75rem 1rem}}.projected-label{color:#6c757d;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.projected-value{color:inherit;font-size:1.5rem;font-weight:700}.percentage-display.projected{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196f3;position:relative}.percentage-display.projected:before{align-items:center;background:#2196f3;border-radius:50%;box-shadow:0 2px 4px #2196f34d;color:#fff;content:"📊";display:flex;font-size:.8rem;height:30px;justify-content:center;left:-10px;position:absolute;top:-10px;width:30px}:root{--primary-color:#a51c24;--primary-dark:#8a1820;--button-primary:#2563eb;--button-dark:#1d4ed8;--secondary-color:#2c3e50;--accent-color:#3498db;--background-light:#f5f7fa;--text-primary:#2c3e50;--text-secondary:#666;--shadow-sm:0 4px 8px #0000001a;--shadow-lg:0 8px 16px #0003;--gradient-primary:linear-gradient(145deg,var(--primary-color) 0%,var(--primary-dark) 100%);--gradient-button:linear-gradient(145deg,var(--button-primary) 0%,var(--button-dark) 100%);--gradient-light:linear-gradient(135deg,#f5f7fa,#e0e0e0)}.scroll-progress{background:var(--gradient-primary);height:3px;left:0;position:fixed;top:0;transition:width .2s ease;z-index:1000}.hero-container{background:var(--background-light);font-family:Poppins,Segoe UI,Arial,sans-serif;min-height:100vh;padding:2rem}.hero-content{backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:var(--shadow-lg);margin:0 auto;max-width:1200px;padding:2rem}.hero-header{background:#fff;border-radius:15px;box-shadow:var(--shadow-sm);margin-bottom:3rem;padding:3rem;text-align:center}.hero-title{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;text-shadow:2px 2px 4px #0000001a}.hero-subtitle{color:var(--text-secondary);font-size:1.2rem;line-height:1.8;margin:0 auto 2rem;max-width:800px}.hero-cta{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.primary-button,.secondary-button{align-items:center;border-radius:8px;display:inline-flex;font-weight:600;gap:.5rem;padding:1rem 2rem;text-decoration:none;transition:all .3s ease}.primary-button{background:var(--gradient-button);box-shadow:0 4px 15px #2563eb33;color:#fff}.secondary-button{background:#fff;border:2px solid var(--button-primary);color:var(--button-primary)}.button-icon{transition:transform .3s ease}.primary-button:hover,.secondary-button:hover{box-shadow:0 6px 20px #2563eb4d;transform:translateY(-2px)}.primary-button:hover .button-icon,.secondary-button:hover .button-icon{transform:translateX(5px)}.stats-container{background:#fff;border-radius:15px;box-shadow:var(--shadow-sm);margin:3rem 0;padding:2rem}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.stats-title{color:var(--text-primary);font-size:1.8rem}.stats-tabs{display:flex;gap:1rem}.tab-button{background:none;border:none;border-radius:20px;color:var(--text-secondary);cursor:pointer;padding:.5rem 1.5rem;transition:all .3s ease}.tab-button.active{background:var(--primary-color);color:#fff}.stats-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.stat-card{background:var(--background-light);border-radius:12px;padding:1.5rem;text-align:center}.stat-value{color:var(--primary-color);font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:.9rem}.notice-banner{align-items:center;background:#a51c240d;border-left:4px solid var(--primary-color);border-radius:0 10px 10px 0;display:flex;gap:1.5rem;margin:2rem 0;padding:1.5rem}.notice-content{flex:1 1}.notice-title{color:var(--primary-color);font-size:1.2rem;margin-bottom:.5rem}.features-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:3rem 0}.feature-card{background:#fff;border-radius:15px;box-shadow:var(--shadow-sm);padding:2rem;text-align:center;transition:all .3s ease}.feature-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.feature-icon{color:var(--primary-color);display:block;font-size:2.5rem;margin-bottom:1.5rem}.feature-title{color:var(--text-primary);font-size:1.5rem;margin-bottom:1rem}.quick-actions{margin:3rem 0}.quick-actions-title{color:var(--text-primary);font-size:1.8rem;margin-bottom:1.5rem}.quick-actions-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.quick-action-card{background:#fff;border:1px solid #0000001a;border-radius:12px;color:var(--text-primary);padding:1.5rem;text-align:center;text-decoration:none;transition:all .3s ease}.quick-action-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm);transform:translateY(-3px)}.quick-action-icon{color:var(--primary-color);display:block;font-size:1.5rem;margin-bottom:.5rem}.page-footer{border-top:1px solid #0000001a;margin-top:4rem;padding-top:2rem}.footer-content{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.footer-title{color:var(--text-primary);font-size:1.2rem;margin-bottom:1rem}.footer-links{display:flex;flex-direction:column;gap:.5rem}.footer-link{color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.footer-link:hover{color:var(--primary-color)}.footer-bottom{border-top:1px solid #0000001a;padding-top:2rem;text-align:center}.copyright{color:var(--text-secondary);font-size:.9rem}@media (max-width:768px){.hero-container,.hero-content{padding:1rem}.hero-title{font-size:2.5rem}.hero-cta,.stats-header{flex-direction:column}.stats-header{gap:1rem}.features-grid,.stats-grid{grid-template-columns:1fr}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes celebrate{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.new-features-section{background:#fff;border-radius:15px;box-shadow:var(--shadow-sm);margin:3rem 0;padding:2rem}.section-title{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:2rem;text-align:center}.new-features-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-top:2rem}.new-feature-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;padding:2rem;position:relative;text-align:center;transition:all .3s ease}.new-feature-card:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.new-feature-card:hover:before{transform:scaleX(1)}.new-feature-card:hover{border-color:var(--accent-color);box-shadow:var(--shadow-lg);transform:translateY(-5px)}.new-feature-icon{animation:float 3s ease-in-out infinite;display:block;font-size:3rem;margin-bottom:1rem}.new-feature-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.new-feature-description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.new-feature-button{background:var(--gradient-button);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;overflow:hidden;padding:.75rem 1.5rem;position:relative;transition:all .3s ease}.new-feature-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.new-feature-button:hover:before{left:100%}.new-feature-button:hover{box-shadow:0 4px 12px #2563eb4d;transform:translateY(-2px)}.resource-links{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.resource-link{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;color:var(--button-primary);display:inline-block;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.resource-link:hover{background:var(--button-primary);color:#fff;transform:translateX(5px)}.calendar-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1rem}.calendar-button{align-items:center;background:var(--gradient-button);display:inline-flex;gap:.5rem}.calendar-button,.calendar-button:hover{color:#fff;text-decoration:none}.secondary-calendar-button{background:#f8f9fa;border:1px solid #e1e5e9;color:var(--text-primary)}.secondary-calendar-button:hover{background:#e9ecef;box-shadow:0 4px 12px #0000001a;color:var(--text-primary);transform:translateY(-2px)}.rain-warning-banner{align-items:center;animation:slideDown .5s ease-out;background:linear-gradient(135deg,#ff6b6b,#ee5a52);box-shadow:0 4px 12px #ff6b6b4d;color:#fff;display:flex;gap:1rem;justify-content:center;left:0;padding:1rem 2rem;position:fixed;right:0;top:0;z-index:9999}.rain-warning-icon{animation:bounce 2s infinite;font-size:1.5rem}.rain-warning-text{flex:1 1;font-size:1rem;font-weight:600;text-align:center}.rain-warning-close{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;padding:.25rem;transition:background-color .3s ease}.rain-warning-close:hover{background-color:#fff3}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.weather-display{background:linear-gradient(135deg,#74b9ff,#0984e3);border-radius:12px;box-shadow:var(--shadow-sm);color:#fff;margin-top:1rem;overflow:hidden;padding:1.5rem;position:relative}.weather-display:before{animation:shimmer 3s infinite;background:linear-gradient(45deg,#0000 30%,#ffffff1a 50%,#0000 70%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}.weather-main{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:1rem;position:relative;z-index:1}.weather-icon{animation:float 3s ease-in-out infinite;font-size:2.5rem}.weather-temp{font-size:2rem;font-weight:700}.weather-details{position:relative;text-align:center;z-index:1}.weather-desc{font-weight:500;margin-bottom:.5rem}.weather-rain{margin-bottom:.5rem;opacity:.9}.weather-warning{animation:pulse 2s infinite;color:#ff7675;font-weight:600}.weather-loading{padding:1rem;position:relative;text-align:center;z-index:1}.loading-spinner{animation:spin 2s linear infinite;display:block;font-size:2rem;margin-bottom:.5rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.notes-modal-overlay{align-items:center;backdrop-filter:blur(5px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}.notes-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:15px;box-shadow:var(--shadow-lg);max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;position:relative;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.notes-modal-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.notes-modal-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.notes-modal-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:.25rem;transition:all .3s ease;width:32px}.notes-modal-close:hover{background-color:#f8f9fa;color:var(--text-primary);transform:rotate(90deg)}.notes-modal-content{margin-bottom:1.5rem}.note-label{color:var(--text-primary);display:block;font-size:1rem;font-weight:500;margin-bottom:.75rem}.note-textarea{background:#fafbfc;border:2px solid #e1e5e9;border-radius:8px;font-family:inherit;font-size:1rem;line-height:1.5;min-height:200px;padding:1rem;resize:vertical;transition:all .3s ease;width:100%}.note-textarea:focus{background:#fff;border-color:var(--button-primary);box-shadow:0 0 0 3px #2563eb1a;outline:none}.notes-modal-actions{display:flex;gap:1rem;justify-content:flex-end}.notes-modal-cancel,.notes-modal-save{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;min-width:100px;padding:.75rem 1.5rem;transition:all .3s ease}.notes-modal-cancel{background:#f8f9fa;border:1px solid #e1e5e9;color:var(--text-secondary)}.notes-modal-cancel:hover{background:#e9ecef;color:var(--text-primary);transform:translateY(-1px)}.notes-modal-save{background:var(--gradient-button);color:#fff;overflow:hidden;position:relative}.notes-modal-save:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.notes-modal-save:hover:not(:disabled):before{left:100%}.notes-modal-save:hover:not(:disabled){box-shadow:0 4px 12px #2563eb4d;transform:translateY(-2px)}.notes-modal-save:disabled{cursor:not-allowed;opacity:.5;transform:none}@media (max-width:768px){.new-features-grid{gap:1.5rem;grid-template-columns:1fr}.new-feature-card{padding:1.5rem}.section-title{font-size:2rem}.resource-links{flex-direction:row;flex-wrap:wrap;justify-content:center}.weather-display{padding:1rem}.weather-main{flex-direction:column;gap:.5rem}.weather-icon{font-size:2rem}.weather-temp{font-size:1.5rem}.calendar-actions{flex-direction:column}.calendar-button,.secondary-calendar-button{justify-content:center;width:100%}.notes-modal{max-height:90vh;padding:1.5rem;width:95%}.notes-modal-actions{flex-direction:column}.notes-modal-cancel,.notes-modal-save{width:100%}.rain-warning-banner{flex-direction:column;gap:.5rem;padding:.75rem 1rem}.rain-warning-text{font-size:.9rem}.hero-container{padding:.5rem}.hero-content,.new-features-section{padding:1rem}}.certificate-recognition{background:linear-gradient(135deg,gold,#ffed4e);border:3px solid #ffc107;border-radius:20px;box-shadow:var(--shadow-lg);color:#2c3e50;margin:4rem 0;overflow:hidden;padding:2rem;position:relative}.certificate-recognition:before{animation:shimmer 4s infinite;background:linear-gradient(45deg,#0000 30%,#ffffff4d 50%,#0000 70%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}.certificate-container{position:relative;z-index:1}.certificate-header{margin-bottom:3rem;text-align:center}.certificate-title{color:#8b4513;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:2px 2px 4px #0000001a}.certificate-subtitle{color:#654321;font-size:1.1rem;margin:0;opacity:.8}.certificate-content{align-items:center;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.certificate-image-container{text-align:center}.certificate-image{border:4px solid #ffc107;border-radius:15px;box-shadow:0 12px 40px #0000004d;height:auto;max-width:400px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.certificate-image:hover{box-shadow:0 16px 50px #0006;transform:scale(1.02)}.certificate-placeholder{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:4px solid #ffc107;border-radius:15px;display:flex;flex-direction:column;height:300px;justify-content:center;margin:0 auto;max-width:400px;width:100%}.placeholder-icon{font-size:4rem;margin-bottom:1rem}.certificate-placeholder p{color:#6c757d;font-weight:600;margin:.5rem 0}.student-id{font-size:1rem;opacity:.8}.certificate-message{backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #ffc107;border-radius:15px;box-shadow:0 8px 25px #0000001a;padding:2rem}.message-content{text-align:left}.message-title{color:#8b4513;font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-align:center}.message-text{color:#2c3e50;font-size:1.1rem;line-height:1.8;margin-bottom:2rem;text-align:justify}.certificate-details{display:flex;flex-direction:column;gap:1rem}.detail-item{align-items:center;background:#ffc1071a;border:1px solid #ffc1074d;border-radius:8px;display:flex;gap:1rem;padding:.75rem}.detail-icon{flex-shrink:0;font-size:1.5rem}.detail-text{color:#2c3e50;font-weight:500}.certificate-footer{background:#ffc1071a;border-radius:10px;border-top:2px solid #ffc107;margin-top:2rem;padding-top:2rem;text-align:center}.certificate-quote{color:#8b4513;font-size:1.1rem;font-weight:700;letter-spacing:1px;margin:0;text-transform:uppercase}@media (max-width:768px){.certificate-recognition{margin:2rem 0;padding:1.5rem}.certificate-title{font-size:2rem}.certificate-content{gap:2rem;grid-template-columns:1fr;text-align:center}.certificate-image,.certificate-placeholder{max-width:100%}.message-text{text-align:left}.detail-item{justify-content:center}}.timer-modal-overlay{align-items:center;backdrop-filter:blur(5px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}.timer-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:15px;box-shadow:var(--shadow-lg);max-width:400px;padding:2rem;position:relative;text-align:center;width:90%}.timer-header{align-items:center;border-bottom:1px solid #e1e5e9;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.timer-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.timer-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:.25rem;transition:all .3s ease;width:32px}.timer-close:hover{background-color:#f8f9fa;color:var(--text-primary);transform:rotate(90deg)}.timer-display{background:linear-gradient(135deg,#74b9ff,#0984e3);border-radius:12px;color:#fff;margin:2rem 0;overflow:hidden;padding:2rem;position:relative}.timer-display:before{animation:shimmer 3s infinite;background:linear-gradient(45deg,#0000 30%,#ffffff1a 50%,#0000 70%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}.timer-display span{font-family:Courier New,monospace;font-size:3rem;font-weight:700;position:relative;text-shadow:2px 2px 4px #0000004d;z-index:1}.timer-controls{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.timer-control-button{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;min-width:80px;overflow:hidden;padding:.75rem 1.5rem;position:relative;transition:all .3s ease}.timer-control-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.timer-control-button:hover:before{left:100%}.timer-control-button:first-child{background:#ff7675;color:#fff}.timer-control-button:nth-child(2){background:#00b894;color:#fff}.timer-control-button:nth-child(3){background:#fdcb6e;color:#fff}.timer-control-button:hover{box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}@media (max-width:768px){.timer-modal{padding:1.5rem;width:95%}.timer-display span{font-size:2.5rem}.timer-controls{flex-direction:column}.timer-control-button{width:100%}}.simple-recognition{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e9ecef;border-radius:15px;box-shadow:0 8px 25px #00000014;margin:4rem 0;padding:3rem}.recognition-container{align-items:center;display:flex;flex-direction:column;gap:2.5rem;margin:0 auto;max-width:800px}.recognition-image-large{max-width:600px;text-align:center;width:100%}.recognition-img-large{border-radius:12px;box-shadow:0 8px 25px #00000026;height:auto;transition:transform .3s ease,box-shadow .3s ease;width:100%}.recognition-img-large:hover{box-shadow:0 12px 35px #0003;transform:scale(1.02)}.recognition-content-below{max-width:600px;text-align:center}.recognition-title-large{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:1.5rem;text-shadow:0 2px 4px #0000001a}.recognition-text-large{color:#495057;font-size:1.2rem;line-height:1.8;margin-bottom:2rem;text-align:center}.recognition-details-large{align-items:center;display:flex;flex-direction:column;gap:1rem}.detail-item-large{align-items:center;background:#fffc;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 4px 12px #0000000d;display:flex;gap:1rem;padding:1rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.detail-item-large:hover{box-shadow:0 6px 18px #0000001a;transform:translateY(-2px)}.detail-icon-large{flex-shrink:0;font-size:1.8rem}.detail-text-large{color:#2c3e50;font-size:1.1rem;font-weight:600}@media (max-width:768px){.simple-recognition{margin:2rem 0;padding:2rem}.recognition-container{gap:2rem}.recognition-image-large{max-width:100%}.recognition-title-large{font-size:2rem}.recognition-text-large{font-size:1.1rem}.detail-item-large{padding:.75rem 1rem}.detail-text-large{font-size:1rem}}
/*# sourceMappingURL=main.83baf72f.css.map*/