/* Member-only refinements. Staff navigation and owner calendar stay unchanged. */
.member-day-dot{display:none}
.member-help-links{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.member-help-links a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;font-size:13px;line-height:1.4}
.member-help-links a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.role-member .week-ring{position:relative;isolation:isolate;border:0;background:conic-gradient(var(--accent) var(--week-progress,0%),#303830 0);gap:2px}
.role-member .week-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:#151b16;z-index:-1}
.role-member .week-ring-card .button-link{margin-top:8px;min-height:44px}
.member-account-tools nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.member-account-tools nav a{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--line);border-radius:12px;font-weight:700;min-width:0;overflow-wrap:anywhere}
.member-account-tools nav a span{font-size:13px;font-weight:400;color:var(--muted)}
.member-mobile-nav a:focus-visible,.member-account-tools a:focus-visible,.member-month-shell a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.member-day-editor{scroll-margin-top:90px}
.profile-photo-form{display:grid;gap:10px;max-width:480px;margin-top:16px}
.profile-photo-form input[type=file]{display:block;max-width:100%;font-size:16px}
.profile-photo-form input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.profile-photo-form .helper{margin:0}
.role-member.member-meal-page .meal-card-kicker,.role-member.member-meal-page .meal-choice-count,.role-member.member-meal-page .featured-meal-choice>span,.role-member.member-meal-page .meal-options li>span{font-size:12px;letter-spacing:.04em}
.role-member.member-meal-page .meal-alternatives summary{font-size:14px;min-height:44px}
.role-member.member-meal-page .meal-note,.role-member.member-meal-page .meal-target,.role-member.member-meal-page .meal-tools>a{font-size:13px}
.role-member.member-meal-page .meal-log-cta{display:flex}
.role-member.member-meal-page .meal-card-top{flex-wrap:wrap}
.role-member .food-studio .food-editor input,.role-member .food-studio .food-editor select{font-size:16px}
@media(max-width:700px){
  .role-member .install-hatc{position:static;display:block;margin:16px auto;max-width:calc(100% - 32px)}
  .role-member .install-hatc[hidden]{display:none}
  .role-member main input:not([type=checkbox]):not([type=radio]),.role-member main select,.role-member main textarea{font-size:16px}
  .role-member .rest-timer .text-button{min-width:44px;min-height:44px}
  .role-member .member-mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;gap:2px;padding:8px 6px calc(8px + env(safe-area-inset-bottom))}
  .role-member .member-mobile-nav a,.role-member .member-mobile-nav .primary-scan{min-width:0;width:100%;min-height:48px;padding:5px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
  .role-member .member-mobile-nav small{font-size:11px;letter-spacing:0;line-height:1.3;white-space:nowrap}
  .role-member .member-mobile-nav a>span{display:flex;align-items:center;justify-content:center;width:24px;height:24px;line-height:1;font-size:22px}
  .member-month-shell .owner-calendar-scroll{overflow:visible}
  .member-month-shell .owner-month-grid{min-width:0;width:100%;grid-template-columns:repeat(7,minmax(0,1fr))}
  .member-month-shell .owner-month-day{min-width:0;min-height:54px;padding:7px 0;gap:4px;align-items:center;justify-content:flex-start}
  .member-month-shell .owner-day-number{font-size:15px}
  .member-month-shell .owner-week-labels>span{padding:10px 0;font-size:11px;text-align:center}
  .member-month-shell .owner-day-events{display:none}
  .member-month-shell .member-day-dot{display:block;width:5px;height:5px;border-radius:50%;background:var(--accent)}
  .member-month-shell .owner-month-controls{gap:8px;flex-wrap:wrap;padding:12px}
  .member-month-shell .owner-month-controls strong{font-size:15px}
  .member-day-editor .section-head{flex-wrap:wrap;gap:10px}
  .member-day-editor .schedule-slot{min-width:0;grid-template-columns:1fr;gap:12px}
  .member-day-editor .schedule-main{min-width:0;overflow-wrap:anywhere}
  .member-day-editor .schedule-slot form,.member-day-editor .schedule-slot button{width:100%}
  .member-account-tools nav{grid-template-columns:1fr}
  .role-member .week-ring-card{grid-template-columns:auto minmax(0,1fr);gap:8px 16px}
  .role-member .week-ring-card>.eyebrow{grid-column:1/-1;grid-row:1}
  .role-member .week-ring-card>.week-ring{grid-column:1;grid-row:2/4}
  .role-member .week-ring-card>h3{grid-column:2;grid-row:2;align-self:end}
  .role-member .week-ring-card>p{grid-column:2;grid-row:3;align-self:start;font-size:12px;line-height:1.5}
  .role-member .week-ring-card>.button-link{grid-column:1/-1;grid-row:4;width:100%;text-align:center}
}

@media(max-width:380px){
  .role-member .member-app-head{grid-template-columns:54px minmax(0,1fr) 38px 52px;gap:7px;padding:8px 0}
  .role-member .member-app-logo{width:54px;height:54px}
  .role-member .member-app-greeting{min-width:0}
  .role-member .member-app-greeting h1{font-size:24px;overflow-wrap:anywhere}
  .role-member .member-app-greeting>span{font-size:11px}
  .role-member .member-head-profile{width:38px;height:38px}
  .role-member .member-alert-button{min-width:44px;padding:8px 5px}
}
