:root {
    color-scheme: light !important;
    --lite-bg: #f8f6fc !important;
    --lite-sidebar: #ffffff !important;
    --lite-panel: #ffffff !important;
    --lite-panel-2: #f4effb !important;
    --lite-line: #e4dbf2 !important;
    --lite-line-soft: #eee8f6 !important;
    --lite-text: #2c2435 !important;
    --lite-muted: #756b82 !important;
    --lite-primary: #8b5cf6 !important;
    --lite-primary-hover: #7c3aed !important;
    --lite-success: #229a61 !important;
    --lite-danger: #d84b68 !important;
    --lite-warning: #b7791f !important;
    --bg: #f8f6fc !important;
    --bg-soft: #f4effb !important;
    --panel: rgba(255,255,255,.94) !important;
    --panel-solid: #ffffff !important;
    --panel-soft: #f5f0fb !important;
    --line: rgba(121,88,156,.16) !important;
    --line-strong: rgba(121,88,156,.28) !important;
    --text: #2c2435 !important;
    --muted: #756b82 !important;
    --primary: #8b5cf6 !important;
    --primary-2: #a78bfa !important;
    --cyan: #b58cff !important;
    --shadow: 0 18px 45px rgba(93,63,125,.10) !important;
}
html, body { background: #f8f6fc !important; color: #2c2435 !important; }
body { background-image: radial-gradient(circle at 8% 0%, rgba(167,139,250,.20), transparent 30rem), radial-gradient(circle at 92% 8%, rgba(221,214,254,.65), transparent 28rem), linear-gradient(180deg,#fcfbff 0%,#f7f3fc 100%) !important; }
body::before { opacity: .12 !important; }
.sidebar { background: rgba(255,255,255,.97) !important; border-color: #e5dcf0 !important; box-shadow: 8px 0 28px rgba(89,60,120,.06) !important; }
.sidebar-brand, .package-title-row, .user-actions { border-color: #e6ddf1 !important; }
.sidebar-brand strong, .sidebar-account strong, h1, h2, h3, .field label { color: #2c2435 !important; }
.sidebar-brand small, .sidebar-account span, .muted, p, .file-name, .package-meta span, .package-meta small { color: #796e86 !important; }
.brand-mark { background: linear-gradient(145deg,#a78bfa,#7c3aed) !important; color: white !important; box-shadow: 0 8px 22px rgba(124,58,237,.20) !important; }
.nav-link { color: #655a70 !important; }
.nav-link span { color: #796b88 !important; border-color: #e3d9ee !important; background: #faf8fd !important; }
.nav-link:hover { background: #f5f0fb !important; color: #4b3d58 !important; }
.nav-link.active { background: #f0e9fb !important; color: #6d3bd1 !important; box-shadow: inset 3px 0 0 #8b5cf6 !important; }
.nav-link.active span { border-color: #cbb7ef !important; background: #8b5cf6 !important; color: #fff !important; }
.nav-group, .eyebrow { color: #8b5cf6 !important; }
.logout-link, .top-link { color: #5d4d69 !important; border-color: #e3daed !important; background: #fff !important; }
.card, .package-meta > div, details, .history-item, .security-list article, .quick-actions a, .mini-stat-row span, .identifier-box { background: #fff !important; border-color: #e6deef !important; color: #2c2435 !important; box-shadow: 0 8px 24px rgba(91,61,121,.06) !important; }
.card:hover { border-color: #d6c5e9 !important; }
.btn { background: linear-gradient(135deg,#8b5cf6,#7c3aed) !important; border-color: #7c3aed !important; color: #fff !important; }
.btn.secondary { background: #eee8f6 !important; border-color: #ddd2e9 !important; color: #4c4056 !important; }
.btn.ghost { background: #fff !important; border-color: #ddd2e9 !important; color: #654f74 !important; }
.field input, .field select, .search-form input, .grant-form select, .reset-password-form input, .credit-adjust-form select, .credit-adjust-form input { background: #fff !important; color: #302637 !important; border-color: #ddd3e8 !important; }
.field input:focus, .field select:focus, .search-form input:focus, .grant-form select:focus, .reset-password-form input:focus { border-color: #9b72ea !important; box-shadow: 0 0 0 3px rgba(139,92,246,.12) !important; }
select option { color: #302637 !important; background: #fff !important; }
.soft-badge, .credit-pill { background: #f5f0fb !important; color: #675673 !important; border-color: #e1d7ec !important; }
.notice.success { color: #236744 !important; border-color: #bfe7cf !important; background: #eefaf3 !important; }
.notice.error { color: #9b3147 !important; border-color: #efc2cc !important; background: #fff2f5 !important; }
.notice.warning { color: #8a5b12 !important; border-color: #ecd7aa !important; background: #fff9e9 !important; }
.notice.info { color: #5a4680 !important; border-color: #d8c8ef !important; background: #f7f2ff !important; }
.badge.available { color: #23734b !important; border-color: #bae4cb !important; background: #eefaf3 !important; }
.badge.in_use { color: #a33c58 !important; border-color: #efcad4 !important; background: #fff3f6 !important; }
.badge.expired { color: #756a7a !important; border-color: #ded5e3 !important; background: #f7f4f8 !important; }
.inline-code code { color: #68489c !important; border-color: #ded0f1 !important; background: #f7f2ff !important; }
.inline-code button { background: #8b5cf6 !important; }
.login-page { background: linear-gradient(135deg,#fbf9ff 0%,#f1eafd 48%,#ffffff 100%) !important; }
.login-intro, .login-card { color: #2d2535 !important; }
.login-card { background: rgba(255,255,255,.96) !important; border-color: #e0d6ec !important; box-shadow: 0 24px 70px rgba(96,64,126,.13) !important; }
.login-intro p, .login-points span, .login-card .muted { color: #756b82 !important; }
.login-points span { border-color: #ded3ec !important; background: rgba(255,255,255,.72) !important; }
.fake-recaptcha { width:100%; min-height:76px; margin:4px 0 14px; padding:13px 14px; display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; text-align:left; border:1px solid #d9cfe5; border-radius:12px; background:#fbfaff; color:#3d3347; cursor:pointer; transition:.18s ease; }
.fake-recaptcha:hover { border-color:#bda5dc; background:#f8f3ff; }
.fake-recaptcha-box { width:27px; height:27px; display:grid; place-items:center; border:2px solid #a99ab8; border-radius:5px; background:#fff; }
.fake-recaptcha-box span { opacity:0; color:#fff; font-weight:900; }
.fake-recaptcha-copy strong, .fake-recaptcha-copy small { display:block; }
.fake-recaptcha-copy strong { font-size:.9rem; }
.fake-recaptcha-copy small { margin-top:3px; color:#85788f; font-size:.66rem; }
.fake-recaptcha-shield { color:#9b72ea; font-size:1.1rem; }
.fake-recaptcha.approved { border-color:#b6dfc7; background:#f3fbf6; }
.fake-recaptcha.approved .fake-recaptcha-box { border-color:#2fa66a; background:#2fa66a; }
.fake-recaptcha.approved .fake-recaptcha-box span { opacity:1; }
.login-form .btn:disabled { opacity:.45 !important; cursor:not-allowed !important; filter:none !important; }
@media (max-width: 820px) { .sidebar { box-shadow: 14px 0 38px rgba(80,50,112,.12) !important; } }


/* PATCH 2026-08-18: login em tela única */
.login-page { min-height:100vh !important; display:grid !important; place-items:center !important; padding:24px !important; }
.login-shell.login-shell-single { width:min(100%, 460px) !important; min-height:auto !important; display:block !important; margin:0 auto !important; padding:0 !important; }
.login-card.login-card-single { width:100% !important; min-height:auto !important; padding:34px 34px 32px !important; border-radius:22px !important; }
.login-brand { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:24px; font-size:1.15rem; color:#352b40; }
.login-brand .brand-mark { width:34px; height:34px; flex:0 0 34px; }
.login-card-single .login-card-head { text-align:center; margin-bottom:24px; }
.login-card-single .login-card-head h1 { margin:.4rem 0 .35rem; font-size:1.85rem; }
.login-card-single .login-form { gap:16px; }
.fake-recaptcha.approved { pointer-events:none; }
@media (max-width:560px) {
  .login-page { padding:14px !important; }
  .login-card.login-card-single { padding:26px 20px 24px !important; border-radius:18px !important; }
}
