:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f8fb;color:#111827}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f6f8fb}.app-shell{min-height:100vh}.dashboard-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh;background:#f6f8fb}.sidebar{display:flex;flex-direction:column;gap:28px;border-right:1px solid #e5e7eb;background:#fff;padding:24px 18px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:inline-flex;width:40px;height:40px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;background:#111827;color:#fff;font-size:13px;font-weight:900;letter-spacing:0;text-transform:uppercase}.brand strong,.brand small{display:block}.brand strong{color:#111827;font-size:16px;font-weight:900}.brand small{margin-top:2px;color:#6b7280;font-size:12px;font-weight:700}.nav{display:grid;gap:6px}.nav-item{display:flex;align-items:center;min-height:36px;border-radius:7px;padding:0 12px;color:#4b5563;font-size:13px;font-weight:800}.nav-item--active{background:#eef2ff;color:#3730a3}.workspace{min-width:0;padding:28px}.toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.toolbar h1,.toolbar p{margin:0}.toolbar h1{color:#111827;font-size:28px;line-height:1.15}.toolbar p{margin-top:6px;color:#6b7280;font-size:14px;font-weight:600}.toolbar .eyebrow{margin:0 0 6px;color:#4f46e5;font-size:12px;font-weight:900;text-transform:uppercase}.refresh-button{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:7px;background:#fff;color:#111827;cursor:pointer;font:inherit;font-size:13px;font-weight:800;padding:0 14px}.refresh-button:hover:not(:disabled){border-color:#9ca3af;background:#f9fafb}.refresh-button:disabled{color:#9ca3af;cursor:wait}.error-banner{margin-bottom:14px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#991b1b;font-size:13px;font-weight:700;padding:12px 14px}.section-stack{display:grid;gap:14px}.status-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1;white-space:nowrap}.status-badge--success{background:#dcfce7;color:#166534}.status-badge--warning{background:#fef3c7;color:#92400e}.status-badge--danger{background:#fee2e2;color:#991b1b}.status-badge--muted{background:#e5e7eb;color:#4b5563}.usage-bar{display:grid;grid-template-columns:minmax(36px,auto) minmax(88px,1fr) minmax(44px,auto);align-items:center;gap:10px;width:100%;color:#4b5563;font-size:12px;font-weight:700}.usage-bar__label,.usage-bar__amount{white-space:nowrap}.usage-bar__amount{color:#111827;text-align:right}.usage-bar__track{display:block;height:8px;overflow:hidden;border-radius:999px;background:#e5e7eb}.usage-bar__fill{display:block;height:100%;border-radius:inherit;background:#2563eb}.readonly-switch{position:relative;display:inline-flex;width:36px;height:20px;flex:0 0 auto;border-radius:999px;background:#d1d5db;vertical-align:middle}.readonly-switch:after{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 1px 2px #0f172a33;content:"";transition:transform .16s ease}.readonly-switch--on{background:#16a34a}.readonly-switch--on:after{transform:translate(16px)}.summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;width:100%;margin:0;padding:12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.summary-strip__item{min-width:0}.summary-strip__label{margin:0 0 4px;color:#6b7280;font-size:12px;font-weight:700}.summary-strip__value{margin:0;color:#111827;font-size:18px;font-weight:800;line-height:1.2}.data-card{overflow:hidden;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.data-head,.data-row{display:grid;align-items:center;gap:14px;padding:10px 14px}.data-head{border-bottom:1px solid #e5e7eb;background:#f9fafb;color:#6b7280;font-size:12px;font-weight:800}.data-row{min-height:64px;border-bottom:1px solid #f1f5f9;color:#111827;font-size:13px}.data-row:last-child{border-bottom:0}.subscription-grid{grid-template-columns:minmax(180px,1.3fr) minmax(120px,.8fr) minmax(220px,1.4fr) minmax(92px,.6fr) minmax(78px,.5fr) minmax(48px,auto)}.account-grid{grid-template-columns:minmax(170px,1.2fr) minmax(150px,.9fr) minmax(86px,.6fr) minmax(86px,.6fr) minmax(52px,.4fr) minmax(92px,.6fr) minmax(48px,auto)}.identity-cell{display:flex;min-width:0;align-items:center;gap:10px}.identity-cell strong,.identity-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-cell small,.data-row small,.muted-text{color:#6b7280;font-size:12px;font-weight:600}.avatar{display:inline-flex;width:32px;height:32px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:13px;font-weight:800}.chip,.chip-stack{display:inline-flex;align-items:center}.chip-stack{flex-wrap:wrap;gap:6px}.chip{min-height:24px;padding:0 9px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:800;line-height:1;white-space:nowrap}.chip--green{background:#dcfce7;color:#166534}.usage-stack{display:grid;gap:6px;min-width:0}.link-button,.readonly-action{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0;border:0;background:transparent;color:#2563eb;cursor:pointer;font:inherit;font-size:13px;font-weight:800}.readonly-action{color:#6b7280;cursor:default}.link-button:hover{color:#1d4ed8;text-decoration:underline}@media (max-width: 860px){.data-head{display:none}.subscription-grid,.account-grid{grid-template-columns:1fr}.data-row{align-items:start;gap:10px;padding:14px}}@media (max-width: 1080px){.dashboard-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #e5e7eb;padding:16px}.nav{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto}.workspace{padding:20px 16px}.toolbar{align-items:stretch}}@media (max-width: 640px){.toolbar{flex-direction:column}.refresh-button{width:100%}}
