*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --forest:#0D3B2E;--forest-mid:#1A5240;--forest-light:#7AAB8A;--forest-pale:#E8F0EB;
  --cream:#F4F7F5;--cream-dark:#EBF2ED;--warm:#5A7268;--warm-light:#7AAB8A;
  --deep:#061410;--muted:#4A6258;--white:#FFFFFF;
  --gradient-start:#0D3B2E;--gradient-end:#7AAB8A;
  --border:rgba(13,59,46,0.12);
  --shadow-sm:0 1px 3px rgba(10,31,24,0.06),0 1px 2px rgba(10,31,24,0.04);
  --shadow-md:0 4px 16px rgba(10,31,24,0.08),0 2px 6px rgba(10,31,24,0.05);
  --shadow-lg:0 12px 40px rgba(10,31,24,0.14),0 4px 12px rgba(10,31,24,0.07);
  --r:16px;--r-sm:10px;--nav:68px;
  /* Typography */
  --font-body:'DM Sans',sans-serif;
  --font-display:'Cormorant Garamond',serif;
  --text-page-title:clamp(1.7rem,3.5vw,2.2rem);
  --text-section-title:1.2rem;
  --text-card-title:1.05rem;
  --text-body:0.875rem;
  --text-body-sm:0.8rem;
  --text-caption:0.75rem;
  --text-label:0.7rem;
}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--cream);color:var(--deep);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.guided-only{display:flex;}
.res-pill{padding:6px 13px;border-radius:100px;border:1.5px solid rgba(13,59,46,.18);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s;background:var(--cream);color:var(--deep);font-family:'DM Sans',sans-serif;}
.res-pill:hover{border-color:var(--forest);}
.res-pill.active{background:var(--forest);color:white;border-color:var(--forest);}
.res-card{background:white;border-radius:12px;padding:16px 18px;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden;}
.res-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);}
.res-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:3px 0 0 3px;}
.res-card-home::before{background:#3A5045}.res-card-financial::before{background:#5A7A5A}.res-card-memory::before{background:#6B5B4A}.res-card-transport::before{background:#4A6878}.res-card-mental::before{background:#7A5A5A}.res-card-meals::before{background:#4A6848}
.res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;}
.res-cat-label{font-size:.7rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.res-cat-label::after{content:"";flex:1;height:1px;background:var(--border);}
@keyframes navBounce{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}
@keyframes navMsgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.nav-msg{display:flex;gap:10px;max-width:100%;animation:navMsgIn .25s ease both;}
.nav-msg-user{flex-direction:row-reverse;align-self:flex-end;}
.nav-bubble{padding:11px 14px;border-radius:12px;font-size:.875rem;line-height:1.65;}
.nav-msg-ai .nav-bubble{background:var(--cream);border:1px solid rgba(13,59,46,.1);border-top-left-radius:3px;}
.nav-msg-user .nav-bubble{background:var(--forest);color:white;border-top-right-radius:3px;}
.nav-chip{display:flex;align-items:center;gap:6px;padding:8px 11px;background:var(--cream);border:1.5px solid rgba(13,59,46,.18);border-radius:8px;font-size:.8rem;cursor:pointer;transition:all .15s;user-select:none;}
.nav-chip.selected{background:var(--forest);color:white;border-color:var(--forest);}
.evo-conv-item{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:var(--cream);border:1px solid rgba(13,59,46,.1);border-radius:10px;cursor:pointer;transition:all .18s;position:relative;}
.evo-conv-item:hover{border-color:var(--forest-light);background:rgba(13,59,46,.04);}
.evo-conv-item .evo-conv-icon{width:32px;height:32px;background:var(--forest);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:'Cormorant Garamond',serif;font-size:.85rem;font-weight:600;color:white;}
.evo-conv-item .evo-conv-info{flex:1;min-width:0;}
.evo-conv-item .evo-conv-title{font-size:.84rem;font-weight:500;color:var(--deep);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.evo-conv-item .evo-conv-preview{font-size:.76rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.evo-conv-item .evo-conv-meta{font-size:.68rem;color:var(--muted);margin-top:3px;display:flex;align-items:center;gap:8px;}
.evo-conv-delete{position:absolute;top:8px;right:8px;width:22px;height:22px;border:none;background:transparent;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s,background .15s;}
.evo-conv-item:hover .evo-conv-delete{opacity:1;}
.evo-conv-delete:hover{background:rgba(200,50,50,.1);}
.evo-conv-delete svg{width:13px;height:13px;stroke:#c44;stroke-width:2;}
#evo-history-items::-webkit-scrollbar{width:4px}
#evo-history-items::-webkit-scrollbar-thumb{background:rgba(13,59,46,.15);border-radius:4px}
#nav-messages::-webkit-scrollbar{width:4px}
#nav-messages::-webkit-scrollbar-thumb{background:rgba(13,59,46,.15);border-radius:4px}
#nav{position:sticky;top:0;z-index:200;height:var(--nav);background:rgba(244,247,245,0.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center;transition:box-shadow .3s}
#nav.scrolled{box-shadow:var(--shadow-sm)}
.nav-inner{max-width:1100px;margin:0 auto;padding:0 28px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{display:flex;align-items:center;gap:10px;cursor:pointer;background:none;border:none;text-decoration:none}
.logo-mark{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-text{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:var(--forest);letter-spacing:.12em;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none}
.nav-links a{font-size:.875rem;font-weight:500;color:var(--muted);text-decoration:none;transition:color .2s;white-space:nowrap;cursor:pointer}
.nav-links a:hover{color:var(--forest)}
.nav-right{display:flex;align-items:center;gap:10px}
.btn-login{padding:9px 20px;background:transparent;color:var(--forest);border:1.5px solid rgba(13,59,46,0.28);border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .18s;white-space:nowrap}
.btn-login:hover{border-color:var(--forest);background:rgba(13,59,46,0.05)}
.btn-cta{padding:10px 22px;background:var(--forest);color:var(--cream);border:none;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.btn-cta:hover{background:var(--deep);transform:translateY(-1px)}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:6px;color:var(--forest);order:-1}
.hamburger svg{width:22px;height:22px}
#mobile-nav{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:199;background:var(--cream);padding:calc(var(--nav) + 32px) 28px 40px;flex-direction:column;gap:20px}
#mobile-nav.open{display:flex}
#mobile-nav a,#mobile-nav button.m-link{font-size:1.1rem;font-weight:500;color:var(--deep);text-decoration:none;background:none;border:none;cursor:pointer;text-align:left;font-family:'DM Sans',sans-serif}
.m-cta{background:var(--forest);color:var(--cream);padding:14px 28px;border-radius:50px;text-align:center;font-size:1rem;font-weight:500;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;margin-top:8px}
.page{display:none}
.page.active{display:block;animation:fadeUp .3s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.925rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;white-space:nowrap}
.btn-primary{background:var(--forest);color:var(--cream)}
.btn-primary:hover{background:var(--deep);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn-outline{background:transparent;color:var(--forest);border:1.5px solid rgba(13,59,46,0.3)}
.btn-outline:hover{border-color:var(--forest);background:rgba(13,59,46,0.05)}
.btn-ghost{background:rgba(13,59,46,0.08);color:var(--forest)}
.btn-ghost:hover{background:rgba(13,59,46,0.14)}
.btn-sm{padding:9px 18px;font-size:.82rem}
.btn-lg{padding:17px 36px;font-size:1rem}
.section{padding:80px 28px}
.section-bg{background:var(--cream-dark)}
.section-inner{max-width:1100px;margin:0 auto}
.section-header{text-align:center;margin-bottom:52px}
.section-header h2{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:600;letter-spacing:-.01em;color:var(--deep);margin-bottom:12px}
.section-header p{font-size:var(--text-body);color:var(--muted);font-weight:300}
.card{background:var(--white);border-radius:var(--r);border:1px solid var(--border);padding:32px;box-shadow:var(--shadow-sm);transition:box-shadow .25s,transform .25s}
.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.card-icon svg{width:22px;height:22px}
.card-icon.warm{background:rgba(90,114,104,0.1);color:var(--warm)}
.card-icon.sage{background:rgba(13,59,46,0.08);color:var(--forest)}
.card-icon.accent{background:rgba(122,171,138,0.12);color:var(--forest-light)}
.card h3{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:8px}
.card p{font-size:var(--text-body);color:var(--muted);line-height:1.65;font-weight:300}
.cards-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:36px;margin-top:52px}
.step{text-align:center;transition:transform .2s}
.step:hover{transform:translateY(-2px)}
.step-num{width:52px;height:52px;border-radius:14px;background:var(--forest);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:600;color:var(--cream)}
.step h3{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--deep);margin-bottom:6px}
.step p{font-size:var(--text-body);color:var(--muted);line-height:1.6;font-weight:300}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;align-items:start}
.pricing-card{background:var(--white);border-radius:var(--r);border:1px solid var(--border);padding:36px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.pricing-card.featured{background:var(--forest);border-color:transparent;box-shadow:var(--shadow-lg);position:relative;padding-top:50px;transform:scale(1.04)}
.featured-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:4px 16px;background:var(--warm-light);color:var(--deep);border-radius:50px;font-size:.75rem;font-weight:500;white-space:nowrap}
.p-name{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;margin-bottom:4px}
.pricing-card:not(.featured) .p-name{color:var(--deep)}
.pricing-card.featured .p-name{color:var(--cream)}
.p-desc{font-size:.85rem;font-weight:300;margin-bottom:22px}
.pricing-card:not(.featured) .p-desc{color:var(--muted)}
.pricing-card.featured .p-desc{color:rgba(244,247,245,.62)}
.p-price{display:flex;align-items:baseline;gap:4px;margin-bottom:22px}
.p-amount{font-family:'Cormorant Garamond',serif;font-size:2.6rem;font-weight:600;letter-spacing:-.03em}
.pricing-card:not(.featured) .p-amount{color:var(--deep)}
.pricing-card.featured .p-amount{color:var(--cream)}
.p-period{font-size:.875rem}
.pricing-card:not(.featured) .p-period{color:var(--muted)}
.pricing-card.featured .p-period{color:rgba(244,247,245,.55)}
.p-features{list-style:none;flex-grow:1;margin-bottom:22px;display:flex;flex-direction:column;gap:10px}
.p-features li{display:flex;align-items:flex-start;gap:9px;font-size:.875rem;font-weight:300}
.pricing-card:not(.featured) .p-features li{color:var(--muted)}
.pricing-card.featured .p-features li{color:rgba(244,247,245,.82)}
.chk{flex-shrink:0;margin-top:3px;width:15px;height:15px;border-radius:50%;background:rgba(122,171,138,.18);display:flex;align-items:center;justify-content:center}
.featured .chk{background:rgba(244,247,245,.15)}
.chk svg{width:9px;height:9px;stroke:var(--forest-light)}
.featured .chk svg{stroke:var(--cream)}
.p-btn{width:100%;padding:13px;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}
.p-btn-ghost{background:transparent;color:var(--forest);border:1.5px solid rgba(13,59,46,.28)}
.p-btn-ghost:hover{border-color:var(--forest);background:rgba(13,59,46,.05)}
.p-btn-fill{background:var(--cream);color:var(--forest)}
.p-btn-fill:hover{background:var(--white)}
.hero{padding:72px 28px 90px;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-40px;left:50%;transform:translateX(-50%);width:700px;height:450px;background:radial-gradient(ellipse,rgba(122,171,138,.11) 0%,transparent 70%);pointer-events:none}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;background:var(--forest-pale);border-radius:50px;margin-bottom:26px;font-size:.8rem;font-weight:500;color:var(--forest-mid)}
.hero-badge span{width:7px;height:7px;background:var(--forest-light);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,5.5vw,3.8rem);font-weight:600;line-height:1.12;letter-spacing:-.02em;color:var(--deep);max-width:780px;margin:0 auto 18px}
.hero h1 em{font-style:italic;color:var(--forest-mid)}
.hero>p{font-size:clamp(1rem,2vw,1.12rem);color:var(--muted);max-width:540px;margin:0 auto 34px;font-weight:300;line-height:1.72}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-bottom:60px}
.scroll-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto;border-radius:50%;background:rgba(122,171,138,.15);cursor:pointer;animation:bounceArrow 2s ease infinite;transition:background .2s,opacity .4s}
.scroll-arrow:hover{background:rgba(122,171,138,.3)}
.scroll-arrow svg{width:22px;height:22px;color:var(--forest-light)}
@keyframes bounceArrow{0%,100%{transform:translateY(0)}50%{transform:translateY(10px)}}
.quote-wrap{padding:72px 28px;text-align:center}
.quote-mark{font-family:'Cormorant Garamond',serif;font-size:5rem;line-height:1;color:var(--forest-pale);margin-bottom:10px}
blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:400;font-style:italic;line-height:1.52;color:var(--deep);max-width:660px;margin:0 auto 26px}
.t-author{display:flex;align-items:center;justify-content:center;gap:13px}
.t-avatar{width:42px;height:42px;background:var(--forest-pale);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:.95rem;font-weight:600;color:var(--forest)}
.t-name{font-weight:500;font-size:.9rem;color:var(--deep)}
.t-sub{font-size:.78rem;color:var(--muted);font-weight:300}
.faq-list{display:flex;flex-direction:column;gap:9px;max-width:700px;margin:0 auto}
.faq-item{background:var(--white);border-radius:var(--r-sm);border:1px solid var(--border)}
.faq-trigger{width:100%;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:none;border:none;cursor:pointer;text-align:left}
.faq-trigger span{font-weight:500;color:var(--deep);font-size:.94rem;line-height:1.4}
.faq-chevron{flex-shrink:0;width:17px;height:17px;color:var(--forest-light);transition:transform .25s}
.faq-item.open .faq-chevron{transform:rotate(180deg)}
.faq-body{display:none;padding:0 22px 18px}
.faq-item.open .faq-body{display:block}
.faq-body p{font-size:.89rem;color:var(--muted);line-height:1.7;font-weight:300}
.final-cta{padding:80px 28px;background:var(--forest);text-align:center}
.final-cta h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:600;color:var(--cream);max-width:540px;margin:0 auto 12px;letter-spacing:-.01em}
.final-cta p{color:rgba(244,247,245,.68);font-size:1rem;margin-bottom:30px;font-weight:300}
.btn-cream{background:var(--cream);color:var(--forest);padding:16px 36px;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:500;border:none;cursor:pointer;transition:all .2s}
.btn-cream:hover{background:var(--white);transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.14)}
.final-note{font-size:.78rem;color:rgba(244,247,245,.38);margin-top:12px}
footer{background:var(--deep);padding:52px 28px 28px}
.footer-inner{max-width:1100px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:36px}
.footer-brand p{font-size:.85rem;color:rgba(244,247,245,.36);line-height:1.65;margin-top:10px;font-weight:300}
.footer-col h4{font-size:.76rem;font-weight:500;color:rgba(244,247,245,.5);margin-bottom:13px;text-transform:uppercase;letter-spacing:.07em}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.footer-col a{font-size:.875rem;color:rgba(244,247,245,.36);text-decoration:none;transition:color .2s;font-weight:300;cursor:pointer}
.footer-col a:hover{color:var(--cream)}
.footer-bottom{border-top:1px solid rgba(244,247,245,.07);padding-top:22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.footer-bottom p{font-size:.78rem;color:rgba(244,247,245,.26);font-weight:300}
.footer-links{display:flex;gap:20px}
.footer-links a{font-size:.78rem;color:rgba(244,247,245,.26);text-decoration:none}
.footer-links a:hover{color:rgba(244,247,245,.6)}
.auth-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - var(--nav))}
.auth-left{background:linear-gradient(150deg,#1A5240 0%,#0B3327 100%);padding:52px 48px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.auth-left::before{content:'';position:absolute;top:-80px;right:-80px;width:300px;height:300px;border-radius:50%;background:rgba(200,221,209,.08)}
.auth-left::after{content:'';position:absolute;bottom:-60px;left:-50px;width:240px;height:240px;border-radius:50%;background:rgba(200,221,209,.05)}
.auth-brand{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;background:rgba(244,247,245,.12);border-radius:50px;font-size:.78rem;font-weight:500;color:rgba(244,247,245,.8);margin-bottom:32px;position:relative;z-index:1}
.auth-left h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:600;color:var(--cream);line-height:1.22;letter-spacing:-.01em;margin-bottom:14px;position:relative;z-index:1}
.auth-left>p{font-size:.9rem;color:rgba(244,247,245,.6);line-height:1.7;font-weight:300;margin-bottom:32px;position:relative;z-index:1}
.auth-feats{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1;margin-bottom:36px}
.auth-feat{display:flex;align-items:center;gap:10px}
.feat-dot{width:7px;height:7px;border-radius:50%;background:var(--warm-light);flex-shrink:0}
.auth-feat span{font-size:.875rem;color:rgba(244,247,245,.7);font-weight:300}
.auth-quote{border-top:1px solid rgba(244,247,245,.1);padding-top:26px;position:relative;z-index:1}
.auth-quote blockquote{font-size:.9rem;font-style:italic;color:rgba(244,247,245,.58);max-width:none;margin-bottom:8px;line-height:1.55}
.auth-quote cite{font-size:.76rem;color:rgba(244,247,245,.35);font-style:normal}
.auth-right{background:#F4F7F5;padding:52px 48px;display:flex;align-items:center;justify-content:center}
.auth-box{width:100%;max-width:400px}
.auth-h1{font-family:'Cormorant Garamond',serif;font-size:1.85rem;font-weight:600;color:var(--deep);letter-spacing:-.01em;margin-bottom:5px}
.auth-sub{font-size:.875rem;color:var(--muted);font-weight:300;margin-bottom:26px}
.auth-sub a{color:var(--forest);text-decoration:none;font-weight:500}
.auth-sub a:hover{text-decoration:underline}
.alert{padding:11px 14px;border-radius:var(--r-sm);font-size:.85rem;margin-bottom:16px;display:none;align-items:center;gap:9px}
.alert.show{display:flex}
.alert.err{background:rgba(192,57,43,.07);border:1px solid rgba(192,57,43,.2);color:#C0392B}
.alert.ok{background:rgba(13,59,46,.07);border:1px solid rgba(13,59,46,.18);color:var(--forest)}
.alert svg{width:15px;height:15px;flex-shrink:0}
.field{margin-bottom:15px}
.field label{display:block;font-size:.8rem;font-weight:500;color:var(--deep);margin-bottom:6px}
.field-wrap{position:relative}
.field-wrap input{width:100%;padding:12px 15px;border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--white);font-size:.91rem;font-family:'DM Sans',sans-serif;color:var(--deep);transition:border-color .18s,box-shadow .18s;outline:none}
.field-wrap input:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(13,59,46,.08)}
.field-wrap input.err{border-color:#C0392B}
.field-wrap input.has-eye{padding-right:42px}
.field-err{font-size:.76rem;color:#C0392B;margin-top:4px;display:none}
.field-err.show{display:block}
.field-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.field-row label{display:flex;align-items:center;gap:7px;font-size:.84rem;color:var(--muted);cursor:pointer}
.field-row input[type=checkbox]{width:14px;height:14px;accent-color:var(--forest);cursor:pointer}
.field-row a{font-size:.84rem;color:var(--forest);text-decoration:none;font-weight:500}
.field-row a:hover{text-decoration:underline}
.eye-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--muted);display:flex;padding:2px}
.eye-btn:hover{color:var(--forest)}
.eye-btn svg{width:16px;height:16px}
.auth-submit{width:100%;padding:13px;background:var(--forest);color:var(--cream);border:none;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.94rem;font-weight:500;cursor:pointer;transition:all .2s}
.auth-submit:hover{background:var(--deep);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.spinner{display:none;width:16px;height:16px;border:2px solid rgba(244,247,245,.3);border-top-color:var(--cream);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto}
@keyframes spin{to{transform:rotate(360deg)}}
.auth-submit.loading .btn-txt{display:none}
.auth-submit.loading .spinner{display:block}
.or-div{display:flex;align-items:center;gap:11px;margin:18px 0;font-size:.76rem;color:var(--muted)}
.or-div::before,.or-div::after{content:'';flex:1;height:1px;background:var(--border)}
.google-btn{width:100%;padding:11px;border:1.5px solid var(--border);border-radius:50px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:500;color:var(--deep);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:border-color .18s,box-shadow .18s,transform .18s;margin-bottom:8px;position:relative;z-index:2}
.google-btn:hover{border-color:var(--forest-light);box-shadow:0 2px 8px rgba(13,59,46,.1)}
.google-btn:active{transform:scale(.98);box-shadow:0 1px 4px rgba(13,59,46,.12)}
.google-btn svg{width:18px;height:18px;pointer-events:none;flex-shrink:0}
.auth-terms{font-size:.76rem;color:var(--muted);text-align:center;margin-top:13px;line-height:1.6;font-weight:300}
.auth-terms a{color:var(--forest);text-decoration:none}
.pw-bars{display:flex;gap:4px;margin-top:7px;margin-bottom:3px}
.pw-bar{flex:1;height:3px;border-radius:2px;background:var(--forest-pale);transition:background .3s}
.pw-bar.weak{background:#E74C3C}.pw-bar.fair{background:#F39C12}.pw-bar.good{background:#27AE60}.pw-bar.strong{background:var(--forest)}
.pw-lbl{font-size:.72rem;color:var(--muted)}
.plan-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:var(--forest-pale);border-radius:50px;font-size:.77rem;font-weight:500;color:var(--forest-mid);margin-bottom:18px}
.dash-layout{display:grid;grid-template-columns:248px 1fr;min-height:calc(100vh - var(--nav))}
.dash-side{background:var(--white);border-right:1px solid var(--border);padding:26px 14px;position:sticky;top:var(--nav);height:calc(100vh - var(--nav));overflow-y:auto;display:flex;flex-direction:column}
.dash-user-card{display:flex;align-items:center;gap:10px;padding:12px 13px;background:var(--forest-pale);border-radius:var(--r-sm);margin-bottom:22px}
.dash-av{width:36px;height:36px;background:var(--forest);border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:.9rem;font-weight:600;color:var(--cream);flex-shrink:0}
.dash-uname{font-size:.875rem;font-weight:500;color:var(--deep)}
.dash-uplan{font-size:.72rem;color:var(--forest-light)}
.side-lbl{font-size:.69rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:0 9px;margin:14px 0 5px}
.side-btn{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:var(--r-sm);font-size:.855rem;font-weight:400;color:var(--muted);cursor:pointer;transition:all .15s;background:none;border:none;width:100%;text-align:left;font-family:'DM Sans',sans-serif}
.side-btn svg{width:15px;height:15px;flex-shrink:0}
.side-btn:hover{background:var(--cream);color:var(--deep)}
.side-btn.active{background:var(--forest-pale);color:var(--forest);font-weight:500}
.dash-signout{margin-top:auto;padding-top:14px;border-top:1px solid var(--border)}
.dash-main{padding:34px 40px;overflow-y:auto;height:calc(100vh - var(--nav))}
.dash-greet h1{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;color:var(--deep);letter-spacing:-.01em;margin-bottom:3px}
.dash-greet p{font-size:var(--text-body);color:var(--muted);font-weight:300;margin-bottom:26px}
.d-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:22px}
.stat{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s}
.stat:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.stat-lbl{font-size:var(--text-label);font-weight:500;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:7px}
.stat-val{font-family:'Cormorant Garamond',serif;font-size:1.75rem;font-weight:600;color:var(--deep);letter-spacing:-.02em;line-height:1;margin-bottom:5px}
.stat-sub{font-size:.73rem;color:var(--forest-light)}
.plan-banner{background:linear-gradient(135deg,var(--forest) 0%,#1a5240 100%);border-radius:var(--r);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px;box-shadow:0 4px 16px rgba(13,59,46,.12)}
.plan-banner h3{font-family:var(--font-display);font-size:var(--text-card-title);color:var(--cream);margin-bottom:3px}
.plan-banner p{font-size:var(--text-body-sm);color:rgba(244,247,245,.58);font-weight:300}
.plan-badge{padding:5px 14px;background:rgba(244,247,245,.15);border-radius:50px;font-size:.77rem;font-weight:500;color:var(--cream);white-space:nowrap}
.d-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.d-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:24px;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s}
.d-card:hover{box-shadow:var(--shadow-md)}
.d-card h3{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:3px}
.d-card .d-sub{font-size:var(--text-body-sm);color:var(--muted);font-weight:300;margin-bottom:14px}
.d-list{display:flex;flex-direction:column;gap:8px}
.d-item{display:flex;align-items:center;gap:10px;padding:9px 11px;background:var(--cream);border-radius:var(--r-sm);cursor:pointer;transition:background .18s,transform .18s}
.d-item:hover{background:var(--cream-dark);transform:translateX(2px)}
.d-ic{width:29px;height:29px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.d-ic svg{width:13px;height:13px}
.d-txt{flex-grow:1}
.d-txt p{font-size:var(--text-body);font-weight:500;color:var(--deep)}
.d-txt span{font-size:.72rem;color:var(--muted);font-weight:300}
.d-arr svg{width:13px;height:13px;color:var(--muted)}
.session-box{border:1.5px dashed rgba(13,59,46,.2);border-radius:var(--r-sm);padding:15px;text-align:center}
.session-box>p{font-size:.81rem;color:var(--muted);margin-bottom:9px;font-weight:300}
.s-date{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--deep);margin-bottom:3px}
.s-time{font-size:.8rem;color:var(--muted);margin-bottom:13px}
.dash-section{display:none}
.dash-section.active{display:block;animation:fadeUp .3s ease}
.assess-inner{max-width:650px;margin:0 auto;padding:40px 24px 80px}
.assess-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;background:var(--forest-pale);border-radius:50px;font-size:.77rem;font-weight:500;color:var(--forest-mid);margin-bottom:16px}
.assess-inner h1{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;letter-spacing:-.02em;color:var(--deep);margin-bottom:9px}
.assess-inner>p{color:var(--muted);font-size:.97rem;font-weight:300;line-height:1.65;margin-bottom:30px}
.prog-meta{display:flex;justify-content:space-between;font-size:.79rem;color:var(--muted);margin-bottom:7px}
.prog-track{height:4px;background:var(--forest-pale);border-radius:2px;overflow:hidden}
.prog-fill{height:100%;background:var(--forest);border-radius:2px;transition:width .4s ease}
.q-card{background:var(--white);border-radius:var(--r);border:1px solid var(--border);padding:30px;box-shadow:var(--shadow-sm);margin-top:24px}
.q-num{font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--forest-light);margin-bottom:9px}
.q-card h3{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);line-height:1.35;margin-bottom:18px}
.options{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}
.opt{cursor:pointer}
.opt input{position:absolute;opacity:0;width:0;height:0}
.opt-lbl{display:flex;align-items:center;gap:12px;padding:12px 15px;border:1.5px solid var(--border);border-radius:var(--r-sm);transition:all .18s;cursor:pointer}
.opt-lbl:hover{border-color:var(--forest-light);background:rgba(13,59,46,.03)}
.opt input:checked+.opt-lbl{border-color:var(--forest);background:rgba(13,59,46,.06)}
.opt-dot{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .18s}
.opt input:checked+.opt-lbl .opt-dot{border-color:var(--forest);background:var(--forest)}
.opt input:checked+.opt-lbl .opt-dot::after{content:'';width:5px;height:5px;border-radius:50%;background:var(--cream)}
.opt-dot-check{border-radius:4px}
.opt-multi input:checked+.opt-lbl .opt-dot-check::after{content:'✓';width:auto;height:auto;border-radius:0;background:none;color:var(--cream);font-size:11px;font-weight:700;line-height:1}
.opt-txt{font-size:.88rem;color:var(--deep);line-height:1.4}
.q-nav{display:flex;gap:9px}
.q-next{flex:1}
.result-card{background:var(--white);border-radius:var(--r);border:1px solid var(--border);padding:30px;box-shadow:var(--shadow-sm);margin-top:22px;animation:fadeUp .4s ease}
.r-badge{display:inline-flex;align-items:center;gap:7px;padding:4px 12px;background:var(--forest-pale);border-radius:50px;font-size:.77rem;font-weight:500;color:var(--forest-mid);margin-bottom:14px}
.result-card h2{font-family:'Cormorant Garamond',serif;font-size:1.65rem;font-weight:600;color:var(--deep);letter-spacing:-.01em;margin-bottom:4px}
.r-score{font-size:.84rem;color:var(--muted);font-weight:300;margin-bottom:22px}
.r-field{margin-bottom:16px}
.r-lbl{font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:5px}
.r-val{font-size:.91rem;color:var(--deep);line-height:1.6;font-weight:300}
.r-pkg{font-family:'Cormorant Garamond',serif;font-size:1.08rem;font-weight:600;color:var(--forest)}
.r-actions{display:flex;flex-direction:column;gap:9px;margin-top:22px}
.r-note{font-size:.77rem;color:var(--muted);text-align:center;margin-top:9px;font-weight:300}
.r-auth-prompt{margin-top:24px;padding:24px;background:var(--forest-pale);border-radius:var(--r);border:1px solid rgba(13,59,46,.12);text-align:center}
.r-auth-icon{display:flex;justify-content:center;margin-bottom:10px;color:var(--forest)}
.r-auth-title{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:600;color:var(--deep);margin:0 0 8px}
.r-auth-desc{font-size:.87rem;color:var(--body);line-height:1.6;font-weight:300;margin:0 0 18px;max-width:420px;margin-left:auto;margin-right:auto}
.r-auth-divider{display:flex;align-items:center;gap:12px;margin:12px 0;color:var(--muted);font-size:.78rem;font-weight:300}
.r-auth-divider::before,.r-auth-divider::after{content:'';flex:1;height:1px;background:var(--border)}
.r-auth-note{font-size:.74rem;color:var(--forest-mid);margin-top:14px;margin-bottom:0;font-weight:400}
.dash-assess-card{background:var(--forest-pale);border:1px solid rgba(13,59,46,.12);border-radius:var(--r);padding:22px;margin-bottom:18px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;transition:box-shadow .2s,transform .2s}
.dash-assess-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.dash-assess-card .assess-icon{width:46px;height:46px;border-radius:12px;background:rgba(13,59,46,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--forest)}
.dash-assess-card .assess-info{flex:1;min-width:200px}
.dash-assess-card .assess-info h4{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--deep);margin:0 0 3px}
.dash-assess-card .assess-info p{font-size:.82rem;color:var(--muted);margin:0;font-weight:300;line-height:1.5}
.toolkit-inner{max-width:860px;margin:0 auto;padding:calc(var(--nav) + 40px) 24px 80px}
.tk-section{background:var(--white);border-radius:var(--r);border:1px solid var(--border);overflow:hidden;margin-bottom:16px;box-shadow:var(--shadow-sm)}
.tk-head{display:flex;align-items:center;gap:13px;padding:22px 26px;border-bottom:1px solid var(--border)}
.tk-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tk-icon svg{width:18px;height:18px}
.tk-ttl h2{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:2px}
.tk-ttl p{font-size:var(--text-body-sm);color:var(--muted);font-weight:300}
.tk-items{padding:5px 10px 10px}
.tk-item{display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:var(--r-sm);cursor:pointer;transition:background .15s}
.tk-item:hover{background:var(--cream)}
.tk-chk{width:18px;height:18px;border-radius:50%;background:rgba(122,171,138,.12);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tk-chk svg{width:9px;height:9px;stroke:var(--forest-light)}
.tk-itxt{flex-grow:1}
.tk-itxt h3{font-size:.875rem;font-weight:500;color:var(--deep);margin-bottom:1px}
.tk-itxt p{font-size:.77rem;color:var(--muted);font-weight:300}
.tk-tag{font-size:.7rem;font-weight:500;padding:3px 10px;background:var(--forest-pale);color:var(--forest-mid);border-radius:50px;white-space:nowrap}
.tk-cta{margin-top:26px;background:var(--forest-pale);border-radius:var(--r);padding:30px;text-align:center;border:1px solid rgba(13,59,46,.1)}
.tk-cta h3{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:6px}
.tk-cta p{font-size:var(--text-body);color:var(--muted);margin-bottom:18px;font-weight:300}
#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(14px);background:var(--deep);color:var(--cream);padding:11px 22px;border-radius:50px;font-size:.875rem;box-shadow:var(--shadow-lg);opacity:0;transition:all .3s;pointer-events:none;z-index:999;white-space:nowrap}
/* ── CARE LIBRARY ── */
#cl-app{min-height:200px}
.cl-root{display:flex;flex-direction:column;gap:28px;animation:fadeUp .3s ease}
.cl-hero{text-align:center;padding:20px 0 4px}
.cl-eyebrow{font-size:.68rem;letter-spacing:3px;color:var(--muted);text-transform:uppercase;margin-bottom:10px}
.cl-hero-title{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;line-height:1.2;color:var(--deep);margin-bottom:12px}
.cl-hero-title em{font-style:italic;color:var(--forest-mid)}
.cl-hero-sub{font-size:var(--text-body);color:var(--muted);line-height:1.7;max-width:520px;margin:0 auto 22px;font-weight:300}
.cl-stat-row{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap}
.cl-stat{text-align:center}
.cl-stat-v{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;color:var(--deep);display:block}
.cl-stat-l{font-size:.7rem;color:var(--muted);margin-top:2px;line-height:1.4;display:block}
.cl-divider{width:1px;height:32px;background:var(--border)}
.cl-align-note{display:flex;align-items:center;gap:10px;background:#EEF5F8;border:1px solid #C8DDE8;border-radius:10px;padding:11px 16px;font-size:.82rem;color:#4A5E6A}
.cl-persona-bar-wrap{position:sticky;top:0;z-index:12;background:var(--bg);border-bottom:1px solid var(--border);padding:14px 0 16px;margin-bottom:0}
.cl-persona-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.cl-persona-field{min-width:0}
.cl-persona-field:nth-child(3){grid-column:1/-1}
.cl-persona-label{display:block;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 6px}
.cl-persona-select{width:100%;padding:11px 30px 11px 13px;border:1px solid rgba(0,0,0,.11);border-radius:9px;background:rgba(255,255,255,.55);font-size:.875rem;font-family:'DM Sans',sans-serif;color:var(--deep);appearance:none;outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5'%3E%3Cpath d='M0 0l4.5 5L9 0z' fill='%23A0908A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center}
.cl-persona-select:focus{border-color:var(--forest);box-shadow:0 0 0 2px rgba(13,59,46,.08)}
.cl-guided-overview{display:flex;flex-direction:column;gap:14px}
.cl-roadmap-label{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:7px}
.cl-roadmap-row{display:flex;gap:8px;flex-wrap:wrap}
.cl-roadmap-pill{padding:6px 11px;border-radius:999px;border:1px solid var(--border);background:var(--white);font-size:.74rem;color:var(--muted);font-weight:500}
.cl-roadmap-pill.on{background:var(--forest-pale);border-color:rgba(13,59,46,.22);color:var(--forest);font-weight:600}
.cl-validation-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;background:var(--peach,#f5ede3);border:1px solid rgba(180,120,80,.18);font-size:.83rem;line-height:1.65;color:var(--deep)}
.cl-validation-icon{font-size:1rem;line-height:1.2;flex-shrink:0}
.cl-persona-context{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg,var(--r));padding:12px 14px}
.cl-persona-context-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:8px}
.cl-persona-tags{display:flex;flex-wrap:wrap;gap:7px}
.cl-persona-tag{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:var(--forest-pale);color:var(--forest);font-size:.75rem;font-weight:500}
.cl-guided-block{display:flex;flex-direction:column;gap:9px}
.cl-guided-title{font-family:'DM Sans',sans-serif;font-size:1.15rem;font-weight:600;letter-spacing:-.01em;color:#1A5240}
.cl-priority-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.cl-priority-card{position:relative;background:var(--white);border:1px solid var(--border);border-radius:10px;padding:12px}
.cl-priority-card--match{background:linear-gradient(135deg,#fff 0%,var(--forest-pale) 100%)}
.cl-priority-badge{position:absolute;top:8px;left:8px;font-size:.67rem;line-height:1;padding:4px 8px;border-radius:999px;background:#d8ecff;color:#345;display:inline-flex;align-items:center;gap:4px}
.cl-priority-title{font-size:.84rem;font-weight:500;color:var(--deep);margin-top:16px}
.cl-priority-body{font-size:.78rem;color:var(--muted);line-height:1.6;font-weight:300;margin-top:4px}
.cl-wish-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.cl-wish-item{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.05)}
.cl-wish-item:last-child{border-bottom:none}
.cl-wish-num{font-family:'Cormorant Garamond',serif;font-size:1.8rem;line-height:1;color:#2d5a3d;opacity:1;min-width:36px;padding-top:2px}
.cl-wish-copy{flex:1}
.cl-wish-title{font-size:.875rem;font-weight:400;color:#1A5240;line-height:1.5}
.cl-wish-body{font-size:.8rem;color:#A0908A;line-height:1.6;font-style:italic;font-weight:300;margin-top:3px}
.cl-pre-badge{display:inline-flex;background:var(--forest-light);color:white;font-size:.67rem;font-weight:600;letter-spacing:1.5px;padding:4px 12px;border-radius:20px;text-transform:uppercase;margin-bottom:10px}
.cl-pre-card{width:100%;background:var(--white);border:2px solid var(--forest-light);border-radius:16px;cursor:pointer;text-align:left;transition:transform .2s,box-shadow .2s;padding:22px 26px;display:flex;flex-direction:column;gap:12px}
.cl-pre-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.cl-pre-top{display:flex;align-items:center;gap:12px}
.cl-pre-icon{font-size:2rem}
.cl-pre-label{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;color:var(--deep)}
.cl-pre-tagline{font-size:.8rem;color:var(--muted);font-style:italic;margin-top:2px}
.cl-pre-desc{font-size:.82rem;color:var(--muted);line-height:1.7}
.cl-pre-feats{display:flex;flex-wrap:wrap;gap:6px 16px}
.cl-pre-feat{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--deep);font-weight:500}
.cl-pre-feat-dot{width:5px;height:5px;border-radius:50%;background:var(--forest-light);flex-shrink:0}
.cl-pre-arrow{font-size:.8rem;font-weight:600;color:var(--forest-light)}
.cl-stage-grid{overflow:visible;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.cl-stage-card{transition:box-shadow .2s,transform .2s;background:var(--white);border:1px solid var(--border);border-radius:13px;padding:18px 16px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden;font-family:'DM Sans',sans-serif}
.cl-stage-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.cl-card-bar{position:absolute;top:0;left:0;right:0;height:3px}
.cl-card-row{display:flex;align-items:center;justify-content:space-between;margin-top:2px}
.cl-card-icon{font-size:1.4rem}
.cl-card-assess{font-size:.6rem;font-weight:700;letter-spacing:1px;padding:2px 7px;border-radius:20px;text-transform:uppercase}
.cl-card-lbl{font-size:.67rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.cl-card-name{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);line-height:1.3}
.cl-card-tagline{font-size:.72rem;color:var(--muted);font-style:italic;flex:1}
.cl-card-cta{font-size:.72rem;font-weight:600;margin-top:2px}
.cl-sv-wrap{display:flex;flex-direction:column;gap:16px}
.cl-back{background:none;border:none;cursor:pointer;color:var(--muted);font-size:.82rem;font-family:'DM Sans',sans-serif;padding:0;display:flex;align-items:center;gap:5px}
.cl-stage-head{border-radius:13px;padding:24px 26px;border-left:5px solid;overflow:hidden}
.cl-sh-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}
.cl-sh-icon{width:46px;height:46px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.cl-sh-badge{font-size:.67rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:3px}
.cl-sh-name{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep);line-height:1.2}
.cl-sh-tagline{font-size:.8rem;color:var(--muted);font-style:italic;margin-top:2px}
.cl-sh-who{font-size:.84rem;color:var(--deep);line-height:1.7;margin-bottom:14px;font-weight:300}
.cl-stat-sm-row{display:flex;gap:20px;flex-wrap:wrap;min-width:0}
.cl-stat-sm{display:flex;flex-direction:column;gap:1px;min-width:0;max-width:100%}
.cl-stat-sm-v{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;overflow-wrap:break-word;word-wrap:break-word}
.cl-stat-sm-l{font-size:.7rem;color:var(--muted)}
.cl-why-box{background:var(--white);border:1px solid;border-radius:10px;padding:13px 16px}
.cl-why-lbl{font-size:.67rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;margin-bottom:5px}
.cl-why-text{font-size:.84rem;color:var(--deep);line-height:1.75;font-weight:300}
.cl-tab-bar{display:flex;border-bottom:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch}
.cl-tab-bar::-webkit-scrollbar{display:none}
.cl-tab{background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;padding:9px 13px;font-size:.78rem;font-family:'DM Sans',sans-serif;font-weight:500;color:var(--muted);white-space:nowrap;transition:all .15s}
.cl-tab.on{font-weight:500;border-bottom-color:currentColor}
.cl-tab-body{background:transparent;border:none;border-radius:0;padding:20px 0 8px;min-height:200px}
.cl-hint{font-size:.75rem;color:var(--muted);margin-bottom:14px;font-weight:300}
.cl-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.cl-ov-card{background:#EEF5F0;border-radius:10px;padding:16px;overflow:hidden;min-width:0}
.cl-ov-title{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:4px}
.cl-signal-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:10px}
.cl-signal-item{display:flex;align-items:flex-start;gap:8px;font-size:.8rem;color:var(--deep);line-height:1.5}
.cl-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;margin-top:5px}
.cl-sect-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:13px}
.cl-sect-card{background:#EEF5F0;border-radius:10px;padding:16px}
.cl-sect-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.cl-sect-head .cl-heart-btn{margin-left:auto;flex-shrink:0}
.cl-sect-icon{font-size:1.1rem}
.cl-sect-title{font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--deep)}
.cl-sect-body{font-size:.78rem;color:var(--muted);line-height:1.7;margin-bottom:10px;font-weight:300}
.cl-sect-list{list-style:none;display:flex;flex-direction:column;gap:7px}
.cl-sect-item{display:flex;align-items:flex-start;gap:8px;font-size:.78rem;color:var(--deep);line-height:1.5}
.cl-cl-wrap{margin-bottom:8px}
.cl-cl-head:hover{filter:brightness(.97)}
.cl-cl-head{width:100%;border:none;border-left:4px solid;border-radius:0 7px 7px 0;padding:11px 15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:'DM Sans',sans-serif;transition:opacity .15s}
.cl-cl-title{font-size:.82rem;font-weight:700;color:var(--deep)}
.cl-chevron{font-size:.67rem;color:var(--muted)}
.cl-cl-body{padding-top:5px;padding-left:12px;display:flex;flex-direction:column;gap:3px}
.cl-check-row{display:flex;align-items:flex-start;gap:9px;padding:7px 10px;border-radius:7px;cursor:pointer;user-select:none;transition:opacity .2s}
.cl-check-row:hover{background:#EEF5F0}
.cl-checkbox{width:15px;height:15px;border-radius:3px;border:2px solid;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:all .15s}
.cl-checkmark{color:white;font-size:.55rem;font-weight:700}
.cl-convo-card{border:1px solid var(--border);border-radius:10px;margin-bottom:8px;overflow:hidden}
.cl-convo-head:hover{background:#EFEBE4}
.cl-convo-head{width:100%;background:#EEF5F0;border:none;padding:12px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:'DM Sans',sans-serif;text-align:left}
.cl-convo-title{font-size:.82rem;font-weight:700;color:var(--deep)}
.cl-conv-body{padding:16px;display:flex;flex-direction:column;gap:14px}
.cl-script-box{background:#EEF5F0;border-left:4px solid;border-radius:0 7px 7px 0;padding:12px 15px}
.cl-script-lbl{font-size:.6rem;letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin-bottom:6px}
.cl-script-text{font-size:.82rem;color:var(--deep);line-height:1.75;font-style:italic}
.cl-sub-lbl{font-size:.67rem;font-weight:700;letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin-bottom:7px}
.cl-tip-row{display:flex;align-items:flex-start;gap:8px;font-size:.78rem;color:var(--deep);margin-bottom:6px;line-height:1.5}
.cl-obj-block{margin-bottom:11px}
.cl-obj-they{font-size:.78rem;color:var(--muted);font-style:italic;margin-bottom:6px}
.cl-obj-you{border-left:3px solid;padding-left:9px;font-size:.78rem;color:var(--deep);line-height:1.6}
.cl-obj-you-lbl{font-size:.6rem;font-weight:700;color:var(--muted);margin-bottom:2px;letter-spacing:1px}
.cl-legal-row{display:flex;align-items:flex-start;gap:12px;padding:11px 14px;background:#EEF5F0;border-radius:0 7px 7px 0;border-left:4px solid;margin-bottom:6px}
.cl-legal-num{font-size:.78rem;font-weight:700;flex-shrink:0;font-family:'Cormorant Garamond',serif}
.cl-res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:11px;margin-top:13px}
.cl-res-card{display:flex;flex-direction:column;gap:6px;background:#EEF5F0;cursor:pointer;border:1px solid var(--border);border-top:3px solid;border-radius:9px;padding:13px;text-decoration:none;color:inherit;transition:all .15s}
.cl-res-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.cl-res-name{font-size:.78rem;font-weight:700;color:var(--deep);line-height:1.4}
.cl-res-desc{font-size:.72rem;color:var(--muted);line-height:1.5;flex:1}
.cl-res-link{font-size:.72rem;font-weight:700}
.cl-self-head{border:1px solid;border-radius:10px;padding:14px 16px;margin-bottom:16px}
.cl-self-headline{font-family:'Cormorant Garamond',serif;font-size:.95rem;font-weight:600;color:var(--deep);margin-bottom:5px}
.cl-self-sub{font-size:.78rem;color:var(--muted);line-height:1.65;font-weight:300}
.cl-self-list{list-style:none;display:flex;flex-direction:column;gap:9px}
.cl-self-item{display:flex;align-items:flex-start;gap:9px;font-size:.84rem;color:var(--deep);line-height:1.6}
.cl-crisis-box{background:#FEF2F0;border:1px solid #F5C5BF;border-radius:10px;padding:14px 16px;margin-top:18px}
.cl-crisis-title{font-size:.82rem;font-weight:700;color:#C05A50;margin-bottom:5px}
.cl-crisis-text{font-size:.78rem;color:#5A2E2A;line-height:1.65}
.cl-page-title{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;color:var(--deep);margin-bottom:6px}
.cl-page-sub{font-size:var(--text-body);color:var(--muted);margin-bottom:22px;font-weight:300}
.cl-hot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:11px;margin-top:16px}
.cl-hot-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:16px}
.cl-hot-urgent{background:#FEF2F0;border:1px solid #F5C5BF}
.cl-hot-badge{display:inline-block;background:#D4756B;color:white;font-size:.62rem;font-weight:700;letter-spacing:1.5px;padding:2px 7px;border-radius:3px;margin-bottom:7px}
.cl-hot-name{font-size:.78rem;font-weight:700;color:var(--deep);margin-bottom:4px}
.cl-hot-num{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;color:var(--deep);margin-bottom:2px}
.cl-hot-hours{font-size:.62rem;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px}
.cl-hot-desc{font-size:.72rem;color:var(--muted);line-height:1.5}
.cl-all-res-sect{margin-bottom:32px}
.cl-all-res-title{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;margin-bottom:10px;cursor:pointer;background:none;border:none;padding:0}
.cl-nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:4px;justify-content:center}
.cl-nav-btn{background:var(--white);border:1.5px solid rgba(13,59,46,.15);border-radius:100px;padding:10px 24px;font-size:.88rem;font-weight:500;cursor:pointer;transition:all .18s ease;font-family:'DM Sans',sans-serif;color:var(--deep);display:inline-flex;align-items:center;gap:6px;box-shadow:0 1px 3px rgba(0,0,0,.03)}
.cl-nav-btn:hover{background:var(--forest-pale);border-color:var(--forest);color:var(--deep);box-shadow:0 2px 8px rgba(13,59,46,.18);transform:translateY(-1px)}
.cl-nav-btn.active{background:var(--forest);color:white;border-color:var(--forest);box-shadow:0 2px 8px rgba(13,59,46,.2)}
.cl-nav-icon{display:inline-flex;align-items:center}
.cl-nav-icon svg{flex-shrink:0}
.cl-res-pill{background:var(--white);border:1.5px solid var(--border);border-radius:50px;padding:6px 14px;font-size:.76rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif;color:var(--muted)}
.cl-res-pill:hover{border-color:var(--forest);color:var(--forest)}
.cl-res-pill.active{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.cl-state-res-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.cl-state-res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.cl-state-res-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px;box-shadow:var(--shadow-sm);transition:box-shadow .15s}
.cl-state-res-card:hover{box-shadow:var(--shadow)}
.cl-state-res-cat{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.cl-state-res-name{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--deep);margin-bottom:7px;line-height:1.3}
.cl-state-res-desc{font-size:.82rem;color:var(--muted);line-height:1.6;margin-bottom:12px;font-weight:300}
.cl-state-res-link{font-size:.8rem;color:var(--forest);font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:5px}
.cl-state-res-cat-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cl-state-res-cat-row .cl-state-res-cat{margin-bottom:0}
.cl-state-res-card--legal{border-left:3px solid var(--forest);background:linear-gradient(135deg,var(--white),#f0f7f4)}
.cl-state-res-cat--legal{color:var(--forest)}
.cl-heart-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:50%;color:var(--muted);transition:color .2s,transform .15s;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cl-heart-btn:hover{color:#e25555;transform:scale(1.15)}
.cl-heart-btn--active{color:#e25555}
.cl-heart-btn--active:hover{color:#c94444}
.cl-heart-icon{transition:fill .2s,stroke .2s}
.cl-toolkit-section{margin-top:32px;padding-top:24px;border-top:1.5px solid var(--border)}
.cl-toolkit-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.cl-toolkit-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
.cl-toolkit-count{font-size:.75rem;color:var(--muted);background:var(--cream);padding:2px 10px;border-radius:20px;font-weight:500}
.cl-toolkit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.cl-toolkit-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:8px}
.cl-toolkit-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.cl-toolkit-card-name{font-size:.85rem;font-weight:600;color:var(--deep);line-height:1.3}
.cl-toolkit-card-state{font-size:.72rem;color:var(--muted);margin-top:2px}
.cl-toolkit-card-link{font-size:.78rem;color:var(--forest);font-weight:500;text-decoration:none}
.cl-toolkit-card-desc{font-size:.72rem;color:var(--muted);line-height:1.5;margin-top:2px}
.cl-toolkit-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}
.cl-toolkit-card-stage{font-size:.68rem;color:var(--forest);background:var(--forest-pale,#EEF5F0);padding:1px 7px;border-radius:4px;font-weight:500}
.cl-toolkit-card-type{font-size:.68rem;color:var(--muted);background:#f0ebe4;padding:1px 7px;border-radius:4px;font-weight:500;text-transform:capitalize}
.cl-toolkit-viewall{background:none;border:none;cursor:pointer;color:var(--forest);font-size:.78rem;font-weight:600;font-family:'DM Sans',sans-serif;padding:4px 10px;border-radius:6px;transition:background .15s;margin-left:auto}
.cl-toolkit-viewall:hover{background:var(--forest-pale,#EEF5F0)}

/* Heart wraps for inline heart buttons */
.cl-check-row-wrap{display:flex;align-items:flex-start;gap:4px;padding:2px 0}
.cl-check-num{font-size:.68rem;font-weight:700;color:var(--muted);flex-shrink:0;min-width:22px;font-family:'Cormorant Garamond',serif}
.cl-cl-head-row{display:flex;align-items:stretch;gap:0;position:relative}
.cl-cl-head-row .cl-cl-head{border-radius:0 7px 7px 0}
.cl-heart-group-btn{background:var(--white);border:1.5px solid var(--border);border-left:none;border-radius:0 7px 7px 0;padding:0 10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:color .2s,background .15s}
.cl-heart-group-btn:hover{color:#e25555;background:#fef2f0}
.cl-heart-group-btn.cl-heart-btn--active{color:#e25555}
.cl-convo-head-row{display:flex;align-items:stretch}
.cl-convo-head-row .cl-convo-head{border-radius:10px 0 0 0}
.cl-convo-head-row .cl-heart-btn{background:#EEF5F0;border:1px solid var(--border);border-left:none;border-radius:0 10px 0 0;padding:0 12px;display:flex;align-items:center;justify-content:center}
.cl-convo-head-row .cl-heart-btn:hover{background:#fef2f0}
.cl-legal-row-wrap{display:flex;align-items:flex-start;gap:4px;margin-bottom:6px}
.cl-legal-row-wrap .cl-legal-row{margin-bottom:0}
.cl-res-card-wrap{position:relative;display:flex;flex-direction:column}
.cl-res-card-wrap .cl-heart-btn{position:absolute;top:8px;right:8px;z-index:1;background:rgba(255,255,255,.85);border-radius:50%;padding:5px;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.cl-res-card-wrap .cl-res-card{padding-right:36px}
.cl-self-item-wrap{display:flex;align-items:flex-start;gap:6px;list-style:none}
.cl-self-item-wrap .cl-self-item{flex:1}
.cl-self-item-wrap .cl-heart-btn{flex-shrink:0;margin-top:2px}
.cl-hot-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:4px}

/* ── Care Library: Static stage cards ── */
.cl-stage-card--static{cursor:default;pointer-events:none}
.cl-stage-card--static:hover{transform:none;box-shadow:none}

/* ── Care Library: Floating Action Button ── */
.cl-fab{position:fixed;bottom:24px;right:20px;z-index:200;background:#2C2118;color:#fff;border:none;border-radius:40px;padding:12px 18px;display:flex;align-items:center;gap:8px;cursor:pointer;font-family:'DM Sans','Jost',sans-serif;font-size:13px;font-weight:500;box-shadow:0 4px 16px rgba(0,0,0,.18);transition:background .25s,transform .2s}
.cl-fab:hover{background:var(--forest,#2d5a3d);transform:translateY(-2px)}
.cl-fab-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.15);font-size:15px}
.cl-fab-text{white-space:nowrap}
.cl-fab-stage{opacity:.6;font-size:12px;white-space:nowrap}

/* ── Care Library: Bottom Drawer ── */
.cl-drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:300;animation:cl-overlay-in .2s ease forwards}
@keyframes cl-overlay-in{from{opacity:0}to{opacity:1}}
.cl-drawer-sheet{position:fixed;bottom:0;left:0;right:0;background:#fff;border-radius:20px 20px 0 0;max-height:88vh;overflow-y:auto;z-index:301;padding:0 20px 32px;animation:cl-drawer-up .3s cubic-bezier(.34,1.2,.64,1) forwards}
@keyframes cl-drawer-up{from{transform:translateY(100%)}to{transform:translateY(0)}}
.cl-drawer-handle{width:40px;height:4px;background:#d0ccc8;border-radius:4px;margin:12px auto 8px}
.cl-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;padding:8px 0 16px}
.cl-drawer-title{font-family:'Cormorant Garamond','Georgia',serif;font-size:1.35rem;font-weight:600;color:var(--deep,#2C2118);margin:0}
.cl-drawer-subtitle{font-size:.82rem;color:var(--muted,#9a9590);margin:4px 0 0}
.cl-drawer-close{background:none;border:none;font-size:20px;color:var(--muted,#9a9590);cursor:pointer;padding:4px 8px;border-radius:8px;line-height:1}
.cl-drawer-close:hover{background:var(--cream,#f5f0eb)}
.cl-drawer-cards{display:flex;flex-direction:column;gap:10px}
.cl-drawer-card{background:var(--white,#fff);border:1px solid var(--border,#e8e2dc);border-radius:12px;overflow:hidden;transition:box-shadow .2s}
.cl-drawer-card--expanded{box-shadow:0 2px 12px rgba(0,0,0,.08)}
.cl-drawer-card-head{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer}
.cl-drawer-card-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;font-size:18px;flex-shrink:0}
.cl-drawer-card-info{flex:1;min-width:0}
.cl-drawer-card-name{font-weight:600;font-size:.92rem;color:var(--deep,#2C2118)}
.cl-drawer-card-desc{font-size:.78rem;color:var(--muted,#9a9590);margin-top:2px}
.cl-drawer-pill{font-size:.7rem;font-weight:500;padding:3px 10px;border-radius:20px;background:var(--cream,#f5f0eb);color:var(--muted,#9a9590);white-space:nowrap;flex-shrink:0}
.cl-drawer-pill--current{background:var(--forest,#2d5a3d);color:#fff}
.cl-drawer-card-body{padding:0 16px 16px;border-top:1px solid var(--border,#e8e2dc)}
.cl-drawer-stats{padding:12px 0;display:flex;flex-direction:column;gap:6px}
.cl-drawer-stat{font-size:.82rem;color:var(--deep,#2C2118);line-height:1.5}
.cl-drawer-why{padding:10px 0}
.cl-drawer-why-lbl{font-weight:600;font-size:.82rem;color:var(--deep,#2C2118);margin-bottom:4px}
.cl-drawer-why-text{font-size:.82rem;color:var(--muted,#9a9590);line-height:1.6;margin:0}
.cl-drawer-pillars{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0 12px}
.cl-drawer-chip{font-size:.72rem;font-weight:500;padding:4px 10px;border-radius:20px;background:var(--cream,#f5f0eb);color:var(--deep,#2C2118)}
.cl-drawer-action{display:block;width:100%;padding:12px;border-radius:10px;font-size:.88rem;font-weight:600;text-align:center;margin-top:4px}
.cl-drawer-action--btn{background:var(--forest,#2d5a3d);color:#fff;border:none;cursor:pointer;transition:background .2s;font-family:'DM Sans',sans-serif}
.cl-drawer-action--btn:hover{background:#245032}
.cl-drawer-action--disabled{background:var(--cream,#f5f0eb);color:var(--muted,#9a9590);border:none;cursor:default}

/* Toolkit page saved items — overridden by redesign below */
.tk-empty-state h3{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep);margin:14px 0 8px}
.tk-empty-state p{font-size:var(--text-body);color:var(--muted);max-width:380px;margin:0 auto 18px;line-height:1.6}
.tk-saved-card-link{font-size:.78rem;color:var(--forest);font-weight:500;text-decoration:none}
.tk-saved-card-link:hover{text-decoration:underline}
@media(max-width:600px){.cl-overview-grid{grid-template-columns:1fr}.cl-stage-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.cl-nav-btn{padding:8px 16px;font-size:.8rem}.cl-state-res-grid{grid-template-columns:1fr}.cl-toolkit-grid{grid-template-columns:1fr}.tk-saved-grid{grid-template-columns:1fr}.cl-res-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.cl-persona-bar{flex-direction:column}.cl-priority-grid{grid-template-columns:1fr}.cl-fab{bottom:16px;right:12px;padding:10px 14px;font-size:12px}.cl-fab-icon{width:24px;height:24px;font-size:13px}.cl-drawer-sheet{padding:0 16px 24px}}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:900px){
.auth-wrap{grid-template-columns:1fr}
.auth-left{display:none}
.auth-right{padding:40px 28px}
.dash-layout{grid-template-columns:1fr}
.dash-side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;gap:4px;padding:10px 14px;border-right:none;border-bottom:1px solid var(--border);overflow-x:visible}
.dash-user-card,.side-lbl{display:none}
.dash-signout{border-top:none;margin-top:0;padding-top:0;margin-left:auto}
.dash-signout .side-btn{color:var(--muted);font-size:.79rem;padding:7px 11px;white-space:nowrap}
.side-btn{padding:7px 11px;font-size:.79rem;white-space:nowrap}
.dash-main{padding:22px 16px;height:auto;overflow-y:visible}
.d-stats{grid-template-columns:1fr 1fr}
.d-grid{grid-template-columns:1fr}
.plan-banner{flex-direction:column;align-items:flex-start}
}
@media(max-width:768px){
.nav-links,.nav-right{display:none}
.hamburger{display:flex}
.nav-inner{padding:0 16px}
.footer-grid{grid-template-columns:1fr 1fr;gap:28px}
.footer-brand{grid-column:1/-1}
.hero{padding:52px 20px 70px}
.hero-actions{flex-direction:column;width:100%;max-width:340px;margin-left:auto;margin-right:auto}
.hero-actions .btn{width:100%}
.section{padding:52px 20px}
.pricing-grid{grid-template-columns:1fr !important;max-width:400px !important;margin:0 auto}
.pricing-card{padding:28px}
.cards-3{grid-template-columns:1fr}
.card{padding:24px}
.steps{grid-template-columns:1fr 1fr;gap:24px}
.quote-wrap{padding:48px 20px}
.final-cta{padding:52px 20px}
}
@media(max-width:480px){
.footer-grid{grid-template-columns:1fr}
.d-stats{grid-template-columns:1fr}
.hero h1{font-size:clamp(1.8rem,7vw,2.4rem)}
.steps{grid-template-columns:1fr}
.hero{padding:40px 16px 56px}
.section{padding:40px 16px}
.btn-lg{padding:14px 24px;font-size:.92rem}
.nav-inner{padding:0 12px;gap:10px}
.dash-main{padding:16px 12px}
.stat{padding:14px}
.stat-val{font-size:1.4rem}
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--forest);outline-offset:2px;}

/* ═══ TOOLKIT ENHANCED UX ═══ */

/* Toolbar */
.tk-toolbar-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tk-toolbar-right{display:flex;align-items:center;gap:8px}
.tk-view-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--cream);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .15s;color:var(--muted)}
.tk-view-btn:hover,.tk-view-btn.active{background:#2d5a3d;color:var(--white);border-color:#2d5a3d}
.tk-sort-select{padding:7px 12px;border:1px solid rgba(0,0,0,.055);border-radius:12px;background:#ffffff;font-family:'DM Sans',sans-serif;font-size:.8rem;color:var(--deep);cursor:pointer}

/* Enhanced saved cards */
.tk-drag-handle{width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:grab;color:var(--muted);opacity:.4;transition:opacity .15s;flex-shrink:0}
.tk-drag-handle:active{cursor:grabbing}
.tk-saved-card:hover .tk-drag-handle{opacity:.8}
.tk-action-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(45,90,61,.04);border:none;border-radius:8px;cursor:pointer;transition:all .15s;color:#9a9590}
.tk-action-btn:hover{background:rgba(45,90,61,.1);color:#2d5a3d}
.tk-action-btn svg{width:14px;height:14px}
.tk-card-number{position:absolute;top:8px;left:8px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#2d5a3d;color:var(--white);font-size:.65rem;font-weight:600;border-radius:50%;opacity:.8}

/* Resource Detail Modal Overlay */
.tk-modal-overlay{display:none;position:fixed;inset:0;z-index:1000;background:rgba(6,20,16,.55);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:20px}
.tk-modal-overlay.open{display:flex;animation:tkFadeIn .2s ease}
@keyframes tkFadeIn{from{opacity:0}to{opacity:1}}

/* Resource Detail Modal */
.tk-modal{background:#ffffff;border-radius:24px;width:100%;max-width:680px;box-shadow:0 12px 40px rgba(0,0,0,.14),0 4px 12px rgba(0,0,0,.07);animation:tkSlideUp .25s ease;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}
@keyframes tkSlideUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.tk-modal-header{padding:22px 24px 18px;border-bottom:1px solid rgba(0,0,0,.055);background:#f9f6f0;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-shrink:0}
.tk-modal-header-info{flex:1;min-width:0}
.tk-modal-type-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;padding:3px 10px;border-radius:50px;background:rgba(45,90,61,.08);color:#2d5a3d;margin-bottom:8px;text-transform:uppercase;letter-spacing:.12em}
.tk-modal-title{font-family:'Cormorant Garamond',serif;font-size:var(--text-section-title);font-weight:600;color:var(--deep);line-height:1.3;margin-bottom:4px}
.tk-modal-stage{font-size:.8rem;color:#9a9590;font-weight:300}
.tk-modal-close{width:34px;height:34px;background:rgba(0,0,0,.04);border:none;border-radius:50%;cursor:pointer;font-size:1.1rem;color:var(--muted);display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}
.tk-modal-close:hover{background:rgba(0,0,0,.08);color:var(--deep)}
.tk-modal-body{padding:20px 24px 24px;overflow-y:auto;flex:1}
.tk-modal-desc{font-size:14px;color:var(--deep);line-height:1.7;margin-bottom:20px}
.tk-modal-content-section{margin-bottom:20px}
.tk-modal-content-section h4{font-size:10px;font-weight:600;color:#c8c4be;text-transform:uppercase;letter-spacing:.14em;margin-bottom:10px}
.tk-modal-checklist{list-style:none;padding:0}
.tk-modal-checklist li{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid rgba(0,0,0,.04);font-size:14px;color:var(--deep);line-height:1.55}
.tk-modal-checklist li:last-child{border-bottom:none}
.tk-modal-checklist-icon{width:18px;height:18px;border-radius:50%;background:rgba(45,90,61,.08);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.tk-modal-checklist-icon svg{width:10px;height:10px;stroke:#2d5a3d}
.tk-modal-url{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:#2d5a3d;color:#ffffff;border-radius:18px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;margin-bottom:16px;box-shadow:0 4px 12px rgba(45,90,61,.3)}
.tk-modal-url:hover{background:#1e3d2a;transform:translateY(-1px)}
.tk-modal-footer{padding:14px 24px 18px;border-top:1px solid rgba(0,0,0,.055);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;flex-shrink:0}
.tk-modal-share-btns{display:flex;align-items:center;gap:6px}
.tk-share-btn{padding:7px 14px;border:1px solid rgba(0,0,0,.055);border-radius:14px;background:#ffffff;color:#52504d;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:5px}
.tk-share-btn:hover{border-color:#2d5a3d;color:#2d5a3d;background:rgba(45,90,61,.04)}
.tk-share-btn svg{width:14px;height:14px}
.tk-pdf-btn{padding:8px 18px;border:none;border-radius:18px;background:#2d5a3d;color:#ffffff;font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px;box-shadow:0 4px 12px rgba(45,90,61,.3)}
.tk-pdf-btn:hover{background:#1e3d2a;transform:translateY(-1px)}
.tk-pdf-btn svg{width:15px;height:15px}

/* PDF branded container (hidden, used for generation) */
.tk-pdf-container{position:absolute;left:-9999px;top:0;width:680px;background:#fff;font-family:'DM Sans',sans-serif;color:#061410;padding:40px}
.tk-pdf-logo{display:flex;align-items:center;gap:10px;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #0D3B2E}
.tk-pdf-logo-text{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:600;color:#0D3B2E;letter-spacing:.12em;text-transform:uppercase}
.tk-pdf-title{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:600;color:#061410;margin-bottom:6px}
.tk-pdf-meta{font-size:.82rem;color:#4A6258;margin-bottom:20px}
.tk-pdf-body{font-size:.88rem;line-height:1.7;color:#061410}
.tk-pdf-body h4{font-size:.9rem;font-weight:600;color:#0D3B2E;margin:18px 0 8px}
.tk-pdf-body ul{margin:0 0 14px;padding-left:20px}
.tk-pdf-body li{padding:4px 0;line-height:1.6}
.tk-pdf-footer{margin-top:30px;padding-top:14px;border-top:1px solid #E8F0EB;font-size:.75rem;color:#4A6258;display:flex;justify-content:space-between}

/* Drag and drop placeholder */
.tk-drag-placeholder{border:2px dashed rgba(45,90,61,.3);border-radius:24px;background:rgba(45,90,61,.04);min-height:60px;opacity:.6;transition:all .15s}

@media(max-width:600px){
  .tk-toolbar{flex-direction:column;align-items:stretch}
  .tk-toolbar-right{justify-content:flex-end}
  .tk-modal{border-radius:20px;max-height:85vh}
  .tk-modal-title{font-size:1.15rem}
  .tk-modal-footer{flex-direction:column;gap:8px}
  .tk-modal-share-btns{width:100%;justify-content:center}
  .tk-saved-grid.tk-list-view .tk-saved-card{flex-direction:column;align-items:stretch}
  .tk-saved-grid.tk-list-view .tk-saved-card-actions{margin-left:0}
}

/* ═══════════════ DASHBOARD TOOLKIT TAB (Redesigned) ═══════════════ */
.dtk-header{margin-bottom:24px}
.dtk-header-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:18px}
.dtk-title{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;color:var(--deep);margin-bottom:4px}
.dtk-subtitle{font-size:var(--text-body);color:var(--muted);font-weight:300;line-height:1.6;max-width:520px}
.dtk-header-actions{display:flex;gap:8px;flex-shrink:0}
.dtk-export-all{display:flex;align-items:center;gap:6px;padding:9px 18px;border:1.5px solid var(--forest);border-radius:8px;background:var(--white);color:var(--forest);font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s}
.dtk-export-all:hover{background:var(--forest);color:var(--white)}

.dtk-stage-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:18px 22px;border-radius:var(--r);border-left:4px solid;margin-bottom:0}
.dtk-stage-bar-left{display:flex;align-items:center;gap:12px}
.dtk-stage-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}
.dtk-stage-label{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;line-height:1.2}
.dtk-stage-sub{font-size:.78rem;color:var(--muted);font-weight:300;margin-top:2px}
.dtk-stage-switch{flex-shrink:0}
.dtk-stage-select{padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:.8rem;color:var(--deep);cursor:pointer;min-width:180px}

.dtk-saved-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:14px 20px;background:linear-gradient(135deg,#fff 0%,#fef8f8 100%);border:1.5px solid rgba(226,85,85,.15);border-radius:var(--r);margin-top:20px}
.dtk-saved-banner-left{display:flex;align-items:center;gap:8px}
.dtk-saved-count{font-size:.85rem;font-weight:600;color:var(--deep)}
.dtk-saved-banner-right{display:flex;gap:8px;align-items:center}
.dtk-saved-view-btn{background:none;border:none;color:var(--forest);font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;cursor:pointer;text-decoration:none}
.dtk-saved-view-btn:hover{text-decoration:underline}
.dtk-export-saved-btn{padding:6px 14px;border:1px solid var(--border);border-radius:6px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:500;cursor:pointer;color:var(--deep);transition:all .15s}
.dtk-export-saved-btn:hover{background:var(--cream-dark)}

.dtk-saved-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.dtk-saved-chip{display:flex;align-items:center;gap:6px;padding:7px 14px;background:var(--white);border:1px solid var(--border);border-radius:50px;font-size:.78rem;color:var(--deep);cursor:pointer;transition:all .15s;white-space:nowrap}
.dtk-saved-chip:hover{background:var(--cream);border-color:var(--forest-light)}
.dtk-saved-chip-icon{font-size:.85rem}
.dtk-saved-chip-name{max-width:180px;overflow:hidden;text-overflow:ellipsis}
.dtk-saved-chip-more{color:var(--forest);font-weight:500;border-style:dashed}

/* ── Toolkit Overview: Grouped Saved Items ── */
.dtk-ov-saved-group{margin-top:16px;padding:14px 18px;background:var(--white);border:1px solid var(--border);border-radius:var(--r);box-shadow:0 1px 3px rgba(0,0,0,.03)}
.dtk-ov-saved-group-head{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:8px}
.dtk-ov-saved-group-icon{font-size:1rem}
.dtk-ov-saved-group-label{font-size:.82rem;font-weight:700;color:var(--deep);text-transform:uppercase;letter-spacing:.4px}
.dtk-ov-saved-group-count{font-size:.7rem;color:var(--muted);background:var(--cream);padding:1px 8px;border-radius:20px;margin-left:auto}
.dtk-ov-saved-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 6px;border-bottom:1px solid rgba(0,0,0,.04);transition:background .1s}
.dtk-ov-saved-item:last-child{border-bottom:none}
.dtk-ov-saved-item:hover{background:var(--cream)}
.dtk-ov-saved-item-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.dtk-ov-saved-item-name{font-size:.82rem;font-weight:500;color:var(--deep);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dtk-ov-saved-item-stage{font-size:.7rem;color:var(--muted);white-space:nowrap;flex-shrink:0}
.dtk-ov-saved-item-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:50%;background:transparent;cursor:pointer;transition:background .15s;flex-shrink:0;padding:0}
.dtk-ov-saved-item-remove:hover{background:rgba(226,85,85,.08)}
.dtk-ov-see-more-btn{display:block;width:100%;margin-top:6px;padding:8px;background:none;border:1px dashed var(--border);border-radius:6px;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;color:var(--forest);cursor:pointer;transition:all .15s;text-align:center}
.dtk-ov-see-more-btn:hover{background:var(--cream);border-color:var(--forest-light)}

/* ── Dashboard Home: Saved to Toolkit Card ── */
.dtk-saved-card-wrap{margin-bottom:16px;border:1.5px solid rgba(226,85,85,.15)!important;background:linear-gradient(135deg,#fff 0%,#fef8f8 100%)!important}
.dtk-saved-card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dtk-saved-card-header-left{display:flex;align-items:center;gap:8px}
.dtk-saved-card-count{font-size:.72rem;color:var(--muted);background:var(--cream);padding:1px 8px;border-radius:20px}
.dtk-saved-type-group{margin-top:10px;padding-bottom:6px}
.dtk-saved-type-group+.dtk-saved-type-group{border-top:1px solid var(--border);padding-top:10px}
.dtk-saved-type-group-head{display:flex;align-items:center;gap:6px;margin-bottom:4px}
.dtk-saved-type-label{font-size:.76rem;font-weight:600;color:var(--deep);text-transform:uppercase;letter-spacing:.3px}
.dtk-saved-type-count{font-size:.68rem;color:var(--muted);background:var(--cream);padding:0 6px;border-radius:20px}
.dtk-saved-type-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 4px;border-bottom:1px solid rgba(0,0,0,.03);transition:background .1s}
.dtk-saved-type-item:last-child{border-bottom:none}
.dtk-saved-type-item:hover{background:rgba(226,85,85,.03)}
.dtk-saved-type-item-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
.dtk-saved-type-item-name{font-size:.8rem;font-weight:500;color:var(--deep);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dtk-saved-type-item-stage{font-size:.68rem;color:var(--muted);white-space:nowrap;flex-shrink:0}

.dtk-stage-section{margin-top:24px}
.dtk-stage-divider{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;padding-bottom:10px;border-bottom:2px solid;margin-bottom:20px}
.dtk-stage-divider-icon{font-size:1.1rem}

.dtk-group{margin-bottom:22px}
.dtk-group--alert{background:rgba(204,68,68,.04);border:1px solid rgba(204,68,68,.12);border-radius:var(--r);padding:16px}
.dtk-group-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dtk-group-head-left{display:flex;align-items:center;gap:8px}
.dtk-group-icon{font-size:1rem}
.dtk-group-title{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep)}
.dtk-group-export{display:flex;align-items:center;gap:5px;padding:5px 12px;border:1px solid var(--border);border-radius:6px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:500;cursor:pointer;color:var(--forest);transition:all .15s}
.dtk-group-export:hover{background:var(--forest);color:var(--white);border-color:var(--forest)}
.dtk-group-head-actions{display:flex;align-items:center;gap:6px}
.dtk-group-dismiss{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:var(--white);cursor:pointer;color:#999;transition:all .15s;flex-shrink:0}
.dtk-group-dismiss:hover{background:#fef2f2;border-color:#e25555;color:#e25555}
.dtk-dismissed-banner{background:var(--cream);border:1px solid var(--border);border-radius:var(--r);padding:16px 20px;margin-bottom:20px}
.dtk-dismissed-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.dtk-dismissed-header-left{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:500;color:#4A6258}
.dtk-restore-all-btn{padding:5px 14px;border:1px solid var(--forest);border-radius:6px;background:var(--white);font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:500;cursor:pointer;color:var(--forest);transition:all .15s}
.dtk-restore-all-btn:hover{background:var(--forest);color:var(--white)}
.dtk-dismissed-list{display:flex;flex-wrap:wrap;gap:6px}
.dtk-dismissed-item{display:flex;align-items:center;gap:8px;padding:5px 10px 5px 12px;background:var(--white);border:1px solid var(--border);border-radius:20px;font-size:.76rem;color:#4A6258}
.dtk-dismissed-item-label{white-space:nowrap}
.dtk-restore-btn{padding:2px 8px;border:none;border-radius:4px;background:transparent;font-family:'DM Sans',sans-serif;font-size:.7rem;font-weight:500;cursor:pointer;color:var(--forest);text-decoration:underline;transition:all .15s}
.dtk-restore-btn:hover{background:var(--forest);color:var(--white);text-decoration:none;border-radius:4px}

.dtk-checklist-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:8px;transition:box-shadow .15s}
.dtk-checklist-card:hover{box-shadow:0 1px 4px rgba(0,0,0,.04)}
.dtk-cl-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;transition:background .15s;gap:12px}
.dtk-cl-head:hover{background:var(--cream)}
.dtk-cl-head-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.dtk-cl-icon{font-size:1rem;flex-shrink:0}
.dtk-cl-name{font-size:.88rem;font-weight:600;color:var(--deep);line-height:1.3}
.dtk-cl-count{font-size:.72rem;color:var(--muted);font-weight:300;margin-top:1px}
.dtk-cl-head-right{display:flex;align-items:center;gap:6px;flex-shrink:0}
.dtk-cl-export{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--cream);border:none;border-radius:6px;cursor:pointer;color:var(--muted);transition:all .15s}
.dtk-cl-export:hover{background:var(--forest-pale);color:var(--forest)}
.dtk-cl-chevron{display:flex;align-items:center;color:var(--muted);transition:transform .2s}
.dtk-checklist-card.dtk-open .dtk-cl-chevron{transform:rotate(180deg)}

.dtk-cl-body{display:none;padding:0 18px 16px;border-top:1px solid var(--border)}
.dtk-checklist-card.dtk-open .dtk-cl-body{display:block}
.dtk-cl-desc{font-size:.84rem;color:var(--muted);line-height:1.65;padding:12px 0 8px;font-weight:300}
.dtk-cl-list{list-style:none;padding:0;margin:0}
.dtk-cl-list li{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px solid rgba(13,59,46,.05);font-size:.84rem;color:var(--deep);line-height:1.55}
.dtk-cl-list li:last-child{border-bottom:none}
.dtk-cl-check{width:18px;height:18px;border-radius:50%;background:var(--forest-pale);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.dtk-cl-check svg{width:10px;height:10px;stroke:var(--forest)}
.dtk-cl-check--legal{background:rgba(139,115,85,.1)}
.dtk-cl-check--legal svg{stroke:var(--warm,#8B7355)}

.dtk-conv-script{font-size:.88rem;color:var(--deep);line-height:1.7;padding:12px 16px;background:var(--forest-pale);border-radius:var(--r-sm);margin:10px 0 14px;border-left:3px solid var(--forest)}
.dtk-conv-section-label{font-size:.74rem;font-weight:600;color:var(--forest);text-transform:uppercase;letter-spacing:.04em;margin:14px 0 8px}
.dtk-conv-objection{padding:10px 14px;background:var(--cream);border-radius:var(--r-sm);margin-bottom:8px;font-size:.84rem;line-height:1.55}
.dtk-conv-they{color:var(--muted);margin-bottom:4px}
.dtk-conv-you{color:var(--deep)}

.dtk-warning-list{display:flex;flex-direction:column;gap:6px}
.dtk-warning-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:rgba(232,168,124,.06);border:1px solid rgba(232,168,124,.15);border-radius:var(--r-sm);font-size:.84rem;color:var(--deep);line-height:1.5}
.dtk-warning-dot{width:8px;height:8px;border-radius:50%;background:#E8A87C;flex-shrink:0;margin-top:5px}

.dtk-res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.dtk-res-card{display:block;padding:16px;background:var(--white);border:1px solid var(--border);border-radius:var(--r);text-decoration:none;transition:all .15s}
.dtk-res-card:hover{border-color:var(--forest-light);box-shadow:0 2px 8px rgba(0,0,0,.06);transform:translateY(-1px)}
.dtk-res-name{font-size:.88rem;font-weight:600;color:var(--deep);margin-bottom:4px}
.dtk-res-desc{font-size:.78rem;color:var(--muted);line-height:1.5;margin-bottom:8px}
.dtk-res-link{font-size:.76rem;color:var(--forest);font-weight:500}

.dtk-selfcare-list{display:flex;flex-direction:column;gap:6px}
.dtk-selfcare-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:rgba(42,125,85,.04);border:1px solid rgba(42,125,85,.1);border-radius:var(--r-sm);font-size:.84rem;color:var(--deep);line-height:1.5}
.dtk-selfcare-dot{flex-shrink:0}

.dtk-redflag-list{display:flex;flex-direction:column;gap:6px}
.dtk-redflag-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0;font-size:.84rem;color:#8B3A3A;line-height:1.5}
.dtk-redflag-dot{flex-shrink:0}

.dtk-footer{margin-top:28px;padding:0}
.dtk-footer-inner{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--forest-pale);border:1px solid rgba(13,59,46,.1);border-radius:var(--r);flex-wrap:wrap}
.dtk-footer-icon{width:44px;height:44px;border-radius:12px;background:rgba(13,59,46,.08);display:flex;align-items:center;justify-content:center;color:var(--forest);flex-shrink:0}
.dtk-footer-inner h4{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin:0 0 2px}
.dtk-footer-inner p{font-size:.82rem;color:var(--muted);margin:0;font-weight:300;line-height:1.5}
.dtk-footer-inner .btn{margin-left:auto;flex-shrink:0}

/* Toolkit Tab Navigation */
.dtk-tabs{display:flex;gap:4px;padding:4px;background:var(--cream);border-radius:12px;margin-bottom:24px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.dtk-tab{display:flex;align-items:center;gap:7px;padding:10px 18px;border:none;border-radius:9px;background:transparent;font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all .18s;white-space:nowrap;flex-shrink:0}
.dtk-tab:hover{background:rgba(255,255,255,.6);color:var(--deep)}
.dtk-tab-active{background:var(--white);color:var(--forest);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.dtk-tab-icon{display:flex;align-items:center;flex-shrink:0}
.dtk-tab-label{line-height:1}

/* Toolkit Overview Cards */
.dtk-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:20px}
.dtk-overview-card{display:flex;align-items:center;gap:14px;padding:18px 20px;background:var(--white);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;transition:all .18s}
.dtk-overview-card:hover{border-color:var(--forest-light);box-shadow:0 2px 10px rgba(0,0,0,.06);transform:translateY(-1px)}
.dtk-ov-card-icon{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dtk-ov-card-info{flex:1;min-width:0}
.dtk-ov-card-info h3{font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--deep);margin:0 0 3px}
.dtk-ov-card-info p{font-size:.78rem;color:var(--muted);margin:0;line-height:1.4;font-weight:300}
.dtk-ov-card-progress{display:flex;align-items:center;gap:8px;flex-shrink:0}
.dtk-ov-progress-bar{height:6px;background:var(--cream-dark,#e8e4dc);border-radius:3px;overflow:hidden;flex:1;min-width:60px}
.dtk-ov-progress-fill{height:100%;border-radius:3px;transition:width .3s}
.dtk-ov-progress-pct{font-size:.72rem;color:var(--muted);font-weight:500;white-space:nowrap}
.dtk-ov-card-arrow{color:var(--muted);flex-shrink:0;opacity:.4;transition:opacity .15s}
.dtk-overview-card:hover .dtk-ov-card-arrow{opacity:.8}

/* Toolkit Shopping Cards */
.dtk-shopping-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.dtk-shopping-card{padding:18px;background:var(--white);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;transition:all .18s}
.dtk-shopping-card:hover{border-color:var(--forest-light);box-shadow:0 2px 8px rgba(0,0,0,.06);transform:translateY(-1px)}
.dtk-shopping-card-top{margin-bottom:8px}
.dtk-shopping-card-cond{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.dtk-shopping-card-title{font-size:.88rem;font-weight:600;color:var(--deep);line-height:1.3}
.dtk-shopping-card-stats{font-size:.76rem;color:var(--muted);font-weight:300}
.dtk-shopping-checked-list{display:flex;flex-direction:column;gap:6px}
.dtk-shopping-checked-item{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--white);border:1px solid var(--border);border-radius:var(--r-sm)}

/* Empty tab state */
.dtk-empty-tab{padding:40px 20px;text-align:center;color:var(--muted);font-size:.88rem}

/* Interactive checkboxes for dashboard toolkit checklists */
.dtk-cl-checkbox{width:18px;height:18px;min-width:18px;border:2px solid var(--forest);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;transition:all .15s}
.dtk-cl-checkbox svg{width:10px;height:10px}
.dtk-cl-item-row{cursor:pointer;transition:opacity .15s}
.dtk-cl-item-row:hover{background:rgba(13,59,46,.03);border-radius:4px;margin:-2px -4px;padding:2px 4px}
.dtk-cl-item-done{opacity:.55}
.dtk-cl-progress-mini{display:flex;align-items:center;gap:6px}

/* Remove button on saved chips in dashboard toolkit */
.dtk-saved-chip{position:relative}
.dtk-saved-chip-content{display:flex;align-items:center;gap:6px;cursor:pointer;flex:1;overflow:hidden}
.dtk-saved-chip-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:transparent;color:var(--muted);cursor:pointer;border-radius:50%;padding:0;flex-shrink:0;transition:all .15s;opacity:.5}
.dtk-saved-chip-remove:hover{background:rgba(226,85,85,.1);color:#e25555;opacity:1}

/* Interactive checkboxes in toolkit modal */
.tk-modal-check-row{cursor:pointer;transition:background .15s;border-radius:4px;padding:4px 2px}
.tk-modal-check-row:hover{background:rgba(13,59,46,.04)}
.tk-modal-check-done{opacity:.55}

/* ══ TOOLKIT REDESIGN: Pearly Sage Banner ══ */
.tk-banner{position:relative;background:linear-gradient(140deg,#dce8e0 0%,#e8f1eb 35%,#f0f7f2 65%,#eaf3ed 100%);padding:calc(var(--nav) + 3.5rem) 3.5rem 3.5rem;border-bottom:1px solid rgba(45,90,61,.1);box-shadow:0 4px 24px rgba(45,90,61,.06);overflow:hidden}
.tk-banner::before{content:'';position:absolute;inset:0;background-image:radial-gradient(ellipse at 20% 30%,rgba(255,255,255,.7) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(255,255,255,.5) 0%,transparent 45%);pointer-events:none}
.tk-banner-content{position:relative;z-index:1;max-width:900px;margin:0 auto}
.tk-banner-eyebrow{font-size:11px;letter-spacing:.16em;color:rgba(45,90,61,.5);text-transform:uppercase;margin-bottom:12px;font-weight:500}
.tk-banner-title{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:400;color:#1a2e22;margin-bottom:10px;line-height:1.15}
.tk-banner-title em{font-style:italic;color:#2d5a3d}
.tk-banner-subtitle{font-size:14px;color:rgba(30,61,42,.6);font-weight:300;line-height:1.65;max-width:560px}
@media(max-width:600px){
  .tk-banner{padding:calc(var(--nav) + 2rem) 1.5rem 2rem}
  .tk-banner-title{font-size:32px}
  .tk-banner-subtitle{display:none}
}

/* ══ TOOLKIT REDESIGN: Updated Card Styles ══ */
.tk-section{background:#ffffff;border:1px solid rgba(0,0,0,0.055);border-radius:24px;overflow:hidden;margin-bottom:16px;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);transition:all .2s}
.tk-section:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,.1),0 2px 6px rgba(0,0,0,.05)}
.tk-head{background:#f9f6f0;border-bottom:1px solid rgba(0,0,0,.055)}
.tk-cta{margin-top:26px;background:#ffffff;border-radius:24px;padding:30px;text-align:center;border:1px solid rgba(0,0,0,0.055);box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04)}

/* ══ TOOLKIT REDESIGN: Saved Items Card Grid ══ */
.tk-saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.tk-saved-card{background:#ffffff;border:1px solid rgba(0,0,0,0.055);border-radius:24px;padding:1.25rem 1.5rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:8px;transition:all .2s;cursor:pointer;position:relative}
.tk-saved-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,.1),0 2px 6px rgba(0,0,0,.05)}
.tk-saved-card.dragging{opacity:.5;transform:scale(.97);box-shadow:0 12px 40px rgba(0,0,0,.14)}
.tk-saved-card.drag-over{border-color:#2d5a3d;box-shadow:0 0 0 2px rgba(45,90,61,.15)}
.tk-saved-card-name{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:var(--deep);line-height:1.3}
.tk-saved-card-desc{font-size:13px;color:#52504d;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tk-saved-card-stage{font-size:11px;color:#9a9590;font-weight:300;margin-top:2px}
.tk-saved-card-state{font-size:11px;color:#9a9590;font-weight:300;margin-top:1px}
.tk-remove-btn{position:absolute;top:12px;right:12px;background:none;border:none;cursor:pointer;padding:4px;border-radius:50%;color:var(--muted);transition:all .2s;display:flex;align-items:center;justify-content:center;opacity:.5}
.tk-remove-btn:hover{color:#e25555;opacity:1;background:rgba(226,85,85,.08)}
.tk-saved-card-top{display:flex;align-items:flex-start;gap:8px}
.tk-saved-card-info{flex:1;min-width:0}
.tk-saved-card-actions{display:flex;align-items:center;gap:4px;margin-top:auto;padding-top:8px}

/* Saved section header */
.tk-saved-header{margin-bottom:20px}
.tk-saved-header-left{display:flex;align-items:center;gap:10px}
.tk-saved-section{margin-bottom:36px}

/* Type eyebrow label on saved cards */
.tk-saved-card-type-label{font-size:10px;letter-spacing:.12em;color:#c8c4be;text-transform:uppercase;font-weight:500;margin-bottom:2px}
.tk-saved-card-source{font-size:11px;color:#9a9590;font-weight:300;margin-top:auto;padding-top:4px}

/* ══ TOOLKIT REDESIGN: Toolbar ══ */
.tk-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:14px 18px;background:#ffffff;border:1px solid rgba(0,0,0,0.055);border-radius:24px;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04)}

/* ══ TOOLKIT REDESIGN: Group heads ══ */
.tk-saved-group{margin-bottom:24px}
.tk-saved-group-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid rgba(0,0,0,.055)}
.tk-saved-group-icon{font-size:1rem}
.tk-saved-group-label{font-size:10px;font-weight:700;color:#c8c4be;text-transform:uppercase;letter-spacing:.14em}

/* ══ TOOLKIT REDESIGN: Empty state ══ */
.tk-empty-state{text-align:center;padding:48px 24px;background:#ffffff;border:2px dashed rgba(0,0,0,.055);border-radius:24px;margin-bottom:32px;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04)}

/* ══ TOOLKIT REDESIGN: Primary Buttons ══ */
#toolkit-page .btn-primary,.tk-cta .btn-primary{background:#2d5a3d;border-radius:18px;padding:10px 24px;box-shadow:0 4px 12px rgba(45,90,61,.3);border:none;color:#fff;font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}
#toolkit-page .btn-primary:hover,.tk-cta .btn-primary:hover{background:#1e3d2a;transform:translateY(-2px);box-shadow:0 6px 16px rgba(45,90,61,.4)}
.tk-export-all-btn{padding:7px 16px;border:1.5px solid #2d5a3d;border-radius:18px;background:#ffffff;color:#2d5a3d;font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}
.tk-export-all-btn:hover{background:#2d5a3d;color:#ffffff;transform:translateY(-1px)}

/* ══ TOOLKIT REDESIGN: Typography ══ */
#toolkit-page .tk-section .tk-ttl h2{font-family:'Cormorant Garamond',serif}
#toolkit-page .tk-section .tk-ttl p{font-size:14px;color:#52504d;font-weight:300}
#toolkit-page .tk-itxt h3{font-size:14px;font-weight:500;color:var(--deep)}
#toolkit-page .tk-itxt p{font-size:13px;color:#9a9590;font-weight:300}
#toolkit-page .tk-tag{font-size:10px;letter-spacing:.14em;font-weight:500;padding:3px 10px;background:rgba(45,90,61,.06);color:#2d5a3d;border-radius:50px;white-space:nowrap;text-transform:uppercase}

/* ══ TOOLKIT REDESIGN: AI Suggestions ══ */
.tk-ai-section{margin-bottom:36px;margin-top:12px}
.tk-ai-section-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:#1a2e22;margin-bottom:6px}
.tk-ai-section-subtitle{font-size:13px;color:#9a9590;font-weight:300;margin-bottom:20px}
.tk-ai-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.tk-ai-card{background:#ffffff;border:1px solid rgba(0,0,0,0.055);border-radius:24px;padding:1.25rem 1.5rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);transition:all .2s}
.tk-ai-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,.1),0 2px 6px rgba(0,0,0,.05)}
.tk-ai-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.tk-ai-card-icon{font-size:28px;margin-bottom:8px}
.tk-ai-card-eyebrow{font-size:10px;letter-spacing:.12em;color:#c8c4be;text-transform:uppercase;font-weight:500}
.tk-ai-card-title{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:600;color:#1a2e22;margin-bottom:8px}
.tk-ai-card-body{font-size:13px;color:#52504d;line-height:1.65;font-weight:300}
.tk-ai-card-body ul{list-style:none;padding:0;margin:0}
.tk-ai-card-body li{padding:6px 0;border-bottom:1px solid rgba(0,0,0,.04);display:flex;align-items:flex-start;gap:8px;line-height:1.5}
.tk-ai-card-body li:last-child{border-bottom:none}
.tk-ai-card-body li::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#2d5a3d;flex-shrink:0;margin-top:7px}
.tk-ai-refresh{background:none;border:none;cursor:pointer;color:#9a9590;font-size:16px;padding:4px;border-radius:50%;transition:all .2s;display:flex;align-items:center;justify-content:center}
.tk-ai-refresh:hover{color:#2d5a3d;background:rgba(45,90,61,.06)}
.tk-ai-refresh.spinning{animation:tkAiSpin .8s linear infinite}
@keyframes tkAiSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.tk-ai-loading{display:flex;align-items:center;justify-content:center;padding:24px;color:#9a9590;font-size:13px;gap:8px}
.tk-ai-loading::before{content:'';display:inline-block;width:16px;height:16px;border:2px solid rgba(45,90,61,.15);border-top-color:#2d5a3d;border-radius:50%;animation:tkAiSpin .8s linear infinite}

/* ══ TOOLKIT REDESIGN: List view override ══ */
.tk-saved-grid.tk-list-view{grid-template-columns:1fr;gap:8px}
.tk-saved-grid.tk-list-view .tk-saved-card{flex-direction:row;align-items:center;padding:12px 16px;gap:14px;border-radius:16px}
.tk-saved-grid.tk-list-view .tk-saved-card-desc{display:none}
.tk-saved-grid.tk-list-view .tk-saved-card-actions{margin-top:0;padding-top:0;margin-left:auto}

@media(max-width:600px){
  .tk-saved-grid{grid-template-columns:1fr}
  .tk-ai-grid{grid-template-columns:1fr}
  .tk-saved-grid.tk-list-view .tk-saved-card{flex-direction:column;align-items:stretch;border-radius:24px}
  .tk-saved-grid.tk-list-view .tk-saved-card-actions{margin-left:0}
  .tk-toolbar{flex-direction:column;align-items:stretch}
  .tk-toolbar-right{justify-content:flex-end}
}

@media(max-width:600px){
  .dtk-header-top{flex-direction:column}
  .dtk-stage-bar{flex-direction:column;align-items:stretch}
  .dtk-stage-switch{width:100%}
  .dtk-stage-select{width:100%}
  .dtk-saved-banner{flex-direction:column;align-items:stretch}
  .dtk-saved-banner-right{justify-content:flex-start}
  .dtk-res-grid{grid-template-columns:1fr}
  .dtk-footer-inner{flex-direction:column;text-align:center}
  .dtk-footer-inner .btn{margin-left:0}
  .dtk-tabs{gap:2px;padding:3px}
  .dtk-tab{padding:8px 12px;font-size:.76rem;gap:5px}
  .dtk-tab-label{display:none}
  .dtk-overview-grid{grid-template-columns:1fr}
  .dtk-shopping-grid{grid-template-columns:1fr}
  .dtk-overview-card{padding:14px 16px}
  .dtk-ov-saved-group{padding:10px 12px}
  .dtk-ov-saved-item-name{max-width:180px}
  .dtk-saved-type-item-name{max-width:160px}
  .dtk-saved-card-header{flex-direction:column;align-items:stretch}
}

/* ── CAEVO AI Suggestions – Toolkit Overview */
.dtk-ai-wrap{margin-top:28px;padding-top:24px;border-top:1.5px solid var(--border)}
.dtk-ai-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}
.dtk-ai-header-left{display:flex;align-items:flex-start;gap:12px}
.dtk-ai-spark{font-size:1.3rem;color:var(--forest);line-height:1;margin-top:2px;flex-shrink:0}
.dtk-ai-title{font-family:'Cormorant Garamond',serif;font-size:1.22rem;font-weight:600;color:var(--deep);line-height:1.2;margin-bottom:3px}
.dtk-ai-subtitle{font-size:.78rem;color:var(--muted);line-height:1.4}
.dtk-ai-refresh-all{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:50px;border:1.5px solid var(--border);background:white;color:var(--forest);font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .18s;white-space:nowrap;flex-shrink:0}
.dtk-ai-refresh-all:hover{border-color:var(--forest);background:var(--forest-pale)}
.dtk-ai-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(max-width:600px){.dtk-ai-grid{grid-template-columns:1fr}}
.dtk-ai-card{background:white;border-radius:14px;border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:16px 18px;transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden}
.dtk-ai-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,59,46,.025) 0%,transparent 60%);pointer-events:none}
.dtk-ai-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.dtk-ai-card-top{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.dtk-ai-card-icon{font-size:1.25rem;line-height:1;flex-shrink:0}
.dtk-ai-card-label{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--deep)}
.dtk-ai-card-content{min-height:72px}
.dtk-ai-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}
.dtk-ai-list li{font-size:.84rem;color:var(--deep);line-height:1.45;padding-left:14px;position:relative}
.dtk-ai-list li::before{content:'–';position:absolute;left:0;color:var(--forest-light);font-weight:600}
.dtk-ai-shimmer{height:12px;background:linear-gradient(90deg,var(--cream-dark) 25%,rgba(245,242,236,.6) 50%,var(--cream-dark) 75%);background-size:200% 100%;border-radius:6px;margin-bottom:8px;animation:dtkShimmer 1.4s infinite}
.dtk-ai-shimmer--sm{height:10px;width:75%}
@keyframes dtkShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.dtk-ai-error{font-size:.82rem;color:var(--muted);padding:8px 0}
.dtk-ai-error button{background:none;border:none;color:var(--forest);font-size:.82rem;cursor:pointer;text-decoration:underline;font-family:'DM Sans',sans-serif;padding:0}

/* ═══════ CARE CENTER ═══════ */
#dsec-family-command .fcc-app {font-family:var(--font-body);position:relative;min-height:600px;
  --deep:#0D3B2E;--mid:#1A5C42;--green:#2A7D55;--sage:#7AAB8A;
  --sage-light:#B0CDB8;--sage-pale:#D4E8DC;--cream:#F4F7F5;
  --cream-dark:#E6F0EA;--white:#FFFFFF;--ink:#182820;--ink-mid:#3D5445;
  --muted:#7A9B84;--border:rgba(106,171,138,0.18);--border-mid:rgba(106,171,138,0.32);
  --shadow-sm:0 2px 8px rgba(13,59,46,0.07);--shadow:0 6px 24px rgba(13,59,46,0.10);
  --shadow-lg:0 16px 56px rgba(13,59,46,0.16);--r:12px;--r-sm:8px;
}


/* ── AUTH SCREEN ── */
#dsec-family-command .fcc-app .auth-screen{position:absolute;inset:0;background:var(--deep);display:flex;align-items:center;justify-content:center;z-index:50;padding:24px;min-height:500px}
#dsec-family-command .fcc-app .auth-screen.hidden{display:none}
#dsec-family-command .fcc-app .auth-box{background:var(--white);border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-lg)}
#dsec-family-command .fcc-app .auth-logo{display:flex;align-items:center;gap:12px;margin-bottom:28px}
#dsec-family-command .fcc-app .auth-logo-word{font-family:var(--font-display);font-size:1.75rem;font-weight:600;letter-spacing:1px}
#dsec-family-command .fcc-app .auth-logo-word .lc{color:var(--deep)}.auth-logo-word .la{color:#2a7a50}.auth-logo-word .le{color:#5a9870}.auth-logo-word .lv{color:#7aab8a}.auth-logo-word .lo{color:#9abea8}
#dsec-family-command .fcc-app .auth-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep);margin-bottom:6px}
#dsec-family-command .fcc-app .auth-sub{font-size:12px;color:var(--muted);margin-bottom:24px;line-height:1.5}
#dsec-family-command .fcc-app .auth-tabs{display:flex;gap:0;margin-bottom:24px;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}
#dsec-family-command .fcc-app .auth-tab{flex:1;padding:9px;text-align:center;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;color:var(--muted);background:transparent;border:none;transition:all .2s}
#dsec-family-command .fcc-app .auth-tab.active{background:var(--deep);color:var(--white)}
#dsec-family-command .fcc-app .auth-field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
#dsec-family-command .fcc-app .auth-field label{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600}
#dsec-family-command .fcc-app .auth-field input{background:var(--cream);border:1px solid var(--border-mid);border-radius:var(--r-sm);padding:11px 14px;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);outline:none;transition:all .18s}
#dsec-family-command .fcc-app .auth-field input:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(122,171,138,0.14);background:var(--white)}
#dsec-family-command .fcc-app .auth-btn{width:100%;padding:13px;background:var(--mid);color:var(--white);border:none;border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:background .2s;margin-top:6px}
#dsec-family-command .fcc-app .auth-btn:hover{background:var(--deep)}
#dsec-family-command .fcc-app .auth-btn:disabled{opacity:.5;cursor:default}
#dsec-family-command .fcc-app .auth-err{font-size:12px;color:#c0392b;margin-top:8px;text-align:center;min-height:18px}
#dsec-family-command .fcc-app .auth-note{font-size:11px;color:var(--muted);text-align:center;margin-top:16px;line-height:1.5}

/* ── LOADING ── */
#dsec-family-command .fcc-app .loading-bar{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--deep),var(--sage),var(--deep));background-size:200%;animation:loadBar 1.2s linear infinite;z-index:600;display:none}
#dsec-family-command .fcc-app .loading-bar.show{display:block}
@keyframes loadBar{0%{background-position:0%}100%{background-position:200%}}

/* ── SYNC STATUS ── */
#dsec-family-command .fcc-app .sync-pill{display:flex;align-items:center;gap:5px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;padding:4px 10px;border-radius:12px;transition:all .3s}
#dsec-family-command .fcc-app .sync-pill.synced{color:var(--sage-light);background:rgba(122,171,138,0.1)}
#dsec-family-command .fcc-app .sync-pill.syncing{color:#f0c060;background:rgba(240,192,96,0.12)}
#dsec-family-command .fcc-app .sync-pill.error{color:#e07070;background:rgba(224,112,112,0.12)}
#dsec-family-command .fcc-app .sync-dot{width:6px;height:6px;border-radius:50%;background:currentColor}
#dsec-family-command .fcc-app .sync-pill.syncing .sync-dot{animation:pulse 1s ease-in-out infinite}

/* ── HEADER ── */
#dsec-family-command .fcc-app .header{position:sticky;top:0;z-index:100;background:rgba(244,247,245,0.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(13,59,46,0.10);padding:0 28px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:16px}
#dsec-family-command .fcc-app .header-logo{display:flex;align-items:center;gap:11px}
#dsec-family-command .fcc-app .logo-c{width:30px;height:30px;flex-shrink:0}
#dsec-family-command .fcc-app .logo-word{font-family:var(--font-display);font-size:1.375rem;font-weight:600;line-height:1;letter-spacing:1px}
#dsec-family-command .fcc-app .logo-word .lc{color:#0D3B2E}.logo-word .la{color:#1A5C42}.logo-word .le{color:#2A7D55}.logo-word .lv{color:#7AAB8A}.logo-word .lo{color:#B0CDB8}
#dsec-family-command .fcc-app .logo-sub{font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--muted);font-weight:300;margin-top:2px}
#dsec-family-command .fcc-app .header-right{display:flex;align-items:center;gap:12px}
#dsec-family-command .fcc-app .week-chrome{display:flex;align-items:center;gap:10px}
#dsec-family-command .fcc-app .wk-btn{width:30px;height:30px;border-radius:50%;border:1px solid rgba(13,59,46,0.15);background:transparent;color:var(--mid);cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center;transition:all .18s}
#dsec-family-command .fcc-app .wk-btn:hover:not(:disabled){background:rgba(13,59,46,0.06);color:var(--deep)}
#dsec-family-command .fcc-app .wk-btn:disabled{opacity:.25;cursor:default}
#dsec-family-command .fcc-app .wk-label{font-size:11px;font-weight:500;color:var(--ink);letter-spacing:.5px;min-width:168px;text-align:center}
#dsec-family-command .fcc-app .history-trigger{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:20px;border:1px solid rgba(13,59,46,0.15);background:transparent;color:var(--mid);font-family:var(--font-body);font-size:var(--text-label);font-weight:500;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .18s}
#dsec-family-command .fcc-app .history-trigger:hover{background:rgba(13,59,46,0.05);color:var(--deep)}
#dsec-family-command .fcc-app .hist-dot{width:7px;height:7px;border-radius:50%;background:var(--sage);animation:pulse 2.4s ease-in-out infinite}
#dsec-family-command .fcc-app .signout-btn{background:none;border:none;color:var(--muted);font-size:var(--text-label);letter-spacing:1px;text-transform:uppercase;cursor:pointer;padding:6px 10px;border-radius:6px;transition:all .18s;font-family:var(--font-body)}
#dsec-family-command .fcc-app .signout-btn:hover{color:var(--deep);background:rgba(13,59,46,0.04)}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}

/* ── MAIN ── */
#dsec-family-command .fcc-app .main{max-width:1160px;margin:0 auto;padding:28px 20px 100px}
#dsec-family-command .fcc-app .page-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px;animation:fadeUp .6s ease both}
#dsec-family-command .fcc-app .intro-left h1{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;color:var(--deep);line-height:1.1}
#dsec-family-command .fcc-app .intro-left h1 em{font-style:italic;color:var(--green)}
#dsec-family-command .fcc-app .intro-left p{margin-top:6px;font-size:13px;color:var(--muted);font-weight:300;max-width:400px;line-height:1.55}
#dsec-family-command .fcc-app .care-profile-badge{flex-shrink:0;background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:12px 18px;text-align:right;box-shadow:var(--shadow-sm)}
#dsec-family-command .fcc-app .cpb-label{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:500}
#dsec-family-command .fcc-app .cpb-name{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep);line-height:1.2;margin-top:2px}
#dsec-family-command .fcc-app .cpb-id{font-size:10px;color:var(--muted);margin-top:3px;font-family:monospace}

/* ── LOVED ONES BAR ── */
#dsec-family-command .fcc-app .lo-bar{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;box-shadow:var(--shadow-sm);animation:fadeUp .6s .08s ease both}
#dsec-family-command .fcc-app .lo-bar-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
#dsec-family-command .fcc-app .lo-bar-label{font-size:9px;letter-spacing:3.5px;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-weight:500}
#dsec-family-command .fcc-app .lo-divider{width:1px;height:24px;background:var(--border);flex-shrink:0}
#dsec-family-command .fcc-app .lo-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}
#dsec-family-command .fcc-app .lo-empty-hint{font-size:12px;color:var(--muted);font-style:italic;font-weight:300}
#dsec-family-command .fcc-app .lo-chip{display:flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;background:var(--cream-dark);border:1px solid var(--border);border-radius:20px;transition:all .18s;animation:cardIn .3s ease;cursor:pointer}
#dsec-family-command .fcc-app .lo-chip:hover{border-color:var(--sage)}
#dsec-family-command .fcc-app .lo-chip.lo-chip-active{background:var(--forest-pale);border-color:var(--forest);box-shadow:0 2px 8px rgba(13,59,46,.15)}
#dsec-family-command .fcc-app .lo-chip.lo-chip-active .lo-chip-av{background:var(--forest);box-shadow:0 0 0 2px var(--forest-pale),0 0 0 3px var(--forest)}
#dsec-family-command .fcc-app .lo-chip.lo-chip-active .lo-chip-name{color:var(--forest)}
#dsec-family-command .fcc-app .lo-chip-av{width:24px;height:24px;border-radius:50%;background:var(--forest);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
#dsec-family-command .fcc-app .lo-chip-name{font-size:12px;font-weight:600;color:var(--deep);white-space:nowrap}
#dsec-family-command .fcc-app .lo-chip-tag{font-size:9px;padding:2px 7px;border-radius:10px;font-weight:600;letter-spacing:.5px;white-space:nowrap}
#dsec-family-command .fcc-app .lo-chip-tag.sick{background:#fde8e8;color:#b91c1c}
#dsec-family-command .fcc-app .lo-chip-tag.aging{background:#fef3c7;color:#92400e}
#dsec-family-command .fcc-app .lo-chip-rel{font-size:10px;color:var(--muted);font-weight:300;white-space:nowrap}
#dsec-family-command .fcc-app .lo-chip-del{background:none;border:none;color:var(--muted);font-size:14px;cursor:pointer;padding:0 2px;line-height:1;transition:color .18s;display:flex;align-items:center}
#dsec-family-command .fcc-app .lo-chip-del:hover{color:#c0392b}
#dsec-family-command .fcc-app .lo-add-btn{display:flex;align-items:center;gap:5px;padding:7px 14px;border-radius:20px;background:var(--cream-dark);border:1px solid var(--border);font-family:var(--font-body);font-size:var(--text-label);font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--mid);cursor:pointer;transition:all .18s;white-space:nowrap;flex-shrink:0}
#dsec-family-command .fcc-app .lo-add-btn:hover{background:var(--sage-pale);border-color:var(--sage)}

/* ── LOVED ONE MODAL ── */
#dsec-family-command .fcc-app .lo-modal-overlay{display:none;position:fixed;inset:0;background:rgba(6,20,16,0.6);backdrop-filter:blur(4px);z-index:1000;align-items:center;justify-content:center;padding:20px}
#dsec-family-command .fcc-app .lo-modal-overlay.open{display:flex}
#dsec-family-command .fcc-app .lo-modal{background:var(--white);border-radius:20px;width:100%;max-width:480px;box-shadow:0 24px 80px rgba(0,0,0,.25);overflow:hidden;animation:cardIn .3s ease}
#dsec-family-command .fcc-app .lo-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border)}
#dsec-family-command .fcc-app .lo-modal-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .lo-modal-close{background:var(--cream-dark);border:none;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:18px;color:var(--muted);transition:all .18s}
#dsec-family-command .fcc-app .lo-modal-close:hover{background:var(--cream);color:var(--deep)}
#dsec-family-command .fcc-app .lo-modal-body{padding:20px 24px}
#dsec-family-command .fcc-app .lo-modal-desc{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 18px;font-weight:300}
#dsec-family-command .fcc-app .lo-sit-opts{display:flex;gap:10px}
#dsec-family-command .fcc-app .lo-sit-opt{flex:1;padding:10px 14px;border-radius:10px;border:1.5px solid var(--border-mid);background:var(--white);cursor:pointer;font-family:var(--font-body);font-size:var(--text-caption);font-weight:600;color:var(--muted);text-align:center;transition:all .2s}
#dsec-family-command .fcc-app .lo-sit-opt.active{border-color:var(--forest);background:var(--forest-pale);color:var(--forest)}
#dsec-family-command .fcc-app .lo-sit-opt:hover:not(.active){border-color:var(--sage)}
#dsec-family-command .fcc-app .lo-modal-footer{display:flex;gap:9px;justify-content:flex-end;padding:16px 24px 20px;border-top:1px solid var(--border)}
#dsec-family-command .fcc-app .lo-share-note{display:flex;align-items:flex-start;gap:8px;background:var(--forest-pale);border:1px solid rgba(13,59,46,0.15);border-radius:10px;padding:10px 14px;margin-top:16px;font-size:11px;color:var(--forest);line-height:1.5}
#dsec-family-command .fcc-app .lo-share-note svg{flex-shrink:0;margin-top:1px}

/* ── LOVED ONE PROFILE CARD ── */
#dsec-family-command .fcc-app .lop-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px 22px;margin-bottom:14px;box-shadow:var(--shadow-sm);animation:fadeUp .5s ease both}
#dsec-family-command .fcc-app .lop-setup{text-align:center;padding:18px 0}
#dsec-family-command .fcc-app .lop-setup-icon{font-size:36px;margin-bottom:10px}
#dsec-family-command .fcc-app .lop-setup-text{font-size:13px;color:var(--muted);line-height:1.6;max-width:360px;margin:0 auto 16px}
#dsec-family-command .fcc-app .lop-setup-btn{padding:10px 22px;border-radius:10px;background:var(--forest);color:var(--white);border:none;font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}
#dsec-family-command .fcc-app .lop-setup-btn:hover{background:var(--forest-mid)}
#dsec-family-command .fcc-app .lop-display-top{display:flex;align-items:center;gap:16px}
#dsec-family-command .fcc-app .lop-photo{width:56px;height:56px;border-radius:50%;background:var(--forest-pale);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;overflow:hidden}
#dsec-family-command .fcc-app .lop-photo img{width:100%;height:100%;object-fit:cover}
#dsec-family-command .fcc-app .lop-info{flex:1;min-width:0}
#dsec-family-command .fcc-app .lop-name{font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .lop-meta{font-size:12px;color:var(--muted);margin-top:2px}
#dsec-family-command .fcc-app .lop-stage-badge{display:inline-block;margin-top:5px;padding:3px 10px;border-radius:12px;font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;background:var(--forest-pale);color:var(--forest)}
#dsec-family-command .fcc-app .lop-edit-link{background:none;border:none;color:var(--forest);font-size:12px;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:2px;flex-shrink:0;transition:color .18s}
#dsec-family-command .fcc-app .lop-edit-link:hover{color:var(--forest-mid)}
#dsec-family-command .fcc-app .lop-conditions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
#dsec-family-command .fcc-app .lop-cond-tag{padding:3px 10px;border-radius:12px;font-size:10px;font-weight:500;background:var(--cream-dark);color:var(--muted);border:1px solid var(--border)}

/* ── LOVED ONE PROFILE MODAL ── */
#dsec-family-command .fcc-app .lop-modal-overlay{display:none;position:fixed;inset:0;background:rgba(6,20,16,0.6);backdrop-filter:blur(4px);z-index:1000;align-items:center;justify-content:center;padding:20px}
#dsec-family-command .fcc-app .lop-modal-overlay.open{display:flex}
#dsec-family-command .fcc-app .lop-modal{background:var(--white);border-radius:20px;width:100%;max-width:520px;box-shadow:0 24px 80px rgba(0,0,0,.25);overflow:hidden;animation:cardIn .3s ease;max-height:90vh;overflow-y:auto}
#dsec-family-command .fcc-app .lop-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border)}
#dsec-family-command .fcc-app .lop-modal-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .lop-modal-close{background:var(--cream-dark);border:none;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:18px;color:var(--muted);transition:all .18s}
#dsec-family-command .fcc-app .lop-modal-close:hover{background:var(--cream);color:var(--deep)}
#dsec-family-command .fcc-app .lop-modal-body{padding:20px 24px}
#dsec-family-command .fcc-app .lop-modal-footer{display:flex;gap:9px;justify-content:flex-end;padding:16px 24px 20px;border-top:1px solid var(--border)}
#dsec-family-command .fcc-app .lop-condition-chips{display:flex;flex-wrap:wrap;gap:7px}
#dsec-family-command .fcc-app .lop-cond-chip{padding:6px 13px;border-radius:20px;border:1.5px solid var(--border);background:var(--white);font-family:var(--font-body);font-size:11px;font-weight:500;color:var(--muted);cursor:pointer;transition:all .18s}
#dsec-family-command .fcc-app .lop-cond-chip:hover{border-color:var(--forest-light)}
#dsec-family-command .fcc-app .lop-cond-chip.selected{background:var(--forest);color:var(--white);border-color:var(--forest)}
#dsec-family-command .fcc-app .lop-photo-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;border:1.5px dashed var(--border);background:var(--cream);font-family:var(--font-body);font-size:12px;color:var(--muted);cursor:pointer;transition:all .18s;margin-top:2px}
#dsec-family-command .fcc-app .lop-photo-upload-btn:hover{border-color:var(--forest-light);color:var(--forest)}
#dsec-family-command .fcc-app .lop-photo-upload-btn.has-file{border-color:var(--forest);color:var(--forest);background:var(--forest-pale)}

/* ── DAILY STATUS LOG ── */
#dsec-family-command .fcc-app .dsl-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px 22px;margin-bottom:14px;box-shadow:var(--shadow-sm);animation:fadeUp .5s .05s ease both}
#dsec-family-command .fcc-app .dsl-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--deep);margin-bottom:16px}
#dsec-family-command .fcc-app .dsl-section{margin-bottom:14px}
#dsec-family-command .fcc-app .dsl-label{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:8px}
#dsec-family-command .fcc-app .dsl-chips{display:flex;flex-wrap:wrap;gap:7px}
#dsec-family-command .fcc-app .dsl-chip{padding:7px 14px;border-radius:20px;border:1.5px solid var(--border);background:var(--white);font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--muted);cursor:pointer;transition:all .18s}
#dsec-family-command .fcc-app .dsl-chip:hover{border-color:var(--forest-light)}
#dsec-family-command .fcc-app .dsl-chip.selected{background:#e6f9ee;color:#166534;border-color:#86efac;font-weight:600}
#dsec-family-command .fcc-app .dsl-notes-area{margin-top:16px}
#dsec-family-command .fcc-app .dsl-notes-label{font-size:12px;font-weight:600;color:var(--deep);display:block;margin-bottom:6px}
#dsec-family-command .fcc-app .dsl-notes-input{width:100%;min-height:60px;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;font-family:var(--font-body);font-size:13px;resize:vertical;transition:border-color .18s;color:var(--deep)}
#dsec-family-command .fcc-app .dsl-notes-input:focus{outline:none;border-color:var(--forest-light)}
#dsec-family-command .fcc-app .dsl-bottom{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}
#dsec-family-command .fcc-app .dsl-photo-btn{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border-radius:10px;border:1.5px solid var(--border);background:var(--cream);font-family:var(--font-body);font-size:12px;color:var(--muted);cursor:pointer;transition:all .18s}
#dsec-family-command .fcc-app .dsl-photo-btn:hover{border-color:var(--forest-light);color:var(--forest)}
#dsec-family-command .fcc-app .dsl-photo-name{font-size:11px;color:var(--forest);font-weight:500;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#dsec-family-command .fcc-app .dsl-save-btn{margin-left:auto;padding:10px 22px;border-radius:10px;background:var(--forest);color:var(--white);border:none;font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}
#dsec-family-command .fcc-app .dsl-save-btn:hover{background:var(--forest-mid)}
#dsec-family-command .fcc-app .dsl-save-btn:disabled{opacity:.5;cursor:not-allowed}
#dsec-family-command .fcc-app .dsl-last-updated{margin-top:12px;font-size:11px;color:var(--muted);font-style:italic}

/* ── CARE TEAM BAR ── */
#dsec-family-command .fcc-app .ct-bar{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;box-shadow:var(--shadow-sm);animation:fadeUp .6s .12s ease both}
#dsec-family-command .fcc-app .ct-bar-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
#dsec-family-command .fcc-app .ct-bar-label{font-size:9px;letter-spacing:3.5px;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-weight:500}
#dsec-family-command .fcc-app .ct-divider{width:1px;height:24px;background:var(--border);flex-shrink:0}
#dsec-family-command .fcc-app .ct-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}
#dsec-family-command .fcc-app .ct-empty-hint{font-size:12px;color:var(--muted);font-style:italic;font-weight:300}
#dsec-family-command .fcc-app .ct-member{display:flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;background:var(--cream-dark);border:1px solid var(--border);border-radius:20px;transition:all .18s;animation:cardIn .3s ease}
#dsec-family-command .fcc-app .ct-member:hover{border-color:var(--sage)}
#dsec-family-command .fcc-app .ct-member-icon{width:24px;height:24px;border-radius:50%;background:var(--forest-mid);color:var(--white);display:flex;align-items:center;justify-content:center;flex-shrink:0}
#dsec-family-command .fcc-app .ct-member-icon svg{width:13px;height:13px}
#dsec-family-command .fcc-app .ct-member-name{font-size:12px;font-weight:600;color:var(--deep);white-space:nowrap}
#dsec-family-command .fcc-app .ct-member-role{font-size:10px;color:var(--muted);font-weight:300;white-space:nowrap}
#dsec-family-command .fcc-app .ct-member-status{font-size:9px;padding:2px 7px;border-radius:10px;font-weight:600;letter-spacing:.5px;white-space:nowrap}
#dsec-family-command .fcc-app .ct-member-status.active{background:#e6f9ee;color:#166534}
#dsec-family-command .fcc-app .ct-member-status.pending{background:#fef3c7;color:#92400e}
#dsec-family-command .fcc-app .ct-member-del{background:none;border:none;color:var(--muted);font-size:14px;cursor:pointer;padding:0 2px;line-height:1;transition:color .18s;display:flex;align-items:center}
#dsec-family-command .fcc-app .ct-member-del:hover{color:#c0392b}
#dsec-family-command .fcc-app .ct-add-btn{display:flex;align-items:center;gap:5px;padding:7px 14px;border-radius:20px;background:var(--cream-dark);border:1px solid var(--border);font-family:var(--font-body);font-size:var(--text-label);font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--mid);cursor:pointer;transition:all .18s;white-space:nowrap;flex-shrink:0}
#dsec-family-command .fcc-app .ct-add-btn:hover{background:var(--sage-pale);border-color:var(--sage)}
#dsec-family-command .fcc-app .ct-add-btn svg{width:12px;height:12px;flex-shrink:0}

/* ── CARE TEAM MODAL ── */
#dsec-family-command .fcc-app .ct-modal-overlay{display:none;position:fixed;inset:0;background:rgba(6,20,16,0.6);backdrop-filter:blur(4px);z-index:1000;align-items:center;justify-content:center;padding:20px}
#dsec-family-command .fcc-app .ct-modal-overlay.open{display:flex}
#dsec-family-command .fcc-app .ct-modal{background:var(--white);border-radius:20px;width:100%;max-width:480px;box-shadow:0 24px 80px rgba(0,0,0,.25);overflow:hidden;animation:cardIn .3s ease}
#dsec-family-command .fcc-app .ct-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border)}
#dsec-family-command .fcc-app .ct-modal-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .ct-modal-close{background:var(--cream-dark);border:none;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:18px;color:var(--muted);transition:all .18s}
#dsec-family-command .fcc-app .ct-modal-close:hover{background:var(--cream);color:var(--deep)}
#dsec-family-command .fcc-app .ct-modal-body{padding:20px 24px}
#dsec-family-command .fcc-app .ct-modal-desc{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 18px;font-weight:300}
#dsec-family-command .fcc-app .ct-invite-note{display:flex;align-items:flex-start;gap:10px;background:var(--forest-pale);border:1px solid rgba(13,59,46,0.15);border-radius:10px;padding:12px 14px;margin-top:16px;font-size:12px;color:var(--forest);line-height:1.55}
#dsec-family-command .fcc-app .ct-invite-note svg{flex-shrink:0;margin-top:2px}
#dsec-family-command .fcc-app .ct-invite-note strong{font-weight:700;display:block;margin-bottom:2px;font-size:11px;letter-spacing:.5px}
#dsec-family-command .fcc-app .ct-share-badge{display:flex;align-items:flex-start;gap:8px;background:#f0fdf4;border:1px solid #86efac;border-radius:10px;padding:10px 14px;margin-top:12px;font-size:11px;color:#166534;line-height:1.5}
#dsec-family-command .fcc-app .ct-share-badge svg{flex-shrink:0;margin-top:1px}
#dsec-family-command .fcc-app .ct-modal-footer{display:flex;gap:9px;justify-content:flex-end;padding:16px 24px 20px;border-top:1px solid var(--border)}

/* ── INVITE SIBLING BANNER ── */
#dsec-family-command .fcc-app .invite-banner{background:linear-gradient(135deg,var(--forest-pale) 0%,#f0fdf4 50%,#fff 100%);border:1.5px solid rgba(42,125,85,0.22);border-radius:var(--r);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;box-shadow:var(--shadow-sm);animation:fadeUp .6s .14s ease both;position:relative;overflow:hidden}
#dsec-family-command .fcc-app .invite-banner::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--forest) 0%,var(--sage) 100%);border-radius:4px 0 0 4px}
#dsec-family-command .fcc-app .invite-banner-left{display:flex;align-items:center;gap:14px;flex:1;min-width:0}
#dsec-family-command .fcc-app .invite-banner-icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--forest) 0%,var(--forest-mid) 100%);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px rgba(13,59,46,0.2)}
#dsec-family-command .fcc-app .invite-banner-text{min-width:0}
#dsec-family-command .fcc-app .invite-banner-title{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);line-height:1.2;margin-bottom:3px}
#dsec-family-command .fcc-app .invite-banner-desc{font-size:12px;color:var(--muted);line-height:1.5;font-weight:300}
#dsec-family-command .fcc-app .invite-banner-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
#dsec-family-command .fcc-app .invite-banner-fields{display:flex;gap:8px}
#dsec-family-command .fcc-app .invite-banner-input{width:160px;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--white);font-family:var(--font-body);font-size:var(--text-caption);color:var(--deep);outline:none;transition:border-color .18s}
#dsec-family-command .fcc-app .invite-banner-input:focus{border-color:var(--sage)}
#dsec-family-command .fcc-app .invite-banner-input::placeholder{color:var(--sage-pale);font-style:italic}
#dsec-family-command .fcc-app .invite-banner-btn{display:flex;align-items:center;gap:7px;padding:9px 18px;border-radius:10px;background:linear-gradient(135deg,var(--forest) 0%,var(--forest-mid) 100%);border:none;font-family:var(--font-body);font-size:var(--text-label);font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#fff;cursor:pointer;transition:all .2s;white-space:nowrap;box-shadow:0 2px 8px rgba(13,59,46,0.18)}
#dsec-family-command .fcc-app .invite-banner-btn:hover{box-shadow:0 4px 14px rgba(13,59,46,0.28);transform:translateY(-1px)}
#dsec-family-command .fcc-app .invite-banner-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
@media(max-width:768px){
  #dsec-family-command .fcc-app .invite-banner{flex-direction:column;align-items:stretch;gap:14px}
  #dsec-family-command .fcc-app .invite-banner-right{flex-direction:column;align-items:stretch}
  #dsec-family-command .fcc-app .invite-banner-fields{flex-direction:column}
  #dsec-family-command .fcc-app .invite-banner-input{width:100%}
}

/* ── CAREGIVER BAR ── */
#dsec-family-command .fcc-app .cg-bar{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:14px 20px;display:flex;align-items:center;gap:14px;margin-bottom:24px;box-shadow:var(--shadow-sm);animation:fadeUp .6s .1s ease both}
#dsec-family-command .fcc-app .cg-label{font-size:9px;letter-spacing:3.5px;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-weight:500}
#dsec-family-command .fcc-app .cg-input{flex:1;border:none;outline:none;background:transparent;font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .cg-input::placeholder{color:var(--sage-pale);font-style:italic}
#dsec-family-command .fcc-app .cg-divider{width:1px;height:28px;background:var(--border)}
#dsec-family-command .fcc-app .cg-mode-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--sage);font-weight:500;white-space:nowrap}

/* ── MODULE BUILDER ── */
#dsec-family-command .fcc-app .builder{background:var(--cream-dark);border:1px solid var(--border);border-radius:var(--r);padding:20px 24px;margin-bottom:28px;animation:fadeUp .6s .15s ease both}
#dsec-family-command .fcc-app .builder-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
#dsec-family-command .fcc-app .builder-title{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .builder-hint{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
#dsec-family-command .fcc-app .builder-tiles{display:flex;gap:10px;flex-wrap:wrap}
#dsec-family-command .fcc-app .tile{display:flex;align-items:center;gap:8px;padding:9px 16px;border-radius:30px;border:1px solid var(--border-mid);cursor:pointer;user-select:none;transition:all .2s;background:var(--white)}
#dsec-family-command .fcc-app .tile-icon{font-size:17px}
#dsec-family-command .fcc-app .tile-name{font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);transition:color .2s}
#dsec-family-command .fcc-app .tile-check{width:17px;height:17px;border-radius:50%;border:1.5px solid var(--border-mid);display:flex;align-items:center;justify-content:center;font-size:8px;color:transparent;transition:all .2s}
#dsec-family-command .fcc-app .tile.on{border-color:var(--sage);background:rgba(122,171,138,0.12)}
#dsec-family-command .fcc-app .tile.on .tile-name{color:var(--mid)}
#dsec-family-command .fcc-app .tile.on .tile-check{background:var(--sage);border-color:var(--sage);color:#fff}

/* ── CARDS ── */
#dsec-family-command .fcc-app .cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));gap:20px}
#dsec-family-command .fcc-app .m-card{display:none;flex-direction:column;background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);animation:cardIn .4s ease both}
#dsec-family-command .fcc-app .m-card.show{display:flex}
@keyframes cardIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
#dsec-family-command .fcc-app .m-card-head{padding:18px 20px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
#dsec-family-command .fcc-app .m-card-id{display:flex;align-items:center;gap:12px}
#dsec-family-command .fcc-app .m-icon-wrap{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0}
#dsec-family-command .fcc-app .ic-med{background:#EBF5EE}.ic-ex{background:#EAF1FF}.ic-meal{background:#FFF4E8}.ic-appt{background:#F2EEFF}.ic-visit{background:#E8F5F0}
#dsec-family-command .fcc-app .m-card-name{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep);line-height:1}
#dsec-family-command .fcc-app .m-card-count{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:2px}
#dsec-family-command .fcc-app .add-btn{display:flex;align-items:center;gap:5px;padding:8px 15px;border-radius:20px;background:var(--cream-dark);border:1px solid var(--border);font-family:var(--font-body);font-size:var(--text-label);font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--mid);cursor:pointer;transition:all .18s}
#dsec-family-command .fcc-app .add-btn:hover{background:var(--sage-pale);border-color:var(--sage)}

/* ── ENTRIES ── */
#dsec-family-command .fcc-app .m-entries{flex:1;padding:4px 0;max-height:320px;overflow-y:auto}
#dsec-family-command .fcc-app .entry{padding:13px 20px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:4px;transition:background .15s}
#dsec-family-command .fcc-app .entry:last-child{border-bottom:none}
#dsec-family-command .fcc-app .entry:hover{background:var(--cream)}
#dsec-family-command .fcc-app .entry-top{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
#dsec-family-command .fcc-app .entry-name{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .tag{font-size:10px;font-weight:600;letter-spacing:.4px;padding:2px 9px;border-radius:10px}
#dsec-family-command .fcc-app .tag-time{background:var(--cream-dark);color:var(--mid)}
#dsec-family-command .fcc-app .tag-dose{background:#EBF5EE;color:#1a6b3a}
#dsec-family-command .fcc-app .tag-amt{background:#FFF4E8;color:#a05a1a}
#dsec-family-command .fcc-app .tag-effort{background:#EAF1FF;color:#2a50a0}
#dsec-family-command .fcc-app .entry-meta{font-size:12px;color:var(--muted);line-height:1.4}
#dsec-family-command .fcc-app .entry-note{font-size:12px;color:var(--ink-mid);font-style:italic;opacity:.75;line-height:1.4}
#dsec-family-command .fcc-app .entry-nextsteps{font-size:12px;color:var(--mid);font-weight:500;margin-top:1px}
#dsec-family-command .fcc-app .del-btn{margin-left:auto;background:none;border:none;color:var(--sage-pale);font-size:15px;cursor:pointer;padding:1px 4px;border-radius:4px;transition:all .15s;align-self:flex-start}
#dsec-family-command .fcc-app .del-btn:hover{color:#c0392b;background:#fff0f0}
#dsec-family-command .fcc-app .empty{padding:36px 20px;text-align:center;color:var(--sage-pale);font-size:13px;font-style:italic}
#dsec-family-command .fcc-app .empty-ico{font-size:26px;margin-bottom:8px;opacity:.45}

/* ── FORM ── */
#dsec-family-command .fcc-app .m-form{display:none;padding:18px 20px;background:var(--cream);border-top:1px solid var(--border);flex-direction:column;gap:13px}
#dsec-family-command .fcc-app .m-form.open{display:flex;animation:formIn .25s ease}
@keyframes formIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
#dsec-family-command .fcc-app .f-row{display:grid;gap:11px}
#dsec-family-command .fcc-app .f-row.c2{grid-template-columns:1fr 1fr}
#dsec-family-command .fcc-app .f-row.c3{grid-template-columns:1fr 1fr 1fr}
#dsec-family-command .fcc-app .f-row.c1{grid-template-columns:1fr}
#dsec-family-command .fcc-app .f-field{display:flex;flex-direction:column;gap:4px}
#dsec-family-command .fcc-app .f-field label{font-size:8.5px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600}
#dsec-family-command .fcc-app .f-field input, #dsec-family-command .fcc-app .f-field select, #dsec-family-command .fcc-app .f-field textarea{background:var(--white);border:1px solid var(--border-mid);border-radius:var(--r-sm);padding:9px 12px;font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--ink);outline:none;width:100%;transition:border-color .18s,box-shadow .18s}
#dsec-family-command .fcc-app .f-field input:focus, #dsec-family-command .fcc-app .f-field select:focus, #dsec-family-command .fcc-app .f-field textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(122,171,138,0.14)}
#dsec-family-command .fcc-app .f-field textarea{resize:vertical;min-height:62px;line-height:1.5}
#dsec-family-command .fcc-app .f-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%237AAB8A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
#dsec-family-command .fcc-app .f-actions{display:flex;gap:9px;justify-content:flex-end;padding-top:2px}
#dsec-family-command .fcc-app .btn-save{padding:9px 22px;background:var(--mid);color:var(--white);border:none;border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--text-label);font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:background .18s}
#dsec-family-command .fcc-app .btn-save:hover{background:var(--deep)}
#dsec-family-command .fcc-app .btn-save:disabled{opacity:.5;cursor:default}
#dsec-family-command .fcc-app .lo-save-btn,
#dsec-family-command .fcc-app .ct-save-btn{padding:12px 28px;font-size:13px;letter-spacing:1px;border-radius:50px;background:var(--forest,#0D3B2E);box-shadow:0 4px 14px rgba(13,59,46,0.25);display:inline-flex;align-items:center;justify-content:center;gap:4px;line-height:1}
#dsec-family-command .fcc-app .lo-save-btn:hover,
#dsec-family-command .fcc-app .ct-save-btn:hover{background:var(--deep);box-shadow:0 6px 20px rgba(13,59,46,0.35);transform:translateY(-1px)}
#dsec-family-command .fcc-app .lo-save-btn:active,
#dsec-family-command .fcc-app .ct-save-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(13,59,46,0.2)}
#dsec-family-command .fcc-app .btn-cancel{padding:9px 15px;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--text-label);cursor:pointer;transition:all .18s}
#dsec-family-command .fcc-app .btn-cancel:hover{color:var(--ink);border-color:var(--sage-pale)}

/* ── HISTORY DRAWER ── */
#dsec-family-command .fcc-app .scrim{display:none;position:fixed;inset:0;background:rgba(13,59,46,0.4);z-index:200;backdrop-filter:blur(3px)}
#dsec-family-command .fcc-app .scrim.open{display:block}
#dsec-family-command .fcc-app .drawer{display:none;position:fixed;right:0;top:0;bottom:0;width:440px;background:var(--white);z-index:201;flex-direction:column;overflow:hidden;box-shadow:-12px 0 60px rgba(13,59,46,0.18)}
#dsec-family-command .fcc-app .drawer.open{display:flex;animation:slideIn .3s ease}
@keyframes slideIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
#dsec-family-command .fcc-app .drawer-head{background:var(--deep);padding:22px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
#dsec-family-command .fcc-app .drawer-title{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;color:var(--white)}
#dsec-family-command .fcc-app .drawer-close{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,0.1);border:none;color:var(--white);font-size:19px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s}
#dsec-family-command .fcc-app .drawer-close:hover{background:rgba(255,255,255,0.2)}
#dsec-family-command .fcc-app .drawer-body{flex:1;overflow-y:auto;padding:24px}
#dsec-family-command .fcc-app .hw-block{margin-bottom:30px}
#dsec-family-command .fcc-app .hw-label{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:12px;display:flex;align-items:baseline;justify-content:space-between}
#dsec-family-command .fcc-app .hw-label strong{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);letter-spacing:0}
#dsec-family-command .fcc-app .hw-entry{padding:10px 13px;background:var(--cream);border-radius:var(--r-sm);margin-bottom:8px}
#dsec-family-command .fcc-app .hw-type{font-size:8px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
#dsec-family-command .fcc-app .hw-name{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--deep)}
#dsec-family-command .fcc-app .hw-detail{font-size:11px;color:var(--muted);margin-top:2px}
#dsec-family-command .fcc-app .hw-empty{padding:40px 0;text-align:center;font-size:13px;color:var(--sage-pale);font-style:italic;line-height:1.6}

/* ── TOAST ── */
#dsec-family-command .fcc-app .toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(10px);background:var(--mid);color:var(--white);padding:11px 22px;border-radius:30px;font-size:13px;font-weight:500;box-shadow:var(--shadow-lg);z-index:999;opacity:0;transition:all .28s;pointer-events:none;white-space:nowrap}
#dsec-family-command .fcc-app .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
#dsec-family-command .fcc-app .toast.err{background:#b83232}

/* ── OAUTH BRANDED OVERLAY ── */
.oauth-overlay{position:fixed;inset:0;z-index:10000;background:#fff;display:none;align-items:center;justify-content:center;opacity:0;pointer-events:none;visibility:hidden}
.oauth-overlay.active{display:flex;pointer-events:auto;visibility:visible;animation:oauthFadeIn .3s ease forwards}
.oauth-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:40px}
.oauth-logo{width:80px;height:80px;object-fit:contain;border-radius:16px}
.oauth-brand-name{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:600;color:#0D3B2E;letter-spacing:0.02em}
.oauth-message{font-family:'DM Sans',sans-serif;font-size:0.95rem;color:#4A6258;margin-top:4px}
.oauth-spinner-ring{width:32px;height:32px;border:3px solid #E8F0EB;border-top-color:#0D3B2E;border-radius:50%;animation:oauthSpin .8s linear infinite;margin-top:8px}
@keyframes oauthSpin{to{transform:rotate(360deg)}}
@keyframes oauthFadeIn{from{opacity:0}to{opacity:1}}

@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:780px){.cards-grid{grid-template-columns:1fr}.f-row.c3,.f-row.c2{grid-template-columns:1fr}.drawer{width:100%}.page-intro{flex-direction:column}.header{gap:8px;padding:0 14px}.logo-sub{display:none}.wk-label{min-width:100px;font-size:10px}.lo-bar{flex-direction:column;align-items:stretch;gap:10px}.lo-bar-left{flex-wrap:wrap}.lo-add-btn{align-self:flex-end}.ct-bar{flex-direction:column;align-items:stretch;gap:10px}.ct-bar-left{flex-wrap:wrap}.ct-add-btn{align-self:flex-end}.lo-sit-opts{flex-direction:column}.lo-modal{max-width:100%}.ct-modal{max-width:100%}}

/* ── CHECKLIST ENHANCEMENTS ── */
/* Progress bars */
.cl-progress-row{display:flex;align-items:center;gap:10px;margin-top:8px}
.cl-progress-row--lg{margin:0}
.cl-progress-row--sm{margin:0}
.cl-progress-bar{flex:1;height:6px;background:var(--cream-dark);border-radius:3px;overflow:hidden;max-width:200px}
.cl-progress-bar--sm{height:4px;max-width:120px}
.cl-progress-fill{height:100%;border-radius:3px;transition:width .3s ease}
.cl-progress-text{font-size:.72rem;color:var(--muted);font-weight:500;white-space:nowrap}
.cl-progress-text--sm{font-size:.68rem;color:var(--muted);white-space:nowrap}
.cl-cl-progress-mini{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:0 4px}
.cl-cl-head-meta{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--muted);font-weight:500;white-space:nowrap}
.cl-cl-head-actions{display:flex;align-items:center;gap:4px}
.cl-checklists-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px}

/* Sources citation box */
.cl-cl-sources{font-size:.72rem;color:var(--muted);padding:8px 12px;background:var(--cream);border-radius:6px;margin-bottom:10px;line-height:1.6;border-left:3px solid var(--forest-light)}
.cl-cl-sources strong{color:var(--deep);font-weight:600}
.cl-citation-box{margin-top:24px;padding:16px 20px;background:var(--cream);border-radius:8px;border:1px solid var(--cream-dark)}
.cl-citation-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--forest);margin-bottom:6px}
.cl-citation-text{font-size:.72rem;color:var(--muted);line-height:1.7}
.cl-disclaimer-text{font-size:.68rem;color:var(--muted);margin-top:8px;font-style:italic;opacity:.8;line-height:1.5}

/* Share trigger button */
.cl-share-trigger{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px;border:1px solid var(--cream-dark);border-radius:6px;background:var(--white);color:var(--muted);cursor:pointer;transition:all .2s;font-size:.72rem;font-family:'DM Sans',sans-serif}
.cl-share-trigger:hover{border-color:var(--forest-light);color:var(--forest)}
.cl-share-trigger--lg{padding:6px 14px;font-size:.78rem}
/* Share dropdown menu */
.cl-share-menu{position:absolute;right:0;top:100%;z-index:100;background:var(--white);border:1px solid var(--cream-dark);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.1);padding:4px;min-width:130px;margin-top:4px}
.cl-share-menu--inline{position:relative;top:auto;right:auto;margin-top:0;display:flex;gap:2px;flex-wrap:wrap}
.cl-share-opt{display:flex;align-items:center;gap:6px;padding:8px 12px;border:none;background:none;font-size:.78rem;font-family:'DM Sans',sans-serif;color:var(--deep);cursor:pointer;border-radius:6px;width:100%;text-align:left;white-space:nowrap;transition:background .15s}
.cl-share-opt:hover{background:var(--cream)}
.cl-share-menu--inline .cl-share-opt{width:auto;padding:6px 10px;border:1px solid var(--cream-dark);border-radius:6px}

/* All Checklists page */
.cl-all-cl-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 20px;background:var(--cream);border-radius:10px;margin-bottom:20px}
.cl-all-cl-actions{display:flex;align-items:center;gap:8px;position:relative}
.cl-all-cl-stage{margin-bottom:24px}
.cl-all-cl-stage-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 16px;border-left:4px solid;border-radius:0 8px 8px 0;background:var(--cream);margin-bottom:10px}
.cl-all-cl-stage-info{display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex:1}
.cl-all-cl-stage-title{border:none;background:none;font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;cursor:pointer;padding:0;text-decoration:none;transition:opacity .15s}
.cl-all-cl-stage-title:hover{opacity:.7}

/* Share toast */
.cl-share-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(10px);background:var(--forest);color:var(--white);padding:11px 24px;border-radius:30px;font-size:.82rem;font-family:'DM Sans',sans-serif;font-weight:500;box-shadow:0 4px 16px rgba(0,0,0,.15);z-index:9999;opacity:0;transition:all .28s ease;pointer-events:none;white-space:nowrap}
.cl-share-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:600px){
  .cl-all-cl-header{flex-direction:column;align-items:stretch}
  .cl-share-menu{left:0;right:auto}
  .cl-cl-head-actions{gap:2px}
  .cl-checklists-header{flex-direction:column}
  .cl-progress-bar{max-width:none}
}

/* ════════════════════════════════════════════════════════
   COMMUNITY SECTION
════════════════════════════════════════════════════════ */
.comm-wrap{display:grid;grid-template-columns:1fr 280px;gap:24px;max-width:960px}
.comm-feed-col{min-width:0}
.comm-sidebar-col{position:sticky;top:0;align-self:start}

/* Topic filter tabs */
.comm-topics{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.comm-topic{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:50px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;border:1.5px solid var(--border);background:var(--white);color:var(--muted);font-family:'DM Sans',sans-serif}
.comm-topic:hover{border-color:var(--forest-light);color:var(--forest)}
.comm-topic.active{background:var(--forest);color:var(--cream);border-color:var(--forest)}

/* Compose box */
.comm-compose{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:16px;margin-bottom:16px;box-shadow:var(--shadow-sm)}
.comm-compose-row{display:flex;gap:10px;align-items:center}
.comm-user-av{width:36px;height:36px;border-radius:50%;background:var(--forest);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:.95rem;font-weight:600;color:var(--cream);flex-shrink:0}
.comm-compose-input{flex:1;background:var(--cream);border:1px solid var(--border);border-radius:12px;padding:11px 14px;font-family:'DM Sans',sans-serif;font-size:.875rem;color:var(--muted);cursor:pointer;transition:border-color .2s}
.comm-compose-input:hover{border-color:var(--forest-light)}

/* Post card */
.comm-post{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px;margin-bottom:12px;box-shadow:var(--shadow-sm);transition:box-shadow .2s;animation:fadeUp .3s ease both}
.comm-post:hover{box-shadow:var(--shadow-md)}
.comm-post-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}
.comm-post-av{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;flex-shrink:0}
.comm-post-meta{flex:1}
.comm-post-author{font-size:.875rem;font-weight:500;color:var(--deep)}
.comm-post-sub{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--muted);margin-top:2px;flex-wrap:wrap}
.comm-stage-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:50px;font-size:.68rem;font-weight:500;background:var(--forest-pale);color:var(--forest-mid)}
.comm-stage-dot{width:5px;height:5px;border-radius:50%;background:var(--forest-light)}
.comm-post-time{font-size:.75rem;color:var(--muted);margin-left:auto;white-space:nowrap}
.comm-post-title{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);line-height:1.35;margin-bottom:7px}
.comm-post-body{font-size:var(--text-body);color:var(--muted);line-height:1.65;font-weight:300;margin-bottom:14px}
.comm-post-body strong{font-weight:500;color:var(--deep)}
.comm-post-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:14px}
.comm-post-tag{padding:3px 10px;border-radius:50px;font-size:.72rem;font-weight:500;background:var(--cream-dark);color:var(--muted)}

/* Post footer actions */
.comm-post-footer{display:flex;align-items:center;gap:4px;border-top:1px solid var(--border);padding-top:12px}
.comm-action{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:8px;font-size:.8rem;font-weight:400;color:var(--muted);background:none;border:none;cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.comm-action:hover{background:var(--forest-pale);color:var(--forest)}
.comm-action.liked{color:var(--forest)}
.comm-action.saved{color:#C4A882}
.comm-action svg{width:15px;height:15px}
.comm-action-spacer{flex:1}

/* New post highlight */
.comm-new-highlight{animation:commHighlight 2s ease forwards}
@keyframes commHighlight{
  0%{border-color:var(--forest-light);box-shadow:0 0 0 3px rgba(122,171,138,.2)}
  100%{border-color:var(--border);box-shadow:var(--shadow-sm)}
}

/* Right sidebar widgets */
.comm-widget{margin-bottom:20px}
.comm-stats-card{background:var(--forest);border-radius:var(--r);padding:16px 18px;position:relative;overflow:hidden}
.comm-stats-card::before{content:'';position:absolute;top:-20px;right:-20px;width:80px;height:80px;background:rgba(122,171,138,.2);border-radius:50%}
.comm-stats-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:rgba(244,247,245,.6);margin-bottom:4px}
.comm-stats-num{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;color:var(--cream);line-height:1.2}
.comm-stats-sub{font-size:.78rem;color:rgba(244,247,245,.55);margin-top:2px}
.comm-widget-title{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:10px}
.comm-trending-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--r-sm);cursor:default;transition:background .15s}
.comm-trending-item:hover{background:var(--cream)}
.comm-trending-rank{font-family:'Cormorant Garamond',serif;font-size:.9rem;font-weight:600;color:var(--muted);width:16px;flex-shrink:0}
.comm-trending-name{font-size:.82rem;font-weight:500;color:var(--deep)}
.comm-trending-count{font-size:.72rem;color:var(--muted)}
.comm-trending-up{font-size:.68rem;color:#52C97E;font-weight:600;margin-left:auto}

/* Modal */
.comm-modal-overlay{display:none;position:fixed;inset:0;z-index:999;background:rgba(10,31,24,.4);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:20px}
.comm-modal-overlay.open{display:flex;animation:fadeUp .2s ease}
.comm-modal{background:var(--white);border-radius:20px;width:100%;max-width:540px;box-shadow:var(--shadow-lg);animation:fadeUp .25s ease;max-height:90vh;overflow-y:auto}
.comm-modal-header{padding:22px 24px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.comm-modal-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
.comm-modal-close{width:30px;height:30px;background:var(--cream);border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;color:var(--muted);display:flex;align-items:center;justify-content:center;transition:all .15s}
.comm-modal-close:hover{background:var(--cream-dark);color:var(--deep)}
.comm-modal-body{padding:20px 24px}
.comm-modal-footer{padding:16px 24px 22px;display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--border)}
.comm-form-group{margin-bottom:16px}
.comm-form-label{display:block;font-size:.82rem;font-weight:500;color:var(--deep);margin-bottom:6px}
.comm-form-input{width:100%;padding:11px 14px;background:var(--cream);border:1px solid var(--border);border-radius:var(--r-sm);font-family:'DM Sans',sans-serif;font-size:.875rem;color:var(--deep);outline:none;transition:border-color .2s,box-shadow .2s}
.comm-form-input:focus{border-color:var(--forest-light);box-shadow:0 0 0 3px rgba(122,171,138,.1);background:var(--white)}
.comm-form-textarea{min-height:100px;resize:vertical;line-height:1.6}
.comm-tag-picker{display:flex;flex-wrap:wrap;gap:6px}
.comm-tag-opt{padding:5px 12px;border-radius:50px;font-size:.78rem;font-weight:500;border:1.5px solid var(--border);background:var(--white);color:var(--muted);cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.comm-tag-opt:hover{border-color:var(--forest-light);color:var(--forest)}
.comm-tag-opt.selected{background:var(--forest);color:var(--cream);border-color:var(--forest)}

@media(max-width:800px){
  .comm-wrap{grid-template-columns:1fr}
  .comm-sidebar-col{display:none}
}
@media(max-width:600px){
  .comm-post{padding:16px}
  .comm-compose{padding:12px}
}

/* ════════════════════════════════════════════════════════
   FAMILY READY FOLDER
════════════════════════════════════════════════════════ */
.frf-app{max-width:860px}
.frf-tagline{font-style:italic;color:var(--muted);font-size:.95rem;font-weight:300;line-height:1.7;max-width:640px}

/* Value proposition card */
.frf-value-prop{display:flex;align-items:flex-start;gap:16px;background:var(--forest);border-radius:var(--r);padding:20px 24px;margin:20px 0 24px;position:relative;overflow:hidden}
.frf-value-prop::before{content:'';position:absolute;top:-20px;right:-20px;width:90px;height:90px;background:rgba(122,171,138,.2);border-radius:50%}
.frf-value-icon{width:40px;height:40px;border-radius:10px;background:rgba(244,247,245,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--cream)}
.frf-value-text{font-size:.875rem;color:rgba(244,247,245,.85);line-height:1.7;font-weight:300}
.frf-value-text strong{color:var(--cream);font-weight:600}

/* Loved Ones bar */
.frf-lo-bar,.frf-team-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:var(--white);border:1px solid var(--border);border-radius:var(--r-sm);margin-bottom:8px}
.frf-lo-left,.frf-team-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0;overflow-x:auto}
.frf-lo-label,.frf-team-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap}
.frf-lo-divider,.frf-team-divider{width:1px;height:18px;background:var(--border);flex-shrink:0}
.frf-lo-list,.frf-team-list{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;overflow-x:auto}
.frf-lo-empty,.frf-team-empty{font-size:.8rem;color:var(--muted);font-weight:300;white-space:nowrap}
.frf-lo-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:50px;font-size:.78rem;font-weight:500;border:1.5px solid var(--border);background:var(--cream);color:var(--deep);cursor:pointer;transition:all .15s;white-space:nowrap}
.frf-lo-chip:hover{border-color:var(--forest-light)}
.frf-lo-chip.active{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.frf-lo-chip .frf-lo-remove{margin-left:2px;font-size:.7rem;opacity:.6;cursor:pointer}
.frf-lo-chip .frf-lo-remove:hover{opacity:1}
.frf-team-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:50px;font-size:.78rem;font-weight:500;border:1.5px solid rgba(122,171,138,.3);background:var(--forest-pale);color:var(--forest-mid);white-space:nowrap}
.frf-team-chip .frf-tm-remove{margin-left:2px;font-size:.7rem;opacity:.6;cursor:pointer}
.frf-team-chip .frf-tm-remove:hover{opacity:1}
.frf-lo-add-btn,.frf-team-add-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:50px;font-size:.78rem;font-weight:500;border:1.5px solid var(--border);background:var(--white);color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap;font-family:'DM Sans',sans-serif}
.frf-lo-add-btn:hover,.frf-team-add-btn:hover{border-color:var(--forest);color:var(--forest);background:rgba(13,59,46,.03)}

/* Share note */
.frf-share-note{display:flex;align-items:flex-start;gap:8px;padding:10px 16px;background:var(--forest-pale);border-radius:var(--r-sm);margin-bottom:24px;font-size:.78rem;color:var(--forest-mid);line-height:1.55;font-weight:400}
.frf-share-note svg{flex-shrink:0;margin-top:2px;color:var(--forest-light)}

/* Categories (accordion) */
.frf-categories{display:flex;flex-direction:column;gap:10px}
.frf-cat{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s}
.frf-cat:hover{box-shadow:var(--shadow-md)}
.frf-cat-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;cursor:pointer;gap:16px;transition:background .15s}
.frf-cat-head:hover{background:var(--cream)}
.frf-cat-id{display:flex;align-items:center;gap:14px;flex:1;min-width:0}
.frf-cat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.frf-cat-icon.ic-legal{background:rgba(90,122,90,.12);color:#3A5A3A}
.frf-cat-icon.ic-insurance{background:rgba(74,104,120,.12);color:#4A6878}
.frf-cat-icon.ic-financial{background:rgba(107,91,74,.12);color:#6B5B4A}
.frf-cat-icon.ic-logistics{background:rgba(90,114,104,.12);color:var(--warm)}
.frf-cat-name{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);line-height:1.3}
.frf-cat-desc{font-size:var(--text-body-sm);color:var(--muted);font-weight:300;line-height:1.5;margin-top:2px}
.frf-cat-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
.frf-cat-count{font-size:.72rem;font-weight:500;color:var(--muted);background:var(--cream);padding:3px 10px;border-radius:50px}
.frf-cat-chevron{transition:transform .2s;color:var(--muted)}
.frf-cat.open .frf-cat-chevron{transform:rotate(180deg)}

/* Category body */
.frf-cat-body{display:none;padding:0 20px 20px;border-top:1px solid var(--border)}
.frf-cat.open .frf-cat-body{display:block}

/* Document prompts */
.frf-doc-prompts{display:flex;flex-direction:column;gap:1px}
.frf-prompt{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;background:var(--cream);border-radius:var(--r-sm);margin-top:8px;transition:background .15s}
.frf-prompt:hover{background:var(--cream-dark)}
.frf-prompt-info{flex:1;min-width:0}
.frf-prompt-name{font-size:var(--text-body);font-weight:500;color:var(--deep);line-height:1.35}
.frf-prompt-hint{font-size:.75rem;color:var(--muted);font-weight:300;line-height:1.55;margin-top:3px}
.frf-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:50px;font-size:.78rem;font-weight:500;border:1.5px solid var(--forest);background:var(--white);color:var(--forest);cursor:pointer;transition:all .15s;white-space:nowrap;font-family:'DM Sans',sans-serif}
.frf-upload-btn:hover{background:var(--forest);color:var(--cream)}
.frf-upload-btn.uploading{pointer-events:none;opacity:.6}

/* Uploaded documents list */
.frf-doc-list{display:flex;flex-direction:column;gap:6px;padding-top:12px}
.frf-doc-list:empty{padding:0}
.frf-doc-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--cream);border-radius:var(--r-sm);border:1px solid var(--border);transition:all .15s}
.frf-doc-item:hover{border-color:var(--forest-light)}
.frf-doc-file-icon{width:34px;height:34px;border-radius:8px;background:var(--forest);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.frf-doc-file-icon svg{color:var(--cream)}
.frf-doc-meta{flex:1;min-width:0}
.frf-doc-name{font-size:.82rem;font-weight:500;color:var(--deep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.frf-doc-sub{font-size:.72rem;color:var(--muted);font-weight:300;margin-top:2px}
.frf-doc-actions{display:flex;gap:4px;flex-shrink:0}
.frf-doc-action{width:30px;height:30px;border-radius:8px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all .15s}
.frf-doc-action:hover{background:var(--cream-dark);color:var(--forest)}
.frf-doc-action.delete:hover{color:#b44}
.frf-doc-uploaded-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:500;color:var(--forest);opacity:.7}

/* Compliance notice */
.frf-compliance{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:rgba(180,68,68,.04);border:1px solid rgba(180,68,68,.12);border-radius:var(--r-sm);margin-top:24px}
.frf-compliance-icon{flex-shrink:0;color:#b44;margin-top:1px}
.frf-compliance-text{font-size:.78rem;color:var(--muted);line-height:1.6;font-weight:300}
.frf-compliance-text strong{font-weight:500;color:var(--deep)}

/* Modals (reuse pattern from Care Center) */
.frf-modal-overlay{display:none;position:fixed;inset:0;z-index:999;background:rgba(10,31,24,.4);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:20px}
.frf-modal-overlay.open{display:flex;animation:fadeUp .2s ease}
.frf-modal{background:var(--white);border-radius:20px;width:100%;max-width:480px;box-shadow:var(--shadow-lg);animation:fadeUp .25s ease;max-height:90vh;overflow-y:auto}
.frf-modal-header{padding:22px 24px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.frf-modal-title{font-family:var(--font-display);font-size:var(--text-section-title);font-weight:600;color:var(--deep)}
.frf-modal-close{width:30px;height:30px;background:var(--cream);border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;color:var(--muted);display:flex;align-items:center;justify-content:center;transition:all .15s}
.frf-modal-close:hover{background:var(--cream-dark);color:var(--deep)}
.frf-modal-body{padding:20px 24px}
.frf-modal-desc{font-size:.85rem;color:var(--muted);line-height:1.6;font-weight:300;margin-bottom:16px}
.frf-modal-footer{padding:16px 24px 22px;display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--border)}
.frf-save-btn{display:inline-flex;align-items:center;gap:4px}
.frf-invite-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--forest-pale);border-radius:var(--r-sm);margin-top:16px;font-size:.8rem;color:var(--forest-mid);line-height:1.55}
.frf-invite-note svg{flex-shrink:0;margin-top:2px}

@media(max-width:700px){
  .frf-cat-head{flex-direction:column;align-items:flex-start;gap:10px}
  .frf-cat-right{align-self:flex-end}
  .frf-prompt{flex-direction:column;align-items:flex-start;gap:10px}
  .frf-lo-bar,.frf-team-bar{flex-direction:column;align-items:stretch;gap:8px}
  .frf-lo-add-btn,.frf-team-add-btn{align-self:flex-end}
  .frf-value-prop{flex-direction:column;gap:12px}
}

/* Re-assessment prompt banner animation */
@keyframes slideUpFade{
  from{opacity:0;transform:translateX(-50%) translateY(20px)}
  to{opacity:1;transform:translateX(-50%) translateY(0)}
}

/* ═══════════════════════════════════════════════════════════════
   CARE SHOPPING LISTS (csl-)
   ═══════════════════════════════════════════════════════════════ */
.csl-app{max-width:860px;margin:0 auto;padding:0 0 60px}

/* Hero */
.csl-hero{background:var(--forest);border-radius:var(--r);padding:36px 28px 40px;text-align:center;position:relative;overflow:hidden;margin-bottom:24px}
.csl-hero::before{content:'';position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:600px;height:380px;background:radial-gradient(ellipse,rgba(122,171,138,.18) 0%,transparent 70%);pointer-events:none}
.csl-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border-radius:50px;background:rgba(244,247,245,.1);font-size:.72rem;font-weight:500;color:rgba(244,247,245,.7);letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px}
.csl-badge-dot{width:6px;height:6px;background:var(--forest-light);border-radius:50%}
.csl-hero-title{font-family:'Cormorant Garamond',serif;font-size:var(--text-page-title);font-weight:600;color:var(--cream);line-height:1.15;letter-spacing:-.01em;margin-bottom:12px}
.csl-hero-title em{font-style:italic;color:var(--forest-light)}
.csl-hero-desc{font-size:.9rem;color:rgba(244,247,245,.58);max-width:500px;margin:0 auto 20px;font-weight:300;line-height:1.75}
.csl-hero-disclaimer{display:inline-block;background:rgba(244,247,245,.07);border:1px solid rgba(244,247,245,.14);border-radius:var(--r-sm);padding:9px 16px;font-size:.75rem;color:rgba(244,247,245,.45);font-style:italic;max-width:480px;line-height:1.6}

/* Filter */
.csl-filter-wrap{background:var(--white);border:1px solid var(--border);border-radius:var(--r-sm);padding:4px;margin-bottom:16px;display:flex;align-items:center;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:2px}
.csl-filter-wrap::-webkit-scrollbar{display:none}
.csl-filter-btn{flex-shrink:0;background:none;border:none;padding:8px 14px;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap}
.csl-filter-btn.active{background:var(--forest);color:white;font-weight:600}
.csl-filter-btn:hover:not(.active){background:var(--cream);color:var(--deep)}

/* Progress */
.csl-progress-wrap{background:var(--white);border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 16px;margin-bottom:16px;display:flex;align-items:center;gap:12px}
.csl-progress-label{font-size:.76rem;color:var(--muted);white-space:nowrap}
.csl-progress-track{flex:1;height:5px;background:var(--cream-dark);border-radius:99px;overflow:hidden}
.csl-progress-fill{height:100%;background:var(--forest-mid);border-radius:99px;transition:width .3s ease;width:0%}
.csl-progress-count{font-size:.76rem;font-weight:600;color:var(--forest);white-space:nowrap}

/* Intro Tip */
.csl-intro-tip{background:rgba(13,59,46,.04);border:1px solid rgba(13,59,46,.10);border-radius:var(--r-sm);padding:9px 16px;margin-bottom:20px;display:flex;gap:10px;align-items:flex-start}
.csl-tip-icon{color:var(--muted);flex-shrink:0;margin-top:1px;opacity:.45}
.csl-tip-icon svg{width:14px;height:14px}
.csl-tip-text h4{font-family:'Cormorant Garamond',serif;font-size:.75rem;font-weight:600;color:var(--muted);margin-bottom:2px;font-style:italic}
.csl-tip-text p{font-size:.72rem;color:rgba(13,59,46,.45);line-height:1.6;font-weight:300;font-style:italic}
.csl-tip-text strong{color:rgba(13,59,46,.6)}

/* Global Actions */
.csl-global-actions{display:flex;gap:8px;margin-bottom:24px}
.csl-global-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;cursor:pointer;border:none;transition:all .15s;white-space:nowrap}
.csl-global-copy{background:var(--cream-dark);color:var(--forest);border:1px solid var(--border)}
.csl-global-copy:hover{background:var(--forest-pale)}
.csl-global-share{background:var(--forest);color:var(--cream)}
.csl-global-share:hover{background:var(--forest-mid)}

/* Group Label */
.csl-group-label{font-family:'Cormorant Garamond',serif;font-size:var(--text-section-title);font-weight:600;color:var(--forest);margin:28px 0 14px;padding-bottom:10px;border-bottom:2px solid var(--forest-pale);display:flex;align-items:center;gap:8px}

/* Section Card */
.csl-card{background:var(--white);border-radius:var(--r);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin-bottom:18px;overflow:hidden;transition:box-shadow .2s}
.csl-card:hover{box-shadow:var(--shadow-md)}

/* Card Header */
.csl-card-header{display:flex;align-items:center;gap:12px;padding:16px 18px 14px;border-bottom:1px solid var(--border)}
.csl-card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.csl-card-meta{flex:1;min-width:0}
.csl-card-condition{font-size:.65rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:2px}
.csl-card-title{font-family:'Cormorant Garamond',serif;font-size:var(--text-card-title);font-weight:600;color:var(--forest);line-height:1.2}
.csl-card-note{font-size:.74rem;color:var(--muted);font-weight:300;font-style:italic;margin-top:2px}

/* Card Actions */
.csl-card-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.csl-hdr-check{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:50px;background:var(--cream-dark);border:1px solid var(--border);font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:500;color:var(--forest-mid);cursor:pointer;transition:all .15s;white-space:nowrap}
.csl-hdr-check:hover{background:var(--forest-pale);border-color:var(--forest-light)}
.csl-hdr-check.all-checked{background:var(--forest-mid);color:var(--cream);border-color:var(--forest-mid)}
.csl-hdr-share{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--cream-dark);border:1px solid var(--border);cursor:pointer;transition:all .15s;flex-shrink:0;color:var(--muted)}
.csl-hdr-share:hover{background:var(--forest-pale);color:var(--forest)}
.csl-hdr-toggle{width:28px;height:28px;border-radius:50%;background:var(--cream-dark);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:transform .2s,background .15s;color:var(--forest-mid)}
.csl-card.open .csl-hdr-toggle{transform:rotate(180deg);background:var(--forest-pale)}

/* Card Body */
.csl-card-body{display:none;padding:16px 18px 18px}
.csl-card.open .csl-card-body{display:block}

/* Sub Group */
.csl-sub{margin-bottom:16px}
.csl-sub:last-child{margin-bottom:0}
.csl-sub-header{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--r-sm);margin-bottom:8px;cursor:default}
.csl-sub-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.csl-sub-label{font-size:.7rem;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);flex:1}
.csl-sub-actions{display:flex;align-items:center;gap:5px;margin-left:auto}
.csl-sub-check{display:flex;align-items:center;gap:4px;padding:3px 9px;border-radius:50px;background:var(--cream-dark);border:1px solid var(--border);font-family:'DM Sans',sans-serif;font-size:.68rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap}
.csl-sub-check:hover{background:var(--forest-pale);color:var(--forest)}
.csl-sub-check.all-checked{background:var(--forest-mid);color:var(--cream);border-color:var(--forest-mid)}
.csl-sub-share{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--cream-dark);border:1px solid var(--border);cursor:pointer;transition:all .15s;flex-shrink:0;color:var(--muted)}
.csl-sub-share:hover{background:var(--forest-pale);color:var(--forest)}

/* Item List */
.csl-items{list-style:none;display:flex;flex-direction:column;gap:4px}
.csl-item{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:var(--r-sm);cursor:pointer;transition:background .12s;border:1px solid transparent;position:relative}
.csl-item:hover{background:var(--cream)}
.csl-item.checked{opacity:.45}
.csl-item.checked .csl-item-name{text-decoration:line-through}
.csl-check{width:17px;height:17px;border-radius:4px;border:1.5px solid var(--forest-light);flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;transition:all .14s}
.csl-item.checked .csl-check{background:var(--forest-mid);border-color:var(--forest-mid)}
.csl-check svg{display:none}
.csl-item.checked .csl-check svg{display:block}
.csl-item-text{flex:1;min-width:0}
.csl-item-name{font-size:.85rem;font-weight:400;color:var(--deep);line-height:1.45}
.csl-item-detail{font-size:.74rem;color:var(--muted);font-weight:300;margin-top:2px;line-height:1.5}

/* Share Popup */
.csl-share-overlay{display:none;position:fixed;inset:0;z-index:490;background:rgba(0,0,0,.2)}
.csl-share-overlay.open{display:block}
.csl-share-popup{position:fixed;z-index:500;background:var(--white);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg);padding:18px 20px;min-width:240px;max-width:300px;top:50%;left:50%;transform:translate(-50%,-50%)}
.csl-share-popup h4{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--forest);margin-bottom:3px}
.csl-share-popup p{font-size:.73rem;color:var(--muted);margin-bottom:12px;line-height:1.5}
.csl-share-btns{display:flex;flex-direction:column;gap:7px}
.csl-sp-btn{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:var(--r-sm);border:none;font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;text-align:left}
.csl-sp-copy{background:var(--forest);color:var(--cream)}
.csl-sp-copy:hover{background:var(--forest-mid)}
.csl-sp-sms{background:var(--cream-dark);color:var(--forest);border:1px solid var(--border)}
.csl-sp-sms:hover{background:var(--forest-pale)}
.csl-sp-close{background:none;border:none;font-size:.72rem;color:var(--muted);cursor:pointer;padding:8px 0 0;text-align:center;width:100%;transition:color .15s}
.csl-sp-close:hover{color:var(--forest)}
.csl-sp-toolkit-confirm{display:none;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--r-sm);background:var(--forest-pale);color:var(--forest);font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;margin-bottom:10px}
.csl-share-popup.checkall-mode .csl-sp-toolkit-confirm{display:flex}
.csl-share-popup.checkall-mode .csl-sp-copy{display:none}
.csl-sp-confirm{font-size:.73rem;color:var(--forest-light);margin-top:8px;display:none;text-align:center}
.csl-sp-confirm.show{display:block}

/* ── Toolkit Panel ── */
.csl-toolkit-panel{margin:24px 0 8px;border:1.5px solid var(--forest);border-radius:var(--r);background:var(--white);overflow:hidden}
.csl-toolkit-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--forest-pale);border-bottom:1px solid var(--border);gap:12px;flex-wrap:wrap}
.csl-toolkit-header-left{display:flex;align-items:center;gap:10px}
.csl-toolkit-title{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:var(--forest);margin:0;line-height:1.2}
.csl-toolkit-subtitle{font-size:.73rem;color:var(--muted);margin:1px 0 0;line-height:1.3}
.csl-toolkit-header-right{display:flex;align-items:center;gap:8px}
.csl-toolkit-copy-btn,.csl-toolkit-clear-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--white);font-family:'DM Sans',sans-serif;font-size:.73rem;font-weight:500;cursor:pointer;transition:all .15s;color:var(--forest)}
.csl-toolkit-copy-btn:hover{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.csl-toolkit-copy-btn.copied{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.csl-toolkit-clear-btn{color:var(--muted);border-color:var(--border)}
.csl-toolkit-clear-btn:hover{color:#c53030;border-color:#c53030;background:#fff5f5}
.csl-toolkit-body{padding:12px 16px 16px;max-height:420px;overflow-y:auto}
.csl-tk-group{margin-bottom:14px}
.csl-tk-group:last-child{margin-bottom:0}
.csl-tk-group-header{display:flex;align-items:center;gap:8px;padding:6px 0 6px;border-bottom:1px solid var(--border);margin-bottom:6px}
.csl-tk-group-label{font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:600;color:var(--forest);letter-spacing:.02em}
.csl-tk-group-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:10px;background:var(--forest);color:var(--cream);font-size:.65rem;font-weight:600;padding:0 6px}
.csl-tk-items{list-style:none;margin:0;padding:0}
.csl-tk-item{display:flex;align-items:flex-start;gap:8px;padding:7px 4px;border-radius:var(--r-sm);transition:background .12s}
.csl-tk-item:hover{background:var(--forest-pale)}
.csl-tk-item-check{width:18px;height:18px;min-width:18px;border-radius:4px;background:var(--forest);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;margin-top:1px}
.csl-tk-item-check:hover{background:#c53030}
.csl-tk-item-text{flex:1;min-width:0}
.csl-tk-item-name{font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;color:var(--deep);line-height:1.3}
.csl-tk-item-desc{font-size:.7rem;color:var(--muted);line-height:1.4;margin-top:1px}
.csl-tk-item-remove{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;border-radius:4px;transition:all .15s;opacity:.5;display:flex;align-items:center;justify-content:center;margin-top:1px}
.csl-tk-item-remove:hover{color:#c53030;background:#fff5f5;opacity:1}

/* Responsive */
@media(max-width:600px){
  .csl-app{padding:0 0 40px}
  .csl-hero{padding:28px 16px 32px;border-radius:var(--r-sm)}
  .csl-hero-title{font-size:clamp(1.3rem,5vw,1.7rem)}
  .csl-hero-desc{font-size:.82rem;max-width:100%}
  .csl-hero-disclaimer{max-width:100%;font-size:.72rem;padding:8px 12px}
  .csl-filter-wrap{padding:3px;gap:1px}
  .csl-filter-btn{padding:7px 10px;font-size:.72rem}
  .csl-card-header{flex-wrap:wrap;gap:10px;padding:12px 14px 10px}
  .csl-card-actions{width:100%;justify-content:flex-end}
  .csl-card-body{padding:12px 14px 14px}
  .csl-card-title{font-size:.95rem}
  .csl-card-note{font-size:.7rem}
  .csl-global-actions{flex-direction:column}
  .csl-global-btn{justify-content:center}
  .csl-sub-header{flex-wrap:wrap;gap:6px;padding:6px 8px}
  .csl-sub-label{font-size:.65rem;letter-spacing:1px}
  .csl-item{padding:7px 8px;gap:8px}
  .csl-item-name{font-size:.82rem}
  .csl-item-detail{font-size:.7rem}
  .csl-progress-wrap{padding:8px 12px;gap:8px}
  .csl-intro-tip{padding:8px 12px;gap:8px}
  .csl-group-label{font-size:1rem;margin:20px 0 10px}
  .csl-share-popup{min-width:auto;max-width:calc(100vw - 40px);left:50%;transform:translate(-50%,-50%)}
  .csl-toolkit-header{flex-direction:column;align-items:flex-start;padding:12px 14px}
  .csl-toolkit-header-right{width:100%;justify-content:flex-end}
  .csl-toolkit-body{padding:10px 12px 14px;max-height:320px}
  .csl-tk-item-name{font-size:.78rem}
}


/* ═══ NOURISHMENT CENTER (v3) ═══ */
:root {
  --forest:        #0D3B2E;
  --forest-mid:    #1A5240;
  --forest-bright: #2d5a3d;
  --sage-bg:       #3A5C4E;
  --sage-light:    #C8DDD1;
  --sage-pale:     #E8F0EB;
  --sage-ultra:    #F0F5F2;
  --off-white:     #F4F7F5;
  --cream:         #FAF8F4;
  --text-dark:     #1C2B26;
  --text-mid:      #3D5147;
  --text-light:    #6B8A7A;
  --border:        rgba(200,221,209,0.4);
  --white:         #FFFFFF;
  --gold:          #B8935A;
  --gold-light:    #F5EDE0;
  --radius:        16px;
  --radius-sm:     10px;
  --shadow:        0 2px 16px rgba(13,59,46,0.08);
  --shadow-md:     0 6px 28px rgba(13,59,46,0.13);
  --transition:    all 0.2s cubic-bezier(0.4,0,0.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--off-white);color:var(--text-dark);font-size:14px;line-height:1.6}

/* BANNER */
.nc-banner{background:linear-gradient(135deg,#EDF4F0 0%,#E2EDE8 55%,#D4E6DC 100%);padding:36px 40px 32px;position:relative;overflow:hidden;border-bottom:1px solid rgba(26,82,64,.10)}
.nc-banner::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 90% at 95% 50%,rgba(200,221,209,.55) 0%,transparent 60%),radial-gradient(ellipse 30% 50% at 5% 90%,rgba(160,185,172,.20) 0%,transparent 60%);pointer-events:none}
.nc-banner-icon{width:40px;height:40px;border-radius:10px;background:rgba(26,82,64,0.10);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.nc-banner h1{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:300;color:#1C2B25;letter-spacing:-0.01em;line-height:1.1;margin-bottom:10px}
.nc-banner h1 em{font-style:italic;color:#1A5240}
.nc-banner p{font-size:14px;color:#6B7F74;max-width:560px;line-height:1.6;font-weight:300}

/* INNER TABS */
.nc-tabs{display:flex;background:var(--white);border-bottom:1px solid var(--border);padding:0 40px}
.nc-tab{padding:14px 20px;font-size:13.5px;font-weight:500;color:var(--text-light);border:none;background:transparent;cursor:pointer;border-bottom:2px solid transparent;transition:var(--transition);font-family:'DM Sans',sans-serif;display:flex;align-items:center;gap:7px;margin-bottom:-1px}
.nc-tab:hover{color:var(--text-mid)}
.nc-tab.active{color:var(--forest-mid);border-bottom-color:var(--forest-mid)}

/* CONTENT */
.nc-content{padding:32px 40px;max-width:1000px}
.nc-panel{display:none}
.nc-panel.active{display:block;animation:fadeUp 0.25s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* CARDS */
.card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);padding:26px}
.card+.card{margin-top:14px}
.card-label{font-size:10.5px;font-weight:600;letter-spacing:0.13em;text-transform:uppercase;color:var(--text-light);margin-bottom:6px}
.card-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:var(--forest);line-height:1.2;margin-bottom:4px}
.card-desc{font-size:13.5px;color:var(--text-light);line-height:1.6;font-weight:300}

/* NUTRIENTS */
.nutrient-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:18px}
.nutrient-item{background:var(--sage-ultra);border-radius:var(--radius-sm);padding:15px;border-left:3px solid var(--forest-mid)}
.nutrient-header{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.nutrient-name{font-size:12.5px;font-weight:600;color:var(--forest-mid)}
.nutrient-desc{font-size:12.5px;color:var(--text-mid);line-height:1.5}
.nutrient-food{font-size:11.5px;color:var(--text-light);margin-top:5px;font-style:italic}

/* SNACKS */
.snack-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.snack-chip{display:flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--border);border-radius:99px;padding:7px 14px;font-size:13px;color:var(--text-mid)}
.snack-chip svg{color:var(--forest-mid)}

/* TIPS */
.tips-list{list-style:none;margin-top:14px}
.tips-list li{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--sage-pale);font-size:13.5px;color:var(--text-mid);line-height:1.5}
.tips-list li:last-child{border-bottom:none}
.tip-dot{width:5px;height:5px;border-radius:50%;background:var(--forest-mid);flex-shrink:0;margin-top:8px}

/* FACTS */
.fact-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.fact-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);padding:18px;text-align:center;box-shadow:var(--shadow)}
.fact-num{font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:500;color:var(--forest);line-height:1}
.fact-label{font-size:12px;color:var(--text-light);margin-top:4px;line-height:1.4}

/* RECIPES */
.rfrow-cond{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:7px}
.rfrow-meal{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:16px}
.rfbtn{padding:6px 14px;border-radius:99px;border:1px solid var(--border);background:var(--white);color:var(--text-mid);font-size:12.5px;font-weight:500;cursor:pointer;transition:var(--transition);font-family:'DM Sans',sans-serif;display:inline-flex;align-items:center;gap:5px}
.rfbtn:hover{border-color:var(--forest-mid);color:var(--forest-mid)}
.rfbtn.active{background:var(--forest-mid);color:var(--white);border-color:var(--forest-mid)}
.rfbtn-cond{font-size:12px}
.rfbtn-ico{display:inline-flex;align-items:center;flex-shrink:0;width:13px;height:13px}
.rfbtn-ico svg{width:13px;height:13px}
.rg-cond-icon{display:inline-flex;align-items:center;width:16px;height:16px;flex-shrink:0}
.rg-cond-icon svg{width:16px;height:16px}
.recipe-cond-label svg{width:10px;height:10px;vertical-align:-1px}
.rfbtn-count{font-size:9.5px;font-weight:600;background:rgba(13,59,46,0.1);border-radius:99px;padding:1px 6px}
.rfbtn.active .rfbtn-count{background:rgba(255,255,255,0.22)}
.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.recipe-grid-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:6px}
.rg-cond-header{display:flex;align-items:center;gap:8px;padding:14px 0 8px;border-top:1px solid var(--border);margin-top:8px}
.rg-cond-header:first-child{border-top:none;margin-top:0;padding-top:2px}
.rg-cond-icon{font-size:15px;line-height:1}
.rg-cond-name{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:500;color:var(--forest)}
.rg-cond-pill{font-size:10px;font-weight:500;background:var(--sage-ultra);color:var(--forest-mid);padding:2px 10px;border-radius:99px;margin-left:auto}
#aw-recipes-card .rfrow-cond{margin-bottom:8px}
#aw-recipes-card .recipe-grid-inner{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
#aw-recipes-card .rg-cond-header{margin-top:14px}
.recipe-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;cursor:pointer;transition:var(--transition)}
.recipe-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.recipe-top{background:linear-gradient(145deg,var(--sage-bg),var(--forest-bright));padding:17px 18px 15px;display:flex;align-items:flex-end;justify-content:space-between;min-height:74px}
.recipe-cat{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:rgba(200,221,209,0.8)}
.recipe-tagline{font-size:11px;color:rgba(200,221,209,0.65);margin-top:2px}
.recipe-body{padding:15px}
.recipe-cond-label{font-size:9px;font-weight:600;letter-spacing:0.07em;text-transform:uppercase;color:var(--forest-mid);opacity:0.75;margin-bottom:3px}
.recipe-name{font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:500;color:var(--forest);line-height:1.25;margin-bottom:6px}
.recipe-why{font-size:12px;color:var(--text-light);line-height:1.5}
.recipe-meta{display:flex;gap:12px;margin-top:11px}
.rmeta{font-size:11.5px;color:var(--text-light);display:flex;align-items:center;gap:4px}
.recipe-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}
.rtag{font-size:11px;font-weight:500;padding:3px 9px;border-radius:99px;background:var(--sage-ultra);color:var(--forest-mid)}

/* MODAL */
.overlay{display:none;position:fixed;inset:0;z-index:99999;background:rgba(13,59,46,0.5);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:20px}
.overlay.open{display:flex;animation:fi 0.18s ease}
@keyframes fi{from{opacity:0}to{opacity:1}}
.modal{background:var(--cream);border-radius:20px;max-width:660px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:0 24px 64px rgba(0,0,0,0.22);animation:su 0.22s ease}
@keyframes su{from{transform:translateY(16px) scale(0.98)}to{transform:translateY(0) scale(1)}}
.modal-head{background:var(--sage-bg);padding:24px 28px 20px;border-radius:20px 20px 0 0;position:relative}
.modal-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.15);border:none;color:var(--white);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.modal-close:hover{background:rgba(255,255,255,0.25)}
.modal-sub{font-size:10.5px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--sage-light);opacity:0.8;margin-bottom:4px}
.modal-title{font-family:'Cormorant Garamond',serif;font-size:23px;font-weight:500;color:var(--white);line-height:1.2}
.modal-meta-row{display:flex;gap:16px;margin-top:10px;flex-wrap:wrap}
.mmi{font-size:12px;color:var(--sage-light);display:flex;align-items:center;gap:5px}
.modal-body{padding:24px 28px}
.modal-why{background:var(--sage-ultra);border-radius:var(--radius-sm);padding:13px 15px;margin-bottom:20px;border-left:3px solid var(--forest-mid)}
.modal-why-label{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--forest-mid);margin-bottom:3px}
.modal-why-text{font-size:13.5px;color:var(--text-mid);line-height:1.55}
.modal-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.mcol-label{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-light);margin-bottom:9px}
.ing-list{list-style:none}
.ing-list li{font-size:13px;color:var(--text-mid);padding:5px 0;border-bottom:1px solid var(--sage-pale);line-height:1.4}
.ing-list li:last-child{border-bottom:none}
.dir-list{list-style:none;counter-reset:step}
.dir-list li{display:flex;gap:10px;font-size:13px;color:var(--text-mid);padding:7px 0;border-bottom:1px solid var(--sage-pale);line-height:1.5;counter-increment:step}
.dir-list li::before{content:counter(step);min-width:20px;height:20px;border-radius:50%;background:var(--forest-mid);color:var(--white);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.modal-note{background:var(--gold-light);border-radius:var(--radius-sm);padding:13px 15px;margin-top:16px;border-left:3px solid var(--gold)}
.modal-note-label{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:3px}
.modal-note-text{font-size:13px;color:var(--text-dark);line-height:1.5}

/* GUIDE */
.guide-wrap{max-width:620px}
.guide-prog{display:flex;gap:6px;margin-bottom:20px}
.gps{height:3px;flex:1;border-radius:99px;background:var(--sage-pale);transition:var(--transition)}
.gps.done{background:var(--forest-mid)}
.gps.active{background:var(--sage-light)}
.guide-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);padding:26px}
.gstep-label{font-size:10.5px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-light);margin-bottom:5px}
.gstep-q{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:500;color:var(--forest);line-height:1.25;margin-bottom:4px}
.gstep-hint{font-size:13px;color:var(--text-light);margin-bottom:18px;line-height:1.5}
.guide-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.guide-opt{padding:13px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--white);cursor:pointer;transition:var(--transition);text-align:left;font-family:'DM Sans',sans-serif}
.guide-opt:hover{border-color:var(--forest-mid);background:var(--sage-ultra)}
.guide-opt.sel{border-color:var(--forest-mid);background:var(--sage-pale)}
.go-label{font-size:13.5px;font-weight:500;color:var(--text-dark);display:block}
.go-desc{font-size:12px;color:var(--text-light);margin-top:2px}
.guide-nav{display:flex;justify-content:space-between;align-items:center;margin-top:20px}
.btn-outline{background:transparent;border:1.5px solid var(--border);color:var(--text-mid);padding:9px 20px;border-radius:99px;font-size:13.5px;font-weight:500;cursor:pointer;transition:var(--transition);font-family:'DM Sans',sans-serif}
.btn-outline:hover{border-color:var(--forest-mid);color:var(--forest)}
.btn-primary{background:var(--forest-mid);color:var(--white);padding:10px 22px;border-radius:99px;font-size:13.5px;font-weight:500;border:none;cursor:pointer;transition:var(--transition);font-family:'DM Sans',sans-serif;display:flex;align-items:center;gap:7px}
.btn-primary:hover{background:var(--forest)}
.btn-primary:disabled{opacity:0.45;cursor:not-allowed}
.btn-dark{background:var(--forest);color:var(--white);padding:11px 24px;border-radius:99px;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:var(--transition);font-family:'DM Sans',sans-serif;display:flex;align-items:center;gap:7px}
.btn-dark:hover{background:#0a2e23}
.btn-dark:disabled{opacity:0.45;cursor:not-allowed}

/* LOADING */
.loading{text-align:center;padding:56px 32px}
.spinner{width:36px;height:36px;border-radius:50%;border:2.5px solid var(--sage-pale);border-top-color:var(--forest-mid);animation:spin 0.75s linear infinite;margin:0 auto 14px}
@keyframes spin{to{transform:rotate(360deg)}}
.loading-text{font-size:13.5px;color:var(--text-light)}

/* GUIDE OUTPUT */
.guide-out{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden}
.guide-out-head{background:var(--sage-bg);padding:24px 26px}
.guide-out-head .ol{font-size:10px;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;color:var(--sage-light);opacity:0.8;margin-bottom:3px}
.guide-out-head .ot{font-family:'Cormorant Garamond',serif;font-size:25px;font-weight:500;color:var(--white)}
.guide-out-head .oq{font-size:13px;color:rgba(200,221,209,0.85);margin-top:4px;font-weight:300}
.guide-out-body{padding:24px 26px}
.out-sec{margin-bottom:24px}
.out-sec-title{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:500;color:var(--forest);margin-bottom:11px;display:flex;align-items:center;gap:8px}
.day-row{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:8px}
.day-head{background:var(--sage-bg);padding:8px 13px}
.day-head span{font-size:12px;font-weight:600;color:var(--white)}
.day-meals{display:grid;grid-template-columns:repeat(4,1fr)}
.day-meal{padding:9px 11px;border-right:1px solid var(--sage-pale)}
.day-meal:last-child{border-right:none}
.dc{font-size:10px;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--text-light);margin-bottom:3px}
.dv{font-size:12px;color:var(--text-mid);line-height:1.4}
.pri-item{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--sage-pale)}
.pri-item:last-child{border-bottom:none}
.pnum{width:24px;height:24px;border-radius:50%;background:var(--forest-mid);color:var(--white);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pn{font-size:13.5px;font-weight:600;color:var(--forest);margin-bottom:2px}
.pa{font-size:13px;color:var(--text-mid)}
.wisdom{background:var(--gold-light);border-radius:var(--radius-sm);padding:16px 18px;border:1px solid rgba(184,147,90,0.2)}
.wisdom-label{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.wisdom-text{font-size:13.5px;color:var(--text-dark);line-height:1.65;font-style:italic}

/* GROCERY */
.grocery-setup{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:18px}
.gpcard{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);padding:18px 20px}
.gp-label{font-size:10.5px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-light);margin-bottom:11px}
.gp-opts{display:flex;flex-direction:column;gap:6px}
.gp-opt{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--text-mid);cursor:pointer;padding:5px 8px;border-radius:var(--radius-sm);transition:var(--transition)}
.gp-opt:hover{background:var(--sage-ultra)}
.gp-opt input{accent-color:var(--forest-mid);width:15px;height:15px;cursor:pointer}
.grocery-bar{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px;box-shadow:var(--shadow)}
.gbar-title{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:500;color:var(--forest)}
.gbar-desc{font-size:13px;color:var(--text-light);margin-top:2px}
.budget-badge{display:inline-flex;align-items:center;gap:7px;background:var(--sage-ultra);color:var(--forest-mid);border-radius:99px;padding:6px 14px;font-size:13px;font-weight:500;margin-bottom:16px}
.gsection{margin-bottom:14px}
.gsection-head{display:flex;align-items:center;gap:9px;background:var(--sage-bg);padding:9px 15px;border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer}
.gs-icon{color:rgba(200,221,209,0.85)}
.gs-name{font-size:13.5px;font-weight:600;color:var(--white)}
.gs-count{font-size:12px;color:var(--sage-light);opacity:0.75;margin-left:auto}
.gitems{background:var(--white);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm)}
.gitem{display:flex;align-items:flex-start;gap:12px;padding:11px 15px;border-bottom:1px solid var(--sage-pale);transition:var(--transition)}
.gitem:last-child{border-bottom:none}
.gitem:hover{background:var(--sage-ultra)}
.gcheck{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--sage-light);flex-shrink:0;margin-top:1px;cursor:pointer;background:var(--white);display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.gcheck.done{background:var(--forest-mid);border-color:var(--forest-mid)}
.gcheck.done::after{content:'';display:block;width:5px;height:9px;border:2px solid white;border-top:none;border-left:none;transform:rotate(45deg) translate(-1px,-1px)}
.gi-info{flex:1}
.gi-name{font-size:13.5px;font-weight:500;color:var(--text-dark)}
.gi-meta{display:flex;gap:14px;margin-top:3px;flex-wrap:wrap}
.gi-amount{font-size:12px;color:var(--text-light)}
.gi-note{font-size:12px;color:var(--text-light);font-style:italic}
.gi-prio{font-size:10.5px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;padding:2px 8px;border-radius:99px;flex-shrink:0;margin-top:2px}
.prio-essential{background:rgba(26,82,64,0.1);color:var(--forest-mid)}
.prio-helpful{background:rgba(184,147,90,0.12);color:var(--gold)}
.prio-optional{background:var(--sage-ultra);color:var(--text-light)}
.grocery-tips{background:var(--gold-light);border-radius:var(--radius);padding:16px 18px;margin-top:6px;border:1px solid rgba(184,147,90,0.2)}
.gt-label{font-size:10.5px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:9px}
.gt-list{list-style:none;display:flex;flex-direction:column;gap:7px}
.gt-list li{font-size:13px;color:var(--text-dark);display:flex;gap:8px;align-items:flex-start}

/* CTA BANNER */
.cta-bar{margin-top:18px;background:var(--sage-bg);border-radius:var(--radius);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.cta-title{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:500;color:var(--white)}
.cta-desc{font-size:13px;color:rgba(200,221,209,0.8);margin-top:2px;font-weight:300}

@media(max-width:800px){
  .nc-banner{padding:22px}
  .nc-content{padding:18px}
  .nc-tabs{padding:0 18px}
  .nutrient-grid,.recipe-grid{grid-template-columns:1fr 1fr}
  .grocery-setup,.guide-opts,.modal-2col{grid-template-columns:1fr}
  .fact-strip,.day-meals{grid-template-columns:1fr 1fr}
}


/* ═══ CONDITION DRILL-DOWN ═══ */
.cl-condition-section{margin-top:8px}
.cl-cond-section-title{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;color:var(--deep);margin:6px 0 4px}
.cl-cond-section-desc{font-size:.84rem;color:var(--muted);line-height:1.6;margin-bottom:18px;max-width:640px}
.cl-condition-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.cl-condition-card{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--white);border:1.5px solid var(--border);border-radius:var(--r);cursor:pointer;text-align:left;transition:all .15s;width:100%;font-family:inherit}
.cl-condition-card:hover{border-color:currentColor;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.06)}
.cl-cond-card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}
.cl-cond-card-body{flex:1;min-width:0}
.cl-cond-card-name{font-weight:700;font-size:.92rem;margin-bottom:2px}
.cl-cond-card-tagline{font-size:.78rem;color:var(--muted);line-height:1.4}
.cl-cond-card-arrow{font-size:1.1rem;font-weight:700;flex-shrink:0;opacity:.6;transition:opacity .15s}
.cl-condition-card:hover .cl-cond-card-arrow{opacity:1}

/* Condition view */
.cl-cond-facts{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.cl-cond-fact-row{display:flex;align-items:baseline;gap:10px;min-width:0}
.cl-cond-fact-val{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:700;min-width:0;overflow-wrap:break-word;word-wrap:break-word}
.cl-cond-fact-label{font-size:.82rem;color:var(--muted);line-height:1.4}

/* Condition stage cards */
.cl-cond-stage-wrap{margin-bottom:8px}
.cl-cond-stage-label{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--deep)}
.cl-cond-stage-icon{font-size:1rem}
.cl-cond-stage-who{font-weight:400;font-size:.78rem;color:var(--muted);margin-left:4px}
.cl-cond-stage-body{padding:16px 18px;background:var(--white);border:1px solid var(--border);border-radius:0 0 var(--r-sm) var(--r-sm);border-top:none}
.cl-cond-stage-desc{font-size:.84rem;color:var(--deep);line-height:1.65;margin:0 0 16px}
.cl-cond-stage-section{margin-bottom:16px}
.cl-cond-stage-section:last-child{margin-bottom:0}
.cl-cond-action-row{display:flex;align-items:flex-start;gap:4px;margin-bottom:2px}
.cl-cond-action{display:flex;align-items:flex-start;gap:8px}
.cl-cond-behavior{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}

/* Signal item wrap for heart buttons */
.cl-signal-item-wrap{display:flex;align-items:flex-start;gap:4px}

@media(max-width:600px){
  .cl-condition-grid{grid-template-columns:1fr}
  .cl-cond-card-icon{width:40px;height:40px;font-size:1.2rem;border-radius:10px}
  .cl-cond-card-name{font-size:.85rem}
  .cl-cond-stage-body{padding:12px 14px}
}

/* ── CARE COST ESTIMATOR ── */
.ce-hero{text-align:center;margin-bottom:36px}
.ce-hero-badge{font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:1.5px;color:#2C5F3E;text-transform:uppercase;margin-bottom:10px}
.ce-hero-title{font-family:var(--font-display);font-size:clamp(1.8rem,5vw,2.8rem);font-weight:700;color:#1A3D2B;line-height:1.1;margin-bottom:12px}
.ce-hero-desc{font-family:var(--font-body);font-size:.95rem;color:#5C6B5E;max-width:520px;margin:0 auto;line-height:1.65}

/* Steps */
.ce-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:36px;flex-wrap:wrap}
.ce-step-item{display:flex;flex-direction:column;align-items:center;gap:5px}
.ce-step-dot{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;font-family:var(--font-body);border:2px solid #C4B99A;color:#C4B99A;background:transparent;transition:all .3s}
.ce-step-dot.ce-step-done{background:#2C5F3E;border-color:#2C5F3E;color:#fff}
.ce-step-dot.ce-step-active{background:#fff;border-color:#2C5F3E;color:#2C5F3E}
.ce-step-label{font-size:.68rem;font-family:var(--font-body);color:#B0A892;transition:color .3s}
.ce-step-label-on{color:#2C5F3E}
.ce-step-line{width:48px;height:2px;background:#D8D0C0;margin:0 6px;margin-bottom:18px;transition:background .3s}
.ce-step-line-done{background:#2C5F3E}

/* Cards */
.ce-card{background:var(--white);border-radius:var(--r);padding:28px 28px;margin-bottom:16px;box-shadow:var(--shadow-sm);border:1.5px solid #EBE3D5;animation:fadeUp .4s ease forwards}
.ce-card-vet{border-color:#B8D4BE}
.ce-card-header{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.ce-card-icon{width:34px;height:34px;border-radius:50%;background:#F0EBE0;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;transition:background .3s}
.ce-card-icon-done{background:#2C5F3E;color:#fff}
.ce-card-title{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:#1A3D2B}
.ce-card-hint{font-size:.75rem;color:#8A9080;margin-top:2px}

/* Select */
.ce-select-wrap{position:relative}
.ce-select{width:100%;padding:12px 40px 12px 14px;font-family:var(--font-body);font-size:.9rem;background:#FAF7F2;border:2px solid #D8D0C0;border-radius:12px;color:#1A3D2B;cursor:pointer;appearance:none;-webkit-appearance:none}
.ce-select:focus{outline:2px solid #2C5F3E;outline-offset:2px}
.ce-select-arrow{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#7A8C7E;pointer-events:none;font-size:.7rem}

/* Options grid */
.ce-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.ce-ins-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.ce-option{background:#FAF7F2;border:2px solid #D8D0C0;border-radius:12px;padding:14px 16px;cursor:pointer;text-align:left;width:100%;transition:all .2s;font-family:var(--font-body)}
.ce-option:hover{border-color:#A8C89B}
.ce-option-on{background:#2C5F3E;border-color:#2C5F3E}
.ce-option-label{font-weight:600;font-size:.9rem;color:#1A3D2B;margin-bottom:3px}
.ce-option-label-on{color:#fff}
.ce-option-desc{font-size:.75rem;color:#7A8C7E;line-height:1.4;margin-bottom:6px}
.ce-option-desc-on{color:rgba(255,255,255,.8)}
.ce-option-hours{font-size:.7rem;font-weight:600;color:#2C5F3E}
.ce-option-hours-on{color:#A8C89B}

/* Veteran toggle */
.ce-vet-teaser{background:linear-gradient(135deg,#F0F5F1,#EAF2EC);border-radius:12px;padding:12px 16px;margin-bottom:16px;border:1px solid #C8DEC8;font-family:var(--font-body);font-size:.78rem;color:#3D5E42;line-height:1.6}
.ce-vet-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ce-vet-btn{background:#FAF7F2;border:2px solid #D8D0C0;border-radius:12px;padding:16px 18px;cursor:pointer;text-align:left;transition:all .2s;font-family:var(--font-body)}
.ce-vet-btn:hover{border-color:#A8C89B}
.ce-vet-btn-on{background:linear-gradient(135deg,#2C5F3E,#3D7A55);border-color:#2C5F3E}
.ce-vet-btn-no{border-color:#2C5F3E}
.ce-vet-btn-label{font-weight:700;font-size:.9rem;color:#1A3D2B;margin-bottom:3px}
.ce-vet-btn-label-on{color:#fff}
.ce-vet-btn-sub{font-size:.75rem;color:#7A8C7E}
.ce-vet-btn-sub-on{color:rgba(255,255,255,.75)}

/* Info banners */
.ce-info-banner{background:linear-gradient(135deg,#EAF2EC,#F0F5ED);border:1.5px solid #C4D9C6;border-radius:14px;padding:14px 18px;margin-bottom:14px;display:flex;gap:10px;align-items:flex-start;font-family:var(--font-body);font-size:.82rem;color:#3D5E42;line-height:1.55}
.ce-vet-banner{background:linear-gradient(135deg,#1A3D6B,#1E4D8C);border-radius:14px;padding:14px 18px;margin-bottom:20px;display:flex;gap:12px;align-items:flex-start;font-family:var(--font-body);font-size:.82rem;color:rgba(255,255,255,.9);line-height:1.6}

/* Results title */
.ce-results-title{font-family:var(--font-display);font-size:1.6rem;font-weight:600;color:#1A3D2B;margin-bottom:18px;text-align:center}

/* Cost Cards */
.ce-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-bottom:28px}
.ce-cost-card{background:#FAF7F2;border:1.5px solid #E8E0D0;border-radius:var(--r);padding:22px 20px;position:relative;box-shadow:var(--shadow-sm);transition:transform .2s}
.ce-cost-card:hover{transform:translateY(-3px)}
.ce-cost-card-best{background:linear-gradient(135deg,#2C5F3E 0%,#3D7A55 100%);border:none;box-shadow:0 8px 32px rgba(44,95,62,.22)}
.ce-lowest-tag{position:absolute;top:-10px;left:18px;background:#A8C89B;color:#1A3D2B;font-size:.68rem;font-weight:700;letter-spacing:1px;padding:2px 10px;border-radius:20px;font-family:var(--font-body)}
.ce-card-label{font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:#2C3E2D;margin-bottom:10px}
.ce-card-label-best{color:#fff}
.ce-card-price{font-family:var(--font-display);font-size:2.2rem;font-weight:700;color:#2C5F3E;line-height:1}
.ce-card-price-best{color:#A8C89B}
.ce-card-per{font-size:.82rem;font-weight:400;color:#7A8C7E;margin-left:2px}
.ce-card-annual{font-family:var(--font-body);font-size:.75rem;color:#9A9080;margin-top:3px;margin-bottom:14px}
.ce-card-annual-best{color:rgba(255,255,255,.6)}
.ce-coverage-bar-wrap{margin-bottom:10px}
.ce-coverage-row{display:flex;justify-content:space-between;font-family:var(--font-body);font-size:.7rem;color:#7A8C7E;margin-bottom:4px}
.ce-cost-card-best .ce-coverage-row{color:rgba(255,255,255,.75)}
.ce-bar-bg{height:6px;background:#E8E0D0;border-radius:99px}
.ce-bar-bg-best{background:rgba(255,255,255,.2)}
.ce-bar-fill{height:6px;background:#2C5F3E;border-radius:99px;transition:width 1s ease}
.ce-bar-fill-best{background:#A8C89B}
.ce-coverage-detail{display:flex;justify-content:space-between;margin-top:7px;font-family:var(--font-body);font-size:.75rem}
.ce-covered-amt{color:#8A9E8D}
.ce-covered-amt-best{color:rgba(255,255,255,.65)}
.ce-oop-amt{font-weight:700;color:#2C3E2D}
.ce-oop-amt-best{color:#fff}
.ce-full-oop{font-family:var(--font-body);font-size:.75rem;color:#8A9E8D;margin-bottom:10px}
.ce-cost-card-best .ce-full-oop{color:rgba(255,255,255,.65)}

/* Hours */
.ce-hours-wrap{background:var(--white);border-radius:var(--r);padding:20px 24px;margin-bottom:28px;border:1.5px solid #EBE3D5;display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.ce-hours-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:#1A3D2B;margin-bottom:3px}
.ce-hours-sub{font-size:.8rem;color:#7A8C7E}
.ce-hour-chips{display:flex;gap:6px;flex-wrap:wrap}
.ce-hour-chip{padding:5px 12px;border-radius:99px;background:#EBE3D5;font-family:var(--font-body);font-size:.75rem;font-weight:600;color:#B0A892;transition:background .3s}
.ce-hour-chip-on{background:#2C5F3E;color:#fff}
.ce-hours-value{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:#2C5F3E;white-space:nowrap}

/* Resources */
.ce-section-title{font-family:var(--font-display);font-size:1.4rem;font-weight:600;color:#1A3D2B;margin-bottom:4px;text-align:center}
.ce-section-desc{font-family:var(--font-body);font-size:.82rem;color:#7A8C7E;text-align:center;margin-bottom:20px}
.ce-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:28px}
.ce-resource-card{background:var(--white);border-radius:14px;padding:18px 20px;border:1.5px solid #EBE3D5;box-shadow:var(--shadow-sm)}
.ce-resource-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:#1A3D2B;margin-bottom:6px}
.ce-resource-desc{font-family:var(--font-body);font-size:.82rem;color:#5C6B5E;line-height:1.6;margin-bottom:10px}
.ce-resource-link{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-body);font-size:.78rem;font-weight:600;color:#2C5F3E;text-decoration:none;border-bottom:1px solid #A8C89B;padding-bottom:1px}
.ce-resource-link:hover{color:#1A3D2B}

/* Veteran resources */
.ce-vet-section-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:4px}
.ce-vet-section-title{font-family:var(--font-display);font-size:1.4rem;font-weight:600;color:#1A3D6B}
.ce-vet-resource-card{background:linear-gradient(135deg,#F0F4FA,#EAF0F8);border-radius:14px;padding:18px 20px;border:1.5px solid #C0D0E8;box-shadow:var(--shadow-sm)}
.ce-vet-resource-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px;gap:8px;flex-wrap:wrap}
.ce-vet-resource-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:#1A3D6B}
.ce-vet-resource-tag{background:#1A3D6B;color:#A8C8FF;font-size:.65rem;font-weight:700;padding:2px 9px;border-radius:99px;font-family:var(--font-body);white-space:nowrap;flex-shrink:0}
.ce-vet-resource-desc{font-family:var(--font-body);font-size:.82rem;color:#3D4D6B;line-height:1.6;margin-bottom:10px}
.ce-vet-resource-link{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-body);font-size:.78rem;font-weight:600;color:#1A3D6B;text-decoration:none;border-bottom:1px solid #8AAAD0;padding-bottom:1px}
.ce-vet-resource-link:hover{color:#0F2A4D}
.ce-vet-phone{background:#1A3D6B;border-radius:14px;padding:14px 20px;margin-top:16px;display:flex;gap:10px;align-items:center;font-family:var(--font-body);font-size:.82rem;color:rgba(255,255,255,.85);line-height:1.55}

/* CTA */
.ce-cta{background:linear-gradient(135deg,#2C5F3E 0%,#1A3D2B 100%);border-radius:var(--r);padding:32px 36px;text-align:center;margin-top:28px}
.ce-cta-title{font-family:var(--font-display);font-size:1.6rem;font-weight:600;color:#fff;margin-bottom:8px}
.ce-cta-desc{font-family:var(--font-body);font-size:.88rem;color:rgba(255,255,255,.75);margin-bottom:20px;max-width:480px;margin-left:auto;margin-right:auto}
.ce-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.ce-cta-primary{background:#A8C89B;color:#1A3D2B;border:none;border-radius:99px;padding:11px 24px;font-family:var(--font-body);font-size:.88rem;font-weight:700;cursor:pointer;letter-spacing:.3px;transition:background .2s}
.ce-cta-primary:hover{background:#8FBD7E}
.ce-cta-secondary{background:transparent;color:rgba(255,255,255,.8);border:2px solid rgba(255,255,255,.3);border-radius:99px;padding:11px 24px;font-family:var(--font-body);font-size:.88rem;font-weight:600;cursor:pointer;transition:border-color .2s}
.ce-cta-secondary:hover{border-color:rgba(255,255,255,.6)}

/* Footer */
.ce-footer{text-align:center;margin-top:36px;font-family:var(--font-body);font-size:.7rem;color:#B0A892;line-height:1.6}

@media(max-width:600px){
  .ce-steps{gap:0}
  .ce-step-line{width:28px;margin:0 3px}
  .ce-step-dot{width:26px;height:26px;font-size:.7rem}
  .ce-step-label{font-size:.6rem}
  .ce-options-grid{grid-template-columns:1fr}
  .ce-ins-grid{grid-template-columns:1fr 1fr}
  .ce-vet-grid{grid-template-columns:1fr}
  .ce-cards-grid{grid-template-columns:1fr}
  .ce-card{padding:20px 18px}
  .ce-resource-grid{grid-template-columns:1fr}
  .ce-cta{padding:24px 20px}
  .ce-hours-value{font-size:1.4rem}
}

/* ═══════════════════════════════════════════════════════
   6-TAB NAVIGATION SYSTEM
   ═══════════════════════════════════════════════════════ */

/* ── App layout when sidebar is active (desktop) ── */
.app-layout-active{min-height:100vh}
.app-layout-active #nav{display:none}
.app-layout-active #mobile-nav{display:none!important}
.app-layout-active .dash-layout{grid-template-columns:1fr}
.app-layout-active .dash-side{display:none}
.app-layout-active .dash-main{height:auto;overflow-y:visible}

/* ── MOBILE BOTTOM TAB BAR — REMOVED ── */

/* ── DESKTOP LEFT SIDEBAR ── */
.app-sidebar{
  position:fixed;top:0;left:0;bottom:0;width:270px;z-index:250;
  background:#F4F2ED;
  display:none;flex-direction:column;
  padding:22px 18px 18px;overflow-y:auto;
  box-shadow:2px 0 24px rgba(0,0,0,.06);
}
.app-sidebar::-webkit-scrollbar{width:3px}
.app-sidebar::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:3px}
.sidebar-logo{display:flex;align-items:center;gap:10px;padding:0 6px 20px;border-bottom:1px solid rgba(0,0,0,.08);margin-bottom:0}
.sidebar-user-card{display:flex;align-items:center;gap:10px;padding:14px 8px;margin-bottom:16px;background:rgba(13,59,46,.05);border-radius:10px;margin-top:14px}
.sidebar-user-avatar{width:38px;height:38px;background:var(--forest);border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:.95rem;font-weight:600;color:var(--cream);flex-shrink:0}
.sidebar-user-info{display:flex;flex-direction:column;gap:1px;min-width:0}
.sidebar-user-name{font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:600;color:#2D3A35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-user-plan{font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:500;color:var(--forest-light)}
.sidebar-logo-text{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:#2D3A35;letter-spacing:.12em;text-transform:uppercase}
.sidebar-btn{
  display:flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:8px;
  font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:400;
  color:#4A5550;background:none;border:none;
  cursor:pointer;width:100%;text-align:left;
  transition:all .18s ease;position:relative;
  white-space:nowrap;
}
.sidebar-btn svg{width:17px;height:17px;flex-shrink:0;stroke:#5A6B63;transition:stroke .18s}
.sidebar-btn:hover{background:rgba(13,59,46,.06);color:#2D3A35}
.sidebar-btn:hover svg{stroke:#2D3A35}
.sidebar-btn.active{background:rgba(13,59,46,.1);color:#0D3B2E;font-weight:500}
.sidebar-btn.active svg{stroke:#0D3B2E}
.sidebar-btn.active::before{
  content:"";position:absolute;left:-14px;top:6px;bottom:6px;width:3px;
  background:#0D3B2E;border-radius:0 3px 3px 0;
  animation:sidebarAccentIn .2s ease;
}
@keyframes sidebarAccentIn{from{height:0;top:50%}to{height:auto;top:6px}}
.sidebar-sub-items{display:flex;flex-direction:column;gap:1px;padding-left:20px;max-height:0;overflow:hidden;opacity:0;transition:max-height .25s ease, opacity .2s ease, padding .2s ease}
.sidebar-btn:hover + .sidebar-sub-items,
.sidebar-sub-items:hover{max-height:300px;overflow:visible;opacity:1;padding-top:2px;padding-bottom:2px}
.sidebar-sub-btn{
  display:block;padding:7px 14px;border-radius:6px;
  font-family:'DM Sans',sans-serif;font-size:.81rem;font-weight:400;
  color:#6B7C74;background:none;border:none;
  cursor:pointer;width:100%;text-align:left;transition:all .18s ease;
}
.sidebar-sub-btn:hover{color:#2D3A35;background:rgba(13,59,46,.05)}
.sidebar-sub-btn.active{color:#0D3B2E;font-weight:500;background:rgba(13,59,46,.08)}

/* Ask EVO — raised brand button in sidebar */
.sidebar-evo-wrap{padding:8px 6px;margin-top:4px}
.sidebar-evo-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;padding:12px 16px;
  background:linear-gradient(180deg,#0D3B2E 0%,#1a4a38 100%);
  color:#F4F7F5;
  border:none;border-radius:10px;
  cursor:pointer;
  font-family:'DM Sans',sans-serif;font-size:.88rem;font-weight:600;
  letter-spacing:.02em;
  box-shadow:0 2px 8px rgba(13,59,46,.18),0 1px 2px rgba(0,0,0,.06);
  transition:all .2s ease;
  position:relative;overflow:hidden;
}
.sidebar-evo-btn::before{
  content:"";position:absolute;top:0;left:0;right:0;height:50%;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0));
  border-radius:10px 10px 0 0;
  pointer-events:none;
}
.sidebar-evo-btn:hover{
  background:linear-gradient(180deg,#145A48 0%,#1a4a38 100%);
  box-shadow:0 4px 14px rgba(13,59,46,.24),0 2px 4px rgba(0,0,0,.08);
  transform:translateY(-1px);
}
.sidebar-evo-btn:active{
  transform:translateY(0);
  box-shadow:0 1px 4px rgba(13,59,46,.12);
}
.sidebar-evo-btn.active{
  background:linear-gradient(180deg,#145A48 0%,#1a5240 100%);
  box-shadow:0 2px 10px rgba(13,59,46,.22),0 1px 2px rgba(0,0,0,.06);
}
.sidebar-evo-sparkle{
  font-size:1rem;
  font-family:'Cormorant Garamond',serif;
  color:#8fbc8a;
}
.sidebar-evo-label{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-weight:700;
  font-size:1.05rem;letter-spacing:.03em;
  color:#F4F7F5;
}

/* Profile — small/muted at bottom */
.sidebar-btn-profile{font-size:.82rem;color:#7A8A82;margin-top:auto;padding-top:12px}
.sidebar-btn-profile svg{width:15px;height:15px;stroke:#8A9A92}
.sidebar-btn-profile:hover{color:#2D3A35}
.sidebar-btn-profile.active{color:#0D3B2E}
.sidebar-btn-profile.active svg{stroke:#0D3B2E}

/* Sidebar sign out */
.sidebar-signout-wrap{padding:8px 0 4px;border-top:1px solid rgba(0,0,0,.06);margin-top:8px}
.sidebar-signout-btn{
  display:flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:6px;
  font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:400;
  color:#8A9A92;background:none;border:none;
  cursor:pointer;width:100%;text-align:left;transition:all .18s;
}
.sidebar-signout-btn svg{width:14px;height:14px;stroke:#8A9A92}
.sidebar-signout-btn:hover{color:#c44;background:rgba(200,50,50,.06)}
.sidebar-signout-btn:hover svg{stroke:#c44}

/* ── PROFILE BOTTOM SHEET — REMOVED ── */

/* ── Tab content sections (visible inside dashboard when tabbed) ── */
.tab-content-page{display:none}
.tab-content-page.active{display:block;animation:fadeUp .3s ease}

/* ── Sub-tab pills for Family Hub & Tools ── */
.subtab-bar{
  display:flex;gap:10px;flex-wrap:wrap;padding:16px 0 10px;margin-bottom:8px;justify-content:flex-start;
}
.subtab-pill{
  padding:10px 24px;border-radius:100px;border:1.5px solid rgba(13,59,46,.15);
  font-size:.88rem;font-weight:500;cursor:pointer;
  transition:all .18s ease;background:white;color:var(--deep);
  font-family:'DM Sans',sans-serif;
  box-shadow:0 1px 3px rgba(0,0,0,.03);
}
.subtab-pill:hover{border-color:var(--forest);background:var(--forest-pale);transform:translateY(-1px)}
.subtab-pill.active{background:var(--forest);color:white;border-color:var(--forest);box-shadow:0 2px 8px rgba(13,59,46,.2)}

/* ── Body padding when sidebar active ── */
body.app-layout-active #nav{display:none}
body.app-layout-active #mobile-nav{display:none!important}
body.app-layout-active .dash-layout{grid-template-columns:1fr}
body.app-layout-active .dash-side{display:none}
body.app-layout-active .dash-main{height:auto;overflow-y:visible;display:block;width:100%;box-sizing:border-box}
body.app-layout-active .dash-layout{display:block}

/* ── Sidebar sub-profile items (bottom) ── */
.sidebar-sub-profile{padding-bottom:12px}

/* Show sidebar when authenticated */
body.app-layout-active .app-sidebar{display:flex}

/* ── Mobile sidebar toggle button ── */
.sidebar-mobile-toggle{
  display:none;position:fixed;top:14px;left:14px;z-index:260;
  width:44px;height:44px;border-radius:12px;border:none;
  background:rgba(244,247,245,0.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:0 2px 10px rgba(0,0,0,.1);
  cursor:pointer;align-items:center;justify-content:center;
  -webkit-tap-highlight-color:transparent;
  transition:background .18s;
}
.sidebar-mobile-toggle svg{width:22px;height:22px;stroke:#0D3B2E;stroke-width:2}
.sidebar-mobile-toggle:hover{background:rgba(244,247,245,1)}

/* ── Mobile sidebar overlay ── */
.sidebar-overlay{
  display:none;position:fixed;top:0;left:0;right:0;bottom:0;
  background:rgba(0,0,0,.35);z-index:249;
  animation:sheetOverlayIn .2s ease;
}
@keyframes sheetOverlayIn{from{opacity:0}to{opacity:1}}

/* ── Responsive: sidebar on all screens ── */
@media(min-width:901px){
  .sidebar-mobile-toggle{display:none!important}
  .sidebar-overlay{display:none!important}
  .app-sidebar .sidebar-close-btn{display:none!important}
}
@media(max-width:900px){
  body.app-layout-active .app-sidebar{
    display:none;
    width:280px;
    z-index:251;
    padding-top:60px;
  }
  body.app-layout-active .app-sidebar.sidebar-open{
    display:flex;
  }
  body.app-layout-active .sidebar-mobile-toggle{display:flex}
  body.app-layout-active .sidebar-overlay.active{display:block}
  body.app-layout-active{display:block}
  .app-layout-active #nav{display:none}
  .app-layout-active .dash-layout{grid-template-columns:1fr}
  .app-layout-active .dash-side{display:none}
  .app-layout-active .dash-main{height:auto;overflow-y:visible}
  .sidebar-close-btn{
    position:absolute;top:16px;right:16px;
    width:36px;height:36px;border-radius:8px;border:none;
    background:rgba(0,0,0,.06);cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    transition:background .18s;
  }
  .sidebar-close-btn svg{width:18px;height:18px;stroke:#2D3A35;stroke-width:2}
  .sidebar-close-btn:hover{background:rgba(0,0,0,.1)}
}

/* ── Desktop content offset when sidebar is active ── */
body.app-layout-active .page{margin-left:270px}
body.app-layout-active .dash-layout{margin-left:0}
body.app-layout-active #dashboard-page{margin-left:270px}
body.app-layout-active #home-page{margin-left:270px}
body.app-layout-active #assessment-page{margin-left:270px}
body.app-layout-active #toolkit-page{margin-left:270px}
@media(max-width:900px){
  body.app-layout-active .page,
  body.app-layout-active #dashboard-page,
  body.app-layout-active #home-page,
  body.app-layout-active #assessment-page,
  body.app-layout-active #toolkit-page{margin-left:0}
}

/* ═══════════════════════════════════════════════════
   DAILY RHYTHM PLANNER
   ═══════════════════════════════════════════════════ */
.dr-app{max-width:820px;margin:0 auto;padding:0 8px 40px}
.dr-app .dash-greet h1{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:600;color:var(--deep);margin-bottom:4px}
.dr-app .dr-tagline{font-size:.88rem;color:var(--muted);font-weight:300;margin-bottom:24px}

/* Step indicator */
.dr-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:32px;flex-wrap:wrap}
.dr-step-item{display:flex;flex-direction:column;align-items:center;gap:5px}
.dr-step-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;font-family:var(--font-body);border:2px solid #C4B99A;color:#C4B99A;background:transparent;transition:all .3s}
.dr-step-dot.dr-step-done{background:var(--forest);border-color:var(--forest);color:#fff}
.dr-step-dot.dr-step-active{background:#fff;border-color:var(--forest);color:var(--forest)}
.dr-step-label{font-size:.7rem;font-family:var(--font-body);color:#B0A892;transition:color .3s}
.dr-step-label.dr-step-label-on{color:var(--forest)}
.dr-step-line{width:48px;height:2px;background:#D8D0C0;margin:0 6px;margin-bottom:18px;transition:background .3s}
.dr-step-line.dr-step-line-done{background:var(--forest)}

/* Panels */
.dr-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:28px 28px 24px;box-shadow:var(--shadow-sm);animation:fadeUp .3s ease}
.dr-panel-title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--deep);margin-bottom:4px}
.dr-panel-desc{font-size:.84rem;color:var(--muted);font-weight:300;margin-bottom:22px}

/* Form */
.dr-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}
.dr-field{display:flex;flex-direction:column;gap:6px}
.dr-field label{font-size:.78rem;font-weight:500;color:var(--deep);text-transform:uppercase;letter-spacing:.03em}
.dr-field input,.dr-field select,.dr-field textarea{padding:10px 13px;border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:.88rem;color:var(--deep);background:var(--white);outline:none;transition:border-color .18s,box-shadow .18s;width:100%}
.dr-field input:focus,.dr-field select:focus,.dr-field textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(13,59,46,.08)}
.dr-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%237AAB8A'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.dr-field-full{grid-column:1/-1}
.dr-field-hint{font-size:.72rem;color:var(--muted);font-weight:300}

/* Navigation buttons row */
.dr-nav-btns{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}

/* Base button */
.dr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--r-sm);font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;border:none;transition:all .2s}

/* Next step buttons — prominent, full-width, min 44px tall */
.dr-btn-next{min-height:44px;width:100%;background:var(--forest);color:#fff;font-size:1rem;font-weight:600;border-radius:var(--r-sm);padding:14px 24px;justify-content:center;box-shadow:var(--shadow-sm)}
.dr-btn-next:hover{background:var(--forest-mid);transform:translateY(-1px);box-shadow:var(--shadow-md)}

/* Back button */
.dr-btn-back{min-height:44px;background:rgba(0,0,0,.06);color:var(--deep);padding:14px 24px;border-radius:var(--r-sm);font-size:.9rem}
.dr-btn-back:hover{background:rgba(0,0,0,.1)}

/* Save routine button */
.dr-btn-save{min-height:44px;width:100%;background:var(--forest);color:#fff;font-size:1rem;font-weight:600;border-radius:var(--r-sm);padding:14px 24px;justify-content:center;box-shadow:var(--shadow-sm)}
.dr-btn-save:hover{background:var(--forest-mid);transform:translateY(-1px);box-shadow:var(--shadow-md)}

/* Arrow in buttons */
.dr-arr{font-size:1.1em}

/* Button helpers */
.dr-btn-sm{padding:7px 16px;border-radius:50px;font-size:.8rem;font-weight:500;font-family:var(--font-body);cursor:pointer;border:none;transition:all .18s}
.dr-btn-cancel{background:rgba(0,0,0,.06);color:var(--deep)}
.dr-btn-cancel:hover{background:rgba(0,0,0,.1)}
.dr-btn-save-modal{background:var(--forest);color:#fff}
.dr-btn-save-modal:hover{background:var(--deep)}
.dr-btn-add{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1.5px dashed var(--border);border-radius:var(--r-sm);font-size:.82rem;font-weight:500;color:var(--forest);background:transparent;cursor:pointer;font-family:var(--font-body);transition:all .18s}
.dr-btn-add:hover{border-color:var(--forest);background:var(--forest-pale)}

/* ── Meals grid ── */
.dr-meals-grid{display:flex;flex-direction:column;gap:10px}
.dr-meal-item{display:grid;grid-template-columns:160px 1fr;gap:10px;align-items:center;padding:10px 14px;background:var(--cream);border-radius:var(--r-sm);border:1px solid var(--border)}
.dr-meal-check{display:flex;align-items:center;gap:8px;font-size:.86rem;font-weight:500;color:var(--deep);cursor:pointer;white-space:nowrap}
.dr-meal-check input[type="checkbox"]{width:16px;height:16px;accent-color:var(--forest);cursor:pointer}
.dr-meal-item input[type="text"]{padding:8px 12px;border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:.84rem;color:var(--deep);background:var(--white);outline:none;transition:border-color .18s}
.dr-meal-item input[type="text"]:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(13,59,46,.08)}

/* ── Row cards (meds, activities, appointments) ── */
.dr-row-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.dr-row-card{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:var(--cream);border-radius:var(--r-sm);border:1px solid var(--border)}
.dr-row-fields{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px;flex:1}
.dr-row-fields-3{grid-template-columns:1fr 1fr 1fr}
.dr-row-card .dr-field{gap:4px}
.dr-row-card .dr-field label{font-size:.7rem}
.dr-row-card .dr-field input{padding:7px 10px;font-size:.82rem}
.dr-row-remove{width:28px;height:28px;border-radius:6px;border:none;background:rgba(184,50,50,.08);color:#b83232;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:background .18s;margin-top:18px;flex-shrink:0}
.dr-row-remove:hover{background:rgba(184,50,50,.15)}

/* ── Hygiene grid ── */
.dr-hygiene-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dr-hygiene-col{background:var(--cream);border:1px solid var(--border);border-radius:var(--r-sm);padding:16px}
.dr-hygiene-title{font-size:.78rem;font-weight:600;color:var(--forest);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.dr-hygiene-checklist{display:flex;flex-direction:column;gap:6px;margin-bottom:10px;min-height:32px}
.dr-hygiene-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;background:var(--white);border-radius:6px;border:1px solid var(--border);font-size:.82rem;color:var(--deep)}
.dr-hygiene-remove{width:20px;height:20px;border-radius:4px;border:none;background:rgba(184,50,50,.08);color:#b83232;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:background .18s;flex-shrink:0}
.dr-hygiene-remove:hover{background:rgba(184,50,50,.15)}
.dr-hygiene-add-row{display:flex;gap:8px;align-items:center}
.dr-hygiene-add-row input{flex:1;padding:7px 10px;border:1px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:.82rem;color:var(--deep);background:var(--white);outline:none;transition:border-color .18s}
.dr-hygiene-add-row input:focus{border-color:var(--forest)}
.dr-hygiene-add-row .dr-btn-sm{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:1rem}

/* Notes textarea */
.dr-notes-textarea{width:100%;min-height:80px;resize:vertical}

/* ═══════════════════════════════════════════ */
/* ROUTINE CARDS VIEW                          */
/* ═══════════════════════════════════════════ */
.dr-routine-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:0;box-shadow:var(--shadow-sm);margin-bottom:20px;overflow:hidden;animation:fadeUp .3s ease}
.dr-card-header{padding:24px 28px 16px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,var(--forest-pale) 0%,var(--cream) 100%)}
.dr-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.dr-card-title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--deep);margin:0;line-height:1.3}
.dr-btn-edit-card{padding:8px 20px;border-radius:50px;font-size:.8rem;font-weight:500;font-family:var(--font-body);cursor:pointer;background:var(--forest);color:var(--cream);border:none;transition:all .2s;white-space:nowrap}
.dr-btn-edit-card:hover{background:var(--deep);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.dr-card-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dr-card-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:50px;font-size:.74rem;font-weight:600;background:var(--forest);color:#fff;letter-spacing:.02em}
.dr-card-badge-time{background:var(--warm);color:#fff}
.dr-card-body{padding:20px 28px 24px}
.dr-card-section{margin-bottom:18px}
.dr-card-section:last-child{margin-bottom:0}
.dr-card-section-title{font-size:.72rem;font-weight:600;color:var(--forest);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;padding-bottom:5px;border-bottom:1px solid rgba(13,59,46,.08)}
.dr-card-pills{display:flex;flex-wrap:wrap;gap:8px}
.dr-card-pill{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:50px;font-size:.8rem;font-weight:500;background:var(--cream);color:var(--deep);border:1px solid var(--border)}
.dr-card-detail{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:5px 0;font-size:.84rem;line-height:1.5}
.dr-card-detail-label{font-weight:600;color:var(--deep);min-width:80px}
.dr-card-detail-value{color:var(--muted)}
.dr-card-detail-note{color:var(--warm);font-size:.8rem;font-style:italic}
.dr-card-notes{font-size:.84rem;color:var(--deep);line-height:1.6;padding:12px 14px;background:var(--cream);border-radius:var(--r-sm);border:1px solid var(--border)}

/* + Add Routine button */
.dr-add-wrap{margin-top:8px;display:flex;justify-content:center}
.dr-btn-add-routine{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;border-radius:50px;font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;background:transparent;color:var(--forest);border:2px dashed rgba(13,59,46,.25);transition:all .2s}
.dr-btn-add-routine:hover{border-color:var(--forest);background:var(--forest-pale);transform:translateY(-1px);box-shadow:var(--shadow-sm)}

/* ═══════════════════════════════════════════ */
/* EDIT FORM (non-guided, all fields)          */
/* ═══════════════════════════════════════════ */
.dr-edit-header{margin-bottom:20px}
.dr-edit-header h2{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--deep)}
.dr-edit-panel{display:flex;flex-direction:column;gap:0}
.dr-edit-section{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:24px 28px;margin-bottom:12px;box-shadow:var(--shadow-sm)}
.dr-edit-section-title{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--forest);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.dr-edit-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:20px 0 0;border-top:1px solid var(--border)}

/* ═══════════════════════════════════════════ */
/* Responsive                                  */
/* ═══════════════════════════════════════════ */
@media(max-width:600px){
  .dr-form-grid{grid-template-columns:1fr}
  .dr-row-fields{grid-template-columns:1fr;gap:8px}
  .dr-row-fields-3{grid-template-columns:1fr}
  .dr-hygiene-grid{grid-template-columns:1fr}
  .dr-meal-item{grid-template-columns:1fr;gap:6px}
  .dr-step-line{width:24px}
  .dr-panel{padding:20px 16px 18px}
  .dr-routine-card .dr-card-header{padding:18px 16px 12px}
  .dr-routine-card .dr-card-body{padding:16px 16px 18px}
  .dr-card-title-row{flex-direction:column;gap:8px}
  .dr-edit-section{padding:18px 16px}
  .dr-edit-actions{flex-direction:column;gap:10px;align-items:stretch}
  .dr-edit-actions .dr-btn{text-align:center;justify-content:center}
  .dr-nav-btns{flex-direction:column;gap:10px}
  .dr-nav-btns .dr-btn-back{width:100%;justify-content:center}
}

/* ═══ FAMILY LOOP ═══ */
#dsec-family-loop .fl-main{display:flex;flex-direction:column;min-height:100%;}

/* HEADER */
#dsec-family-loop .loop-header{background:linear-gradient(135deg,#0D3B2E 0%,#1A5240 50%,#2d5a3d 100%);padding:2.5rem 2.5rem 1.75rem;position:relative;overflow:hidden;}
@media(max-width:820px){#dsec-family-loop .loop-header{padding:1.5rem 1.25rem 0;}}
#dsec-family-loop .loop-header::before{content:'';position:absolute;inset:0;opacity:.04;background-image:radial-gradient(circle at 20% 50%,#fff 1px,transparent 1px),radial-gradient(circle at 80% 20%,#fff 1px,transparent 1px),radial-gradient(circle at 60% 80%,#fff 1px,transparent 1px);background-size:60px 60px;pointer-events:none;}
#dsec-family-loop .loop-header::after{display:none;}
#dsec-family-loop .loop-header-inner{position:relative;z-index:1;padding-bottom:0;}
#dsec-family-loop .loop-eyebrow{font-size:10px;letter-spacing:.14em;color:rgba(255,255,255,.4);text-transform:uppercase;margin-bottom:.6rem;}
#dsec-family-loop .loop-title-row{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:12px;}
#dsec-family-loop .loop-title{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:600;color:#fff;line-height:1.1;}
#dsec-family-loop .loop-title em{font-style:italic;opacity:.8;}
#dsec-family-loop .loop-sub{font-size:13px;color:rgba(255,255,255,.55);margin-top:.4rem;max-width:480px;line-height:1.7;}
#dsec-family-loop .header-actions{display:flex;gap:8px;flex-wrap:wrap;}
#dsec-family-loop .btn-header{font-family:'Jost',sans-serif;font-size:12px;padding:8px 18px;border-radius:10px;cursor:pointer;font-weight:500;transition:all .15s;}
#dsec-family-loop .btn-header-primary{background:#fff;color:#2d5a3d;border:none;}
#dsec-family-loop .btn-header-primary:hover{background:#f0f6f2;}
#dsec-family-loop .btn-header-ghost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.22);}
#dsec-family-loop .btn-header-ghost:hover{background:rgba(255,255,255,.18);}

/* MEMBER AVATARS IN HEADER */
#dsec-family-loop .member-strip{display:flex;align-items:center;gap:-8px;margin-top:1.25rem;}
#dsec-family-loop .fl-member-av{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:13px;font-weight:600;color:#fff;margin-left:-8px;}
#dsec-family-loop .fl-member-av:first-child{margin-left:0;}
#dsec-family-loop .member-count{font-size:12px;color:rgba(255,255,255,.6);margin-left:12px;}
#dsec-family-loop .member-online{width:8px;height:8px;border-radius:50%;background:#a8d5b5;display:inline-block;margin-right:5px;animation:fl-pulse 2s infinite;}
@keyframes fl-pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* CONTENT LAYOUT */
#dsec-family-loop .fl-content{flex:1;display:grid;grid-template-columns:1fr 340px;gap:0;align-items:start;}
@media(max-width:1100px){#dsec-family-loop .fl-content{grid-template-columns:1fr;}}

/* FEED COLUMN */
#dsec-family-loop .feed-col{padding:1.75rem 2rem 5rem;border-right:1px solid rgba(0,0,0,0.07);}
@media(max-width:1100px){#dsec-family-loop .feed-col{border-right:none;padding:1.25rem 1rem 3rem;}}
@media(max-width:820px){#dsec-family-loop .feed-col{padding:1rem 1rem 2rem;}}

/* COMPOSE BOX */
#dsec-family-loop .compose-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:22px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,.06);}
#dsec-family-loop .compose-top{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;}
#dsec-family-loop .compose-av{width:36px;height:36px;border-radius:50%;background:#e8f0eb;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:600;color:#2d5a3d;flex-shrink:0;}
#dsec-family-loop .compose-textarea{flex:1;font-family:'Jost',sans-serif;font-size:14px;border:none;resize:none;outline:none;color:#1c1c1a;background:transparent;line-height:1.6;min-height:44px;max-height:200px;}
#dsec-family-loop .compose-textarea::placeholder{color:#9a9590;}
#dsec-family-loop .compose-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid rgba(0,0,0,0.07);}
#dsec-family-loop .compose-types{display:flex;gap:5px;flex-wrap:wrap;}
#dsec-family-loop .fl-type-pill{font-size:11px;padding:4px 10px;border-radius:12px;cursor:pointer;border:1px solid rgba(0,0,0,0.13);color:#9a9590;background:transparent;font-family:'Jost',sans-serif;transition:all .12s;}
#dsec-family-loop .fl-type-pill:hover{border-color:#2d5a3d;color:#2d5a3d;}
#dsec-family-loop .fl-type-pill.active{border-color:transparent;color:#fff;}
#dsec-family-loop .compose-actions{display:flex;gap:8px;align-items:center;}
#dsec-family-loop .attach-btn{background:none;border:1px solid rgba(0,0,0,0.13);border-radius:10px;padding:6px 12px;font-size:12px;color:#5a5754;cursor:pointer;font-family:'Jost',sans-serif;transition:all .12s;}
#dsec-family-loop .attach-btn:hover{border-color:#2d5a3d;color:#2d5a3d;}
#dsec-family-loop .post-btn{background:#2d5a3d;color:#fff;border:none;border-radius:10px;padding:7px 20px;font-size:13px;font-weight:500;cursor:pointer;font-family:'Jost',sans-serif;transition:all .15s;}
#dsec-family-loop .post-btn:hover{background:#234830;}
#dsec-family-loop .post-btn:disabled{opacity:.5;cursor:not-allowed;}
#dsec-family-loop .photo-preview-strip{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;}
#dsec-family-loop .photo-thumb{position:relative;width:80px;height:80px;border-radius:10px;overflow:hidden;border:1px solid rgba(0,0,0,0.07);}
#dsec-family-loop .photo-thumb img{width:100%;height:100%;object-fit:cover;}
#dsec-family-loop .photo-thumb-rm{position:absolute;top:3px;right:3px;background:rgba(0,0,0,.55);color:#fff;border:none;border-radius:50%;width:18px;height:18px;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;}

/* FILTER TABS */
#dsec-family-loop .feed-filters{display:flex;gap:4px;margin-bottom:1.25rem;background:#f2ede4;border-radius:10px;padding:4px;width:fit-content;}
#dsec-family-loop .feed-tab{font-size:12px;padding:6px 14px;border-radius:8px;cursor:pointer;color:#5a5754;border:none;background:transparent;font-family:'Jost',sans-serif;transition:all .15s;}
#dsec-family-loop .feed-tab.active{background:#fff;color:#1c1c1a;font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,.08);}

/* ENTRY CARDS */
#dsec-family-loop .entry-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:22px;margin-bottom:1rem;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06);animation:fl-fadeUp .3s ease both;}
@keyframes fl-fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
#dsec-family-loop .entry-card:hover{box-shadow:0 8px 28px rgba(0,0,0,.1);}
#dsec-family-loop .entry-top{display:flex;align-items:flex-start;gap:12px;padding:1.1rem 1.25rem .75rem;}
#dsec-family-loop .entry-av{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:600;flex-shrink:0;}
#dsec-family-loop .entry-meta{flex:1;min-width:0;}
#dsec-family-loop .entry-meta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px;}
#dsec-family-loop .entry-author{font-size:13px;font-weight:500;color:#1c1c1a;}
#dsec-family-loop .entry-badge{font-size:10px;padding:2px 8px;border-radius:8px;font-weight:500;}
#dsec-family-loop .entry-time{font-size:11px;color:#9a9590;}
#dsec-family-loop .entry-score{display:inline-flex;align-items:center;gap:3px;font-size:11px;background:#e8f0eb;color:#2d5a3d;border-radius:8px;padding:2px 8px;}
#dsec-family-loop .entry-text{font-size:14px;color:#1c1c1a;line-height:1.7;padding:0 1.25rem .75rem;}
#dsec-family-loop .entry-text p{margin-bottom:.5rem;}
#dsec-family-loop .entry-text p:last-child{margin-bottom:0;}

/* PHOTO GRID IN ENTRY */
#dsec-family-loop .entry-photos{padding:0 1.25rem .75rem;}
#dsec-family-loop .photo-grid-1{border-radius:16px;overflow:hidden;}
#dsec-family-loop .photo-grid-1 img{width:100%;max-height:360px;object-fit:cover;display:block;}
#dsec-family-loop .photo-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-radius:16px;overflow:hidden;}
#dsec-family-loop .photo-grid-2 img{width:100%;height:200px;object-fit:cover;display:block;}
#dsec-family-loop .photo-grid-3{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:4px;border-radius:16px;overflow:hidden;height:280px;}
#dsec-family-loop .photo-grid-3 img:first-child{grid-row:1/-1;width:100%;height:100%;object-fit:cover;}
#dsec-family-loop .photo-grid-3 img{width:100%;height:100%;object-fit:cover;}

/* LINKED CONTENT */
#dsec-family-loop .entry-linked{margin:0 1.25rem .75rem;padding:10px 12px;background:#f7f4ee;border-radius:10px;border:1px solid rgba(0,0,0,0.07);display:flex;align-items:center;gap:10px;font-size:12px;color:#5a5754;cursor:pointer;transition:background .12s;}
#dsec-family-loop .entry-linked:hover{background:#e8f0eb;}
#dsec-family-loop .entry-linked-ico{font-size:16px;flex-shrink:0;}
#dsec-family-loop .entry-linked-label{font-size:10px;color:#9a9590;margin-bottom:1px;text-transform:uppercase;letter-spacing:.05em;}
#dsec-family-loop .entry-linked-val{font-size:12px;font-weight:500;color:#1c1c1a;}

/* REACTIONS + ACTIONS */
#dsec-family-loop .entry-footer{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.25rem;border-top:1px solid rgba(0,0,0,0.07);background:#f7f4ee;}
#dsec-family-loop .reaction-row{display:flex;gap:6px;}
#dsec-family-loop .reaction-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px;padding:4px 10px;border-radius:12px;border:1px solid rgba(0,0,0,0.13);background:transparent;cursor:pointer;color:#5a5754;transition:all .12s;font-family:'Jost',sans-serif;}
#dsec-family-loop .reaction-btn:hover{background:#e8f0eb;border-color:#c2dac9;color:#2d5a3d;}
#dsec-family-loop .reaction-btn.reacted{background:#e8f0eb;border-color:#c2dac9;color:#2d5a3d;font-weight:500;}
#dsec-family-loop .entry-actions{display:flex;gap:4px;}
#dsec-family-loop .entry-action-btn{background:none;border:none;font-size:12px;color:#9a9590;cursor:pointer;padding:4px 8px;border-radius:10px;font-family:'Jost',sans-serif;transition:all .12s;}
#dsec-family-loop .entry-action-btn:hover{background:#f2ede4;color:#1c1c1a;}

/* COMMENTS */
#dsec-family-loop .comments-section{padding:.75rem 1.25rem;border-top:1px solid rgba(0,0,0,0.07);display:none;}
#dsec-family-loop .comments-section.open{display:block;}
#dsec-family-loop .comment-item{display:flex;gap:8px;margin-bottom:.6rem;}
#dsec-family-loop .comment-av{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:11px;font-weight:600;flex-shrink:0;}
#dsec-family-loop .comment-bubble{background:#f7f4ee;border-radius:0 16px 16px 16px;padding:8px 12px;flex:1;}
#dsec-family-loop .comment-author{font-size:11px;font-weight:500;color:#1c1c1a;margin-bottom:2px;}
#dsec-family-loop .comment-text{font-size:12px;color:#5a5754;line-height:1.5;}
#dsec-family-loop .comment-time{font-size:10px;color:#9a9590;margin-top:2px;}
#dsec-family-loop .comment-input-row{display:flex;gap:8px;margin-top:.5rem;}
#dsec-family-loop .comment-input{flex:1;font-family:'Jost',sans-serif;font-size:12px;padding:7px 10px;border:1px solid rgba(0,0,0,0.13);border-radius:10px;background:#fff;color:#1c1c1a;}
#dsec-family-loop .comment-input:focus{outline:none;border-color:#2d5a3d;}
#dsec-family-loop .comment-send{background:#2d5a3d;color:#fff;border:none;border-radius:10px;padding:7px 12px;font-size:12px;cursor:pointer;font-family:'Jost',sans-serif;}

/* EMPTY STATE */
#dsec-family-loop .feed-empty{text-align:center;padding:4rem 2rem;}
#dsec-family-loop .feed-empty-ico{font-size:42px;margin-bottom:1rem;opacity:.4;}
#dsec-family-loop .feed-empty-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:#5a5754;margin-bottom:.5rem;}
#dsec-family-loop .feed-empty-sub{font-size:13px;color:#9a9590;line-height:1.7;max-width:320px;margin:0 auto 1.5rem;}

/* RIGHT SIDEBAR */
#dsec-family-loop .fl-right-col{padding:1.75rem 1.5rem 5rem;position:sticky;top:0;max-height:100vh;overflow-y:auto;}
@media(max-width:1100px){#dsec-family-loop .fl-right-col{display:none;}}

/* SIDE CARDS */
#dsec-family-loop .fl-side-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:22px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 2px 12px rgba(0,0,0,.06);}
#dsec-family-loop .fl-side-card-title{font-size:13px;font-weight:500;color:#1c1c1a;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;}
#dsec-family-loop .fl-side-card-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif;}
#dsec-family-loop .fl-side-card-link:hover{text-decoration:underline;}
#dsec-family-loop .fl-member-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,0.07);}
#dsec-family-loop .fl-member-row:last-child{border-bottom:none;}
#dsec-family-loop .fl-member-av-sm{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:13px;font-weight:600;flex-shrink:0;}
#dsec-family-loop .fl-member-name{font-size:13px;font-weight:500;color:#1c1c1a;}
#dsec-family-loop .fl-member-rel{font-size:11px;color:#9a9590;}
#dsec-family-loop .fl-member-status-dot{width:7px;height:7px;border-radius:50%;margin-left:auto;flex-shrink:0;}
#dsec-family-loop .invite-row{margin-top:.75rem;display:flex;gap:6px;}
#dsec-family-loop .invite-input{flex:1;font-family:'Jost',sans-serif;font-size:12px;padding:7px 10px;border:1px solid rgba(0,0,0,0.13);border-radius:10px;background:var(--cream,#faf8f3);color:#1c1c1a;}
#dsec-family-loop .invite-input:focus{outline:none;border-color:#2d5a3d;}
#dsec-family-loop .invite-btn{background:#2d5a3d;color:#fff;border:none;border-radius:10px;padding:7px 12px;font-size:12px;cursor:pointer;font-family:'Jost',sans-serif;white-space:nowrap;}

/* SHARING PREFS */
#dsec-family-loop .pref-row{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid rgba(0,0,0,0.07);font-size:12px;}
#dsec-family-loop .pref-row:last-child{border-bottom:none;}
#dsec-family-loop .pref-label{color:#5a5754;}
#dsec-family-loop .pref-sub{font-size:10px;color:#9a9590;margin-top:1px;}
#dsec-family-loop .fl-toggle{width:36px;height:20px;border-radius:10px;background:rgba(0,0,0,0.13);position:relative;cursor:pointer;transition:background .2s;flex-shrink:0;}
#dsec-family-loop .fl-toggle.on{background:#2d5a3d;}
#dsec-family-loop .fl-toggle::after{content:'';position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;top:3px;left:3px;transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.15);}
#dsec-family-loop .fl-toggle.on::after{left:19px;}

/* MEMORY MOMENTS SIDE */
#dsec-family-loop .memory-grid-sm{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;}
#dsec-family-loop .memory-tile-sm{border-radius:8px;overflow:hidden;aspect-ratio:1;background:#f7f4ee;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;border:1px solid rgba(0,0,0,0.07);transition:transform .15s;}
#dsec-family-loop .memory-tile-sm:hover{transform:scale(1.04);}
#dsec-family-loop .memory-tile-sm img{width:100%;height:100%;object-fit:cover;}
#dsec-family-loop .memory-add-tile{border:1.5px dashed #c2dac9;background:#f0f6f2;cursor:pointer;}
#dsec-family-loop .memory-add-tile:hover{background:#e8f0eb;}

/* WELLBEING SUMMARY */
#dsec-family-loop .wb-mini{display:flex;align-items:center;gap:12px;}
#dsec-family-loop .wb-score-mini{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:500;color:#2d5a3d;line-height:1;}
#dsec-family-loop .wb-bars{flex:1;display:flex;flex-direction:column;gap:4px;}
#dsec-family-loop .wb-bar-row{display:flex;align-items:center;gap:6px;font-size:11px;color:#5a5754;}
#dsec-family-loop .wb-bar-track{flex:1;height:4px;border-radius:2px;background:rgba(0,0,0,0.13);}
#dsec-family-loop .wb-bar-fill{height:100%;border-radius:2px;}

/* MODAL */
#dsec-family-loop .fl-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:100;align-items:center;justify-content:center;padding:1rem;}
#dsec-family-loop .fl-overlay.open{display:flex;}
#dsec-family-loop .fl-modal{background:#fff;border-radius:22px;padding:1.75rem;width:100%;max-width:480px;box-shadow:0 16px 56px rgba(0,0,0,.15);max-height:90vh;overflow-y:auto;}
#dsec-family-loop .fl-modal-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:500;margin-bottom:.25rem;}
#dsec-family-loop .fl-modal-sub{font-size:13px;color:#5a5754;margin-bottom:1.5rem;line-height:1.6;}
#dsec-family-loop .fl-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px;}
#dsec-family-loop .fl-field label{font-size:10px;letter-spacing:.07em;color:#9a9590;text-transform:uppercase;}
#dsec-family-loop .fl-field input,#dsec-family-loop .fl-field select,#dsec-family-loop .fl-field textarea{font-family:'Jost',sans-serif;font-size:13px;padding:9px 11px;border:1px solid rgba(0,0,0,0.13);border-radius:10px;background:var(--cream,#faf8f3);color:#1c1c1a;width:100%;}
#dsec-family-loop .fl-field input:focus,#dsec-family-loop .fl-field select:focus,#dsec-family-loop .fl-field textarea:focus{outline:none;border-color:#2d5a3d;}
#dsec-family-loop .fl-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:1.25rem;}
#dsec-family-loop .fl-btn{font-family:'Jost',sans-serif;font-size:13px;padding:8px 18px;border-radius:10px;cursor:pointer;border:none;font-weight:400;}
#dsec-family-loop .fl-btn-primary{background:#2d5a3d;color:#fff;font-weight:500;}
#dsec-family-loop .fl-btn-primary:hover{background:#234830;}
#dsec-family-loop .fl-btn-ghost{background:transparent;border:1px solid rgba(0,0,0,0.13);color:#5a5754;}
#dsec-family-loop .fl-btn-ghost:hover{border-color:#2d5a3d;color:#2d5a3d;}

/* LOADING STATE */
#dsec-family-loop .fl-loading{text-align:center;padding:4rem 2rem;color:#9a9590;font-size:14px;}

/* ═══ CAREGIVER WELLBEING ═══ */

/* Check-in Card */
.cw-checkin-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:28px;box-shadow:var(--shadow-sm);margin-bottom:24px;position:relative;overflow:hidden}
.cw-checkin-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--forest) 0%,var(--forest-light) 50%,#C8963E 100%)}
.cw-checkin-header{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.cw-checkin-icon{width:42px;height:42px;background:linear-gradient(135deg,var(--forest-pale),rgba(122,171,138,.2));border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cw-checkin-icon svg{width:22px;height:22px;color:var(--forest)}
.cw-checkin-header h3{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:var(--deep);margin:0}
.cw-checkin-header p{font-size:var(--text-body-sm);color:var(--muted);margin:2px 0 0;font-weight:300}
.cw-streak{margin-left:auto;display:flex;flex-direction:column;align-items:center;padding:8px 14px;background:var(--forest-pale);border-radius:var(--r-sm);flex-shrink:0}
.cw-streak-num{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--forest);line-height:1}
.cw-streak-lbl{font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}

/* Daily Prompt */
.cw-checkin-prompt{background:linear-gradient(135deg,var(--forest-pale),rgba(122,171,138,.08));border-radius:var(--r-sm);padding:16px 20px;margin-bottom:22px;border-left:3px solid var(--forest-light)}
.cw-prompt-text{font-family:var(--font-display);font-size:1.05rem;font-style:italic;color:var(--forest-mid);line-height:1.5;font-weight:500;margin:0}

/* Mood Grid */
.cw-mood-section{margin-bottom:20px}
.cw-field-label{display:block;font-size:var(--text-body-sm);font-weight:500;color:var(--deep);margin-bottom:10px}
.cw-mood-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.cw-mood-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;background:var(--cream);border:1.5px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:all .2s;font-family:var(--font-body)}
.cw-mood-btn:hover{border-color:var(--forest-light);background:var(--forest-pale);transform:translateY(-2px)}
.cw-mood-btn.selected{border-color:var(--forest);background:rgba(13,59,46,.08);box-shadow:0 0 0 3px rgba(13,59,46,.1)}
.cw-mood-emoji{font-size:1.6rem;line-height:1}
.cw-mood-label{font-size:.7rem;color:var(--muted);font-weight:500;transition:color .2s}
.cw-mood-btn.selected .cw-mood-label{color:var(--forest)}

/* Sliders */
.cw-slider-section{margin-bottom:18px}
.cw-slider-wrap{padding:0 2px}
.cw-slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--forest-pale),var(--forest-light));outline:none;transition:opacity .2s}
.cw-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--forest);cursor:pointer;box-shadow:0 2px 8px rgba(13,59,46,.25);transition:transform .15s}
.cw-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}
.cw-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--forest);cursor:pointer;border:none;box-shadow:0 2px 8px rgba(13,59,46,.25)}
.cw-slider-labels{display:flex;justify-content:space-between;margin-top:6px}
.cw-slider-labels span{font-size:.7rem;color:var(--muted);font-weight:300}

/* Gratitude Input */
.cw-gratitude-section{margin-bottom:22px}
.cw-input{width:100%;padding:12px 16px;background:var(--cream);border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--text-body);color:var(--deep);transition:border-color .2s,box-shadow .2s;outline:none}
.cw-input:focus{border-color:var(--forest-light);box-shadow:0 0 0 3px rgba(13,59,46,.08)}
.cw-input::placeholder{color:var(--muted);font-weight:300;font-style:italic}

/* Submit Button */
.cw-checkin-submit{width:100%;padding:13px;font-size:var(--text-body);font-weight:500;border-radius:var(--r-sm);transition:all .2s}

/* Done State */
.cw-done-msg{display:flex;align-items:center;gap:14px;padding:20px;background:var(--forest-pale);border-radius:var(--r-sm)}
.cw-done-msg h4{font-family:var(--font-display);font-size:1.05rem;color:var(--forest);margin:0 0 3px}
.cw-done-msg p{font-size:var(--text-body-sm);color:var(--muted);font-weight:300;margin:0}

/* Section Header */
.cw-section-header{margin:32px 0 18px}
.cw-section-header h2{font-family:var(--font-display);font-size:clamp(1.3rem,2.5vw,1.6rem);font-weight:600;color:var(--deep);margin-bottom:4px}
.cw-section-header p{font-size:var(--text-body);color:var(--muted);font-weight:300}

/* Journal Compose */
.cw-journal-compose{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:0;box-shadow:var(--shadow-sm);margin-bottom:24px;overflow:hidden}
.cw-journal-tabs{display:flex;border-bottom:1px solid var(--border);background:var(--cream)}
.cw-jtab{display:flex;align-items:center;gap:7px;padding:13px 20px;background:none;border:none;font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:500;color:var(--muted);cursor:pointer;transition:all .18s;position:relative;border-bottom:2px solid transparent}
.cw-jtab:hover{color:var(--deep);background:rgba(13,59,46,.03)}
.cw-jtab.active{color:var(--forest);border-bottom-color:var(--forest);background:var(--white)}
.cw-jtab svg{stroke:currentColor}
.cw-journal-form{padding:20px 24px}
.cw-journal-title{margin-bottom:12px;font-weight:500}
.cw-textarea{width:100%;padding:14px 16px;background:var(--cream);border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--text-body);color:var(--deep);resize:vertical;min-height:120px;transition:border-color .2s,box-shadow .2s;outline:none;line-height:1.7}
.cw-textarea:focus{border-color:var(--forest-light);box-shadow:0 0 0 3px rgba(13,59,46,.08)}
.cw-textarea::placeholder{color:var(--muted);font-weight:300;font-style:italic}
.cw-journal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}
.cw-journal-tags{display:flex;flex-wrap:wrap;gap:6px}
.cw-tag{padding:5px 12px;background:var(--cream);border:1.5px solid var(--border);border-radius:50px;font-family:var(--font-body);font-size:.72rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all .15s;text-transform:capitalize}
.cw-tag:hover{border-color:var(--forest-light);color:var(--deep)}
.cw-tag.active{background:var(--forest);color:var(--white);border-color:var(--forest)}

/* Mood Trend */
.cw-trend-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:24px;box-shadow:var(--shadow-sm);margin-bottom:24px}
.cw-trend-card h3{font-family:var(--font-display);font-size:var(--text-card-title);font-weight:600;color:var(--deep);margin-bottom:16px}
.cw-trend-bars{display:flex;align-items:flex-end;gap:8px;height:120px}
.cw-trend-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}
.cw-trend-emoji{font-size:1.1rem;line-height:1;min-height:22px}
.cw-trend-bar-wrap{width:100%;height:60px;background:var(--forest-pale);border-radius:4px;display:flex;align-items:flex-end;overflow:hidden}
.cw-trend-bar{width:100%;background:linear-gradient(to top,var(--forest),var(--forest-light));border-radius:4px 4px 0 0;transition:height .4s ease;min-height:2px}
.cw-trend-day{font-size:.68rem;color:var(--muted);font-weight:500}

/* Timeline */
.cw-timeline{margin-top:8px}
.cw-empty-state{text-align:center;padding:48px 24px}
.cw-empty-icon{margin-bottom:16px;opacity:.6}
.cw-empty-state h3{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--deep);margin-bottom:6px}
.cw-empty-state p{font-size:var(--text-body);color:var(--muted);font-weight:300;max-width:380px;margin:0 auto;line-height:1.6}

/* Entry Cards */
.cw-entry{display:flex;gap:16px;margin-bottom:0;position:relative}
.cw-entry-line{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:20px;padding-top:6px}
.cw-entry-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.cw-entry-line::after{content:'';flex:1;width:2px;background:var(--border);margin-top:6px}
.cw-entry:last-child .cw-entry-line::after{display:none}
.cw-entry-content{flex:1;background:var(--white);border:1px solid var(--border);border-radius:var(--r-sm);padding:18px 20px;margin-bottom:14px;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s;position:relative}
.cw-entry-content:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.cw-entry-new .cw-entry-content{animation:fadeUp .4s ease}
.cw-entry-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.cw-entry-type{display:flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.cw-entry-date{font-size:.72rem;color:var(--muted);font-weight:300}
.cw-entry-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--deep);margin-bottom:6px;line-height:1.3}
.cw-entry-body{font-size:var(--text-body);color:var(--deep);line-height:1.7;font-weight:300;white-space:pre-wrap;margin:0}
.cw-entry-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.cw-entry-tag{padding:3px 10px;background:var(--forest-pale);border-radius:50px;font-size:.68rem;font-weight:500;color:var(--forest-mid);text-transform:capitalize}
.cw-entry-delete{position:absolute;top:12px;right:12px;background:none;border:none;cursor:pointer;color:var(--muted);opacity:0;transition:opacity .2s,color .2s;padding:4px}
.cw-entry-content:hover .cw-entry-delete{opacity:1}
.cw-entry-delete:hover{color:#c0392b}

/* Responsive */
@media(max-width:625px){
  .cw-mood-grid{grid-template-columns:repeat(3,1fr)}
  .cw-journal-footer{flex-direction:column;align-items:stretch}
  .cw-journal-footer .btn{width:100%}
  .cw-trend-bars{height:100px}
  .cw-streak{padding:6px 10px}
  .cw-streak-num{font-size:1.1rem}
  .cw-jtab{padding:10px 14px;font-size:.75rem}
  .cw-checkin-card{padding:20px}
  .cw-journal-form{padding:16px}
  .cw-entry-content{padding:14px 16px}
}

/* ═══ FAMILY HUB ═══ */
.dash-main.hub-flush{padding-top:0}
#dsec-family-hub .hub-header{background:linear-gradient(135deg,#EDF4F0 0%,#E2EDE8 55%,#D4E6DC 100%);padding:3.5rem 3.5rem 3.5rem;position:relative;overflow:hidden}
@media(max-width:820px){#dsec-family-hub .hub-header{padding:2rem 1.5rem 2rem}}
#dsec-family-hub .hub-header::before{content:'';position:absolute;inset:0;background-image:radial-gradient(ellipse 50% 90% at 95% 50%,rgba(200,221,209,.55) 0%,transparent 60%),radial-gradient(ellipse 30% 50% at 5% 90%,rgba(160,185,172,.20) 0%,transparent 60%);pointer-events:none}
#dsec-family-hub .hub-header-inner{position:relative;z-index:1}
#dsec-family-hub .hub-eyebrow{font-size:11px;letter-spacing:.13em;color:#6B7F74;text-transform:uppercase;margin-bottom:.75rem}
#dsec-family-hub .hub-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}
#dsec-family-hub .hub-greeting{font-family:'Cormorant Garamond',serif;font-size:46px;font-weight:500;color:#1C2B25;line-height:1.1}
@media(max-width:820px){#dsec-family-hub .hub-greeting{font-size:36px}}
#dsec-family-hub .hub-greeting em{font-style:italic;color:#1A5240;opacity:1}
#dsec-family-hub .hub-context{font-size:14px;color:#6B7F74;margin-top:.65rem;line-height:1.75;max-width:520px;font-weight:300}
@media(max-width:820px){#dsec-family-hub .hub-context{display:none}}
#greeting-sub{margin-top:.75rem}
#greeting-sub .label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.45);display:block;margin-bottom:.45rem}
#greeting-sub .focus-pill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:7px 16px 7px 10px}
#greeting-sub .focus-pill>span{font-size:20px;line-height:1}
#greeting-sub .pill-name{font-size:14px;font-weight:600;color:#fff;line-height:1.3}
#greeting-sub .pill-stage{font-size:11px;color:rgba(255,255,255,.55);line-height:1.3}
#dsec-family-hub .hub-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;padding-top:.25rem}
@media(max-width:820px){#dsec-family-hub .hub-header-right{display:none}}
#dsec-family-hub .hub-date-pill{font-size:12px;color:#6B7F74}
#dsec-family-hub .hub-presence{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#6B7F74;margin-top:4px}
#dsec-family-hub .hub-stage-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;padding:5px 14px;border-radius:12px;border:1px solid rgba(26,82,64,.18);color:#1A5240;background:#fff;cursor:pointer;margin-top:8px;transition:all .15s;box-shadow:0 1px 4px rgba(0,0,0,.06)}
#dsec-family-hub .hub-stage-pill:hover{background:#EDF4F0;color:#1A5240}
#dsec-family-hub .people-strip{background:#fff;border-bottom:1px solid rgba(0,0,0,0.055);padding:1.1rem 3.5rem;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 4px 16px rgba(0,0,0,.04)}
@media(max-width:820px){#dsec-family-hub .people-strip{padding:.85rem 1.5rem}}
#dsec-family-hub .strip-label{font-size:10px;letter-spacing:.1em;color:#9a9590;text-transform:uppercase;white-space:nowrap;margin-right:4px}
#dsec-family-hub .person-chip{display:flex;align-items:center;gap:8px;padding:6px 13px;border-radius:20px;border:1px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;transition:all .13s;white-space:nowrap}
#dsec-family-hub .person-chip:hover{border-color:#b8d4c0;background:#f0f6f2}
#dsec-family-hub .person-chip.loved{border-color:#b8d4c0;background:#e8f1eb}
#dsec-family-hub .chip-av{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:11px;font-weight:600;flex-shrink:0}
#dsec-family-hub .chip-name{font-size:12px;font-weight:500;color:#18181a}
#dsec-family-hub .chip-role{font-size:10px;color:#9a9590}
#dsec-family-hub .chip-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
#dsec-family-hub .hub-body{display:grid;grid-template-columns:1fr 288px;gap:0;align-items:start}
@media(max-width:1080px){#dsec-family-hub .hub-body{grid-template-columns:1fr}}
#dsec-family-hub .hub-center{padding:2rem 3.5rem 5rem;border-right:1px solid rgba(0,0,0,0.055)}
@media(max-width:1080px){#dsec-family-hub .hub-center{border-right:none;padding:1.5rem 1.5rem 3rem}}
#dsec-family-hub .hub-right{padding:2rem 1.75rem 5rem}
@media(max-width:1080px){#dsec-family-hub .hub-right{display:none}}
#dsec-family-hub .sec-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}
#dsec-family-hub .sec-label{font-size:9px;letter-spacing:.12em;color:#9a9590;text-transform:uppercase}
#dsec-family-hub .sec-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-family-hub .sec-link:hover{text-decoration:underline}
/* Pulse card */
#dsec-family-hub .pulse-card{background:#fff;border:1px solid #b8d4c0;border-top:3px solid #2d5a3d;border-radius:24px;padding:1.75rem 2rem;box-shadow:0 4px 24px rgba(45,90,61,.1),0 1px 4px rgba(45,90,61,.06);margin-bottom:1.5rem}
#dsec-family-hub .pulse-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem}
#dsec-family-hub .pulse-title{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:500;color:#2d5a3d;line-height:1.2}
#dsec-family-hub .pulse-title-sub{font-size:13px;color:#9a9590;margin-top:.2rem;font-style:italic;font-weight:300}
#dsec-family-hub .pulse-tag{font-size:11px;color:#2d5a3d;background:#e8f1eb;border-radius:10px;padding:5px 12px;flex-shrink:0;margin-top:.3rem;border:1px solid #b8d4c0}
#dsec-family-hub .pulse-section{margin-bottom:1.1rem}
#dsec-family-hub .pulse-sec-lbl{font-size:11px;letter-spacing:.1em;color:#9a9590;text-transform:uppercase;margin-bottom:.65rem;font-weight:500}
#dsec-family-hub .mood-row{display:flex;gap:7px;flex-wrap:wrap}
#dsec-family-hub .mood-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 8px;border-radius:18px;border:1.5px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;transition:all .2s;min-width:52px;flex:1}
#dsec-family-hub .mood-btn:hover{border-color:#b8d4c0;background:#fff;transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
#dsec-family-hub .mood-btn.sel{border-color:#2d5a3d;background:#e8f1eb;box-shadow:0 0 0 3px rgba(45,90,61,.1);transform:translateY(-2px)}
#dsec-family-hub .mood-btn.sel .mood-lbl{color:#2d5a3d;font-weight:500}
#dsec-family-hub .mood-em{font-size:22px}
#dsec-family-hub .mood-lbl{font-size:11px;color:#9a9590;text-align:center;line-height:1.3}
/* Scale questions */
#dsec-family-hub .scale-row{display:flex;gap:6px;align-items:center}
#dsec-family-hub .scale-lbl-lo,#dsec-family-hub .scale-lbl-hi{font-size:11px;color:#9a9590;white-space:nowrap;font-weight:300}
#dsec-family-hub .scale-btns{display:flex;gap:5px;flex:1;justify-content:center}
#dsec-family-hub .scale-btn{width:38px;height:38px;border-radius:12px;border:1.5px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:500;color:#52504d;transition:all .2s;display:flex;align-items:center;justify-content:center}
#dsec-family-hub .scale-btn:hover{border-color:#b8d4c0;background:#fff;transform:translateY(-2px)}
#dsec-family-hub .scale-btn.sel{border-color:#2d5a3d;background:#e8f1eb;color:#2d5a3d;box-shadow:0 0 0 3px rgba(45,90,61,.1)}
/* Support selector */
#dsec-family-hub .support-row{display:flex;gap:7px;flex-wrap:wrap}
#dsec-family-hub .support-btn{flex:1;min-width:80px;padding:9px 8px;border-radius:18px;border:1.5px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;font-family:'Jost',sans-serif;font-size:12px;color:#52504d;text-align:center;transition:all .2s;line-height:1.4}
#dsec-family-hub .support-btn:hover{border-color:#b8d4c0;background:#fff;transform:translateY(-2px)}
#dsec-family-hub .support-btn.sel{border-color:#2d5a3d;background:#e8f1eb;color:#2d5a3d;font-weight:500}
#dsec-family-hub .pulse-note{width:100%;font-family:'Jost',sans-serif;font-size:14px;padding:10px 13px;border:1px solid rgba(0,0,0,.11);border-radius:18px;background:#f9f6f0;color:#18181a;resize:none;min-height:48px;line-height:1.6;transition:all .2s}
#dsec-family-hub .pulse-note:focus{outline:none;border-color:#2d5a3d;background:#fff;box-shadow:0 0 0 3px rgba(45,90,61,.07)}
#dsec-family-hub .pulse-note::placeholder{color:#9a9590;font-style:italic;font-weight:300}
#dsec-family-hub .pulse-foot{display:flex;align-items:center;justify-content:space-between;margin-top:1.1rem;flex-wrap:wrap;gap:8px}
#dsec-family-hub .pulse-hint{font-size:12px;color:#9a9590;font-style:italic;font-weight:300}
#dsec-family-hub .pulse-btn{background:#2d5a3d;color:#fff;border:none;border-radius:18px;padding:11px 28px;font-family:'Jost',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;letter-spacing:.02em;box-shadow:0 4px 12px rgba(45,90,61,.3)}
#dsec-family-hub .pulse-btn:hover{background:#1e3d2a;transform:translateY(-2px);box-shadow:0 6px 20px rgba(45,90,61,.35)}
#dsec-family-hub .pulse-btn:active{transform:translateY(0)}
#dsec-family-hub .pulse-done{display:none;text-align:center;padding:1rem 0}
#dsec-family-hub .pulse-done.show{display:block}
#dsec-family-hub .pulse-done-ico{font-size:32px;margin-bottom:.5rem}
#dsec-family-hub .pulse-done-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:.65rem 0}
#dsec-family-hub .pulse-chip{font-size:13px;padding:5px 13px;border-radius:12px;background:#e8f1eb;color:#2d5a3d;border:1px solid #b8d4c0}
#dsec-family-hub .pulse-deeper{font-size:13px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif;text-decoration:underline;opacity:.8}
#dsec-family-hub .pulse-deeper:hover{opacity:1}
/* Rhythm below pulse */
#dsec-family-hub .rhythm-below{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;padding:1.5rem 1.75rem;margin-bottom:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,.05)}
/* Care center */
#dsec-family-hub .cmd-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;margin-bottom:1.25rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);overflow:hidden}
#dsec-family-hub .cmd-head{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem .7rem;border-bottom:1px solid rgba(0,0,0,.055);background:#f9f6f0}
#dsec-family-hub .cmd-title{font-size:13px;font-weight:500;color:#18181a}
#dsec-family-hub .cmd-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-family-hub .cmd-link:hover{text-decoration:underline}
#dsec-family-hub .cmd-entries{padding:.4rem 1.25rem}
#dsec-family-hub .c-entry{display:flex;align-items:flex-start;gap:8px;padding:7px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-family-hub .c-entry:last-child{border-bottom:none}
#dsec-family-hub .c-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:4px}
#dsec-family-hub .c-text{font-size:12px;color:#18181a;flex:1;line-height:1.5}
#dsec-family-hub .c-time{font-size:10px;color:#9a9590;white-space:nowrap}
/* Log categories */
#dsec-family-hub .log-cats{display:flex;gap:6px;flex-wrap:wrap;padding:.85rem 1.25rem;border-top:1px solid rgba(0,0,0,.055)}
#dsec-family-hub .log-cat{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:6px 13px;border-radius:14px;border:1px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;font-family:'Jost',sans-serif;color:#52504d;transition:all .15s}
#dsec-family-hub .log-cat:hover{border-color:#b8d4c0;background:#e8f1eb;color:#2d5a3d}
#dsec-family-hub .log-cat.active{border-color:#2d5a3d;background:#e8f1eb;color:#2d5a3d;font-weight:500}
#dsec-family-hub .cmd-log{padding:.65rem 1.25rem;border-top:1px solid rgba(0,0,0,.055);background:#f9f6f0;display:flex;gap:7px}
#dsec-family-hub .log-input{flex:1;font-family:'Jost',sans-serif;font-size:12px;padding:7px 10px;border:1px solid rgba(0,0,0,.11);border-radius:12px;background:#fff;color:#18181a;transition:all .2s}
#dsec-family-hub .log-input:focus{outline:none;border-color:#2d5a3d;box-shadow:0 0 0 3px rgba(45,90,61,.08)}
#dsec-family-hub .log-input::placeholder{color:#9a9590;font-style:italic}
#dsec-family-hub .log-btn{background:#2d5a3d;color:#fff;border:none;border-radius:12px;padding:7px 13px;font-family:'Jost',sans-serif;font-size:12px;cursor:pointer;box-shadow:0 2px 8px rgba(45,90,61,.25)}
#dsec-family-hub .log-btn:hover{background:#1e3d2a}
/* Loop card */
#dsec-family-hub .loop-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;margin-bottom:1.25rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);overflow:hidden}
#dsec-family-hub .loop-head{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem .7rem;border-bottom:1px solid rgba(0,0,0,.055);background:#f9f6f0}
#dsec-family-hub .loop-title{font-size:13px;font-weight:500;color:#18181a;display:flex;align-items:center;gap:7px}
#dsec-family-hub .loop-badge{font-size:10px;background:#a8d5b5;color:#1a3d2a;border-radius:8px;padding:1px 7px;font-weight:500}
#dsec-family-hub .loop-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-family-hub .loop-link:hover{text-decoration:underline}
#dsec-family-hub .loop-feed{padding:.3rem 1.25rem}
#dsec-family-hub .l-entry{display:flex;gap:9px;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-family-hub .l-entry:last-child{border-bottom:none}
#dsec-family-hub .l-av{width:27px;height:27px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:11px;font-weight:600;flex-shrink:0}
#dsec-family-hub .l-body{flex:1;min-width:0}
#dsec-family-hub .l-meta{display:flex;align-items:center;gap:5px;margin-bottom:2px;flex-wrap:wrap}
#dsec-family-hub .l-author{font-size:12px;font-weight:500;color:#18181a}
#dsec-family-hub .l-type{font-size:9px;padding:1px 6px;border-radius:6px;font-weight:500}
#dsec-family-hub .l-time{font-size:10px;color:#9a9590}
#dsec-family-hub .l-text{font-size:12px;color:#52504d;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
#dsec-family-hub .l-reacts{display:flex;gap:4px;margin-top:3px}
#dsec-family-hub .l-react{font-size:11px;padding:2px 7px;border-radius:9px;border:1px solid rgba(0,0,0,.11);background:transparent;cursor:pointer;color:#52504d;font-family:'Jost',sans-serif;transition:all .1s}
#dsec-family-hub .l-react:hover{background:#e8f1eb;border-color:#b8d4c0;color:#2d5a3d}
#dsec-family-hub .loop-empty{padding:1.25rem;text-align:center;font-size:12px;color:#9a9590}
#dsec-family-hub .loop-compose{padding:.65rem 1.25rem;border-top:1px solid rgba(0,0,0,.055);background:#f9f6f0}
#dsec-family-hub .compose-row{display:flex;gap:7px;align-items:flex-end}
#dsec-family-hub .compose-type{font-family:'Jost',sans-serif;font-size:11px;padding:6px 8px;border:1px solid rgba(0,0,0,.11);border-radius:12px;background:#fff;color:#18181a}
#dsec-family-hub .compose-input{flex:1;font-family:'Jost',sans-serif;font-size:12px;padding:7px 10px;border:1px solid rgba(0,0,0,.11);border-radius:12px;background:#fff;color:#18181a;resize:none;height:34px;line-height:1.4;transition:all .2s}
#dsec-family-hub .compose-input:focus{outline:none;border-color:#2d5a3d;height:56px}
#dsec-family-hub .compose-post{background:#2d5a3d;color:#fff;border:none;border-radius:12px;padding:7px 14px;font-family:'Jost',sans-serif;font-size:12px;cursor:pointer;white-space:nowrap}
/* Bottom row */
#dsec-family-hub .bottom-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:1rem;margin-bottom:1rem}
@media(max-width:900px){#dsec-family-hub .bottom-row{grid-template-columns:1fr 1fr}}
@media(max-width:600px){#dsec-family-hub .bottom-row{grid-template-columns:1fr}}
#dsec-family-hub .b-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;padding:1rem 1.15rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);transition:all .2s}
#dsec-family-hub .b-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.09),0 2px 8px rgba(0,0,0,.05);transform:translateY(-2px)}
#dsec-family-hub .b-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}
#dsec-family-hub .b-lbl{font-size:9px;letter-spacing:.1em;color:#9a9590;text-transform:uppercase}
#dsec-family-hub .b-link{font-size:10px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-family-hub .b-link:hover{text-decoration:underline}
#dsec-family-hub .fin-total{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:500;color:#18181a;line-height:1;margin-bottom:.2rem}
#dsec-family-hub .fin-period{font-size:10px;color:#9a9590;margin-bottom:.6rem}
#dsec-family-hub .fin-bar{height:5px;border-radius:3px;overflow:hidden;display:flex;margin-bottom:.4rem}
#dsec-family-hub .fin-legend{display:flex;gap:7px;flex-wrap:wrap}
#dsec-family-hub .fin-leg-item{display:flex;align-items:center;gap:3px;font-size:10px;color:#52504d}
#dsec-family-hub .fin-leg-dot{width:6px;height:6px;border-radius:2px;flex-shrink:0}
#dsec-family-hub .fin-recent{margin-top:.6rem;display:flex;flex-direction:column;gap:2px}
#dsec-family-hub .fin-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding:3px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-family-hub .fin-row:last-child{border-bottom:none}
#dsec-family-hub .fin-row-name{color:#52504d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px}
#dsec-family-hub .fin-row-amt{font-family:'Cormorant Garamond',serif;font-size:13px;font-weight:500;flex-shrink:0}
/* Rhythm slots */
#dsec-family-hub .r-slot{display:grid;grid-template-columns:46px 1fr;gap:5px;align-items:center;margin-bottom:4px}
#dsec-family-hub .r-slot:last-child{margin-bottom:0}
#dsec-family-hub .r-time{font-size:10px;color:#9a9590;text-align:right;padding-right:5px;border-right:2px solid rgba(0,0,0,.11)}
#dsec-family-hub .r-slot.now .r-time{color:#2d5a3d;font-weight:500;border-right-color:#2d5a3d}
#dsec-family-hub .r-tags{display:flex;gap:3px;flex-wrap:wrap;padding:2px 0 2px 5px}
#dsec-family-hub .r-tag{font-size:10px;padding:2px 7px;border-radius:7px;border:1px solid transparent}
#dsec-family-hub .r-tag.med{background:#fff3e0;color:#7a4500;border-color:#f5c97a}
#dsec-family-hub .r-tag.meal{background:#e8f5e9;color:#2a5e30;border-color:#a5d6a7}
#dsec-family-hub .r-tag.sleep{background:#ede7f6;color:#4a2d8a;border-color:#c5b4e8}
#dsec-family-hub .r-tag.hygiene{background:#e3f2fd;color:#0d3f6e;border-color:#90caf9}
#dsec-family-hub .r-tag.exercise{background:#fce4ec;color:#7b1a35;border-color:#f48fb1}
#dsec-family-hub .r-tag.routine{background:#f1f8e9;color:#33601c;border-color:#aed581}
/* Documents */
#dsec-family-hub .doc-prog{height:4px;border-radius:2px;background:rgba(0,0,0,.11);overflow:hidden;margin-bottom:.4rem}
#dsec-family-hub .doc-prog-fill{height:100%;border-radius:2px;background:#2d5a3d}
#dsec-family-hub .doc-prog-lbl{font-size:10px;color:#9a9590;margin-bottom:.5rem}
#dsec-family-hub .doc-rows{display:flex;flex-direction:column;gap:4px}
#dsec-family-hub .doc-row{display:flex;align-items:center;justify-content:space-between;font-size:11px}
#dsec-family-hub .doc-status{font-size:9px;padding:1px 6px;border-radius:6px;font-weight:500}
#dsec-family-hub .doc-status.on-file{background:#e8f1eb;color:#2d5a3d}
#dsec-family-hub .doc-status.missing{background:#fdf0f0;color:#a03030}
/* Right column cards */
#dsec-family-hub .r-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;margin-bottom:.85rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);overflow:hidden;transition:all .2s}
#dsec-family-hub .r-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.09),0 2px 8px rgba(0,0,0,.05)}
/* Care Stage Widget */
#dsec-family-hub .hub-stage-widget{position:relative;overflow:hidden}
#dsec-family-hub .hub-stage-bar{position:absolute;top:0;left:0;right:0;height:3px}
#dsec-family-hub .hub-stage-body{padding:1rem 1.1rem .6rem}
#dsec-family-hub .hub-stage-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
#dsec-family-hub .hub-stage-icon{font-size:1.4rem}
#dsec-family-hub .hub-stage-assess{font-size:.6rem;font-weight:700;letter-spacing:1px;padding:2px 7px;border-radius:20px;text-transform:uppercase}
#dsec-family-hub .hub-stage-label{font-size:.67rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:2px}
#dsec-family-hub .hub-stage-name{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--deep);line-height:1.3;margin-bottom:4px}
#dsec-family-hub .hub-stage-tagline{font-size:.72rem;color:var(--muted);font-style:italic;line-height:1.55;margin-bottom:6px}
#dsec-family-hub .hub-stage-cta a{font-size:.72rem;font-weight:600;text-decoration:none;cursor:pointer}
#dsec-family-hub .hub-stage-cta a:hover{text-decoration:underline}
#dsec-family-hub .hub-stage-actions{padding:0 1.1rem .85rem;display:flex;align-items:center;gap:8px}
#dsec-family-hub .hub-stage-retake{font-size:.65rem;color:var(--muted);background:none;border:none;cursor:pointer;padding:0;font-family:'Jost',sans-serif;text-decoration:underline;text-underline-offset:2px}
#dsec-family-hub .hub-stage-retake:hover{color:var(--deep)}
#dsec-family-hub .hub-stage-take-btn{display:inline-block;margin-top:4px;font-size:.75rem;font-weight:600;color:#2d5a3d;background:none;border:none;cursor:pointer;padding:0;font-family:'Jost',sans-serif}
#dsec-family-hub .hub-stage-take-btn:hover{text-decoration:underline}
#dsec-family-hub .r-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.1rem .65rem;border-bottom:1px solid rgba(0,0,0,.055);background:#f9f6f0}
#dsec-family-hub .r-title{font-size:12px;font-weight:500;color:#18181a;display:flex;align-items:center;gap:6px}
#dsec-family-hub .r-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-family-hub .r-link:hover{text-decoration:underline}
#dsec-family-hub .r-body{padding:.7rem 1.1rem}
/* Circle & team */
#dsec-family-hub .circle-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-family-hub .circle-row:last-child{border-bottom:none}
#dsec-family-hub .c-av{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:11px;font-weight:600;flex-shrink:0}
#dsec-family-hub .c-name{font-size:12px;font-weight:500;color:#18181a}
#dsec-family-hub .c-rel{font-size:10px;color:#9a9590}
#dsec-family-hub .c-status{width:6px;height:6px;border-radius:50%;margin-left:auto;flex-shrink:0}
#dsec-family-hub .team-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-family-hub .team-row:last-child{border-bottom:none}
#dsec-family-hub .t-av{width:28px;height:28px;border-radius:50%;background:#e8f1eb;color:#2d5a3d;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;border:1px solid rgba(45,90,61,.14)}
#dsec-family-hub .t-name{font-size:12px;font-weight:500;color:#18181a}
#dsec-family-hub .t-role{font-size:10px;color:#9a9590}
#dsec-family-hub .t-call{margin-left:auto;background:none;border:none;font-size:13px;cursor:pointer;padding:2px 4px;border-radius:5px}
#dsec-family-hub .t-call:hover{background:#f0f6f2}
#dsec-family-hub .appt-mini{background:#e8f1eb;border:1px solid #b8d4c0;border-radius:12px;padding:8px 10px;margin-top:.5rem}
#dsec-family-hub .appt-mini-lbl{font-size:9px;letter-spacing:.07em;color:#2d5a3d;text-transform:uppercase;margin-bottom:2px}
#dsec-family-hub .appt-mini-name{font-size:12px;font-weight:500;color:#18181a}
#dsec-family-hub .appt-mini-date{font-size:11px;color:#52504d}
/* Empty states */
#dsec-family-hub .empty{text-align:center;padding:1rem .5rem}
#dsec-family-hub .empty-ico{font-size:22px;margin-bottom:.3rem;opacity:.45}
#dsec-family-hub .empty-txt{font-size:12px;color:#9a9590;line-height:1.5;margin-bottom:.4rem}
#dsec-family-hub .empty-lnk{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif;text-decoration:underline}
/* Animation */
#dsec-family-hub .fade-up{animation:hubFadeUp .35s ease both}
#dsec-family-hub .hub-fade-up{animation:hubFadeUp .35s ease both}
@keyframes hubFadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* ── CARE LIBRARY VISUAL REFRESH ── */

/* Personalization bar — grid layout, larger inputs */
.cl-persona-bar {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 12px;
}
.cl-persona-field:nth-child(3) {
  grid-column: 1 / -1;
}
.cl-persona-bar-wrap {
  padding: 14px 0 18px;
  background: #F8F7F4;
}
.cl-persona-label {
  font-size: .67rem;
  letter-spacing: .1em;
  margin-bottom: 7px;
}
.cl-persona-select {
  padding: 13px 14px;
  font-size: .875rem;
  border-radius: 10px;
}

/* Stats strip — larger numbers, full-bleed band (not a floating card) */
.cl-stat-sm-row {
  border-radius: 0 !important;
  margin: 0 -20px 0 !important;
  padding: 20px 20px 18px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
}
.cl-stat-sm-v {
  font-size: 2rem !important;
  font-weight: 600 !important;
}
.cl-stat-sm-l {
  font-size: .72rem;
  line-height: 1.4;
  margin-top: 3px;
}

/* Why box — remove card styling, just heading + body on page bg */
.cl-why-box {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 20px 0 4px !important;
}
.cl-why-lbl {
  font-size: .67rem;
  letter-spacing: .13em;
  margin-bottom: 9px;
}
.cl-why-text {
  font-size: .9rem;
  font-weight: 400 !important;
  line-height: 1.75;
  color: var(--deep);
}

/* Tab bar */
.cl-tab {
  padding: 13px 14px 11px;
  font-size: .82rem;
}

/* Tab body — pearly white */
.cl-tab-body {
  background: #F8F7F4 !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 22px 0 8px !important;
}

/* Wish list — clean subheading, dark sage numbers */
.cl-guided-title {
  font-size: 1.15rem;
  line-height: 1.3;
  margin-bottom: 3px;
}
.cl-wish-num {
  font-size: 1.8rem;
  color: #2d5a3d;
  opacity: 1;
  min-width: 36px;
  font-weight: 600;
}
.cl-wish-title {
  font-size: .88rem;
  font-weight: 400;
  line-height: 1.5;
}
.cl-wish-body {
  font-size: .81rem;
  line-height: 1.65;
}
.cl-wish-item {
  padding: 12px 0;
  gap: 14px;
}

/* cl-root — tighter section gaps */
.cl-root {
  gap: 0;
}
.cl-guided-overview {
  gap: 20px;
}
.cl-guided-block {
  gap: 12px;
}

/* Mobile */
@media (max-width: 600px) {
  .cl-stat-sm-row {
    grid-template-columns: 1fr 1fr;
    margin: 0 -16px 0 !important;
    padding: 16px 16px 14px !important;
  }
  .cl-stat-sm:last-child {
    grid-column: 1 / -1;
  }
}
.cl-stage-header{display:flex;align-items:center;gap:11px;padding:12px 0 11px;border-bottom:1px solid var(--border)}
.cl-stage-header-eye{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--muted)}
.cl-stage-header-pill{display:inline-flex;align-items:center;gap:6px;background:var(--forest-pale);border:1px solid rgba(13,59,46,.22);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500;color:var(--forest-mid);cursor:pointer;transition:background .15s}
.cl-stage-header-pill:hover{background:#d4e8dc}
.cl-stage-header-dot{width:5px;height:5px;background:var(--forest-light);border-radius:50%;flex-shrink:0}

/* ── Care Library — sage background with white content cards ── */
#dsec-carelibrary { background: #3A5C4E; }

.cl-persona-bar-wrap {
  background: #3A5C4E;
  border-bottom-color: rgba(255,255,255,.12);
  padding-left: 14px;
  padding-right: 14px;
}
.cl-persona-label { color: rgba(255,255,255,.55); }
.cl-persona-select {
  background: rgba(255,255,255,.15);
  border-color: rgba(255,255,255,.25);
  color: #fff;
}
.cl-persona-select option { background: #2d5a3d; color: #fff; }

.cl-stage-header {
  background: #3A5C4E;
  border-bottom-color: rgba(255,255,255,.12);
  padding-left: 14px;
  padding-right: 14px;
}
.cl-stage-header-eye { color: rgba(255,255,255,.5); }
.cl-stage-header-pill {
  background: rgba(255,255,255,.15);
  border-color: rgba(255,255,255,.28);
  color: #fff;
}
.cl-stage-header-dot { background: #A8D5C4; }

.cl-root { background: #3A5C4E; gap: 12px; padding: 12px 0; }

.cl-stat-sm-row {
  background: #fff !important;
  border-radius: 10px !important;
  margin: 0 14px !important;
  padding: 16px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.08);
}
.cl-stat-sm-v { color: #E8A87C !important; }
.cl-stat-sm-l { color: #7AAB8A !important; }

.cl-why-box {
  background: #fff !important;
  border: 0.5px solid rgba(0,0,0,.09) !important;
  border-radius: 10px !important;
  margin: 0 14px !important;
  padding: 14px 16px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.07);
}

.cl-tab-bar {
  background: #fff;
  margin: 0 14px;
  border-radius: 10px 10px 0 0;
  border-bottom: 1px solid rgba(0,0,0,.08);
  padding: 0 8px;
}

.cl-tab-body {
  background: #fff !important;
  border-radius: 0 0 10px 10px !important;
  margin: 0 14px 14px !important;
  padding: 18px 16px 22px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.07);
  border: 0.5px solid rgba(0,0,0,.09) !important;
  border-top: none !important;
}

/* ═══ STATE PERSONALIZATION STYLES ═══ */
.caevo-state-alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;margin-bottom:12px;border-left:4px solid;font-size:.84rem;line-height:1.6;position:relative}
.caevo-state-alert--high{background:#fef2f2;border-left-color:#dc2626;color:#991b1b}
.caevo-state-alert--medium{background:#fffbeb;border-left-color:#d97706;color:#92400e}
.caevo-state-alert--low,.caevo-state-alert--none{background:#f0f7f3;border-left-color:#2d5a3d;color:#1a3a28}
.caevo-state-alert .alert-icon{font-size:1.1rem;line-height:1.2;flex-shrink:0;margin-top:1px}
.caevo-state-alert .alert-content{flex:1;min-width:0}
.caevo-state-alert .alert-content p{margin:0 0 6px;font-family:'Jost',sans-serif}
.caevo-state-alert .alert-content a{font-size:.78rem;color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;opacity:.85}
.caevo-state-alert .alert-content a:hover{opacity:1}
.caevo-state-alert .alert-dismiss{position:absolute;top:8px;right:8px;background:none;border:none;cursor:pointer;font-size:1rem;color:inherit;opacity:.5;padding:2px 6px;line-height:1}
.caevo-state-alert .alert-dismiss:hover{opacity:1}

.caevo-state-prompt{padding:14px;background:var(--forest-pale,#e8f0ec);border-radius:10px;text-align:center;font-size:.84rem;color:var(--muted);margin-bottom:12px;font-family:'Jost',sans-serif}

.caevo-coverage-panel{background:var(--white,#fff);border:1px solid var(--border,rgba(0,0,0,.09));border-radius:10px;padding:14px;margin-bottom:12px}
.caevo-coverage-panel .coverage-title{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:500;color:#1A5240;margin:0 0 12px}
.caevo-coverage-panel .coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:480px){.caevo-coverage-panel .coverage-grid{grid-template-columns:1fr}}
.coverage-chip{display:flex;align-items:flex-start;gap:8px;padding:10px;border-radius:8px;border:1px solid;font-family:'Jost',sans-serif;cursor:default;position:relative}
.coverage-chip--available{background:#fff;border-color:rgba(45,90,61,.25)}
.coverage-chip--unavailable{background:#f9fafb;border-color:#e5e7eb}
.coverage-chip .chip-icon{font-size:.9rem;font-weight:700;flex-shrink:0;line-height:1.3}
.coverage-chip--available .chip-icon{color:#2d5a3d}
.coverage-chip--unavailable .chip-icon{color:#9ca3af}
.coverage-chip .chip-label{font-size:.82rem;font-weight:400;line-height:1.3}
.coverage-chip--available .chip-label{color:var(--deep,#1c1c1a)}
.coverage-chip--unavailable .chip-label{color:#9ca3af}
.coverage-chip .chip-note{display:none;font-size:.74rem;color:var(--muted);line-height:1.5;margin-top:3px}
.coverage-chip:hover .chip-note,.coverage-chip:focus .chip-note{display:block}
.coverage-chip .chip-text{display:flex;flex-direction:column}

.caevo-key-facts{background:var(--white,#fff);border:1px solid var(--border,rgba(0,0,0,.09));border-radius:10px;padding:14px;margin-bottom:12px}
.caevo-key-facts .key-facts-title{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:500;color:#1A5240;margin:0 0 10px}
.caevo-key-facts .key-facts-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.caevo-key-facts .key-facts-list li{font-family:'Jost',sans-serif;font-size:.83rem;line-height:1.65;color:var(--deep,#1c1c1a);padding-left:16px;position:relative}
.caevo-key-facts .key-facts-list li::before{content:'•';position:absolute;left:0;color:var(--muted,#a0908a)}
.caevo-key-facts .key-facts-list li.fact--warning{color:#b45309}
.caevo-key-facts .key-facts-list li.fact--warning-red{color:#b91c1c}

/* ═══════════════════════════════════════════════════════════════
   AGING WELL — AUTH PAGE SKIN
   Applied when .aw-mode is added to .auth-wrap by aging-well-auth.js
   Distinct warm amber/earth palette vs caregiver's deep forest green
   ═══════════════════════════════════════════════════════════════ */

/* ── Left panel: warm earth amber instead of deep forest ── */
.auth-wrap.aw-mode .auth-left {
  background: #0B3327;
  background-image:
    radial-gradient(ellipse 400px 400px at 110% -10%, rgba(200,221,209,.22) 0%, transparent 60%),
    radial-gradient(ellipse 280px 280px at -10% 110%, rgba(200,221,209,.12) 0%, transparent 60%);
}
.auth-wrap.aw-mode .auth-left::before {
  background: rgba(200,221,209,.06);
}
.auth-wrap.aw-mode .auth-left::after {
  background: rgba(200,221,209,.05);
}

/* ── Brand pill ── */
.auth-wrap.aw-mode .auth-brand {
  background: rgba(200,221,209,.15);
  color: rgba(200,221,209,.85);
}
.auth-wrap.aw-mode .auth-brand .aw-dot {
  background: #C8DDD1 !important;
}

/* ── Heading & body text ── */
.auth-wrap.aw-mode .auth-left h2 {
  color: #F5F2EC;
}
.auth-wrap.aw-mode .auth-left > p {
  color: rgba(245,242,236,.6);
}

/* ── Feature dots: warm amber instead of forest-light ── */
.auth-wrap.aw-mode .feat-dot {
  background: #C8DDD1;
}
.auth-wrap.aw-mode .auth-feat span {
  color: rgba(200,221,209,.82);
}

/* ── Quote block ── */
.auth-wrap.aw-mode .auth-quote {
  border-top-color: rgba(200,221,209,.2);
}
.auth-wrap.aw-mode .auth-quote blockquote {
  color: rgba(245,242,236,.55);
}
.auth-wrap.aw-mode .auth-quote cite {
  color: rgba(245,242,236,.32);
}

/* ── Right panel: slightly warmer cream ── */
.auth-wrap.aw-mode .auth-right {
  background: #EDF4F0;
}

/* ── Portal badge shown on the right side ── */
.aw-portal-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 13px 5px 10px;
  background: rgba(200,221,209,.18);
  border: 1.5px solid rgba(26,82,64,.25);
  border-radius: 50px;
  font-size: .76rem;
  font-weight: 500;
  color: #1A5240;
  margin-bottom: 18px;
  letter-spacing: .01em;
}
.aw-portal-badge svg {
  flex-shrink: 0;
}

/* ── Submit button: warm amber instead of forest ── */
.auth-wrap.aw-mode .auth-submit {
  background: #0B3327;
}
.auth-wrap.aw-mode .auth-submit:hover {
  background: #082820;
}

/* ── Sub-links & field accents ── */
.auth-wrap.aw-mode .auth-sub a,
.auth-wrap.aw-mode .auth-terms a {
  color: #1A5240;
}
.auth-wrap.aw-mode .google-btn:hover {
  border-color: #C8DDD1;
  box-shadow: 0 2px 8px rgba(200,221,209,.25);
}

/* ── "Wrong portal" notice (shown below form) ── */
.aw-wrong-portal-note {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding: 10px 14px;
  background: #FDF0E0;
  border: 1px solid rgba(196,168,130,.4);
  border-radius: 10px;
  font-size: .77rem;
  color: #7A5C38;
  line-height: 1.5;
}
.aw-wrong-portal-note a {
  color: #9A6E3A;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
}
.aw-wrong-portal-note a:hover {
  text-decoration: underline;
}

/* ── Caregiver portal badge (shown when in caregiver mode) ── */
.care-portal-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 13px 5px 10px;
  background: var(--forest-pale, #EEF5EE);
  border: 1.5px solid rgba(38,100,60,.25);
  border-radius: 50px;
  font-size: .76rem;
  font-weight: 500;
  color: var(--forest, #26643C);
  margin-bottom: 18px;
  letter-spacing: .01em;
}
.care-portal-badge svg {
  flex-shrink: 0;
}

/* ── Caregiver "Wrong portal" notice ── */
.care-wrong-portal-note {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  padding: 10px 14px;
  background: var(--forest-pale, #EEF5EE);
  border: 1px solid rgba(38,100,60,.2);
  border-radius: 10px;
  font-size: .77rem;
  color: var(--muted, #6B7280);
  line-height: 1.5;
}
.care-wrong-portal-note a {
  color: #9A6E3A;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
}
.care-wrong-portal-note a:hover {
  text-decoration: underline;
}
/* ═══════════════════════════════════════════════════════════════
   AGING WELL HUB — Styles
   Follows #dsec-family-hub CSS patterns exactly
   Add to styles.css or inline in index.html
   ═══════════════════════════════════════════════════════════════ */

/* ── HEADER ── */
#dsec-aging-well-hub .aw-header{background:linear-gradient(135deg,#1a3328 0%,#2d5a3d 55%,#3d7055 100%);padding:3.5rem 3.5rem 3.5rem;position:relative;overflow:hidden}
@media(max-width:820px){#dsec-aging-well-hub .aw-header{padding:2rem 1.5rem 2rem}}
#dsec-aging-well-hub .aw-header::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 15% 50%,rgba(255,255,255,.04),transparent 60%),radial-gradient(circle at 85% 20%,rgba(255,255,255,.03),transparent 50%);pointer-events:none}
#dsec-aging-well-hub .aw-header-inner{position:relative;z-index:1}
#dsec-aging-well-hub .aw-eyebrow{font-size:11px;letter-spacing:.13em;color:rgba(255,255,255,.4);text-transform:uppercase;margin-bottom:.75rem}
#dsec-aging-well-hub .aw-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}
#dsec-aging-well-hub .aw-greeting{font-family:'Cormorant Garamond',serif;font-size:46px;font-weight:500;color:#fff;line-height:1.1}
@media(max-width:820px){#dsec-aging-well-hub .aw-greeting{font-size:36px}}
#dsec-aging-well-hub .aw-greeting em{font-style:italic;color:#C9B99A;opacity:1}
#dsec-aging-well-hub .aw-context{font-size:14px;color:rgba(255,255,255,.65);margin-top:.65rem;line-height:1.75;max-width:520px;font-weight:300}
@media(max-width:820px){#dsec-aging-well-hub .aw-context{display:none}}
#dsec-aging-well-hub .aw-greeting-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.45);display:block;margin-bottom:.45rem}
#dsec-aging-well-hub .aw-focus-pill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:7px 16px 7px 10px}
#dsec-aging-well-hub .aw-focus-pill>span{font-size:20px;line-height:1}
#dsec-aging-well-hub .aw-pill-name{font-size:14px;font-weight:600;color:#fff;line-height:1.3}
#dsec-aging-well-hub .aw-pill-stage{font-size:11px;color:rgba(255,255,255,.55);line-height:1.3}
#dsec-aging-well-hub .aw-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;padding-top:.25rem}
@media(max-width:820px){#dsec-aging-well-hub .aw-header-right{display:none}}
#dsec-aging-well-hub .aw-date-pill{font-size:12px;color:rgba(255,255,255,.5)}
#dsec-aging-well-hub .aw-lib-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;padding:5px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.75);background:rgba(255,255,255,.08);cursor:pointer;margin-top:8px;transition:all .15s}
#dsec-aging-well-hub .aw-lib-pill:hover{background:rgba(255,255,255,.15);color:#fff}

/* ── INSPIRATION STRIP ── */
#dsec-aging-well-hub .aw-inspo-strip{background:#fff;border-bottom:1px solid rgba(0,0,0,.055);padding:1rem 3.5rem;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 4px 16px rgba(0,0,0,.04)}
@media(max-width:820px){#dsec-aging-well-hub .aw-inspo-strip{padding:.85rem 1.5rem}}
#dsec-aging-well-hub .aw-inspo-icon{font-size:14px;color:#2d5a3d;flex-shrink:0}
#dsec-aging-well-hub .aw-inspo-text{font-size:13px;color:#18181a;font-style:italic;flex:1;line-height:1.5}
#dsec-aging-well-hub .aw-inspo-src{font-size:11px;color:#9a9590;white-space:nowrap}

/* ── BODY GRID ── */
#dsec-aging-well-hub .aw-body{display:grid;grid-template-columns:1fr 288px;gap:0;align-items:start}
@media(max-width:860px){#dsec-aging-well-hub .aw-body{grid-template-columns:1fr}}
#dsec-aging-well-hub .aw-center{padding:2rem 3.5rem 5rem;border-right:1px solid rgba(0,0,0,.055)}
@media(max-width:1080px){#dsec-aging-well-hub .aw-center{border-right:none;padding:1.5rem 1.5rem 3rem}}
#dsec-aging-well-hub .aw-right{padding:2rem 1.75rem 5rem}
@media(max-width:860px){#dsec-aging-well-hub .aw-right{display:none}}

/* ── SECTION HEADS ── */
#dsec-aging-well-hub .aw-sec-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}
#dsec-aging-well-hub .aw-sec-label{font-size:9px;letter-spacing:.12em;color:#9a9590;text-transform:uppercase}
#dsec-aging-well-hub .aw-sec-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-aging-well-hub .aw-sec-link:hover{text-decoration:underline}

/* ── PULSE CARD (check-in) ── */
#dsec-aging-well-hub .aw-pulse-card{background:#fff;border:1px solid #b8d4c0;border-top:3px solid #2d5a3d;border-radius:24px;padding:1.75rem 2rem;box-shadow:0 4px 24px rgba(45,90,61,.1),0 1px 4px rgba(45,90,61,.06);margin-bottom:1.5rem}
#dsec-aging-well-hub .aw-pulse-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem}
#dsec-aging-well-hub .aw-pulse-title{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:500;color:#2d5a3d;line-height:1.2}
#dsec-aging-well-hub .aw-pulse-sub{font-size:13px;color:#9a9590;margin-top:.2rem;font-style:italic;font-weight:300}
#dsec-aging-well-hub .aw-pulse-tag{font-size:11px;color:#2d5a3d;background:#e8f1eb;border-radius:10px;padding:5px 12px;flex-shrink:0;border:1px solid #b8d4c0}
#dsec-aging-well-hub .aw-pulse-section{margin-bottom:1.1rem}
#dsec-aging-well-hub .aw-pulse-lbl{font-size:11px;letter-spacing:.1em;color:#9a9590;text-transform:uppercase;margin-bottom:.65rem;font-weight:500}
#dsec-aging-well-hub .aw-mood-row{display:flex;gap:7px;flex-wrap:wrap}
#dsec-aging-well-hub .aw-mood-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 8px;border-radius:18px;border:1.5px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;transition:all .2s;min-width:52px;flex:1}
#dsec-aging-well-hub .aw-mood-btn:hover{border-color:#b8d4c0;background:#fff;transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
#dsec-aging-well-hub .aw-mood-btn.sel{border-color:#2d5a3d;background:#e8f1eb;box-shadow:0 0 0 3px rgba(45,90,61,.1);transform:translateY(-2px)}
#dsec-aging-well-hub .aw-mood-btn.sel .aw-mood-lbl{color:#2d5a3d;font-weight:500}
#dsec-aging-well-hub .aw-mood-em{font-size:22px}
#dsec-aging-well-hub .aw-mood-lbl{font-size:11px;color:#9a9590;text-align:center;line-height:1.3}
#dsec-aging-well-hub .aw-scale-row{display:flex;gap:6px;align-items:center}
#dsec-aging-well-hub .aw-scale-lo,#dsec-aging-well-hub .aw-scale-hi{font-size:11px;color:#9a9590;white-space:nowrap;font-weight:300}
#dsec-aging-well-hub .aw-scale-btns{display:flex;gap:5px;flex:1;justify-content:center}
#dsec-aging-well-hub .aw-scale-btn{width:38px;height:38px;border-radius:12px;border:1.5px solid rgba(0,0,0,.11);background:#f9f6f0;cursor:pointer;font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:500;color:#52504d;transition:all .2s;display:flex;align-items:center;justify-content:center}
#dsec-aging-well-hub .aw-scale-btn:hover{border-color:#b8d4c0;background:#fff;transform:translateY(-2px)}
#dsec-aging-well-hub .aw-scale-btn.sel{border-color:#2d5a3d;background:#e8f1eb;color:#2d5a3d;box-shadow:0 0 0 3px rgba(45,90,61,.1)}
#dsec-aging-well-hub .aw-pulse-note{width:100%;font-family:'Jost',sans-serif;font-size:14px;padding:10px 13px;border:1px solid rgba(0,0,0,.11);border-radius:18px;background:#f9f6f0;color:#18181a;resize:none;min-height:48px;line-height:1.6;transition:all .2s;box-sizing:border-box}
#dsec-aging-well-hub .aw-pulse-note:focus{outline:none;border-color:#2d5a3d;background:#fff;box-shadow:0 0 0 3px rgba(45,90,61,.07)}
#dsec-aging-well-hub .aw-pulse-note::placeholder{color:#9a9590;font-style:italic;font-weight:300}
#dsec-aging-well-hub .aw-pulse-foot{display:flex;align-items:center;justify-content:space-between;margin-top:1.1rem;gap:8px}
#dsec-aging-well-hub .aw-pulse-hint{font-size:12px;color:#9a9590;font-style:italic}
#dsec-aging-well-hub .aw-pulse-btn{background:#2d5a3d;color:#fff;border:none;border-radius:18px;padding:11px 28px;font-family:'Jost',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px rgba(45,90,61,.3)}
#dsec-aging-well-hub .aw-pulse-btn:hover{background:#1e3d2a;transform:translateY(-2px)}
#dsec-aging-well-hub .aw-pulse-done{display:none;text-align:center;padding:1rem 0}
#dsec-aging-well-hub .aw-pulse-done.show{display:block}
#dsec-aging-well-hub .aw-pulse-done-ico{font-size:32px;margin-bottom:.5rem}
#dsec-aging-well-hub .aw-pulse-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:.65rem 0}
#dsec-aging-well-hub .aw-pulse-chip{font-size:13px;padding:5px 13px;border-radius:12px;background:#e8f1eb;color:#2d5a3d;border:1px solid #b8d4c0}
#dsec-aging-well-hub .aw-pulse-deeper{font-size:13px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif;text-decoration:underline;opacity:.8}

/* ── TWO COLUMN LAYOUT ── */
#dsec-aging-well-hub .aw-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
@media(max-width:700px){#dsec-aging-well-hub .aw-two-col{grid-template-columns:1fr}}

/* ── WIDGET CARDS ── */
#dsec-aging-well-hub .aw-widget-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;padding:1.25rem 1.5rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);transition:all .2s}
#dsec-aging-well-hub .aw-widget-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.09);transform:translateY(-2px)}
#dsec-aging-well-hub .aw-wid-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}
#dsec-aging-well-hub .aw-wid-lbl{font-size:9px;letter-spacing:.12em;color:#9a9590;text-transform:uppercase}
#dsec-aging-well-hub .aw-wid-link{font-size:11px;color:#2d5a3d;cursor:pointer;background:none;border:none;font-family:'Jost',sans-serif}
#dsec-aging-well-hub .aw-wid-link:hover{text-decoration:underline}
#dsec-aging-well-hub .aw-wid-title-row{display:flex;align-items:center;gap:6px;margin-bottom:.75rem}
#dsec-aging-well-hub .aw-wid-title{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:500;color:#18181a}

/* ── PUZZLE ── */
#dsec-aging-well-hub .aw-puzzle-box{background:#f9f6f0;border:1px solid rgba(0,0,0,.055);border-radius:12px;padding:1.25rem;text-align:center;margin-bottom:.75rem}
#dsec-aging-well-hub .aw-puzzle-letters{font-family:'Cormorant Garamond',serif;font-size:32px;letter-spacing:.2em;color:#2d5a3d;font-weight:600}
#dsec-aging-well-hub .aw-puzzle-hint{font-size:11px;color:#9a9590;margin-top:.35rem}
#dsec-aging-well-hub .aw-puzzle-input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid rgba(0,0,0,.11);font-family:'Cormorant Garamond',serif;font-size:18px;color:#18181a;text-align:center;letter-spacing:.12em;background:#f9f6f0;box-sizing:border-box;outline:none}
#dsec-aging-well-hub .aw-puzzle-input:focus{border-color:#2d5a3d;background:#fff}
#dsec-aging-well-hub .aw-puzzle-result{text-align:center;padding:1rem;border-radius:10px;margin-top:.5rem}
#dsec-aging-well-hub .aw-puzzle-result.solved{background:#e8f1eb;border:1px solid #b8d4c0}
#dsec-aging-well-hub .aw-puzzle-result.revealed{background:#f9f6f0;border:1px solid rgba(0,0,0,.055)}
#dsec-aging-well-hub .aw-puzzle-answer{font-family:'Cormorant Garamond',serif;font-size:24px;color:#2d5a3d;font-weight:600}
#dsec-aging-well-hub .aw-puzzle-msg{font-size:12px;color:#9a9590;margin-top:.25rem}
#dsec-aging-well-hub .aw-btn-primary{background:#2d5a3d;color:#fff;border:none;border-radius:10px;padding:10px 18px;font-family:'Jost',sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}
#dsec-aging-well-hub .aw-btn-primary:hover{background:#1e3d2a}
#dsec-aging-well-hub .aw-btn-ghost{background:transparent;color:#9a9590;border:1px solid rgba(0,0,0,.11);border-radius:10px;padding:10px 14px;font-family:'Jost',sans-serif;font-size:12px;cursor:pointer}
#dsec-aging-well-hub .aw-btn-sm{padding:8px 14px;font-size:12px}

/* ── EXERCISE ── */
#dsec-aging-well-hub .aw-exercise-card{background:#e8f1eb;border:1px solid rgba(184,212,192,.4);border-radius:12px;padding:1rem;margin-bottom:.75rem}
#dsec-aging-well-hub .aw-ex-dur{font-size:11px;color:#9a9590;margin-bottom:.35rem}
#dsec-aging-well-hub .aw-ex-desc{font-size:13px;color:#52504d;line-height:1.6;margin-bottom:.5rem}
#dsec-aging-well-hub .aw-ex-tip{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:7px;padding:7px 10px;font-size:12px;color:#18181a}
#dsec-aging-well-hub .aw-btn-exercise{width:100%;padding:10px;background:transparent;border:1px solid rgba(0,0,0,.11);border-radius:10px;font-family:'Jost',sans-serif;font-size:13px;color:#52504d;font-weight:500;cursor:pointer;transition:all .2s}
#dsec-aging-well-hub .aw-btn-exercise.done{background:#e8f1eb;border-color:#b8d4c0;color:#2d5a3d}

/* ── STAT ROW ── */
#dsec-aging-well-hub .aw-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:1rem}
@media(max-width:700px){#dsec-aging-well-hub .aw-stat-row{grid-template-columns:1fr 1fr}}
#dsec-aging-well-hub .aw-stat-card{padding:18px;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.055);cursor:pointer;transition:all .2s;box-shadow:0 2px 12px rgba(0,0,0,.04)}
#dsec-aging-well-hub .aw-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.1)}
#dsec-aging-well-hub .aw-stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
#dsec-aging-well-hub .aw-stat-ico{font-size:20px}
#dsec-aging-well-hub .aw-stat-dot{width:6px;height:6px;border-radius:50%}
#dsec-aging-well-hub .aw-stat-num{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:600;color:#18181a;line-height:1}
#dsec-aging-well-hub .aw-stat-unit{font-size:10px;color:#9a9590;margin-top:2px}
#dsec-aging-well-hub .aw-stat-sub{font-size:10px;color:#9a9590}
#dsec-aging-well-hub .aw-stat-label{font-size:11px;font-weight:500;margin-top:8px}

/* ── DOC PREVIEW ── */
#dsec-aging-well-hub .aw-doc-preview{display:flex;flex-direction:column;gap:4px}
#dsec-aging-well-hub .aw-doc-mini{display:flex;align-items:center;gap:7px;font-size:12px;color:#52504d;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-aging-well-hub .aw-doc-mini:last-child{border-bottom:none}
#dsec-aging-well-hub .aw-doc-tag{font-size:9px;padding:1px 6px;border-radius:6px;font-weight:500;margin-left:auto}
#dsec-aging-well-hub .aw-doc-tag.missing{background:#fdf0f0;color:#a03030}
#dsec-aging-well-hub .aw-doc-tag.done{background:#e8f1eb;color:#2d5a3d}

/* ── MEDICARE PREVIEW ── */
#dsec-aging-well-hub .aw-medicare-preview{display:flex;flex-direction:column;gap:4px}
#dsec-aging-well-hub .aw-med-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.055)}
#dsec-aging-well-hub .aw-med-item:last-child{border-bottom:none}
#dsec-aging-well-hub .aw-med-ico{font-size:15px;flex-shrink:0}
#dsec-aging-well-hub .aw-med-name{font-size:12px;font-weight:500;color:#18181a}
#dsec-aging-well-hub .aw-med-desc{font-size:10px;color:#9a9590}

/* ── TEAM PREVIEW ── */
#dsec-aging-well-hub .aw-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
#dsec-aging-well-hub .aw-team-mini{padding:10px;border-radius:10px;background:#f9f6f0;border:1px solid rgba(0,0,0,.055);text-align:center;cursor:pointer;transition:all .15s}
#dsec-aging-well-hub .aw-team-mini:hover{border-color:#b8d4c0;background:#e8f1eb}
#dsec-aging-well-hub .aw-team-ico{font-size:18px;margin-bottom:3px}
#dsec-aging-well-hub .aw-team-role{font-size:9px;color:#9a9590;text-transform:uppercase;letter-spacing:.06em}

/* ── SAFETY PREVIEW ── */
#dsec-aging-well-hub .aw-safety-prog{height:4px;border-radius:2px;background:rgba(0,0,0,.11);overflow:hidden;margin-bottom:.4rem}
#dsec-aging-well-hub .aw-safety-prog-fill{height:100%;border-radius:2px;background:#2d5a3d;transition:width .5s ease}
#dsec-aging-well-hub .aw-safety-prog-lbl{font-size:10px;color:#9a9590;margin-bottom:.5rem}
#dsec-aging-well-hub .aw-safe-item{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12px;color:#52504d;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.04)}
#dsec-aging-well-hub .aw-safe-item:last-child{border-bottom:none}
#dsec-aging-well-hub .aw-safe-check{width:14px;height:14px;border-radius:4px;border:1.5px solid rgba(0,0,0,.15);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s}
#dsec-aging-well-hub .aw-safe-item.checked .aw-safe-check{background:#2d5a3d;border-color:#2d5a3d}
#dsec-aging-well-hub .aw-safe-item.checked{color:#2d5a3d;font-weight:500}

/* ── RIGHT COLUMN ── */
#dsec-aging-well-hub .aw-r-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:24px;margin-bottom:.85rem;box-shadow:0 4px 20px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);overflow:hidden;transition:all .2s}
#dsec-aging-well-hub .aw-r-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.1rem .65rem;border-bottom:1px solid rgba(0,0,0,.055);background:#f9f6f0}
#dsec-aging-well-hub .aw-r-title{font-size:12px;font-weight:500;color:#18181a}
#dsec-aging-well-hub .aw-r-body{padding:.7rem 1.1rem}
#dsec-aging-well-hub .aw-res-row{display:flex;align-items:center;gap:9px;padding:7px 4px;border-radius:8px;text-decoration:none;color:inherit;cursor:pointer;transition:background .15s}
#dsec-aging-well-hub .aw-res-row:hover{background:rgba(13,59,46,.04)}
#dsec-aging-well-hub .aw-res-ico{font-size:16px;flex-shrink:0;width:22px;text-align:center}
#dsec-aging-well-hub .aw-res-name{font-size:12px;font-weight:500;color:#18181a;line-height:1.3}
#dsec-aging-well-hub .aw-res-desc{font-size:10px;color:#9a9590;line-height:1.3}

/* ── SCORECARD ── */
#dsec-aging-well-hub .aw-scorecard{position:relative;overflow:hidden}
#dsec-aging-well-hub .aw-score-bar{position:absolute;top:0;left:0;right:0;height:3px}
#dsec-aging-well-hub .aw-score-body{padding:1rem 1.1rem .85rem}
#dsec-aging-well-hub .aw-score-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
#dsec-aging-well-hub .aw-score-badge{font-size:.6rem;font-weight:700;letter-spacing:1px;padding:2px 7px;border-radius:20px;text-transform:uppercase;color:#2d5a3d;background:rgba(13,59,46,.08)}
#dsec-aging-well-hub .aw-score-title{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;color:#18181a;line-height:1.3;margin-bottom:8px}
#dsec-aging-well-hub .aw-score-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#dsec-aging-well-hub .aw-score-metric{display:flex;flex-direction:column;padding:6px 8px;background:#f9f6f0;border-radius:10px;border:1px solid rgba(0,0,0,.055)}
#dsec-aging-well-hub .aw-sm-num{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:600;color:#2d5a3d;line-height:1.1}
#dsec-aging-well-hub .aw-sm-label{font-size:9px;color:#9a9590;text-transform:uppercase;letter-spacing:.04em}

/* ── TIP CARD ── */
#dsec-aging-well-hub .aw-tip-card{border-left:3px solid #2d5a3d}
#dsec-aging-well-hub .aw-tip-body{padding:1rem 1.1rem}
#dsec-aging-well-hub .aw-tip-quote{font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:500;color:#2d5a3d;line-height:1.45;margin-bottom:.5rem;font-style:italic}
#dsec-aging-well-hub .aw-tip-action{font-size:11px;color:#9a9590;line-height:1.5}

/* ── ANIMATIONS ── */
#dsec-aging-well-hub .fade-up{animation:awFadeUp .45s ease both}
@keyframes awFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
/* ═══════════════════════════════════════════════════════════════
   AGING WELL SUB-PAGES — Styles
   Append to bottom of styles.css
   ═══════════════════════════════════════════════════════════════ */

/* ── Layout ── */
.aw-sub{max-width:900px;margin:0 auto;padding:0 0 4rem}
.aw-back{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--border,#DDD9D0);border-radius:10px;padding:8px 16px;color:var(--muted,#6B6560);font-size:12px;font-weight:500;cursor:pointer;font-family:'DM Sans','Jost',sans-serif;margin:20px 0 0 3.5rem;transition:all .15s}
.aw-back:hover{border-color:#7A9E8A;color:#1A3D2B}

/* ── Hero ── */
.aw-sub-hero{background:linear-gradient(135deg,#EDF4F0 0%,#E2EDE8 55%,#D4E6DC 100%);padding:2.5rem 3.5rem 2rem;position:relative;overflow:hidden;border-bottom:1px solid rgba(26,82,64,.10);margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);width:100vw}
@media(max-width:700px){.aw-sub-hero{padding:2rem 1.5rem 1.5rem}}
.aw-sub-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(ellipse 50% 90% at 95% 50%,rgba(200,221,209,.55) 0%,transparent 60%),radial-gradient(ellipse 30% 50% at 5% 90%,rgba(160,185,172,.20) 0%,transparent 60%);pointer-events:none}
.aw-sub-hero-inner{position:relative;z-index:1;max-width:900px;margin:0 auto}
.aw-sub-eyebrow{font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#6B7F74;display:block;margin-bottom:.5rem}
.aw-sub-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(26px,4vw,38px);font-weight:300;line-height:1.10;color:#1C2B25}
.aw-sub-h1 em{font-style:italic;color:#1A5240}
.aw-sub-desc{font-size:13px;font-weight:300;color:#6B7F74;margin-top:.75rem;max-width:520px;line-height:1.6}
.cc-header{background:#fff;border-bottom:1px solid rgba(0,0,0,.07);padding:2rem 2.5rem 1.75rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}
.cc-header-left{display:flex;flex-direction:column;gap:5px}
.cc-eyebrow{font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:#6B7F74}
.cc-headline{font-family:'Cormorant Garamond',serif;font-size:clamp(22px,3vw,30px);font-weight:300;line-height:1.10;color:#1C2B25}
.cc-headline em{font-style:italic;color:#1A5240}
.cc-sub{font-size:12px;font-weight:300;color:#6B7F74;margin-top:2px;max-width:480px;line-height:1.6}
.aw-sub-ico{display:none}
.aw-sub-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,42px);font-weight:300;color:#1C2B25;line-height:1.15;margin:0 0 .5rem}
.aw-sub-desc{font-size:13px;color:#6B7F74;line-height:1.75;max-width:620px;font-weight:300}

/* ── Cards ── */
.aw-sub-card{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:20px;padding:1.75rem 2rem;margin:1.25rem 1.25rem 0;box-shadow:0 4px 20px rgba(0,0,0,.06)}
@media(max-width:700px){.aw-sub-card{margin:1rem .75rem 0;padding:1.25rem 1.25rem}}
.aw-sub-card-label{font-size:10px;letter-spacing:.16em;color:#7A9E8A;text-transform:uppercase;font-weight:500;margin-bottom:6px}
.aw-sub-card-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:#2C2A25;line-height:1.25;margin:0 0 4px}
.aw-sub-card-desc{font-size:13px;color:#6B6560;line-height:1.7;margin-bottom:1.25rem;font-weight:300}
.aw-sub-card-body{margin-top:.75rem}
.aw-sub-q-lbl{font-size:10px;letter-spacing:.14em;color:#A39B8B;text-transform:uppercase;font-weight:500;margin-bottom:.65rem}

/* ── Buttons ── */
.aw-sub-btn-primary{background:#2d5a3d;color:#fff;border:none;border-radius:12px;padding:12px 28px;font-family:'DM Sans','Jost',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px rgba(45,90,61,.25)}
.aw-sub-btn-primary:hover{background:#1e3d2a;transform:translateY(-1px)}
.aw-sub-btn-ghost{background:transparent;color:#6B6560;border:1px solid rgba(0,0,0,.11);border-radius:12px;padding:12px 18px;font-family:'DM Sans','Jost',sans-serif;font-size:13px;cursor:pointer}
.aw-btn-sm{padding:8px 14px!important;font-size:12px!important;border-radius:8px!important}

/* ── Grids ── */
.aw-sub-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.aw-sub-grid-2{grid-template-columns:1fr}}
.aw-sub-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
@media(max-width:700px){.aw-sub-grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.aw-sub-grid-3{grid-template-columns:1fr}}

/* ── Resource Cards ── */
.aw-res-card{background:#F0EDE6;border:1px solid #DDD9D0;border-radius:12px;padding:16px;transition:background .15s}
.aw-res-card:hover{background:#E8F2EE}
.aw-res-card-name{font-size:14px;font-weight:600;color:#2C2A25;margin-bottom:4px}
.aw-res-card-detail{font-size:12px;color:#6B6560;line-height:1.6;margin-bottom:6px}
.aw-res-card-price{font-size:11px;color:#7A9E8A;font-weight:500}

/* ── Mini Resource Cards ── */
.aw-res-mini{background:#F0EDE6;border:1px solid #DDD9D0;border-radius:12px;padding:14px;text-align:center;transition:all .15s}
.aw-res-mini:hover{background:#E8F2EE;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.aw-res-mini-ico{font-size:24px;display:block;margin-bottom:6px}
.aw-res-mini-name{font-size:13px;font-weight:600;color:#2C2A25;margin-bottom:4px}
.aw-res-mini-desc{font-size:11px;color:#6B6560;line-height:1.5}

/* ── Evidence List ── */
.aw-evidence-list{display:flex;flex-direction:column;gap:12px}
.aw-ev-item{border-left:4px solid #DDD9D0;padding:14px 16px;background:#F0EDE6;border-radius:0 12px 12px 0;transition:background .15s}
.aw-ev-item:hover{background:#E8F2EE}
.aw-ev-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.aw-ev-name{font-size:14px;font-weight:600;color:#2C2A25}
.aw-ev-stars{font-size:12px;color:#C4A882;letter-spacing:1px}
.aw-ev-badge{font-size:9px;font-weight:600;color:#2d5a3d;background:#E8F2EE;border:1px solid #C8DDD1;padding:2px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.aw-ev-detail{font-size:12px;color:#6B6560;line-height:1.65;margin-bottom:4px}
.aw-ev-price{font-size:11px;color:#7A9E8A;font-weight:500}

/* ── Tips ── */
.aw-sub-tip{font-size:12px;color:#6B6560;line-height:1.65;padding:14px 16px;background:#F0EDE6;border-radius:10px;border:1px solid #DDD9D0;margin-top:16px}
.aw-sub-tip strong{color:#2C2A25}

/* ── Phone Block ── */
.aw-phone-block{text-align:center;padding:1.25rem;background:#fff;border-radius:12px;border:1px solid #b8d4c0;margin-top:1rem}
.aw-phone-num{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:600;color:#2d5a3d;margin-bottom:4px}
.aw-phone-detail{font-size:12px;color:#6B6560}

/* ── Fitness Ring ── */
.aw-fitness-ring-wrap{position:relative;width:120px;height:120px;margin:0 auto 1rem}
.aw-fitness-ring-svg{display:block}
.aw-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.aw-ring-big{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:600;color:#2d5a3d;line-height:1}
.aw-ring-sm{font-size:10px;color:#A39B8B}
.aw-fit-progress-text{text-align:center;font-size:12px;color:#6B6560}

/* ── Exercise Detail ── */
.aw-exercise-detail{background:#E8F2EE;border:1px solid rgba(184,212,192,.4);border-radius:12px;padding:1.25rem}
.aw-ex-meta{font-size:12px;color:#6B6560;margin-bottom:.5rem}
.aw-ex-body{font-size:14px;color:#2C2A25;line-height:1.65;margin-bottom:.75rem}
.aw-ex-tip-block{background:#fff;border:1px solid rgba(0,0,0,.055);border-radius:8px;padding:10px 12px;font-size:12px;color:#2C2A25}

/* ── Medicare Parts ── */
.aw-medicare-parts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.aw-medicare-parts{grid-template-columns:1fr}}
.aw-mp-card{background:#F0EDE6;border:1px solid #DDD9D0;border-radius:12px;padding:16px}
.aw-mp-badge{display:inline-block;padding:2px 10px;border-radius:6px;color:#fff;font-size:10px;font-weight:600;margin-bottom:8px}
.aw-mp-title{font-size:15px;font-weight:600;color:#2C2A25;margin-bottom:4px}
.aw-mp-details{font-size:12px;color:#6B6560;line-height:1.6;margin-bottom:6px}
.aw-mp-cost{font-size:11px;color:#A39B8B}
.aw-mp-cost strong{color:#2C2A25}

/* ── Medicare Programs ── */
.aw-medicare-prog{background:#fff;border:1px solid #b8d4c0;border-radius:12px;padding:16px;text-align:center}
.aw-mp-name{font-size:14px;font-weight:600;color:#2d5a3d;margin-bottom:2px}
.aw-mp-by{font-size:10px;color:#A39B8B;margin-bottom:6px}
.aw-mp-stat{font-size:12px;font-weight:600;color:#2C2A25;margin-bottom:4px}
.aw-mp-detail{font-size:11px;color:#6B6560;line-height:1.5}

/* ── Changes List ── */
.aw-changes-list{display:flex;flex-direction:column;gap:12px}
.aw-change-item{padding:14px 16px;background:#fff;border-radius:10px;border:1px solid #b8d4c0}
.aw-ch-title{font-size:14px;font-weight:600;color:#2d5a3d;margin-bottom:4px}
.aw-ch-detail{font-size:12px;color:#6B6560;line-height:1.65}

/* ── Compare Table ── */
.aw-compare-table{border:1px solid #DDD9D0;border-radius:12px;overflow:hidden}
.aw-compare-row{display:grid;grid-template-columns:1fr 1.2fr 1.2fr;font-size:12px;border-bottom:1px solid #DDD9D0}
.aw-compare-row:last-child{border-bottom:none}
.aw-compare-row>div{padding:10px 14px;color:#6B6560}
.aw-compare-row>div:first-child{font-weight:600;color:#2C2A25;background:#F0EDE6}
.aw-compare-head{background:#F0EDE6;font-weight:600!important}
.aw-compare-head>div{color:#2C2A25!important;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.06em}

/* ── NC Chips ── */
.aw-nc-chips{display:flex;flex-wrap:wrap;gap:8px}
.aw-nc-chip{padding:8px 14px;border-radius:50px;border:1px solid #DDD9D0;background:#fff;color:#6B6560;font-family:'DM Sans','Jost',sans-serif;font-size:12px;cursor:pointer;transition:all .18s;display:flex;align-items:center;gap:5px}
.aw-nc-chip:hover{border-color:#7A9E8A}
.aw-nc-chip.sel{border-color:#7A9E8A;background:#E8F2EE;color:#1A3D2B;font-weight:500}

/* ── Documents ── */
.aw-doc-prog-wrap{margin-bottom:1.25rem}
.aw-doc-prog-bar{height:6px;border-radius:3px;background:rgba(0,0,0,.08);overflow:hidden;margin-bottom:.4rem}
.aw-doc-prog-fill{height:100%;border-radius:3px;background:#2d5a3d;transition:width .6s ease}
.aw-doc-prog-lbl{font-size:11px;color:#A39B8B}
.aw-doc-tabs{display:flex;gap:6px;margin-bottom:1.25rem}
.aw-doc-tab{padding:7px 18px;border-radius:20px;border:1px solid #DDD9D0;background:transparent;color:#6B6560;font-size:12px;font-weight:500;cursor:pointer;font-family:'DM Sans','Jost',sans-serif;transition:all .18s;text-transform:capitalize}
.aw-doc-tab.active{background:#1A3D2B;border-color:#1A3D2B;color:#fff}
.aw-doc-group{display:none;flex-direction:column;gap:8px}
.aw-doc-group.active{display:flex}
.aw-doc-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#F0EDE6;border-radius:10px;border:1px solid #DDD9D0;transition:background .15s}
.aw-doc-item:hover{background:#E8F2EE}
.aw-di-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.aw-di-ico{font-size:16px;flex-shrink:0}
.aw-di-name{font-size:13px;font-weight:500;color:#2C2A25}
.aw-di-hint{font-size:11px;color:#A39B8B;margin-top:1px}
.aw-di-status{font-size:11px;color:#6B6560;border:none;background:transparent;font-family:'DM Sans','Jost',sans-serif;cursor:pointer;outline:none;flex-shrink:0}

/* ── Team Full Grid ── */
.aw-team-full-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:600px){.aw-team-full-grid{grid-template-columns:1fr 1fr}}
.aw-team-card{padding:20px;border-radius:14px;background:#F0EDE6;border:1px solid #DDD9D0;text-align:center;cursor:pointer;transition:all .18s}
.aw-team-card:hover{border-color:#C8DDD1;background:#E8F2EE}
.aw-team-card.filled{background:#E8F2EE;border-color:#C8DDD1}
.aw-tc-ico{font-size:28px;margin-bottom:8px}
.aw-tc-role{font-size:10px;color:#A39B8B;font-weight:500;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.aw-tc-name{font-family:'Cormorant Garamond',serif;font-size:15px;color:#1A3D2B;font-style:italic}
.aw-tc-phone{font-size:11px;color:#6B6560;margin-top:2px}
.aw-tc-edit{margin-top:12px;text-align:left}
.aw-tc-input{width:100%;padding:7px 10px;border-radius:7px;border:1px solid #DDD9D0;font-size:12px;box-sizing:border-box;margin-bottom:5px;outline:none;font-family:'DM Sans','Jost',sans-serif}
.aw-tc-input:focus{border-color:#7A9E8A}

/* ── Emergency Card ── */
.aw-emergency-card{background:#fff;border:2px solid #e8c0c0;border-radius:12px;padding:1rem 1.25rem;margin-top:1rem}
.aw-ec-row{display:flex;gap:8px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.06);font-size:13px}
.aw-ec-row:last-child{border-bottom:none}
.aw-ec-label{font-weight:600;color:#2C2A25;min-width:130px;flex-shrink:0}
.aw-ec-val{color:#6B6560}

/* ── Safety (full page) ── */
.aw-safety-full-prog{margin-bottom:1.25rem}
.aw-safety-full-bar{height:6px;border-radius:3px;background:rgba(0,0,0,.08);overflow:hidden;margin-bottom:.4rem}
.aw-safety-full-fill{height:100%;border-radius:3px;background:#2d5a3d;transition:width .6s ease}
.aw-safety-full-lbl{font-size:11px;color:#A39B8B}
.aw-safety-room{margin-bottom:1.25rem}
.aw-sr-title{font-size:14px;font-weight:600;color:#2C2A25;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid rgba(0,0,0,.06)}
.aw-sr-items{display:flex;flex-direction:column;gap:4px}
.aw-sr-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;font-size:13px;color:#2C2A25;cursor:pointer;transition:all .15s;border:1px solid transparent}
.aw-sr-item:hover{background:#F0EDE6}
.aw-sr-item.checked{background:#E8F2EE;border-color:#C8DDD1;color:#1A3D2B;font-weight:500}
.aw-sr-check{width:18px;height:18px;border-radius:5px;border:1.5px solid rgba(0,0,0,.15);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;transition:all .15s}
.aw-sr-item.checked .aw-sr-check{background:#2d5a3d;border-color:#2d5a3d}

/* ── Trend Chart placeholder ── */
.aw-trend-chart{min-height:80px;display:flex;align-items:center;justify-content:center}
.aw-trend-empty{font-size:12px;color:#A39B8B;font-style:italic;text-align:center;padding:1rem}

/* ═══════════════════════════════════════════════════════════════
   CAEVO — Enterprise UI Polish  v2
   ═══════════════════════════════════════════════════════════════ */

.subtab-bar{gap:0;padding:0;border-bottom:1px solid var(--border);background:transparent;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:24px}
.subtab-bar::-webkit-scrollbar{display:none}
.subtab-pill{padding:12px 20px;border-radius:0;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:.82rem;font-weight:500;letter-spacing:.02em;box-shadow:none;white-space:nowrap;transition:color .15s,border-color .15s;position:relative;top:1px}
.subtab-pill:hover{background:transparent;transform:none;color:var(--deep);border-bottom-color:rgba(13,59,46,.25)}
.subtab-pill.active{background:transparent;color:var(--forest);border-bottom-color:var(--forest);box-shadow:none}
.cl-nav-btn{border-radius:6px}
.cl-res-pill{border-radius:4px}
.res-pill{border-radius:4px}
.btn,.btn-login,.btn-cta,.btn-cream,.p-btn,.google-btn,.auth-submit,.hub-stage-take-btn,.compose-post,.log-btn,.cw-checkin-submit,.cl-roadmap-pill,.aw-wid-link,.r-link,.sec-link,.cmd-link,.loop-link,.aw-sec-link{border-radius:6px!important}
.evo-sidebar-btn,#ask-evo-btn{border-radius:8px!important}
.p-btn{border-radius:6px!important}
.google-btn{border-radius:6px!important}
.cw-tag,.nav-chip,.assess-badge,.r-badge,.plan-pill,.plan-badge{border-radius:4px!important}
.log-cat{border-radius:5px!important}
.aw-filter-chip,.pw-filter-chip,[class*="restriction-chip"],[class*="body-part"],[class*="pw-chip"],[class*="aw-chip"]{border-radius:20px!important}
.ce-step-dot,.ce-step-line,.dr-step-dot,.dr-step-line{display:none!important}
.ce-steps{flex-direction:row!important;align-items:flex-start;gap:0;margin-bottom:32px}
.ce-step-item{flex:1;gap:4px;position:relative}
.ce-step-item::before{content:'';display:block;height:2px;background:var(--border);border-radius:2px;margin-bottom:8px;transition:background .3s}
.ce-step-item:has(.ce-step-dot.ce-step-done)::before,.ce-step-item:has(.ce-step-dot.ce-step-active)::before{background:var(--forest)}
.ce-step-label{font-size:.7rem;text-align:center;padding:0 4px}
.ce-step-label-on{color:var(--forest);font-weight:600}
.featured-badge{display:none!important}
.pricing-card.featured{transform:none;padding-top:36px;border-left:3px solid var(--warm-accent,#C4A882)!important}
.pricing-card.featured .p-name::before{content:'MOST POPULAR';display:block;font-family:var(--font-body),'DM Sans',sans-serif;font-size:.62rem;font-weight:600;letter-spacing:.12em;color:var(--warm-accent,#C4A882);margin-bottom:6px}
.pricing-card{border-radius:8px}
.cl-cond-ico,.cl-cond-icon-wrap,[class*="cond-icon-bg"],[class*="cond-ico-bg"]{background:transparent!important;border-radius:0!important;width:auto!important;height:auto!important;padding:0!important;box-shadow:none!important}
.cl-stage-icon-bg,.cl-stage-ico{background:transparent!important;border-radius:0!important;width:28px!important;height:28px!important;padding:0!important}
.hub-stage-icon{background:transparent!important;border-radius:0!important;padding:0!important;width:auto!important;height:auto!important;font-size:1.1rem}
.cw-checkin-meta,.cw-daily-badge,[class*="checkin-badge"],[class*="daily-pill"]{display:none!important}
.cw-checkin-card .res-pill,.cw-checkin-card [class*="badge"],.cw-checkin-header-right{display:none!important}
.sidebar-user-avatar{background:transparent!important;border:1.5px solid rgba(13,59,46,.22);color:var(--forest)!important;font-size:1rem;font-weight:600;letter-spacing:.02em}
.dash-user-card [class*="avatar"],.sidebar-user-avatar{border-radius:6px!important}
.chk{background:transparent!important;border-radius:0!important;width:10px!important;height:10px!important;min-width:10px}
.chk svg{width:10px!important;height:10px!important}
.pricing-card:not(.featured) .chk svg{stroke:var(--forest-light)}
.featured .chk svg{stroke:rgba(244,247,245,.7)}
.p-features li{font-weight:400;font-size:.855rem;gap:10px}
.cw-field-label{text-transform:none;letter-spacing:.01em;font-size:.8rem;font-weight:500;color:var(--muted)}
.sec-label{font-size:.72rem;letter-spacing:.08em;font-weight:500}
.dtk-section-label,.tk-section-label{font-size:.72rem;letter-spacing:.07em}
.r-card,.hub-card,.loop-card,.cmd-card,.aw-widget-card,.aw-r-card,.cl-stage-card,.cl-cond-card,.cw-checkin-card,.cw-trend-card,.cw-journal-compose,.ce-card,.dtk-saved-card,.tk-ai-card,.dtk-ai-card{border-radius:8px!important}
.auth-panel,.auth-card,.modal-content{border-radius:8px!important}

/* ── Transcendent patterns ── */
.section-eyebrow,.dash-eyebrow,.hub-eyebrow,.cl-eyebrow,.tk-eyebrow,.aw-eyebrow,[class*="-eyebrow"]{font-family:var(--font-body);font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(13,59,46,.4);display:block;margin-bottom:.65rem}
.dash-hero .section-eyebrow,.hub-hero .section-eyebrow,.cl-hero .section-eyebrow,#dsec-aging-well-hub .aw-eyebrow{color:rgba(255,255,255,.4)}
.dash-hero h1 em,.hub-hero h1 em,.hub-greeting em{font-style:italic;color:#1A5240;opacity:1}
#dsec-aging-well-hub .aw-greeting em{font-style:italic;color:#C9B99A;opacity:1}
.hero-title-accent{font-style:italic;color:var(--warm-accent,#C4A882);font-weight:inherit}
.dash-hero h1,.hub-greeting,.aw-greeting{line-height:1.08;letter-spacing:-.01em}
.stat-row{display:flex;align-items:stretch;gap:0;padding:28px 0 24px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.stat-row .stat-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;padding:0 24px;border-right:1px solid rgba(255,255,255,.12)}
.stat-row .stat-item:last-child{border-right:none}
.stat-row .stat-item:first-child{padding-left:0;align-items:flex-start}
.stat-row .stat-num{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.8rem);font-weight:500;color:#fff;line-height:1;letter-spacing:-.02em}
.stat-row .stat-label{font-family:var(--font-body);font-size:.72rem;font-weight:400;color:rgba(255,255,255,.5);letter-spacing:.02em;text-align:center}
.stat-row--light{border-top-color:var(--border);border-bottom-color:var(--border)}
.stat-row--light .stat-item{border-right-color:var(--border)}
.stat-row--light .stat-num{color:var(--deep)}
.stat-row--light .stat-label{color:var(--muted)}
.aw-stat-num{font-family:var(--font-display)!important;font-size:clamp(1.6rem,3vw,2rem)!important;font-weight:500!important;letter-spacing:-.02em!important}
.aw-stat-card{box-shadow:none!important;border-color:rgba(0,0,0,.05)!important}
.dash-hero,.hub-header,.hub-hero,#dsec-aging-well-hub .aw-header{position:relative;overflow:hidden}
.dash-hero::after,.hub-header::after,.hub-hero::after{content:'';position:absolute;top:-60px;right:-80px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.055) 0%,transparent 65%);pointer-events:none;z-index:0}
.dash-hero::before,.hub-hero::before{content:'';position:absolute;bottom:-40px;left:-60px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.03) 0%,transparent 70%);pointer-events:none;z-index:0}
.dash-hero>*,.hub-header>*,.hub-hero>*{position:relative;z-index:1}
.stat-icon-wrap,.metric-icon-wrap,[class*="stat-ico-wrap"],[class*="metric-ico"]{width:36px;height:36px;border-radius:8px;background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.07);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:none}
.stat-icon-wrap svg,.metric-icon-wrap svg{width:16px;height:16px;stroke:var(--muted);fill:none}
.dark-surface .stat-icon-wrap,.dash-hero .stat-icon-wrap{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15)}
.dark-surface .stat-icon-wrap svg,.dash-hero .stat-icon-wrap svg{stroke:rgba(255,255,255,.7)}
.r-card,.cmd-card,.loop-card,.hub-card{box-shadow:none!important;border:1px solid rgba(13,59,46,.07)!important}
.r-card:hover,.hub-card:hover{box-shadow:0 4px 16px rgba(13,59,46,.07)!important}
#dsec-aging-well-hub .aw-widget-card{box-shadow:none!important;border:1px solid rgba(0,0,0,.06)!important}
#dsec-aging-well-hub .aw-widget-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.07)!important;transform:translateY(-1px)}
.aw-r-card,.hub-stage-widget,.cl-stage-card{box-shadow:0 2px 12px rgba(13,59,46,.06)!important}
.dtk-saved-card,.tk-ai-card,.dtk-ai-card{box-shadow:none!important;border:1px solid rgba(13,59,46,.08)!important}
.cw-checkin-card,.cw-trend-card,.cw-journal-compose{box-shadow:none!important;border:1px solid rgba(13,59,46,.08)!important}
.empty{border:none!important;background:transparent!important;box-shadow:none!important}

/* ═══════════════════════════════════════════════════════════════
   CAEVO — Aging Well Color Mode
   ═══════════════════════════════════════════════════════════════ */

body.mode-aging-well{--forest:#1B2E4B;--forest-mid:#2D5986;--forest-light:#6B9DC2;--forest-pale:#EAF2FA;--warm-accent:#C4956A;--cream:#FAF6EF;--cream-dark:#F0EBE2;--deep:#0F1F35;--muted:#6B7F96;--border:rgba(27,46,75,.11);--shadow-sm:0 1px 3px rgba(15,31,53,.06),0 1px 2px rgba(15,31,53,.04);--shadow-md:0 4px 16px rgba(15,31,53,.08),0 2px 6px rgba(15,31,53,.05);--shadow-lg:0 12px 40px rgba(15,31,53,.13),0 4px 12px rgba(15,31,53,.07);--gradient-start:#1B2E4B;--gradient-end:#6B9DC2}
body.mode-aging-well .dash-main,body.mode-aging-well .dash-content,body.mode-aging-well #dsec-aging-well-hub{background:#FAF6EF}
body.mode-aging-well .app-sidebar{background:#1B2E4B;box-shadow:2px 0 24px rgba(15,31,53,.18)}
body.mode-aging-well .sidebar-logo{border-bottom-color:rgba(255,255,255,.1)}
body.mode-aging-well .sidebar-logo-text{color:rgba(255,255,255,.9)}
body.mode-aging-well .sidebar-user-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}
body.mode-aging-well .sidebar-user-avatar{background:transparent;border:1.5px solid rgba(196,149,106,.6);color:#C4956A}
body.mode-aging-well .sidebar-user-name{color:rgba(255,255,255,.9)}
body.mode-aging-well .sidebar-user-plan{color:rgba(196,149,106,.85)}
body.mode-aging-well .sidebar-btn{color:rgba(255,255,255,.55)}
body.mode-aging-well .sidebar-btn svg{stroke:rgba(255,255,255,.4)}
body.mode-aging-well .sidebar-btn:hover{background:rgba(255,255,255,.08);color:rgba(255,255,255,.9)}
body.mode-aging-well .sidebar-btn:hover svg{stroke:rgba(255,255,255,.85)}
body.mode-aging-well .sidebar-btn.active{background:rgba(255,255,255,.12);color:#fff;font-weight:500}
body.mode-aging-well .sidebar-btn.active svg{stroke:#fff}
body.mode-aging-well .sidebar-btn.active::before{background:#C4956A}
body.mode-aging-well .sidebar-sub-btn{color:rgba(255,255,255,.45)}
body.mode-aging-well .sidebar-sub-btn:hover{color:rgba(255,255,255,.85);background:rgba(255,255,255,.06)}
body.mode-aging-well .sidebar-sub-btn.active{color:#fff;background:rgba(255,255,255,.1)}
body.mode-aging-well .side-lbl{color:rgba(255,255,255,.28)}
body.mode-aging-well .app-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15)}
body.mode-aging-well .sidebar-evo-btn{background:linear-gradient(180deg,#C4956A 0%,#B07D52 100%);color:#fff;box-shadow:0 2px 8px rgba(196,149,106,.3),0 1px 2px rgba(0,0,0,.08)}
body.mode-aging-well .sidebar-evo-btn:hover{background:linear-gradient(180deg,#D4A57A 0%,#C4956A 100%);box-shadow:0 4px 16px rgba(196,149,106,.4),0 2px 4px rgba(0,0,0,.1)}
body.mode-aging-well #dsec-aging-well-hub .aw-header{background:linear-gradient(135deg,#1B2E4B 0%,#2D5986 55%,#3A6EA8 100%)}
body.mode-aging-well .subtab-pill.active{color:#1B2E4B;border-bottom-color:#1B2E4B}
body.mode-aging-well .subtab-pill:hover{color:#2D5986;border-bottom-color:rgba(27,46,75,.2)}
body.mode-aging-well #dsec-aging-well-hub .aw-widget-card{background:#fff;border-color:rgba(27,46,75,.08)}
body.mode-aging-well #dsec-aging-well-hub .aw-widget-card:hover{box-shadow:0 8px 32px rgba(27,46,75,.1)}
body.mode-aging-well #dsec-aging-well-hub .aw-r-card{background:#fff;border-color:rgba(27,46,75,.08)}
body.mode-aging-well #dsec-aging-well-hub .aw-stat-card{background:#fff;border-color:rgba(27,46,75,.08)}
body.mode-aging-well #dsec-aging-well-hub .aw-stat-label,body.mode-aging-well #dsec-aging-well-hub .aw-wid-link{color:#2D5986}
body.mode-aging-well #dsec-aging-well-hub .aw-sec-link{color:#2D5986}
body.mode-aging-well #dsec-aging-well-hub .aw-res-row:hover{background:rgba(27,46,75,.04)}
body.mode-aging-well #dsec-aging-well-hub .aw-team-mini{background:#EAF2FA;border-color:rgba(27,46,75,.1)}
body.mode-aging-well #dsec-aging-well-hub .aw-team-mini:hover{border-color:#6B9DC2;background:#D6E8F5}
body.mode-aging-well #dsec-aging-well-hub .aw-doc-tag.done{background:#D6E8F5;color:#1B2E4B}
body.mode-aging-well #dsec-aging-well-hub .aw-safety-prog-fill,body.mode-aging-well .aw-doc-prog-fill,body.mode-aging-well .aw-safety-full-fill{background:#2D5986}
body.mode-aging-well .cw-checkin-card::before{background:linear-gradient(90deg,#1B2E4B 0%,#6B9DC2 50%,#C4956A 100%)}
body.mode-aging-well .cw-mood-btn.selected{border-color:#2D5986;background:rgba(27,46,75,.07);box-shadow:0 0 0 3px rgba(27,46,75,.09)}
body.mode-aging-well .cw-mood-btn.selected .cw-mood-label{color:#1B2E4B}
body.mode-aging-well .cw-slider{background:linear-gradient(90deg,#EAF2FA,#6B9DC2)}
body.mode-aging-well .cw-slider::-webkit-slider-thumb{background:#1B2E4B}
body.mode-aging-well .cw-slider::-moz-range-thumb{background:#1B2E4B}
body.mode-aging-well .cw-input:focus,body.mode-aging-well .cw-textarea:focus{border-color:#6B9DC2;box-shadow:0 0 0 3px rgba(27,46,75,.07)}
body.mode-aging-well .cw-jtab.active{color:#1B2E4B;border-bottom-color:#1B2E4B}
body.mode-aging-well .cw-tag.active{background:#1B2E4B;border-color:#1B2E4B}
body.mode-aging-well .cw-checkin-prompt{border-left-color:#6B9DC2;background:linear-gradient(135deg,#EAF2FA,rgba(107,157,194,.06))}
body.mode-aging-well .btn-primary,body.mode-aging-well .p-btn-fill,body.mode-aging-well .hub-stage-take-btn{background:#C4956A;color:#fff}
body.mode-aging-well .btn-primary:hover,body.mode-aging-well .p-btn-fill:hover{background:#B07D52}
body.mode-aging-well .btn-outline,body.mode-aging-well .p-btn-ghost{color:#1B2E4B;border-color:rgba(27,46,75,.28)}
body.mode-aging-well .btn-outline:hover{border-color:#1B2E4B;background:rgba(27,46,75,.04)}
body.mode-aging-well .aw-stat-label{color:#2D5986!important}
body.mode-aging-well .aw-tip-card{background:linear-gradient(135deg,#1B2E4B,#2D5986)}
body.mode-aging-well .aw-sr-item.checked{background:#EAF2FA;border-color:#A8CCDF;color:#1B2E4B}
body.mode-aging-well .aw-sr-item.checked .aw-sr-check{background:#2D5986;border-color:#2D5986}
body.mode-aging-well .aw-score-badge{background:rgba(196,149,106,.15);color:#C4956A;border-color:rgba(196,149,106,.3)}
body.mode-aging-well #dsec-aging-well-hub .aw-focus-pill{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18)}
body.mode-aging-well .aw-lib-pill{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.88)}
body.mode-aging-well .aw-lib-pill:hover{background:rgba(255,255,255,.18)}

/* ── SVG Icon system ── */
.ci{display:inline-block;width:1.1em;height:1.1em;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:-0.15em;flex-shrink:0;pointer-events:none}
.ci-sm{width:.9em;height:.9em}
.ci-md{width:1.25em;height:1.25em}
.ci-lg{width:1.5em;height:1.5em}
.ci-xl{width:2em;height:2em}
.ci-2xl{width:2.5em;height:2.5em}
.cw-mood-emoji{display:flex;align-items:center;justify-content:center;height:2rem}
.cw-mood-emoji .ci{width:1.6rem;height:1.6rem}
.cw-mood-btn:hover .ci,.cw-mood-btn.selected .ci{color:var(--forest)}
/* ── AWF overlay safety: hidden until JS applies position:fixed styles ── */
.awf-overlay{display:none;position:fixed;inset:0;z-index:9999;background:rgba(10,31,24,.6);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .2s}
.awf-overlay.open{display:flex;opacity:1;pointer-events:all}


/* ══════════════════════════════════════════════════════════
   CAEVO — Check-In Full Page (dsec-aw-checkin)
   ══════════════════════════════════════════════════════════ */

/* Card wrapper */
.aw-ckin-card {}

/* Section spacing */
.aw-ckin-section {
  margin-bottom: 1.5rem;
}

/* Label row */
.aw-ckin-lbl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #7A9E8A;
  font-weight: 600;
  margin-bottom: .75rem;
}
.aw-ckin-lbl-req {
  font-size: 11px;
  color: #e07070;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 400;
  font-style: italic;
}
.aw-ckin-lbl-opt {
  font-size: 11px;
  color: #b0a89e;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 400;
  font-style: italic;
}

/* Mood grid — 3 cols on mobile, 6 on wider */
.aw-ckin-mood-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
@media(min-width: 500px) {
  .aw-ckin-mood-grid { grid-template-columns: repeat(6, 1fr); }
}

.aw-ckin-mood-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 14px 8px 12px;
  border-radius: 16px;
  border: 1.5px solid rgba(0,0,0,.09);
  background: #f8f6f2;
  cursor: pointer;
  transition: all .18s ease;
}
.aw-ckin-mood-btn:hover {
  border-color: #b8d4c0;
  background: #fff;
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(45,90,61,.1);
}
.aw-ckin-mood-btn.sel {
  border-color: #2d5a3d;
  background: linear-gradient(135deg, #e8f1eb, #f0f8f3);
  box-shadow: 0 0 0 3px rgba(45,90,61,.12), 0 4px 12px rgba(45,90,61,.12);
  transform: translateY(-2px);
}
.aw-ckin-mood-btn.sel .aw-ckin-mood-lbl {
  color: #2d5a3d;
  font-weight: 600;
}
.aw-ckin-mood-em {
  font-size: 26px;
  line-height: 1;
}
.aw-ckin-mood-lbl {
  font-size: 10.5px;
  color: #8a8480;
  text-align: center;
  line-height: 1.3;
  font-family: 'DM Sans','Jost',sans-serif;
}

/* Energy scale */
.aw-ckin-energy-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.aw-ckin-scale-lbl {
  font-size: 11px;
  color: #b0a89e;
  white-space: nowrap;
  font-family: 'DM Sans',sans-serif;
}
.aw-ckin-energy-btns {
  display: flex;
  gap: 8px;
  flex: 1;
  justify-content: center;
}
.aw-ckin-energy-btn {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  border: 1.5px solid rgba(0,0,0,.09);
  background: #f8f6f2;
  cursor: pointer;
  font-family: 'Cormorant Garamond', serif;
  font-size: 18px;
  font-weight: 500;
  color: #52504d;
  transition: all .18s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.aw-ckin-energy-btn:hover {
  border-color: #b8d4c0;
  background: #fff;
  transform: translateY(-2px);
}
.aw-ckin-energy-btn.sel {
  border-color: #2d5a3d;
  background: linear-gradient(135deg, #e8f1eb, #f0f8f3);
  color: #2d5a3d;
  box-shadow: 0 0 0 3px rgba(45,90,61,.12);
  font-weight: 700;
}
.aw-ckin-energy-labels {
  display: flex;
  justify-content: space-between;
  margin-top: 6px;
  font-size: 11px;
  color: #b0a89e;
  font-style: italic;
}

/* Pill buttons (sleep / body) */
.aw-ckin-pill-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.aw-ckin-pill {
  padding: 9px 16px;
  border-radius: 20px;
  border: 1.5px solid rgba(0,0,0,.09);
  background: #f8f6f2;
  cursor: pointer;
  font-family: 'DM Sans','Jost',sans-serif;
  font-size: 13px;
  color: #52504d;
  transition: all .18s ease;
  white-space: nowrap;
}
.aw-ckin-pill:hover {
  border-color: #b8d4c0;
  background: #fff;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(45,90,61,.08);
}
.aw-ckin-pill.sel {
  border-color: #2d5a3d;
  background: linear-gradient(135deg, #e8f1eb, #f0f8f3);
  color: #2d5a3d;
  font-weight: 600;
  box-shadow: 0 0 0 3px rgba(45,90,61,.1);
}

/* Submit footer */
.aw-ckin-footer {
  display: flex;
  justify-content: center;
  margin-top: 1.75rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(0,0,0,.06);
}

/* Done state */
.aw-ckin-done-ico {
  font-size: 36px;
  text-align: center;
  margin-bottom: .5rem;
}
.aw-ckin-done-msg {
  text-align: center;
  font-size: 15px;
  color: #2d5a3d;
  font-weight: 500;
  font-family: 'Cormorant Garamond', serif;
  margin-bottom: .25rem;
}

/* ── Health & Wellness — mode-aware sidebar items ── */
/* aw-only/cg-only visibility handled by sidebar-mode-fix.js inline styles */
body.mode-aging-well .sidebar-sub-btn.cg-only,
#app-sidebar.mode-aging-well .sidebar-sub-btn.cg-only { display: none; }

/* ── Hide caregiver sidebar tabs from aging well users ── */
body.mode-aging-well .sidebar-btn[data-tab="wellness"] + .sidebar-sub-items .cg-only,
#app-sidebar.mode-aging-well .sidebar-btn[data-tab="wellness"] + .sidebar-sub-items .cg-only { display: none; }

/* ── Weekly rating ── */
.aw-week-rating-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: .5rem;
}
.aw-week-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  flex: 1;
  min-width: 70px;
  padding: 14px 8px 12px;
  border-radius: 16px;
  border: 1.5px solid rgba(0,0,0,.09);
  background: #f8f6f2;
  cursor: pointer;
  transition: all .18s ease;
}
.aw-week-btn:hover {
  border-color: #b8d4c0;
  background: #fff;
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(45,90,61,.1);
}
.aw-week-btn.sel {
  border-color: #2d5a3d;
  background: linear-gradient(135deg,#e8f1eb,#f0f8f3);
  box-shadow: 0 0 0 3px rgba(45,90,61,.12);
  transform: translateY(-2px);
}
.aw-week-em { font-size: 26px; line-height: 1; }
.aw-week-lbl { font-size: 10.5px; color: #8a8480; text-align: center; font-family: 'DM Sans',sans-serif; }
.aw-week-btn.sel .aw-week-lbl { color: #2d5a3d; font-weight: 600; }
.aw-week-saved {
  margin-top: 1rem;
  font-size: 13px;
  color: #2d5a3d;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 6px;
}
.aw-week-saved-ico { font-size: 16px; }

/* ── Week pulse grid ── */
.aw-week-pulse-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
  margin-top: .5rem;
}
.aw-week-day {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.aw-week-day-lbl {
  font-size: 10px;
  color: #b0a89e;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-family: 'DM Sans',sans-serif;
}
.aw-week-day-em {
  font-size: 22px;
  line-height: 1;
}
.aw-week-day-empty {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #f0ede8;
  border: 1.5px dashed #d4cfc8;
}

/* ── Two-col layout for patterns + family ── */
.aw-sub-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin: 1.25rem 1.25rem 0;
}
@media(max-width: 700px) {
  .aw-sub-two-col { grid-template-columns: 1fr; }
}

/* ── Patterns ── */
.aw-patterns-empty {
  font-size: 13px;
  color: #b0a89e;
  font-style: italic;
  padding: 1rem 0;
}

/* ── Family sharing toggles ── */
.aw-share-row { display: flex; flex-direction: column; gap: .75rem; margin-top: .5rem; }
.aw-share-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: .6rem 0;
  border-bottom: 1px solid rgba(0,0,0,.05);
}
.aw-share-item:last-child { border-bottom: none; }
.aw-share-name { font-size: 13px; font-weight: 500; color: #2C2A25; }
.aw-share-desc { font-size: 11px; color: #9a9590; margin-top: 2px; }

/* Toggle switch */
.aw-toggle { position: relative; display: inline-block; width: 42px; height: 24px; flex-shrink: 0; }
.aw-toggle input { opacity: 0; width: 0; height: 0; }
.aw-toggle-slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background: #d4cfc8;
  border-radius: 24px;
  transition: .2s;
}
.aw-toggle-slider::before {
  content: '';
  position: absolute;
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background: #fff;
  border-radius: 50%;
  transition: .2s;
  box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
.aw-toggle input:checked + .aw-toggle-slider { background: #2d5a3d; }
.aw-toggle input:checked + .aw-toggle-slider::before { transform: translateX(18px); }

/* Back link in pulse header */
.aw-week-back-link {
  font-size: 11px;
  color: #7A9E8A;
  cursor: pointer;
  text-decoration: none;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}


/* ═══════════════════════════════════════════════
   AGING WELL LIBRARY — awl- namespaced styles
   ═══════════════════════════════════════════════ */

.awl-wrap { max-width: 900px; margin: 0 auto; padding-bottom: 4rem; }

/* Hero */
.awl-hero { padding: 2.5rem 2rem 2rem; border-radius: 0 0 16px 16px; }
.awl-hero-inner { max-width: 680px; }
.awl-hero-label { font-size: 10px; letter-spacing: .18em; text-transform: uppercase; color: rgba(255,255,255,.65); font-weight: 600; margin-bottom: 10px; }
.awl-hero-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(32px, 4vw, 52px); font-weight: 300; color: #fff; line-height: 1.08; margin-bottom: 10px; letter-spacing: -.01em; }
.awl-hero-tagline { font-size: 14px; font-weight: 300; color: rgba(255,255,255,.75); line-height: 1.6; margin-bottom: 16px; max-width: 520px; }
.awl-hero-who { font-size: 13.5px; color: rgba(255,255,255,.85); line-height: 1.7; max-width: 560px; font-weight: 300; padding: 14px 16px; background: rgba(255,255,255,.12); border-radius: 10px; }

/* Stage picker */
.awl-stage-nav { padding: 1.5rem 2rem 0; }
.awl-stage-nav-label { font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--ink-soft, #6B6560); font-weight: 600; margin-bottom: 10px; }
.awl-stage-btns { display: flex; gap: 8px; flex-wrap: wrap; }
.awl-stage-btn {
  flex: 1 1 140px;
  padding: 12px 14px;
  border: 1px solid rgba(180,190,185,.4);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  text-align: left;
  transition: all .18s;
  font-family: 'DM Sans', sans-serif;
}
.awl-stage-btn:hover { border-color: var(--forest-soft, #2d5a3d); background: var(--sage-pale, #EDF5F0); }
.awl-stage-btn.active { background: var(--sage-pale, #EDF5F0); font-weight: 500; }
.awl-stage-btn-label { display: block; font-size: 9.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted, #9A9590); margin-bottom: 3px; }
.awl-stage-btn-name { display: block; font-family: 'Cormorant Garamond', serif; font-size: 18px; font-weight: 500; color: var(--forest, #0D3B2E); line-height: 1.1; }

/* Body */
.awl-body { padding: 1.5rem 2rem; display: flex; flex-direction: column; gap: 1.25rem; }

/* Why card */
.awl-why-card { padding: 1.25rem 1.5rem; background: var(--cream, #F4F7F5); border-radius: 12px; border-left-width: 3px; border-left-style: solid; }
.awl-section-kicker { font-size: 9.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--gold, #C4A882); font-weight: 600; margin-bottom: 6px; }
.awl-why-text { font-size: 14px; color: var(--ink-mid, #354D42); line-height: 1.75; font-weight: 300; }

/* Stats */
.awl-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); border-top: 1px solid rgba(180,190,185,.3); border-bottom: 1px solid rgba(180,190,185,.3); }
.awl-stat { padding: 20px 16px; border-right: 1px solid rgba(180,190,185,.3); }
.awl-stat:last-child { border-right: none; }
.awl-stat-val { font-family: 'Cormorant Garamond', serif; font-size: 38px; font-weight: 300; color: var(--forest, #0D3B2E); line-height: 1; display: block; margin-bottom: 4px; }
.awl-stat-lbl { font-size: 12px; color: var(--ink-soft, #6B6560); line-height: 1.4; }

/* Section cards (accordions) */
.awl-section-card { background: #fff; border: 0.5px solid rgba(0,0,0,.07); border-radius: 12px; overflow: hidden; }
.awl-section-trigger {
  width: 100%; background: none; border: none;
  padding: 1.25rem 1.5rem;
  display: flex; align-items: center; justify-content: space-between;
  cursor: pointer; text-align: left;
  transition: background .15s;
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px; font-weight: 500; color: var(--forest, #0D3B2E);
  gap: 12px;
}
.awl-section-trigger:hover { background: var(--sage-pale, #EDF5F0); }
.awl-section-name { flex: 1; }
.awl-section-icon { font-size: 18px; color: var(--muted, #9A9590); flex-shrink: 0; width: 24px; text-align: center; transition: transform .2s; font-family: 'DM Sans', sans-serif; font-weight: 300; }
.awl-section-body { display: none; padding: 0 1.5rem 1.25rem; border-top: 0.5px solid rgba(180,190,185,.2); }
.awl-section-body.open { display: block; }
.awl-section-intro { font-size: 13.5px; color: var(--ink-mid, #354D42); line-height: 1.72; margin: 1rem 0; font-weight: 300; }
.awl-item-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 2px; }
.awl-item { font-size: 13.5px; color: var(--ink-mid, #354D42); line-height: 1.55; padding: 9px 0 9px 20px; border-bottom: 1px solid rgba(180,190,185,.15); position: relative; }
.awl-item:last-child { border-bottom: none; }
.awl-item::before { content: ''; position: absolute; left: 4px; top: 17px; width: 5px; height: 5px; border-radius: 50%; background: rgba(26,82,64,.25); }

/* Generic card */
.awl-card { background: #fff; border: 0.5px solid rgba(0,0,0,.07); border-radius: 12px; padding: 1.5rem; }
.awl-card-title { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 500; color: var(--forest, #0D3B2E); margin-bottom: 1rem; }

/* Checklists */
.awl-checklist-group { margin-bottom: 1.25rem; }
.awl-checklist-group:last-child { margin-bottom: 0; }
.awl-checklist-label { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted, #9A9590); font-weight: 600; margin-bottom: 8px; }
.awl-check-row {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 10px 0; border-bottom: 1px solid rgba(180,190,185,.15);
  cursor: pointer; transition: background .12s; border-radius: 4px;
}
.awl-check-row:last-child { border-bottom: none; }
.awl-check-row:hover { background: var(--sage-pale, #EDF5F0); margin: 0 -8px; padding-left: 8px; padding-right: 8px; }
.awl-check-row.checked .awl-check-label { opacity: .4; text-decoration: line-through; text-decoration-color: var(--sage-mist, #C8DDD1); }
.awl-cb {
  width: 16px; height: 16px;
  border: 1.5px solid rgba(100,140,120,.35);
  border-radius: 4px; flex-shrink: 0;
  margin-top: 2px; background: #fff;
  position: relative; transition: all .15s;
}
.awl-cb.done { background: var(--forest, #0D3B2E); border-color: var(--forest, #0D3B2E); }
.awl-cb.done::after {
  content: ''; position: absolute;
  left: 3px; top: 1px;
  width: 6px; height: 8px;
  border: 1.5px solid #fff;
  border-top: none; border-left: none;
  transform: rotate(45deg);
}
.awl-check-label { font-size: 13px; color: var(--ink-mid, #354D42); line-height: 1.5; flex: 1; transition: opacity .15s; }

/* Conversation card */
.awl-conv-card { background: var(--forest, #0D3B2E); border-color: transparent; }
.awl-conv-card .awl-section-kicker { color: var(--gold, #C4A882); }
.awl-conv-card .awl-card-title { color: var(--sage-mist, #C8DDD1); }
.awl-speech {
  padding: 18px 22px;
  background: rgba(255,255,255,.08);
  border-radius: 12px 12px 12px 2px;
  font-family: 'Cormorant Garamond', serif;
  font-size: 18px; font-style: italic; font-weight: 400;
  color: var(--sage-mist, #C8DDD1);
  line-height: 1.6;
  margin-bottom: 1.25rem;
}
.awl-tips { }
.awl-tips-label { font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: rgba(200,221,209,.5); margin-bottom: 10px; }
.awl-tip { font-size: 13px; color: rgba(200,221,209,.75); padding: 7px 0; border-bottom: 1px solid rgba(200,221,209,.12); line-height: 1.55; padding-left: 14px; position: relative; }
.awl-tip:last-child { border-bottom: none; }
.awl-tip::before { content: ''; position: absolute; left: 0; top: 14px; width: 4px; height: 4px; border-radius: 50%; background: rgba(200,221,209,.4); }

/* Legal list */
.awl-legal-list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.awl-legal-item { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: var(--ink-mid, #354D42); padding: 9px 0; border-bottom: 1px solid rgba(180,190,185,.15); line-height: 1.5; }
.awl-legal-item:last-child { border-bottom: none; }
.awl-legal-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--forest, #0D3B2E); flex-shrink: 0; margin-top: 5px; }

/* Self care */
.awl-selfcare-card { background: var(--sage-pale, #EDF5F0); border-radius: 12px; padding: 1.5rem; border: 0.5px solid rgba(26,82,64,.1); }
.awl-selfcare-card .awl-section-kicker { margin-bottom: 12px; }
.awl-selfcare-note { font-family: 'Cormorant Garamond', serif; font-size: 17px; font-style: italic; color: var(--forest, #0D3B2E); line-height: 1.6; padding: 8px 0; border-bottom: 1px solid rgba(26,82,64,.1); font-weight: 400; }
.awl-selfcare-note:last-child { border-bottom: none; }

/* Resources */
.awl-resource-list { display: flex; flex-direction: column; gap: 0; margin-top: .5rem; }
.awl-resource-item { display: flex; flex-direction: column; gap: 3px; padding: 14px 0; border-bottom: 1px solid rgba(180,190,185,.2); text-decoration: none; transition: opacity .15s; }
.awl-resource-item:last-child { border-bottom: none; }
.awl-resource-item:hover { opacity: .65; }
.awl-resource-name { font-size: 13.5px; font-weight: 500; color: var(--forest, #0D3B2E); }
.awl-resource-desc { font-size: 12px; color: var(--muted, #9A9590); line-height: 1.4; }

@media(max-width: 680px) {
  .awl-hero { padding: 1.75rem 1.25rem; }
  .awl-stage-nav { padding: 1.25rem 1.25rem 0; }
  .awl-body { padding: 1.25rem; }
  .awl-stats { grid-template-columns: repeat(2, 1fr); }
  .awl-stat:nth-child(2) { border-right: none; }
  .awl-stat:nth-child(1), .awl-stat:nth-child(2) { border-bottom: 1px solid rgba(180,190,185,.3); }
  .awl-stage-btn { flex: 1 1 120px; }
}

/* ═══════════════════════════════════════════════
   AGING WELL QUIZ — awq- prefixed styles
   ═══════════════════════════════════════════════ */

.awq-wrap { max-width: 640px; margin: 0 auto; padding: 1.5rem 0; }

/* Progress */
.awq-progress { margin-bottom: 1.5rem; }
.awq-prog-meta { display: flex; justify-content: space-between; margin-bottom: 8px; }
.awq-prog-label { font-size: 12px; color: var(--muted); }
.awq-prog-pct { font-size: 12px; color: var(--muted); }
.awq-prog-track { height: 2px; background: rgba(180,190,185,.3); border-radius: 2px; overflow: hidden; }
.awq-prog-fill { height: 100%; background: var(--forest); border-radius: 2px; transition: width .35s ease; }

/* Question card */
.awq-card { background: #fff; border: 0.5px solid rgba(0,0,0,.07); border-radius: 16px; padding: 2rem; box-shadow: 0 2px 16px rgba(0,0,0,.05); }
.awq-q-num { font-size: 9.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--gold); font-weight: 600; margin-bottom: 10px; }
.awq-q-text { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 500; color: var(--forest); line-height: 1.3; margin-bottom: 8px; }
.awq-q-context { font-size: 13px; color: var(--muted); line-height: 1.6; margin-bottom: 1.25rem; font-weight: 300; font-style: italic; }
.awq-opts { display: flex; flex-direction: column; gap: 8px; margin-bottom: 1.5rem; }
.awq-opt {
  padding: 13px 16px;
  border: 1px solid rgba(180,190,185,.45);
  border-radius: 10px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  font-size: 13.5px;
  color: var(--ink-mid);
  line-height: 1.5;
  transition: all .15s;
  font-family: 'DM Sans', sans-serif;
}
.awq-opt:hover { border-color: var(--forest-mid); background: var(--sage-pale); }
.awq-opt.awq-sel { border-color: var(--forest); background: var(--sage-pale); color: var(--forest); font-weight: 500; }
.awq-nav { display: flex; justify-content: space-between; align-items: center; }
.awq-back-btn { background: none; border: none; font-size: 13px; color: var(--muted); cursor: pointer; padding: 8px 0; font-family: inherit; transition: color .15s; }
.awq-back-btn:hover { color: var(--forest); }
.awq-next-btn { padding: 11px 24px; background: var(--forest); color: #fff; border: none; border-radius: 8px; font-size: 13.5px; font-weight: 500; cursor: pointer; font-family: inherit; transition: all .15s; }
.awq-next-btn:hover:not(:disabled) { background: var(--forest-mid); }
.awq-next-btn:disabled { opacity: .4; cursor: not-allowed; }

/* Result card */
.awq-result-card { background: #fff; border-radius: 16px; padding: 2rem; border: 0.5px solid rgba(0,0,0,.07); box-shadow: 0 2px 16px rgba(0,0,0,.05); }
.awq-result-badge { display: inline-flex; align-items: center; gap: 6px; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--forest-mid); background: var(--sage-pale); padding: 5px 12px; border-radius: 20px; margin-bottom: 1.25rem; font-weight: 600; }
.awq-result-header { display: flex; align-items: center; gap: 14px; margin-bottom: 8px; }
.awq-result-dot { width: 14px; height: 14px; border-radius: 50%; flex-shrink: 0; }
.awq-result-label { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); font-weight: 600; }
.awq-result-name { font-family: 'Cormorant Garamond', serif; font-size: 32px; font-weight: 400; color: var(--forest); line-height: 1.05; }
.awq-result-tagline { font-size: 14px; color: var(--ink-soft); line-height: 1.65; margin-bottom: 1.5rem; font-weight: 300; }
.awq-result-field { margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid rgba(180,190,185,.2); }
.awq-result-field:last-of-type { border-bottom: none; }
.awq-result-lbl { font-size: 9.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--gold); font-weight: 600; margin-bottom: 8px; }
.awq-result-val { font-size: 13.5px; color: var(--ink-mid); line-height: 1.75; font-weight: 300; }
.awq-insight { font-style: italic; color: var(--forest-mid); }
.awq-result-list { margin: 0; padding-left: 18px; }
.awq-result-list li { font-size: 13px; color: var(--ink-mid); line-height: 1.6; margin-bottom: 6px; }
.awq-result-list li:last-child { margin-bottom: 0; }

/* CTAs */
.awq-cta-row { display: flex; flex-direction: column; gap: 8px; margin-top: 1.5rem; }
.awq-cta-btn { padding: 13px 24px; background: var(--forest); color: #fff; border: none; border-radius: 10px; font-size: 14px; font-weight: 500; cursor: pointer; font-family: inherit; transition: background .15s; text-align: center; }
.awq-cta-btn:hover { background: var(--forest-mid); }
.awq-retake-btn { background: none; border: 1px solid rgba(180,190,185,.5); border-radius: 8px; padding: 10px 20px; font-size: 13px; color: var(--muted); cursor: pointer; font-family: inherit; transition: all .15s; width: 100%; }
.awq-retake-btn:hover { border-color: var(--forest); color: var(--forest); }
.awq-outline-btn { background: none; border: 1px solid rgba(180,190,185,.5); border-radius: 10px; padding: 13px 24px; font-size: 13.5px; color: var(--ink-mid); cursor: pointer; font-family: inherit; transition: all .15s; }
.awq-outline-btn:hover { border-color: var(--forest); color: var(--forest); }

/* Auth prompt in result */
.awq-auth-prompt { background: var(--sage-pale); border-radius: 12px; padding: 1.5rem; margin-top: 1.5rem; }
.awq-auth-title { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 500; color: var(--forest); margin-bottom: 8px; }
.awq-auth-desc { font-size: 13px; color: var(--ink-mid); line-height: 1.65; margin-bottom: 1.25rem; font-weight: 300; }
.awq-auth-divider { text-align: center; color: var(--muted); font-size: 12px; margin: 10px 0; position: relative; }
.awq-auth-divider::before { content: ''; position: absolute; left: 0; top: 50%; width: 45%; height: 1px; background: rgba(180,190,185,.35); }
.awq-auth-divider::after { content: ''; position: absolute; right: 0; top: 50%; width: 45%; height: 1px; background: rgba(180,190,185,.35); }

/* Marketing page quiz container */
.aw-quiz-section { padding: 4rem 2rem; background: var(--sage-pale); }
.aw-quiz-section-inner { max-width: 800px; margin: 0 auto; }
.aw-quiz-intro { text-align: center; margin-bottom: 2.5rem; }
.aw-quiz-intro-kicker { font-size: 10px; letter-spacing: .18em; text-transform: uppercase; color: var(--gold); font-weight: 600; margin-bottom: 10px; }
.aw-quiz-intro-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(26px, 3.5vw, 38px); font-weight: 400; color: var(--forest); line-height: 1.15; margin-bottom: 12px; }
.aw-quiz-intro-desc { font-size: 14px; color: var(--ink-soft); line-height: 1.7; font-weight: 300; max-width: 480px; margin: 0 auto; }

/* In-app quiz section */
.awq-app-section { padding: 2rem 2.5rem; max-width: 880px; margin: 0 auto; }
.awq-app-header { margin-bottom: 2rem; }
.awq-app-kicker { font-size: 9.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--gold); font-weight: 600; margin-bottom: 8px; }
.awq-app-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(24px, 3vw, 36px); font-weight: 400; color: var(--forest); line-height: 1.12; margin-bottom: 10px; }
.awq-app-desc { font-size: 13.5px; color: var(--ink-soft); line-height: 1.7; font-weight: 300; max-width: 520px; }

@media(max-width: 680px) {
  .awq-card { padding: 1.25rem; }
  .awq-result-card { padding: 1.25rem; }
  .aw-quiz-section { padding: 2.5rem 1.25rem; }
  .awq-app-section { padding: 1.5rem 1.25rem; }
}

/* ── Aging Well Quiz Hub Widget ── */
.awq-hub-widget { padding: 0; overflow: hidden; }
.awq-hub-header { padding: 14px 16px 10px; border-bottom: 1px solid rgba(180,190,185,.2); }
.awq-hub-kicker { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: var(--gold); font-weight: 600; margin-bottom: 3px; }
.awq-hub-title { font-family: 'Cormorant Garamond', serif; font-size: 18px; font-weight: 500; color: var(--forest); }
.awq-hub-widget .awq-wrap { padding: 12px 16px 16px; max-width: 100%; }
.awq-hub-widget .awq-card { border: none; border-radius: 0; box-shadow: none; padding: 0; }
.awq-hub-widget .awq-q-num { display: none; }
.awq-hub-widget .awq-q-text { font-size: 14px; margin-bottom: 6px; }
.awq-hub-widget .awq-q-context { font-size: 11.5px; margin-bottom: .75rem; }
.awq-hub-widget .awq-opt { padding: 10px 12px; font-size: 12.5px; }
.awq-hub-widget .awq-next-btn { padding: 9px 18px; font-size: 12.5px; }
.awq-hub-widget .awq-result-card { border: none; border-radius: 0; box-shadow: none; padding: 0; }
.awq-hub-widget .awq-result-name { font-size: 24px; }
.awq-hub-widget .awq-result-field { margin-bottom: .85rem; padding-bottom: .85rem; }
.awq-hub-widget .awq-result-val { font-size: 12.5px; }
.awq-hub-widget .awq-result-list li { font-size: 12px; }
.awq-hub-widget .awq-cta-btn { font-size: 13px; padding: 10px 18px; }

/* AGING WELL LOOP — mirrors Family Loop with AW brand */
#dsec-aw-loop .fl-main{display:flex;flex-direction:column;min-height:100%;}
#dsec-aw-loop .loop-header{background:linear-gradient(135deg,#0D3B2E 0%,#1A5240 50%,#2d5a3d 100%);padding:2.5rem 2.5rem 1.75rem;position:relative;overflow:hidden;}
#dsec-aw-loop .loop-header::before{content:'';position:absolute;inset:0;opacity:.04;background-image:radial-gradient(circle at 20% 50%,#fff 1px,transparent 1px),radial-gradient(circle at 80% 20%,#fff 1px,transparent 1px),radial-gradient(circle at 60% 80%,#fff 1px,transparent 1px);background-size:60px 60px;pointer-events:none;}
#dsec-aw-loop .loop-header-inner{position:relative;z-index:1;padding-bottom:0;}
#dsec-aw-loop .loop-eyebrow{font-size:10px;letter-spacing:.14em;color:rgba(255,255,255,.4);text-transform:uppercase;margin-bottom:.6rem;}
#dsec-aw-loop .loop-title-row{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:12px;}
#dsec-aw-loop .loop-title{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:600;color:#fff;line-height:1.1;}
#dsec-aw-loop .loop-title em{font-style:italic;opacity:.8;}
#dsec-aw-loop .loop-sub{font-size:13px;color:rgba(255,255,255,.55);margin-top:.4rem;max-width:480px;line-height:1.7;}
#dsec-aw-loop .header-actions{display:flex;gap:8px;flex-wrap:wrap;}
#dsec-aw-loop .btn-header{font-family:'Jost',sans-serif;font-size:12px;padding:8px 18px;border-radius:10px;cursor:pointer;font-weight:500;transition:all .15s;}
#dsec-aw-loop .btn-header-primary{background:#fff;color:#2d5a3d;border:none;}
#dsec-aw-loop .btn-header-primary:hover{background:#f0f6f2;}
#dsec-aw-loop .btn-header-ghost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.22);}
#dsec-aw-loop .btn-header-ghost:hover{background:rgba(255,255,255,.18);}
#dsec-aw-loop .member-strip{display:flex;align-items:center;margin-top:1.25rem;}
#dsec-aw-loop .fl-member-av{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:13px;font-weight:600;color:#fff;margin-left:-8px;}
#dsec-aw-loop .fl-member-av:first-child{margin-left:0;}
#dsec-aw-loop .member-count{font-size:12px;color:rgba(255,255,255,.6);margin-left:12px;}
#dsec-aw-loop .member-online{width:8px;height:8px;border-radius:50%;background:#a8d5b5;display:inline-block;margin-right:5px;animation:fl-pulse 2s infinite;}
#dsec-aw-loop .fl-content{flex:1;display:grid;grid-template-columns:1fr 340px;gap:0;align-items:start;}
@media(max-width:1100px){#dsec-aw-loop .fl-content{grid-template-columns:1fr;}}
#dsec-aw-loop .feed-col{padding:1.75rem 2rem 5rem;border-right:1px solid rgba(0,0,0,0.07);}
@media(max-width:1100px){#dsec-aw-loop .feed-col{border-right:none;padding:1.25rem 1rem 3rem;}}
#dsec-aw-loop .compose-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:22px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,.06);}
#dsec-aw-loop .compose-top{display:flex;gap:12px;align-items:flex-start;margin-bottom:1rem;}
#dsec-aw-loop .compose-av{width:36px;height:36px;border-radius:50%;background:#e8f0eb;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:600;color:#2d5a3d;flex-shrink:0;}
#dsec-aw-loop .compose-textarea{flex:1;border:none;outline:none;resize:none;font-family:'Jost',sans-serif;font-size:13px;color:#18181a;background:transparent;min-height:38px;line-height:1.6;}
#dsec-aw-loop .compose-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid rgba(0,0,0,0.07);padding-top:.75rem;}
#dsec-aw-loop .compose-types{display:flex;gap:6px;flex-wrap:wrap;}
#dsec-aw-loop .fl-type-pill{font-size:11px;padding:4px 10px;border-radius:12px;cursor:pointer;border:1px solid rgba(0,0,0,0.13);color:#9a9590;background:transparent;font-family:'Jost',sans-serif;transition:all .12s;}
#dsec-aw-loop .compose-actions{display:flex;gap:8px;align-items:center;}
#dsec-aw-loop .post-btn{background:#2d5a3d;color:#fff;border:none;border-radius:10px;padding:7px 20px;font-size:13px;font-weight:500;cursor:pointer;font-family:'Jost',sans-serif;transition:all .15s;}
#dsec-aw-loop .feed-filters{display:flex;gap:4px;margin-bottom:1.25rem;background:#f2ede4;border-radius:10px;padding:4px;width:fit-content;}
#dsec-aw-loop .feed-tab{font-size:12px;padding:6px 14px;border-radius:8px;cursor:pointer;color:#5a5754;border:none;background:transparent;font-family:'Jost',sans-serif;transition:all .15s;}
#dsec-aw-loop .feed-tab.active{background:#fff;color:#18181a;font-weight:500;box-shadow:0 1px 4px rgba(0,0,0,.08);}
#dsec-aw-loop .fl-right-col{padding:1.75rem 1.5rem 5rem;}
#dsec-aw-loop .fl-side-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:18px;padding:1.1rem 1.25rem;margin-bottom:1rem;box-shadow:0 1px 6px rgba(0,0,0,.05);}
#dsec-aw-loop .fl-side-card-title{font-size:12px;font-weight:600;color:#18181a;letter-spacing:.03em;text-transform:uppercase;margin-bottom:.85rem;display:flex;align-items:center;justify-content:space-between;}
#dsec-aw-loop .fl-side-card-link{font-size:11px;font-weight:500;color:#2d5a3d;background:none;border:none;cursor:pointer;padding:0;text-transform:none;letter-spacing:0;}
#dsec-aw-loop .fl-member-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,0.05);}
#dsec-aw-loop .fl-member-row:last-child{border-bottom:none;}
#dsec-aw-loop .fl-member-av-sm{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:13px;font-weight:600;flex-shrink:0;}
#dsec-aw-loop .fl-member-name{font-size:12px;font-weight:500;color:#18181a;}
#dsec-aw-loop .fl-member-rel{font-size:11px;color:#9a9590;}
#dsec-aw-loop .fl-member-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
#dsec-aw-loop .invite-row{display:flex;gap:6px;margin-top:.75rem;}
#dsec-aw-loop .invite-input{flex:1;border:1px solid rgba(0,0,0,0.12);border-radius:8px;padding:6px 10px;font-size:12px;font-family:'Jost',sans-serif;outline:none;}
#dsec-aw-loop .invite-btn{background:#2d5a3d;color:#fff;border:none;border-radius:8px;padding:6px 14px;font-size:12px;cursor:pointer;font-family:'Jost',sans-serif;}
#dsec-aw-loop .pref-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(0,0,0,0.05);}
#dsec-aw-loop .pref-row:last-child{border-bottom:none;}
#dsec-aw-loop .pref-label{font-size:12px;font-weight:500;color:#18181a;}
#dsec-aw-loop .pref-sub{font-size:11px;color:#9a9590;margin-top:1px;}
#dsec-aw-loop .fl-toggle{width:34px;height:20px;border-radius:10px;background:#d0d0ce;cursor:pointer;position:relative;transition:background .2s;flex-shrink:0;}
#dsec-aw-loop .fl-toggle.on{background:#2d5a3d;}
#dsec-aw-loop .fl-toggle::after{content:'';position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s;}
#dsec-aw-loop .fl-toggle.on::after{transform:translateX(14px);}
#dsec-aw-loop .memory-grid-sm{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:.5rem;}
#dsec-aw-loop .memory-tile-sm{aspect-ratio:1;border-radius:10px;overflow:hidden;background:#f0f4f1;display:flex;align-items:center;justify-content:center;font-size:20px;}
#dsec-aw-loop .memory-tile-sm img{width:100%;height:100%;object-fit:cover;}
#dsec-aw-loop .memory-add-tile{border:1.5px dashed #c8ddd1;cursor:pointer;background:transparent;}
#dsec-aw-loop .feed-entry{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:22px;margin-bottom:1rem;overflow:hidden;padding:1.25rem;box-shadow:0 2px 12px rgba(0,0,0,.06);}
#dsec-aw-loop .entry-header{display:flex;align-items:center;gap:10px;margin-bottom:.75rem;}
#dsec-aw-loop .entry-av{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:600;flex-shrink:0;color:#fff;}
#dsec-aw-loop .entry-meta{flex:1;}
#dsec-aw-loop .entry-author{font-size:13px;font-weight:600;color:#18181a;}
#dsec-aw-loop .entry-time{font-size:11px;color:#9a9590;}
#dsec-aw-loop .entry-type-tag{font-size:10px;font-weight:500;padding:3px 8px;border-radius:8px;font-family:'Jost',sans-serif;}
#dsec-aw-loop .entry-body{font-size:13px;color:#3a3835;line-height:1.65;margin-bottom:.85rem;}
#dsec-aw-loop .entry-actions{display:flex;align-items:center;gap:8px;padding-top:.6rem;border-top:1px solid rgba(0,0,0,0.06);}
#dsec-aw-loop .reaction-btn{background:none;border:1px solid rgba(0,0,0,0.10);border-radius:20px;padding:4px 10px;font-size:12px;cursor:pointer;font-family:'Jost',sans-serif;transition:all .12s;}
#dsec-aw-loop .reaction-btn.reacted{background:#e8f0eb;border-color:#2d5a3d;}
#dsec-aw-loop .entry-action-btn{background:none;border:none;font-size:12px;color:#9a9590;cursor:pointer;font-family:'Jost',sans-serif;margin-left:auto;}
#dsec-aw-loop .fl-empty-feed{text-align:center;padding:3rem 1rem;color:#9a9590;font-size:13px;font-style:italic;}
#dsec-aw-loop .fl-loading{text-align:center;padding:3rem;color:#9a9590;font-size:13px;}
