.duralux-app{display:flex;flex-direction:column;min-height:100vh;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.duralux-header{height:56px;display:flex;align-items:center;padding:0 1.5rem;background:#111827;color:#f9fafb;box-shadow:0 1px 3px #0003}.logo{display:flex;align-items:center}.logo img{height:28px;display:block}.header-right{margin-left:auto;display:flex;align-items:center;gap:.75rem}.header-user{font-size:.9rem;color:#e5e7eb}.duralux-body{display:flex;flex:1;min-height:0}.duralux-sidebar{width:240px;background:#020617;color:#e5e7eb;padding:1rem}.duralux-sidebar a{color:#e5e7eb;text-decoration:none}.duralux-sidebar a:hover{color:#38bdf8}.duralux-main{flex:1;padding:1.5rem;background:#f3f4f6;overflow:auto}.nav-section-title{margin-top:1rem;margin-bottom:.25rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.nav-section-title:first-of-type{margin-top:0}.duralux-sidebar ul{list-style:none;padding:0;margin:0 0 .5rem}.duralux-sidebar li{padding:.35rem 0;font-size:.9rem}.page-header{display:flex;justify-content:space-between;align-items:center}.timesheet-actions{display:inline-flex;align-items:center;gap:.5rem}.card{background:#fff;border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 2px #0f172a14}.card+.card{margin-top:1rem}.grid-2 .card+.card{margin-top:0}.card-title{font-weight:600;margin-bottom:.5rem}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;align-items:flex-start}table{width:100%;border-collapse:collapse;font-size:.875rem}th,td{padding:.5rem .75rem;border-bottom:1px solid #e5e7eb}th{text-align:left;font-weight:500;color:#6b7280}.row-muted{color:#9ca3af}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:500}.badge-success{background:#ecfdf3;color:#16a34a}.badge-warning{background:#fef3c7;color:#d97706}.badge-danger{background:#fef2f2;color:#dc2626}.button{display:inline-flex;align-items:center;justify-content:center;padding:.4rem .9rem;border-radius:999px;border:none;font-size:.85rem;font-weight:500;cursor:pointer;background:#111827;color:#f9fafb}.button-outline{background:transparent;color:#111827;border:1px solid #d1d5db}.duralux-header .button-outline{color:#f9fafb;border-color:#4b5563;background:transparent}.duralux-header .button-outline:hover{background:#1f2937cc}.timesheet-actions .button-outline{border-radius:999px;padding-inline:.9rem;padding-block:.35rem;font-size:.8rem;background:#f9fafb;border-color:#e5e7eb;color:#111827}.timesheet-actions .button-outline:hover{background:#e5e7eb}.button+.button{margin-left:.5rem}.button-danger{background:#b91c1c;color:#fef2f2}.button-danger:hover{background:#991b1b}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.form-field{display:flex;flex-direction:column;font-size:.85rem}.form-field label{margin-bottom:.25rem;color:#4b5563}.form-field input,.form-field select,.form-field textarea{border-radius:.5rem;border:1px solid #d1d5db;padding:.4rem .6rem;font-size:.85rem}.form-field textarea{min-height:80px}.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#0f172a,#020617 40%,#0f172a 80%)}.auth-card{width:360px;background:#020617;color:#e5e7eb;border-radius:1rem;padding:2rem;box-shadow:0 20px 40px #0009}.auth-logo-wrapper{display:flex;justify-content:center;margin-bottom:1rem}.auth-logo{max-width:180px;height:auto}.auth-title{font-size:1.4rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.auth-card .form-field label{color:#9ca3af}.auth-card .form-field input{background:#020617;color:#e5e7eb;border-color:#1f2937}.auth-error{background:#fef2f2;color:#b91c1c;border-radius:.5rem;padding:.5rem .75rem;margin-bottom:.75rem;font-size:.8rem}.accordion-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:.5rem;border:1px solid #e5e7eb;background:#f9fafb;cursor:pointer;font-size:.9rem}.accordion-header:hover{background:#e5e7eb}.accordion-hours{font-weight:500;color:#111827}.accordion-toggle{font-weight:700}.accordion-body{margin-top:.5rem}.day-summary-row{background:#f3f4f6}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:50}.modal{width:420px;max-width:calc(100% - 2rem);background:#fff;border-radius:.75rem;padding:1.5rem;box-shadow:0 20px 45px #0f172a59}.modal h2{margin-top:0;margin-bottom:.75rem;font-size:1.1rem}
