.booking-calendar{position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;width:100%;margin:0 auto;padding:1rem;border:1px solid #e0e0e0;border-radius:8px;background-color:#fff;box-shadow:0 2px 8px #0000001a}.custom-header>button:nth-child(3){background:#c7c7c7;font-size:100%}.react-datepicker__day-names div{color:#060606;font-size:100%}.booking-calendar.disabled{opacity:.6;pointer-events:none}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#fffc;display:flex;align-items:center;justify-content:center;z-index:100;font-size:1rem;color:#333}.error-message{color:#d32f2f;background-color:#ffebee;padding:.75rem;margin-bottom:1rem;border-radius:4px;font-size:.9rem}.custom-header h3{margin:0;font-size:1.1rem;font-weight:500;color:#333}.custom-header button{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.5rem 1rem;color:#333;border-radius:4px;transition:background-color .2s}.custom-header button:hover:not(:disabled){background-color:#f0f0f0}.custom-header button:disabled{opacity:.5;cursor:not-allowed}.react-datepicker{width:100%;border:none;font-family:inherit}.react-datepicker__header{background-color:#fff;border-bottom:none;padding:0}.react-datepicker__day-names{display:flex;justify-content:space-between;margin:.5rem 0}.react-datepicker__day-name{width:2rem;line-height:2rem;margin:0;color:#666;font-size:.8rem;font-weight:500}.react-datepicker__month{margin:0}.react-datepicker__week{display:flex;justify-content:space-between}.react-datepicker__day{width:2rem;line-height:2rem;margin:.1rem;border-radius:50%;font-size:.9rem;transition:all .2s}.day-available{background-color:#e8f5e9;color:#2e7d32;cursor:pointer}.day-available:hover{background-color:#c8e6c9}.day-full{background-color:#ffebee;color:#c62828;text-decoration:line-through;cursor:not-allowed}.day-future{background-color:#e3f2fd;color:#1565c0;cursor:pointer}.day-future:hover{background-color:#bbdefb}.day-today{font-weight:700;border:2px solid #ff9800!important;color:#333}.day-unavailable{background-color:#f5f5f5;color:#9e9e9e;text-decoration:line-through;cursor:not-allowed}.day-disabled{background-color:#f5f5f5;color:#bdbdbd;cursor:not-allowed}.react-datepicker__day--selected{background-color:#4caf50;color:#fff;font-weight:700}.react-datepicker__day--selected:hover{background-color:#3d8b40}.react-datepicker__day--keyboard-selected{background-color:transparent;color:inherit}.legend{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.5rem;font-size:.8rem;color:#555}.legend span{display:flex;align-items:center}.legend .box{display:inline-block;width:14px;height:14px;margin-right:8px;border-radius:2px;border:1px solid rgba(0,0,0,.1)}.legend .available{background-color:#e8f5e9}.legend .full{background-color:#ffebee}.legend .future{background-color:#e3f2fd}.legend .today{background-color:#fff8e1;border-color:#ff9800}@media (max-width: 480px){.booking-calendar{padding:.75rem}.legend{grid-template-columns:1fr;gap:.5rem}}.calendar-large .react-datepicker{font-size:1.2rem;padding:1.5rem}.calendar-large .react-datepicker__day{width:3rem;height:3rem;line-height:3rem;margin:.2rem;font-size:1rem}.calendar-large .react-datepicker__current-month,.calendar-large .react-datepicker__day-name{font-size:1.1rem}.booking-calendar{position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;width:100%;height:100%;margin:0;padding:1rem;border:none;border-radius:0;background-color:#fff;box-shadow:none}.booking-fullscreen{min-height:100vh;padding:1rem;background-color:#f4f4f4;display:flex;flex-direction:column}.calendar-container{flex:1;display:flex;flex-direction:column;width:100%}.react-datepicker{width:100%;height:100%;border:none;font-family:inherit;flex:1;display:flex;flex-direction:column}.react-datepicker__month-container{flex:1;display:flex;flex-direction:column}.react-datepicker__month{flex:1;display:flex;flex-direction:column;justify-content:space-around}.react-datepicker__week{flex:1;display:flex;justify-content:space-between;align-items:center}.react-datepicker__day{flex:1;display:flex;align-items:center;justify-content:center;height:auto;min-height:3rem;margin:.1rem;border-radius:4px;font-size:1rem;transition:all .2s}.custom-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;margin-bottom:.5rem}.custom-header h3{margin:0;font-size:1.3rem;font-weight:500;color:#333}.legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-top:1.5rem;font-size:.9rem;color:#555;padding:1rem 0}@media (min-width: 768px){.react-datepicker__day{min-height:4rem;font-size:1.1rem}.custom-header h3{font-size:1.5rem}.legend{font-size:1rem}}@media (min-width: 992px){.booking-fullscreen{padding:2rem}.react-datepicker__day{min-height:5rem;font-size:1.2rem}.legend{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1200px){.react-datepicker__day{min-height:6rem}}.legend-single-line{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem;font-size:.9rem;color:#555;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.box{display:inline-block;width:14px;height:14px;margin-right:8px;border-radius:2px;border:1px solid rgba(0,0,0,.1)}.box.available{background-color:#e8f5e9}.box.full{background-color:#ffebee}.box.future{background-color:#e3f2fd}.box.today{background:#fff8e1;border:2px solid #ffa726!important;box-sizing:border-box}.day-today{background:#fff8e1!important;border:2px solid #ffa726!important}.box.user-booked{background-color:#f5f3ff}@media (max-width: 768px){.legend-single-line{gap:1rem;font-size:.8rem}}@media (max-width: 480px){.legend-single-line{gap:.75rem;font-size:.75rem}.box{width:12px;height:12px;margin-right:6px}}.holiday-info-icon{position:absolute;top:2px;right:2px;background:none;border:none;color:#555;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;transition:all .2s ease}.holiday-info-icon:hover{color:#06c;background-color:#0066cc1a}.day-holiday .day-number{font-weight:700;color:#d32f2f}.day-container{position:relative;height:100%;width:100%}.legend-item{display:inline-flex;align-items:center;margin-right:22px;font-size:.85rem}.legend-item .box{width:14px;height:14px;margin-right:6px;border:1px solid transparent;border-radius:2px}.box.available{background:#e8f4e8;border-color:#8bbc8b}.box.full{background:#fde9ec;border-color:#e5a3ad}.box.holiday{background:#fff;border-color:#c2c2c2}.box.today{background:transparent;border:2px solid #ffa726;box-sizing:border-box}.box.user-booked{background:#ebeafe;border-color:#9fa4ff}.day-container{position:relative}.day-available{background:#e8f4e8!important}.day-full{background:#fde9ec!important}.day-holiday{background:#fff!important}.day-today{background:transparent!important}.day-user-booked{background:#ebeafe!important}.day-disabled,.day-unavailable{color:#bbb!important;background:#f7f7f7!important}.booking-shell{display:flex;background:#fff;border-radius:10px;overflow:hidden}.booking-sider{width:280px;background:#2ecc71;color:#fff;padding:1.5rem 1.75rem;display:flex;flex-direction:column;gap:1.5rem}.burger{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:6px}.burger span{width:26px;height:3px;border-radius:2px;background:#fff;transition:background .15s}.burger:hover span{background:#27e879}.sider-date{text-align:center;margin:1rem 0 0}.sider-daynum{font-size:140px;font-weight:700;line-height:1}.sider-weekday{display:block;font-size:32px;margin-top:-24px}.sider-events h4{margin:0 0 .5rem;font-size:15px;font-weight:500}.sider-events ul{margin:0 0 .75rem;padding-left:1.25rem;font-size:14px}.sider-events li{list-style:disc}.see-posts{background:none;border:none;color:#fff;text-decoration:underline dotted;cursor:pointer;font-size:14px;padding:0}.see-posts:hover{color:#27e879}.create-event{margin-top:auto;background:none;border:none;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;gap:.5rem}.create-event span{font-size:30px;line-height:1;position:relative;top:-2px}.create-event:hover,.create-event:hover span{color:#27e879}.booking-calendar{flex:1;padding:2rem 2.5rem;background:#fff}@media (max-width:700px){.booking-shell{flex-direction:column}.booking-sider{width:100%;border-radius:20px 20px 0 0;flex-direction:row;align-items:center;gap:1rem}.booking-calendar{padding:1.25rem}.sider-date{margin:0}.sider-daynum{font-size:72px}.sider-weekday{font-size:20px;margin-top:-10px}}.sider-events{color:#333;background-color:#fff;padding:15px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.announcement-list{list-style:none;padding:0;margin:0}.announcement-item,.event-item{margin-bottom:15px;padding:12px;border-left:4px solid #ddd;background-color:#f9f9f9}.event-item{border-left-color:#4caf50}.announcement-item h5,.event-item h5{margin:0 0 8px;color:#222;font-size:16px}.announcement-item p,.event-item p{margin:8px 0;color:#555;font-size:14px}.announcement-meta{font-size:12px;color:#666;margin-top:8px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.booking-container{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;background-color:#f8fafc;padding:2rem;margin:0 auto}.booking-fullscreen{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;background-color:#f8fafc;display:flex;align-items:center;justify-content:center;padding:2rem}.loading-container{text-align:center;max-width:400px;padding:2rem;background-color:#fff;border-radius:12px;box-shadow:0 5px 15px #0000000d}.loading-spinner{border:4px solid rgba(0,0,0,.1);width:36px;height:36px;border-radius:50%;border-left-color:#369add;animation:spin 1s linear infinite;margin:0 auto 1rem}.loading-text{font-size:1rem;color:#1e293b;margin-bottom:.5rem}.retry-text{display:block;font-size:.875rem;color:#64748b;margin-top:.5rem}.error-container{padding:2rem;border-radius:12px;max-width:500px;text-align:center;box-shadow:0 5px 15px #0000000d;background-color:#ffebee}.error-title{font-size:1.5rem;color:#1e293b;margin-bottom:1rem}.error-text{font-size:1rem;color:#64748b;margin-bottom:1.5rem}.error-banner{padding:1rem;border-radius:8px;margin-bottom:1.5rem;text-align:center;color:#856404;font-weight:500;background-color:#fff3cd}.recovery-options{margin-top:1.5rem}.retry-button{background-color:#369add;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;cursor:pointer;margin-bottom:1rem;width:100%}.support-text{font-size:.875rem;color:#64748b}.calendar-container{background-color:#fff;border-radius:12px;padding:2rem;box-shadow:0 5px 15px #0000000d;margin-bottom:2rem}.booking-title{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:2rem;text-align:center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;padding:2rem;border-radius:12px;width:90%;max-width:400px;box-shadow:0 10px 25px #0000001a}.modal-title{font-size:1.5rem;font-weight:600;color:#1e293b;margin-bottom:1rem;text-align:center}.slots-info{color:#64748b;margin-bottom:1.5rem;text-align:center}.animal-input{width:100%;padding:.75rem 1rem;font-size:1rem;border-radius:8px;border:2px solid #369add;margin-bottom:1.5rem;transition:all .2s;outline:none;background-color:#f8fafc}.animal-input.input-error{border-color:#e63946;background-color:#fff6f6}.modal-buttons{display:flex;flex-direction:column;gap:.75rem}.primary-button{background-color:#369add;color:#fff;border:none;padding:.75rem;font-size:1rem;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:500}.primary-button.disabled-button{opacity:.6;cursor:not-allowed}.secondary-button{background-color:transparent;color:#64748b;border:1px solid #e2e8f0;padding:.75rem;font-size:1rem;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:500}.loading-dots:after{content:"...";display:inline-block;width:1em;text-align:left;animation:dots 1.5s steps(5,end) infinite}@media (max-width: 768px){.booking-container,.booking-fullscreen{padding:1rem}.booking-title{font-size:1.5rem}.calendar-container{padding:1rem}.modal-content{padding:1.5rem}}:root{--bg-page: #f4f7fc;--bg-card: #ffffff;--text-primary: #333;--text-secondary: #555;--accent: #4a90e2;--danger: #e94f37;--success: #4caf50;--border-radius: 8px;--box-shadow: 0 2px 8px rgba(0, 0, 0, .05);--transition: .2s ease-in-out}.upload-docs-container{max-width:800px;margin:2rem auto;padding:0 1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:var(--text-primary)}.upload-header{text-align:center;margin-bottom:2rem}.upload-header h2{color:var(--accent);font-size:1.8rem;margin-bottom:.5rem}.document-section{background-color:var(--bg-card);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--box-shadow);transition:box-shadow var(--transition)}.document-section:hover{box-shadow:0 4px 12px #0000001a}.document-section h3{color:var(--accent);margin-top:0;margin-bottom:.75rem;font-size:1.2rem}.file-info{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;font-size:.9rem}.file-info p{margin:.25rem 0;color:var(--text-secondary)}.file-info strong{color:var(--text-primary)}.upload-area{border:2px dashed #ddd;border-radius:var(--border-radius);padding:1.5rem;text-align:center;margin-top:1rem;transition:border-color var(--transition);cursor:pointer}.upload-area:hover{border-color:var(--accent)}.upload-area.active{border-color:var(--success);background-color:#4caf500d}.upload-area p{margin:.5rem 0;color:var(--text-secondary)}.file-list{margin-top:1rem}.file-list ul{list-style:none;padding:0;margin:0}.file-list li{display:flex;align-items:center;padding:.5rem;border-bottom:1px solid #eee}.file-list li:last-child{border-bottom:none}.file-icon{margin-right:.75rem;color:var(--accent)}.file-name{flex-grow:1}.file-size{color:var(--text-secondary);font-size:.85rem;margin-left:1rem}.submit-button{display:block;width:100%;padding:.75rem;background-color:var(--accent);color:#fff;border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:500;cursor:pointer;transition:background-color var(--transition),transform var(--transition);margin-top:1.5rem}.submit-button:hover{background-color:#3c7dc9;transform:translateY(-1px)}.submit-button:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.status-message{padding:1rem;border-radius:var(--border-radius);margin:1rem 0;text-align:center}.status-success{background-color:#4caf501a;color:var(--success)}.status-error{background-color:#e94f371a;color:var(--danger)}.edit-mode-header{display:flex;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #eee}.edit-mode-header h3{margin:0;color:var(--accent)}.current-file{font-style:italic;color:var(--text-secondary);margin-left:.5rem}@media (max-width: 600px){.upload-docs-container{padding:0 .5rem}.document-section{padding:1rem}.file-info{flex-direction:column;gap:.5rem}.upload-area{padding:1rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.document-section{animation:fadeIn .3s ease-out forwards}.document-section:nth-child(1){animation-delay:.1s}.document-section:nth-child(2){animation-delay:.2s}.document-section:nth-child(3){animation-delay:.3s}.my-documents{max-width:960px;margin:3rem auto;padding:0 1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:var(--text-primary);background-color:var(--bg-page);min-height:calc(100vh - 4rem);box-sizing:border-box}.my-documents h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:var(--accent)}.my-documents table{width:100%;border-collapse:separate;border-spacing:0;background-color:var(--bg-card);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.my-documents thead{background-color:var(--accent);color:#fff}.my-documents th{padding:1rem;font-weight:600;text-align:left;font-size:.95rem}.my-documents tbody tr{border-bottom:1px solid #eee;transition:background-color var(--transition)}.my-documents tbody tr:last-child{border-bottom:none}.my-documents tbody tr:hover{background-color:#f0f6fc}.my-documents td{padding:.85rem 1rem;font-size:.9rem;color:var(--text-secondary)}.my-documents td[data-label=Pages]{text-align:center}.my-documents td:last-child{display:flex;gap:.5rem}.my-documents button{padding:.4rem .8rem;font-size:.85rem;border:none;border-radius:var(--border-radius);cursor:pointer;transition:background-color var(--transition),transform var(--transition)}.my-documents button.danger{background-color:var(--danger);color:#fff}.my-documents button.danger:hover{background-color:#d4432a;transform:translateY(-1px)}.status-badge{padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500;display:inline-block}.status-underreview{background-color:#fff3bf;color:#674d00}.status-pending{background-color:#d0ebff;color:#1864ab}.status-additionaldocsrequested{background-color:#ffec99;color:#5f3dc4}.status-approved{background-color:#d3f9d8;color:#2b8a3e}.status-rejected{background-color:#ffc9c9;color:#c92a2a}.loading,.no-documents{text-align:center;margin-top:3rem;font-size:1.1rem;color:var(--text-secondary)}@media (max-width: 600px){.my-documents table,.my-documents thead,.my-documents tbody,.my-documents th,.my-documents td,.my-documents tr{display:block}.my-documents thead{display:none}.my-documents tbody tr{margin-bottom:1.5rem;padding:1rem;background:var(--bg-card);box-shadow:var(--box-shadow);border-radius:var(--border-radius)}.my-documents td{padding:.5rem 0;text-align:right;position:relative}.my-documents td:before{content:attr(data-label);position:absolute;left:1rem;width:45%;font-weight:600;text-align:left;color:var(--text-primary)}.my-documents td:last-child{display:flex;justify-content:flex-end;gap:.5rem}.my-documents td[data-label=Pages]{text-align:right}.my-documents td[data-label=Pages]:before{text-align:left}}:root{--bg-page: #f4f7fc;--bg-card: #ffffff;--text-primary: #333;--text-secondary: #555;--accent: #4a90e2;--danger: #e94f37;--border-radius: 8px;--box-shadow: 0 2px 8px rgba(0, 0, 0, .05);--transition: .2s ease-in-out}.my-files{margin:3rem auto;padding:0 1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:var(--text-primary);background-color:var(--bg-page);min-height:calc(100vh - 4rem);box-sizing:border-box}.my-files>table:nth-child(2)>tbody:nth-child(2)>tr:nth-child(1)>td:nth-child(6) .btn{top:15px;position:relative}.my-files h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:var(--accent)}.my-files table{width:100%;border-collapse:separate;border-spacing:0;background-color:var(--bg-card);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--box-shadow)}.my-files thead{background-color:var(--accent);color:#fff}.my-files th{padding:1rem;font-weight:600;text-align:left;font-size:.95rem}.my-files tbody tr{border-bottom:1px solid #eee;transition:background-color var(--transition)}.my-files tbody tr:last-child{border-bottom:none}.my-files tbody tr:hover{background-color:#f0f6fc}.my-files td{padding:.85rem 1rem;font-size:.9rem;color:var(--text-secondary)}.my-files td:last-child{display:flex;gap:.5rem}.my-files button{padding:.4rem .8rem;font-size:.85rem;border:none;border-radius:var(--border-radius);cursor:pointer;transition:background-color var(--transition),transform var(--transition);margin-top:-14px}.my-files button:first-child{background-color:var(--accent);color:#fff}.my-files button:first-child:hover{background-color:#3c7dc9;transform:translateY(-1px)}.my-files button:last-child{background-color:var(--danger);color:#fff}.my-files button:last-child:hover{background-color:#d4432a;transform:translateY(-1px)}.loading,.no-files{text-align:center;margin-top:3rem;font-size:1.1rem;color:var(--text-secondary)}@media (max-width: 600px){.my-files table,.my-files thead,.my-files tbody,.my-files th,.my-files td,.my-files tr{display:block}.my-files thead{display:none}.my-files tbody tr{margin-bottom:1.5rem;padding:1rem;background:var(--bg-card);box-shadow:var(--box-shadow);border-radius:var(--border-radius)}.my-files td{padding:.5rem 0;text-align:right;position:relative}.my-files td:before{content:attr(data-label);position:absolute;left:1rem;width:45%;font-weight:600;text-align:left;color:var(--text-primary)}.my-files td:last-child{display:flex;justify-content:flex-start;gap:.5rem}}.status-approved{background-color:#d3f9d8;color:#2b8a3e;padding:.25rem .5rem;border-radius:12px;display:inline-block}.status-rejected{background-color:#ffc9c9;color:#c92a2a;padding:.25rem .5rem;border-radius:12px;display:inline-block}.my-files td[data-label=Pages]{text-align:center}.flag-comment{color:#d9534f;font-size:.85rem;margin-top:4px}.pdf-modal{position:relative;background:#fff;padding:1rem;width:90%;height:90%;top:5%;left:5%;right:5%;bottom:5%;overflow:hidden;border-radius:8px}.pdf-overlay{background-color:#000000b3}.close-btn{position:absolute;top:10px;right:14px;font-size:1.2rem;background:none;border:none;cursor:pointer;color:#333}.btn-view{margin-right:6px;background-color:#007bff;color:#fff;border:none;padding:4px 8px;text-decoration:none;border-radius:4px;font-size:.9rem}.pdf-modal{width:90%;height:90%;background:#fff;padding:1rem;position:relative;overflow:hidden;border-radius:8px}.pdf-overlay{background-color:#000000bf;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999}iframe{border:none;width:100%;height:calc(100% - 2rem)}.close-btn{position:absolute;top:10px;right:15px;background:#dc143c;color:#fff;border:none;padding:6px 10px;cursor:pointer;z-index:10000}.my-files td:last-child{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.flag-comment{display:block;color:var(--danger);font-size:.85rem;margin-top:.25rem}.my-bookings-container{padding:2rem;max-width:1000px;margin:auto;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.my-bookings-container h2{text-align:center;margin-bottom:1.5rem;font-size:1.8rem;color:#333}.booking-table{width:100%;border-collapse:collapse;font-size:.95rem}.booking-table th,.booking-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e0e0e0}.booking-table th{background-color:#f5f5f5;font-weight:700;color:#444}.booking-table td{color:#333}.booking-table tr:hover{background-color:#f9f9f9}.booking-table td:nth-child(3){text-transform:capitalize}@media (max-width: 768px){.my-bookings-container{padding:1rem}.booking-table,.booking-table thead,.booking-table tbody,.booking-table th,.booking-table td,.booking-table tr{display:block;width:100%}.booking-table thead{display:none}.booking-table tr{margin-bottom:1rem;border:1px solid #ddd;border-radius:6px;padding:.75rem;background-color:#fff}.booking-table td{padding:.5rem 0;display:flex;justify-content:space-between;font-size:.9rem}.booking-table td:before{content:attr(data-label);font-weight:700;color:#555;margin-right:.5rem}}.calendar-button{background:none;border:none;cursor:pointer;color:#1a73e8;font-size:1.2rem;padding:.3rem;transition:transform .2s}.calendar-button:hover{transform:scale(1.2);color:#0d47a1}.calendar-button svg{vertical-align:middle}.status-badge{padding:.25rem .5rem;border-radius:4px;font-weight:700;color:#fff}.status-badge.approved{background-color:#28a745}.status-badge.pending{background-color:#ffc107}.status-badge.rejected{background-color:#dc3545}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:20px;border-radius:8px;width:90%;max-width:500px;box-shadow:0 4px 8px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h3{margin:0}.close-button{background:none;border:none;font-size:1.2em;cursor:pointer;color:#666}.close-button:hover{color:#333}.holding-detail-row{display:flex;margin-bottom:10px}.detail-label{font-weight:700;width:120px}.clickable{cursor:pointer}.clickable:hover{text-decoration:underline;color:#06c}.holding-button{background:none;border:none;padding:0;margin:0;cursor:pointer;text-align:left;width:100%}.holding-button:hover .holding-info span{text-decoration:underline;color:#06c}.holding-info{display:flex;align-items:center;gap:8px}.holding-icon{color:#666}.holding-button{cursor:pointer;text-align:left;color:#000}.cancel-button{background-color:transparent;color:#d9534f;border:none;margin-left:.5rem;cursor:pointer}.cancel-button:hover{color:#b52b27}.applicant-menu{background:#2c3e50;padding:.8rem 1.5rem;display:flex;justify-content:space-between;align-items:center;position:relative;box-shadow:0 2px 10px #0000001a;z-index:100}.mobile-menu-button{display:none;font-size:1.8rem;color:#fff;cursor:pointer;padding:.5rem;background:none;border:none;transition:transform .3s ease}.mobile-menu-button:hover{transform:scale(1.1)}.mobile-menu-close{display:none;position:absolute;top:1rem;right:1rem;font-size:2rem;color:#fff;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001}.mobile-menu-close:hover{color:#3498db}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.menu-overlay.mobile-open{opacity:1;pointer-events:all}.menu-content{display:flex;justify-content:space-between;width:100%;align-items:center;transition:all .3s ease}.main-nav-items{list-style:none;display:flex;gap:1.2rem;margin:0;padding:0;align-items:center}.main-nav-items li{position:relative}.applicant-menu a{color:#fff;font-weight:500;text-decoration:none;padding:.6rem 1rem;border-radius:6px;transition:all .3s ease;font-size:.95rem;display:flex;align-items:center;gap:.5rem}.applicant-menu a:hover{background:#ffffff26}.applicant-menu a.active{background:#3498db;box-shadow:0 2px 5px #0003}.menu-right-section{display:flex;align-items:center;gap:1rem;margin-left:auto}.profile-link{display:flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;padding:.6rem 1rem;border-radius:6px;transition:all .3s ease}.profile-link:hover{background:#ffffff1a}.profile-icon{font-size:1.3rem;display:flex;align-items:center}.profile-text{font-size:.95rem}.notif-bell-container{position:relative;display:flex;align-items:center;gap:.5rem}.notif-bell{background:none;border:none;font-size:1.4rem;position:relative;color:#fff;cursor:pointer;padding:.6rem;border-radius:50%;transition:all .3s ease;display:flex;align-items:center}.notif-bell:hover{background:#ffffff1a;transform:scale(1.1)}.notif-badge{position:absolute;top:0;right:0;background:#e74c3c;color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:999px;min-width:18px;text-align:center}.notif-dropdown{position:absolute;top:3.5rem;right:0;background:#fff;color:#333;border:1px solid #ddd;border-radius:10px;padding:1rem;width:320px;max-height:500px;overflow-y:auto;z-index:1000;box-shadow:0 5px 15px #00000026;transform-origin:top right;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notif-dropdown h4{margin:0 0 1rem;color:#2c3e50;font-size:1.1rem;padding-bottom:.5rem;border-bottom:1px solid #eee}.notif-dropdown ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.8rem}.notif-dropdown li{padding:.8rem;border-radius:8px;background:#f9f9f9;font-size:.9rem;transition:background .2s}.notif-dropdown li:hover{background:#f0f0f0}.notif-dropdown li.unread{background:#e8f4fc;border-left:3px solid #3498db}.notification-time{font-size:.75rem;color:#7f8c8d;margin-top:.3rem;display:block}.logout-button{display:flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;padding:.6rem 1rem;border-radius:6px;transition:all .3s ease;font-size:.95rem}.logout-button:hover{background:#ffffff1a}.logout-icon{display:none;font-size:1.4rem}@media (max-width: 768px){.mobile-menu-button,.mobile-menu-close{display:block}.mobile-menu-button{order:-1}.menu-content{position:fixed;top:0;left:-100%;height:100vh;width:85%;max-width:320px;background:#2c3e50;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:2rem 1.5rem;box-shadow:2px 0 10px #0003;z-index:1000}.menu-content.mobile-open{left:0;animation:slideIn .3s ease-out}.main-nav-items{flex-direction:column;align-items:flex-start;width:100%;gap:.8rem;margin-bottom:2rem}.menu-right-section{flex-direction:column;align-items:flex-start;width:100%;gap:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15)}.profile-text,.logout-text{display:none}.profile-icon,.logout-icon{display:inline-block;font-size:1.6rem}.profile-link,.logout-button{padding:.8rem}.notif-dropdown{right:auto;left:1.5rem;width:calc(100% - 3rem);top:4rem}.notif-bell{font-size:1.6rem}}@keyframes slideIn{0%{left:-100%}to{left:0}}:root{--color-primary: #369add;--color-white: #ffffff;--color-dark: #1e293b;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--transition: all .3s ease}.admin-menu{background:var(--color-primary);padding:var(--space-md);height:100vh;position:fixed;left:0;top:0;width:250px;transform:translate(-100%);transition:var(--transition);z-index:1000;overflow-y:auto}.admin-menu.open{transform:translate(0)}.admin-menu ul{list-style:none;padding:0;margin:0}.admin-menu li{margin-bottom:var(--space-lg)}.admin-menu a{color:var(--color-white);font-weight:500;text-decoration:none;display:block;padding:var(--space-sm) var(--space-md);border-radius:4px;transition:var(--transition)}.admin-menu a:hover{background:#ffffff1a}.admin-menu a.active{background:#fff3;font-weight:600}.mobile-menu-toggle{position:fixed;top:var(--space-md);left:var(--space-md);background:var(--color-primary);color:var(--color-white);border:none;border-radius:4px;padding:var(--space-sm);z-index:1100;cursor:pointer;display:none}@media (max-width: 768px){.mobile-menu-toggle{display:block}.admin-menu{width:80%;box-shadow:2px 0 10px #0000001a}}@media (min-width: 769px){.admin-menu{transform:translate(0)}body{padding-left:250px}}.dashboard-container{max-width:960px;margin:0 auto;padding:2rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.status-filter{padding:.4rem .6rem;font-size:1rem}.loading,.no-results{text-align:center;margin-top:2rem;font-style:italic}.dashboard-list{display:flex;flex-direction:column;gap:1rem}.dashboard-card{border:1px solid #ccc;border-radius:8px;padding:1rem;background-color:#f9f9f9}.card-header{display:flex;justify-content:space-between;align-items:center}.status-badge{padding:.3rem .6rem;border-radius:5px;font-size:.85rem;text-transform:capitalize}.status-badge.pending{background-color:#fffae6;color:#b8860b}.status-badge.submitted{background-color:#e6f7ff;color:#1e90ff}.status-badge.approved{background-color:#e6ffed;color:#228b22}.status-badge.rejected{background-color:#ffe6e6;color:#c00}.card-footer{margin-top:1rem}.btn-review{background-color:#007bff;color:#fff;padding:.4rem .8rem;text-decoration:none;border-radius:4px;font-size:.9rem}.btn-review:hover{background-color:#0056b3}:root{--brand: #2b6cb0;--bg: #f7fafc;--fg: #2d3748;--muted: #718096;--danger: #e53e3e}body{margin:0;font-family:sans-serif;background:var(--bg);overflow-x:hidden}.app-detail{width:100%;max-width:1400px;margin:0 auto;padding:1.5rem 1.5rem 8rem;color:var(--fg);overflow-x:hidden}.loading-spinner{width:3rem;height:3rem;border:4px solid rgba(0,0,0,.1);border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite;margin:5rem auto}@keyframes spin{to{transform:rotate(360deg)}}.app-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.app-header h1{font-size:clamp(1.5rem,4vw,2rem);margin:0}.badge{padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:600;text-transform:capitalize}.badge-pending{background:#fefcbf;color:#975a16}.badge-approved{background:#c6f6d5;color:#2f855a}.badge-rejected{background:#fed7d7;color:#9b2c2c}.card{background:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 1px 4px #0000000d;margin-bottom:1rem}.info-card{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.info-card h2{width:100%;margin-bottom:.75rem;font-size:clamp(1.125rem,3vw,1.5rem)}.section-title{font-size:clamp(1.25rem,3vw,1.75rem);margin:1.5rem 0 .5rem;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:.5rem}.requirements-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.req-card{display:flex;flex-direction:column;height:100%;overflow-wrap:anywhere}.req-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:.5rem;margin-bottom:.75rem}.req-header h3{font-size:clamp(1rem,2.5vw,1.25rem);margin:0}.file-count{background:#00000008;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem}.file-list{list-style:none;padding:0;margin:0;flex:1}.file-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid #e2e8f0}.file-item:last-child{border-bottom:none}.file-item.flagged{background:#e53e3e1a}.file-meta{display:flex;flex-direction:column;font-size:.85rem;color:var(--muted);overflow-wrap:anywhere}.file-meta small{display:inline-block}.status{padding:0 .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-pending{background:#fefcbf;color:#975a16}.status-approved{background:#c6f6d5;color:#2f855a}.status-rejected{background:#fed7d7;color:#9b2c2c}.file-actions{display:flex;flex-wrap:wrap;gap:.5rem}.btn{padding:.4rem .8rem;border:none;border-radius:.375rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:transform .1s ease,background .2s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small{font-size:.75rem;padding:.3rem .6rem}.btn.danger{background:var(--danger);color:#fff}.btn:not(.danger){background:var(--brand);color:#fff}.action-toolbar{position:sticky;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -2px 8px #0000000d;padding:1rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;z-index:10}.btn.primary.big{flex:1;font-size:1rem;padding:.75rem 1rem}.btn.outline{background:transparent;border:1px solid var(--brand);color:var(--brand)}.pdf-overlay,.confirm-modal{z-index:2000}.pdf-modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;height:90%;background:#fff;border-radius:.5rem;overflow:hidden;z-index:2001}.pdf-modal iframe{width:100%;height:100%;border:none}.confirm-modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:1.5rem;border-radius:8px;width:90%;max-width:400px;box-shadow:0 5px 15px #0003}.confirm-content p{margin-bottom:1rem}.confirm-buttons{display:flex;justify-content:flex-end;gap:.75rem}.log-page{padding:2rem;font-family:sans-serif}.log-page h2{margin-bottom:1rem}.log-page table{width:100%;border-collapse:collapse}.log-page th,.log-page td{padding:.75rem;border-bottom:1px solid #ccc;text-align:left}.log-page th{background-color:#f0f0f0}.log-page tr:hover{background-color:#fafafa}.holiday-management{padding:2rem;background-color:#f9f9f9;border-radius:10px}.holiday-management h2,.card-body h3{font-size:1.75rem;margin-bottom:1rem;color:#333}.d-flex{display:flex;gap:1rem}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.mb-3,.mb-4{margin-bottom:1rem!important}.btn{border-radius:5px;font-weight:500}.table{width:100%;border-collapse:collapse;background-color:#fff}.table thead{background-color:#007bff;color:#fff}.table thead th{padding:12px;text-align:left}.table tbody td{padding:10px;border-bottom:1px solid #ddd}.table-striped tbody tr:nth-child(odd){background-color:#f1f1f1}.table-responsive{overflow-x:auto}.card{border:1px solid #ddd;border-radius:10px;background-color:#fff}.card-body{padding:2rem}.form-label{font-weight:600;margin-bottom:.5rem;display:block}.form-control,.form-select{border-radius:5px;padding:.5rem;font-size:1rem}textarea.form-control{resize:vertical}.form-check{margin-bottom:1rem}.form-check-input{margin-right:.5rem}.alert{padding:.75rem 1rem;margin-bottom:1rem;border-radius:5px}.alert-danger{background-color:#f8d7da;color:#721c24}.d-grid.gap-2{margin-top:1.5rem}body{padding-left:0}.landing-container{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;background-color:#f8fafc}.navbar{background-color:#fff;padding:1.5rem 2rem;box-shadow:0 2px 10px #0000000d;display:none!important;justify-content:space-between;align-items:center}.nav-brand{display:flex;align-items:center;gap:.75rem}.nav-logo{width:40px;height:40px}.nav-title{font-weight:600;font-size:1.25rem;color:#1e293b}.nav-links{display:flex;gap:1rem}.nav-link{color:#1e293b;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:6px;transition:background-color .2s}.nav-register{background-color:#369add;color:#fff}.hero-title{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;font-size:clamp(2rem,5vw,3rem)}@media (max-width: 480px){.hero-title{gap:.25rem;font-size:1.75rem}}.hero{padding:6rem 2rem 4rem;text-align:center;background:linear-gradient(135deg,#369add,#1d6fa5);color:#fff}.hero-inner{max-width:800px;margin:0 auto;position:relative}.hero-title{font-size:3rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2;display:flex;align-items:center;justify-content:center;gap:.5rem}.hero-icon{width:93px;height:50px;position:absolute;bottom:-40px}.hero-icon img{width:100%;height:auto}.highlight{color:#fef08a}.hero-subtitle{font-size:1.25rem;margin:0 0 2.5rem;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto;color:#ccc}.hero-buttons{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.btn{cursor:pointer;border-radius:8px;transition:background-color .2s,transform .2s}.btn-primary{background-color:#369add;color:#fff;border:none;box-shadow:0 4px 14px #00000026;padding:.875rem 2rem;font-size:1.125rem}.btn-secondary{background-color:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.875rem 2rem;font-size:1.125rem}.features{max-width:1272px;margin:0 auto;padding:5rem 2rem}.features-header{text-align:center;margin-bottom:4rem}.features-header h2{font-size:2.25rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.features-header p{font-size:1.125rem;color:#64748b}.features-grid{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.feature-card{flex:1 1 280px;max-width:320px;background-color:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 5px 15px #0000000d;display:flex;gap:1rem;align-items:flex-start}.feature-icon{font-size:1.75rem;line-height:1;margin-top:.25rem}.feature-card h3{font-size:1.25rem;font-weight:600;color:#1e293b;margin-bottom:.5rem}.feature-card p{font-size:.95rem;color:#64748b;line-height:1.5}.benefits{background-color:#f1f5f9;padding:5rem 2rem;text-align:center}.benefits h2{font-size:2.25rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.benefits p{font-size:1.125rem;color:#64748b;margin-bottom:3rem}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.benefit-card{background-color:#fff;border-radius:8px;padding:1.5rem;display:flex;gap:1rem;align-items:flex-start;box-shadow:0 1px 3px #0000000a}.benefit-card h3{font-size:1.125rem;font-weight:600;color:#1e293b;margin-bottom:.5rem}.cta{padding:6rem 2rem;text-align:center;background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff}.cta h2{font-size:2.5rem;font-weight:700;margin-bottom:1.5rem}.cta p{font-size:1.25rem;margin-bottom:2.5rem;opacity:.9}.cta-btn{padding:1rem 2.5rem;font-size:1.125rem}.footer{background-color:#0f172a;color:#e2e8f0;padding:3rem 2rem}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;max-width:1200px;margin:0 auto}.footer-brand{text-align:left}.footer-logo{width:40px;height:40px;margin-bottom:1rem}.footer-grid h3{font-size:1.125rem;font-weight:600;margin-bottom:1.25rem}.footer-grid ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.footer-grid a{color:#e2e8f0;text-decoration:none;opacity:.8;transition:opacity .2s}.footer-bottom{max-width:1200px;margin:3rem auto 0;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);text-align:center;opacity:.7;font-size:.875rem}@media (min-width: 769px){.landing-container{padding-left:0}}.confirm-arrival-form{padding:2rem;max-width:600px;margin:auto;background-color:#fff;border-radius:6px;box-shadow:0 2px 6px #0000001a}.confirm-arrival-form h2{margin-bottom:1.5rem;font-size:1.5rem}.form-group{margin-bottom:1.25rem}.form-control{width:100%;padding:.6rem;border:1px solid #ccc;border-radius:4px}.btn.btn-primary{padding:.6rem 1.2rem;font-weight:700}.admin-events-container{padding:2rem;max-width:1200px;margin:0 auto}.admin-events-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.btn-add-event{background-color:#4caf50;color:#fff;padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:.5rem}.events-table{width:100%;border-collapse:collapse;margin-top:1rem}.events-table th,.events-table td{padding:12px;text-align:left;border-bottom:1px solid #ddd}.events-table th{background-color:#f2f2f2;font-weight:600}.description-cell{max-width:300px}.actions-cell{display:flex;gap:.5rem}.btn-edit,.btn-delete{padding:.25rem .5rem;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center}.btn-edit{background-color:#2196f3;color:#fff}.btn-delete{background-color:#f44336;color:#fff}.no-events{text-align:center;padding:2rem;color:#666}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;width:100%}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}a{text-decoration:none;color:inherit}:root{--color-primary: #2c3e50;--color-secondary: #3498db;--color-accent: #e67e22;--color-background-light: #f5f7fa;--color-background-dark: #ecf0f1;--color-text-primary: #2c3e50;--color-text-secondary: #7f8c8d;--color-white: #ffffff;--color-black: #000000;--color-success: #27ae60;--color-error: #c0392b;--color-warning: #f39c12;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Fira Code", monospace;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--line-height: 1.6;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px rgba(0,0,0,.15)}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--line-height);color:var(--color-text-primary);background-color:var(--color-background-light);min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--color-primary);margin-bottom:var(--space-md);line-height:1.2}p{margin-bottom:var(--space-md);color:var(--color-text-secondary)}a{color:var(--color-secondary);transition:color .2s ease-in-out}a:hover{color:var(--color-accent)}.container{max-width:960px;margin:0 auto;padding:var(--space-lg) var(--space-md)}.card{background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-lg);margin-bottom:var(--space-lg)}input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{width:100%;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);border:1px solid var(--color-background-dark);border-radius:var(--radius-sm);font-size:var(--text-base);transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px #3498db4d}button{display:inline-block;padding:var(--space-sm) var(--space-lg);border:none;border-radius:var(--radius-md);background-color:var(--color-secondary);color:var(--color-white);font-size:var(--text-base);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color .2s ease-in-out,transform .1s ease-in-out}button:hover{background-color:var(--color-accent)}button:active{transform:scale(.98)}button:disabled{background-color:var(--color-background-dark);cursor:not-allowed}.navbar{background-color:var(--color-primary);color:var(--color-white);padding:var(--space-sm) var(--space-md);display:flex;align-items:center;justify-content:space-between}.navbar a{color:var(--color-white);margin-left:var(--space-md);font-weight:500}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-lg)}thead{background-color:var(--color-background-dark)}thead th{padding:var(--space-sm) var(--space-md);text-align:left;font-weight:600}tbody td{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-background-dark)}.alert{padding:var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md)}.alert-success{background-color:#d4edda;color:#155724}.alert-error{background-color:#f8d7da;color:#721c24}.alert-warning{background-color:#fff3cd;color:#856404}.text-center{text-align:center}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}
