*{box-sizing:border-box}body{margin:0;background:#f5f8fc;color:#0d1b3d;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{height:76px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid #e4eaf1}.brand{font-size:28px;color:#1266e8}.brand b{color:#0d1b3d}header>span{font-size:13px;color:#52627b}main{max-width:1400px;margin:auto}.hero{height:300px;display:grid;grid-template-columns:55% 45%;background:linear-gradient(100deg,#f9fcff,#eaf3fa);overflow:hidden}.hero>div:first-child{padding:55px 7%}.hero small,.briefs small,.promise small{font-weight:800;letter-spacing:.14em;color:#52759c}.hero h1{font-size:52px;margin:8px 0}.hero p{font-size:21px;color:#5c6c83}.saved{margin-top:30px}.saved b{font-size:27px;color:#1266e8}.hero em{display:block;margin:5px 0 0 28px;color:#7b899c;font-size:12px;font-style:normal}.scene{position:relative;background:linear-gradient(#f6d9c3 0 45%,#bed6e6 45% 68%,#7896a8 68%)}.scene:before{content:"";position:absolute;right:14%;bottom:18%;width:34px;height:120px;background:#faf7ed;clip-path:polygon(35% 0,65% 0,90% 100%,10% 100%)}.scene:after{content:"";position:absolute;right:-5%;bottom:0;width:65%;height:32%;background:#506673;clip-path:polygon(0 65%,35% 30%,55% 45%,72% 20%,100% 30%,100% 100%,0 100%)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid #e0e7ef;border-radius:0 0 18px 18px;padding:28px;min-height:365px;box-shadow:0 8px 24px #263f5b0f}.ico{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:28px}.blue .ico{background:#e5f0ff;color:#1266e8}.green .ico{background:#e5f6eb;color:#19945b}.purple .ico{background:#eee7ff;color:#7047dc}.card h2{font-size:29px;margin:14px 0 5px}.card>p{color:#61718a;min-height:48px}input,select{width:100%;padding:11px;border:1px solid #ccd7e3;border-radius:10px;background:white}button{border:0;border-radius:10px;padding:11px 14px;background:#1266e8;color:white;font-weight:800}.green button{background:#19945b}.purple button{background:#7047dc}#briefForm{display:grid;gap:9px}.channel-form,.catch{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.channel-form label{font-size:11px;color:#657792}.channel-form input{display:block;margin-top:5px}.catch{margin-top:10px}.watch{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:8px;border:1px solid #dae3ec;border-radius:9px}.watch-for-me-panel{margin:0!important;padding:0!important;border:0!important}.watch-for-me-kicker,.watch-for-me-panel h3,.watch-for-me-panel>p:first-of-type,.watch-for-me-note{display:none!important}.watch-for-me-row{display:grid!important;grid-template-columns:1fr 1fr;gap:9px!important}.watch-for-me-row label{font-size:11px!important;color:#657792!important}.wfm-email-label,.watch-for-me-row>button{grid-column:1/-1}.metrics{margin:22px 0;display:grid;grid-template-columns:repeat(3,1fr);background:#e0e7ef;gap:1px;border:1px solid #e0e7ef;border-radius:16px;overflow:hidden}.metrics div{background:white;padding:18px}.metrics b,.metrics span{display:block}.metrics b{font-size:26px}.metrics span{font-size:12px;color:#718199}.briefs{background:white;border:1px solid #e0e7ef;border-radius:18px;padding:28px}.briefs h2{font-size:31px;margin:5px 0}.briefs>p{color:#66758a}.brief{border-top:1px solid #e3e9ef;padding:18px 0}.brief-head{display:flex;gap:15px}.thumb{width:150px;border-radius:9px}.brief section{border-top:1px solid #edf1f5;padding-top:10px}.brief-actions{display:flex;gap:8px}.promise{text-align:center;margin:22px 0;padding:38px;background:#edf5fd;border-radius:18px}.promise h2{font-size:34px}footer{max-width:1400px;margin:auto;padding:0 0 35px;color:#8491a3;font-size:12px}.notice,.error,.run-summary,.run-notes{font-size:13px;padding:9px;margin-top:8px;background:#f4f8fc;border:1px solid #d5e1ed;border-radius:9px}@media(max-width:900px){main{padding:0 14px}.hero{grid-template-columns:1fr;height:auto}.scene{display:none}.cards{grid-template-columns:1fr}.card{border-radius:18px}.metrics{grid-template-columns:1fr}}
/* V1.2 — polished coastal hero + Watch For Me repair */
.scene{
 background:
 radial-gradient(circle at 68% 22%,rgba(255,239,205,.82) 0 7%,transparent 7.5%),
 linear-gradient(180deg,#f8d8be 0 42%,#d9e9f3 42% 56%,#a8c5d7 56% 72%,#7898aa 72% 100%)!important;
 overflow:hidden;
}
.scene i{display:block;position:absolute;left:0;right:0;bottom:22%;height:2px;background:rgba(255,255,255,.45);box-shadow:0 12px rgba(255,255,255,.22),0 24px rgba(255,255,255,.14)}
.scene:before{z-index:3;box-shadow:0 -14px 0 -7px #2f4657,0 -19px 0 -6px #2f4657!important}
.scene:after{z-index:2;background:linear-gradient(155deg,#526a77,#354d5c)!important}
.watch-for-me-panel{display:block!important}
.watch-for-me-row{margin-top:8px}
.watch-for-me-status{margin-top:10px;font-size:12px;color:#5f7188}

/* V1.4 — finished lighthouse/coastal hero */
.scene{
  background-image:
    linear-gradient(90deg,rgba(247,250,253,.10),rgba(247,250,253,0) 22%),
    url("lighthouse-coast.svg") !important;
  background-size:cover !important;
  background-position:center 48% !important;
  border-left:1px solid rgba(13,27,61,.04);
}
.scene:before,.scene:after,.scene i{display:none!important}
@media(max-width:900px){
  .scene{display:block!important;min-height:220px;border-left:0;border-top:1px solid #e4eaf1;background-position:center 46%!important}
}

.clark-explainer{max-width:650px;font-size:clamp(1.85rem,3vw,2.75rem)!important;line-height:1.08!important;letter-spacing:-.035em;margin:10px 0 12px!important}
.benefit-line{margin:0 0 24px!important;font-size:1.05rem!important;font-weight:650;color:#53677f!important}
.feedback-section{margin:22px 0;padding:34px 28px;text-align:center;background:#fff;border:1px solid #e0e7ef;border-radius:18px}
.feedback-section small{font-weight:800;letter-spacing:.14em;color:#52759c}.feedback-section h2{margin:7px 0 5px;font-size:30px}.feedback-section p{margin:0 auto 18px;color:#61718a;font-size:16px}
.feedback-button{display:inline-block;padding:11px 18px;border-radius:10px;background:#1266e8;color:#fff;text-decoration:none;font-weight:800}

.card .ico{font-family:Arial,sans-serif;font-size:25px!important;font-weight:700;line-height:1}
.channel-form{grid-template-columns:minmax(85px,.75fr) minmax(110px,1.5fr) auto!important;align-items:end}
.channel-form label,.wfm-source-choice{font-size:12px;color:#657792;display:flex;flex-direction:column;gap:5px}
.wfm-source-choice{margin:10px 0}.source-note{font-size:12px;color:#66758a;margin:5px 0 12px}
button:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:600px){.channel-form{grid-template-columns:1fr!important}}

/* V1.7 — lighthouse restoration only */
.hero .scene{
  background-image:url("lighthouse-coast.svg") !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.hero .scene:before,
.hero .scene:after,
.hero .scene i{
  display:none !important;
}

/* V1.9 — Notes-only feedback */
.feedback-subhead{font-weight:750;color:#334a64!important;margin:0 auto 6px!important}
.feedback-form{max-width:680px;margin:18px auto 0;text-align:left}
.feedback-form[hidden]{display:none!important}
.feedback-form label{display:block;font-weight:800;margin-bottom:6px}
.feedback-form textarea{width:100%;box-sizing:border-box;resize:vertical;border:1px solid #ccd8e5;border-radius:10px;padding:12px;font:inherit;background:#fff;color:#26384d;margin-bottom:10px}
.feedback-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}
.feedback-status{font-size:13px;margin:8px 0 0!important;color:#53677f!important}

/* V1.10 — consistent card icon proportions */
.card .ico{
  width:50px!important;
  height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:29px!important;
  line-height:1!important;
  box-sizing:border-box!important;
}

/* V1.11 — force equal visual weight for the three card icons */
.cards .card .ico{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  font-family:Arial,sans-serif!important;
  font-size:30px!important;
  font-weight:700!important;
  line-height:50px!important;
  box-sizing:border-box!important;
}

/* V1.13 — normalize all three action-card icons */
.cards .card .ico{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  font-size:30px!important;
  font-weight:700!important;
  line-height:1!important;
  box-sizing:border-box!important;
}

/* V1.14 — icons only: optical balancing of the three different glyphs */
.ico-brief{font-size:30px!important;transform:none!important;}
.ico-catch{font-size:36px!important;transform:scaleX(1.08)!important;}
.ico-watch{font-size:38px!important;transform:scale(1.08)!important;}

/* V1.15 — replace font glyphs with a matched SVG icon system */
.cards .card .ico svg{
  width:30px!important;
  height:30px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.ico-brief,.ico-catch,.ico-watch{
  transform:none!important;
  font-size:0!important;
}

/* V1.15.6 — Baby Step 6: match Watch For Me source row to Catch Me Up */
#wfmSourceForm{
  display:grid;
  grid-template-columns: 1fr 1.55fr auto;
  gap:8px;
  align-items:end;
}
#wfmSourceForm > label{min-width:0;}
#wfmSourceForm > button{margin:0;}
#wfmSourceNote{
  grid-column:1 / -1;
  margin:0;
}

/* V1.15.7 — Baby Step 7: balanced Watch For Me source row */
#wfmSourceForm{
  display:grid !important;
  grid-template-columns: 1fr 1.75fr auto !important;
  grid-template-areas:"type target add" !important;
  gap:8px !important;
  align-items:end !important;
}
#wfmSourceForm .wfm-source-choice{grid-area:type !important;}
#wfmSourceForm label:not(.wfm-source-choice){grid-area:target !important;}
#wfmSourceForm > button{
  grid-area:add !important;
  width:auto !important;
  min-width:52px !important;
  margin:0 !important;
}
#wfmSourceNote{
  display:block !important;
  margin:6px 0 10px !important;
}

/* V1.15.8 — Baby Step 8: top-row alignment/spacing only */
#watchForm,
#wfmSourceForm{
  align-items:end !important;
}
#watchForm > label,
#wfmSourceForm > label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  margin:0 !important;
}
#watchForm > label > select,
#watchForm > label > input,
#wfmSourceForm > label > select,
#wfmSourceForm > label > input{
  margin-top:0 !important;
}
#watchForm > button,
#wfmSourceForm > button{
  align-self:end !important;
  margin:0 !important;
}

/* V1.15.9 — Baby Step 9: Catch Me Up full-width action bar */
#runWatchBtn.catchup-full-button{
  display:block !important;
  width:100% !important;
  margin-top:14px !important;
}

/* V1.16.0 — surgical Catch Me Up stack fix only */
#runWatchBtn{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  flex:0 0 100% !important;
  margin:8px 0 0 !important;
}
#catchWindow{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  flex:0 0 100% !important;
}
#catchWindow:has(+ #runWatchBtn),
#catchWindow + #runWatchBtn{
  clear:both !important;
}

.catchup-stack{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  width:100% !important;
}

/* V1.17 — visitor polish */
.source-note{margin:.45rem 0 0;font-size:.88rem;line-height:1.35;opacity:.72;}
.briefs-heading-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#eaf2ff;color:#2563eb;margin:0 0 12px;}
.briefs-heading-icon svg{width:30px;height:30px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}

/* V1.19 — Watch For Me source list */
#wfmSourceList .wfm-source-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
#wfmSourceList .wfm-source-row button{width:auto;flex:0 0 auto}

/* V1.20 — per-item settings and anchored helper text */
.catch-item-row,.wfm-source-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
.item-main{min-width:0;overflow-wrap:anywhere}.item-setting{font-size:.82rem;opacity:.7;margin-top:3px}.item-actions{display:flex;gap:6px;flex:0 0 auto}.item-actions button{width:auto!important;margin:0!important;padding:7px 9px!important;font-size:.78rem!important}.selected-watch{outline:2px solid rgba(99,102,241,.28);outline-offset:2px;border-radius:8px}
#catchSourceNote,#wfmSourceNote{margin:6px 0 10px!important}

/* V1.21 — field-test polish */
#watchList, #catchList,
.watch-list, .catch-list,
.saved-watch-list, .saved-catch-list {
  margin-top: 10px !important;
}

/* V1.22 — assignment editor */
button, [role="button"], input[type="button"], input[type="submit"], select, input[type="date"] { cursor:pointer; }
#watchList, #wfmSourceList { margin-top:8px !important; padding-top:0 !important; }
#catchSourceNote, #wfmSourceNote { margin-bottom:8px !important; }
.watch-for-me-row[hidden] { display:none !important; }
.wfm-source-row.selected-watch { outline:2px solid rgba(111,66,193,.18); }
.inline-item-editor { display:flex; gap:8px; align-items:end; margin-top:8px; }
.inline-item-editor label { display:flex; flex-direction:column; gap:4px; font-size:12px; }
.inline-item-editor select { min-width:150px; }
.item-actions button { cursor:pointer !important; }

/* V1.23 — add at top, manage below */
#watchForm, #wfmSourceForm {
  position:relative;
  z-index:2;
  margin-bottom:6px !important;
}
#catchSourceNote, #wfmSourceNote {
  margin-top:6px !important;
  margin-bottom:6px !important;
}
#watchList, #wfmSourceList {
  margin-top:6px !important;
  padding-top:0 !important;
}
#watchForm button, #wfmSourceForm button,
.item-actions button, .inline-item-editor button {
  cursor:pointer !important;
}

