/*
 * 檔案名稱：assets/css/app.css
 * 修改日期：2026/07/28 00:41（UTC+8）
 * 檔案用途：GogoPower 手機優先前後台共用樣式與響應式設計系統
 * 修改說明：新增工作指揮台緊湊會員列、維護卡片等高按鈕對齊及既有帳號整理樣式
 */

:root {
    color-scheme: dark;
    --gp-bg: #07111f;
    --gp-bg-soft: #0d1a2d;
    --gp-panel: #111f34;
    --gp-panel-strong: #172940;
    --gp-line: #2a3e5d;
    --gp-text: #f7f9ff;
    --gp-muted: #91a4bf;
    --gp-primary: #5ba7ff;
    --gp-primary-strong: #2d7fe7;
    --gp-green: #43d59c;
    --gp-yellow: #ffc857;
    --gp-red: #ff6d7f;
    --gp-shadow: 0 18px 50px rgba(0, 0, 0, .28);
    --gp-radius-lg: 24px;
    --gp-radius-md: 16px;
    --gp-safe-bottom: env(safe-area-inset-bottom, 0px);
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    background: var(--gp-bg);
}

body {
    min-height: 100vh;
    margin: 0;
    padding: 0 0 calc(86px + var(--gp-safe-bottom));
    overflow-x: hidden;
    color: var(--gp-text);
    background:
        radial-gradient(circle at 15% -10%, rgba(64, 132, 224, .35), transparent 38%),
        radial-gradient(circle at 100% 10%, rgba(67, 213, 156, .12), transparent 30%),
        var(--gp-bg);
    font-family: Inter, "Noto Sans TC", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.5;
}

button,
input,
select,
textarea {
    font: inherit;
}

button,
a,
input,
select,
textarea {
    -webkit-tap-highlight-color: transparent;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
}

.gp-shell {
    width: min(1180px, 100%);
    margin: 0 auto;
    padding: 16px;
}

.gp-topbar {
    position: sticky;
    top: 0;
    z-index: 30;
    border-bottom: 1px solid rgba(70, 100, 140, .45);
    background: rgba(7, 17, 31, .88);
    backdrop-filter: blur(18px);
}

