/* Practical patient tools, extending the established Lázarus palette. */
.discovery-bar{position:relative;margin:0 0 30px;padding:22px 26px;border:1px solid var(--line);border-radius:22px;background:var(--paper)}
.discovery-bar label{display:block;font-size:1rem;font-weight:750;margin-bottom:9px}
.search-row{display:flex;gap:12px;align-items:stretch}
.search-row input{min-width:0;flex:1;padding:14px 17px;border:1px solid #b8ac98;border-radius:12px;background:#fff;color:var(--ink);font-size:1rem}
.search-row .btn{flex:none;white-space:nowrap}
.search-hint{font-size:.875rem;color:#665d53;margin:10px 0 0}
.search-hint a,.prep-link,.practical-faq a{text-decoration:underline;text-underline-offset:4px;color:#79551f}
.search-controls{margin-bottom:26px;max-width:980px}
.search-controls .list-page-filter{margin:18px 0 0}
.search-count{color:#665d53;font-size:.9375rem;min-height:1.6em}
.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;border-top:1px solid var(--line)}
.search-result{display:block;padding:24px 0;border-bottom:1px solid var(--line)}
.search-result:hover h2,.search-result:focus-visible h2{color:#79551f}
.search-result small{font-size:.875rem;color:#79551f;font-weight:700}
.search-result h2{font-family:var(--serif);font-size:1.65rem;font-weight:500;line-height:1.25;margin:5px 0 8px}
.search-result p{color:#665d53;font-size:1rem;margin:0}
.search-empty{padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--paper)}
.prep-link{display:inline-block;font-weight:750;margin-top:18px}
.practical-faq{border-top:1px solid var(--line)}
.practical-faq details{border-bottom:1px solid var(--line);padding:0}
.practical-faq summary{padding:20px 38px 20px 0;cursor:pointer;font-weight:700;font-size:1.05rem;position:relative;list-style:none}
.practical-faq summary::-webkit-details-marker{display:none}
.practical-faq summary::after{content:'+';position:absolute;right:8px;top:17px;font-size:1.4rem;color:#79551f;font-weight:400}
.practical-faq details[open] summary::after{content:'−'}
.practical-faq details>div{padding:0 26px 18px 0;max-width:78ch;color:#665d53}
.practical-faq details p{margin:0 0 10px}
.practical-faq details p:last-child{margin-bottom:0}
.patient-help-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.7fr);gap:clamp(28px,6vw,80px);align-items:start}
.arrival-card{padding:30px;border-radius:26px;background:var(--night2);color:var(--paper);border:1px solid var(--line)}
.arrival-card h3{font-family:var(--serif);font-size:1.8rem;font-weight:500;margin:0 0 15px;line-height:1.25}
.arrival-card p{color:#d8ccbd}.arrival-card address{font-style:normal;font-size:1.1rem;line-height:1.7}
.arrival-card .actions{gap:10px;margin:20px 0}.arrival-card .btn{min-height:46px}
.arrival-card .copy-control{color:#e9d1a0}
.copy-control{background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;padding:10px 0;font-size:.9375rem;color:#79551f;text-align:left}
.copy-status{font-size:.875rem;min-height:1.5em;margin:5px 0 0}
.message-preview{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.message-preview label{display:block;font-weight:700;font-size:1rem;margin-bottom:8px}
.message-preview textarea{display:block;width:100%;min-height:180px;resize:vertical;border:1px solid #b8ac98;border-radius:14px;padding:14px;color:var(--ink);background:#fff;font-size:1rem;line-height:1.6}
.message-preview .actions{margin-top:14px;gap:12px;align-items:center}
.quick-contact-card .message-preview .btn{margin-top:0}
.quick-contact-card .copy-control{color:#efcd82}
.quick-contact-card .message-preview p{color:#d8ccbd}
.preparation-sheet{border:1px solid var(--line);border-radius:24px;padding:clamp(22px,4vw,38px);background:var(--paper)}
.preparation-sheet h2{margin-top:0}.preparation-checks{border:0;padding:0;margin:24px 0}
.preparation-checks legend{font-weight:750;margin-bottom:12px}
.preparation-checks label{display:flex;gap:13px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--line);font-size:1rem;cursor:pointer}
.preparation-checks input{flex:none;width:20px;height:20px;margin:4px 0 0;accent-color:#8b662e}
.preparation-checks input:checked+span{color:#70675a;text-decoration:line-through}
.sheet-contact{padding-top:18px;border-top:1px solid var(--line);font-size:.9375rem}
.article-index{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px}.article-index a{padding:9px 13px;border:1px solid var(--line);border-radius:12px;font-size:.9375rem;color:#79551f}
.evidence-links{font-size:.9375rem;border-top:1px solid var(--line);margin-top:32px;padding-top:18px}.evidence-links a{text-decoration:underline;text-underline-offset:3px}
.nav-search{display:inline-flex;align-items:center;gap:7px}.nav-search svg{width:17px;height:17px;flex:none}
.tool-intro{max-width:800px;margin:0 0 32px}
@media(max-width:1250px){.desktop-nav .nav-link,.desktop-nav .nav-button{padding-left:9px;padding-right:9px}.header-inner{gap:15px}}
@media(max-width:900px){.patient-help-grid{grid-template-columns:1fr}.arrival-card{max-width:640px}.search-results{grid-template-columns:1fr}}
@media(max-width:600px){.search-row{flex-wrap:wrap}.search-row input{flex-basis:100%}.search-row .btn{flex:1}.discovery-bar{padding:20px}.arrival-card{padding:24px}.search-result h2{font-size:1.45rem}.message-preview .actions{align-items:stretch;flex-direction:column}.message-preview .btn{width:100%}}
@media print{
 body.preparation-page{background:#fff!important;color:#000!important;font:12pt/1.45 Georgia,serif}
 body.preparation-page>*:not(main),body.preparation-page main>*:not(.preparation-print),body.preparation-page .no-print{display:none!important}
 body.preparation-page .preparation-print{padding:0!important}body.preparation-page .preparation-print .section-inner{width:100%;max-width:none;padding:0}
 body.preparation-page .preparation-print .patient-help-grid{display:block}body.preparation-page .preparation-print .patient-help-grid>aside{display:none}
 body.preparation-page .preparation-sheet{border:0;padding:0;box-shadow:none;background:#fff}body.preparation-page .preparation-sheet h2{font-size:22pt}
 body.preparation-page .preparation-checks input:checked+span{color:#000}body.preparation-page .preparation-checks label{break-inside:avoid}
 body.preparation-page .preparation-sheet a{color:#000;text-decoration:none}body.preparation-page .sheet-contact{font-size:10pt}
 @page{size:A4;margin:18mm}
}
