#dashboard .hero{background:radial-gradient(circle at 95% 0%,#5097e588,transparent 52%),linear-gradient(120deg,#102f60,#1751a1);padding:33px;border-radius:24px;color:white;margin:20px 0 23px;box-shadow:0 15px 30px #173f8512}#dashboard .hero h1{font-size:clamp(25px,4vw,38px);letter-spacing:-.04em;margin:12px 0;color:white}#dashboard .hero p{color:#d4e3ff;line-height:1.6;font-size:14px}#dashboard .hero .eyebrow{color:#bdd9ff}#dashboard .learner-hero{display:flex;justify-content:space-between;align-items:center}#dashboard .hero-emblem{font-family:Georgia,serif;font-size:100px;font-weight:bold;color:#d9e8ff;padding:15px 40px;border-left:1px solid #ffffff33}#dashboard .hero-emblem span{display:block;font-family:system-ui,sans-serif;font-size:12px;line-height:1.8;font-weight:400}#dashboard progress{width:100%;height:16px;accent-color:#80bbff}#dashboard .tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:20px 0}#dashboard .tile{border:1px solid #dce5f2;background:white;border-radius:18px;padding:23px;text-align:left;display:flex;flex-direction:column;gap:13px;color:#15375d;font:inherit;box-shadow:0 7px 15px #15375b04;min-height:145px;text-decoration:none}#dashboard .tile-icon{width:40px;height:40px;border-radius:12px;background:#edf3ff;color:#2467bd;display:grid;place-items:center;font-size:23px}#dashboard .tile strong{font-size:16px;line-height:1.4}#dashboard .tile small{font-size:12px;color:#657c98;line-height:1.65}#dashboard .stats,#mobile .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin:18px 0}#dashboard .stats article{padding:18px;border:1px solid #dce5f0;border-radius:16px;background:linear-gradient(145deg,#f1f7ff,#fff)}#dashboard .stats small{color:#456180}#dashboard .stats h3{margin:10px 0 0;color:#123d78}#mobile .metric27{background:#fff;border:1px solid #d7e2f1;border-radius:16px;padding:20px;text-align:left;color:#113762;display:flex;flex-direction:column;gap:12px;cursor:pointer;min-width:0}#mobile .metric27 strong{font-size:1.4rem}#mobile .metric27 span{font-size:.8rem;color:#526982}#mobile .financial-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}#mobile .mob-range{display:flex;flex-wrap:wrap;gap:12px;align-items:end}#mobile .mob-range label{flex:1;min-width:150px}#mobile label{display:block;margin:12px 0}#mobile textarea{width:100%;min-height:140px;box-sizing:border-box}#mobile input[type=checkbox]{width:auto;display:inline}#mobile .mob-scroll{overflow:auto}#mobile td{vertical-align:top}#mobile .mob-text{white-space:pre-wrap;overflow-wrap:anywhere}#mobile .mob-item,#mobile article{border:1px solid #dce5f2;border-radius:14px;padding:18px;margin:12px 0}#mobile .mob-unread{border-left:5px solid #1858b5;background:#f3f7ff}#mobile .mob-error{background:#fff0ed;color:#9e2716;padding:14px}#mobile button{margin:4px}#mobile details{border-bottom:1px solid #dce5f2;padding:14px}#mobile [aria-current=page]{background:#123d78;color:white}@media(max-width:650px){#dashboard .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#dashboard .tile{padding:16px;min-height:155px}#dashboard .tile strong{font-size:14px}#dashboard .hero{padding:24px}#dashboard .hero-emblem{display:none}}
/* A disabled page control means end/start of list, not a pending request. */
button[data-mob-page]:disabled,button[data-learn-page]:disabled{cursor:not-allowed}

/* Compact expense ledger: readable actions, normal row height, internal horizontal scroll on phones. */
#mobile .mob-ledger-table td,#mobile .mob-ledger-table th{padding:8px 10px;vertical-align:middle;line-height:1.35}
#mobile .mob-ledger-table td:first-child,#mobile .mob-ledger-table td:nth-child(4),#mobile .mob-ledger-table td:nth-child(5){white-space:nowrap}
#mobile .mob-ledger-table td:last-child{min-width:180px;width:180px}
#mobile .ledger-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}
#app #mobile .ledger-row-actions button{white-space:nowrap;overflow-wrap:normal;word-break:normal;min-width:72px;min-height:44px;margin:0;padding:10px 12px;font-size:13px}
#mobile [data-expense-editor]{scroll-margin-top:160px}
