/* Pocket visual language: bright surfaces, bold system type and purple actions.
   Loaded last so the same theme applies to old and new feature components. */
:root{--accent:#7938f5;--accent-soft:#f0eaff;--green:#7130e8;--ink:#333440;--muted:#696a7c;--paper:#f7f7fb;--line:#e8e5f0;--sage:#f0eaff;--yellow:#f8e8bf;--white:#fff;--radius:21px;--font-heading:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--font-body:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--type-title:44px;--type-section:28px;--type-card:22px}
body{background:var(--paper);color:var(--ink);font-family:var(--font-body)}
header{background:#fff;border-color:var(--line);border-radius:0 0 24px 24px;box-shadow:0 4px 24px #34234804}
.brand{font-family:var(--font-heading);font-weight:750;color:var(--accent);letter-spacing:-1.3px}.brandmark{background:var(--accent);color:#fff}.brand-dot{color:#bb59c8}
header nav a{color:#625b74}header nav a[aria-current=page]{color:var(--accent);border-color:var(--accent)}
#main :is(h1,h2,h3,h4),#main :is(.panel,.card,.topic-card,.directory-card,.week-glance,.credit-card) h2{font-family:var(--font-heading);font-weight:700;letter-spacing:-.65px;color:var(--ink)}
#main h1{font-weight:750;letter-spacing:-1.4px;line-height:1.12}#main :is(.amount,.price){font-family:var(--font-heading);font-weight:750;font-variant-numeric:tabular-nums}
#main :is(.panel,.card,.topic-card,.directory-card,.credit-card,.activity-item,.resource,.week-glance){background:#fff;border-color:var(--line);border-radius:21px;box-shadow:0 4px 24px #34234805}
#main :is(.tinted,.ask-panel,.support-panel,.pause-picker,.result,.empty){background:#f0eaff;border-color:#e2d5fb;color:var(--ink)}
#main :is(.discover-hero,.hero){background:linear-gradient(120deg,#7938f5,#9650fa);color:#fff;border-radius:25px;box-shadow:0 10px 28px #7938f51c}
#main :is(.discover-hero,.hero) :is(h1,h2,h3,p){color:#fff}#main .journal-hero{background:transparent}#main .journal-hero h1{color:var(--ink)}
#main .btn,footer #install:not([hidden]){background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:13px;box-shadow:0 5px 14px #7938f51a;font-weight:650}
#main .btn.light{background:#f0eaff;color:#6528d0;border-color:#e2d5fb;box-shadow:none}
#main :is(.chip,.week-link,.quick-links>a){border-color:#e2dced;border-radius:13px;background:#fff;color:#625671}
#main :is(.chip.active,.chip[aria-pressed=true]){background:var(--accent);border-color:var(--accent);color:#fff}
#main :is(.text-link,.cost-label,.signed-in){color:#6828d7}#main :is(.tag,.status-pill){background:var(--accent-soft);color:#6528d0;border-radius:9px;padding:5px 10px}
#main :is(.notice,.source-panel,.answer){background:#f3effb;border-color:#e5dcf2;border-radius:15px;color:var(--ink)}#main .safety-banner{background:#fff1ea;border-color:#e4ba9f;color:#633619}
#main :is(input,select,textarea){border-color:#dcd6e8;background:#fff;color:var(--ink);border-radius:12px;accent-color:var(--accent)}
#main :is(input,select,textarea):focus-visible{outline:3px solid #a977ff;outline-offset:2px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9c60f8;outline-offset:3px}
#main :is(.near-kind button,.near-filters summary,.near-calendar button){border-color:var(--line);background:#fff;color:var(--ink)}
#main :is(.near-kind button[aria-pressed=true],.near-calendar button[aria-pressed=true]){background:var(--accent);border-color:var(--accent);color:#fff}
#main .near-calendar button.has-options:not([aria-pressed=true]){background:#f3edff;border-color:#d7c3fb;color:#5921bc}#main .near-calendar button small{background:#e5d7fc;color:#5921bc;border-radius:7px}#main .near-calendar button[aria-pressed=true] small{background:#ffffff26;color:#fff}
#main .near-calendar button:disabled{background:#faf9fc;color:#8d8797;opacity:.65}
#main .near-accordion-item{background:#fff;border-color:var(--line);border-radius:17px}#main .hero-notes span{background:#f0eaff;color:#6528d0;border-color:#e2d5fb}
.mobile-navigation{background:#fffffffa;border-color:var(--line);box-shadow:0 -4px 24px #34234806}.mobile-navigation>a{color:#756b85}.mobile-navigation>a[aria-current=page]{color:#6528d0;background:#f0eaff;border-radius:13px}
footer{background:#fff;border-color:var(--line);color:var(--ink)}footer .home-screen-help{border-color:var(--line)}
dialog{background:#fff;color:var(--ink);border-radius:24px;box-shadow:0 24px 100px #39216726}dialog::backdrop{background:#2a18444a}.close{background:#f0eaff;color:#6528d0}
@media(max-width:650px){header{background:linear-gradient(120deg,#7938f5,#9650fa);border:0;border-radius:0 0 24px 24px;min-height:76px}header .brand{color:#fff;font-size:25px;letter-spacing:-1px}header .brandmark{background:#fff;color:#7938f5}header .brand-dot{color:#efd7ff}header :is(.header-actions a,.signed-in){color:#fff}#main h1{font-size:34px;letter-spacing:-1px}#main h2{font-size:25px}#main :is(.panel,.card){border-radius:20px}#main :is(.discover-hero,.hero){padding:24px}.mobile-navigation>a{min-height:48px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:#fff}header{box-shadow:none}#main :is(.panel,.card){box-shadow:none}#main :is(.hero,.discover-hero){background:#fff;color:#222}#main :is(.hero,.discover-hero) :is(h1,h2,h3,p){color:#222}}
#main .editorial-photo figcaption{background:#fff;color:var(--muted)}
@media(max-width:650px){header :is(button,.header-actions>a,.header-actions button,.header-icon){color:#fff;border-color:#ffffff55;background:#ffffff12}header .line-icon{color:#fff}}
/* The purple masthead belongs to the desktop and tablet theme too. */
@media(min-width:651px){
 header{background:linear-gradient(120deg,#7938f5,#9650fa);border:0;border-radius:0 0 24px 24px;box-shadow:0 8px 28px #7938f51a}
 header .brand{color:#fff;font-weight:750}header .brandmark{background:#fff;color:#7938f5}header .brand-dot{color:#efd7ff}
 header nav a{color:#f6efff}header nav a[aria-current=page]{color:#fff;border-color:#fff}
 header :is(button,.header-actions>a,.header-actions button,.header-icon){color:#fff;border-color:#ffffff55;background:#ffffff12}
 header :is(.signed-in,.line-icon,#account-badge){color:#fff}
 header nav a:hover{color:#fff;opacity:1;text-decoration:underline;text-underline-offset:6px}
}
/* A shared fluid desktop shell replaces the old 1,200px content cap. */
@media(min-width:901px){
 :root{--desktop-shell:min(1800px,calc(100% - 64px))}
 body>header,body>main#main{width:var(--desktop-shell);max-width:none;margin-inline:auto;padding-inline:32px}
 body>header{padding-inline:32px}
 body>footer{padding-inline:max(64px,calc((100vw - 1736px)/2))}
 #main .reading{max-width:760px;margin-inline:auto}
 #main .daily-intro-copy>p{max-width:620px}
}

/* Keep installation help alongside the footer banner actions. */
footer .footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
footer .footer-links>a{display:inline-flex;align-items:center;min-height:44px}
footer .home-screen-help{flex:0 1 auto;width:auto;border-top:0;padding-top:0;margin:0}
footer .home-screen-help>summary{white-space:nowrap}
footer .home-screen-help[open]{flex-basis:100%;width:100%}
footer .footer-extra-links:empty{display:none}
@media(max-width:650px){footer .home-screen-help{margin-top:12px}footer .footer-links{gap:8px 16px}}

/* Consistent meal-offer heading spacing and aligned card actions. */
#main .meal-offer-card{display:flex;flex-direction:column;align-items:flex-start}
#main .meal-offer-card>.tag{margin-bottom:12px}
#main .meal-offer-card>h3{margin-bottom:16px}
#main .meal-offer-card>.meal-offer-actions{align-items:center;gap:12px 16px;margin-top:auto;padding-top:4px;width:100%}
#main .meal-offer-actions>.text-link{margin:0;line-height:1.6}
#main .meal-offer-card>.source{margin-top:20px;margin-bottom:0}

#pocket-frame{display:block;width:100%;height:85vh;min-height:700px;border:1px solid var(--line);border-radius:20px;background:#f7f6fb}#pocket-status{margin-block:12px;font-size:14px}@media(max-width:650px){#pocket-frame{height:85vh;min-height:650px;border-radius:12px}}
