.mobile-input-marquee{display:none}
@media(max-width:640px){
  .header-layout,.header-layout>*{min-width:0}
  header.top{padding-top:14px}
  .header-layout{gap:10px;padding-bottom:12px}
  main{padding-top:22px}
  .activity-stats p>span:first-child{min-width:0;overflow-wrap:anywhere}
  body{--mobile-nav-height:68px;padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 22px)}
  nav.tabs{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:90;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:3px;margin:0;padding:4px;border:1px solid rgba(212,182,116,.55);border-radius:20px;background:linear-gradient(110deg,#102338,#244765);box-shadow:0 8px 28px rgba(10,25,43,.28)}
  nav.tabs button,nav.tabs button.active{appearance:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;min-height:56px;padding:4px 2px;border:1px solid transparent;border-radius:18px;color:#c5d6e7;white-space:normal;overflow-wrap:normal;font-size:clamp(10px,2.6vw,11px);line-height:1.15;text-align:center}
  nav.tabs button.active{color:var(--gold-l);background:rgba(212,182,116,.13);border-color:rgba(212,182,116,.55)}
  nav.tabs button::after{display:none}
  .mobile-tab-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none}
  .mobile-tab-icon svg{display:block;width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .mobile-tab-label{display:flex;align-items:center;justify-content:center;min-height:27px;max-width:100%}
  nav.tabs button:focus-visible{outline:2px solid var(--gold-l);outline-offset:1px}
  nav.subtabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px;padding:0}
  nav.subtabs button,nav.subtabs button.active{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:6px 8px;border:1px solid var(--line);border-radius:17px;font-size:12px;line-height:1.25;text-align:center;white-space:normal;transform:none;box-shadow:none}
  nav.subtabs button.active{background:var(--navy);border-color:var(--gold);color:var(--gold-l);box-shadow:0 4px 12px rgba(16,35,56,.12)}
  #tab-pens .lead{font-size:13px;line-height:1.4;margin:0 0 10px}
  #tab-pens .pension-reduction{font-size:12px;line-height:1.4;margin:0 0 12px}
  .activity-stats{border-radius:17px;padding:9px 12px}
  .activity-stats h2{font-size:11px;line-height:1.4;margin-bottom:4px}
  .activity-stats p{font-size:10.5px;line-height:1.5}
  .step,.fb,.npa-list,.result{border-radius:18px}
  .go,.rank-toggle,dialog button{border-radius:15px}
  .osel,.results,.selbox{border-radius:15px}
  .results button{border-radius:10px}
  .step-n{border-radius:10px}
  .rank-toggle{font-size:13px;gap:8px;padding:12px}
  .rank-step .parameter-value:empty{display:none}
  .rank-step .step-h,.position-step .step-h{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px}
  .rank-step .step-h h2,.position-step .step-h h2{font-size:14px}
  .rank-step .step-h>.parameter-value,.position-step .step-h>.parameter-value{font-size:12px;line-height:1.4;justify-self:end;max-width:100%}
  .position-step .step-h>.parameter-value:empty{display:none}
  .rank-step .parameter-line,.position-step .parameter-line{width:100%}
  .rank-step .rank-picker,.position-step .search-box{flex:1 1 100%;width:100%}
  .rank-step .results,.position-step .results{left:0;right:0;width:100%}
  .step-h h2{min-width:0;overflow-wrap:anywhere}
  .parameter-line>.rank-picker,.parameter-line>.search-box{min-width:0}
  .position-step .search-box{position:relative}
  input[role=combobox]{font-size:16px}
  .has-mobile-overflow>input[role=combobox]:not(:focus){color:transparent;-webkit-text-fill-color:transparent}
  .has-mobile-overflow>input[role=combobox]:not(:focus)::placeholder{color:transparent;-webkit-text-fill-color:transparent}
  .has-mobile-overflow>input[role=combobox]:not(:focus)~.mobile-input-marquee{display:block}
  .mobile-input-marquee{position:absolute;top:0;left:0;width:100%;height:var(--mobile-input-height);padding:13.5px 15.5px;overflow:hidden;white-space:nowrap;pointer-events:none;z-index:1;font:inherit;font-size:16px;line-height:normal;color:var(--ink)}
  .mobile-input-marquee.is-placeholder{color:#777}
  .mobile-input-marquee span{display:inline-block;white-space:nowrap;animation:mobile-field-scroll var(--mobile-scroll-duration,12s) linear infinite}
  .result table{width:100%;table-layout:fixed}
  .result td:first-child{width:59%;overflow-wrap:anywhere}
  .result td.r{width:41%;padding-left:6px;padding-right:12px;white-space:nowrap;font-size:12px}
  .result tr.tot td.r{font-size:13px}
  .result .src{overflow-wrap:anywhere}
  #controls-special>.osel{max-height:var(--mobile-special-peek-height,360px);scrollbar-gutter:stable}
  .result tr:last-child{scroll-margin-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 24px)}
}
@keyframes mobile-field-scroll{
  0%,15%{transform:translateX(0)}
  75%,90%{transform:translateX(calc(-1 * var(--mobile-scroll-distance,0px)))}
  100%{transform:translateX(0)}
}
@media(max-width:640px) and (prefers-reduced-motion:reduce){
  .mobile-input-marquee{pointer-events:auto;overflow-x:auto;scrollbar-width:none}
  .mobile-input-marquee span{animation:none}
}
