/* O.G. Sanft & Sons ERP — app shell styling */
.ogs-app { font-size: 14px; color: #1f2937; }
.ogs-topbar { background: linear-gradient(90deg,#0f3d6e,#1763a6); color:#fff; border-radius:8px; }
.ogs-topbar .ogs-brand { font-size:1.05rem; }
.ogs-topbar .ogs-user { color:#cfe3f7 !important; }
.ogs-body { gap: 12px; align-items: stretch; }
.ogs-sidebar { width: 220px; min-width: 200px; background:#f4f7fb; border:1px solid #e3eaf2; border-radius:8px; height:max-content; }
.ogs-nav-link { display:block; padding:8px 10px; margin-bottom:2px; border-radius:6px; color:#23527c; text-decoration:none; font-weight:500; }
.ogs-nav-link:hover { background:#e6eef8; }
.ogs-nav-link.active { background:#1763a6; color:#fff; }
.ogs-ico { display:inline-block; width:1.4em; text-align:center; }
.ogs-content { background:#fff; border:1px solid #e3eaf2; border-radius:8px; min-height:60vh; }
.ogs-kpi { border:none; border-left:4px solid #1763a6; border-radius:8px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.ogs-kpi .ogs-kpi-val { font-size:1.5rem; font-weight:700; }
.ogs-kpi .ogs-kpi-lbl { color:#6b7280; font-size:.8rem; text-transform:uppercase; letter-spacing:.03em; }
.ogs-kpi.green { border-left-color:#16a34a; }
.ogs-kpi.red { border-left-color:#dc2626; }
.ogs-kpi.amber { border-left-color:#d97706; }
.ogs-section-title { font-weight:700; color:#0f3d6e; border-bottom:2px solid #e3eaf2; padding-bottom:6px; margin:18px 0 12px; }
table.ogs-table { width:100%; font-size:13px; }
table.ogs-table thead th { background:#eef3f9; color:#0f3d6e; }
.ogs-num { text-align:right; font-variant-numeric: tabular-nums; }
.ogs-total td { font-weight:700; border-top:2px solid #0f3d6e !important; background:#f8fafc; }
/* drill-down */
.ogs-drill { cursor:pointer; }
.ogs-drill:hover { background:#f0f7ff; }
.ogs-drill:focus { outline:2px solid #1763a6; }
.ogs-detail { display:none; background:#f8fbff; }
.ogs-detail.open { display:table-row; }
.ogs-hint { font-size:.75rem; color:#6b7280; }
.ogs-pill { font-size:.7rem; padding:2px 8px; border-radius:10px; }
.ogs-pill.ok { background:#dcfce7; color:#166534; }
.ogs-pill.warn { background:#fef9c3; color:#854d0e; }
.ogs-pill.bad { background:#fee2e2; color:#991b1b; }
@media (max-width: 820px){ .ogs-body{ flex-direction:column;} .ogs-sidebar{ width:100%; } }