.gp-topbar-inner {
    width: min(1180px, 100%);
    min-height: 64px;
    margin: 0 auto;
    padding: 10px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.gp-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.gp-brand-mark {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(91, 167, 255, .45);
    border-radius: 14px;
    background: linear-gradient(145deg, rgba(45, 127, 231, .35), rgba(67, 213, 156, .18));
    color: #9bc8ff;
}

.gp-brand-copy {
    min-width: 0;
}

.gp-brand-copy strong,
.gp-brand-copy span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-brand-copy strong {
    font-size: 16px;
}

.gp-brand-copy span {
    color: var(--gp-muted);
    font-size: 11px;
}

.gp-avatar {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    overflow: hidden;
    border: 1px solid var(--gp-line);
    border-radius: 50%;
    background: var(--gp-panel-strong);
    color: var(--gp-primary);
    font-weight: 800;
}

.gp-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gp-page-head {
    padding: 16px 2px 8px;
}

.gp-page-head h1 {
    margin: 0;
    font-size: clamp(24px, 7vw, 38px);
    line-height: 1.16;
}

.gp-page-head p {
    max-width: 720px;
    margin: 8px 0 0;
    color: var(--gp-muted);
    font-size: 14px;
    line-height: 1.7;
}

.gp-grid {
    display: grid;
    gap: 14px;
}

.gp-grid-2,
.gp-grid-3,
.gp-grid-4 {
    grid-template-columns: minmax(0, 1fr);
}

.gp-card {
    min-width: 0;
    border: 1px solid rgba(64, 91, 126, .72);
    border-radius: var(--gp-radius-lg);
    background: linear-gradient(150deg, rgba(22, 40, 66, .96), rgba(12, 25, 44, .96));
    box-shadow: var(--gp-shadow);
}

.gp-card-pad {
    padding: 18px;
}

.gp-card-title {
    margin: 0;
    font-size: 16px;
}

.gp-card-subtitle {
    margin: 6px 0 0;
    color: var(--gp-muted);
    font-size: 12px;
}

.gp-stat {
    position: relative;
    overflow: hidden;
    padding: 17px;
}

.gp-stat::after {
    content: "";
    position: absolute;
    right: -28px;
    bottom: -42px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(91, 167, 255, .08);
}

.gp-stat-label {
    color: var(--gp-muted);
    font-size: 12px;
}

.gp-stat-value {
    position: relative;
    z-index: 1;
    margin-top: 8px;
    font-variant-numeric: tabular-nums;
    font-size: clamp(25px, 8vw, 38px);
    font-weight: 850;
    line-height: 1.05;
}

.gp-stat-unit {
    margin-left: 4px;
    color: var(--gp-muted);
    font-size: 12px;
    font-weight: 600;
}

.gp-stat-note {
    position: relative;
    z-index: 1;
    margin-top: 9px;
    color: var(--gp-muted);
    font-size: 11px;
}

.gp-accent-green .gp-stat-value {
    color: var(--gp-green);
}

.gp-accent-yellow .gp-stat-value {
    color: var(--gp-yellow);
}

.gp-accent-red .gp-stat-value {
    color: var(--gp-red);
}

.gp-section {
    margin-top: 18px;
}

.gp-section-head {
    margin-bottom: 10px;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 12px;
}

.gp-section-head h2 {
    margin: 0;
    font-size: 18px;
}

.gp-section-head p {
    margin: 4px 0 0;
    color: var(--gp-muted);
    font-size: 12px;
}

.gp-btn-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.gp-btn {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    border: 1px solid transparent;
    border-radius: 14px;
    padding: 10px 15px;
    color: #fff;
    background: var(--gp-primary-strong);
    font-weight: 750;
    line-height: 1.1;
    white-space: nowrap;
    cursor: pointer;
    transition: transform .15s ease, filter .15s ease, background .15s ease;
}

.gp-btn:active {
    transform: scale(.98);
}

.gp-btn:disabled {
    opacity: .58;
    cursor: wait;
}

.gp-btn-secondary {
    border-color: var(--gp-line);
    background: rgba(35, 56, 84, .7);
    color: #dce8fb;
}

.gp-btn-success {
    background: #18875f;
}

.gp-btn-danger {
    border-color: rgba(255, 109, 127, .46);
    background: rgba(157, 45, 63, .62);
}

.gp-btn-ghost {
    border-color: var(--gp-line);
    background: transparent;
    color: #cbd8eb;
}

.gp-btn-small {
    min-height: 38px;
    border-radius: 12px;
    padding: 8px 11px;
    font-size: 12px;
}

.gp-btn-block {
    width: 100%;
}

.gp-form {
    display: grid;
    gap: 15px;
}

.gp-field {
    min-width: 0;
}

.gp-field label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: 0 0 7px;
    color: #cad7e9;
    font-size: 12px;
    font-weight: 650;
}

.gp-field small {
    color: var(--gp-muted);
    font-size: 10px;
    font-weight: 500;
}

.gp-input,
.gp-select,
.gp-textarea {
    width: 100%;
    min-height: 48px;
    border: 1px solid #334a6a;
    border-radius: 14px;
    outline: 0;
    background: #091525;
    color: var(--gp-text);
    padding: 11px 13px;
    font-size: 16px;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.gp-textarea {
    min-height: 110px;
    resize: vertical;
}

.gp-input:focus,
.gp-select:focus,
.gp-textarea:focus {
    border-color: var(--gp-primary);
    box-shadow: 0 0 0 3px rgba(91, 167, 255, .16);
}

.gp-input[readonly] {
    color: #a8bad2;
    background: #0e1b2d;
}

.gp-input-error {
    border-color: var(--gp-red) !important;
}

.gp-form-help {
    margin-top: 6px;
    color: var(--gp-muted);
    font-size: 11px;
    line-height: 1.6;
}

.gp-switch-row {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border: 1px solid var(--gp-line);
    border-radius: 14px;
    padding: 11px 13px;
    background: rgba(7, 17, 31, .46);
}

.gp-switch-row input {
    width: 24px;
    height: 24px;
    flex: 0 0 auto;
    accent-color: var(--gp-primary);
}

.gp-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 14px;
    border: 1px solid var(--gp-line);
    border-radius: 16px;
    padding: 6px;
    background: rgba(6, 14, 27, .72);
}