/* V1.24 — Catch Me Up global controls stay above saved items */
#catchSourceNote + #catchWindow,
#catchSourceNote + .catch-controls,
#catchSourceNote + .catch-window,
#catchSourceNote + .field,
#catchSourceNote + .control-group { margin-top:8px !important; }
#runWatchBtn { margin-bottom:8px !important; }
#watchList { margin-top:6px !important; }

/* V1.25 — Watch For Me action stays above saved assignments */
#wfmSourceNote + #watchForMePanel { margin-top:8px !important; }
#watchForMePanel + #wfmSourceList { margin-top:6px !important; }

/* V1.26 — always-visible Watch For Me action */
#wfmGlobalAction.wfm-global-action {
  display:block !important;
  width:100%;
  margin:8px 0 8px !important;
  padding:12px 16px;
  border:0;
  border-radius:9px;
  font:inherit;
  font-weight:700;
  cursor:pointer !important;
}
#watchForMePanel[hidden],
#watchForMePanel .watch-for-me-row[hidden] { display:none !important; }

/* V1.27 — one Watch action at a time */
#wfmGlobalAction[hidden] { display:none !important; }
#watchForMePanel.editing-watch + #wfmGlobalAction { display:none !important; }

/* V1.28 — Watch polish */
#runWatchBtn,
#wfmGlobalAction,
#wfmSet {
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}
#catchSourceNote, #wfmSourceNote {
  margin-top:4px !important;
  margin-bottom:4px !important;
}
#catchSourceNote + *,
#wfmSourceNote + * {
  margin-top:6px !important;
}

