/* Shared action styles: forest, clay, and the same softly squared corners. */
:root{--action-radius:10px;--action-forest:#344b3b;--action-forest-hover:#243b2d;--action-clay:#8b5d44;--action-clay-hover:#70452f;--action-paper:#fffaf0;--action-focus:#a76843}
body :is(.button.button,.protocol-button,.lab-edit-button,.home-apothecary-shop,.quiet-minute-start,.footer-email-row button){
 display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;max-width:100%;box-sizing:border-box;
 padding:15px 23px;border:1px solid var(--action-forest);border-radius:var(--action-radius);
 background:var(--action-forest);color:var(--action-paper);font:600 13px/1.45 var(--sans,Arial,sans-serif);
 letter-spacing:.065em;text-transform:uppercase;text-align:center;text-decoration:none;white-space:normal;
 transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
}
body :is(.button.button,.protocol-button,.lab-edit-button,.home-apothecary-shop,.quiet-minute-start,.footer-email-row button):hover{
 background:var(--action-forest-hover);border-color:var(--action-forest-hover);color:var(--action-paper);text-decoration:none;
}
body :is(.button.outline,.button.light,.home-apothecary-labs,.quiet-minute-reset,.guide-viewer-controls button,.ritual-reset){
 display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;box-sizing:border-box;
 padding:13px 20px;border:1px solid var(--action-forest);border-radius:var(--action-radius);
 background:var(--action-paper);color:var(--action-forest);font:600 13px/1.45 var(--sans,Arial,sans-serif);
 letter-spacing:.045em;text-decoration:none;text-align:center;
}
body :is(.button.outline,.button.light,.home-apothecary-labs,.quiet-minute-reset,.guide-viewer-controls button,.ritual-reset):hover{
 background:#e6eadf;color:var(--action-forest-hover);border-color:var(--action-forest-hover);
}
body .wild-hero .button{font-size:13px;padding:15px 23px;min-height:50px;border:1px solid var(--action-paper);border-radius:var(--action-radius);background:var(--action-paper);color:var(--action-forest)}
body .protocol-button{min-height:52px;border-radius:var(--action-radius)}
body :is(.protocol-button,.lab-edit-button) svg{width:21px;height:21px;flex:0 0 21px}
body .protocol-button>span:last-child{font-size:18px}
body :is(.button.button,.protocol-button,.lab-edit-button,.home-apothecary-shop,.home-apothecary-labs,.quiet-minute-start,.quiet-minute-reset,.footer-email-row button,.guide-viewer-controls button,.ritual-reset):focus-visible{
 outline:3px solid var(--action-focus);outline-offset:4px;
}
body button:disabled{opacity:.55;cursor:not-allowed}

/* The two navigation invitations match in size and shape. */
body .site-header :is(.mast-side.mast-start,.nav-mobile-utility .nav-start),
body .site-header .main-nav>a.nav-supplements{
 display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:13px 21px;
 border:1px solid var(--action-forest);border-radius:var(--action-radius);background:var(--action-forest);color:var(--action-paper);
 font:600 13px/1.4 var(--sans,Arial,sans-serif);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;box-sizing:border-box;
 transition:background .2s,border-color .2s,box-shadow .2s;
}
body .site-header :is(.mast-side.mast-start,.nav-mobile-utility .nav-start){background:var(--action-clay);border-color:var(--action-clay);color:var(--action-paper)}
body .site-header :is(.mast-side.mast-start,.nav-mobile-utility .nav-start)::after{color:currentColor;font-size:18px;line-height:1}
body .site-header :is(.mast-side.mast-start,.nav-mobile-utility .nav-start):hover{background:var(--action-clay-hover);border-color:var(--action-clay-hover);color:var(--action-paper)}
body .site-header .main-nav>a.nav-supplements:hover{background:var(--action-forest-hover);border-color:var(--action-forest-hover);color:var(--action-paper)}
body .site-header .main-nav>a.nav-supplements svg{width:23px;height:23px;flex:0 0 23px}
body .site-header :is(.mast-start,.nav-start,.nav-supplements):focus-visible{outline:3px solid var(--action-focus);outline-offset:4px}
body .site-header :is(.menu-button,.icon-button){min-height:44px;min-width:44px;border:1px solid #c6cdbd;border-radius:var(--action-radius);color:var(--action-forest);font-size:12px;padding:10px}
body .site-header :is(.menu-button,.icon-button):hover{background:#e6eadf}

/* Filters, reading tools, and course controls share the same geometry. */
body :is(.filter,.plant-quick-filters button,.plant-alphabet button,.quiet-memory-choices button,.article-tools button,.guide-page-strip button){
 min-height:44px;border:1px solid #aab69d;border-radius:var(--action-radius);padding:10px 14px;
 background:transparent;color:var(--action-forest);font:500 13px/1.45 var(--sans,Arial,sans-serif);letter-spacing:.02em;
}
body :is(.filter.active,.plant-quick-filters button.active,.plant-alphabet button.active,.quiet-memory-choices button[aria-pressed=true],.guide-page-strip button[aria-pressed=true]){
 background:var(--action-forest);border-color:var(--action-forest);color:var(--action-paper);
}
body :is(.filter,.plant-quick-filters button,.plant-alphabet button,.quiet-memory-choices button,.article-tools button):hover{background:#e6eadf;color:var(--action-forest)}
body :is(.filter.active,.plant-quick-filters button.active,.plant-alphabet button.active,.quiet-memory-choices button[aria-pressed=true]):hover{background:var(--action-forest-hover);color:var(--action-paper)}
body .article-tools button{padding:10px 12px;text-align:left}
body .plant-alphabet button{min-width:44px;padding:9px}
body .guide-page-strip button{padding:5px}
body .guide-page-strip button span{font-size:12px}
body .reflection-actions button{min-height:46px;padding:11px 16px;border:1px solid #b1baa5;border-radius:var(--action-radius);font-size:13px;color:#fffaf0;background:#344b3b}
body .episode-art-refined .episode-play{width:48px;height:48px;border-radius:var(--action-radius);background:var(--action-forest);border-color:var(--action-forest);color:var(--action-paper)}
body .episode-art-refined .episode-play:hover{background:var(--action-forest-hover)}
body :is(.section-heading .text-link,.text-link,.readline){font-size:13px;line-height:1.6;letter-spacing:.055em}
body .section-heading>.text-link{max-width:180px}
body .footer-email-row{gap:10px}
body .footer-email-row input{border-radius:var(--action-radius)}

/* The bell remains an understated invitation above its clickable photograph. */
body .sacred-bell-button{min-height:48px;font-size:19px;color:var(--action-forest);border-radius:var(--action-radius)}
body .sacred-bell-mark{width:39px;height:39px;flex-basis:39px;border-radius:var(--action-radius);border-color:#819270;background:#e6eadf}
body .sacred-bell-mark::before,body .sacred-bell-mark::after{border-radius:var(--action-radius)}
body .sacred-bell-photo{border-radius:var(--action-radius);overflow:hidden}

@media(min-width:761px) and (max-width:1150px){body .site-header .main-nav{flex-wrap:wrap;justify-content:center;gap:12px 18px;padding-block:15px}body .site-header .main-nav>a.nav-supplements{font-size:12px;padding:12px 15px}}
@media(max-width:760px){
 body .site-header .mast-side.mast-start{display:none}
 body .site-header .nav-mobile-utility .nav-start{min-height:48px;padding:12px 16px;font-size:13px}
 body .site-header .main-nav>a.nav-supplements{justify-content:flex-start;min-height:50px;padding:13px 16px;font-size:13px}
 body :is(.button.button,.protocol-button,.lab-edit-button,.home-apothecary-shop){font-size:13px;min-height:50px;padding:14px 20px}
 body .section-heading>.text-link{font-size:12px;max-width:140px}
 body .filter{font-size:12px;min-height:44px}
 body .article-tools{flex-wrap:wrap;gap:10px}
 body .sacred-bell-button{font-size:19px}
}
@media(prefers-reduced-motion:reduce){body :is(.button.button,.protocol-button,.lab-edit-button,.mast-start,.nav-start,.nav-supplements){transition:none}}
