:root{color-scheme:only light;--navy:#082f68;--blue:#0b3b82;--blue2:#1765bb;--red:#c51f26;--ink:#172033;--muted:#718096;--line:#e5eaf2;--soft:#f5f7fb;--white:#fff;--success:#17864b;--warning:#b7791f;--danger:#b42318;--shadow:0 8px 28px rgba(20,38,70,.06)}
*{box-sizing:border-box}html{background:var(--soft)}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--soft);color:var(--ink);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #d7deea;border-radius:10px;background:#fff;outline:none;color:var(--ink);transition:.18s}input::placeholder{color:#a1aabd}input:focus,select:focus,textarea:focus{border-color:#2c6dcc;box-shadow:0 0 0 3px #2c6dcc18}label{display:block;font-size:13px;font-weight:700;margin:12px 0}label input,label select,label textarea{margin-top:6px;font-weight:400}.hidden{display:none!important}
/* Login */
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:28px;position:relative;overflow:hidden;background:radial-gradient(circle at 15% 15%,#1b6bc622,transparent 30%),linear-gradient(135deg,#061f49,#0b3b82 55%,#155eaa)}.login-wrap:after{content:"";position:absolute;width:520px;height:520px;border:1px solid #ffffff12;border-radius:50%;right:-190px;bottom:-220px;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff03}.login-card{position:relative;z-index:1;width:min(430px,94vw);background:#fff;border:1px solid #ffffff55;border-radius:24px;padding:38px;box-shadow:0 28px 80px #001b4448}.login-logo{display:block;width:min(300px,84%);max-height:155px;object-fit:contain;margin:0 auto 12px}.brand{font-size:21px;text-align:center;font-weight:900;letter-spacing:.4px;color:var(--blue)}.muted{color:var(--muted);margin:5px 0 24px;text-align:center;font-size:13px}.demo{font-size:11px;line-height:1.5;color:#64748b;margin-top:18px;padding:11px 12px;background:#f6f8fb;border:1px solid #e8edf4;border-radius:10px}.msg{color:#c0392b;font-size:13px}.login-card .primary{width:100%;margin-top:8px;padding:13px}
/* Shell */
.app{display:flex;min-height:100vh}.sidebar{position:relative;z-index:10;width:250px;flex:0 0 250px;background:#fff;border-right:1px solid var(--line);padding:18px 13px;display:flex;flex-direction:column;gap:5px}.sidebar-brand{padding:4px 10px 18px;border-bottom:1px solid #edf0f5;margin-bottom:7px}.sidebar-logo{display:block;width:100%;max-width:188px;height:82px;object-fit:contain;margin:0 auto}.brand-caption{text-align:center;color:#9aa5b5;font-size:9px;font-weight:900;letter-spacing:1.4px;margin-top:4px}.nav-section{font-size:9px;font-weight:900;letter-spacing:1.2px;color:#a0aabc;padding:15px 12px 6px}.nav{display:flex;align-items:center;gap:11px;background:transparent;text-align:left;padding:11px 12px;border-radius:10px;color:#526174;font-size:13px;font-weight:650;transition:.15s}.nav:hover{background:#f3f6fb;color:var(--blue)}.nav.active{background:#eaf2ff;color:var(--blue);font-weight:850;box-shadow:inset 3px 0 0 var(--blue)}.nav-icon{width:22px;text-align:center;font-size:11px;font-weight:900;color:#8794a7}.nav.active .nav-icon{color:var(--blue)}.side-bottom{margin-top:auto;border-top:1px solid #edf0f5;padding-top:14px}.school-mini{display:flex;align-items:center;gap:9px;padding:7px 8px 12px}.school-mini strong{display:block;font-size:12px}.school-mini small{display:block;color:#8a96a8;font-size:10px;margin-top:2px}.school-dot{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--blue),#2f7fd0);box-shadow:0 4px 10px #0b3b8230}.logout{width:100%;text-align:center}.watermark{position:fixed;z-index:0;right:4%;bottom:4%;width:min(430px,38vw);opacity:.035;pointer-events:none;filter:grayscale(1)}.watermark img{width:100%;height:auto;display:block}
/* Header */
.main{position:relative;flex:1;min-width:0;overflow:hidden}.main>.topbar,.main>.page{position:relative;z-index:1}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);padding:14px 30px;display:flex;justify-content:space-between;align-items:center}.topbar-left{display:flex;align-items:center;gap:13px}.eyebrow{font-size:9px;letter-spacing:1.2px;font-weight:900;color:#a0aabc;margin-bottom:2px}.topbar h1{margin:0;font-size:22px;line-height:1.2;letter-spacing:-.2px}.topbar-right{display:flex;align-items:center;gap:12px}.status-pill{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;padding:7px 10px;border-radius:999px;background:#eef8f2;color:#27734c;border:1px solid #d7efe0}.top-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;color:var(--blue);font-size:11px;font-weight:900}.menu{display:none;background:#eef4ff;color:var(--blue);border-radius:9px;padding:8px 10px}
/* Pages */
.page{padding:27px 30px}.page-intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.page-intro h2{font-size:18px;margin:0 0 3px}.page-intro p{margin:0;color:#7a879a;font-size:12px}.secure-label{font-size:10px;font-weight:800;color:#718096;background:#fff;border:1px solid var(--line);padding:8px 11px;border-radius:999px}.secure-label:first-letter{color:var(--success)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.card{padding:18px}.kpi{min-height:130px}.kpi-top{display:flex;justify-content:space-between;align-items:center;color:#68758a;font-size:12px;font-weight:700}.kpi-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#edf4ff;color:var(--blue);font-size:10px;font-weight:900}.kpi strong{display:block;font-size:24px;letter-spacing:-.5px;margin-top:13px}.kpi small{display:block;color:#9aa5b5;font-size:10px;margin-top:4px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:18px}.panel-head{display:flex;align-items:center;justify-content:space-between}.panel h2{font-size:15px;margin:0 0 14px}.toolbar{display:flex;gap:10px;margin-bottom:13px;align-items:center}.toolbar input{max-width:430px}.toolbar select{min-width:145px}.finance-period-summary{display:flex;flex-wrap:wrap;gap:18px;margin:-2px 0 13px;padding:10px 2px;color:#718096;font-size:11px}.finance-period-summary strong{color:var(--ink);font-size:12px}.primary{background:var(--blue);color:white;padding:11px 16px;border-radius:9px;font-weight:800;font-size:12px;box-shadow:0 4px 10px #0b3b8220;transition:.15s}.primary:hover{background:#082e69;transform:translateY(-1px)}.ghost{background:#eef2f7;color:#334155;padding:10px 14px;border-radius:9px;font-size:12px;font-weight:700}.danger{background:#fee2e2;color:#991b1b;padding:10px 14px;border-radius:9px;margin-top:10px;font-size:12px;font-weight:700}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid #edf0f5;font-size:12px}th{font-size:9px;text-transform:uppercase;color:#7b8799;letter-spacing:.65px;background:#fafbfd}tbody tr:hover{background:#fbfcfe}td strong{font-size:12px}td small{font-size:10px;color:#8d99aa}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.2px}.paid{background:#e1f5e9;color:#187348}.open{background:#fee9e7;color:#a22b23}.partial{background:#fff4d9;color:#9b6a15}.actions button{margin-right:5px;padding:6px 8px;border-radius:7px;background:#edf2f7;color:#42516a;font-size:10px;font-weight:700}.actions button:hover{background:#e3eaf3}.empty{padding:30px;text-align:center;color:#778397}.settings{max-width:680px}.settings label{max-width:410px}.settings hr{border:0;border-top:1px solid var(--line);margin:24px 0}.mini-row{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #edf0f5;font-size:12px}.mini-row:last-child{border-bottom:0}.mini-row small{color:#8d99aa}
/* Modal */
.modal{position:fixed;inset:0;background:#06152c99;backdrop-filter:blur(4px);display:grid;place-items:center;padding:18px;z-index:20}.modal-card{background:#fff;width:min(620px,96vw);max-height:92vh;overflow:auto;border-radius:16px;padding:22px;box-shadow:0 30px 90px #001b4448}.modal-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #edf0f5}.modal-head h2{margin:0;font-size:17px}.modal-head button{background:#eef2f7;color:#526174;border-radius:50%;width:32px;height:32px;font-size:21px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-grid label{margin:0}.mini-row:last-child strong{color:var(--ink)}
@media(max-width:1000px){.sidebar{width:225px;flex-basis:225px}.cards{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}}
@media(max-width:900px){.sidebar{position:fixed;z-index:10;left:-260px;top:0;bottom:0;transition:.2s;box-shadow:20px 0 40px #001b4415}.sidebar.open{left:0}.menu{display:block}.topbar{padding:14px 18px}.page{padding:20px 16px}.watermark{width:45vw}.topbar-right .top-avatar{display:none}}
@media(max-width:520px){.cards{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.toolbar input{max-width:none}.field-grid{grid-template-columns:1fr}.login-card{padding:25px}.page-intro{align-items:flex-start;gap:10px;flex-direction:column}.secure-label{display:none}.topbar{height:74px}.topbar h1{font-size:19px}}

/* V5 — experiência multiplataforma */
.install-btn{white-space:nowrap;padding:9px 12px}
.status-pill.offline{background:#fff4d9;color:#8a6115;border-color:#f3dfaa}
button,.nav,input,select,textarea{touch-action:manipulation}
@media(max-width:900px){
  .topbar{padding-top:max(10px,env(safe-area-inset-top));min-height:76px;height:auto}
  .page{padding-left:14px;padding-right:14px}
  .sidebar{padding-top:max(18px,env(safe-area-inset-top))}
  .table-wrap{-webkit-overflow-scrolling:touch}
}
@media(max-width:600px){
  body{font-size:14px}
  .topbar-right{gap:7px}
  .install-btn{padding:8px 9px;font-size:11px}
  .status-pill{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .toolbar{gap:8px}
  .toolbar .primary,.toolbar .ghost{min-height:42px}
  input,select,textarea{min-height:44px}
  .actions{white-space:nowrap}
  .actions button{min-height:38px;padding:8px 10px}
  th,td{padding:11px 12px}
  .modal{padding:8px}
  .modal-card{width:100%;max-height:94vh;border-radius:14px;padding:16px}
  .login-wrap{padding:16px}
  .login-card{width:100%;max-width:430px}
}
@media(display-mode: standalone){
  .topbar{padding-top:max(14px,env(safe-area-inset-top))}
}

/* V5.1 — refinamento mobile */
.mobile-backdrop{display:none}
@media(max-width:900px){
  .mobile-backdrop{position:fixed;inset:0;z-index:9;background:rgba(4,18,42,.42);backdrop-filter:blur(1px)}
  .mobile-backdrop.show{display:block}
  .sidebar{width:min(225px,78vw);flex-basis:min(225px,78vw);padding-left:10px;padding-right:10px}
  .sidebar-logo{max-width:150px;height:66px}
  .brand-caption{font-size:8px;letter-spacing:1px}
  .nav-section{padding:12px 10px 5px}
  .nav{min-height:44px;padding:10px 10px;gap:9px;font-size:13px}
  .nav-icon{width:20px}
  .side-bottom{padding-top:10px}
  .school-mini{padding:6px 7px 10px}
  .logout{min-height:42px}
  .topbar-left{min-width:0}
  .topbar-left>div:last-child{min-width:0}
  .topbar h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:600px){
  .login-wrap{min-height:100svh;padding:12px}
  .login-card{border-radius:20px;padding:22px 18px;box-shadow:0 20px 55px rgba(0,27,68,.28)}
  .login-logo{width:min(260px,82%);max-height:125px;margin-bottom:8px}
  .brand{font-size:19px}
  .muted{font-size:12px;margin-bottom:18px}
  .login-card label{font-size:12px;margin:10px 0}
  .login-card input{min-height:46px}
  .login-card .primary{min-height:46px}
  .demo{font-size:10px}
  .topbar{min-height:66px;padding:9px 12px}
  .topbar-left{gap:8px}
  .menu{display:grid;place-items:center;width:42px;height:42px;padding:0;font-size:18px}
  .eyebrow{font-size:8px}
  .topbar h1{font-size:17px}
  .topbar-right{gap:5px}
  .status-pill{font-size:9px;padding:6px 8px;max-width:132px}
  .install-btn{font-size:10px;padding:7px 8px}
  .top-avatar{display:none}
  .page{padding:14px 12px 24px}
  .page-intro{margin-bottom:13px}
  .page-intro h2{font-size:17px}
  .page-intro p{font-size:11px;line-height:1.45}
  .cards{gap:10px;margin-bottom:12px}
  .card{border-radius:12px;padding:14px}
  .kpi{min-height:105px}
  .kpi strong{font-size:21px;margin-top:9px}
  .grid2{gap:12px}
  .panel{padding:13px;border-radius:12px}
  .panel h2{font-size:14px;margin-bottom:11px}
  .toolbar{margin-bottom:10px}
  .toolbar input,.toolbar select{width:100%;max-width:none;min-width:0}
  .toolbar .primary,.toolbar .ghost{width:100%}
  .finance-period-summary{gap:9px 14px;margin:0 0 9px;padding:6px 0;font-size:10px}
  .finance-period-summary strong{font-size:11px}
  table{min-width:680px}
  th,td{font-size:11px;padding:10px 10px}
  th{font-size:8px}
  .modal{padding:6px}
  .modal-card{max-height:calc(100svh - 12px);padding:14px;border-radius:13px}
}
@media(display-mode:standalone){
  .login-wrap{padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .topbar{padding-top:max(9px,env(safe-area-inset-top));padding-bottom:max(9px,env(safe-area-inset-bottom))}
}


/* V5.2 — mobile UI correction + cache-safe release */
html, body { color-scheme: only light; -webkit-text-size-adjust: 100%; }
body { background:#f5f7fb !important; color:#172033 !important; }

/* Never let browser dark-mode transforms change the application's visual identity. */
.login-wrap { background:linear-gradient(145deg,#06245a 0%,#0b3b82 52%,#1b6bc6 100%) !important; }
.login-card { background:#ffffff !important; color:#172033 !important; border-color:#dfe7f2 !important; }
.login-card .brand { color:#0b3b82 !important; }
.login-card .muted { color:#64748b !important; }
.login-card label { color:#253247 !important; }
.login-card input,
.login-card select,
.login-card textarea { background:#ffffff !important; color:#172033 !important; border-color:#cfd8e6 !important; -webkit-text-fill-color:#172033 !important; }
.login-card input::placeholder { color:#94a3b8 !important; opacity:1; }
.login-card .demo { background:#f7f9fc !important; color:#64748b !important; border-color:#e1e7f0 !important; }

.sidebar { background:#ffffff !important; color:#172033 !important; }
.nav { color:#526174 !important; background:transparent !important; }
.nav.active { background:#eaf2ff !important; color:#0b3b82 !important; }
.nav-section { color:#8995a8 !important; }
.topbar, .card, .panel, .modal-card { background:#ffffff !important; color:#172033 !important; }
.topbar h1, .page-intro h2, .panel h2, td strong, .mini-row strong { color:#172033 !important; }

@media (max-width: 900px) {
  .sidebar {
    width:min(205px,72vw) !important;
    flex-basis:min(205px,72vw) !important;
    left:calc(-1 * min(205px,72vw) - 12px) !important;
    padding:12px 9px !important;
    border-right:1px solid #dfe6ef !important;
    box-shadow:16px 0 40px rgba(0,27,68,.20) !important;
  }
  .sidebar.open { left:0 !important; }
  .sidebar-brand { padding:2px 6px 12px !important; margin-bottom:2px !important; }
  .sidebar-logo { max-width:128px !important; height:58px !important; }
  .brand-caption { font-size:7px !important; letter-spacing:.8px !important; }
  .nav-section { padding:10px 7px 4px !important; font-size:8px !important; }
  .nav { min-height:40px !important; padding:8px 8px !important; gap:8px !important; font-size:12px !important; border-radius:9px !important; }
  .nav-icon { width:18px !important; font-size:10px !important; }
  .side-bottom { padding-top:8px !important; }
  .school-mini { padding:5px 5px 8px !important; }
  .school-mini strong { font-size:11px !important; }
  .school-mini small { font-size:9px !important; }
  .logout { min-height:40px !important; font-size:11px !important; }
  .mobile-backdrop { background:rgba(4,18,42,.48) !important; }
}

@media (max-width:600px) {
  .login-wrap { min-height:100svh !important; padding:16px 12px !important; place-items:center !important; }
  .login-card {
    width:100% !important;
    max-width:360px !important;
    border-radius:22px !important;
    padding:24px 20px 20px !important;
    box-shadow:0 20px 60px rgba(0,20,55,.30) !important;
  }
  .login-logo { width:190px !important; max-width:72% !important; max-height:100px !important; margin:0 auto 7px !important; }
  .login-card .brand { font-size:20px !important; line-height:1.2 !important; }
  .login-card .muted { font-size:12px !important; line-height:1.4 !important; margin:5px 0 18px !important; }
  .login-card label { font-size:12px !important; margin:11px 0 !important; }
  .login-card input { min-height:48px !important; padding:12px 13px !important; border-radius:11px !important; }
  .login-card .primary { min-height:48px !important; margin-top:9px !important; border-radius:11px !important; font-size:13px !important; }
  .login-card .demo { margin-top:15px !important; font-size:10px !important; line-height:1.45 !important; }

  .topbar { min-height:64px !important; padding:8px 10px !important; }
  .menu { width:40px !important; height:40px !important; border-radius:10px !important; }
  .status-pill { max-width:120px !important; }
  .page { padding:13px 11px 22px !important; }
  .card { box-shadow:0 4px 16px rgba(20,38,70,.05) !important; }
}


/* V5.3 — Samsung Internet / forced-dark protection + mobile polish */
html, body, #loginView, #appView {
  forced-color-adjust: none !important;
  -webkit-print-color-adjust: exact !important;
}

/* Explicit light palette even when the device/browser is configured for dark mode. */
@media (prefers-color-scheme: dark) {
  html { background:#f5f7fb !important; color-scheme:light !important; }
  body { background:#f5f7fb !important; color:#172033 !important; }
  .login-wrap { background:linear-gradient(145deg,#06245a 0%,#0b3b82 52%,#1b6bc6 100%) !important; }
  .login-card { background:#ffffff !important; color:#172033 !important; border-color:#dfe7f2 !important; }
  .login-card .brand { color:#0b3b82 !important; }
  .login-card .muted, .login-card label { color:#253247 !important; }
  .login-card input, .login-card select, .login-card textarea {
    background:#ffffff !important; color:#172033 !important; border-color:#cfd8e6 !important;
    -webkit-text-fill-color:#172033 !important;
  }
  .login-card .demo { background:#f7f9fc !important; color:#64748b !important; border-color:#e1e7f0 !important; }
  .sidebar, .topbar, .card, .panel, .modal-card { background:#ffffff !important; color:#172033 !important; }
  .nav { color:#526174 !important; background:transparent !important; }
  .nav.active { background:#eaf2ff !important; color:#0b3b82 !important; }
  .nav-section { color:#8995a8 !important; }
  .topbar h1, .page-intro h2, .panel h2, td strong, .mini-row strong { color:#172033 !important; }
  input, select, textarea { background:#ffffff !important; color:#172033 !important; -webkit-text-fill-color:#172033 !important; }
}

/* Samsung Internet can apply a forced darkening pass to web pages. */
@media (max-width: 600px) {
  .login-wrap { min-height:100svh; }
  .login-card { background:#fff !important; }
  .login-card input, .login-card input:focus { background:#fff !important; color:#172033 !important; }
  .sidebar { background:#fff !important; }
  .mobile-backdrop { background:rgba(4,18,42,.48) !important; }
  .topbar { background:#fff !important; }
}

/* Mobile drawer: compact, app-like and easier to dismiss. */
@media (max-width: 900px) {
  .sidebar {
    width:min(280px,82vw) !important;
    flex-basis:min(280px,82vw) !important;
    padding:14px 12px !important;
  }
  .sidebar-brand { padding:4px 8px 14px !important; }
  .sidebar-logo { max-width:142px !important; height:62px !important; }
  .nav-section { padding:13px 9px 5px !important; }
  .nav { min-height:44px !important; padding:10px 10px !important; font-size:13px !important; }
}

@media (max-width:600px) {
  .login-wrap { padding:12px !important; }
  .login-card {
    max-width:380px !important;
    padding:22px 20px 18px !important;
    border-radius:20px !important;
  }
  .login-logo { width:175px !important; max-width:68% !important; max-height:92px !important; }
  .login-card .brand { font-size:19px !important; }
  .login-card .muted { font-size:12px !important; margin-bottom:16px !important; }
  .login-card input { min-height:50px !important; font-size:16px !important; }
  .login-card .primary { min-height:50px !important; font-size:14px !important; }
  .login-card .demo { font-size:10px !important; }
}


/* V5.4 — mobile drawer rebuilt as a true viewport overlay */
html, body { width:100%; max-width:100%; overflow-x:hidden; }
.mobile-backdrop { display:none; }
@media (max-width:900px) {
  .app { min-width:0; width:100%; overflow-x:hidden; }
  .main { width:100%; min-width:0; overflow-x:hidden; }
  .sidebar {
    position:fixed !important;
    left:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:min(286px,82vw) !important;
    max-width:286px !important;
    height:100dvh !important;
    flex:none !important;
    margin:0 !important;
    transform:translate3d(-110%,0,0) !important;
    transition:transform .22s ease !important;
    z-index:1001 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    box-shadow:18px 0 50px rgba(0,27,68,.22) !important;
  }
  .sidebar.open {
    left:0 !important;
    transform:translate3d(0,0,0) !important;
  }
  .mobile-backdrop {
    position:fixed !important;
    inset:0 !important;
    z-index:1000 !important;
    display:none;
    background:rgba(5,20,45,.46) !important;
    backdrop-filter:blur(2px);
    -webkit-backdrop-filter:blur(2px);
  }
  .mobile-backdrop.show { display:block !important; }
  .topbar, .page { position:relative; z-index:1; }
  .menu { position:relative; z-index:2; }
}
@media (max-width:600px) {
  .sidebar {
    width:min(292px,84vw) !important;
    max-width:292px !important;
    padding:14px 12px !important;
  }
  .sidebar-logo { max-width:146px !important; height:64px !important; }
  .nav-section { padding-top:12px !important; }
  .nav { min-height:46px !important; font-size:13px !important; }
}

/* Keep the login deliberately light and stable across mobile browsers. */
#loginView, #loginView * { forced-color-adjust:none !important; }
#loginView .login-card { background:#fff !important; }
#loginView input { background:#fff !important; color:#172033 !important; -webkit-text-fill-color:#172033 !important; }
