@import"https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&family=Merriweather:ital,opsz,wght@0,18..144,300..900;1,18..144,300..900&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.cookie-consent-overlay{position:fixed;bottom:0;left:0;right:0;z-index:10000;pointer-events:none}.cookie-consent-banner{background:linear-gradient(135deg,var(--color-white) 0%,#faf7f2 100%);border-top:4px solid var(--color-brown-light);box-shadow:0 -8px 32px #0003,0 -2px 8px #0000001a;padding:var(--spacing-xl) var(--spacing-2xl);pointer-events:all;animation:slideUp .5s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-consent-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:var(--spacing-xl);flex-wrap:wrap}.cookie-consent-icon{font-size:2.2rem;flex-shrink:0;animation:bounce 2s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.cookie-consent-text{flex:1;min-width:280px}.cookie-consent-text p{margin:0;color:var(--color-black);font-size:1rem;line-height:1.6;font-family:Inter,sans-serif}.cookie-consent-link{color:var(--color-black);text-decoration:none;font-weight:600;border-bottom:2px solid var(--color-brown-light);padding-bottom:2px;transition:var(--transition);display:inline-block;position:relative}.cookie-consent-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-brown);transition:width .3s ease}.cookie-consent-link:hover{color:var(--color-brown)}.cookie-consent-link:hover:after{width:100%}.cookie-consent-actions{display:flex;gap:var(--spacing-md);flex-shrink:0}.cookie-consent-btn{padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:Inter,sans-serif;min-width:120px;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.cookie-consent-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.cookie-consent-btn:hover:before{width:300px;height:300px}.cookie-consent-btn>*{position:relative;z-index:1}.cookie-consent-accept{background-color:var(--color-black);color:var(--color-white)}.cookie-consent-accept:hover{background-color:var(--color-gray-dark);transform:translateY(-2px);box-shadow:0 4px 16px #00000040}.cookie-consent-accept:active{transform:translateY(0)}.cookie-consent-decline{background-color:var(--color-white);color:var(--color-black);border:2px solid var(--color-gray-pale)}.cookie-consent-decline:hover{background-color:var(--color-gray-bg);border-color:var(--color-brown-pale);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.cookie-consent-decline:active{transform:translateY(0)}@media(max-width:768px){.cookie-consent-banner{padding:var(--spacing-lg) var(--spacing-xl);border-top-width:3px}.cookie-consent-content{flex-direction:column;align-items:stretch;gap:var(--spacing-lg)}.cookie-consent-icon{font-size:1.8rem;align-self:center}.cookie-consent-text{text-align:center}.cookie-consent-text p{font-size:.95rem}.cookie-consent-actions{width:100%;justify-content:stretch;gap:var(--spacing-sm)}.cookie-consent-btn{flex:1;padding:var(--spacing-sm) var(--spacing-lg);font-size:.9rem;min-width:auto}}@media(max-width:480px){.cookie-consent-banner{padding:var(--spacing-md) var(--spacing-lg)}.cookie-consent-text p{font-size:.9rem}.cookie-consent-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.85rem}}.auth-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:3000;padding:var(--spacing-lg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-in-out}.auth-modal-content{background:var(--color-white);border-radius:24px;padding:var(--spacing-3xl);max-width:1100px;width:100%;max-height:95vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;position:relative}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.auth-modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-gray-pale)}.auth-modal-content .modal-header h1{color:#000;font-weight:700;font-size:2.5rem;margin:0;font-family:Merriweather,serif}.auth-modal-content .modal-close{background:none;border:none;font-size:2.5rem;color:var(--color-gray);cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--transition);line-height:1}.auth-modal-content .modal-close:hover{background-color:#a1887f;color:#000}.auth-modal-content form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.auth-modal-content .form-group{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:0}.auth-modal-content .form-group label{color:#000;font-weight:600;font-size:1.1rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-sm);font-family:Merriweather,serif}.auth-modal-content .form-group input,.auth-modal-content .form-group select{width:100%;padding:var(--spacing-lg) var(--spacing-xl);border:2px solid var(--color-gray-pale);border-radius:16px;font-family:Merriweather,serif;font-size:1.1rem;color:#000;transition:var(--transition);background-color:var(--color-white);min-height:56px}.auth-modal-content .form-group input:focus,.auth-modal-content .form-group select:focus{outline:none;border-color:#000;box-shadow:0 0 0 4px #0000001a;transform:translateY(-2px)}.auth-modal-content .form-group input.error,.auth-modal-content .form-group select.error{border-color:var(--color-error);background-color:#d32f2f0d}.auth-modal-content .form-group input.error:focus,.auth-modal-content .form-group select.error:focus{border-color:var(--color-error);box-shadow:0 0 0 4px #d32f2f26}.auth-modal-content .form-group input::placeholder{color:var(--color-gray-light);font-style:italic}.auth-modal-content .form-group input:disabled,.auth-modal-content .form-group select:disabled{background-color:var(--color-gray-bg);cursor:not-allowed;opacity:.7}.auth-modal-content .form-group small{color:var(--color-gray-light);font-size:.95rem;margin-top:var(--spacing-xs);font-style:italic}.auth-modal-content button[type=submit]{width:100%;padding:var(--spacing-lg) var(--spacing-xl);margin-top:var(--spacing-md);font-size:1.1rem;font-weight:600;min-height:56px;border-radius:16px;transition:var(--transition)}.auth-modal-content button[type=submit]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.auth-modal-content .error-message{background-color:#d32f2f1a;color:var(--color-error);padding:var(--spacing-lg);border-radius:12px;border-left:4px solid var(--color-error);font-size:1rem;margin-bottom:var(--spacing-md)}.auth-modal-content .error-message-small{color:var(--color-error);font-size:.9rem;margin-top:var(--spacing-xs);display:block}.auth-modal-content .login-footer{margin-top:var(--spacing-xl);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-modal-content .login-footer a,.auth-modal-content .forgot-password-link{color:#000;text-decoration:none;font-weight:600;font-size:.9rem;transition:var(--transition);padding:var(--spacing-xs) var(--spacing-md);border-radius:8px;border:1px solid rgba(141,110,99,.2);background-color:transparent;display:inline-block;cursor:pointer}.auth-link-button{border:none;background:none;font:inherit;padding:0;margin:0;cursor:pointer;color:inherit;text-decoration:none}.auth-modal-content .login-footer a:hover,.auth-modal-content .forgot-password-link:hover{color:#000;text-decoration:none;background-color:#a1887f;border-color:#8d6e6366}.auth-link-button:hover{color:#000;text-decoration:none;background-color:transparent}.auth-modal-content .login-footer p{color:#000;font-size:1rem}.auth-modal-content .login-footer p a{color:#000;font-weight:600}@media(max-width:768px){.auth-modal-content{padding:var(--spacing-2xl);border-radius:20px;max-width:95%}.auth-modal-content .modal-header h1{font-size:2rem}.auth-modal-content .form-group input,.auth-modal-content .form-group select{padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;min-height:50px}.auth-modal-content .form-group label{font-size:1rem}.auth-modal-content button[type=submit]{padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;min-height:50px}}.auth-modal-content .form-group.privacy-consent-group,.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]){background-color:#a1887f0d;border:2px solid var(--color-brown-very-pale);border-radius:16px;padding:var(--spacing-lg) var(--spacing-xl);margin-top:var(--spacing-lg);transition:var(--transition)}.auth-modal-content .form-group.privacy-consent-group:has(input:checked),.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]:checked){background-color:#a1887f1a;border-color:var(--color-brown-pale)}.auth-modal-content .form-group.privacy-consent-group:hover,.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]:hover){border-color:var(--color-brown-light);background-color:#a1887f14}.auth-modal-content .form-group.privacy-consent-group label,.auth-modal-content .form-group label:has(input[type=checkbox][name=privacyConsent]){display:flex;align-items:flex-start;gap:var(--spacing-md);cursor:pointer;margin-bottom:0;text-transform:none;letter-spacing:normal;font-weight:400}.auth-modal-content .form-group.privacy-consent-group input[type=checkbox],.auth-modal-content .form-group input[type=checkbox][name=privacyConsent]{appearance:none;width:24px;height:24px;min-width:24px;border:2px solid var(--color-gray-pale);border-radius:6px;background-color:var(--color-white);cursor:pointer;position:relative;margin-top:.2rem;transition:all .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;padding:0;min-height:24px}.auth-modal-content .form-group.privacy-consent-group input[type=checkbox]:hover,.auth-modal-content .form-group input[type=checkbox][name=privacyConsent]:hover{border-color:var(--color-brown-light);background-color:#a1887f0d;transform:scale(1.05)}.auth-modal-content .form-group.privacy-consent-group input[type=checkbox]:checked,.auth-modal-content .form-group input[type=checkbox][name=privacyConsent]:checked{background-color:var(--color-black);border-color:var(--color-black);box-shadow:0 0 0 3px #0000001a}.auth-modal-content .form-group.privacy-consent-group input[type=checkbox]:checked:after,.auth-modal-content .form-group input[type=checkbox][name=privacyConsent]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-white);font-size:16px;font-weight:700;line-height:1}.auth-modal-content .form-group.privacy-consent-group input[type=checkbox]:focus,.auth-modal-content .form-group input[type=checkbox][name=privacyConsent]:focus{outline:none;box-shadow:0 0 0 4px #0000001a}.auth-modal-content .form-group.privacy-consent-group span,.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]) span{font-size:.95rem;line-height:1.6;color:var(--color-black);flex:1}.auth-modal-content .form-group.privacy-consent-group span a,.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]) span a{color:var(--color-black);text-decoration:none;font-weight:600;border-bottom:2px solid var(--color-brown-light);padding-bottom:2px;transition:var(--transition);position:relative}.auth-modal-content .form-group.privacy-consent-group span a:after,.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]) span a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-brown);transition:width .3s ease}.auth-modal-content .form-group.privacy-consent-group span a:hover,.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]) span a:hover{color:var(--color-brown)}.auth-modal-content .form-group:has(input[type=checkbox][name=privacyConsent]) span a:hover:after{width:100%}@media(max-width:480px){.auth-modal-content{padding:var(--spacing-xl);max-width:100%;border-radius:16px}.auth-modal-content .modal-header h1{font-size:1.75rem}}.messages-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-gray-bg, #f5f5f5)}.messages-content{flex:1;padding:var(--spacing-lg);max-width:1400px;margin:0 auto;width:100%}.messages-container{display:flex;height:calc(100vh - 300px);min-height:600px;border:1px solid var(--color-gray-pale, #bdbdbd);border-radius:16px;overflow:hidden;background:var(--color-white, #ffffff);box-shadow:var(--shadow-lg)}.conversations-sidebar{width:350px;border-right:1px solid var(--color-gray-pale, #bdbdbd);display:flex;flex-direction:column;background:var(--color-gray-bg, #f5f5f5)}.conversations-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale, #bdbdbd);display:flex;justify-content:space-between;align-items:center;background:var(--color-white, #ffffff)}.conversations-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#000}.btn-new-conversation{width:36px;height:36px;border-radius:50%;border:2px solid transparent;background:transparent;color:#000;font-size:1.5rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition);box-shadow:var(--shadow-sm)}.btn-new-conversation:hover{background:transparent;color:#000;transform:scale(1.05);box-shadow:var(--shadow-md)}.new-conversation-form{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale, #bdbdbd);background:var(--color-white, #ffffff)}.user-select-container{position:relative;width:100%;margin-bottom:var(--spacing-sm)}.user-select-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-gray-pale, #bdbdbd);border-radius:12px;font-size:.95rem;font-family:Arimo,sans-serif;background:var(--color-white, #ffffff);transition:all .2s ease;cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-align:left;box-shadow:var(--shadow-sm);min-height:48px}.user-select-button:hover{border-color:#000;box-shadow:var(--shadow-md);transform:translateY(-1px);background:var(--color-gray-bg, #fafafa)}.user-select-button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.user-select-button:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000001a}.user-select-text{flex:1;color:var(--color-text, #333);font-weight:500}.user-select-text.placeholder{color:var(--color-text-secondary, #999);font-weight:400}.user-select-arrow{color:#000;font-size:.8rem;margin-left:var(--spacing-sm);transition:transform .2s}.user-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-xs);background:var(--color-white, #ffffff);border:2px solid #000000;border-radius:12px;box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto;z-index:1000;animation:slideDown .2s ease-out}.user-dropdown::-webkit-scrollbar{width:8px}.user-dropdown::-webkit-scrollbar-track{background:var(--color-gray-bg, #f5f5f5);border-radius:4px}.user-dropdown::-webkit-scrollbar-thumb{background:var(--color-gray-pale, #bdbdbd);border-radius:4px}.user-dropdown::-webkit-scrollbar-thumb:hover{background:#000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-section{border-bottom:1px solid var(--color-gray-pale, #e0e0e0)}.user-dropdown-section:last-child{border-bottom:none}.user-dropdown-section-header{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-gray-bg, #f5f5f5);font-weight:600;font-size:.85rem;color:#000;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-gray-pale, #bdbdbd);position:sticky;top:0;z-index:10}.user-dropdown-item{padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:var(--transition);border-left:3px solid transparent}.user-dropdown-item:hover{background:var(--color-gray-bg, #f5f5f5);border-left-color:#000}.user-dropdown-item.selected{background:#0000000d;border-left-color:#000;font-weight:600}.user-dropdown-name{color:var(--color-text, #333);font-size:.95rem}.user-dropdown-check{color:#000;font-weight:600;font-size:1rem}.user-dropdown-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary, #666);font-size:.9rem}.new-conversation-actions{display:flex;gap:var(--spacing-sm)}.btn-start,.btn-cancel{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-start{background:transparent;color:#000;border:2px solid transparent;font-weight:500}.btn-start:hover:not(:disabled){background:transparent;color:#000;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-start:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{background:var(--color-gray-light, #e0e0e0);color:var(--color-text, #333)}.btn-cancel:hover{background:var(--color-gray, #ccc)}.conversations-list{flex:1;overflow-y:auto;padding:var(--spacing-sm)}.conversation-item{display:flex;padding:var(--spacing-md);margin-bottom:var(--spacing-sm);border-radius:12px;cursor:pointer;transition:var(--transition);background:var(--color-white, #ffffff);border:1px solid transparent;box-shadow:var(--shadow-sm)}.conversation-item:hover{background:var(--color-gray-bg, #f5f5f5);transform:translate(4px);box-shadow:var(--shadow-md)}.conversation-item.active{background:var(--color-gray-bg, #f5f5f5);border-color:#000;box-shadow:var(--shadow-md)}.conversation-item.unread{border-left:4px solid #000000;font-weight:600;background:#0000000d}.conversation-avatar{width:50px;height:50px;border-radius:50%;background:transparent;color:#000;border:2px solid #000000;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.3rem;margin-right:var(--spacing-md);flex-shrink:0;box-shadow:var(--shadow-sm);transition:var(--transition)}.conversation-item:hover .conversation-avatar{transform:scale(1.05);box-shadow:var(--shadow-md)}.conversation-info{flex:1;min-width:0}.conversation-header-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.conversation-name{font-weight:600;color:#000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread-badge{background:transparent;color:#000;border:1px solid #000000;border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600;min-width:24px;text-align:center;box-shadow:var(--shadow-sm)}.conversation-preview{color:var(--color-text-secondary, #666);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:var(--spacing-xs)}.conversation-time{font-size:.75rem;color:var(--color-text-secondary, #999)}.no-conversations{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary, #666)}.chat-area{flex:1;display:flex;flex-direction:column;background:#fff}.chat-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale, #bdbdbd);background:var(--color-white, #ffffff);box-shadow:0 2px 4px #0000000d}.chat-user-info{display:flex;align-items:center;gap:var(--spacing-md)}.chat-avatar{width:50px;height:50px;border-radius:50%;background:transparent;color:#000;border:2px solid #000000;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.3rem;box-shadow:var(--shadow-md)}.chat-user-info h3{margin:0;font-size:1.2rem;font-weight:600;color:#000}.chat-user-role{font-size:.9rem;color:var(--color-gray, #424242);font-weight:500}.messages-list{flex:1;overflow-y:auto;padding:var(--spacing-lg);background:var(--color-gray-bg, #f5f5f5);background-image:repeating-linear-gradient(0deg,transparent,transparent 20px,rgba(0,0,0,.02) 20px,rgba(0,0,0,.02) 21px)}.loading-messages,.no-messages{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary, #666)}.date-separator{text-align:center;margin:var(--spacing-lg) 0;color:var(--color-gray, #424242);font-size:.85rem;font-weight:500;position:relative}.date-separator:before,.date-separator:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--color-gray-pale, #bdbdbd)}.date-separator:before{left:0}.date-separator:after{right:0}.message-item{margin-bottom:var(--spacing-sm);display:flex}.message-item.own-message{justify-content:flex-end}.message-item.other-message{justify-content:flex-start}.message-content{max-width:70%;padding:var(--spacing-md) var(--spacing-lg);border-radius:16px;position:relative;word-wrap:break-word}.own-message .message-content{background:transparent;color:#000;border:1px solid #000000;border-bottom-right-radius:4px;box-shadow:var(--shadow-sm)}.other-message .message-content{background:var(--color-white, #ffffff);color:var(--color-gray-dark, #212121);border:1px solid var(--color-gray-pale, #bdbdbd);border-bottom-left-radius:4px;box-shadow:var(--shadow-sm)}.message-content p{margin:0;word-wrap:break-word;line-height:1.6;font-size:.95rem}.message-time{font-size:.7rem;opacity:.8;margin-top:var(--spacing-xs);display:block;font-weight:400}.no-conversation-selected{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-gray, #424242);font-size:1.2rem;font-weight:500;background:var(--color-gray-bg, #f5f5f5)}.message-input-form{display:flex;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-gray-pale, #bdbdbd);background:var(--color-white, #ffffff);gap:var(--spacing-md);box-shadow:0 -2px 4px #0000000d}.message-input{flex:1;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-gray-pale, #bdbdbd);border-radius:24px;font-size:.95rem;font-family:Arimo,sans-serif;outline:none;transition:var(--transition);background:var(--color-white, #ffffff)}.message-input:focus{border-color:#000;box-shadow:0 0 0 3px #0000001a}.btn-send{padding:var(--spacing-md) var(--spacing-xl);background:transparent;color:#000;border:2px solid transparent;border-radius:24px;cursor:pointer;font-weight:600;font-family:Arimo,sans-serif;transition:var(--transition);box-shadow:var(--shadow-sm);min-width:100px}.btn-send:hover:not(:disabled){background:transparent;color:#000;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-send:disabled{opacity:.5;cursor:not-allowed}.loading-container{text-align:center;padding:var(--spacing-xl)}@media(max-width:768px){.messages-container{flex-direction:column;height:auto;min-height:500px}.conversations-sidebar{width:100%;max-height:300px;border-right:none;border-bottom:1px solid var(--color-gray-light, #e0e0e0)}.chat-area{min-height:400px}}.home-page{min-height:100vh;display:flex;flex-direction:column;background:#faf7f2}.home-page .about-section,.home-page .features-section,.home-page .about-section .container,.home-page .features-section .container{border-top:none!important;border-bottom:none!important}.home-page .section-title{border-bottom:none!important}.container{max-width:1200px;margin:0 auto;padding:0 20px}.hero-section{background:#faf7f2;color:#000;padding:60px 30px 20px;text-align:center;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-content{position:relative;z-index:1;max-width:800px;margin:0 auto}.hero-title{font-size:1.875rem;font-weight:700;margin-bottom:1rem;line-height:1.3;animation:fadeInUp .8s ease-out;color:#000;text-align:center;display:inline-block;padding:var(--spacing-xl) var(--spacing-2xl);margin:var(--spacing-lg) 0;background:#ffffffe6;border:2px solid rgba(0,0,0,.2);border-radius:16px;box-shadow:0 4px 12px #0000001a}.hero-subtitle{font-size:1.1rem;margin-bottom:0;color:#000;line-height:1.6;animation:fadeInUp 1s ease-out}.btn-primary,.btn-secondary{padding:12px 28px;font-size:.95rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary{background:transparent;color:#000;border:2px solid transparent}.btn-primary:hover{background-color:#a1887f;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.btn-secondary{background:#c4b5a01a;color:#000;border:2px solid rgba(196,181,160,.4)}.btn-secondary:hover{background:#c4b5a033;border-color:#8b735599;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.about-section{padding:20px;background:#faf7f2;position:relative;border-bottom:none;margin-bottom:0}.section-title{font-size:1.875rem;font-weight:700;text-align:center;margin-bottom:1.5rem;color:#000;animation:fadeIn 1s ease-out;opacity:0;animation-fill-mode:forwards}.about-content{max-width:900px;margin:0 auto}.about-text{font-size:1rem;line-height:1.7;color:#000;margin-bottom:1rem;text-align:center}.about-text:last-child{margin-bottom:0}.features-section{padding:20px;background:#faf7f2;position:relative;border-top:none;border-bottom:none;margin-top:0}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.feature-card{background:#fff;padding:2rem;border-radius:12px;text-align:center;transition:all .3s ease;border:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #5d40371a;border-color:#d7ccc8}.feature-card h3{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:#000}.feature-card p{font-size:.9rem;line-height:1.6;color:#000}.quick-actions-section{padding:60px 20px;background:#faf7f2;color:#000;position:relative}.quick-actions-section .section-title{text-align:center;font-size:2rem;font-weight:700;margin-bottom:2rem;color:#000}.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:800px;margin:0 auto}.home-page .shortcut-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:#faf7f2;border:1px solid rgba(0,0,0,.1);border-radius:12px;text-decoration:none;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.home-page .shortcut-card.shortcut-button{width:100%;text-align:left;cursor:pointer;font-family:inherit}.home-page .shortcut-card:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-2px);border-color:#000;background-color:#a1887f}.home-page .shortcut-icon{font-size:2rem;flex-shrink:0}.home-page .shortcut-content h4{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-xs)}.home-page .shortcut-content p{color:#000;font-size:.9rem;margin:0}.cta-section{padding:20px;background:#faf7f2;color:#000;text-align:center;position:relative}.cta-title{font-size:1.875rem;font-weight:700;margin-bottom:1rem;position:relative;z-index:1;color:#000;text-align:center;animation:fadeIn 1s ease-out .2s;opacity:0;animation-fill-mode:forwards}.cta-text{font-size:1rem;margin-bottom:1.5rem;color:#000;position:relative;z-index:1}.cta-buttons{position:relative;z-index:1;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.about-section .section-title{animation-delay:.1s;font-size:1.875rem!important;font-weight:700!important;color:#000!important;text-align:center!important}.features-section .section-title{animation-delay:.3s}@media(max-width:768px){.hero-title,.section-title,.cta-title{font-size:1.5rem}.hero-subtitle{font-size:1rem}.about-text{font-size:.95rem}.features-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:stretch}.btn-primary,.btn-secondary{width:100%}}@media(max-width:480px){.hero-section{padding:50px 20px 20px}.hero-title,.section-title,.cta-title{font-size:1.5rem}.hero-subtitle{font-size:.9rem}.about-section,.features-section,.cta-section{padding:20px}}.not-found-page{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-gray-bg)}.not-found-content{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl) var(--spacing-lg)}.not-found-main{width:100%;max-width:800px}.not-found-container{text-align:center;padding:var(--spacing-2xl);background:var(--color-white);border-radius:16px;box-shadow:var(--shadow-lg)}.not-found-number{font-size:8rem;font-weight:700;color:var(--color-brown);font-family:Merriweather,serif;line-height:1;margin-bottom:var(--spacing-lg);text-shadow:2px 2px 4px rgba(0,0,0,.1)}.not-found-title{font-size:2.5rem;color:var(--color-gray-dark);margin-bottom:var(--spacing-md);font-family:Merriweather,serif}.not-found-description{font-size:1.125rem;color:var(--color-gray-light);margin-bottom:var(--spacing-2xl);line-height:1.6}.not-found-actions{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}@media(max-width:768px){.not-found-number{font-size:6rem}.not-found-title{font-size:2rem}.not-found-description{font-size:1rem}.not-found-actions{flex-direction:column}.not-found-actions button{width:100%}}.maintenance-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-brown-very-pale) 0%,var(--color-gray-bg) 100%);padding:var(--spacing-lg)}.maintenance-container{text-align:center;max-width:600px;padding:var(--spacing-2xl);background:var(--color-white);border-radius:16px;box-shadow:var(--shadow-xl);animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.maintenance-icon{font-size:5rem;margin-bottom:var(--spacing-lg);animation:rotate 3s linear infinite}@keyframes rotate{0%,to{transform:rotate(0)}50%{transform:rotate(15deg)}}.maintenance-title{font-size:2.5rem;color:var(--color-brown-dark);margin-bottom:var(--spacing-md);font-family:Merriweather,serif}.maintenance-description{font-size:1.25rem;color:var(--color-gray);margin-bottom:var(--spacing-md);line-height:1.6}.maintenance-message{font-size:1rem;color:var(--color-gray-light);margin-bottom:var(--spacing-xl);line-height:1.6}.maintenance-info{padding-top:var(--spacing-lg);border-top:2px solid var(--color-brown-very-pale);margin-top:var(--spacing-lg)}.maintenance-time{font-size:.9rem;color:var(--color-gray-light);font-style:italic}.maintenance-password-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:2px solid var(--color-brown-very-pale)}.maintenance-password-form{margin-top:var(--spacing-md)}.maintenance-password-form .form-group{margin-bottom:var(--spacing-md)}.maintenance-password-form label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--color-gray-dark)}.maintenance-password-form input{width:100%;padding:var(--spacing-md);border:2px solid var(--color-brown-very-pale);border-radius:8px;font-size:1rem;transition:var(--transition)}.maintenance-password-form input:focus{outline:none;border-color:var(--color-brown);box-shadow:0 0 0 3px #8d6e631a}.maintenance-password-form .error-message{color:var(--color-error);font-size:.9rem;margin-top:var(--spacing-sm);padding:var(--spacing-sm);background-color:#fee;border-radius:4px;border:1px solid #fcc}@media(max-width:768px){.maintenance-icon{font-size:4rem}.maintenance-title{font-size:2rem}.maintenance-description{font-size:1.125rem}}:root{--color-brown-dark: #5D4037;--color-brown: #8D6E63;--color-brown-light: #A1887F;--color-brown-pale: #BCAAA4;--color-brown-very-pale: #D7CCC8;--color-gray-dark: #000000;--color-gray: #424242;--color-gray-light: #757575;--color-gray-pale: #bdbdbd;--color-gray-bg: #f5f5f5;--color-black: #000000;--color-white: #ffffff;--color-success: #4caf50;--color-error: #d32f2f;--color-warning: #ff9800;--color-info: #2196f3;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--transition: all .3s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;color:#000;background-color:#faf7f2;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:Merriweather,serif;color:#000}.header{background:#bcaaa4;border-bottom:none;box-shadow:none;position:relative;z-index:1000;width:100%;padding:var(--spacing-md) var(--spacing-lg)}.header-container{max-width:1400px;margin:0 auto;padding:var(--spacing-md) var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;height:80px;background:#faf7f2f2;border-radius:16px;box-shadow:none}.header-logo{display:flex;align-items:center;flex-shrink:0}.logo-link{display:flex;align-items:center;text-decoration:none;transition:var(--transition)}.logo-link:hover{text-decoration:none;opacity:.9}.logo-image{width:55px;height:55px;border-radius:50%;object-fit:cover;display:block}.logo-image.institute-logo{width:auto;height:55px;max-width:200px;border-radius:0;object-fit:contain;cursor:pointer}.logo-icon{font-size:1.75rem}.logo-text{display:inline-block}.header-nav{flex:1;display:flex;justify-content:center;align-items:center}.nav-menu{display:flex;list-style:none;gap:var(--spacing-md);align-items:center}.nav-link{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;color:#000;font-weight:500;border-radius:10px;transition:var(--transition);white-space:nowrap}.nav-link:hover{color:#000;background-color:#a1887f;text-decoration:none;border-radius:10px}.nav-link.active{background-color:transparent;color:#000;font-weight:600}.nav-icon{font-size:1.1rem}.nav-label{display:inline-block}.header-profile{display:flex;align-items:center;flex-shrink:0}.profile-dropdown{position:relative}.profile-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;cursor:pointer;border-radius:10px;transition:var(--transition);color:#000;font-family:Merriweather,serif;font-weight:500}.profile-button:hover{background-color:#a1887f}.profile-avatar{width:36px;height:36px;border-radius:50%;background-color:transparent;color:#000;display:flex;align-items:center;justify-content:center;font-weight:600;border:2px solid #8D6E63;font-size:.9rem}.profile-name{display:inline-block}.profile-arrow{font-size:.75rem;transition:var(--transition)}.profile-menu{position:absolute;top:calc(100% + var(--spacing-sm));right:0;background:#fffffff2;border:1px solid rgba(139,115,85,.3);border-radius:12px;box-shadow:var(--shadow-lg);min-width:200px;padding:var(--spacing-xs);z-index:1001;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-menu-item{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;color:#000;border:none;background:none;text-align:left;cursor:pointer;border-radius:8px;transition:var(--transition);font-family:Merriweather,serif;font-size:.95rem}.profile-menu-item:hover{background-color:#8b735526}.profile-menu-divider{height:1px;background-color:#8b735533;margin:var(--spacing-xs) 0}.logout-item{color:var(--color-error)}.logout-item:hover{background-color:#d32f2f1a}.auth-buttons{display:flex;align-items:center;gap:var(--spacing-md)}.auth-link{padding:var(--spacing-sm) var(--spacing-lg);text-decoration:none;border-radius:8px;font-weight:500;transition:var(--transition);font-family:Merriweather,serif}.auth-link.login{color:#000;border:1px solid #8B7355;background-color:#ffffff80}.auth-link.login:hover{background-color:#a1887f;border-color:#a1887f;color:#000}.auth-link.register{background-color:transparent;color:#000;border:2px solid transparent}.auth-link.register:hover{background-color:#a1887f}.burger-menu{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:var(--spacing-sm);z-index:1002}.burger-line{width:25px;height:3px;background-color:#a1887f;border-radius:3px;transition:var(--transition)}.burger-menu.active .burger-line:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.burger-menu.active .burger-line:nth-child(2){opacity:0}.burger-menu.active .burger-line:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.mobile-menu{display:none;position:fixed;top:calc(70px + var(--spacing-md) * 2 + 16px);left:var(--spacing-lg);right:var(--spacing-lg);background:#fffffff2;border-radius:16px;box-shadow:var(--shadow-lg);z-index:999;max-height:calc(100vh - 100px);overflow-y:auto}.mobile-menu.active{display:block}.mobile-nav-menu{list-style:none;padding:var(--spacing-md);margin:0}.mobile-nav-menu li{margin-bottom:var(--spacing-sm);list-style:none}.mobile-nav-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);text-decoration:none;color:#000;font-weight:500;border-radius:10px;transition:var(--transition)}.mobile-nav-link:hover{color:#000;text-decoration:none}.mobile-nav-link.active{background-color:#8b735533;color:#000}.mobile-auth-buttons{padding:var(--spacing-md);border-top:1px solid var(--color-gray-pale);display:flex;flex-direction:column;gap:var(--spacing-sm)}.mobile-auth-link{padding:var(--spacing-md);text-decoration:none;border-radius:8px;font-weight:500;text-align:center;transition:var(--transition);font-family:Merriweather,serif}.mobile-auth-link.login{color:#000;border:1px solid #8B7355;background-color:#ffffff80}.mobile-auth-link.login:hover{background-color:#a1887f;border-color:#a1887f;color:#000}.mobile-auth-link.register{background-color:transparent;color:#000;border:2px solid transparent}.mobile-auth-link.register:hover{background-color:#a1887f}.mobile-nav-menu li:last-child{margin-bottom:0}@media(max-width:1024px){.header-container{padding:var(--spacing-sm) var(--spacing-md)}.nav-link{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.profile-name{display:none}.nav-menu{gap:var(--spacing-sm)}.users-table,.sessions-table,.homeworks-table{padding:var(--spacing-lg)}.users-table table,.sessions-table table,.homeworks-table table{min-width:800px}.users-table th,.sessions-table th,.homeworks-table th,.users-table td,.sessions-table td,.homeworks-table td{padding:var(--spacing-sm) var(--spacing-md)}}@media(min-width:901px){.header-nav{display:flex!important}.burger-menu{display:none!important}.auth-buttons{display:flex!important}}@media(max-width:900px){.header{padding:var(--spacing-sm) var(--spacing-md)}.header-container{height:60px;padding:var(--spacing-sm) var(--spacing-md);border-radius:12px}.logo-text{font-size:1rem}.header-nav,.auth-buttons{display:none}.burger-menu{display:flex}.mobile-menu{top:calc(60px + var(--spacing-sm) * 2 + 12px);left:var(--spacing-md);right:var(--spacing-md);border-radius:12px}.profile-name{display:none}}@media(min-width:769px)and (max-width:900px){.header-container{height:80px}}.footer{background:#bcaaa4;margin-top:auto;padding:var(--spacing-md) var(--spacing-lg);width:100%}.footer-container{max-width:1400px;margin:0 auto;padding:var(--spacing-md) var(--spacing-xl);background:#faf7f2e6;border-radius:16px;box-shadow:none}.footer-content{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);align-items:start}.footer-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-left{text-align:left}.footer-center{text-align:center}.footer-right{text-align:right}.footer-section h4{color:#000;font-weight:600;font-size:1rem;margin-bottom:var(--spacing-xs)}.footer-section p{color:#000;font-size:.9rem;line-height:1.6}.footer-section ul{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-xs)}.footer-center ul{align-items:center}.footer-right ul{align-items:flex-end}.footer-section ul li a,.footer-section ul li Link{color:#000;text-decoration:none;transition:var(--transition);font-size:.9rem;padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px;display:inline-block;border:none;margin:2px 0}.footer-section ul li a:hover,.footer-section ul li Link:hover{color:#000;background-color:#8b73551a}.footer-section ul li strong{font-weight:600;margin-right:.3rem}.footer-section ul li{line-height:1.6;margin-bottom:var(--spacing-xs)}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.value-card{background:var(--color-gray-bg);border:1px solid var(--color-gray-pale);border-radius:12px;padding:var(--spacing-lg);transition:var(--transition)}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.value-card h3{color:#000;font-weight:600;font-size:1.25rem;margin-bottom:var(--spacing-md);margin-top:0}.value-card p{color:#000;line-height:1.8;margin-bottom:0}.features-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.feature-item{background:var(--color-gray-bg);border:1px solid var(--color-gray-pale);border-radius:12px;padding:var(--spacing-lg);transition:var(--transition)}.feature-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.feature-item h3{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-sm);margin-top:0}.feature-item p{color:#000;line-height:1.8;margin-bottom:0}@media(max-width:1024px){.footer-container{padding:var(--spacing-md) var(--spacing-lg)}.footer-content{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.footer-center{text-align:left}.footer-center ul{align-items:flex-start}.footer-section h4{font-size:.95rem}.footer-section ul li a,.footer-section ul li Link{font-size:.85rem}}@media(min-width:778px)and (max-width:1018px){.footer-container{padding:var(--spacing-md)}.footer-content{grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.footer-left,.footer-center,.footer-right{text-align:left}.footer-center ul,.footer-right ul{align-items:flex-start}.footer-section h4{font-size:.85rem;margin-bottom:var(--spacing-xs)}.footer-section ul{gap:var(--spacing-xs)}.footer-section ul li a,.footer-section ul li Link{font-size:.75rem;padding:4px 6px}}@media(max-width:768px){.footer{padding:var(--spacing-sm) var(--spacing-md)}.footer-container{padding:var(--spacing-md);border-radius:12px;margin:0 var(--spacing-sm);max-width:calc(100% - var(--spacing-sm) * 2)}.footer-content{grid-template-columns:1fr;gap:var(--spacing-md)}.footer-left,.footer-center,.footer-right{text-align:left}.footer-center ul,.footer-right ul{align-items:flex-start}.footer-section h4{font-size:.95rem;margin-bottom:var(--spacing-xs)}.footer-section ul li a,.footer-section ul li Link{font-size:.85rem;padding:var(--spacing-xs)}.values-grid,.features-list{grid-template-columns:1fr}}@media(max-width:480px){.footer{padding:var(--spacing-xs) var(--spacing-sm)}.footer-container{padding:var(--spacing-sm);border-radius:8px;margin:0 var(--spacing-xs);max-width:calc(100% - var(--spacing-xs) * 2)}.footer-content{gap:var(--spacing-sm)}.footer-section h4{font-size:.9rem;margin-bottom:var(--spacing-xs)}.footer-section ul{gap:var(--spacing-xs)}.footer-section ul li a,.footer-section ul li Link{font-size:.8rem;padding:4px 8px}}.page-container{min-height:calc(100vh - 140px);display:flex;flex-direction:column;background:linear-gradient(135deg,var(--color-gray-bg) 0%,var(--color-white) 100%);padding:var(--spacing-lg) 0}.page-content{flex:1;max-width:1400px;margin:0 auto;width:100%;padding:0 var(--spacing-lg)}.page-main{background:var(--color-white);border-radius:16px;padding:var(--spacing-2xl);box-shadow:var(--shadow-sm);margin-top:var(--spacing-lg)}.page-main h1{color:#000;font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xl);margin-top:0}.institutes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.institute-card{background:var(--color-white);border-radius:16px;padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:var(--transition);cursor:pointer;border:1px solid rgba(141,110,99,.2);display:flex;flex-direction:column;gap:var(--spacing-md)}.institute-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:#8b735580}.institute-card h2{color:#000;font-size:1.75rem;font-weight:700;margin:0;padding-bottom:var(--spacing-md);border-bottom:2px solid rgba(196,181,160,.2)}.institute-card p{color:#000;margin:0;line-height:1.6;font-size:.95rem}.institute-stats{display:flex;gap:var(--spacing-lg);margin:var(--spacing-sm) 0;padding:var(--spacing-md);background:linear-gradient(135deg,#c4b5a01a,#b8a0821a);border-radius:10px;justify-content:space-around}.institute-stats span{color:#000;font-weight:600;font-size:.95rem}.institute-card .btn-secondary{margin-top:auto;width:100%;text-align:center;justify-content:center}.institute-info{background:linear-gradient(135deg,#c4b5a01a,#b8a0821a);padding:var(--spacing-xl);border-radius:16px;margin-bottom:var(--spacing-xl);border:1px solid rgba(196,181,160,.2)}.institute-info p{margin-bottom:var(--spacing-md);color:#000;font-size:1rem;line-height:1.8}.institute-info p:last-child{margin-bottom:0}.institute-info strong{color:#000;font-weight:600;margin-right:var(--spacing-sm)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-xl);margin:var(--spacing-2xl) 0}.stat-card{background:linear-gradient(135deg,#c4b5a0,#b8a082);border-radius:16px;padding:var(--spacing-xl);text-align:center;box-shadow:var(--shadow-md);transition:var(--transition);border:2px solid rgba(255,255,255,.2)}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:#fff6}.stat-card h3{font-size:3rem;color:#000;margin:0;font-weight:700;line-height:1}.stat-card p{color:#000;margin-top:var(--spacing-md);font-weight:600;font-size:1rem;margin-bottom:0;text-transform:uppercase;letter-spacing:.5px}.section{margin:var(--spacing-2xl) 0;padding-top:var(--spacing-xl)}.section:first-of-type{margin-top:0;padding-top:0}.section h2{color:#000;font-size:1.875rem;font-weight:700;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:3px solid rgba(196,181,160,.4)}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-lg);width:95%;max-width:1400px;margin-left:auto;margin-right:auto}.class-card{background:var(--color-white);border-radius:16px;padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid rgba(141,110,99,.2);transition:var(--transition)}.class-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);border-color:#8b735566}.class-card h3{color:#000;font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-md);margin-top:0;padding-bottom:var(--spacing-sm);border-bottom:2px solid rgba(196,181,160,.2)}.class-card p{color:#000;margin-bottom:var(--spacing-sm);line-height:1.7;font-size:.95rem}.class-card p:last-child{margin-bottom:0}.class-card strong{color:#000;font-weight:600}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(196,181,160,.2)}.page-header h1{margin:0;color:#000;font-size:2.25rem;font-weight:700}.page-header-actions{display:flex;gap:var(--spacing-md);align-items:center}.empty-state{text-align:center;padding:var(--spacing-2xl);color:#000;background:#c4b5a00d;border-radius:16px;border:2px dashed rgba(196,181,160,.3)}.empty-state p{font-size:1.25rem;margin-bottom:var(--spacing-xl);color:#000}.loading{text-align:center;padding:var(--spacing-2xl);color:#000;font-size:1.125rem;font-weight:500}@media(max-width:1024px){.institutes-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.classes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:768px){.page-content{padding:0 var(--spacing-md)}.page-main{padding:var(--spacing-xl);border-radius:12px}.page-main h1,.page-header h1{font-size:1.75rem}.institutes-grid,.classes-grid,.materials-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.material-card{padding:var(--spacing-lg)}.material-header{flex-direction:column;gap:var(--spacing-sm)}.material-header h3{padding-right:0;font-size:1.25rem}.material-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.material-actions button{flex:1;min-width:100px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.stat-card h3{font-size:2.25rem}.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.page-header-actions{width:100%;flex-direction:column}.page-header-actions button{width:100%}.section h2,.institute-card h2{font-size:1.5rem}.class-card h3{font-size:1.25rem}}@media(max-width:480px){.btn-primary,.btn-submit,.btn-create-user,.btn-create-announcement,.btn-generate-invoice,.btn-add-session,.btn-add-homework,.btn-create-class,.btn-add-support,.btn-add-students,.btn-secondary,.btn-cancel,.btn-danger,.btn-edit,.btn-delete,.btn-view-students,.btn-status,.btn-approve,.btn-reject,.btn-block,.btn-unblock,button:not(.admin-tab-button):not(.tab-button):not(.profile-button):not(.burger-menu):not(.modal-close):not(.faq-question){font-size:.8125rem;padding:var(--spacing-xs) var(--spacing-sm);min-height:36px;line-height:1.4}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}h4{font-size:1rem}p,span,div,label{font-size:.875rem}.stats-grid{grid-template-columns:1fr}.institute-stats{flex-direction:column;gap:var(--spacing-sm);text-align:center}}.login-container,.register-container,.forgot-password-page,.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--color-gray-bg) 0%,var(--color-white) 100%)}.forgot-password-container,.reset-password-container{width:100%;max-width:500px}.login-card,.register-card,.forgot-password-card,.reset-password-card{background:var(--color-white);border-radius:16px;padding:var(--spacing-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:500px;margin:0 auto}.login-card h1,.register-card h1,.forgot-password-card h2,.reset-password-card h2{color:#000;font-weight:700;font-size:2rem;text-align:center;margin-bottom:var(--spacing-lg)}.forgot-password-card p,.reset-password-card p{color:#000;text-align:center;margin-bottom:var(--spacing-lg);font-size:.95rem}form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.form-group:last-of-type{margin-bottom:var(--spacing-xl)}.form-group label{color:#000;font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs);font-family:Merriweather,serif}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-gray-pale);border-radius:12px;font-family:Merriweather,serif;font-size:1rem;color:#000;transition:var(--transition);background-color:var(--color-white)}.form-group textarea{resize:vertical;min-height:100px;line-height:1.6}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #96da761a}.form-group input::placeholder,.form-group textarea::placeholder{color:#000;font-style:italic}.form-group input.disabled-input,.form-group select:disabled,.form-group textarea:disabled{background-color:var(--color-gray-bg);cursor:not-allowed;opacity:.7}.form-group small{color:#000;font-size:.875rem;margin-top:var(--spacing-xs);font-style:italic}button[type=submit]{width:100%;margin-top:var(--spacing-lg)}.form-actions,form .modal-actions,form .modal-footer{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid rgba(196,181,160,.2);flex-wrap:wrap}.form-actions button,form .modal-actions button,form .modal-footer button{flex:1;min-width:150px;margin:0}.alert,.error-message,.success-message,.warning-message,.info-message{position:relative;padding:var(--spacing-md) var(--spacing-lg);border-radius:12px;font-size:.95rem;margin-bottom:var(--spacing-md);display:flex;align-items:flex-start;gap:var(--spacing-sm);box-shadow:var(--shadow-md);animation:slideInDown .4s ease-out;transition:var(--transition);border-left:4px solid}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{box-shadow:var(--shadow-md)}50%{box-shadow:var(--shadow-lg),0 0 0 4px #8d6e6333}}.alert:before,.error-message:before,.success-message:before,.warning-message:before,.info-message:before{content:"";width:20px;height:20px;flex-shrink:0;margin-top:2px;background-size:contain;background-repeat:no-repeat;background-position:center}.error-message,.alert-error{background:linear-gradient(135deg,#d32f2f1a,#d32f2f0d);color:var(--color-error);border-left-color:var(--color-error);border:1px solid rgba(211,47,47,.2)}.error-message:before,.alert-error:before{content:"⚠️";font-size:1.2rem}.error-message:hover,.alert-error:hover{background:linear-gradient(135deg,#d32f2f26,#d32f2f14);transform:translate(4px);box-shadow:var(--shadow-lg)}.success-message,.alert-success{background:linear-gradient(135deg,#4caf501a,#4caf500d);color:#2e7d32;border-left-color:var(--color-success);border:1px solid rgba(76,175,80,.2)}.success-message:before,.alert-success:before{content:"✓";font-size:1.2rem;color:var(--color-success);font-weight:700}.success-message:hover,.alert-success:hover{background:linear-gradient(135deg,#4caf5026,#4caf5014);transform:translate(4px);box-shadow:var(--shadow-lg)}.success-message p{margin:0;color:#2e7d32}.warning-message,.alert-warning{background:linear-gradient(135deg,#ff98001a,#ff98000d);color:#e65100;border-left-color:var(--color-warning);border:1px solid rgba(255,152,0,.2)}.warning-message:before,.alert-warning:before{content:"⚠";font-size:1.2rem;color:var(--color-warning)}.warning-message:hover,.alert-warning:hover{background:linear-gradient(135deg,#ff980026,#ff980014);transform:translate(4px);box-shadow:var(--shadow-lg)}.info-message,.alert-info{background:linear-gradient(135deg,#2196f31a,#2196f30d);color:#1565c0;border-left-color:var(--color-info);border:1px solid rgba(33,150,243,.2)}.info-message:before,.alert-info:before{content:"ℹ️";font-size:1.2rem}.info-message:hover,.alert-info:hover{background:linear-gradient(135deg,#2196f326,#2196f314);transform:translate(4px);box-shadow:var(--shadow-lg)}.alert-pulse{animation:slideInDown .4s ease-out,pulse 2s ease-in-out infinite}.alert-dismissible{padding-right:var(--spacing-2xl)}.alert-close{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:none;border:none;font-size:1.5rem;line-height:1;color:inherit;opacity:.6;cursor:pointer;padding:var(--spacing-xs);transition:var(--transition);border-radius:4px}.alert-close:hover{opacity:1;background-color:#0000001a;transform:scale(1.1)}.alert-close:active{transform:scale(.95)}.alert-sm,.error-message-sm,.success-message-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;border-radius:8px}.alert-lg,.error-message-lg,.success-message-lg{padding:var(--spacing-lg) var(--spacing-xl);font-size:1.1rem;border-radius:16px}.alert-elevated{box-shadow:var(--shadow-xl)}@media(max-width:768px){.alert,.error-message,.success-message,.warning-message,.info-message{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.alert:before,.error-message:before,.success-message:before,.warning-message:before,.info-message:before{width:18px;height:18px}}.login-footer,.forgot-password-footer,.reset-password-footer{margin-top:var(--spacing-lg);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-sm)}.login-footer a,.forgot-password-footer a,.reset-password-footer a{color:#000;text-decoration:none;font-weight:500;transition:var(--transition)}.login-footer a:hover,.forgot-password-footer a:hover,.reset-password-footer a:hover{color:#000;text-decoration:none}.login-footer p{color:#000;font-size:.95rem}.login-footer p a{color:#000;font-weight:600}@media(max-width:768px){.login-card,.register-card,.forgot-password-card,.reset-password-card{padding:var(--spacing-xl);border-radius:12px}.login-card h1,.register-card h1,.forgot-password-card h2,.reset-password-card h2{font-size:1.75rem}}.dashboard,.admin-dashboard,.profile-page,.calendar-page,.homework-page,.invoice-page,.support-page,.sessions-page,.classes-page,.change-password-page,.communications-page,.legal-page,.faq-page,.help-page,.privacy-page{min-height:100vh;display:flex;flex-direction:column}.dashboard-content,.admin-dashboard-content,.profile-content,.calendar-page-content,.homework-page-content,.invoice-page-content,.support-page-content,.sessions-page-content,.classes-page-content,.change-password-content,.communications-content,.legal-content,.faq-content,.help-content,.privacy-content{flex:1;max-width:1600px;margin:0 auto;width:100%;padding:var(--spacing-2xl) var(--spacing-xl);padding-bottom:calc(var(--spacing-2xl) + 60px)}.profile-main{background:var(--color-white);border-radius:12px;padding:var(--spacing-2xl);box-shadow:var(--shadow-sm)}.profile-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale)}.profile-header h1{color:#000;font-weight:700;font-size:2rem;margin-bottom:var(--spacing-md)}.profile-avatar-large{width:100px;height:100px;border-radius:50%;background-color:transparent;color:#000;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:2rem;margin:0 auto var(--spacing-md);border:3px solid #8D6E63}.profile-header h2{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-sm)}.profile-role{color:#000;font-size:1rem}.profile-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-gray-pale);padding-bottom:var(--spacing-md)}.tab-button{padding:var(--spacing-sm) var(--spacing-lg);background:none;border:none;border-bottom:2px solid transparent;color:#000;font-family:Merriweather,serif;font-weight:500;font-size:.95rem;cursor:pointer;transition:var(--transition);margin-bottom:calc(-1 * var(--spacing-md) - 2px)}.tab-button:hover{color:#000;background-color:#a1887f4d;border-bottom-color:#a1887f}.tab-button.active{color:#000;border-bottom-color:#000;font-weight:600}.profile-tab-content{min-height:300px}.profile-form-container h3,.pricing-section h3,.invoices-section h3{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-lg)}.profile-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xl)}.pricing-section,.invoices-section{padding:var(--spacing-lg) 0}.pricing-card{background:var(--color-gray-bg);border-radius:8px;padding:var(--spacing-xl);border:1px solid var(--color-gray-pale)}.pricing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.pricing-label{color:#000;font-weight:600}.pricing-value{color:#000;font-weight:700;font-size:1.5rem}.pricing-note{color:#000;font-size:.9rem;line-height:1.6}.invoices-list{display:grid;gap:var(--spacing-lg)}.invoice-card{background:var(--color-white);border:1px solid var(--color-gray-pale);border-radius:8px;padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.invoice-card .invoice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-gray-pale)}.invoice-card .invoice-header h3,.invoice-card .invoice-header h4{color:#000;font-weight:600;margin:0}.invoice-amount{color:#000;font-weight:700;font-size:1.25rem}.invoice-details p{color:#000;margin-bottom:var(--spacing-sm)}.loading,.no-invoices{text-align:center;padding:var(--spacing-xl);color:#000}.dashboard-main h2,.calendar-main h2,.homework-main h2,.invoice-main h2,.support-main h2,.sessions-main h2,.classes-main h2,.change-password-main h2,.communications-main h2,.admin-main h2{color:#000;font-weight:700;font-size:1.875rem;margin-bottom:var(--spacing-xl)}.classes-header,.support-header,.sessions-header,.homework-header,.calendar-header,.invoice-main .invoice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale)}.classes-header h2,.support-header h2,.sessions-header h2,.homework-header h2,.invoice-main .invoice-header h2,.calendar-header h2{margin-bottom:0;padding-bottom:0;border-bottom:none}.dashboard-main,.calendar-main,.homework-main,.invoice-main,.support-main,.sessions-main,.change-password-main,.communications-main,.admin-main{background:var(--color-white);border-radius:12px;padding:var(--spacing-2xl);box-shadow:var(--shadow-sm)}.classes-main{background:var(--color-white);border-radius:12px;padding:var(--spacing-2xl);box-shadow:var(--shadow-sm);width:95%;max-width:1400px;margin:0 auto}@media(max-width:768px){.dashboard-content,.admin-dashboard-content,.profile-content,.calendar-page-content,.homework-page-content,.invoice-page-content,.support-page-content,.sessions-page-content,.classes-page-content,.change-password-content,.communications-content{padding:var(--spacing-lg) var(--spacing-md);padding-bottom:calc(var(--spacing-xl) + 60px)}.profile-main,.dashboard-main,.calendar-main,.homework-main,.invoice-main,.support-main,.sessions-main,.change-password-main,.communications-main,.admin-main{padding:var(--spacing-lg)}.classes-main{width:100%;max-width:100%;padding:var(--spacing-lg)}.form-row{grid-template-columns:1fr}.form-actions .btn-submit{width:100%}.classes-header,.support-header,.sessions-header,.homework-header,.invoice-main .invoice-header,.calendar-header,.communications-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}}.mobile-menu-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:998}.mobile-menu-overlay.active{display:block}@media(max-width:768px){.mobile-menu-overlay.active{display:block}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-white);border:1px solid var(--color-gray-pale);border-radius:12px;padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:var(--transition);text-align:center}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card h3{color:#000;font-weight:500;font-size:1rem;margin-bottom:var(--spacing-md)}.stat-number{color:#000;font-weight:700;font-size:2.5rem;display:block}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);width:95%;max-width:1400px;margin:0 auto}.class-card{background:var(--color-white);border:1px solid var(--color-gray-pale);border-radius:12px;padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:var(--transition);display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0;overflow:hidden}.class-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.class-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(196,181,160,.2);gap:var(--spacing-lg);flex-wrap:wrap}.class-header h3{color:#000;font-weight:600;font-size:1.25rem;margin:0;flex:1;min-width:200px;word-wrap:break-word}.class-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0;align-items:center}.class-actions button{flex:0 0 auto;white-space:nowrap;min-width:100px}.class-info{margin-bottom:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-sm)}.class-info p{color:#000;margin-bottom:0;font-size:.95rem;line-height:1.6}.class-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid rgba(196,181,160,.2);flex-wrap:wrap;gap:var(--spacing-md)}.no-classes{text-align:center;padding:var(--spacing-2xl);color:#000}.no-classes p{margin-bottom:var(--spacing-sm)}.homeworks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.materials-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}@media(max-width:768px){.materials-grid{grid-template-columns:1fr}}.material-card{background:var(--color-white);border-radius:16px;padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid rgba(141,110,99,.2);transition:var(--transition);display:flex;flex-direction:column;gap:var(--spacing-md);cursor:pointer}.material-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:#8b735566}.material-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-md);border-bottom:2px solid rgba(196,181,160,.2)}.material-header h3{color:#000;font-size:1.5rem;font-weight:700;margin:0;flex:1;padding-right:var(--spacing-md)}.material-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.material-info{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.material-info p{color:#000;margin:0;font-size:.95rem;line-height:1.6}.material-info strong{color:#000;font-weight:600;margin-right:var(--spacing-xs)}.material-teacher,.material-student,.material-subject,.material-date{padding:var(--spacing-xs) 0}.material-description{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:#c4b5a00d;border-radius:8px;border-left:3px solid rgba(196,181,160,.3)}.material-description p{color:#000;margin:0;line-height:1.7;font-size:.95rem}.material-content{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-gray-bg);border-radius:8px;border:1px solid var(--color-gray-pale)}.material-content h4{color:#000;font-weight:600;font-size:1.1rem;margin:0 0 var(--spacing-sm) 0}.material-content div{color:#000;line-height:1.7;font-size:.95rem}.material-file{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:#96da760d;border-radius:8px;border-left:3px solid #000000}.material-file h4{color:#000;font-weight:600;font-size:1.1rem;margin:0 0 var(--spacing-sm) 0}.file-link{color:#000;text-decoration:none;font-weight:600;transition:var(--transition);display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px;border:1px solid rgba(141,110,99,.2)}.file-link:hover{color:#000;text-decoration:underline;border-color:#8d6e6366;background-color:#8d6e630d}.no-materials,.no-sessions{text-align:center;padding:var(--spacing-2xl);color:#000;font-style:italic}.no-materials p,.no-sessions p{margin-bottom:var(--spacing-sm)}.destination-preview{margin:var(--spacing-md) 0;padding:var(--spacing-md);background:var(--color-gray-bg);border-radius:12px;border:2px solid var(--color-gray-pale)}.destination-info{padding:var(--spacing-sm) var(--spacing-md);border-radius:8px;font-size:.95rem;line-height:1.6}.destination-info strong{color:#000;font-weight:600;margin-right:var(--spacing-xs)}.destination-all{background-color:#2196f31a;border-left:4px solid #2196f3;color:#000}.destination-class{background-color:#4caf501a;border-left:4px solid #4caf50;color:#000}.destination-students{background-color:#9c27b01a;border-left:4px solid #9c27b0;color:#000}.selected-students-list{margin:var(--spacing-sm) 0 0 var(--spacing-lg);padding:0;list-style:none}.selected-students-list li{padding:var(--spacing-xs) 0;color:#000}.selected-students-list li:before{content:"• ";color:#000;font-weight:700;margin-right:var(--spacing-xs)}.sessions-list{margin-top:var(--spacing-xl)}.session-datetime{line-height:1.6}.session-datetime strong{color:#000;font-weight:600;display:inline-block;min-width:60px}.session-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.session-actions .btn-edit,.session-actions .btn-delete{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;min-height:44px;border-radius:10px}.meeting-link{color:#000;text-decoration:none;font-weight:600;transition:var(--transition);display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px;border:1px solid rgba(141,110,99,.2)}.meeting-link:hover{border-color:#8d6e6366;background-color:#8d6e630d;color:#000;text-decoration:underline}.no-link{color:#000;font-style:italic}button:not(.admin-tab-button):not(.tab-button):not(.profile-button):not(.burger-menu):not(.modal-close):not(.faq-question):not(.btn-edit),.btn-primary,.btn-submit,.btn-create-user,.btn-create-announcement,.btn-generate-invoice,.btn-add-session,.btn-add-homework,.btn-create-class,.btn-add-support,.btn-add-students,.btn-secondary,.btn-cancel,.btn-danger,.btn-edit,.btn-delete,.btn-view-students,.btn-status,.btn-approve,.btn-reject,.btn-block,.btn-unblock{font-family:Merriweather,serif;font-weight:600;font-size:1rem;border:1px solid rgba(141,110,99,.2);border-radius:10px;padding:var(--spacing-md) var(--spacing-xl);cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-align:center;white-space:nowrap;min-height:44px;line-height:1.5}.btn-primary,.btn-submit,.btn-create-user,.btn-create-announcement,.btn-generate-invoice,.btn-add-session,.btn-add-homework,.btn-create-class,.btn-add-support,.btn-status{background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}button:not(.admin-tab-button):not(.tab-button):not(.profile-button):not(.burger-menu):not(.modal-close):not(.faq-question):hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn-submit:hover:not(:disabled),.btn-create-user:hover:not(:disabled),.btn-generate-invoice:hover:not(:disabled),.btn-add-session:hover:not(:disabled),.btn-add-homework:hover:not(:disabled),.btn-create-class:hover:not(:disabled),.btn-add-support:hover:not(:disabled),.btn-add-students:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-cancel:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-edit:hover:not(:disabled),.btn-delete:hover:not(:disabled),.btn-view-students:hover:not(:disabled),.btn-status:hover:not(:disabled),.btn-approve:hover:not(:disabled),.btn-reject:hover:not(:disabled),.btn-block:hover:not(:disabled),.btn-unblock:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}button:not(.admin-tab-button):not(.tab-button):not(.profile-button):not(.burger-menu):not(.modal-close):not(.faq-question):disabled,.btn-primary:disabled,.btn-submit:disabled,.btn-secondary:disabled,.btn-cancel:disabled,.btn-danger:disabled,.btn-edit:disabled,.btn-delete:disabled,.btn-view-students:disabled,.btn-status:disabled,.btn-approve:disabled,.btn-reject:disabled,.btn-block:disabled,.btn-unblock:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-actions .btn-submit,.modal-actions .btn-primary,.modal-actions .btn-status,.modal-actions button[type=submit]:not(.btn-cancel):not(.btn-delete-small):not(.btn-edit-small),.modal-footer .btn-submit,.modal-footer .btn-primary,.modal-footer .btn-status,.modal-footer button[type=submit]:not(.btn-cancel):not(.btn-delete-small):not(.btn-edit-small){background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}.modal-actions .btn-submit:hover:not(:disabled),.modal-actions .btn-primary:hover:not(:disabled),.modal-actions .btn-status:hover:not(:disabled),.modal-actions button[type=submit]:not(.btn-cancel):not(.btn-delete-small):not(.btn-edit-small):hover:not(:disabled),.modal-footer .btn-submit:hover:not(:disabled),.modal-footer .btn-primary:hover:not(:disabled),.modal-footer .btn-status:hover:not(:disabled),.modal-footer button[type=submit]:not(.btn-cancel):not(.btn-delete-small):not(.btn-edit-small):hover:not(:disabled){background-color:#a1887f;color:#000;opacity:1;transform:translateY(-2px);box-shadow:var(--shadow-md)}.modal-actions .btn-cancel,.modal-footer .btn-cancel{background-color:#c4b5a01a;color:#000;border:2px solid rgba(196,181,160,.4)}.modal-actions .btn-cancel:hover:not(:disabled),.modal-footer .btn-cancel:hover:not(:disabled){background-color:#c4b5a033;border-color:#8b735599;color:#000;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled),.btn-submit:hover:not(:disabled),.btn-create-user:hover:not(:disabled),.btn-generate-invoice:hover:not(:disabled),.btn-add-session:hover:not(:disabled),.btn-add-homework:hover:not(:disabled),.btn-create-class:hover:not(:disabled),.btn-add-support:hover:not(:disabled),.btn-add-students:hover:not(:disabled),.btn-status:hover:not(:disabled){background-color:#a1887f;color:#000;opacity:1}.btn-secondary,.btn-cancel{background-color:#c4b5a01a;color:#000;border:2px solid rgba(196,181,160,.4)}.btn-secondary:hover:not(:disabled),.btn-cancel:hover:not(:disabled){background-color:#c4b5a033;border-color:#8b735599;color:#000}.btn-danger{background-color:var(--color-error);color:#000;border:2px solid var(--color-error)}.btn-danger:hover:not(:disabled){background-color:#b71c1c;border-color:#b71c1c}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px;font-size:.875rem;font-weight:500;text-transform:capitalize}.badge-approved{background-color:#4caf501a;color:#000;border:1px solid rgba(76,175,80,.3)}.badge-pending{background-color:#ff98001a;color:var(--color-warning);border:1px solid rgba(255,152,0,.3)}.badge-rejected{background-color:#d32f2f1a;color:var(--color-error);border:1px solid rgba(211,47,47,.3)}.badge-blocked{background-color:#9e9e9e1a;color:#000;border:1px solid rgba(158,158,158,.3)}.btn-edit{background-color:#8d6e6326;color:#000;border:1px solid rgba(141,110,99,.3);opacity:.85;border-radius:10px;padding:var(--spacing-md) var(--spacing-xl);min-height:44px;font-size:1rem;font-weight:600}.btn-edit:hover:not(:disabled){background-color:#a1887f;color:#000;opacity:1;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-delete{background-color:transparent;color:var(--color-error, #dc3545);border:1px solid var(--color-error, #dc3545)}.btn-delete:hover:not(:disabled){background-color:transparent;color:var(--color-error, #dc3545);border-color:var(--color-error, #dc3545)}.btn-view-students{background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}.btn-view-students:hover:not(:disabled){background-color:#a1887f;color:#000;opacity:1}.btn-add-students{background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}.btn-add-students:hover:not(:disabled){background-color:#a1887f;color:#000;opacity:1}.btn-edit-small,.btn-delete-small,.btn-cancel-small{padding:var(--spacing-sm) var(--spacing-md);border-radius:8px;font-family:Merriweather,serif;font-weight:600;font-size:.9rem;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:var(--spacing-xs);min-width:100px;justify-content:center;min-height:38px}.btn-edit-small{background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}.btn-edit-small:hover:not(:disabled){background-color:#8d6e631a;border-color:#8d6e6366;opacity:1;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-delete-small{background-color:transparent;color:var(--color-error, #dc3545);border:1px solid var(--color-error, #dc3545)}.btn-delete-small:hover:not(:disabled){background-color:transparent;color:var(--color-error, #dc3545);border-color:var(--color-error, #dc3545);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-cancel-small{background-color:var(--color-gray-light);color:#000}.btn-cancel-small:hover:not(:disabled){background-color:var(--color-gray);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-edit-small:disabled,.btn-delete-small:disabled,.btn-cancel-small:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-approve{background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}.btn-approve:hover:not(:disabled){background-color:#a1887f;color:#000;border-color:#a1887f;opacity:1}.btn-reject{background-color:transparent;color:var(--color-error, #dc3545);border:1px solid var(--color-error, #dc3545)}.btn-reject:hover:not(:disabled){background-color:transparent;color:var(--color-error, #dc3545);border-color:var(--color-error, #dc3545)}.btn-block{background-color:#8d6e6326;color:#000;border:1px solid rgba(141,110,99,.3);opacity:.85}.btn-block:hover:not(:disabled){background-color:#a1887f;color:#000;opacity:1}.btn-unblock{background-color:transparent;color:#000;border:1px solid rgba(141,110,99,.2);opacity:.85}.btn-unblock:hover:not(:disabled){background-color:#a1887f;color:#000;border-color:#a1887f;opacity:1}.month-year-filter{padding:var(--spacing-sm) var(--spacing-md);border-radius:8px;border:1px solid rgba(141,110,99,.2);font-family:Merriweather,serif;font-size:.9rem;font-weight:500;cursor:pointer;background-color:transparent;color:#000;transition:var(--transition);min-width:140px}.month-year-filter:hover{border-color:#8d6e6366;background-color:#8d6e630d}.month-year-filter:focus{outline:none;border-color:#8d6e6380;background-color:#8d6e6314;box-shadow:0 0 0 3px #8d6e631a}.month-year-filter option{background-color:var(--color-white);color:#000;padding:var(--spacing-sm)}.users-table-title,.sessions-table-title,.homeworks-table-title{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg);color:#000;font-weight:600;font-size:1.25rem}.users-table{width:95%;max-width:1400px;margin:0 auto var(--spacing-xl) auto;background:var(--color-white);border-radius:16px;overflow-x:auto;overflow-y:auto;max-height:70vh;box-shadow:var(--shadow-md);border:1px solid var(--color-gray-pale);padding:var(--spacing-lg);-webkit-overflow-scrolling:touch;position:relative}.sessions-table,.homeworks-table{width:100%;margin-bottom:var(--spacing-xl);background:var(--color-white);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--color-gray-pale);padding:var(--spacing-xl)}.users-table table,.sessions-table table,.homeworks-table table{width:100%;min-width:800px;border-collapse:separate;border-spacing:0;background:transparent}.users-table,.sessions-table,.homeworks-table{position:relative}.users-table::-webkit-scrollbar,.sessions-table::-webkit-scrollbar,.homeworks-table::-webkit-scrollbar{height:8px;width:8px}.users-table::-webkit-scrollbar-track,.sessions-table::-webkit-scrollbar-track,.homeworks-table::-webkit-scrollbar-track{background:var(--color-gray-bg);border-radius:4px}.users-table::-webkit-scrollbar-thumb,.sessions-table::-webkit-scrollbar-thumb,.homeworks-table::-webkit-scrollbar-thumb{background:var(--color-gray-pale);border-radius:4px}.users-table::-webkit-scrollbar-thumb:hover,.sessions-table::-webkit-scrollbar-thumb:hover,.homeworks-table::-webkit-scrollbar-thumb:hover{background:var(--color-gray-pale)}.users-table thead,.sessions-table thead,.homeworks-table thead{background:linear-gradient(135deg,#c4b5a0,#b8a082);border-top:none}.users-table thead tr:first-child th:first-child,.sessions-table thead tr:first-child th:first-child,.homeworks-table thead tr:first-child th:first-child{border-top-left-radius:12px}.users-table thead tr:first-child th:last-child,.sessions-table thead tr:first-child th:last-child,.homeworks-table thead tr:first-child th:last-child{border-top-right-radius:12px}.users-table th{padding:var(--spacing-sm) var(--spacing-md);text-align:left;color:#000;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid rgba(93,78,55,.3);border-top:none}.sessions-table th,.homeworks-table th{padding:var(--spacing-md) var(--spacing-lg);text-align:left;color:#000;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid rgba(93,78,55,.3);border-top:none}.users-table tbody tr:nth-child(2n),.sessions-table tbody tr:nth-child(2n),.homeworks-table tbody tr:nth-child(2n){background-color:#c4b5a01a}.users-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid rgba(189,189,189,.3);color:#000;vertical-align:middle;font-size:.9rem}.sessions-table td,.homeworks-table td{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid rgba(189,189,189,.3);color:#000;vertical-align:middle}.users-table tbody tr:hover,.sessions-table tbody tr:hover,.homeworks-table tbody tr:hover{background-color:#8b735526;transition:var(--transition)}.users-table tbody tr:last-child td,.sessions-table tbody tr:last-child td,.homeworks-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr:last-child td:first-child,.sessions-table tbody tr:last-child td:first-child,.homeworks-table tbody tr:last-child td:first-child{border-bottom-left-radius:12px}.users-table tbody tr:last-child td:last-child,.sessions-table tbody tr:last-child td:last-child,.homeworks-table tbody tr:last-child td:last-child{border-bottom-right-radius:12px}table{border-collapse:collapse}table thead{background:linear-gradient(135deg,#c4b5a0,#b8a082);border-top:none}table thead th{background:linear-gradient(135deg,#c4b5a0,#b8a082);color:#000;font-weight:600;padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:2px solid rgba(93,78,55,.3);border-top:none}table tbody tr:nth-child(2n){background-color:#c4b5a01a}table tbody td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid rgba(189,189,189,.3);color:#000}table tbody tr:hover{background-color:#8b735526;transition:var(--transition)}table tbody tr:last-child td{border-bottom:none}.invoice-items table{width:100%;border-collapse:collapse;margin-top:var(--spacing-sm);background:var(--color-white);border-radius:8px;overflow:hidden}.invoice-items thead{background:linear-gradient(135deg,#c4b5a0,#b8a082)}.invoice-items th{background:linear-gradient(135deg,#c4b5a0,#b8a082);padding:var(--spacing-sm) var(--spacing-md);text-align:left;color:#000;font-weight:600;font-size:.9rem;border-bottom:2px solid rgba(93,78,55,.3)}.invoice-items tbody tr:nth-child(2n){background-color:#c4b5a01a}.invoice-items td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid rgba(189,189,189,.3);color:#000}.invoice-items tbody tr:hover{background-color:#8b735526;transition:var(--transition)}.invoice-items tr:last-child td{border-bottom:none}.status-badge,.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-scheduled{background-color:#2196f326;color:#000;border:1px solid rgba(33,150,243,.5)}.status-present{background-color:#4caf5026;color:#000;border:1px solid rgba(76,175,80,.5)}.status-absent{background-color:#f4433626;color:#000;border:1px solid rgba(244,67,54,.5)}.status-cancelled{background-color:#9e9e9e26;color:#000;border:1px solid rgba(158,158,158,.5)}.role-student{background-color:transparent;color:#000;border:1px solid rgba(33,150,243,.5)}.role-teacher{background-color:transparent;color:#000;border:1px solid rgba(76,175,80,.5)}.role-admin{background-color:transparent;color:#000;border:1px solid rgba(156,39,176,.5)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale)}.admin-header h2{margin:0;color:#000;font-weight:700;font-size:1.875rem}.admin-tabs{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);border-bottom:2px solid var(--color-gray-pale);justify-content:space-between;width:100%}.admin-tab-button{padding:var(--spacing-md) var(--spacing-xl);border:none;background:transparent;color:#000;font-family:Merriweather,serif;font-weight:500;font-size:1rem;cursor:pointer;border-bottom:3px solid transparent;transition:var(--transition);position:relative;margin-bottom:-2px;flex:1;text-align:center}.admin-tab-button:hover{color:#000;background-color:#a1887f4d}.admin-tab-button.active{color:#000;background-color:#c4b5a033;border-bottom-color:#000;font-weight:600}.filters-section-title{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg);color:#000;font-weight:600;font-size:1.25rem}.filters-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-xl);background:var(--color-gray-bg);border-radius:16px;border:1px solid var(--color-gray-pale);box-shadow:var(--shadow-sm)}.filters{display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.filters input,.filters select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-pale);border-radius:8px;font-family:Merriweather,serif;font-size:.95rem}.action-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:center}.users-table .action-buttons .btn-block,.users-table .action-buttons .btn-delete{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8rem;min-height:auto;font-weight:500}.students-checkbox-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-gray-pale);border-radius:8px;padding:var(--spacing-md);background:var(--color-gray-bg)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);cursor:pointer;border-radius:6px;transition:var(--transition);margin-bottom:var(--spacing-xs)}.checkbox-label:hover{background-color:#c4b5a01a}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#000000}.checkbox-label span{color:#000;font-size:.95rem}.no-students{padding:var(--spacing-lg);text-align:center;color:#000;font-style:italic}.students-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(196,181,160,.2)}.students-header h3{color:#000;font-weight:600;font-size:1.5rem;margin:0;font-family:Merriweather,serif}.add-students-section{margin:var(--spacing-xl) 0;padding:var(--spacing-xl);background:var(--color-gray-bg);border-radius:12px;border:1px solid var(--color-gray-pale)}.add-students-section h4{color:#000;font-weight:600;font-size:1.25rem;margin-bottom:var(--spacing-lg);font-family:Merriweather,serif}.add-students-actions{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid rgba(196,181,160,.2);flex-wrap:wrap;justify-content:flex-end}.add-students-actions button{flex:1;min-width:150px;margin:0}.students-list{margin-top:var(--spacing-xl)}.students-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-lg)}.students-table th,.students-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-gray-pale)}.students-table th{font-weight:600;color:#000;font-family:Merriweather,serif;text-transform:uppercase;font-size:.875rem;letter-spacing:.5px}.students-table td{color:#000}.student-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:var(--spacing-lg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content,.modal-add-support,.modal-edit-support,.modal-add-session,.modal-edit-session,.modal-add-homework,.modal-create-class,.modal-edit-class,.modal-create-user,.modal-create-institute,.modal-generate-invoice,.modal-manage-pricing,.modal-manage-students{background:var(--color-white);border-radius:16px;padding:var(--spacing-2xl);max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-gray-pale)}.modal-header h2{color:#000;font-weight:700;font-size:1.75rem;margin:0;font-family:Merriweather,serif}.modal-close{background:#c4b5a01a;border:2px solid rgba(196,181,160,.3);font-size:1.75rem;color:#000;cursor:pointer;padding:var(--spacing-xs);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:var(--transition);font-weight:600;line-height:1}.modal-close:hover{background-color:#c4b5a033;border-color:#8b735580;color:#000;transform:rotate(90deg)}.modal-body{margin-bottom:var(--spacing-xl)}.modal-content form,.modal-body form,.modal-add-support form,.modal-edit-support form,.modal-add-session form,.modal-edit-session form,.modal-add-homework form,.modal-create-class form,.modal-edit-class form,.modal-create-user form,.modal-create-institute form,.modal-generate-invoice form,.modal-manage-pricing form,.modal-manage-students form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.modal-content form .form-group:last-of-type,.modal-body form .form-group:last-of-type{margin-bottom:var(--spacing-xl)}.modal-actions,.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid rgba(196,181,160,.2);margin-top:var(--spacing-lg);flex-wrap:wrap}.modal-actions button,.modal-footer button{min-width:120px;margin:0}.modal-actions button:not(:last-child),.modal-footer button:not(:last-child){margin-right:0}.event-details{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-gray-bg);border-radius:12px;border:1px solid var(--color-gray-pale)}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.classes-grid{width:100%;max-width:100%;grid-template-columns:1fr}.homeworks-grid{grid-template-columns:1fr}.classes-main{width:100%;max-width:100%}.users-table-title,.sessions-table-title,.homeworks-table-title,.filters-section-title{font-size:1.125rem;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}.users-table{width:100%;max-width:100%;font-size:.85rem;padding:var(--spacing-md);border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.btn-primary,.btn-submit,.btn-create-user,.btn-create-announcement,.btn-generate-invoice,.btn-add-session,.btn-add-homework,.btn-create-class,.btn-add-support,.btn-add-students,.btn-secondary,.btn-cancel,.btn-danger,.btn-edit,.btn-delete,.btn-view-students,.btn-status,.btn-approve,.btn-reject,.btn-block,.btn-unblock,button:not(.admin-tab-button):not(.tab-button):not(.profile-button):not(.burger-menu):not(.modal-close):not(.faq-question){font-size:.875rem;padding:var(--spacing-sm) var(--spacing-md);min-height:40px;white-space:normal;word-wrap:break-word}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}p,span,div,label{font-size:.9375rem}.sessions-table,.homeworks-table{font-size:.85rem;padding:var(--spacing-md);border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.users-table table{min-width:550px}.sessions-table table,.homeworks-table table{min-width:600px}.users-table th{padding:var(--spacing-xs) var(--spacing-xs);font-size:.7rem}.sessions-table th,.homeworks-table th{padding:var(--spacing-sm) var(--spacing-xs);font-size:.75rem;white-space:nowrap}.users-table td{padding:var(--spacing-xs) var(--spacing-xs);font-size:.65rem;white-space:nowrap}.sessions-table td,.homeworks-table td{padding:var(--spacing-sm) var(--spacing-xs);font-size:.8rem;white-space:nowrap}.session-actions{flex-direction:column;gap:var(--spacing-xs)}.session-actions .btn-edit,.session-actions .btn-delete{width:100%;font-size:.8rem}.session-datetime{font-size:.85rem}.session-datetime strong{min-width:50px;font-size:.8rem}.filters-section{padding:var(--spacing-md);border-radius:12px}.filters{flex-direction:column;gap:var(--spacing-md)}.filters input,.filters select{width:100%;padding:var(--spacing-sm) var(--spacing-md)}.admin-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.admin-tabs{flex-wrap:wrap;gap:var(--spacing-sm)}.admin-tab-button{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem;flex:1 1 calc(50% - var(--spacing-sm));min-width:0}.action-buttons{flex-direction:column;gap:var(--spacing-xs);min-width:100px}.action-buttons button{width:100%;font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap}.status-badge,.role-badge{font-size:.7rem;padding:2px 6px;white-space:nowrap}.modal-content,.modal-add-support,.modal-edit-support,.modal-add-session,.modal-edit-session,.modal-add-homework,.modal-create-class,.modal-edit-class,.modal-create-user,.modal-create-institute,.modal-generate-invoice,.modal-manage-pricing,.modal-manage-students{max-width:95%;padding:var(--spacing-lg);max-height:95vh}.modal-header h2{font-size:1.5rem}.modal-actions,.modal-footer{flex-direction:column;gap:var(--spacing-md)}.modal-actions button,.modal-footer button{width:100%;min-width:auto}.modal-actions button:not(:last-child),.modal-footer button:not(:last-child){margin-right:0;margin-bottom:0}.form-group{margin-bottom:var(--spacing-lg)}.form-group:last-of-type{margin-bottom:var(--spacing-lg)}.form-group input,.form-group select,.form-group textarea{padding:var(--spacing-sm) var(--spacing-md);font-size:.95rem}.form-actions,form .modal-actions,form .modal-footer,.add-students-actions{flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.form-actions button,form .modal-actions button,form .modal-footer button,.add-students-actions button{width:100%;min-width:auto}.students-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.add-students-section{padding:var(--spacing-lg);margin:var(--spacing-lg) 0}.student-actions{flex-direction:column;gap:var(--spacing-sm)}.student-actions button{width:100%}.btn-edit,.btn-approve,.btn-reject,.btn-block,.btn-unblock,.btn-delete{font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm)}.action-buttons{flex-direction:column}.action-buttons button{width:100%}}.homework-card{background:var(--color-white);border:1px solid rgba(141,110,99,.2);border-radius:16px;padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:var(--transition);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0;overflow:hidden}.homework-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.homework-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(196,181,160,.2);gap:var(--spacing-lg);flex-wrap:wrap}.homework-header h3{color:#000;font-weight:600;font-size:1.25rem;margin:0;flex:1;min-width:200px;word-wrap:break-word}.homework-description{color:#000;line-height:1.8;margin-bottom:var(--spacing-lg);word-wrap:break-word}.homework-due-date{color:#000;margin-bottom:var(--spacing-lg);font-size:.95rem}.homework-due-date strong{color:#000}.homework-attachment{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-gray-bg);border-radius:8px;border:1px solid var(--color-gray-pale)}.homework-attachment strong{color:#000;display:block;margin-bottom:var(--spacing-xs)}.homework-attachment a{color:#000;text-decoration:none;transition:var(--transition)}.homework-attachment a:hover{color:#000;text-decoration:underline}.teacher-note{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:#96da760d;border-radius:8px;border-left:4px solid #000000}.teacher-note strong{color:#000;display:block;margin-bottom:var(--spacing-xs)}.teacher-note p{color:#000;margin:0;line-height:1.6}.submission-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-gray-pale)}.submission-section h4{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-md)}.submission-content{margin-bottom:var(--spacing-md)}.submission-content a{color:#000;text-decoration:none;transition:var(--transition)}.submission-content a:hover{color:#000;text-decoration:underline}.submission-note{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-gray-bg);border-radius:8px}.submission-note strong{color:#000;display:block;margin-bottom:var(--spacing-xs)}.submission-note p{color:#000;margin:0;line-height:1.6}.homework-actions{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid rgba(196,181,160,.2);display:flex;flex-wrap:wrap;gap:var(--spacing-lg);align-items:center;justify-content:flex-start}.homework-actions button{flex:0 0 auto;min-width:120px}.submission-form{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-gray-bg);border-radius:8px;border:1px solid var(--color-gray-pale)}.submission-form .form-group{margin-bottom:var(--spacing-md)}.submission-form label{display:block;margin-bottom:var(--spacing-xs);color:#000;font-weight:600;font-size:.9rem}.submission-form input,.submission-form textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-gray-pale);border-radius:8px;font-family:Merriweather,serif;font-size:.95rem;transition:var(--transition)}.submission-form input:focus,.submission-form textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #96da761a}.invoice-items{margin-top:var(--spacing-md)}.invoice-items h4{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-md)}.loading{text-align:center;padding:var(--spacing-2xl);color:#000;font-size:1.1rem}.no-classes,.no-homeworks,.no-invoices,.no-sessions{text-align:center;padding:var(--spacing-2xl);color:#000}.no-classes p,.no-homeworks p,.no-invoices p,.no-sessions p{margin-bottom:var(--spacing-sm);font-size:1rem}a{color:#000;text-decoration:none;transition:var(--transition)}a:hover{color:#000;text-decoration:none}.sitemap-list a:hover,.sitemap-section a:hover{text-decoration:none}img{max-width:100%;height:auto;border-radius:8px}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-gray-bg)}::-webkit-scrollbar-thumb{background:var(--color-gray-pale);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-pale)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #000000;outline-offset:2px}button:focus,button:focus-visible,button:active,a:focus,a:focus-visible,a:active,.nav-link:focus,.nav-link:focus-visible,.nav-link:active,.tab-button:focus,.tab-button:focus-visible,.tab-button:active,.admin-tab-button:focus,.admin-tab-button:focus-visible,.admin-tab-button:active,.profile-button:focus,.profile-button:focus-visible,.profile-button:active,.auth-link:focus,.auth-link:focus-visible,.auth-link:active,.mobile-auth-link:focus,.mobile-auth-link:focus-visible,.mobile-auth-link:active,.btn:focus,.btn:focus-visible,.btn:active,[role=button]:focus,[role=button]:focus-visible,[role=button]:active{outline:none!important}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.homework-card,.class-card,.invoice-card{padding:var(--spacing-lg);gap:var(--spacing-md)}.homework-header,.class-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.homework-header h3,.class-header h3{min-width:100%}.class-actions,.homework-actions{flex-direction:column;width:100%;gap:var(--spacing-md)}.class-actions button,.homework-actions button{width:100%;min-width:100%}.submission-form{padding:var(--spacing-sm)}}.dashboard-shortcuts{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-gray-pale)}.dashboard-shortcuts h3{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-lg)}.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg)}.shortcuts-grid-2-rows{grid-template-columns:repeat(2,1fr)}.shortcuts-grid-2x2{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:var(--spacing-lg);width:100%}.shortcuts-grid-2x2 .shortcut-card{width:100%;box-sizing:border-box}.shortcut-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-white);border:1px solid rgba(141,110,99,.2);border-radius:12px;text-decoration:none;transition:var(--transition);box-shadow:var(--shadow-sm)}.shortcut-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:#000}.shortcut-card.shortcut-button{width:100%;text-align:left;cursor:pointer;font-family:inherit}.shortcut-card.shortcut-button:hover{background:#c4b5a00d;border-color:#8b73554d}.shortcut-icon{font-size:2rem;flex-shrink:0}.shortcut-content h4{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-xs)}.shortcut-content p{color:#000;font-size:.9rem;margin:0}.dashboard-pricing-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-gray-pale)}.dashboard-pricing-section h3{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-md)}.file-upload-section{margin-bottom:var(--spacing-md)}.file-input{display:none}.file-upload-label{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-gray-bg);border:2px dashed var(--color-gray-pale);border-radius:10px;cursor:pointer;transition:var(--transition);font-family:Merriweather,serif;font-weight:500;color:#000;width:100%;justify-content:center}.file-upload-label:hover{background:#c4b5a01a;border-color:#000;color:#000}.file-upload-label:active{transform:scale(.98)}.file-upload-icon{font-size:1.25rem}.file-selected{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:#4caf501a;border:1px solid rgba(76,175,80,.3);border-radius:10px;margin-bottom:var(--spacing-sm)}.file-info{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.file-icon{font-size:1.5rem}.file-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.file-name{color:#000;font-weight:600;font-size:.95rem}.file-size{color:#000;font-size:.85rem}.btn-remove-file{background:var(--color-error);color:#000;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:var(--transition);flex-shrink:0;font-family:Merriweather,serif;font-weight:600;min-height:32px;padding:0}.btn-remove-file:hover:not(:disabled){background:#c62828;transform:scale(1.1);box-shadow:var(--shadow-sm)}.file-url-alternative{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-gray-pale)}.file-url-alternative small{display:block;margin-bottom:var(--spacing-xs);color:#000}.file-url-alternative input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-pale);border-radius:8px;font-family:Merriweather,serif;font-size:.95rem}.existing-file{margin-top:var(--spacing-sm)}.existing-file-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:#000;text-decoration:none;font-weight:500;transition:var(--transition)}.existing-file-link:hover{color:#000;text-decoration:underline}@media(max-width:768px){.shortcuts-grid,.shortcuts-grid-2-rows{grid-template-columns:1fr}.shortcuts-grid-2x2{grid-template-columns:1fr;grid-template-rows:auto}.shortcut-card{padding:var(--spacing-md)}}.legal-main,.faq-main,.help-main,.privacy-main,.cookies-main,.about-main{background:var(--color-white);border-radius:12px;padding:var(--spacing-2xl);box-shadow:var(--shadow-sm)}.legal-main h1,.faq-main h1,.help-main h1,.privacy-main h1,.cookies-main h1,.about-main h1{color:#000;font-weight:700;font-size:2rem;margin-bottom:var(--spacing-lg)}.legal-section,.privacy-section,.cookies-section,.about-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale)}.legal-section:last-child,.privacy-section:last-child,.cookies-section:last-child,.about-section:last-child{border-bottom:none}.legal-section h2,.privacy-section h2,.cookies-section h2,.about-section h2{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-md)}.legal-section h3,.privacy-section h3,.cookies-section h3,.about-section h3{color:#000;font-weight:600;font-size:1.25rem;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.legal-section p,.privacy-section p,.cookies-section p,.about-section p{color:#000;line-height:1.8;margin-bottom:var(--spacing-md)}.legal-section ul,.privacy-section ul,.cookies-section ul,.about-section ul{margin-left:var(--spacing-lg);margin-bottom:var(--spacing-md)}.legal-section li,.privacy-section li,.cookies-section li,.about-section li{color:#000;line-height:1.8;margin-bottom:var(--spacing-xs)}.legal-intro,.privacy-intro,.cookies-intro,.about-intro{color:#000;font-style:italic;margin-bottom:var(--spacing-xl);font-size:1.1rem}.faq-intro{color:#000;font-size:1.1rem;margin-bottom:var(--spacing-xl);line-height:1.8}.faq-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.faq-item{border:1px solid var(--color-gray-pale);border-radius:12px;overflow:hidden;background:var(--color-white);transition:var(--transition)}.faq-item:hover{box-shadow:var(--shadow-sm)}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:none;border:none;text-align:left;cursor:pointer;font-family:Merriweather,serif;font-weight:600;font-size:1.05rem;color:#000;transition:var(--transition)}.faq-question:hover{background-color:var(--color-gray-bg)}.faq-icon{font-size:1.5rem;font-weight:700;color:#000;flex-shrink:0;margin-left:var(--spacing-md)}.faq-answer{padding:0 var(--spacing-lg) var(--spacing-lg);color:#000;line-height:1.8;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.faq-contact{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-gray-pale);text-align:center}.faq-contact h2{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-md)}.faq-contact p{color:#000}.faq-contact a{color:#000;text-decoration:none;font-weight:600}.faq-contact a:hover{text-decoration:underline}.help-intro{color:#000;font-size:1.1rem;margin-bottom:var(--spacing-xl);line-height:1.8}.help-categories{margin-bottom:var(--spacing-2xl)}.help-categories h2{color:#000;font-weight:600;font-size:1.75rem;margin-bottom:var(--spacing-lg)}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.category-card{background:var(--color-gray-bg);border:1px solid var(--color-gray-pale);border-radius:12px;padding:var(--spacing-lg);transition:var(--transition)}.category-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.category-card h3{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-md)}.category-card ul{list-style:none;margin:0}.category-card li{color:#000;padding:var(--spacing-xs) 0;padding-left:var(--spacing-md);position:relative}.category-card li:before{content:"•";position:absolute;left:0;color:#000;font-weight:700}.help-resources{margin-bottom:var(--spacing-2xl)}.help-resources h2{color:#000;font-weight:600;font-size:1.75rem;margin-bottom:var(--spacing-lg)}.resources-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.resource-link{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-gray-bg);border:1px solid var(--color-gray-pale);border-radius:12px;text-decoration:none;transition:var(--transition)}.resource-link:hover{box-shadow:var(--shadow-md);transform:translate(5px);border-color:#000}.resource-icon{font-size:2rem;flex-shrink:0}.resource-link h3{color:#000;font-weight:600;font-size:1.125rem;margin-bottom:var(--spacing-xs)}.resource-link p{color:#000;font-size:.95rem;margin:0}.help-contact{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-gray-pale)}.help-contact h2{color:#000;font-weight:600;font-size:1.75rem;margin-bottom:var(--spacing-md)}.help-contact>p{color:#000;margin-bottom:var(--spacing-lg)}.help-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.help-form textarea{width:100%;padding:var(--spacing-md);border:2px solid var(--color-gray-pale);border-radius:8px;font-family:Merriweather,serif;font-size:1rem;color:#000;transition:var(--transition);background-color:var(--color-white);resize:vertical}.help-form textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #96da761a}@media(max-width:1024px){.btn-primary,.btn-submit,.btn-create-user,.btn-create-announcement,.btn-generate-invoice,.btn-add-session,.btn-add-homework,.btn-create-class,.btn-add-support,.btn-add-students,.btn-secondary,.btn-cancel,.btn-danger,.btn-edit,.btn-delete,.btn-view-students,.btn-status,.btn-approve,.btn-reject,.btn-block,.btn-unblock,button:not(.admin-tab-button):not(.tab-button):not(.profile-button):not(.burger-menu):not(.modal-close):not(.faq-question){font-size:.9375rem;padding:var(--spacing-sm) var(--spacing-lg)}}@media(max-width:768px){.legal-content,.faq-content,.help-content,.privacy-content,.cookies-content,.about-content{padding:var(--spacing-lg) var(--spacing-md);padding-bottom:calc(var(--spacing-xl) + 60px)}.legal-main,.faq-main,.help-main,.privacy-main,.cookies-main,.about-main{padding:var(--spacing-lg)}.categories-grid{grid-template-columns:1fr}.resource-link{flex-direction:column;text-align:center}.resource-link:hover{transform:translateY(-2px)}}.communications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-gray-pale);flex-wrap:wrap;gap:var(--spacing-md)}.communications-header h1{color:#000;font-weight:700;font-size:1.875rem;margin:0}.unread-badge{background-color:#a1887f;color:#000;padding:var(--spacing-xs) var(--spacing-md);border-radius:20px;font-size:.875rem;font-weight:600}.communications-actions{margin-bottom:var(--spacing-lg);display:flex;justify-content:flex-end}.btn-mark-all-read{padding:var(--spacing-sm) var(--spacing-lg);background-color:transparent;color:#000;border:2px solid transparent;border-radius:6px;font-family:Merriweather,serif;font-weight:500;font-size:.95rem;cursor:pointer;transition:var(--transition)}.btn-mark-all-read:hover{background-color:#a1887f;color:#000;transform:translateY(-1px);box-shadow:var(--shadow-md)}.notifications-list{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.notification-card{background:var(--color-white);border:1px solid var(--color-gray-pale);border-radius:16px;padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:var(--transition)}.notification-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.notification-card.unread{background:linear-gradient(to right,rgba(150,218,118,.05) 0%,var(--color-white) 4%);border-left-width:4px}.notification-header{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.notification-icon{font-size:1.5rem;flex-shrink:0}.notification-info{flex:1}.notification-info h3{color:#000;font-weight:600;font-size:1.125rem;margin:0 0 var(--spacing-xs) 0}.notification-date{color:#000;font-size:.875rem}.unread-indicator{color:#000;font-size:1.25rem;line-height:1;flex-shrink:0}.notification-message{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-gray-bg);border-radius:6px}.notification-message p{color:#000;margin:0;line-height:1.6}.notification-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--color-gray-pale)}.btn-mark-read,.btn-read{padding:var(--spacing-xs) var(--spacing-md);background-color:var(--color-gray-bg);color:#000;border:1px solid var(--color-gray-pale);border-radius:6px;font-family:Merriweather,serif;font-weight:500;font-size:.875rem;cursor:pointer;transition:var(--transition)}.btn-mark-read:hover,.btn-read:hover{background-color:var(--color-gray-pale);border-color:#6adbdf}.btn-consult{padding:var(--spacing-xs) var(--spacing-md);background-color:var(--color-gray-bg);color:#000;border:1px solid #6adbdf;border-radius:6px;font-family:Merriweather,serif;font-weight:500;font-size:.875rem;cursor:pointer;transition:var(--transition)}.btn-consult:hover{background-color:#6adbdf;color:#000;border-color:#4fc5c9}.notification-details{font-size:.875rem;line-height:1.6;color:#000}.notification-details strong{color:#000;font-weight:600}.btn-delete{padding:var(--spacing-xs) var(--spacing-md);background-color:transparent;color:var(--color-danger, #dc3545);border:1px solid var(--color-danger, #dc3545);border-radius:6px;font-family:Merriweather,serif;font-weight:500;font-size:.875rem;cursor:pointer;transition:var(--transition)}.btn-delete:hover{background-color:transparent;color:var(--color-danger, #dc3545);border-color:var(--color-danger, #dc3545)}.no-notifications{text-align:center;padding:var(--spacing-2xl);color:#000}.no-notifications p{font-size:1.125rem;margin:0}@media(max-width:768px){.communications-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.communications-actions,.btn-mark-all-read{width:100%}.notification-header{flex-wrap:wrap}.notification-actions{flex-direction:column}.btn-mark-read,.btn-delete{width:100%}}.announcements-section{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.announcements-section h3{color:#000;font-weight:600;font-size:1.5rem;margin-bottom:var(--spacing-lg)}.announcements-list{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.announcement-card{background:var(--color-white);border:1px solid var(--color-gray-pale);border-radius:16px;padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:var(--transition)}.announcement-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.announcement-header{margin-bottom:var(--spacing-md)}.announcement-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs);gap:var(--spacing-md)}.announcement-title-row h4{color:#000;font-weight:600;font-size:1.125rem;margin:0;flex:1}.announcement-priority-badge{color:#000;padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap}.announcement-date{color:#000;font-size:.875rem}.announcement-content{margin-bottom:var(--spacing-sm)}.announcement-content p{color:#000;line-height:1.6;margin:0;white-space:pre-wrap}.announcement-expiry{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-gray-pale)}.announcement-expiry small{color:#000;font-size:.875rem}@media(max-width:768px){.announcement-title-row{flex-direction:column;align-items:flex-start}.announcement-priority-badge{align-self:flex-start}}.breadcrumbs{margin-bottom:1rem;padding:.5rem 0;font-size:.9rem;color:#666}.breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0}.breadcrumbs li{display:flex;align-items:center}.breadcrumbs li:not(:last-child):after{content:"›";margin:0 .5rem;color:#999}.breadcrumbs a{color:#666;text-decoration:none;transition:color .2s}.breadcrumbs a:hover{color:#8b4513}.breadcrumbs span{color:#333;font-weight:500}.lazy-image{transition:opacity .3s ease-in-out}.lazy-image.loading{opacity:.5;filter:blur(5px)}.lazy-image.loaded{opacity:1;filter:none}.sitemap-page{min-height:100vh;display:flex;flex-direction:column;background-color:#faf7f2}.sitemap-content{flex:1;padding:var(--spacing-xl);max-width:1200px;margin:0 auto;width:100%}.sitemap-main{background:var(--color-white);padding:var(--spacing-xl);border-radius:16px;box-shadow:var(--shadow-sm);border:1px solid rgba(141,110,99,.2)}.sitemap-intro{margin-bottom:var(--spacing-xl);color:var(--color-gray);font-size:1.1rem;line-height:1.6}.sitemap-section{margin-bottom:var(--spacing-xl)}.sitemap-section h2{color:var(--color-black);margin-bottom:var(--spacing-md);font-size:1.5rem;font-weight:700;padding-bottom:var(--spacing-sm);border-bottom:2px solid rgba(196,181,160,.3)}.sitemap-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-sm)}.sitemap-list li{padding:var(--spacing-xs) 0}.sitemap-list a{color:var(--color-black);text-decoration:none;transition:var(--transition);display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px}.sitemap-list a:hover{color:var(--color-black);background-color:#8b73551a;text-decoration:none}.skip-link{position:absolute;top:-40px;left:0;background:#8b4513;color:#fff;padding:8px;text-decoration:none;z-index:1000}.skip-link:focus{top:0}a:focus,button:focus{outline:2px solid #8B4513;outline-offset:2px}main{min-height:60vh}article{margin-bottom:2rem}section{margin-bottom:1.5rem}h1,h2,h3,h4,h5,h6{line-height:1.3;margin-bottom:.5em}p{line-height:1.6;margin-bottom:1em}.hidden-from-view{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
