/* Activity Weight-Loss Planner — mobile first, scoped to .awp-page */
.awp-page{
  --awp-navy:#10213f;
  --awp-navy-2:#173f79;
  --awp-blue:#2563eb;
  --awp-blue-soft:#eaf2ff;
  --awp-bg:#f3f7fc;
  --awp-card:#fff;
  --awp-text:#172033;
  --awp-muted:#667085;
  --awp-line:#dce5f1;
  --awp-green:#067647;
  --awp-green-soft:#ecfdf3;
  --awp-teal:#0f766e;
  --awp-teal-soft:#ecfdf8;
  --awp-amber:#9a6700;
  --awp-amber-soft:#fff8e6;
  --awp-red:#b42318;
  --awp-red-soft:#fff1f0;
  color:var(--awp-text);
  line-height:1.55;
}
.awp-page *{box-sizing:border-box}
.awp-page button,.awp-page input{font:inherit}
.awp-hidden{display:none!important}
.awp-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.awp-hero{padding:8px 2px 18px;text-align:center}
.awp-eyebrow{display:inline-flex;padding:8px 12px;border-radius:999px;background:#e0ebff;color:#17488d;font-size:.88rem;font-weight:900;letter-spacing:.01em}
.awp-hero h1{margin:12px auto 8px;max-width:900px;font-size:2.05rem;line-height:1.15;letter-spacing:0}
.awp-hero .subtitle{max-width:840px;margin:0 auto 5px;font-size:1.08rem;line-height:1.7}

.awp-loading,.awp-error{display:flex;align-items:center;justify-content:center;gap:10px;min-height:120px;margin:12px 0;padding:20px;border:1px solid var(--awp-line);border-radius:18px;background:#fff;color:var(--awp-muted);font-weight:800;text-align:center}
.awp-error{background:var(--awp-red-soft);border-color:#f5b7b1;color:var(--awp-red)}
.awp-spinner{width:22px;height:22px;border:3px solid #d5e2f5;border-top-color:var(--awp-blue);border-radius:50%;animation:awp-spin .7s linear infinite}
@keyframes awp-spin{to{transform:rotate(360deg)}}

.awp-main-grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}
.awp-card,.awp-result-card{overflow:hidden;border:1px solid var(--awp-line);border-radius:20px;background:var(--awp-card);box-shadow:0 8px 20px rgba(16,24,40,.055)}
.awp-goal-card{border-top:5px solid var(--awp-blue)}
.awp-plan-card{border-top:5px solid var(--awp-teal)}
.awp-plan-card .awp-step{background:var(--awp-teal);box-shadow:0 4px 10px rgba(15,118,110,.25)}
.awp-plan-head{background:linear-gradient(135deg,var(--awp-teal-soft),#fff);border-bottom-color:#bfe5dc}
.awp-card-head{display:flex;align-items:flex-start;gap:11px;padding:16px;border-bottom:1px solid var(--awp-line)}
.awp-card-head-light{background:linear-gradient(180deg,#f8fbff,#fff)}
.awp-card-head h3,.awp-result-head h3{margin:0;font-size:1.42rem;line-height:1.35;color:var(--awp-text);text-align:left}
.awp-card-head p{margin:4px 0 0;color:var(--awp-muted);font-size:.95rem;line-height:1.5}
.awp-step{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--awp-blue);color:#fff;font-weight:900;box-shadow:0 4px 10px rgba(37,99,235,.28)}
.awp-card-body{padding:15px}

.awp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.awp-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.awp-full{grid-column:1/-1}
.awp-field label{color:#344054;font-size:1rem;font-weight:850}
.awp-input-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid #cad6e5;border-radius:13px;background:#fff;transition:border-color .15s,box-shadow .15s}
.awp-input-unit:focus-within{border-color:var(--awp-blue);box-shadow:0 0 0 4px rgba(37,99,235,.1)}
.awp-input-unit input{width:100%;min-width:0;height:52px;padding:0 10px;border:0;outline:0;background:#fff;color:var(--awp-text);font-size:1.35rem;font-weight:850;text-align:right;font-variant-numeric:tabular-nums}
.awp-input-unit span{padding:0 10px;color:var(--awp-muted);font-size:.86rem;font-weight:800;white-space:nowrap}
.awp-segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.awp-segmented label{cursor:pointer}
.awp-segmented input{position:absolute;opacity:0;pointer-events:none}
.awp-segmented span{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #cad6e5;border-radius:12px;background:#fff;color:#344054;font-weight:850;transition:.15s}
.awp-segmented input:checked+span{border-color:var(--awp-blue);background:var(--awp-blue-soft);color:#17488d;box-shadow:inset 0 0 0 1px var(--awp-blue)}
.awp-field-note{margin:12px 0 0;padding:11px 12px;border-radius:11px;background:#f6f8fb;color:var(--awp-muted);font-size:.85rem;line-height:1.55}
.awp-field-help{margin:2px 1px 0;color:#667085;font-size:.8rem;line-height:1.4}
.awp-goal-meaning{margin:14px 0 0;padding:13px 14px;border:1px solid #c7d9f4;border-left:4px solid var(--awp-blue);border-radius:12px;background:#eef5ff;color:#284665;font-size:.95rem;line-height:1.6}
.awp-goal-meaning strong{color:#17488d}
.awp-rate-guidance{margin:9px 0 0;padding:12px 13px;border:1px solid #c7d9f4;border-radius:11px;background:#f4f8ff;color:#35557f;font-size:.88rem;line-height:1.6}
.awp-rate-guidance strong{color:#17488d}
.awp-rate-guidance-steady{border-color:#addabf;background:var(--awp-green-soft);color:#286247}
.awp-rate-guidance-steady strong{color:var(--awp-green)}
.awp-rate-guidance-warning{border-color:#edcf90;background:var(--awp-amber-soft);color:#6d5100}
.awp-rate-guidance-warning strong{color:#8a5800}
.awp-inline-error{margin-top:12px;padding:10px 12px;border:1px solid #efb5b0;border-radius:11px;background:var(--awp-red-soft);color:var(--awp-red);font-size:.88rem;font-weight:800}

.awp-plan-layout{display:grid;gap:20px}
.awp-section-title{margin-bottom:11px}
.awp-section-title h4{margin:0;color:#173f3b;font-size:1.14rem;text-align:left}
.awp-section-title p{margin:3px 0 0;color:#5e716f;font-size:.86rem;line-height:1.5}
.awp-catalog-panel{padding-top:18px;border-top:1px solid #cfe7e2}
.awp-selected-list{display:grid;gap:11px}
.awp-empty-plan{padding:24px 14px;border:1px dashed #bfd0e5;border-radius:14px;background:#f8fbff;color:var(--awp-muted);text-align:center;font-weight:800}
.awp-selected-item{overflow:hidden;border:1px solid #b9ddd6;border-radius:16px;background:#fff}
.awp-selected-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:13px;background:linear-gradient(180deg,#f1fbf8,#fff)}
.awp-selected-title{min-width:0}
.awp-selected-title strong{display:block;font-size:1.14rem;line-height:1.35;color:#17233a}
.awp-selected-title span{display:block;margin-top:4px;color:var(--awp-muted);font-size:.86rem;line-height:1.45}
.awp-selected-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.awp-badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:#e8eef8;color:#42526b;font-size:.64rem;font-weight:900;line-height:1.2}
.awp-badge-direct{background:#ddf4e7;color:#11633a}
.awp-badge-protocol{background:#e6efff;color:#17488d}
.awp-badge-group{background:#fff0c7;color:#7a5200}
.awp-badge-track{background:#f0f1f4;color:#596273}
.awp-remove-button{width:36px;height:36px;padding:0;border:1px solid #e3a8a3;border-radius:11px;background:#fff7f6;color:var(--awp-red);font-size:1.25rem;font-weight:900;line-height:1;cursor:pointer}
.awp-selected-controls{display:grid;grid-template-columns:minmax(0,240px);gap:10px;padding:12px 13px 13px;border-top:1px solid #d8ebe7;background:#f7fcfb}
.awp-selected-controls .awp-field label{font-size:.9rem;line-height:1.35}
.awp-selected-controls .awp-input-unit input{height:50px;font-size:1.18rem}
.awp-selected-controls .awp-input-unit span{font-size:.8rem;padding:0 9px}
.awp-selected-note{grid-column:1/-1;margin:0;padding:10px 11px;border-radius:10px;background:#fff8e6;color:#6d5100;font-size:.82rem;line-height:1.5}
.awp-selected-note.awp-note-blue{background:#eaf2ff;color:#244f86}
.awp-days-context{margin:2px 1px 0;color:#5d6a7e;font-size:.78rem;line-height:1.4}
.awp-days-context strong{color:#17488d}
.awp-plan-communication{grid-column:1/-1;order:2;margin:0;padding:12px 13px;border:1px solid #bfd3f3;border-left:4px solid var(--awp-blue);border-radius:11px;background:#eef5ff;color:#203f67;font-size:.94rem;line-height:1.65;font-weight:750}
.awp-selected-controls>.awp-field{order:1}
.awp-selected-note{order:3}
.awp-source-details{order:4}
.awp-source-details{grid-column:1/-1;font-size:.82rem;color:var(--awp-muted)}
.awp-source-details summary{cursor:pointer;color:#35557f;font-weight:850}
.awp-source-details p{margin:6px 0 0;line-height:1.55}
.awp-source-details a{color:var(--awp-blue);font-weight:800}
.awp-jump-button,.awp-more-button{width:100%;min-height:52px;margin-top:12px;border:1px solid #bcd0ed;border-radius:13px;background:#eef5ff;color:#17488d;font-size:1rem;font-weight:900;cursor:pointer}

.awp-result-card{border:3px solid #173f79;background:var(--awp-navy);box-shadow:0 20px 42px rgba(16,33,63,.24)}
.awp-result-head{padding:18px;background:linear-gradient(135deg,var(--awp-navy),var(--awp-navy-2));color:#fff}
.awp-result-head small{display:block;color:rgba(255,255,255,.8);font-size:.86rem;font-weight:850}
.awp-result-head h3{margin:0;color:#fff;font-size:1.62rem}
.awp-result-body{padding:14px;background:linear-gradient(180deg,#173f79 0,#10213f 100%)}
.awp-result-story{display:grid;gap:10px}
.awp-story-row{padding:15px 16px;border:1px solid #cbd9eb;border-radius:14px;background:#fff}
.awp-story-row>span{display:block;margin-bottom:4px;color:#52617a;font-size:.86rem;font-weight:850}
.awp-story-row p{margin:0;color:#26364f;font-size:1rem;line-height:1.6}
.awp-story-row p strong{color:#173f79;font-size:1.25rem;font-variant-numeric:tabular-nums}
.awp-story-row small{display:block;margin-top:5px;color:#65738a;font-size:.82rem;line-height:1.5}
.awp-story-row small strong{color:#0f766e;font-size:.98rem}
.awp-story-target,.awp-story-activity{border-left:5px solid #71829a;background:#fff}
.awp-story-activity small{margin-top:10px;padding:9px 11px;border:1px solid #c7d9f4;border-left:4px solid #173f79;border-radius:9px;background:#eef5ff;color:#284665;font-size:.94rem;font-weight:850}
.awp-story-activity small strong{color:#173f79;font-size:1.2rem}
.awp-story-remaining{border-color:#f2b8b3;border-left:5px solid var(--awp-red);background:var(--awp-red-soft)}
.awp-story-remaining>span,.awp-story-remaining p strong{color:var(--awp-red)}
.awp-story-success{border-color:#addabf;border-left-color:var(--awp-green);background:var(--awp-green-soft)}
.awp-story-success>span,.awp-story-success p strong{color:var(--awp-green)}
.awp-result-conclusion{padding:15px 16px;border:1px solid #cbd9eb;border-left:5px solid #71829a;border-radius:14px;background:#fff}
.awp-result-conclusion h4{margin:0 0 6px;color:#26364f;font-size:1.06rem;text-align:left}
.awp-result-conclusion p{margin:0;color:#384861;font-size:.95rem;font-weight:750;line-height:1.65}
.awp-result-conclusion small{display:block;margin-top:7px;color:#65738a;font-size:.8rem;line-height:1.5}
.awp-result-conclusion small strong{color:#26364f}
.awp-conclusion-success{border-color:#addabf;border-left-color:var(--awp-green);background:#fff}
.awp-conclusion-success h4,.awp-conclusion-success p{color:var(--awp-green)}
.awp-conclusion-warning{border-color:#cbd9eb;border-left-color:#71829a;background:#fff}
.awp-summary{padding:17px;border:1px solid #bed4f6;border-radius:16px;background:linear-gradient(135deg,#163d74,#10213f);color:#fff;text-align:center}
.awp-summary span{display:block;color:rgba(255,255,255,.78);font-size:.9rem;font-weight:850}
.awp-summary strong{display:block;margin:5px 0;font-size:2.55rem;line-height:1.1;color:#fff;font-variant-numeric:tabular-nums}
.awp-summary p{margin:6px 0 0;color:rgba(255,255,255,.88);font-size:.92rem;line-height:1.55}
.awp-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:11px}
.awp-stat{min-width:0;padding:12px;border:1px solid #d5e0ee;border-radius:13px;background:#fff}
.awp-stat span{display:block;color:var(--awp-muted);font-size:.8rem;font-weight:850;line-height:1.35}
.awp-stat strong{display:block;margin:5px 0;color:#173f79;font-size:1.36rem;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.awp-stat small{display:block;color:#7b8798;font-size:.72rem;line-height:1.4}
.awp-stat-warning{background:var(--awp-amber-soft);border-color:#edcf90}
.awp-stat-success{background:var(--awp-green-soft);border-color:#addabf}
.awp-stat-success strong{color:var(--awp-green)}
.awp-breakdown,.awp-reality,.awp-method{margin-top:11px;padding:13px;border:1px solid #d5e0ee;border-radius:14px;background:#fff}
.awp-breakdown h4,.awp-reality h4{margin:0 0 9px;font-size:1.1rem;text-align:left;color:#26364f}
.awp-breakdown-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px 0;border-bottom:1px solid #e8edf4}
.awp-breakdown-row:last-child{border-bottom:0}
.awp-breakdown-row strong{display:block;font-size:.94rem;line-height:1.4;color:#24334b}
.awp-breakdown-row span{display:block;margin-top:3px;color:var(--awp-muted);font-size:.8rem;line-height:1.45}
.awp-breakdown-row b{align-self:center;color:#164f98;font-size:.94rem;white-space:nowrap}
.awp-breakdown-row.awp-not-calculated b{color:#7b8493}
.awp-reality{background:var(--awp-green-soft);border-color:#b9dec8}
.awp-reality.awp-reality-warning{background:var(--awp-amber-soft);border-color:#edcf90}
.awp-reality.awp-reality-danger{background:var(--awp-red-soft);border-color:#efb7b2}
.awp-reality p{margin:0;color:#384861;font-size:.9rem;line-height:1.65}
.awp-method{background:#edf3fb;color:#46566f;font-size:.82rem;line-height:1.55}
.awp-method strong,.awp-method code{display:block}
.awp-method code{margin:6px 0;padding:9px;border-radius:9px;background:#fff;color:#173f79;font-size:.78rem;font-weight:900;white-space:normal}
.awp-method p{margin:5px 0 0}

.awp-catalog-tools{display:grid;gap:10px}
.awp-search-wrap{display:block}
.awp-search-wrap input{width:100%;height:54px;padding:0 14px;border:1px solid #cad6e5;border-radius:13px;background:#fff;color:var(--awp-text);font-size:1.08rem;outline:0}
.awp-search-wrap input:focus{border-color:var(--awp-blue);box-shadow:0 0 0 4px rgba(37,99,235,.1)}
.awp-category-tabs{display:flex;gap:7px;overflow-x:auto;padding:1px 0 4px;scrollbar-width:thin}
.awp-category-button{flex:0 0 auto;min-height:40px;padding:0 13px;border:1px solid #cbd7e6;border-radius:999px;background:#fff;color:#43516a;font-size:.84rem;font-weight:850;cursor:pointer;white-space:nowrap}
.awp-category-button.awp-active{border-color:var(--awp-blue);background:var(--awp-blue-soft);color:#17488d;box-shadow:inset 0 0 0 1px var(--awp-blue)}
.awp-catalog-status{margin:12px 0;color:var(--awp-muted);font-size:.84rem;font-weight:750}
.awp-catalog-grid{display:grid;grid-template-columns:1fr;gap:9px}
.awp-catalog-item{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid #dbe4ef;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.awp-catalog-item:hover{border-color:#9eb9e2;background:#f7faff}
.awp-catalog-item.awp-is-selected{border-color:#8eb0e7;background:#eef5ff}
.awp-catalog-check{width:20px;height:20px;margin-top:2px;accent-color:var(--awp-blue)}
.awp-catalog-copy{min-width:0}
.awp-catalog-copy strong{display:block;color:#1e2b41;font-size:1rem;line-height:1.4}
.awp-catalog-copy p{margin:4px 0 0;color:var(--awp-muted);font-size:.82rem;line-height:1.45}
.awp-catalog-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.awp-catalog-meta span{display:inline-flex;padding:4px 7px;border-radius:999px;background:#edf1f7;color:#4c5d75;font-size:.68rem;font-weight:900}
.awp-more-button{background:#173f79;border-color:#173f79;color:#fff}
.awp-plan-card .awp-search-wrap input:focus{border-color:var(--awp-teal);box-shadow:0 0 0 4px rgba(15,118,110,.1)}
.awp-plan-card .awp-selected-controls .awp-input-unit:focus-within{border-color:var(--awp-teal);box-shadow:0 0 0 4px rgba(15,118,110,.1)}
.awp-plan-card .awp-category-button.awp-active{border-color:var(--awp-teal);background:var(--awp-teal-soft);color:#0c625b;box-shadow:inset 0 0 0 1px var(--awp-teal)}
.awp-plan-card .awp-catalog-item:hover{border-color:#8acbc0;background:#f6fcfa}
.awp-plan-card .awp-catalog-item.awp-is-selected{border-color:#62b5a7;background:var(--awp-teal-soft)}
.awp-plan-card .awp-catalog-check{accent-color:var(--awp-teal)}
.awp-plan-card .awp-more-button{background:var(--awp-teal);border-color:var(--awp-teal)}

.awp-info-grid{display:grid;grid-template-columns:1fr;gap:13px;margin-top:16px}
.awp-info-card{border-top:4px solid #7b98bf}
.awp-info-card h3{margin:0 0 8px;text-align:left;font-size:1.18rem;color:#26364f}
.awp-info-card p{margin:0;color:var(--awp-muted);font-size:.9rem;line-height:1.7}
.awp-info-card a{color:#174f98;font-weight:850;text-underline-offset:2px}

html[dir="rtl"] .awp-card-head h3,
html[dir="rtl"] .awp-result-head h3,
html[dir="rtl"] .awp-section-title h4,
html[dir="rtl"] .awp-result-conclusion h4,
html[dir="rtl"] .awp-breakdown h4,
html[dir="rtl"] .awp-reality h4,
html[dir="rtl"] .awp-info-card h3{text-align:right}
html[dir="rtl"] .awp-input-unit input{direction:ltr;unicode-bidi:isolate;text-align:right}
html[dir="rtl"] .awp-goal-meaning{border-left-width:1px;border-right:4px solid var(--awp-blue)}
html[dir="rtl"] .awp-story-target,
html[dir="rtl"] .awp-story-activity,
html[dir="rtl"] .awp-result-conclusion{border-left-width:1px;border-right:5px solid #71829a}
html[dir="rtl"] .awp-story-activity small{border-left-width:1px;border-right:4px solid #173f79}
html[dir="rtl"] .awp-story-remaining{border-left-width:1px;border-right-color:var(--awp-red)}
html[dir="rtl"] .awp-story-success,
html[dir="rtl"] .awp-conclusion-success{border-right-color:var(--awp-green)}
html[dir="rtl"] .awp-story-row p strong,
html[dir="rtl"] .awp-story-row small strong,
html[dir="rtl"] .awp-breakdown-row b,
html[dir="rtl"] .awp-method code{direction:ltr;unicode-bidi:isolate}
html[dir="rtl"] .awp-method code{text-align:left}

@media (min-width:560px){
  .awp-card-body{padding:18px}
  .awp-card-head{padding:18px}
  .awp-selected-controls{padding:14px 15px 15px}
  .awp-result-body{padding:18px}
  .awp-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (min-width:760px){
  .awp-hero h1{font-size:2.75rem}
  .awp-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .awp-field.awp-full{grid-column:1/-1}
  .awp-result-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .awp-info-grid{grid-template-columns:1fr 1fr}
}

@media (min-width:980px){
  .awp-hero{padding:10px 10px 24px}
  .awp-hero h1{font-size:3rem}
  .awp-hero .subtitle{font-size:1.08rem}
  .awp-main-grid{gap:22px}
  .awp-result-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .awp-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:420px){
  .awp-selected-controls{grid-template-columns:1fr}
  .awp-summary strong{font-size:2.25rem}
  .awp-stat{padding:11px}
  .awp-stat strong{font-size:1.25rem}
}
