:root{--m-bg:#dcedad;--m-shell:#fbfff2;--m-card:#fff;--m-soft:#eef7d9;--m-ink:#1d251d;--m-muted:#747d72;--m-accent:#a8ca58;--m-line:#dfe8d2}
.hero-r18-cat,.pixel-paw{display:none!important}.hero::before,.admin-header::before,.checkin-hero::before,.access-card::before,.checkin-cat-progress::before{content:none!important;display:none!important}.client-phone-top{display:none}
@media(max-width:560px){
html,body:not(.admin-body){background:var(--m-bg)!important}
.page-shell{width:min(calc(100% - 10px),395px)!important;min-height:780px;margin:10px auto 28px!important;padding:15px!important;border:1px solid var(--m-line)!important;border-radius:50px!important;overflow:hidden!important;background:var(--m-shell)!important;box-shadow:0 25px 60px #455c2725!important}
.app-canvas{min-height:808px;padding:30px 27px 44px!important;border-radius:38px!important;display:flex!important;flex-direction:column;background:var(--m-shell)!important;font-family:"SF Pro Rounded","Arial Rounded MT Bold","PingFang SC",sans-serif!important;font-weight:500}
.client-phone-top{order:1;display:flex;align-items:center;justify-content:space-between;color:var(--m-muted);font-family:inherit;font-size:9px;line-height:1.2}.client-phone-top strong{font-weight:700}
.hero{order:2;display:block!important;margin:38px 0 14px!important;padding:0!important}.hero::after{content:none!important;display:none!important}.hero .eyebrow{margin:0!important;color:var(--m-muted)!important;font-family:inherit!important;font-size:8px!important;font-weight:500!important;letter-spacing:0!important}.hero-copy>p:last-child{display:none!important}.hero .client-expiry{display:inline-flex!important;margin:0 0 14px!important;padding:4px 8px!important;border:1px solid var(--m-line)!important;border-radius:999px!important;color:var(--m-muted)!important;background:transparent!important;font-size:8px!important;font-weight:500!important}.hero h1{margin:6px 0 0!important;color:var(--m-ink)!important;font-family:inherit!important;font-size:28px!important;font-weight:700!important;line-height:1.05!important;letter-spacing:-.05em!important;cursor:pointer}
.preset-card{order:3;margin:0 0 14px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.preset-card>.section-heading,.preset-intro,.preset-card .info-note{display:none!important}.preset-control-panel{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.version-field:has(.version-option:only-child){display:none!important}.version-field,.meal-field{display:block!important;margin:0!important}.version-field-head legend,.meal-field legend{display:none!important}.meal-choice-row{margin:0!important;padding:0!important;border:0!important}.version-options,.meal-options{display:flex!important;gap:7px!important;flex-wrap:nowrap!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;padding:0 0 5px!important}.version-options>label.version-option,.meal-options>label.meal-option{flex:0 0 86%!important;min-width:0!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;scroll-snap-align:start!important}.version-option>span,.meal-option>span{width:100%!important;min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:9px 12px!important;border:1px solid var(--m-line)!important;border-radius:12px!important;color:var(--m-muted)!important;background:var(--m-card)!important;box-shadow:none!important;font:11px Inter,-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif!important;white-space:nowrap!important}.version-option>span i{display:none!important}.version-option>input:checked+span,.meal-option>input:checked+span{border-color:var(--m-ink)!important;color:#fff!important;background:var(--m-ink)!important}
.meal-mode-tabs{display:flex!important;gap:8px;margin:9px 0 0}.meal-mode-tabs button{flex:1;min-height:44px;padding:13px 8px;border:1px solid var(--m-line);border-radius:13px;color:var(--m-muted);background:var(--m-card);font-family:inherit;font-size:9px;font-weight:500}.meal-mode-tabs button.active{border-color:var(--m-ink);color:#fff;background:var(--m-ink)}.meal-mode-tabs button:disabled{opacity:.72}.meal-choice-row{position:static!important;width:auto!important;height:auto!important;margin-bottom:9px!important;overflow:visible!important;clip-path:none!important}.meal-native-select{position:fixed!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.meal-options{display:flex!important}
.composer-card{order:4;margin:18px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.composer-card>.section-heading{display:none!important}.macro-composers{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:0!important}.macro-composer,.macro-composer.status-under,.macro-composer.status-matched,.macro-composer.status-over{position:relative;min-height:172px!important;padding:12px 10px!important;overflow:visible;border:1px solid var(--m-line)!important;border-radius:16px!important;color:var(--m-ink)!important;background:var(--m-card)!important;box-shadow:none!important}.macro-composer::before{display:none!important}.macro-composer::after{content:"";position:absolute;z-index:0;right:-25px;bottom:-38px;width:98px;height:98px;display:block!important;border-radius:50%;background:var(--m-accent);opacity:.14}.macro-composer>*{position:relative;z-index:1}.macro-composer-head{display:block!important}.macro-composer-head h3{display:none!important}.macro-kicker{color:var(--m-ink)!important;font-size:8px!important;font-weight:700!important}.macro-kicker::before,.macro-kicker .dot{content:none!important;display:none!important}
.target-current{display:flex!important;flex-direction:column;margin:18px 0 9px!important;padding:0!important;background:transparent!important}.target-current>span:not(.slash){order:1;display:flex!important;align-items:baseline!important;gap:3px!important;color:var(--m-ink)!important;font-size:0!important;white-space:nowrap!important}.target-current>label{order:2;display:block!important;margin-top:4px;color:var(--m-muted)!important;font-family:inherit!important;font-size:8px!important;font-weight:500!important;white-space:nowrap!important}.target-current .slash{display:none!important}.target-current strong{flex:0 0 auto;color:var(--m-ink)!important;font-size:25px!important;font-weight:700!important;line-height:1!important;letter-spacing:-.01em!important}.target-current input{width:28px!important;padding:0!important;color:var(--m-muted)!important;font-family:inherit!important;font-size:8px!important;font-weight:500!important}.target-current em{display:inline-block!important;flex:0 0 auto!important;margin-left:1px!important;color:var(--m-muted)!important;font-size:8px!important;font-style:normal!important}
.macro-progress{height:6px!important;margin-top:7px!important;border:0!important;border-radius:20px!important;background:var(--m-soft)!important}.macro-progress span{border-radius:inherit!important}.macro-balance{position:absolute!important;z-index:2!important;right:9px;top:9px;margin:0!important}.macro-balance span:first-child{width:28px;min-height:28px;display:grid;place-items:center;padding:4px;border-radius:50%;color:#d87368;background:#fff0ed;font-size:0!important;line-height:1.05;text-align:center}.macro-balance span:first-child::after{content:attr(data-compact-status);font-size:7px}.macro-composer.status-matched .macro-balance span:first-child{color:#749b25;background:#eef8d8}.macro-composer.status-over .macro-balance span:first-child{color:#7755ad;background:#f1e9ff}.macro-balance span:last-child{display:none!important}.macro-card-compact-foods{min-height:33px;margin-top:12px!important;padding-top:9px!important;border-top:1px solid var(--m-line)!important;color:var(--m-ink)!important;font-size:8px!important;line-height:1.45!important}.macro-card-toggle{position:absolute!important;z-index:4!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;opacity:0!important}.macro-composer.expanded{grid-column:1/-1!important;min-height:0!important;height:auto!important;align-self:start!important;overflow:visible!important;padding:15px!important}.macro-composer.expanded .macro-card-toggle{position:static!important;height:auto!important;min-height:32px!important;margin-top:9px!important;padding:6px!important;opacity:1!important}
.cross-nutrient-strip{position:relative!important;grid-template-columns:minmax(0,1fr) 40px!important;gap:8px!important;margin-top:11px!important;padding:13px 15px!important;border:0!important;border-radius:15px!important;color:#fff!important;background:#344032!important}.cross-nutrient-strip h3{font-size:10px!important}.cross-nutrient-strip p{margin-top:4px!important;color:#bdc6b9!important;font-size:8px!important}.cross-compact-summary{display:block!important;grid-column:1/-1!important;margin-top:6px;color:#e2e7df;font-size:8px!important}.cross-nutrient-strip>button{position:static!important;grid-column:2!important;grid-row:1!important;justify-self:end!important;align-self:center!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;margin:0!important;padding:0!important;opacity:1!important}.cross-nutrient-strip.expanded>button{position:static!important;height:40px!important;min-height:40px!important;margin:0!important;opacity:1!important}.match-help{display:none!important}
.target-current strong{font-size:25px!important;font-weight:700!important}.target-current input{width:28px!important}
.meal-fixed-preview{order:5;margin:14px 0 0;padding:17px;border:1px solid var(--m-line);border-radius:18px;background:var(--m-card)}.meal-fixed-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.meal-fixed-preview-head h2{margin:0;color:var(--m-ink);font-size:12px}.meal-fixed-preview-head p{margin:5px 0 0;color:var(--m-muted);font-size:8px}.meal-fixed-preview-head>b{color:#7da32e;font-size:24px;line-height:1}.meal-fixed-preview-items{margin-top:9px}.meal-fixed-preview-items>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--m-line);font-size:9px}.meal-fixed-preview-items p{margin:9px 0 0;padding-top:9px;border-top:1px solid var(--m-line);color:var(--m-muted);font-size:8px}.daily-fixed-card{order:6;margin:14px 0 0!important;padding:16px!important;border:1px solid var(--m-line)!important;border-radius:18px!important;background:var(--m-card)!important;box-shadow:none!important}.daily-fixed-card .step,.daily-fixed-card .status-pill{display:none!important}.daily-fixed-card .section-heading h2{font-size:12px!important}.daily-fixed-items{gap:0!important;margin-top:9px!important}.daily-fixed-item{padding:9px 0!important;border:0!important;border-top:1px solid var(--m-line)!important;border-radius:0!important;background:transparent!important;font-size:9px!important}.training-day-panel{margin-top:10px!important;padding:10px!important;border:1px solid var(--m-line)!important;border-radius:13px!important;background:var(--m-soft)!important}.training-day-toggle{gap:8px!important}.training-day-toggle input{width:17px!important;height:17px!important;accent-color:var(--m-accent)!important}.training-day-toggle strong{color:var(--m-ink)!important;font-size:10px!important}.training-day-toggle small{color:var(--m-muted)!important;font-size:8px!important}.training-food-summary-item{padding:9px 11px!important;border-radius:11px!important;background:var(--m-ink)!important}.training-food-summary-item span,.training-food-summary-item em{color:#dce7d5!important}.training-food-summary-item strong,.training-food-summary-item b{font-size:10px!important}
#error{order:7}#composer-actions{order:7;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:14px 0 0!important}#composer-actions button{grid-column:auto!important;min-height:38px!important;padding:8px 5px!important;border:1px solid var(--m-line)!important;border-radius:11px!important;color:var(--m-ink)!important;background:var(--m-card)!important;font-family:inherit!important;font-size:8px!important;font-weight:600!important;box-shadow:none!important}#composer-actions .primary{border-color:var(--m-ink)!important;color:#fff!important;background:var(--m-ink)!important}
#result{order:8;margin:15px 0 0!important;padding:0!important;border-radius:0!important;color:var(--m-ink)!important;background:transparent!important;box-shadow:none!important}.result-heading{display:flex!important;align-items:end!important;justify-content:space-between!important;margin:0 2px 9px!important}.result-kicker{margin:0!important;color:var(--m-muted)!important;font-size:8px!important;letter-spacing:.08em!important}.result-heading h2{margin:4px 0 0!important;color:var(--m-ink)!important;font-size:14px!important;font-weight:700!important}.coach-plan-banner,.result-guidance{margin:0 0 10px!important;padding:12px!important;border:1px solid var(--m-line)!important;border-radius:14px!important;color:var(--m-ink)!important;background:var(--m-soft)!important}.coach-plan-banner strong{color:#fff!important;background:var(--m-ink)!important}.coach-plan-banner span,.result-guidance li{color:var(--m-muted)!important;font-size:8px!important}.result-guidance h3{color:var(--m-ink)!important;font-size:12px!important}.result-guidance span{color:var(--m-muted)!important}.guidance-head button{padding:6px 8px!important;border-color:var(--m-line)!important;color:var(--m-ink)!important;background:#fff!important;font-size:7px!important}
.result-foods{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:0!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important}.result-row,.result-row.auto-fat-result,.result-row.natural-custom-result,.result-row.manual-custom-result{display:inline-flex!important;width:fit-content!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:10px!important;border:1px solid var(--m-line)!important;border-radius:13px!important;color:var(--m-ink)!important;background:var(--m-card)!important;box-shadow:none!important}.result-row strong{color:var(--m-ink)!important;font-size:9px!important}.result-row small,.result-row.natural-custom-result small,.result-row.manual-custom-result small{margin-top:2px!important;color:var(--m-muted)!important;font-size:7px!important}.result-row b{color:var(--m-ink)!important;font-size:13px!important;white-space:nowrap!important}.result-row b em{color:var(--m-muted)!important;font-size:7px!important}.result-empty{width:100%!important;padding:15px!important;border:1px solid var(--m-line)!important;border-radius:13px!important;color:var(--m-muted)!important;background:var(--m-card)!important;font-size:9px!important}
.result-supplement-section,.meal-supplement-track{margin-top:8px!important;padding:8px 10px!important;border:1px solid #eadfbe!important;border-radius:13px!important;color:var(--m-ink)!important;background:#fff9e8!important}.result-subheading span,.meal-supplement-track-head span{color:#98763c!important}.result-subheading h3{color:var(--m-ink)!important}.result-subheading>small{color:var(--m-muted)!important}.meal-supplement-track{grid-template-columns:34px minmax(0,1fr)!important}.meal-supplement-track::before{background:#cba75e!important}.supplement-result{min-height:32px!important;padding:5px 7px!important;border:1px solid #eadfbe!important;color:var(--m-ink)!important;background:#fff!important}.supplement-result strong,.supplement-result b{color:var(--m-ink)!important}.supplement-result small{color:#8f7c5b!important}.supplement-result button{color:var(--m-ink)!important;border-color:#d8c18c!important;background:#fff!important}
.actual-panel{margin-top:10px!important;padding:14px!important;border:1px solid var(--m-line)!important;border-radius:17px!important;color:var(--m-ink)!important;background:var(--m-card)!important}.actual-panel h3{color:var(--m-ink)!important;font-size:11px!important}.actual-grid{gap:6px!important;margin-top:10px!important}.actual-grid div{padding-right:5px;border-right:1px solid var(--m-line)}.actual-grid div:last-child{border-right:0}.actual-grid span{color:var(--m-muted)!important;font-size:8px!important}.actual-grid strong{color:var(--m-ink)!important;font-size:14px!important;white-space:nowrap}.actual-grid small{font-size:8px!important}.actual-panel>p{margin-top:9px!important;color:var(--m-muted)!important;font-size:7px!important}
.calculator-checkin{gap:9px!important;margin-top:10px!important;padding:14px!important;border:0!important;border-radius:17px!important;color:#fff!important;background:var(--m-ink)!important}.calculator-checkin-compact-row{grid-template-columns:.8fr 1.15fr .85fr!important;gap:6px!important}.checkin-cat-progress{min-width:0!important;padding:7px!important;border:1px solid #ffffff14!important;border-radius:11px!important;background:#ffffff0a!important}.checkin-cat-progress small{color:#dfe8db!important;font-size:8px!important}.checkin-success-confirm,.checkin-photo-picker{min-height:42px!important;padding:7px!important;border:1px solid #ffffff1f!important;border-radius:11px!important;color:#fff!important;background:#ffffff0a!important;font-size:8px!important}.checkin-success-confirm input{width:16px!important;height:16px!important;accent-color:var(--m-accent)!important}.checkin-submit-actions{gap:6px!important}.submit-calculator-checkin{min-height:40px!important;border-radius:11px!important;color:var(--m-ink)!important;background:var(--m-soft)!important;font-size:9px!important}.submit-and-share-checkin{color:#fff!important;background:#526b45!important}.calculator-checkin-status{color:#aeb9aa!important;font-size:7px!important}.view-checkin-calendar{min-height:39px!important;border-color:#ffffff2b!important;border-radius:11px!important;color:#e4eadf!important;background:#ffffff0a!important;font-size:9px!important}.footer-forget-device{order:10;position:static!important;align-self:center;width:auto!important;margin:24px 0 0!important;padding:5px 8px!important;border:0!important;color:var(--m-muted)!important;background:transparent!important;font-size:8px!important}
}
.client-account-actions{display:flex;gap:8px;margin-top:14px}.client-account-actions button{min-height:36px;padding:8px 12px;border:1px solid var(--m-line);border-radius:11px;color:var(--m-ink);background:#fff;font:600 9px "SF Pro Rounded","PingFang SC",sans-serif}.client-account-actions button:last-child{color:#fff;border-color:var(--m-ink);background:var(--m-ink)}
.account-dialog{width:min(92vw,420px);padding:0;border:0;border-radius:24px;color:var(--m-ink);background:transparent;box-shadow:0 30px 90px #0006}.account-dialog::backdrop{background:#172016a8;backdrop-filter:blur(5px)}.account-dialog-panel{display:grid;gap:13px;margin:0;padding:24px;border:1px solid var(--m-line);border-radius:24px;background:var(--m-shell);font-family:"SF Pro Rounded","Arial Rounded MT Bold","PingFang SC",sans-serif}.account-dialog-panel>div:first-child>span{color:var(--m-muted);font-size:9px}.account-dialog-panel h2{margin:5px 0 0;font-size:22px;letter-spacing:-.03em}.account-dialog-panel p{margin:6px 0 0;color:var(--m-muted);font-size:11px;line-height:1.55}.account-dialog-panel label{display:grid;gap:6px;color:var(--m-muted);font-size:10px}.account-dialog-panel input{min-height:46px;padding:10px 13px;border:1px solid var(--m-line);border-radius:13px;color:var(--m-ink);background:#fff;font:600 14px inherit}.account-dialog-panel>button,.account-dialog-actions button,.account-dialog-actions a{display:grid;place-items:center;min-height:44px;padding:10px 13px;border:1px solid var(--m-ink);border-radius:13px;color:#fff;background:var(--m-ink);font:700 11px inherit;text-decoration:none}.account-dialog-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}.account-dialog-actions button:first-child{color:var(--m-ink);border-color:var(--m-line);background:#fff}.quick-qr-panel img{width:min(260px,100%);margin:0 auto;border:10px solid #fff;border-radius:18px}.access-card{border-color:var(--m-line)!important;background:var(--m-shell)!important}.access-card h1{color:var(--m-ink)!important}.access-card form{gap:10px}.access-card input{border-color:var(--m-line)!important;border-radius:13px!important}.access-card button{border-radius:13px!important;color:#fff!important;background:var(--m-ink)!important}
@media(max-width:560px){.client-account-actions{margin-top:12px}.client-account-actions button{flex:1;padding:8px 6px;font-size:8px}.account-dialog{width:calc(100% - 24px)}.account-dialog-panel{padding:20px;border-radius:21px}}
.checkin-cat-progress img{display:block!important;width:34px!important;height:34px!important;object-fit:contain;image-rendering:pixelated}.checkin-cat-progress img.uncompleted{filter:grayscale(1)!important;opacity:.52}.macro-composers:has(.macro-composer.expanded){grid-template-columns:repeat(2,minmax(0,1fr))!important}.macro-composers:has(.macro-composer.expanded) .macro-composer.expanded{grid-column:1/-1!important}.qr-scanner-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.qr-file-button{min-height:44px;display:grid!important;place-items:center;padding:10px;border:1px solid var(--m-ink);border-radius:13px;color:#fff!important;background:var(--m-ink);font-weight:700!important}.qr-file-button.secondary{color:var(--m-ink)!important;border-color:var(--m-line);background:#fff}.qr-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.access-secondary-button{color:var(--m-ink)!important;border:1px solid var(--m-line)!important;background:#fff!important}

/* r25 compact composer controls and real cat progress stages. */
.custom-food-toggle-standalone{display:none}
.macro-composer:not(.expanded)>.food-selector,
.macro-composer:not(.expanded)>.selected-foods,
.macro-composer:not(.expanded)>.auto-fat-panel{display:none!important}
.checkin-cat-progress img[data-stage="0"]{content:url("assets/orange-cat/orange-cat-0.png")!important}
.checkin-cat-progress img[data-stage="1"]{content:url("assets/orange-cat/orange-cat-1.png")!important}
.checkin-cat-progress img[data-stage="2"]{content:url("assets/orange-cat/orange-cat-2.png")!important}
.checkin-cat-progress img[data-stage="3"]{content:url("assets/orange-cat/orange-cat-3.png")!important}
.checkin-cat-progress img[data-stage="4"]{content:url("assets/orange-cat/orange-cat-4.png")!important}
@media(max-width:560px){
  .custom-food-toggle-standalone:not([hidden]){display:flex!important;align-items:center;justify-content:center;margin:10px 0 0;padding:0;cursor:pointer}
  .custom-food-toggle-standalone input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
  .custom-food-toggle-standalone span{width:100%;min-height:40px;display:grid;place-items:center;padding:8px 12px;border:1px solid var(--m-line);border-radius:12px;color:var(--m-ink);background:#fff;font-size:9px;font-weight:700}
  .custom-food-toggle-standalone input:checked+span{color:#fff;border-color:var(--m-ink);background:var(--m-ink)}
  .macro-composers{touch-action:pan-y}
}

/* r28 推荐整餐执行清单与营养折叠 */
.execution-list{display:grid;gap:8px;width:100%}
.execution-food-row{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--m-line);border-radius:13px;background:var(--m-card)}
.execution-food-main{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.execution-food-main strong{color:var(--m-ink);font-size:13px}
.execution-food-main b{color:var(--m-ink);font-size:14px;white-space:nowrap}
.execution-food-main em{font-style:normal;color:var(--m-muted);font-size:9px}
.execution-food-sub{color:var(--m-muted);font-size:9px;line-height:1.4}
.nutrition-compact{font-size:12px;color:var(--m-ink);background:var(--m-soft);border-radius:10px;padding:9px 11px;margin:10px 0 0}
.actual-grid.coach-collapsed{display:none}
.actual-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
#nutrition-toggle{border:1px solid var(--m-line);background:#fff;color:var(--m-ink);border-radius:999px;padding:4px 12px;font-size:9px}

/* r41: coach recommendation is visibly unavailable when the coach disables it. */
.meal-mode-tabs button:disabled:not(.active){opacity:1!important;border-color:#d4d8d1!important;color:#8b9188!important;background:#e7e9e5!important;cursor:not-allowed}
