/* ============================================================
   Unified site sidebar  (t360-sidebar)
   Shared across: updates, guides, circulars, case-laws.
   Sharp / editorial styling to match the site's established
   visual language (2px corners, hairline borders, top accents,
   flat surfaces). Structure & content come from sidebar.php.
   ============================================================ */

.t360-sidebar-block {
    background: var(--surface);
    border: 1px solid var(--border);
    border-top: 2px solid var(--ink);
    margin-bottom: 20px;
}
.t360-sidebar-head {
    font-family: 'Merriweather', serif;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--ink);
    margin: 0;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border);
    background: var(--ink-05);
}
.t360-sidebar-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border);
    text-decoration: none;
    transition: background 0.15s;
}
.t360-sidebar-item:last-child { border-bottom: none; }
.t360-sidebar-item:hover { background: var(--green-25); }
.t360-sidebar-item--active { background: var(--green-50); border-left: 3px solid var(--primary); }

.t360-sidebar-item-title {
    font-size: 0.82rem;
    color: var(--ink-80);
    line-height: 1.45;
    font-weight: 400;
}
.t360-sidebar-item:hover .t360-sidebar-item-title { color: var(--primary); }
.t360-sidebar-item--active .t360-sidebar-item-title { color: var(--primary); font-weight: 600; }

/* boxed micro-label (Recent / Explore / By Court) */
.t360-sidebar-tag {
    flex-shrink: 0;
    margin-top: 2px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--primary);
    background: var(--green-50);
    border: 1px solid var(--green-100);
    padding: 2px 5px;
    border-radius: 2px;
    white-space: nowrap;
}

/* right-aligned count (Categories / By Court) */
.t360-sidebar-count {
    margin-left: auto;
    flex-shrink: 0;
    margin-top: 1px;
    font-size: 0.76rem;
    font-weight: 600;
    color: var(--ink-40);
    font-variant-numeric: tabular-nums;
}
.t360-sidebar-item:hover .t360-sidebar-count,
.t360-sidebar-item--active .t360-sidebar-count { color: var(--primary); }

/* clear-filter row */
.t360-sidebar-clear { justify-content: center; }
.t360-sidebar-clear-text { font-size: 0.78rem; color: var(--ink-40); }
.t360-sidebar-clear:hover .t360-sidebar-clear-text { color: var(--copper-700); }

/* ── Advisory CTA (light, matches site) ── */
.t360-sidebar-advisory {
    background: var(--copper-25);
    border: 1px solid var(--copper-100);
    border-top: 3px solid var(--green-700);
    padding: 18px;
    margin-bottom: 20px;
}
.t360-sidebar-advisory-label {
    font-family: var(--font-sans);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--green-700);
    margin: 0 0 8px;
}
.t360-sidebar-advisory-text {
    font-family: var(--font-sans);
    font-size: 0.80rem;
    color: var(--ink-60);
    line-height: 1.75;
    margin: 0 0 14px;
}
.t360-sidebar-advisory-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-sans);
    font-size: 0.75rem;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
    padding: 7px 14px;
    background: var(--green-700);
    border-radius: var(--radius-sm);
    transition: background 0.18s;
}
.t360-sidebar-advisory-btn:hover { background: var(--green-600); color: #fff; }

/* a11y */
.t360-sidebar-item:focus-visible,
.t360-sidebar-advisory-btn:focus-visible {
    outline: 2px solid var(--green-500);
    outline-offset: -2px;
}

/* ============================================================
   Mobile additions (≤991px): chip row + page-end tail.
   Desktop sidebar is hidden by the page's .{xx}-sidebar rule.
   ============================================================ */

.t360-mobile-filter,
.t360-mobile-tail { display: none; }

/* Category chip row — matches site filter pills (sharp 2px) */
.t360-chip {
    flex: 0 0 auto;
    font-family: var(--font-sans);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--ink-60);
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 2px;
    padding: 6px 12px;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.t360-chip:hover { background: var(--ink-80); color: #fff; border-color: var(--ink-80); }
.t360-chip--active { background: var(--ink-80); color: #fff; border-color: var(--ink-80); }

@media (max-width: 991px) {
    .t360-mobile-filter {
        display: flex;
        gap: 6px;
        min-width: 0;
        max-width: 100%;
        overflow-x: auto;
        padding: 2px 0 14px;
        margin: 0 0 4px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .t360-mobile-filter::-webkit-scrollbar { display: none; }

    .t360-mobile-tail {
        display: block;
        margin-top: 24px;
        padding-top: 4px;
    }
}
