
/* KINGDOM OS dashboards: clean data first, forms second. */
.kos-dashboard{display:grid;gap:16px;margin-top:16px}
.kos-card,.kos-special{background:linear-gradient(180deg,#17191d,#111215);border:1px solid #d7b6652d;border-radius:18px;padding:16px;box-shadow:0 14px 30px -22px #000,0 0 22px #d7a83d10}
.kos-special{border-color:#d7b66545;box-shadow:0 16px 34px -23px #000,0 0 28px #d7a83d14}
.kos-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:13px}
.kos-card-head small{display:block;color:#bdb5a5;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.kos-card-head h2{margin:3px 0 0;font-size:18px;line-height:1.25}
.kos-goal-percent{font-size:24px;color:#ffd875}
.kos-progress{height:8px;border-radius:99px;background:#ffffff0c;overflow:hidden;margin:10px 0 12px}
.kos-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a97820,#ffd96f);box-shadow:0 0 12px #ffc84a40}
.kos-card-link{display:flex;width:100%;justify-content:space-between;align-items:center;padding:10px 0 0;color:#eadbb2;text-align:left}
.kos-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kos-metric{display:grid;gap:4px;min-height:92px;padding:13px;border-radius:14px;background:#0d0f12;border:1px solid #ffffff0c;text-align:left;box-shadow:inset 0 1px 0 #ffffff08}
.kos-metric small{color:#bcb5a8;font-size:11px}
.kos-metric strong{color:#fff0c4;font-size:20px;line-height:1.15;overflow-wrap:anywhere}
.kos-metric span{color:#817b70;font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.kos-week-list,.kos-activity,.kos-list{display:grid;gap:8px}
.kos-week-list button,.kos-list button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:11px 0;border-bottom:1px solid #ffffff0a;text-align:left}
.kos-week-list button:last-child,.kos-list button:last-child{border-bottom:0}
.kos-week-list button span,.kos-list button span{min-width:0}
.kos-week-list button>span:first-child,.kos-list button b{font-weight:700}
.kos-week-list small,.kos-list small{display:block;color:#9f998e;font-size:11px;margin-top:2px}
.kos-quick{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.kos-quick::-webkit-scrollbar{display:none}
.kos-quick button{flex:0 0 118px;min-height:82px;border-radius:14px;background:#0e1013;border:1px solid #d7b66522;padding:10px;text-align:left}
.kos-quick button b{display:block;color:#ffd875;font-size:22px;line-height:1}
.kos-quick button span{display:block;margin-top:7px;color:#e8e2d8;font-size:12px;font-weight:700}
.kos-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kos-special-tile{min-height:108px;padding:13px;border-radius:15px;background:#0e1013;border:1px solid #d7b6652e;text-align:left}
.kos-special-tile small{display:block;color:#9e9687;font-size:10px;letter-spacing:.07em}
.kos-special-tile b{display:block;margin:6px 0;color:#ffd875;font-size:23px}
.kos-special-tile span{display:block;color:#eee8dc;font-size:12px;line-height:1.35}
.kos-health-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.kos-health-summary,.kos-money-grid,.kos-review-grid,.kos-crm-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kos-health-summary span,.kos-money-grid span,.kos-review-grid span,.kos-crm-counts span{display:grid;gap:4px;padding:12px;border-radius:13px;background:#0d0f12;border:1px solid #ffffff0b}
.kos-health-summary small,.kos-money-grid small,.kos-review-grid small,.kos-crm-counts small{color:#9f998f;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.kos-health-summary b,.kos-money-grid b,.kos-review-grid b,.kos-crm-counts b{color:#f6ead0;font-size:17px;overflow-wrap:anywhere}
.kos-source-note{white-space:nowrap}
.kos-crm-counts{grid-template-columns:repeat(3,1fr)}
.kos-crm-counts span{text-align:center}
.kos-next-follow{display:grid;width:100%;gap:4px;margin-top:10px;padding:12px;border-radius:13px;background:#2a2213;border:1px solid #d7b6653d;text-align:left}
.kos-next-follow small{color:#cdb77f;font-size:10px}
.kos-next-follow b{color:#fff0c7}
.kos-activity>div{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #ffffff09}
.kos-activity>div:last-child{border-bottom:0}
.kos-activity time{color:#948e82;font-size:11px}
.kos-activity span{font-size:12px}
.kos-activity b{color:#ddc98f;font-size:12px;text-align:right}
.kos-trends{display:grid;gap:12px}
.kos-trend-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:12px;align-items:end}
.kos-trend-row>span{display:grid;gap:2px}
.kos-trend-row small{color:#b7aa8a}
.kos-mini-bars{display:flex;align-items:end;gap:5px;height:46px}
.kos-mini-bars i{flex:1;min-height:4px;border-radius:4px 4px 2px 2px;background:linear-gradient(#ffd46c,#74531a);box-shadow:0 0 8px #d4a33b20}
.kos-review-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.kos-review-grid span{padding:10px}
.kos-review-grid b{font-size:15px}
.kos-key-summary{margin:12px 0;color:#aaa294;font-size:12px;line-height:1.5}
.kos-win{display:grid;gap:3px;padding:12px;border-radius:13px;background:#2b2415;border:1px solid #d7b66531}
.kos-win small{color:#c2aa70;font-size:10px;letter-spacing:.07em}
.kos-win strong{font-size:14px}
.kos-manager,.kos-review-modal{display:grid;gap:14px}
.kos-manage-list{display:grid;gap:6px}
.kos-manage-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff0a}
.kos-manage-list span{display:grid;gap:2px}
.kos-manage-list small{color:#999287}
.kos-manage-list em{color:#8d877d;font-size:11px;font-style:normal}
.kos-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kos-rating{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.kos-rating button{min-height:52px;border-radius:13px;background:#111318;border:1px solid #d7b66539;color:#ffd875;font-size:18px;font-weight:800}
.kos-check{display:flex;align-items:center;gap:9px;margin:10px 0;color:#ddd6c8}
.kos-check input{width:20px;height:20px}
.kos-bp-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kos-review-modal details{border:1px solid #ffffff0d;border-radius:13px;padding:10px 12px}
.kos-review-modal summary{font-weight:800;color:#e9dfc8}
.kos-review-modal ul{margin:10px 0 0;padding-left:20px;color:#bfb7a8;font-size:13px;line-height:1.7}
.kingdom-tabs{overflow-x:auto;scrollbar-width:none}
.kingdom-tabs::-webkit-scrollbar{display:none}
.kingdom-tabs button{white-space:nowrap}
@media(max-width:520px){
  .kos-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kos-trend-row{grid-template-columns:minmax(0,1fr) 96px}
  .kos-source-note{white-space:normal;text-align:right;max-width:105px}
}
@media(max-width:360px){
  .kos-metrics,.kos-special-grid,.kos-health-summary,.kos-money-grid{grid-template-columns:1fr}
  .kos-health-actions{grid-template-columns:1fr}
}


/* Mobile containment: Kingdom dashboards must stay inside the phone viewport. */
.kos-dashboard,
.kos-card,
.kos-special,
.kos-card-head,
.kos-metrics,
.kos-special-grid,
.kos-health-summary,
.kos-money-grid,
.kos-review-grid,
.kos-crm-counts,
.kos-trends,
.kos-week-list,
.kos-activity,
.kos-list {
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.kos-dashboard > *,
.kos-card > *,
.kos-special > *,
.kos-card-head > *,
.kos-metrics > *,
.kos-special-grid > *,
.kos-health-summary > *,
.kos-money-grid > *,
.kos-review-grid > *,
.kos-crm-counts > *,
.kos-trends > *,
.kos-week-list > *,
.kos-activity > *,
.kos-list > * {
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.kos-crm-counts { grid-template-columns:repeat(3,minmax(0,1fr)); }
.kos-card-head > span:first-child { flex:1 1 auto; min-width:0; }
.kos-card-head h2,
.kos-week-list span,
.kos-list span,
.kos-next-follow b,
.kos-money-grid b { overflow-wrap:anywhere; }
.kos-week-list button,
.kos-list button,
.kos-next-follow { min-width:0; max-width:100%; }
.kos-quick { width:100%; max-width:100%; min-width:0; }

/* Five Kingdom tabs, one clean row. */
.kingdom-tabs {
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:0 !important;
  width:100%;
  max-width:100%;
  overflow:hidden !important;
}
.kingdom-tabs button {
  min-width:0;
  width:100%;
  padding:9px 1px !important;
  font-size:clamp(9.5px,2.55vw,12px) !important;
  letter-spacing:0 !important;
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:clip;
}
@media(max-width:380px){
  .kingdom-tabs button { font-size:9px !important; }
  .kos-card,.kos-special { padding:14px; }
  .kos-crm-counts small { font-size:9px; letter-spacing:0; }
}


/* Life Block summaries and guided recaps. */
.life-period{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:8px}
.life-period button{min-height:40px}
.life-period-note{color:#c0b7a6;font-size:12px;line-height:1.5;margin:8px 0 14px}
.kos-metric small{font-size:13px;color:#d3cabc}
.kos-metric span{text-transform:none;letter-spacing:0;font-size:11px;color:#a8a094}
.kos-metric em{font-size:11px;font-style:normal;color:#cfbb8a;line-height:1.45}
.kos-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
.kos-quick button{min-height:66px;display:flex;align-items:center;gap:10px;padding:12px}
.kos-quick button span{margin:0;font-size:13px;line-height:1.35}
.life-routine-numbers{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #d7b66525;margin-top:14px;padding-top:14px}
.life-routine-numbers>div{display:grid;gap:5px;min-width:0}
.life-routine-numbers span{color:#c6beae;font-size:12px}
.life-routine-numbers b{font-size:24px;color:#ffe09a}
.life-routine-numbers small{color:#b5ab99;font-size:11px;line-height:1.5}
.life-activity>button{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:start;width:100%;padding:13px 0;border-bottom:1px solid #ffffff12;text-align:left}
.life-activity time{font-size:11px;color:#b0a797;padding-top:2px}
.life-activity span{min-width:0}
.life-activity b{font-size:13px;overflow-wrap:anywhere}
.life-activity small{display:block;font-size:12px;color:#b8ae9c;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
.life-activity strong{font-size:12px;color:#e5ce96;max-width:85px;text-align:right;overflow-wrap:anywhere}
.life-trend{padding:14px 0;border-bottom:1px solid #ffffff10}
.life-trend>b{font-size:13px}
.life-bars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px;align-items:end}
.life-bars>div{display:flex;flex-direction:column;justify-content:flex-end;gap:5px;text-align:center;min-width:0;min-height:89px}
.life-bars strong{font-size:11px;font-weight:600;color:#e9d8b3;overflow-wrap:anywhere}
.life-bars i{display:block;background:linear-gradient(#f2ca6b,#765826);border-radius:4px 4px 0 0;min-height:0;width:65%;margin:0 auto}
.life-bars small{font-size:10px;color:#b2a996}
.life-source-status{padding:10px 0;color:#bbad91;font-size:12px;line-height:1.5}
.life-log-history{margin-top:15px}
.life-log-history button{display:grid;text-align:left;gap:4px;width:100%;padding:12px 0;border-bottom:1px solid #ffffff15}
.life-log-history small{color:#bfb49e}
.life-money-comparison{margin-top:14px;border-top:1px solid #ffffff15;padding-top:14px}
.life-money-comparison>span{font-size:12px;color:#bfb5a2}
.life-money-comparison>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:9px}
.life-money-comparison small{display:grid;gap:6px;color:#bfb5a2}
.life-money-comparison b{color:#f0d595;font-size:13px;overflow-wrap:anywhere}
.money-quick-actions{flex-wrap:wrap}
.life-review-launch{margin:24px 0 18px;padding:20px;border:1px solid #bc91494f;border-radius:20px;background:radial-gradient(ellipse at 90% 0,#77531f40,transparent 65%),#141518}
.life-review-launch small,.recap-reflect-title>span{font-size:10px;font-weight:800;letter-spacing:.13em;color:#d1af68}
.life-review-launch h2{font-size:21px;margin:7px 0}
.life-review-launch p{font-size:13px;color:#c8bfae;line-height:1.5;margin:0 0 16px}
.life-review-launch>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;gap:9px}
.life-review-launch>.text-btn{margin-top:10px;padding-left:0}
.life-recap{max-width:100%;min-width:0;padding:0 1px 12px}
.recap-date{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:16px}
.recap-date label{display:grid;gap:6px;font-size:12px;color:#c9bda6;max-width:65%}
.recap-date input{color-scheme:dark;max-width:100%;min-width:0;padding:8px;background:#17191c;border:1px solid #b18b4635;border-radius:8px;color:#f4e4c1;font:inherit}
.recap-date>span{font-size:11px;color:#c1ad82;max-width:110px}
.recap-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px}
.recap-stepper button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border-radius:10px;background:#17191c;font-size:12px;color:#a69d8c}
.recap-stepper b{border-radius:50%;width:20px;height:20px;display:grid;place-items:center;background:#ffffff0c;font-size:10px}
.recap-stepper .active{background:#6a4d2040;color:#ffe6a1;border:1px solid #c69b4c75}
.recap-hero{text-align:center;padding:24px 12px;background:radial-gradient(ellipse at top,#b17e2738,transparent 76%),#111316;border:1px solid #d1ac6538;border-radius:18px}
.recap-hero>span{font-size:10px;color:#dabb7b;letter-spacing:.14em;font-weight:800}
.recap-hero strong{display:block;font-size:58px;line-height:1.2;color:#ffe4a4;text-shadow:0 0 25px #ffc34b25;margin:8px}
.recap-hero p{margin:0;font-size:14px;color:#d2c4aa}
.recap-stat-row{display:grid;grid-template-columns:1fr 1fr;margin:14px 0;gap:10px}
.recap-stat-row>span{display:grid;gap:5px;font-size:12px;padding:14px;background:#16171a;border-radius:12px;color:#c1b6a2}
.recap-stat-row b{font-size:24px;color:#f5dfaf}
.recap-stat-row small{font-size:11px;color:#9e9585}
.recap-block-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.recap-block{min-width:0;border-left:2px solid #bf944858;padding:10px 12px;background:#16171a;border-radius:0 10px 10px 0}
.recap-block>small{font-size:11px;font-weight:800;color:#eac775}
.recap-block p{font-size:12px;line-height:1.7;color:#c9bfab;margin:6px 0 0;overflow-wrap:anywhere}
.recap-completed{margin-top:18px}
.recap-completed summary{font-size:14px;font-weight:700;padding:10px 0}
.recap-completed>div{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #ffffff12}
.recap-check{color:#e5c578}
.recap-completed b{font-size:13px}
.recap-completed small{display:block;color:#afa593;font-size:11px;margin-top:3px}
.recap-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px}
.recap-nav>.gold{margin-left:auto}
.recap-section-title{font-size:21px;margin:0 0 8px}
.recap-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:18px 0 10px}
.recap-days button{display:grid;gap:5px;padding:8px 0;border:1px solid #ffffff13;border-radius:10px;color:#a99f8c;font-size:10px;min-height:49px}
.recap-days button b{font-size:14px}
.recap-days .active{background:#b284332b;border-color:#bc934761;color:#ffe19b}
.recap-area{border:1px solid #d7b66528;border-radius:13px;padding:0 13px;margin:10px 0;background:#131518}
.recap-area summary{padding:15px 0;font-size:14px;color:#ecd08f;font-weight:800}
.recap-area summary>span{float:right;font-size:10px;color:#aea491;font-weight:400;padding:3px 0}
.recap-log-row{border-top:1px solid #ffffff12}
.recap-log-row>button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;width:100%;padding:13px 0}
.recap-log-row b{font-size:13px}
.recap-log-row small{display:block;margin-top:4px;color:#b1a792;font-size:12px}
.recap-log-row strong{color:#f1cf83;font-size:15px}
.recap-existing{padding:0 0 10px 8px}
.recap-existing button{display:block;width:100%;text-align:left;color:#c9baa0;font-size:12px;padding:8px;border-left:1px solid #ad874544;overflow-wrap:anywhere}
.recap-existing button span{color:#e1c27e}
.recap-money-summary{display:flex;justify-content:space-between;gap:10px;padding:10px 0;color:#b6ab97;font-size:12px}
.recap-money-summary b{display:block;color:#f0d69b;margin-top:5px;font-size:18px}
.recap-money-actions{display:flex;gap:6px;flex-wrap:wrap}
.recap-money-actions .btn{font-size:12px;padding:8px 10px;min-height:42px}
.recap-reflect-title{margin:25px 0 20px}
.recap-reflect-title h2{font-size:24px;line-height:1.3;margin:8px 0}
#life-recap-form textarea{min-height:96px;font-size:16px}
#life-recap-form .field{margin-top:18px}
.recap-finished{text-align:center;padding:28px 12px}
.recap-seal{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 20px;border-radius:50%;border:1px solid #dbb766;color:#f5d993;font-size:38px;background:#87602233;box-shadow:0 0 35px #d5a3371f}
.recap-finished>small{color:#ceaf72;letter-spacing:.12em}
.recap-finished p{color:#c8bda5;line-height:1.6;overflow-wrap:anywhere}
.recap-finished>.btn{margin:8px 4px}
.recap-history>button{display:flex;justify-content:space-between;gap:12px;text-align:left;width:100%;padding:18px 0;border-bottom:1px solid #ffffff17}
.recap-history small{display:block;font-size:10px;color:#b8a378;letter-spacing:.04em;margin-bottom:6px}
.recap-history b{font-size:14px;overflow-wrap:anywhere}
@media(min-width:720px){.kos-quick{grid-template-columns:repeat(3,minmax(0,1fr))}.recap-block-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.life-recap *{animation:none!important;transition:none!important}}

.recap-task-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid #ffffff13}
.recap-task-row>span{min-width:0}
.recap-task-row b{font-size:13px;overflow-wrap:anywhere}
.recap-task-row small{display:block;color:#ada28e;font-size:11px;margin-top:4px}
.recap-task-row>strong{color:#ccb575;font-size:11px;white-space:nowrap}
.recap-task-row .btn{font-size:12px;white-space:nowrap;padding:9px 11px;min-height:42px}

/* Compact capture and a single reflection home. */
.today-quick-logs{margin:24px 0 0;min-width:0;max-width:100%}
.today-quick-strip{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:4px 2px 12px;scrollbar-width:thin;scrollbar-color:#b08b4538 transparent}
.today-quick-strip>button{flex:0 0 112px;width:112px;aspect-ratio:1;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;border:1px solid #b8944d60;border-radius:16px;background:linear-gradient(145deg,#211d16,#121416);text-align:left;padding:12px;scroll-snap-align:start}
.today-quick-strip b{font-size:24px;color:#ffe29a;line-height:1}
.today-quick-strip span{max-width:100%;font-size:13px;font-weight:750;line-height:1.2;color:#f2e6cb;white-space:normal;overflow-wrap:anywhere}
.today-quick-strip small{font-size:10px;color:#b3a386}
.quick-log-tools{display:flex;align-items:center;gap:6px}
.quick-log-add{color:#e9c777;font-size:23px;min-width:36px;min-height:36px}
.recap-money-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.recap-money-actions .btn{font-size:12px;padding:8px 4px;white-space:nowrap;min-width:0}
.primary-panel>.eyebrow{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.primary-panel>.eyebrow>.text-btn{margin-left:auto;white-space:nowrap;font-size:12px;padding:5px 0 5px 8px}
.primary-objective{display:flex;align-items:center;gap:9px;padding:10px 7px;margin:10px 0;border:1px solid #b9984730;border-radius:13px;background:#ffffff03}
.primary-objective-title{min-width:0;flex:1;text-align:left;padding:6px 0}
.primary-objective-title strong{display:block;font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.primary-objective-title small{display:block;color:#c0ae8c;font-size:11px;margin-top:4px;line-height:1.4}
.primary-objective.done .primary-objective-title strong{color:#b6a98e;text-decoration:line-through}
.primary-remove{flex:0 0 32px;min-height:40px;color:#a39985;font-size:23px}
.primary-choice-row.selected{background:#a57e2525;border-color:#c29b5560}
.primary-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;bottom:0;background:#17191c;padding:14px 0 4px;margin-top:16px}
.primary-picker-footer b{color:#cfb47b;font-size:13px}
.guided-step{position:relative}
.guided-step:has(.routine-step-menu)>.tick{padding-right:40px}
.routine-step-menu{position:absolute;right:0;top:3px;color:#dab965;min-width:38px;min-height:42px;font-size:23px}
.routine-last-reflection{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;width:100%;margin-bottom:16px;text-align:left;border:1px solid #c19a4d55;border-radius:13px;background:#66502526}
.routine-last-reflection small{display:block;color:#b5a487;font-size:11px;margin-bottom:4px}
.routine-last-reflection b{font-size:14px;color:#f2d99c}
.routine-last-reflection>span:last-child{color:#e6c47c;font-size:24px}
.morning-reflection-read{white-space:pre-wrap;line-height:1.75;font-size:15px;color:#e2d7c0;padding:4px 0 14px;overflow-wrap:anywhere}

/* Keep the routine status readable in the two-column TODAY cards. */
.today-shell .rhythm-card>span:nth-child(2){min-width:0}
.today-shell .rhythm-card small{white-space:nowrap}
@media(max-width:560px){.today-shell .rhythm-card small{font-size:11px;line-height:1.5;letter-spacing:0}}
@media(max-width:350px){.today-shell .rhythm-card{padding-inline:8px}.today-shell .rhythm-card small{font-size:10px}}

/* A short, tappable channel checklist for Content Posted. */
#kos-log-form .content-channels{display:block;min-width:0;width:100%;margin:18px 0;padding:0;border:0}
#kos-log-form .content-question{display:block;width:100%;margin:0 0 10px;color:#e8ddc5;font-size:14px;font-weight:700;line-height:1.35;white-space:normal}
#kos-log-form .content-channels .kos-check{display:flex;align-items:center;gap:11px;min-height:48px;margin:0 0 8px;padding:11px 12px;border:1px solid #ffffff20;border-radius:11px;background:#1d1f22;cursor:pointer}
#kos-log-form .content-channels .kos-check:last-child{margin-bottom:0}
#kos-log-form .content-channels .kos-check:has(input:checked){border-color:#d4ad5a80;background:#6e552a2b}
#kos-log-form .content-channels input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;min-height:0;margin:0;accent-color:#f1c968}
#kos-log-form .content-channels .kos-check span{min-width:0;font-size:14px;line-height:1.4;color:#eee5d3;overflow-wrap:anywhere}

/* Small connections between today, reflection, goals and family plans. */
.today-quick-strip>button{justify-content:flex-start;padding-top:11px;gap:5px}
.today-quick-strip small{display:block;max-width:100%;white-space:normal;line-height:1.25;overflow-wrap:anywhere;font-size:10px;margin-top:auto}
.morning-focus{border:1px solid #c9a35566;border-radius:15px;padding:16px;margin-bottom:14px;background:linear-gradient(135deg,#5a45252e,#17191c)}
.morning-focus>small{font-size:10px;letter-spacing:.8px;color:#c2a873}
.morning-focus h3{font-size:17px;margin:9px 0}.morning-focus p{font-size:15px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.focus-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.focus-actions .btn{font-size:13px;padding:10px 12px}.focus-actions .text-btn{font-size:13px}
.goal-tracker-source{padding:14px 0 0}.goal-linked-source{color:#cbb47e;font-size:13px;line-height:1.5}
.home-moments{margin:12px 0 20px;display:grid;gap:10px;min-width:0}.home-moments>h3{margin:0 0 3px;font-size:16px}
.home-moment{min-width:0;border:1px solid #bc9a5144;border-radius:13px;background:#ffffff03;padding:14px}
.home-moment h4{margin:0 0 10px;font-size:15px}.home-moment p{margin:6px 0;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.home-moment p>span{color:#b3a78e;margin-right:8px}.home-moment .moment-note{color:#d3c5a7;font-style:italic}.home-moment .text-btn{font-size:13px;padding:9px 0 0;color:#efd391}
.review-priorities{margin:18px 0}.review-priorities h3{font-size:18px;margin-bottom:8px}.review-priority{border:1px solid #bd995345;border-radius:13px;padding:14px;margin:10px 0;background:#1a1c1e;overflow-wrap:anywhere}.review-priority>b{display:block;font-size:15px;line-height:1.4}.review-priority>small{display:block;color:#c0b396;margin-top:8px}.priority-decisions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.priority-decisions .btn{font-size:12px;padding:9px 10px;min-height:40px}.priority-date-picker{margin-top:12px}.priority-date-picker .btn{font-size:13px}
@media(min-width:650px){.home-moments{grid-template-columns:repeat(2,minmax(0,1fr))}.home-moments>h3{grid-column:1/-1}}

/* Immediate Life Block access without another row of dashboard cards. */
.today-life-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:8px;background:transparent;border:0;border-radius:0;margin:10px 0 18px;min-width:0;overflow:visible}
.today-life-nav>button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:58px;padding:7px 3px 8px;font-size:11px;font-weight:800;letter-spacing:.01em;white-space:nowrap;color:#fff;border:1px solid #caa65366;border-radius:12px;background:linear-gradient(180deg,#26282d,#181a1e 72%);box-shadow:inset 0 1px 0 #ffffff16,0 6px 14px #0006,0 0 14px #d3aa4812;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.today-life-nav>button::before{content:"";position:absolute;top:-1px;left:18%;right:18%;height:1px;background:linear-gradient(90deg,transparent,#f0cf79,transparent);opacity:.78}
.life-nav-emoji{display:block;font-size:17px;line-height:1;filter:saturate(.9) drop-shadow(0 1px 3px #0008)}
.life-nav-label{display:block;line-height:1.15}
.today-life-nav>button:hover,.today-life-nav>button:focus-visible{color:#fff;border-color:#e5c36f99;box-shadow:inset 0 1px 0 #ffffff1c,0 6px 16px #0007,0 0 17px #d7aa4530}
.today-life-nav>button:active{transform:translateY(1px);box-shadow:inset 0 1px 0 #ffffff12,0 3px 8px #0007,0 0 10px #d7aa4524}
.today-shell .primary-panel{padding-top:7px}
.today-shell .primary-panel>.eyebrow{margin:0;min-height:34px}
.today-shell .primary-panel>.eyebrow>.text-btn{min-height:34px;padding-top:2px;padding-bottom:2px}
.today-shell .primary-panel>.eyebrow+.primary-objective{margin-top:6px}
@media(max-width:350px){.today-life-nav{gap:5px}.today-life-nav>button{font-size:9.8px;min-height:56px;padding-inline:2px}.life-nav-emoji{font-size:16px}}
