.partner-shell { color: #101b15; }
.partner-header { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; padding:1rem; background:#fff; border-bottom:1px solid #bbc9c0; }
.partner-header a, .partner-header button { min-height:44px; display:inline-flex; align-items:center; }
.partner-main { max-width:64rem; margin:auto; padding:1rem 1rem calc(6rem + env(safe-area-inset-bottom)); }
.partner-tabs { position:fixed; z-index:40; bottom:0; left:0; right:0; display:flex; background:#fff; border-top:2px solid #0b5d3b; padding-bottom:env(safe-area-inset-bottom); }
.partner-tab { flex:1; text-align:center; display:flex; justify-content:center; align-items:center; min-height:64px; font-weight:600; font-size:.85rem; overflow-wrap:anywhere; }
.partner-tab[aria-current=page] { background:#0b5d3b; color:#fff; }
.partner-shell input:not([type=hidden]):not([type=checkbox]), .partner-shell select, .partner-shell textarea { min-height:48px; max-width:100%; border:1px solid #68786e; }
.partner-shell button, .partner-shell input[type=submit] { min-height:48px; cursor:pointer; }
.partner-shell a:focus-visible, .partner-shell button:focus-visible, .partner-shell input:focus-visible { outline:3px solid #0b5d3b; outline-offset:3px; }
.partner-card { padding:1rem; background:#fff; border:1px solid #9aaa9f; border-radius:.75rem; margin-bottom:1rem; }
.partner-overdue { border:2px solid #a51c22; }
.partner-overdue-label { color:#a51c22; font-weight:700; }
.partner-evidence-image { width:120px; height:120px; object-fit:cover; border-radius:.5rem; }
@media (min-width:1024px) {
  .partner-tabs { top:80px; bottom:0; right:auto; width:190px; flex-direction:column; justify-content:flex-start; border-right:1px solid #bbc9c0; border-top:0; }
  .partner-tab { flex:none; justify-content:flex-start; padding:1rem; font-size:1rem; }
  .partner-main { margin-left:210px; padding-bottom:2rem; }
}
