:root{font-family:Inter var,SF Pro Text,system-ui,-apple-system,sans-serif;line-height:1.6;font-weight:400;color:#0f172a;background-color:#f6f8fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand-blue: #007db7;--brand-gray: #737677;--surface: #ffffff;--border: #e2e8f0;--text-muted: #475569}body{margin:0;background:radial-gradient(circle at 10% 20%,rgba(0,125,183,.12) 0%,#f6f8fb 30%,transparent 40%),radial-gradient(circle at 90% 10%,rgba(115,118,119,.12) 0%,#f6f8fb 25%,transparent 40%),#f6f8fb;min-height:100vh}a{color:#0f172a;text-decoration:none}#app,.shell{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.01em}.brand-logo{height:40px;width:auto;display:block}.nav{display:inline-flex;gap:16px;font-weight:600}.nav a{padding:8px 12px;border-radius:12px;transition:background .2s ease,color .2s ease}.nav a.router-link-active{background:var(--brand-blue);color:#fff}main{padding:32px 24px 48px}.page{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.eyebrow{margin:0 0 4px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--text-muted);font-size:12px}h1{margin:0 0 8px;font-size:32px;line-height:1.2}h2{margin:0 0 8px;font-size:20px}p{margin:0}.muted{color:var(--text-muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 20px 60px #0f172a0f}.stack{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:6px;font-weight:600}.field input{width:100%;border-radius:12px;border:1px solid #cbd5e1;padding:12px 14px;font-size:16px;transition:border-color .2s ease,box-shadow .2s ease}.field input:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 4px #007db733}button{border:none;border-radius:12px;padding:12px 16px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .1s ease,box-shadow .2s ease,opacity .2s ease}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:linear-gradient(135deg,var(--brand-blue),#009fdc);color:#fff;box-shadow:0 10px 30px #007db747}.ghost{background:#e2e8f0;color:var(--brand-gray)}button:hover:not(:disabled){transform:translateY(-1px)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.error{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca;padding:10px 12px;border-radius:12px}@media(max-width:720px){.page-header{flex-direction:column;align-items:flex-start}.topbar{flex-direction:column;align-items:flex-start;gap:8px}}@media(max-width:980px){.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.card{padding:18px;border-radius:12px}.card .card-header{padding:12px}main{padding:24px 16px 36px}}@media(max-width:760px){.grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.card{padding:14px;border-radius:10px}h1{font-size:1.5rem}}@media(max-width:380px){.grid{grid-template-columns:1fr;gap:8px}.card{padding:10px;border-radius:8px}.card .card-title{font-size:1rem;white-space:normal}}.dashboard-view,.profile-view,.reports-view,.absences-view,.approvals-view,.calendar-view,.users-view,.absence-types-view,.settings-view{padding:2rem;max-width:1400px;margin:0 auto}@media(max-width:768px){.dashboard-view,.profile-view,.reports-view,.absences-view,.approvals-view,.calendar-view,.users-view,.absence-types-view,.settings-view{padding:1rem;max-width:100%}}.view-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem;width:100%}.grid-base{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem}@media(max-width:600px){.grid-base{grid-template-columns:1fr;gap:.75rem}}@media(min-width:601px)and (max-width:800px){.grid-base{grid-template-columns:repeat(2,1fr);gap:.9rem}}@media(min-width:1200px)and (max-width:1366px){.grid-base{grid-template-columns:repeat(2,1fr);gap:1.1rem}}.grid-base--large{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}@media(max-width:600px){.grid-base--large{grid-template-columns:1fr;gap:.75rem}}@media(min-width:601px)and (max-width:800px){.grid-base--large{grid-template-columns:repeat(2,1fr);gap:.9rem}}@media(min-width:801px)and (max-width:980px){.grid-base--large{grid-template-columns:1fr;gap:1rem}}@media(min-width:1200px)and (max-width:1366px){.grid-base--large{grid-template-columns:repeat(2,1fr);gap:1.1rem}}.absences-view .card,.approvals-view .card,.profile-view .card{width:100%!important;max-width:none!important}:root{--brand-blue: #007DB7;--brand-blue-dark: #006699;--brand-gray: #737677;--brand-gray-light: #d0d1d2;--brand-gray-lighter: #e8e9ea}.page-title,.section-title,h1:not(.card-title):not(.sidebar-header h1){color:var(--brand-blue)!important;font-weight:600!important}.page-subtitle{color:var(--brand-gray);font-size:.95rem}.brand-card{background:#fff;border-radius:8px;padding:1.5rem;border:1px solid var(--brand-gray-lighter);border-top:3px solid var(--brand-blue);box-shadow:0 1px 3px #00000014;transition:all .2s}.brand-card:hover{box-shadow:0 4px 12px #007db71f;transform:translateY(-2px)}.brand-card-alt{background:#fff;border-radius:8px;padding:1.5rem;border:1px solid var(--brand-gray-lighter);border-left:4px solid var(--brand-blue);box-shadow:0 1px 3px #00000014;transition:all .2s}.brand-card-alt:hover{box-shadow:0 4px 12px #007db71f;transform:translate(3px)}.label-brand{font-size:.875rem;color:var(--brand-gray);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.value-brand{color:var(--brand-blue);font-weight:700}.table-brand thead{background:linear-gradient(to bottom,#f0f8fc,#e6f3f9);border-bottom:2px solid var(--brand-blue)}.table-brand th{color:var(--brand-blue);font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-size:.875rem}.table-brand tbody tr{border-bottom:1px solid var(--brand-gray-lighter);transition:background-color .2s}.table-brand tbody tr:hover{background-color:#f8f9fa}.status-badge-brand{display:inline-block;padding:.375rem .875rem;border-radius:20px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.status-pending{background:#fff4e6;color:#e67e22;border:1px solid #f39c12}.status-approved{background:#e8f8f0;color:#27ae60;border:1px solid #2ecc71}.status-rejected{background:#fdecea;color:#c0392b;border:1px solid #e74c3c}.status-cancelled{background:#f4f5f6;color:var(--brand-gray);border:1px solid #95a5a6}.info-row-brand{display:flex;justify-content:space-between;align-items:center;padding:.875rem 0;border-bottom:1px solid #f0f1f2}.info-row-brand:last-child{border-bottom:none}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
