:root{--efs-bg:#f5f7fb;--efs-panel:#fff;--efs-border:#dfe5ee;--efs-text:#172033;--efs-muted:#637083;--efs-primary:#2454a6;--efs-danger:#b42318;--efs-warning:#a15c07;--efs-success:#157347}body{background:var(--efs-bg);color:var(--efs-text)}.navbar-brand{color:var(--efs-text);flex-shrink:0}.stat-card,.panel{background:var(--efs-panel);border:1px solid var(--efs-border);border-radius:8px}.stat-card{min-height:128px;padding:1rem;display:flex;flex-direction:column;justify-content:space-between}.stat-label,.stat-hint{color:var(--efs-muted);font-size:.875rem}.stat-value{color:var(--efs-primary);font-size:2rem;line-height:1.1}.panel{padding:1rem}.section-heading{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.control-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.control-card{background:var(--efs-panel);border:1px solid var(--efs-border);border-radius:8px;color:var(--efs-text);display:grid;gap:.35rem;min-height:132px;padding:1rem;text-decoration:none}.control-card:hover,.control-card:focus{border-color:var(--efs-primary);color:var(--efs-text)}.control-title{font-weight:700}.control-meta{color:var(--efs-primary);font-size:.95rem;font-weight:700}.control-text{color:var(--efs-muted);font-size:.9rem;line-height:1.35}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.table th{color:var(--efs-muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.log-list{display:grid;gap:.75rem}.log-item{border-bottom:1px solid var(--efs-border);padding-bottom:.75rem}.log-level.info{background:#e9f2ff;color:#1e4f91}.log-level.warning{background:#fff4db;color:#7a4400}.log-level.error{background:#ffe8e5;color:#9f1b12}.form-panel{background:var(--efs-panel);border:1px solid var(--efs-border);border-radius:8px;margin:0 auto;max-width:720px;padding:1.25rem}.nav-link{color:var(--efs-muted);display:inline-flex;align-items:center;min-height:36px;padding-left:.5rem;padding-right:.5rem;white-space:nowrap}.nav-link:hover,.nav-link:focus{color:var(--efs-primary)}.navbar-nav{flex-wrap:wrap;min-width:0}.analytics-toolbar{align-items:center;background:var(--efs-panel);border:1px solid var(--efs-border);border-radius:8px;display:flex;gap:1rem;justify-content:space-between;padding:1rem}.analytics-filter{align-items:end;display:flex;gap:.75rem}.analytics-filter .form-control{min-width:160px}.analytics-card{background:#14233a;border:1px solid #203653;border-radius:8px;color:#fff;display:block;min-height:128px;overflow:hidden;padding:1rem;position:relative;text-decoration:none}.analytics-card:hover,.analytics-card:focus{color:#fff;transform:translateY(-1px)}.analytics-card.blue{background:#1355cf}.analytics-card.dark{background:#1d2c3d}.analytics-card.danger{background:#151d2a}.analytics-card-label{display:block;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.analytics-card strong{display:block;font-size:2rem;line-height:1.1;margin-top:.55rem}.analytics-card span:last-child,.analytics-card>span:not(.analytics-card-label):not(.analytics-card-icon){color:rgba(255,255,255,.78)}.analytics-card-icon{align-items:center;background:rgba(255,255,255,.08);border-radius:999px;display:flex;font-weight:700;height:86px;justify-content:center;position:absolute;right:-18px;top:-18px;width:86px}.distribution-list{display:grid;gap:.75rem}.distribution-row{align-items:center;border:1px solid var(--efs-border);border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.detail-panel-title{background:#0f2b47;color:#fff;font-weight:700;padding:.9rem 1rem}.purpose-tabs{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem}.purpose-tab{background:#eef3f9;border:1px solid var(--efs-border);border-radius:6px;color:var(--efs-text);font-weight:600;min-width:74px;padding:.65rem .9rem;text-align:center;text-decoration:none}.purpose-tab.active,.purpose-tab:hover,.purpose-tab:focus{background:#fff;border-color:var(--efs-primary);color:var(--efs-primary)}@media(max-width:767.98px){.analytics-toolbar,.analytics-filter{align-items:stretch;flex-direction:column}.analytics-filter .form-control{min-width:0}}
