:root{--blue:#2563eb;--ink:#111827;--muted:#667085;--border:#e5e7eb;--bg:#f6f8fc}body{background:var(--bg);color:var(--ink)}.app-nav{height:68px;background:#fff;border-bottom:1px solid var(--border);box-shadow:0 1px 8px #11182708}.navbar-brand{font-size:1.05rem;font-weight:700;color:var(--ink)!important}.nav-link{color:var(--muted)!important;border-radius:8px;padding:.45rem .75rem!important}.nav-link:hover{background:#f3f4f6;color:var(--ink)!important}.nav-link.active{background:#eff6ff;color:var(--blue)!important;font-weight:600}.user-email{color:var(--muted);font-size:.9rem;margin-right:1rem}.app-main{max-width:1280px;padding-top:32px;padding-bottom:48px}.app-footer{padding:20px 0;border-top:1px solid var(--border);background:#fff;text-align:center;font-size:.875rem}.app-footer a{color:var(--muted);text-decoration:none}.app-footer a:hover,.app-footer a:focus-visible{color:var(--blue);text-decoration:underline}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.page-header h1{font-size:30px;font-weight:700;margin:0 0 6px}.page-header p{color:var(--muted);margin:0}.card,.filter-card,.detail-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:0 2px 8px #11182708}.filter-card{margin-bottom:18px}.application-filter-secondary{margin-top:18px;padding-top:18px;border-top:1px solid #eef1f5}.application-filter-form .form-control,.application-filter-form .form-select,.application-filter-form .btn{min-height:44px}.application-filter-form .input-group-text{background:#f8fafc;border-color:var(--border);color:var(--muted);font-size:.9rem}.application-reset{border-color:#d0d5dd;color:#475467;font-weight:600}.application-reset:hover{border-color:#98a2b3;background:#f8fafc;color:#344054}.table-card{padding:0;overflow:hidden}.table-card th{color:var(--muted);font-weight:600;background:#fafafa}.table-card td,.table-card th{padding:16px}.table-card tbody tr:hover{background:#f8fbff}.form-section{padding:18px 0;border-bottom:1px solid var(--border)}.form-section:last-child{border:0}.form-section h2,.card h2{font-size:16px;font-weight:700;margin-bottom:16px}.narrow-page{max-width:960px;margin:auto}.metric-card{height:100%;padding:18px;background:#fff;border:1px solid var(--border);border-radius:14px}.step-card{height:100%;min-height:148px;padding:14px 16px;background:#fff;border:1px solid var(--border);border-radius:14px}.metric-card small{color:var(--muted)}.metric-card strong{display:block;font-size:28px;margin-top:6px}.secondary-stats{display:flex;gap:20px;color:var(--muted);font-size:.9rem}.chart-container{position:relative;height:260px}.chart-container-wide{height:280px}.recent-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border)}.step-card span{color:var(--blue);font-size:.9rem;font-weight:700}.step-card h2{margin:4px 0 8px;font-size:1.35rem;line-height:1.25}.step-card p{margin:0;color:var(--ink);font-size:.9rem;line-height:1.5}.upload-card{text-align:center;border:2px dashed #bfdbfe;background:#f8fbff;border-radius:14px;padding:32px}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 460px}.auth-intro{padding:12vw 10%;background:#eff6ff}.auth-intro h1{font-size:42px}.auth-panel{display:flex;align-items:center;padding:24px}.auth-card{width:100%;max-width:420px;margin:auto}@media(max-width:768px){.auth-layout{display:block}.auth-intro{padding:48px 24px}.auth-intro h1{font-size:30px}.app-main{padding:24px 16px}.page-header h1{font-size:26px}.user-email{display:none}.chart-container{height:240px}.step-card{min-height:0}.application-filter-secondary{margin-top:14px;padding-top:14px}}
.filter-card{padding:30px}.application-filter-form{display:flex;flex-direction:column;gap:24px}.application-filter-row{margin-top:0!important}.application-filter-secondary{margin-top:0!important;padding-top:24px;border-top:1px solid #e9edf3}@media(max-width:768px){.application-filter-form{gap:18px}.application-filter-secondary{margin-top:0!important;padding-top:20px}}
.application-filter-form{display:flex;flex-direction:column;gap:14px}.application-filter-secondary{margin-top:0!important;padding-top:14px;border-top:1px solid #e9edf3}.application-reset{background:#667085;border-color:#667085;color:#fff;font-weight:600}.application-reset:hover{background:#475467;border-color:#475467;color:#fff}@media(max-width:768px){.application-filter-form{gap:12px}.application-filter-secondary{margin-top:0!important;padding-top:12px}}
.application-filter-row{margin-top:0!important;--bs-gutter-y:0}.application-reset{background:#e4f6ea;border-color:#b9e1c5;color:#166534;font-weight:600}.application-reset:hover{background:#d5f0df;border-color:#97cfab;color:#14532d}.application-filter-submit{background:#e0efff;border-color:#b8d7ff;color:#1d4ed8;font-weight:600}.application-filter-submit:hover{background:#cfe5ff;border-color:#91bfff;color:#1e40af}.application-create-button{background:#fff1d6;border-color:#ffd69a;color:#9a4d00;font-weight:600}.application-create-button:hover{background:#ffe6b8;border-color:#f5bf6f;color:#7c3c00}.application-date-picker{position:relative;display:flex;flex:0 1 152px;min-width:0}.application-date-picker-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.application-date-range .input-group-text,.application-date-picker-value,.application-date-picker-trigger{min-height:44px}.application-date-picker-value{display:flex;align-items:center;flex:1;min-width:0;padding:.375rem .75rem;border:1px solid var(--border);border-left:0;background:#fff;color:var(--muted);pointer-events:none}.application-date-picker-trigger{display:grid;place-items:center;flex:0 0 44px;border:1px solid var(--border);border-left:0;background:#fff;color:#344054}.application-date-picker-trigger:hover{background:#f8fafc;color:#1d4ed8}.application-date-picker-trigger:focus-visible{position:relative;z-index:2;outline:2px solid #93c5fd;outline-offset:-2px}.application-date-picker-trigger svg{width:18px;height:18px}.application-date-range>.input-group-text:not(:first-child){border-left:0}.application-date-picker-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.application-reset{height:44px;align-self:start}.application-date-range{display:grid;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);width:100%;flex-wrap:nowrap}.application-date-picker{width:100%;flex:none}@media(min-width:992px){.application-filter-location,.application-filter-stage-result{flex:0 0 auto;width:12.5%}}
