/* Focused additions for the existing app, retaining its visual design. */
.single-date.date-field{position:relative;display:flex;align-items:center;gap:10px;min-height:44px;max-width:230px;flex-wrap:nowrap;cursor:pointer}
.single-date.date-field>span{display:inline!important;font-size:14px!important;font-weight:650;color:var(--ink);width:auto!important;white-space:nowrap}
.single-date.date-field>input{position:absolute;inset:0;opacity:0;width:100%;height:100%;max-width:none;cursor:pointer}
.single-date.date-field:focus-within{outline:2px solid #38796e;outline-offset:4px;border-radius:4px}
.set-weight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:480px}
.set-weight-grid .field{min-width:0;margin-bottom:8px}
.set-weight-grid .field>span{font-size:12px}
.set-weight-grid input{min-width:0;min-height:46px;font-size:16px;padding-left:10px;padding-right:29px}
.set-weight-grid .input-suffix b{right:9px;font-size:12px}
.weight-overrides>.small{margin:12px 0}
.tip-reason{margin:14px 0 8px;color:var(--muted);font-size:12px}
.tip-reason summary{cursor:pointer;min-height:28px}
.line-chart{min-width:0;width:100%}
.line-chart svg{display:block;width:100%;height:auto;min-height:0}
.line-chart .axis-label{font-size:12px}
.period-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;margin:0 0 18px}
.period-row label{font-size:13px;color:var(--muted)}
.period-row select{font-size:14px;min-height:40px;max-width:100%;margin-left:6px;padding:7px 12px;border:1px solid #d8e1d5;border-radius:8px;background:#fff;color:var(--ink)}
.duration-filter{max-width:280px;margin:12px 0}
.account-controls{margin:16px 0 24px;padding:16px 0;border-top:1px solid #dce3d7;border-bottom:1px solid #dce3d7}
.account-actions{display:flex;gap:10px;flex-wrap:wrap}
.account-form{max-width:440px;margin-top:18px}
.account-form .field{margin-bottom:14px}
.recovery-result textarea{font-family:ui-monospace,monospace;font-size:15px;overflow-wrap:anywhere;width:100%;resize:vertical;padding:12px}
.recovery-result .button{margin:12px 0}
.recovery-result .text-btn{display:block}
.account-notice{padding:12px;border:1px solid #cbded6;border-radius:8px;background:#ecf5ef;color:#244d47}
.forgot-password{margin:16px 0 0;min-height:44px}
.app-version{margin:10px 0}
@media(max-width:600px){
  .day-bar{flex-wrap:wrap;justify-content:space-between;gap:8px 12px}
  .single-date.date-field{max-width:215px;flex-basis:auto}
  .single-date.date-field>span{font-size:13px!important}
  .day-bar .day-info{font-size:11px}
  .load-row>.field{max-width:190px}
  .set-weight-grid{gap:8px}
  .account-actions .button{font-size:13px;min-height:44px}
  .period-row{margin-bottom:14px}
}