.gp-tab {
    min-height: 44px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--gp-muted);
    font-weight: 750;
    white-space: nowrap;
    cursor: pointer;
}

.gp-tab.is-active {
    background: #245f9f;
    color: #fff;
    box-shadow: 0 8px 20px rgba(15, 89, 167, .25);
}

.gp-panel-hidden {
    display: none !important;
}

.gp-preview {
    border: 1px solid rgba(67, 213, 156, .35);
    border-radius: 16px;
    padding: 14px;
    background: rgba(16, 80, 61, .17);
}

.gp-preview-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.gp-preview-label {
    color: var(--gp-muted);
    font-size: 10px;
}

.gp-preview-value {
    margin-top: 3px;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
}

.gp-alert {
    border: 1px solid var(--gp-line);
    border-radius: 16px;
    padding: 13px 14px;
    color: #d8e4f4;
    background: rgba(24, 41, 66, .78);
    font-size: 13px;
    line-height: 1.65;
}

.gp-alert-warning {
    border-color: rgba(255, 200, 87, .45);
    background: rgba(116, 78, 18, .23);
}

.gp-alert-danger {
    border-color: rgba(255, 109, 127, .45);
    background: rgba(123, 33, 49, .24);
}

.gp-alert-success {
    border-color: rgba(67, 213, 156, .45);
    background: rgba(22, 99, 73, .24);
}

.gp-record-list {
    display: grid;
    gap: 10px;
}

.gp-record {
    border: 1px solid var(--gp-line);
    border-radius: 18px;
    padding: 14px;
    background: rgba(9, 21, 37, .72);
}

.gp-record-head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}

.gp-record-type {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 800;
}

.gp-record-time {
    margin-top: 3px;
    color: var(--gp-muted);
    font-size: 11px;
}

.gp-record-primary {
    margin-top: 12px;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 12px;
}

.gp-record-primary strong {
    font-variant-numeric: tabular-nums;
    font-size: 24px;
}

.gp-record-metrics {
    margin-top: 12px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.gp-record-metric {
    min-width: 0;
    border-radius: 12px;
    padding: 9px;
    background: rgba(23, 41, 64, .72);
}

.gp-record-metric span,
.gp-record-metric strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-record-metric span {
    color: var(--gp-muted);
    font-size: 10px;
}

.gp-record-metric strong {
    margin-top: 3px;
    font-variant-numeric: tabular-nums;
    font-size: 14px;
}

.gp-record-actions {
    display: flex;
    gap: 7px;
}

.gp-empty {
    padding: 38px 16px;
    color: var(--gp-muted);
    text-align: center;
}

.gp-progress {
    height: 12px;
    overflow: hidden;
    border-radius: 999px;
    background: #081322;
}

.gp-progress > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #3187ff, #43d59c);
    transition: width .35s ease;
}

.gp-bottom-nav {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 40;
    padding: 8px 10px calc(8px + var(--gp-safe-bottom));
    border-top: 1px solid rgba(61, 86, 119, .72);
    background: rgba(7, 17, 31, .94);
    backdrop-filter: blur(18px);
}

.gp-bottom-nav-inner {
    width: min(620px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
}

.gp-bottom-link {
    min-height: 56px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 14px;
    color: #8295af;
    font-size: 10px;
    white-space: nowrap;
}

.gp-bottom-link svg {
    width: 21px;
    height: 21px;
}

.gp-bottom-link.is-active {
    background: rgba(52, 128, 219, .17);
    color: #85bdff;
}

.gp-desktop-nav {
    display: none;
}

.gp-dialog {
    width: min(620px, calc(100% - 20px));
    max-height: calc(100vh - 24px);
    overflow: hidden;
    border: 1px solid var(--gp-line);
    border-radius: 24px;
    padding: 0;
    color: var(--gp-text);
    background: var(--gp-panel);
    box-shadow: 0 30px 90px rgba(0, 0, 0, .55);
}

.gp-dialog::backdrop {
    background: rgba(0, 0, 0, .74);
    backdrop-filter: blur(6px);
}

.gp-dialog-head,
.gp-dialog-foot {
    padding: 14px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #13233a;
}

.gp-dialog-head {
    border-bottom: 1px solid var(--gp-line);
}

.gp-dialog-foot {
    border-top: 1px solid var(--gp-line);
}

.gp-dialog-body {
    max-height: calc(100vh - 174px);
    overflow-y: auto;
    padding: 16px;
}

.gp-table-wrap {
    width: 100%;
    overflow-x: auto;
    border: 1px solid var(--gp-line);
    border-radius: 18px;
}

.gp-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    background: rgba(9, 21, 37, .72);
}

