:root {
    --gcc-ink: #172033;
    --gcc-muted: #657084;
    --gcc-line: #dce2e4;
    --gcc-paper: #eef1f1;
    --gcc-navy: #0b1120;
    --gcc-green: #248d6d;
}

body { font-family: system-ui, "Segoe UI", Tahoma, Arial, sans-serif; }

.skip-link {
    position: absolute;
    z-index: 1000;
    inset-block-start: -4rem;
    inset-inline-start: 1rem;
    padding: .55rem .8rem;
    background: #fff;
    color: var(--gcc-ink);
}
.skip-link:focus { inset-block-start: .5rem; }

.gcc-admin-body { margin: 0; background: var(--gcc-paper); color: var(--gcc-ink); }
.gcc-admin-root { min-height: 100vh; }
.gcc-admin-container { width: 100%; max-width: none; padding-inline: 0; }
.gcc-admin-shell { display: grid; grid-template-columns: 216px minmax(0, 1fr); min-height: calc(100vh - 56px); }

.gcc-admin-body #page-topbar.gcc-admin-topbar {
    position: relative;
    z-index: 30;
    min-height: 56px;
    background: var(--gcc-navy);
    color: #f9fbfc;
}
.gcc-topbar-inner {
    min-height: 56px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding-inline: clamp(16px, 3vw, 32px);
}
.gcc-admin-brand { display: inline-flex; align-items: center; color: #fff; text-decoration: none; }
.gcc-admin-brand:hover, .gcc-admin-brand:focus { color: #fff; }
.gcc-brand-word { font-size: 1.15rem; font-weight: 750; letter-spacing: -.04em; }
.gcc-brand-word span { color: #efba64; }
.gcc-console-pill {
    padding: .2rem .55rem;
    border: 1px solid #536077;
    border-radius: 4px;
    color: #efba64;
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.gcc-topbar-actions { margin-inline-start: auto; }
.gcc-user-menu {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    padding: .25rem;
    border: 0;
    background: transparent;
    color: #d5dbe5;
    font-size: .82rem;
}
.gcc-user-menu strong { color: #fff; font-weight: 650; }
.gcc-session-dot { width: 8px; height: 8px; border-radius: 50%; background: #44bd92; }
.gcc-account-dropdown { min-width: 220px; }
.gcc-dropdown-language { padding: .35rem .8rem; color: var(--gcc-muted); font-size: .78rem; }
.gcc-dropdown-language .language-selector { margin-top: .35rem; }
.language-selector { display: inline-flex; margin: 0; }
.language-selector select { min-width: 95px; }

.gcc-admin-sidebar {
    min-width: 0;
    padding-block: 14px 24px;
    border-inline-end: 1px solid var(--gcc-line);
    background: #fff;
}
.gcc-nav-group { margin-bottom: 12px; }
.gcc-nav-label {
    display: block;
    padding: 6px 20px;
    color: #8290a0;
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.gcc-nav-link {
    display: block;
    padding: 10px 20px;
    color: #414e5f;
    font-size: .9rem;
    font-weight: 600;
    text-decoration: none;
}
.gcc-nav-link:hover, .gcc-nav-link:focus { background: #f2f6f4; color: var(--gcc-ink); }
.gcc-nav-link.is-active { border-inline-start: 3px solid var(--gcc-green); padding-inline-start: 17px; background: #e2f3ec; color: var(--gcc-ink); }

.gcc-admin-body .main-content { display: flex; flex-direction: column; min-width: 0; min-height: 100%; margin: 0 !important; }
.gcc-admin-body .page-content { flex: 1; margin: 0; padding: 26px clamp(16px, 2.6vw, 34px) 48px; }
.gcc-context-nav { margin: -26px calc(-1 * clamp(16px, 2.6vw, 34px)) 26px; padding-inline: clamp(16px, 2.6vw, 34px); border-bottom: 1px solid var(--gcc-line); background: #fff; }
.gcc-context-scroll { display: flex; align-items: center; gap: 2px; overflow-x: auto; white-space: nowrap; }
.gcc-context-link { display: inline-flex; padding: 10px 12px; border-bottom: 2px solid transparent; color: var(--gcc-muted); font-size: .84rem; font-weight: 600; text-decoration: none; }
.gcc-context-link:hover, .gcc-context-link:focus { color: var(--gcc-ink); }
.gcc-context-link.is-active { border-bottom-color: var(--gcc-green); color: var(--gcc-ink); }
.gcc-admin-body .page-title-box { margin-bottom: 22px; }
.gcc-admin-body .page-title-box h1, .gcc-admin-body .page-title-box h4 { color: var(--gcc-ink); font-weight: 700; }
.gcc-admin-body .text-muted { color: var(--gcc-muted) !important; }
.gcc-admin-body .card { border: 1px solid var(--gcc-line); border-radius: 10px; box-shadow: 0 1px 2px rgb(11 17 32 / 5%); }
.gcc-admin-body .card-header { border-color: var(--gcc-line); background: #fff; }
.gcc-admin-body .form-label { color: #445166; font-size: .84rem; font-weight: 650; }
.gcc-admin-body .form-control, .gcc-admin-body .form-select { min-height: 42px; border-color: #cbd3d9; }
.gcc-admin-body .btn-primary, .gcc-admin-body .btn-success { border-color: var(--gcc-green); background: var(--gcc-green); }
.gcc-admin-body .btn-primary:hover, .gcc-admin-body .btn-success:hover { border-color: #176d53; background: #176d53; }
.gcc-admin-body .table thead th { color: #4e5a69; font-size: .74rem; font-weight: 750; letter-spacing: .025em; text-transform: uppercase; }
.gcc-admin-body .footer { position: static; padding: 16px clamp(16px, 2.6vw, 34px); border-top: 1px solid var(--gcc-line); background: #fff; color: var(--gcc-muted); }
.gcc-admin-body .footer .container-fluid { padding-inline: 0; }

@media (max-width: 760px) {
    .gcc-admin-shell { display: block; }
    .gcc-admin-sidebar { display: flex; gap: 8px; overflow-x: auto; padding: 5px 12px; border-inline-end: 0; border-bottom: 1px solid var(--gcc-line); }
    .gcc-nav-group { display: flex; align-items: center; flex: 0 0 auto; margin: 0; }
    .gcc-nav-label { display: none; }
    .gcc-nav-link { padding: 10px 12px; white-space: nowrap; }
    .gcc-nav-link.is-active { padding-inline-start: 9px; }
    .gcc-console-pill { display: none; }
    .gcc-user-menu { max-width: 48vw; font-size: .74rem; }
    .gcc-user-menu strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .gcc-admin-body .page-content { padding-block: 18px 32px; }
    .gcc-context-nav { margin-top: -18px; margin-bottom: 18px; }
}
