.mobile-app { padding-bottom: env(safe-area-inset-bottom); padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); }
.mobile-app .topbar { top: 0; height: calc(44px + env(safe-area-inset-top)) !important; padding-top: env(safe-area-inset-top); grid-template-columns: auto 1fr auto; }
.mobile-app .brand h1 { font-size: 12px; }
.mobile-app .topbar-actions { display:flex; gap:4px; }
.mobile-app .topbar-actions .button { padding:0 6px; font-size:11px; }
.mobile-app .tool-tabs button { padding:0 5px; font-size:12px; }
.mobile-app .brand-mark { width:19px; height:19px; }
.mobile-app input:not([type=checkbox]):not([type=range]) { font-size:16px !important; }
.mobile-app .calculator-actual-input .percentage-input > span { font-size:10px; }
.mobile-app .calculator-actual-metrics dd { font-size:12px; }
.mobile-app .calculator-primary-results strong { font-size:17px; }
.mobile-app .calculator-symbol-heading input { min-width:0; }
.mobile-app .calculator-symbol-heading { overflow:visible; }
.mobile-app .calculator-pages { scroll-padding-inline:2px; }
.phone-notice { background:#342509; color:#ffda72; padding:8px; margin:0; font-size:12px; }
.phone-dialog { border:1px solid var(--line-strong); background:var(--surface); color:var(--text); padding:18px; max-width:460px; border-radius:10px; }
.phone-dialog::backdrop { background:#000b; }
.phone-dialog header { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.phone-dialog h2 { font-size:18px; margin:0; }
.phone-dialog p { font-size:14px; line-height:1.6; color:var(--muted); }
.phone-dialog button { min-height:42px; }
.phone-actions { display:flex; gap:8px; flex-wrap:wrap; }
.phone-actions button { flex:1; font-size:14px; padding:8px; }
#phoneStatus { color:var(--yellow); overflow-wrap:anywhere; }
#offlineStatus { color:var(--green); }
@media(max-width:380px){ .mobile-app .brand h1{display:none;} .mobile-app .tool-tabs button{font-size:12px;padding:0 6px;} }
@media(min-width:721px){ .mobile-app.calculator-active .calculator-page{max-width:900px;margin:auto;} }