.gp-table th,
.gp-table td {
    padding: 12px 13px;
    border-bottom: 1px solid #263b58;
    text-align: left;
    vertical-align: middle;
}

.gp-table th {
    color: #b8c9df;
    background: #14243b;
    font-size: 12px;
    white-space: nowrap;
}

.gp-table td {
    font-size: 13px;
}

.gp-table tr:last-child td {
    border-bottom: 0;
}

.gp-chip {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--gp-line);
    border-radius: 999px;
    padding: 4px 9px;
    background: rgba(25, 45, 72, .72);
    color: #c6d6ea;
    font-size: 10px;
    white-space: nowrap;
}

.gp-chip-success {
    border-color: rgba(67, 213, 156, .4);
    color: #74e5b7;
}

.gp-chip-warning {
    border-color: rgba(255, 200, 87, .4);
    color: #ffd982;
}

.gp-chip-danger {
    border-color: rgba(255, 109, 127, .4);
    color: #ff9cab;
}

.gp-admin-layout {
    width: min(1320px, 100%);
    margin: 0 auto;
}

.gp-admin-sidebar {
    display: none;
}

.gp-admin-content {
    min-width: 0;
}

.gp-code {
    display: block;
    overflow-wrap: anywhere;
    border: 1px solid var(--gp-line);
    border-radius: 12px;
    padding: 10px 12px;
    background: #071321;
    color: #a9d0ff;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 12px;
}

.gp-login {
    width: min(460px, 100%);
    margin: 0 auto;
    padding-top: clamp(40px, 12vh, 110px);
}

.gp-login-logo {
    width: 86px;
    height: 86px;
    display: grid;
    place-items: center;
    margin: 0 auto 18px;
    border: 1px solid rgba(91, 167, 255, .45);
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(45, 127, 231, .38), rgba(67, 213, 156, .2));
    color: #a8d2ff;
    box-shadow: var(--gp-shadow);
}

.gp-login h1,
.gp-login p {
    text-align: center;
}

.gp-login h1 {
    margin: 0;
    font-size: 32px;
}

.gp-login p {
    margin: 8px 0 22px;
    color: var(--gp-muted);
}

.gp-loading {
    position: relative;
    overflow: hidden;
    color: transparent !important;
}

.gp-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 19px;
    height: 19px;
    margin: -10px 0 0 -10px;
    border: 2px solid rgba(255,255,255,.35);
    border-top-color: #fff;
    border-radius: 50%;
    animation: gp-spin .7s linear infinite;
}

@keyframes gp-spin {
    to { transform: rotate(360deg); }
}

.gp-toast-stack {
    position: fixed;
    top: 76px;
    right: 12px;
    left: 12px;
    z-index: 100;
    display: grid;
    gap: 8px;
    pointer-events: none;
}

.gp-toast {
    width: min(430px, 100%);
    margin-left: auto;
    border: 1px solid var(--gp-line);
    border-radius: 14px;
    padding: 12px 14px;
    color: #fff;
    background: #1a2a43;
    box-shadow: var(--gp-shadow);
    animation: gp-toast-in .2s ease;
}

.gp-toast.success { border-color: rgba(67, 213, 156, .5); }
.gp-toast.error { border-color: rgba(255, 109, 127, .5); }
.gp-toast.warning { border-color: rgba(255, 200, 87, .5); }

@keyframes gp-toast-in {
    from { opacity: 0; transform: translateY(-8px); }
}


.gp-search-inline {
    gap: 12px;
}

.gp-member-list {
    overflow: hidden;
    border: 1px solid rgba(64, 91, 126, .72);
    border-radius: 20px;
    background: rgba(8, 19, 34, .72);
    box-shadow: var(--gp-shadow);
}