/* V1.29 — consistent primary actions */
#briefForm button[type="submit"],
#generateBriefBtn,
#runWatchBtn,
#wfmGlobalAction,
#wfmSet {
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  min-height:42px !important;
  padding:10px 16px !important;
}

/* V1.30 — requested Brief-card polish only */
#generateBriefBtn,
#briefForm button[type="submit"] {
  font-size:18px !important;
}

/* Pack Catch Me Up controls a little tighter; keep helper text for this cycle. */
#catchCard .helper,
.catch-card .helper,
#catchMeUp .helper,
.catch-me-up .helper {
  margin-bottom:6px !important;
}

/* V1.31 — live field-test fixes only */

/* Match Generate Brief to the larger primary-action typography. */
#briefBtn {
  font-size:18px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  min-height:42px !important;
  padding:10px 16px !important;
}

/* Keep the Catch Me Up helper, but pack helper + timeframe together. */
#catchSourceNote {
  margin-top:4px !important;
  margin-bottom:0 !important;
}
#catchSourceNote + .catchup-stack {
  margin-top:4px !important;
}

/* V1.32 — simplicity + consistency */
#runWatchBtn,
#wfmGlobalAction {
  font-size:18px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  min-height:42px !important;
  padding:10px 16px !important;
}

/* Close the space left by removing the helper lines. */
#catchSourceNote:empty,
#wfmSourceNote:empty {
  display:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* V1.37 — Yogi Berra observation, added above The Prolerts Promise */
