/* =============================================================
   Revio — Sector page (templates/sector.blade.php)
   Only what the page adds; the cards, tables and chart come from report.css.
   ============================================================= */

/* the month still running: lighter, it is not a full bar yet */
.rp-chart rect.sp-partial { opacity: 0.4; }

/* a table row name that opens its own page (a category) */
.sp-row-link {
    display: block;
    color: var(--ink);
    text-decoration: none;
}
.sp-row-link:hover { color: var(--violet); }

/* the badge that leads back to the parent sector */
.sp-badge-link {
    text-decoration: none;
    background: var(--white);
}
.sp-badge-link:hover { border-color: var(--violet); }

/* latest registrations: a person's business shows no name */
.sp-locked {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--muted);
    font-style: italic;
}

.sp-more {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border);
    font-size: 0.875rem;
    color: var(--muted);
}

.sp-more-link {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-weight: 600;
    color: var(--violet);
    text-decoration: none;
    white-space: nowrap;
}
.sp-more-link:hover { color: var(--violet-dark); }

/* alerts box */
.sp-alert {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    background: var(--violet-dim);
    border: 1px solid var(--violet-border);
    border-radius: var(--radius-lg);
    padding: 1.5rem;
}

.sp-alert-icon {
    font-size: 1.75rem;
    line-height: 1;
    flex-shrink: 0;
}

.sp-alert-body {
    flex: 1;
    min-width: 0;
}

.sp-alert-title {
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--ink);
    letter-spacing: -0.03em;
    margin: 0;
}

.sp-alert-sub {
    font-size: 0.875rem;
    color: var(--muted);
    line-height: 1.6;
    margin: 0.25rem 0 0;
}

.sp-alert .btn-dark {
    white-space: nowrap;
    flex-shrink: 0;
}

/* other sectors */
.sp-sectors .rp-card-title {
    margin-bottom: 1rem;
}

.sp-sectors-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.625rem;
}

.sp-sector-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--ink);
    text-decoration: none;
    transition: border-color 0.15s;
}
.sp-sector-link:hover { border-color: var(--violet-border); }
.sp-sector-link span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* =============================================================
   SECTORS HUB (templates/sectors.blade.php): one card per sector
   ============================================================= */
.sp-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

.sp-card {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    min-width: 0;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 1.25rem 1.375rem;
    text-decoration: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.sp-card:hover { border-color: var(--violet-border); box-shadow: var(--shadow-md); }

.sp-card-head {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.sp-card-icon {
    font-size: 1.375rem;
    line-height: 1;
    flex-shrink: 0;
}

.sp-card-title {
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    letter-spacing: -0.02em;
    line-height: 1.3;
    margin: 0;
}

.sp-card-text {
    font-size: 0.875rem;
    color: var(--muted);
    line-height: 1.55;
    margin: 0;
}

.sp-card-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
    margin-top: auto;
}

.sp-card-value {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    font-variant-numeric: tabular-nums;
}

.sp-card-label {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.375rem;
    font-size: 0.75rem;
    color: var(--muted);
    margin-top: 0.125rem;
}

.sp-card .rp-row-bar { margin-top: 0; }

/* =============================================================
   RESPONSIVE
   ============================================================= */
@media (max-width: 1024px) {
    .sp-sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .sp-cards { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
    .sp-alert { flex-direction: column; align-items: flex-start; }
    .sp-more { flex-direction: column; align-items: flex-start; }
    .sp-sectors-grid { grid-template-columns: 1fr; }
    .sp-cards { grid-template-columns: 1fr; }
}