.gp-member-row {
    min-width: 0;
    padding: 14px;
    border-bottom: 1px solid rgba(55, 79, 111, .72);
    background: linear-gradient(135deg, rgba(17, 34, 57, .88), rgba(9, 22, 39, .88));
}

.gp-member-row:last-child {
    border-bottom: 0;
}

.gp-member-main {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.gp-member-copy {
    min-width: 0;
    flex: 1 1 auto;
}

.gp-member-title-line {
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.gp-member-title-line strong {
    min-width: 0;
    overflow: hidden;
    color: #f8fbff;
    font-size: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-member-meta {
    margin-top: 3px;
    color: var(--gp-muted);
    font-size: 11px;
}

.gp-member-chips {
    margin-top: 8px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.gp-member-actions {
    margin-top: 12px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.gp-member-actions .gp-btn {
    width: 100%;
}

.gp-cleanup-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.gp-cleanup-summary > div {
    min-width: 0;
    border: 1px solid var(--gp-line);
    border-radius: 14px;
    padding: 11px 12px;
    background: rgba(7, 17, 31, .55);
}

.gp-cleanup-summary span,
.gp-cleanup-summary strong {
    display: block;
}

.gp-cleanup-summary span {
    color: var(--gp-muted);
    font-size: 10px;
}

.gp-cleanup-summary strong {
    margin-top: 4px;
    font-variant-numeric: tabular-nums;
    font-size: 20px;
}

.gp-dialog-foot-stack {
    flex-wrap: wrap;
}

.gp-dialog-foot-stack .gp-btn {
    flex: 1 1 180px;
}



.gp-dashboard-member-list {
    border-radius: 18px;
}

.gp-dashboard-member-row {
    color: inherit;
    transition: background .15s ease, border-color .15s ease;
}

.gp-dashboard-member-row:active {
    background: rgba(36, 68, 105, .72);
}

.gp-dashboard-member-arrow {
    display: none;
    flex: 0 0 auto;
    color: var(--gp-muted);
    font-size: 28px;
    line-height: 1;
}

.gp-dashboard-maintenance-grid {
    align-items: stretch;
}

.gp-dashboard-action-card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.gp-dashboard-card-action {
    margin-top: auto;
    padding-top: 16px;
}

@media (min-width: 680px) {
    body { padding-bottom: 96px; }
    .gp-shell { padding: 22px; }
    .gp-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gp-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gp-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gp-record-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .gp-toast-stack { left: auto; width: 430px; }
    .gp-search-inline { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
    .gp-search-inline .gp-btn { min-width: 132px; }
    .gp-member-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 16px; }
    .gp-member-main { align-items: center; flex: 1 1 auto; }
    .gp-member-actions { width: auto; margin-top: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; }
    .gp-member-actions .gp-btn { width: auto; }
    .gp-cleanup-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .gp-dashboard-member-arrow { display: block; }
}

@media (min-width: 980px) {
    body { padding-bottom: 0; }
    .gp-bottom-nav { display: none; }
    .gp-desktop-nav { display: flex; align-items: center; gap: 6px; }
    .gp-desktop-nav a { padding: 9px 12px; border-radius: 12px; color: #9babc0; font-size: 13px; white-space: nowrap; }
    .gp-desktop-nav a.is-active { background: rgba(60, 133, 220, .18); color: #8ec2ff; }
    .gp-dashboard-member-row:hover { background: rgba(29, 54, 86, .9); }
    .gp-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .gp-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .gp-admin-layout { display: grid; grid-template-columns: 236px minmax(0, 1fr); gap: 22px; padding: 22px; }
    .gp-admin-sidebar { position: sticky; top: 86px; height: calc(100vh - 108px); display: flex; flex-direction: column; border: 1px solid var(--gp-line); border-radius: 22px; padding: 12px; background: rgba(13, 27, 47, .82); }
    .gp-admin-sidebar a { min-height: 44px; display: flex; align-items: center; gap: 9px; border-radius: 13px; padding: 10px 12px; color: #9eb0c8; font-size: 13px; white-space: nowrap; }
    .gp-admin-sidebar a.is-active { background: rgba(58, 132, 222, .18); color: #91c5ff; }
}
