:root{--primary-color:#1a5276;--secondary-color:#3498db;--accent-color:#f39c12;--text-color:#333;--light-text:#fff;--background-color:#f8f9fa;--footer-bg:#2c3e50;--card-bg:#fff;--border-color:#e0e0e0;--success-color:#27ae60;--error-color:#e74c3c;--warning-color:#f39c12}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-color);background-color:var(--background-color);-webkit-font-smoothing:antialiased;font-family:Montserrat,sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;font-weight:600;line-height:1.2}a{color:var(--primary-color);text-decoration:none;transition:color .3s}a:hover{color:var(--secondary-color)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}header{background-color:var(--primary-color);color:var(--light-text);padding:1rem 0;box-shadow:0 2px 4px #0000001a}header .container{justify-content:space-between;align-items:center;display:flex}header .logo{color:var(--light-text);margin:0;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700}header .logo a{color:var(--light-text)}header nav ul{gap:1.5rem;list-style:none;display:flex}header nav a{color:var(--light-text);opacity:.9;font-weight:500;transition:opacity .3s}header nav a:hover,header nav a.active{opacity:1;color:var(--light-text)}footer{background-color:var(--footer-bg);color:var(--light-text);text-align:center;margin-top:3rem;padding:2rem 0;font-size:.9rem}footer a{color:var(--accent-color)}.card{background:var(--card-bg);border-radius:12px;margin-bottom:1.5rem;padding:2rem;box-shadow:0 2px 8px #00000014}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--text-color);margin-bottom:.4rem;font-size:.9rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-color);background:#fff;border-radius:8px;width:100%;padding:.65rem .75rem;font-family:Montserrat,sans-serif;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--secondary-color);outline:none;box-shadow:0 0 0 3px #3498db26}.form-group textarea{resize:vertical;min-height:80px}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=600px){.form-row{grid-template-columns:1fr}}.form-group .error-text{color:var(--error-color);margin-top:.25rem;font-size:.8rem}.form-group.has-error input,.form-group.has-error select{border-color:var(--error-color)}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:600;transition:background-color .2s,transform .1s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--primary-color);color:var(--light-text)}.btn-primary:hover{background-color:#154360}.btn-secondary{background-color:var(--secondary-color);color:var(--light-text)}.btn-secondary:hover{background-color:#2980b9}.btn-danger{background-color:var(--error-color);color:var(--light-text)}.btn-danger:hover{background-color:#c0392b}.btn-outline{border:2px solid var(--primary-color);color:var(--primary-color);background:0 0}.btn-outline:hover{background-color:var(--primary-color);color:var(--light-text)}.btn-sm{padding:.4rem .8rem;font-size:.85rem}.btn-table{cursor:pointer;border:1px solid var(--border-color);color:var(--text-color);text-align:center;background:#fff;border-radius:4px;padding:.2rem .5rem;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:600;line-height:1.4;transition:background-color .15s;display:inline-block}.btn-table:hover{color:var(--text-color);background-color:#f0f0f0}.btn-table-danger{color:var(--error-color);border-color:var(--error-color)}.btn-table-danger:hover{background-color:var(--error-color);color:#fff}.alert{border-radius:8px;margin-bottom:1rem;padding:1rem;font-weight:500}.alert-error{color:var(--error-color);background-color:#fde8e8;border:1px solid #f5c6cb}.alert-success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}thead{background-color:var(--primary-color);color:var(--light-text)}th{text-align:left;white-space:nowrap;padding:.75rem 1rem;font-weight:600}td{border-bottom:1px solid var(--border-color);padding:.65rem 1rem}tbody tr:hover{background-color:#f0f7fd}.badge{border-radius:12px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-current{color:#155724;background-color:#d4edda}.badge-upcoming{color:#004085;background-color:#cce5ff}.badge-past{color:#6c757d;background-color:#f5f5f5}.badge-rental{color:#856404;background-color:#fff3cd}.tabs{border-bottom:2px solid var(--border-color);gap:0;margin-bottom:1.5rem;display:flex}.tab{color:#6c757d;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.75rem 1.25rem;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:600;transition:color .2s,border-color .2s}.tab:hover{color:var(--primary-color)}.tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.search-bar{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.search-bar input,.search-bar select{border:1px solid var(--border-color);border-radius:8px;padding:.5rem .75rem;font-family:Montserrat,sans-serif;font-size:.9rem}.search-bar input{flex:1;min-width:200px}@media (width<=768px){header .container{flex-direction:column;gap:.75rem}header nav ul{gap:1rem;font-size:.9rem}.search-bar{flex-direction:column}.search-bar input{min-width:100%}}.admin-toolbar{background-color:#eaf2f8;border-bottom:1px solid #d4e6f1;padding:.5rem 0;font-size:.85rem}.toolbar-label{color:var(--primary-color);font-weight:600}.toolbar-btn{border:1px solid var(--primary-color);color:var(--primary-color);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:.35rem;padding:.3rem .65rem;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.toolbar-btn:hover{background-color:var(--primary-color);color:#fff}.page-hero{background-color:var(--primary-color);color:var(--light-text);text-align:center;padding:2.5rem 0}.page-hero h1{margin-bottom:.5rem;font-size:2rem}.page-hero p{opacity:.9;font-size:1.1rem}
