@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--brand-maroon:maroon;--brand-maroon-light:#900;--brand-maroon-dark:#600;--brand-accent:#b30000;--bg-primary:#f8f9fa;--bg-secondary:#fff;--text-primary:#212529;--text-secondary:#6c757d;--border-color:#dee2e6;--status-pending:#f59f00;--status-pending-bg:#fff3bf;--status-success:#2b8a3e;--status-success-bg:#d3f9d8;--status-danger:#c92a2a;--status-danger-bg:#ffe3e3;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #8000001a, 0 4px 6px -2px #8000000d;--glass-bg:#ffffffd9;--glass-border:#ffffff2e;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--transition-fast:.15s ease-in-out;--transition-normal:.3s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;line-height:1.5}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);border-radius:var(--radius-lg)}h1,h2,h3,h4,h5,h6{color:var(--brand-maroon-dark);margin-bottom:.5rem;font-weight:600}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;padding:.6rem 1.2rem;font-size:.95rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--brand-maroon);color:#fff;box-shadow:0 4px 6px #80000033}.btn-primary:hover{background-color:var(--brand-maroon-light);transform:translateY(-1px);box-shadow:0 6px 8px #80000040}.btn-primary:active{transform:translateY(1px)}.btn-outline{color:var(--brand-maroon);border:1px solid var(--brand-maroon);background-color:#0000}.btn-outline:hover{background-color:#8000000d}.form-group{margin-bottom:1.2rem}.form-label{color:var(--text-primary);margin-bottom:.4rem;font-size:.9rem;font-weight:500;display:block}.form-control{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-secondary);width:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.75rem 1rem;font-family:inherit;font-size:1rem}.form-control:focus{border-color:var(--brand-maroon);outline:none;box-shadow:0 0 0 3px #80000026}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:50rem;padding:.35em .65em;font-size:.75em;font-weight:600}.badge-pending{background-color:var(--status-pending-bg);color:var(--status-pending)}.badge-success{background-color:var(--status-success-bg);color:var(--status-success)}@media (width<=768px){body{font-size:14px}.glass-panel{border-radius:var(--radius-md)}.btn{padding:.8rem 1.2rem}}.login-wrapper{background-image:radial-gradient(circle at 100% 0,#8000000d,#0000 400px),radial-gradient(circle at 0 100%,#8000000d,#0000 400px);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-container{width:100%;max-width:420px;padding:2.5rem;background:#ffffffe6!important}.login-header{text-align:center;margin-bottom:2rem}.logo-placeholder{background-color:var(--brand-maroon);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;display:flex;box-shadow:0 8px 16px #80000033}.logo-icon{color:#fff;font-size:32px}.login-header h1{letter-spacing:-.5px;margin-bottom:.2rem;font-size:1.8rem}.login-header p{color:var(--text-secondary);font-size:.95rem}.btn-block{width:100%;margin-top:1rem;padding:.8rem;font-size:1rem}.login-footer{text-align:center;color:var(--text-secondary);margin-top:2rem;font-size:.8rem}.dashboard-layout{background-image:radial-gradient(circle at 100% 0,#8000000d,#0000 400px);height:100vh;display:flex;overflow:hidden}.sidebar{z-index:100;width:260px;height:100vh;transition:transform var(--transition-normal);border-top:none;border-bottom:none;border-left:none;border-radius:0;flex-direction:column;display:flex}.sidebar-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.sidebar-logo{color:var(--brand-maroon-dark);letter-spacing:-.5px;font-size:1.25rem;font-weight:700}.btn-close-sidebar{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.sidebar-nav{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem 1rem;display:flex;overflow-y:auto}.nav-item{color:var(--text-primary);border-radius:var(--radius-md);transition:all var(--transition-fast);align-items:center;padding:.8rem 1rem;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{color:var(--brand-maroon);background-color:#8000000d}.nav-item.active{background-color:var(--brand-maroon);color:#fff;box-shadow:var(--shadow-md)}.sidebar-footer{border-top:1px solid var(--glass-border);padding:1.5rem 1rem}.main-content{flex-direction:column;flex:1;height:100vh;padding:1rem 1.5rem;display:flex;overflow-y:auto}.top-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem 1.5rem;display:flex}.btn-menu{color:var(--brand-maroon);cursor:pointer;background:0 0;border:none;margin-right:1rem;font-size:1.5rem}.header-title h2{margin:0;font-size:1.2rem}.user-profile{align-items:center;gap:.75rem;display:flex}.user-avatar{background-color:var(--brand-maroon);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:600;display:flex}.user-name{font-size:.95rem;font-weight:500}.content-area{flex:1;padding:2rem}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:600px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:1rem}.data-table th{color:var(--text-secondary);background-color:#00000005;font-weight:600}.d-md-none{display:none}@media (width<=768px){.dashboard-layout{position:relative}.sidebar{box-shadow:var(--shadow-lg);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0006;position:fixed;inset:0}.main-content{padding:.75rem}.top-header{justify-content:flex-start;margin-bottom:1rem;padding:.75rem 1rem}.header-title{flex:1}.d-md-none{display:inline-block}.d-none-sm{display:none}.content-area{padding:1.25rem}}.app-container{flex-direction:column;min-height:100vh;display:flex}body{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%) fixed}
