:root{--burgundy: #3D0026;--burgundy-dark: #2a0019;--burgundy-light: #5c0038;--gold: #C9A84C;--gold-light: #e0c06a;--cream: #fdf8f2;--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-400: #9ca3af;--gray-600: #4b5563;--gray-800: #1f2937;--green: #15803d;--red: #b91c1c;--amber: #d97706;--font-body: "Inter", sans-serif;--font-display: "Playfair Display", serif;--sidebar-width: 240px;--radius: 8px;--shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);font-size:15px;line-height:1.6;color:var(--gray-800);background:var(--gray-50);-webkit-font-smoothing:antialiased}.app-layout{display:flex;min-height:100vh}.main-content{margin-left:var(--sidebar-width);flex:1;padding:32px;max-width:1200px}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--burgundy);display:flex;flex-direction:column;z-index:100;overflow-y:auto}.sidebar-logo{padding:24px 20px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-logo h1{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--white);line-height:1.3}.sidebar-logo span{display:block;font-family:var(--font-body);font-size:.7rem;font-weight:500;color:var(--gold);letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.sidebar-nav{flex:1;padding:12px 0}.nav-section-label{font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff6;padding:16px 20px 6px}.nav-link{display:flex;align-items:center;gap:10px;padding:9px 20px;color:#ffffffbf;text-decoration:none;font-size:.875rem;font-weight:500;transition:background .15s,color .15s;border-left:3px solid transparent}.nav-link:hover{background:#ffffff14;color:var(--white)}.nav-link.active{background:#ffffff1f;color:var(--white);border-left-color:var(--gold)}.nav-link svg{width:16px;height:16px;flex-shrink:0;opacity:.8}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-user{font-size:.8rem;color:#fff9;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.card-title{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--burgundy)}.page-header{margin-bottom:28px}.page-title{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--burgundy);line-height:1.2}.page-subtitle{font-size:.875rem;color:var(--gray-600);margin-top:4px}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius);font-family:var(--font-body);font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:background .15s,opacity .15s;text-decoration:none}.btn-primary{background:var(--burgundy);color:var(--white)}.btn-primary:hover{background:var(--burgundy-light)}.btn-secondary{background:var(--gray-100);color:var(--gray-800)}.btn-secondary:hover{background:var(--gray-200)}.btn-gold{background:var(--gold);color:var(--burgundy-dark)}.btn-gold:hover{background:var(--gold-light)}.btn-danger{background:var(--red);color:var(--white)}.btn-sm{padding:5px 12px;font-size:.8rem}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600}.badge-green{background:#dcfce7;color:#15803d}.badge-amber{background:#fef3c7;color:#92400e}.badge-red{background:#fee2e2;color:#991b1b}.badge-gray{background:var(--gray-100);color:var(--gray-600)}.badge-gold{background:#fef3c7;color:#78350f}.form-group{margin-bottom:16px}.form-label{display:block;font-size:.8rem;font-weight:600;color:var(--gray-600);margin-bottom:5px;text-transform:uppercase;letter-spacing:.04em}.form-input,.form-select,.form-textarea{width:100%;padding:9px 12px;border:1.5px solid var(--gray-200);border-radius:var(--radius);font-family:var(--font-body);font-size:.9rem;color:var(--gray-800);background:var(--white);transition:border-color .15s;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--burgundy);box-shadow:0 0 0 3px #3d002614}.form-textarea{min-height:100px;resize:vertical}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem}th{text-align:left;padding:10px 14px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-600);border-bottom:2px solid var(--gray-200);white-space:nowrap}td{padding:12px 14px;border-bottom:1px solid var(--gray-100);vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:var(--gray-50)}.alert{padding:12px 16px;border-radius:var(--radius);font-size:.875rem;margin-bottom:16px}.alert-error{background:#fee2e2;color:#991b1b;border-left:4px solid #ef4444}.alert-success{background:#dcfce7;color:#15803d;border-left:4px solid #22c55e}.alert-info{background:#eff6ff;color:#1d4ed8;border-left:4px solid #3b82f6}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--gray-400);font-size:.875rem}.empty-state{text-align:center;padding:60px 20px;color:var(--gray-400)}.empty-state h3{font-size:1rem;font-weight:600;color:var(--gray-600);margin-bottom:6px}@media print{.sidebar,.no-print,.page-header{display:none!important}.main-content{margin:0;padding:0}body{background:#fff;font-size:11pt}.print-report{font-family:var(--font-body)}.print-header{display:flex;align-items:center;gap:16px;border-bottom:3px solid var(--burgundy);padding-bottom:12px;margin-bottom:20px}.print-header h1{font-family:var(--font-display);font-size:18pt;color:var(--burgundy)}.print-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.print-section-header{background:var(--burgundy);color:#fff;padding:4px 10px;font-size:9pt;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.print-footer{position:fixed;bottom:16px;width:100%;text-align:center;font-size:8pt;color:var(--gray-400);font-style:italic}}