.yogi-note{text-align:center;margin:22px 0 0;padding:30px 24px 8px;color:#52627b}
.yogi-note blockquote{margin:0;font-size:clamp(22px,2.4vw,30px);font-weight:700;color:#0d1b3d}
.yogi-note cite{display:block;margin-top:8px;font-size:15px;font-style:normal;color:#718199}
.yogi-note p{margin:15px 0 0;font-size:17px;font-weight:700;color:#1266e8}


/* V1.38 — legal/privacy footer and pages */
footer a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.legal-page{max-width:860px;margin:0 auto;padding:48px 24px 72px}
.legal-page h1{margin:0 0 8px;color:#0d1b3d}
.legal-page h2{margin:30px 0 8px;color:#0d1b3d;font-size:21px}
.legal-page p,.legal-page li{line-height:1.65;color:#44536b}
.legal-page .legal-updated{color:#718199;margin-bottom:30px}
.legal-page .legal-back{display:inline-block;margin-bottom:28px;font-weight:700;color:#1266e8;text-decoration:none}
.legal-page a{color:#1266e8}

/* V1.40 — highlight Clark's three core actions */
.clark-explainer strong{color:#1769e8;font-weight:inherit}

/* V1.43 — ManyBriefs brand mark */
.brand{display:flex;align-items:center;gap:8px}
.brand-mark{width:30px;height:30px;border-radius:7px;display:block}
