:root{--bg:#f8fafc;--surface:#fff;--text:#163b2d;--muted:#597265;--line:#d8e5dd;--soft:#edf5f0;--accent:#117c4d;--danger:#a52828}
html[data-theme=dark]{--bg:#101c17;--surface:#182a21;--text:#e4f1e9;--muted:#b5c9bd;--line:#395345;--soft:#20392b;--accent:#76d9a6;--danger:#ffb5b5;background:var(--bg);color:var(--text)}
html[data-theme=dark] body{background:var(--bg);color:var(--text)}
html[data-theme=dark] :is(.panel,.admin-header,.form-actions,.auth-card,.workspace-nav,.fd-shift){background:var(--surface);color:var(--text);border-color:var(--line)}
html[data-theme=dark] :is(input,select,textarea,.button.secondary){background:var(--bg)!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme=dark] :is(.muted,.eyebrow,.empty,.admin-nav a,.link-button,.fd-hero p,.fd-shift__body p,.fd-related-card__content p,.fd-related-card__location,.fd-directory-note,.fd-no-upcoming,.fd-empty p,.fd-disclaimer){color:var(--muted)}
html[data-theme=dark] :is(.data-table td,.data-table th,.admin-header,.fd-related-card){border-color:var(--line)}
html[data-theme=dark] :is(.fd-hero,.fd-empty,.fd-shift__date){background:var(--soft);color:var(--text)}
html[data-theme=dark] :is(.fd-header,.fd-footer){background:#102b1e}
html[data-theme=dark] :is(.fd-related-card,.fd-related-card__content){background:var(--surface);color:var(--text)}
html[data-theme=dark] :is(.fd-disclaimer strong,.fd-related-card__category,.fd-shift__body a){color:var(--accent)}
html[data-theme=dark] .badge{background:#34483c;color:#ddece2}html[data-theme=dark] .badge.active{background:#244d36;color:#9ce5b8}
html[data-theme=dark] .notice.error{background:#492b2b;color:#ffd0d0}html[data-theme=dark] .notice.success{background:#204932;color:#c0f0d1}
html[data-theme=dark] .button.primary{background:#217b4f;color:white}html[data-theme=dark] .danger{color:var(--danger)}
.appearance-toggle{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer;padding:0}.appearance-toggle:hover{background:var(--soft)}.appearance-toggle__sun{display:none}html[data-theme=dark] .appearance-toggle__moon{display:none}html[data-theme=dark] .appearance-toggle__sun{display:block}
.workspace-brand{display:inline-flex;width:118px;height:38px;overflow:hidden;position:relative;background:#fff;border-radius:5px;flex:none}.workspace-brand img{position:absolute;width:175px;height:175px;max-width:none;left:-29px;top:-74px}
.workspace-top{display:flex;align-items:center;gap:14px;width:100%;flex-wrap:wrap}.workspace-top .account-name{margin-left:auto;font-size:12px}.admin-header{display:flex;flex-direction:column;align-items:stretch;gap:15px}.workspace-nav{display:flex;flex-wrap:wrap;gap:9px 18px;font-size:13px}.workspace-nav a{text-decoration:none}.workspace-nav a:hover{text-decoration:underline}.workspace-top form{margin:0}
.auth-wrap{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;padding:30px 16px}.auth-toolbar{width:min(100%,420px);display:flex;align-items:center;justify-content:space-between;gap:20px}.auth-card{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:22px;padding:30px;width:min(100%,420px);box-shadow:0 12px 40px #133c2510}.auth-card h1{font-size:30px;margin:0 0 8px}.auth-card .subtitle{color:var(--muted);font-size:14px;line-height:1.6;margin-bottom:24px}.google-auth-button{display:flex;justify-content:center;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;min-height:49px;text-decoration:none;font-weight:700;background:var(--surface);color:var(--text)}.google-auth-button svg{width:21px;height:21px}.auth-alternative{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.auth-alternative summary{cursor:pointer;font-size:14px;font-weight:600}.password-wrap{display:flex;gap:6px}.password-wrap input{min-width:0}.password-wrap button{background:transparent;color:var(--text);border:1px solid var(--line);border-radius:8px;cursor:pointer}.auth-help{font-size:12px;color:var(--muted);line-height:1.6}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:16px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekday{font-size:12px;text-align:center;color:var(--muted);padding:8px 0}.calendar-day{min-height:100px;padding:8px;border:1px solid var(--line);border-radius:8px;min-width:0;text-decoration:none;overflow:hidden;color:var(--text);background:var(--surface)}.calendar-day.off-month{opacity:.55}.calendar-day.selected{outline:2px solid var(--accent);outline-offset:-2px}.calendar-day strong{display:block;margin-bottom:8px}.calendar-entry{display:block;background:var(--soft);border-radius:4px;padding:3px;margin-top:3px;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-shifts{display:grid;gap:10px;margin:18px 0}.operation-card{padding:18px;margin:14px 0;overflow-wrap:anywhere}.split-sections{display:grid;gap:22px;grid-template-columns:1.2fr 1fr}.banner-preview{width:100%;max-width:560px;max-height:260px;object-fit:contain;background:var(--soft);border:1px solid var(--line);border-radius:9px}.small-note{font-size:12px;color:var(--muted);line-height:1.6}.stack{display:grid;gap:14px}.inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-form input{max-width:100%}.info-list{display:grid;grid-template-columns:150px 1fr;gap:10px;font-size:14px}.info-list dd{margin:0;overflow-wrap:anywhere}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fd-ad-tile{min-height:157px;border-radius:7px;overflow:hidden;background:linear-gradient(135deg,#0b8457,#154a39);color:#fff;display:flex;align-items:center;justify-content:center;position:relative}.fd-ad-tile img{width:100%;height:157px;object-fit:contain;display:block}.fd-ad-empty{padding:26px 16px;line-height:1.6;text-align:center}.fd-ad-empty small{display:block;font-size:10px;opacity:.85}.fd-ad-label{position:absolute;bottom:5px;right:7px;background:#123c2c;color:#fff;font-size:9px;border-radius:4px;padding:2px 5px}.fd-header__inner{gap:18px}.fd-navigation{gap:20px}.account-name{overflow-wrap:anywhere}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #37a975;outline-offset:3px}
@media(max-width:760px){.split-sections,.card-grid{grid-template-columns:1fr}.calendar-day{min-height:74px;padding:4px}.calendar-entry{font-size:9px;padding:2px}.calendar-day strong{font-size:12px;margin-bottom:3px}.workspace-top .account-name{max-width:110px}.workspace-top{gap:10px}.admin-header{position:static;padding:14px}.workspace-nav{font-size:12px;gap:10px 16px}.auth-card{padding:25px 20px}.info-list{grid-template-columns:1fr;gap:4px}.fd-header__inner{gap:10px}.fd-header .fd-contact-button{display:none}}
@media(max-width:530px){.fd-ad-tile,.fd-ad-tile img{min-height:125px;height:125px}.calendar-grid{gap:2px}.calendar-day{min-height:64px}.calendar-entry{font-size:8px}.workspace-top .account-name{display:none}.workspace-top .appearance-toggle{margin-left:auto}}

/* Allow the 320px viewport to account for a visible scrollbar. */
body.fd-site{min-width:0}

/* Login layout: position controls without modifying Blade or authentication. */
.auth-wrap{position:relative;min-height:100vh;min-height:100dvh;justify-content:center}
.auth-toolbar{justify-content:center}
.auth-toolbar>.appearance-toggle{position:fixed;top:20px;right:20px;z-index:20}
@media(max-width:530px){.auth-toolbar>.appearance-toggle{top:15px;right:15px}}

.password-visibility-toggle{width:46px;min-width:46px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.password-visibility-toggle:hover{background:var(--soft)}.password-visibility-toggle .password-eye-slash{display:none}.password-visibility-toggle[aria-pressed=true] .password-eye-slash{display:block}.password-visibility-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

/* Administrative workspace sidebar: isolated from public site styling. */
.drago-workspace{display:block;min-height:100vh}
.drago-sidebar{position:fixed;inset:0 auto 0 0;width:258px;z-index:50;display:flex;flex-direction:column;padding:22px 15px 15px;overflow-y:auto;background:var(--surface);border-right:1px solid var(--line)}
.drago-sidebar__brand{margin:0 0 25px 8px}
.drago-sidebar__nav{display:grid;align-content:start;gap:3px}
.drago-sidebar__section{display:block;margin:18px 11px 7px;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800;color:var(--muted)}
.drago-sidebar__nav a{display:flex;align-items:center;gap:11px;min-height:42px;padding:8px 12px;border-radius:10px;text-decoration:none;color:var(--text);font-weight:650;font-size:13px}
.drago-sidebar__nav a:hover{background:var(--soft)}
.drago-sidebar__nav a.active{background:var(--soft);color:var(--accent);font-weight:800}
.drago-sidebar__nav a span{flex:1}
.drago-sidebar__bottom{margin-top:auto;padding:18px 10px 0;border-top:1px solid var(--line);display:grid;gap:4px}
.drago-sidebar__bottom strong{font-size:13px;overflow-wrap:anywhere}
.drago-sidebar__bottom small{font-size:11px;color:var(--muted)}
.drago-sidebar__actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}
.drago-sidebar__actions .link-button{color:var(--text);padding:9px 0}
.drago-workspace__content{margin-left:258px;min-width:0}
.drago-workspace__content .admin-main{max-width:1152px}
.drago-mobile-bar,.drago-sidebar__backdrop{display:none}
.drago-menu-trigger{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);width:42px;height:42px;cursor:pointer;font-size:23px}
.calendar-day{font:inherit;text-align:left;cursor:pointer;color:var(--text)}
.calendar-day:hover{border-color:var(--accent)}
.calendar-dialog{width:min(460px,calc(100% - 28px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 22px 80px #0005}
.calendar-dialog::backdrop{background:#061b12ad}
.calendar-dialog__form{padding:25px;display:grid;gap:18px}
.calendar-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.calendar-dialog__header h2{margin:0}
.calendar-dialog__close{width:36px;height:36px;border:1px solid var(--line);background:var(--soft);color:var(--text);border-radius:9px;cursor:pointer;font-size:25px}
.calendar-dialog .button{width:100%}
@media(max-width:900px){
 .drago-sidebar{width:min(85vw,290px);transform:translateX(-102%);transition:transform .2s ease;box-shadow:15px 0 45px #0002}
 body.drago-menu-open .drago-sidebar{transform:translateX(0)}
 body.drago-menu-open .drago-sidebar__backdrop{display:block;position:fixed;inset:0;z-index:40;background:#07191095}
 .drago-workspace__content{margin-left:0}
 .drago-mobile-bar{display:flex;position:sticky;top:0;z-index:35;min-height:64px;padding:8px 16px;align-items:center;gap:12px;background:var(--surface);border-bottom:1px solid var(--line)}
 .drago-mobile-bar span{font-weight:800;margin-right:auto}
 .drago-mobile-bar .appearance-toggle{flex:none}
 .drago-workspace__content .admin-main{padding-top:22px}
}
@media(prefers-reduced-motion:reduce){.drago-sidebar{transition:none}}

.pharmacy-mobile-list{display:none}
@media(max-width:760px){.pharmacy-mobile-list{display:grid;gap:12px}.pharmacy-desktop-table{display:none}.pharmacy-mobile-item{padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}.pharmacy-mobile-item strong,.pharmacy-mobile-item p{overflow-wrap:anywhere}.pharmacy-mobile-item p{font-size:13px;color:var(--muted);margin:7px 0}.pharmacy-mobile-item .button{align-self:flex-start}.drago-sidebar__actions{flex-direction:column;align-items:stretch}.drago-sidebar__actions .appearance-toggle{align-self:start}.drago-sidebar__actions .link-button{display:block;width:100%;min-height:42px;border:1px solid var(--line);border-radius:10px;text-align:center;background:var(--surface);font-weight:700}}


.drago-sidebar__nav details summary{padding:12px;cursor:pointer;font-size:14px;font-weight:700;line-height:1.5}
.drago-sidebar__nav details a{padding-left:24px}
.access-picker{border:1px solid var(--line);border-radius:12px;padding:18px;margin-top:20px;max-height:430px;overflow:auto}
.access-picker [hidden]{display:none!important}
.access-picker .check-row{min-height:44px;overflow-wrap:anywhere}
html[data-theme=dark] .fd-schedule .fd-shift,html[data-theme=dark] .fd-related-grid .fd-directory-card{background:var(--surface);color:var(--text);border-color:var(--line)}
html[data-theme=dark] .fd-shift .fd-shift__date{background:#28312c;color:var(--text)}
html[data-theme=dark] .fd-shift.fd-shift--current{border-color:#70c69a}
html[data-theme=dark] .fd-shift--current .fd-shift__date{background:linear-gradient(125deg,#174831,#246d46);color:#fff}
html[data-theme=dark] .fd-shift .fd-duty-label{color:#123b25;background:#d9f0e2}
html[data-theme=dark] .fd-contact-links a,html[data-theme=dark] .fd-shift .fd-contact-links a{background:var(--soft);color:var(--accent);border-color:var(--line)}
html[data-theme=dark] .fd-directory-photo{background:#23332a}
html[data-theme=dark] .fd-photo-placeholder{color:var(--muted)}

/* FaceDog-style administrative navigation accents. */
.drago-sidebar__nav>a,.drago-sidebar__nav>details>summary{display:flex;align-items:center;gap:11px}
.drago-nav-icon{width:19px;height:19px;flex:none}
.drago-sidebar__nav>a.active{background:var(--soft);border-radius:11px}
.drago-sidebar__nav>details>summary{cursor:pointer;list-style:none;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:750;color:var(--text)}
.drago-sidebar__nav>details>summary::-webkit-details-marker{display:none}
.drago-sidebar__nav>details>summary:after{content:"⌄";margin-left:auto;font-size:16px}
.drago-sidebar__nav>details[open]>summary:after{transform:rotate(180deg)}
.drago-sidebar__nav>details>summary:hover{background:var(--soft)}
.drago-sidebar__nav>details>a{padding-left:43px}
.drago-sidebar__bottom{gap:5px}
.drago-sidebar__bottom small{overflow-wrap:anywhere}
.drago-logout-form{margin-top:12px}
.drago-logout-button{width:100%;min-height:41px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-size:13px;font-weight:750;cursor:pointer}
.drago-logout-button:hover{background:var(--soft)}

/* Flat Lucide-style line icon navigation, consistent sizing and rhythm. */
.drago-sidebar__nav{gap:5px}.drago-sidebar__nav>a{min-height:44px;padding:10px 12px;border-radius:11px;font-size:14px;font-weight:700;gap:12px}.drago-sidebar__nav>a:hover{background:var(--soft)}.drago-sidebar__nav>a.active{color:var(--accent)}.drago-nav-icon{width:20px;height:20px;stroke-width:1.8}

/* Calendar today marker and desktop-only management of existing entries. */
.calendar-day.calendar-today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.calendar-day.calendar-today>strong{color:var(--accent)}
.calendar-day.calendar-today>strong::after{content:" · Hoy";font-size:10px;font-weight:700}
@media(min-width:761px){.calendar-entry[data-shift-id]{cursor:pointer;position:relative}.calendar-entry[data-shift-id]:hover{background:#cfe8d9}.calendar-entry[data-shift-id]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}}
@media(max-width:760px){.calendar-entry[data-shift-id]{pointer-events:none}}

/* Public dark mode: neutral surfaces and hierarchy; green is reserved for active duty and actions. */
html[data-theme=dark] body.fd-site{background:#101413;color:#e6ece8}
html[data-theme=dark] .fd-hero{background:#19221e;color:#f0f5f1}
html[data-theme=dark] .fd-hero p{color:#aab9af}
html[data-theme=dark] .fd-section,html[data-theme=dark] .fd-related{color:#e6ece8}
html[data-theme=dark] .fd-schedule .fd-shift,html[data-theme=dark] .fd-related-grid .fd-directory-card{background:#1c2320;color:#e9eee9;border-color:#39443d}
html[data-theme=dark] .fd-shift:not(.fd-shift--current) .fd-shift__date{background:#272d29;color:#dbe3dd}
html[data-theme=dark] .fd-shift--current .fd-shift__date{background:linear-gradient(125deg,#174831,#246d46);color:#fff}
html[data-theme=dark] .fd-shift.fd-shift--current{border-color:#60ae7d;background:#1b2821}
html[data-theme=dark] .fd-related-card__content p,html[data-theme=dark] .fd-shift__body p{color:#abb9af}
html[data-theme=dark] .fd-directory-note{color:#98a99e}
html[data-theme=dark] .fd-directory-photo,html[data-theme=dark] .fd-directory-photo .fd-photo-placeholder{background:#2d3330}
html[data-theme=dark] .fd-directory-card .fd-directory-logo-slot{background:#323a35;border-color:#465047}
html[data-theme=dark] .fd-directory-card .fd-contact-links--directory a,html[data-theme=dark] .fd-shift--current .fd-contact-links--current a{background:#293a30;color:#b7e6c8;border-color:#435c4b}
html[data-theme=dark] .fd-shift--upcoming .fd-contact-links--upcoming a{background:transparent;border:0;color:#b7c8bc}
html[data-theme=dark] .fd-shift .fd-duty-label{background:#dcefe1;color:#185837}
html[data-theme=dark] .fd-footer{background:#16231b}

/* Keep the mobile admin navigation trigger on the right. */
@media(max-width:900px){
 .drago-mobile-bar>span{order:0;margin-right:auto;margin-left:0}
 .drago-mobile-bar>.drago-menu-trigger{order:2;margin-left:auto;flex:none}
}

/* Admin-only dark palette: neutral hierarchy, green reserved for meaning. */
html[data-theme=dark] body:has(.drago-workspace){background:#111417;color:#e8eaed}
html[data-theme=dark] .drago-workspace{
  --bg:#111417;--surface:#1c2024;--text:#e8eaed;--muted:#a1aab4;
  --line:#353d44;--soft:#272d32;--accent:#6bd6a0;--danger:#ff9e9e;
  background:var(--bg);color:var(--text);
}
html[data-theme=dark] .drago-workspace .drago-sidebar{
  background:#191e22;border-right-color:#333b42;
}
html[data-theme=dark] .drago-workspace .drago-sidebar__nav a{
  color:#d5dbe0;
}
html[data-theme=dark] .drago-workspace .drago-sidebar__nav a:hover{
  background:#292f35;color:#fff;
}
html[data-theme=dark] .drago-workspace .drago-sidebar__nav a.active{
  background:#273c32;color:#83e0ae;
}
html[data-theme=dark] .drago-workspace .drago-sidebar__nav a.active .drago-nav-icon{color:#83e0ae}
html[data-theme=dark] .drago-workspace :is(.panel,.form-actions,.calendar-dialog,.drago-mobile-bar){
  background:var(--surface);color:var(--text);border-color:var(--line);
}
html[data-theme=dark] .drago-workspace :is(.calendar-day,.calendar-dialog__close){
  background:#20252a;border-color:#394047;color:#e5e9ec;
}
html[data-theme=dark] .drago-workspace .calendar-day:hover{border-color:#79858c;background:#272d32}
html[data-theme=dark] .drago-workspace .calendar-day.off-month{
  background:#191e22;color:#7f8a93;opacity:1;
}
html[data-theme=dark] .drago-workspace .calendar-entry{
  background:#30383d;color:#dfe5e8;
}
html[data-theme=dark] .drago-workspace .calendar-entry[data-shift-id]:hover{background:#40494e}
html[data-theme=dark] .drago-workspace .calendar-day.calendar-today{
  background:#202a26;border-color:#61c992;box-shadow:inset 0 0 0 1px #61c992;
}
html[data-theme=dark] .drago-workspace .calendar-day.calendar-today>strong{color:#83dfac}
html[data-theme=dark] .drago-workspace .page-heading .eyebrow{color:#9ba6af}
html[data-theme=dark] .drago-workspace :is(.pharmacy-form-section p,.pharmacy-media-field>p,.small-note){color:var(--muted)}
html[data-theme=dark] .drago-workspace :is(.pharmacy-media-field,.pharmacy-media-preview,.access-picker){
  border-color:var(--line);
}
html[data-theme=dark] .drago-workspace .pharmacy-media-preview{background:#252b30}
html[data-theme=dark] .drago-workspace .drago-logout-button{
  background:transparent;color:#dce2e6;border-color:var(--line);
}
html[data-theme=dark] .drago-workspace .drago-logout-button:hover{background:#2b3237}
html[data-theme=dark] .drago-workspace .button.primary{background:#267a55;color:#fff}
html[data-theme=dark] .drago-workspace :is(input,select,textarea,.button.secondary){
  background:#171c20!important;color:#e8eaed!important;border-color:#434c53!important;
}
html[data-theme=dark] .drago-workspace :is(input,textarea)::placeholder{color:#8c98a2}
@media(max-width:700px){
  html[data-theme=dark] .drago-workspace .pharmacy-editor-form.panel{background:transparent;border:0}
  html[data-theme=dark] .drago-workspace .pharmacy-editor-form .form-actions{
    background:#1c2024;border-top-color:#353d44;
  }
}

/* Public dark mode: neutral hierarchy. Empty advertising and directory cards
   are ordinary surfaces; only live duty/meaningful actions use green. */
html[data-theme=dark] body.fd-site{background:#111514;color:#e4eae6}
html[data-theme=dark] body.fd-site .fd-header{background:#1b2520}
html[data-theme=dark] body.fd-site .fd-hero{background:#1d2521}
html[data-theme=dark] body.fd-site .fd-footer{background:#1a2520}
html[data-theme=dark] body.fd-site .fd-schedule .fd-shift--upcoming{
  background:#212725;color:#e1e7e3;border-color:#3b4540;
}
html[data-theme=dark] body.fd-site .fd-shift--upcoming .fd-shift__date{
  background:#2b322e;color:#dfe7e0;
}
html[data-theme=dark] body.fd-site .fd-related-grid .fd-directory-card{
  background:#232927;color:#e5eae7;border-color:#3b4540;
}
html[data-theme=dark] body.fd-site .fd-related-grid .fd-directory-card .fd-related-card__content{
  background:#232927;color:#e5eae7;
}
html[data-theme=dark] body.fd-site .fd-related-grid .fd-directory-card .fd-directory-photo,
html[data-theme=dark] body.fd-site .fd-related-grid .fd-directory-card .fd-photo-placeholder{
  background:#303735;
}
html[data-theme=dark] body.fd-site .fd-related-grid .fd-directory-card .fd-directory-logo-slot{
  background:#303735;border-color:#414a46;
}
html[data-theme=dark] body.fd-site .fd-directory-card .fd-contact-links--directory a{
  background:#303a35;color:#b9d9c6;border-color:#44534a;
}
html[data-theme=dark] body.fd-site .fd-directory-card .fd-related-card__content p,
html[data-theme=dark] body.fd-site .fd-shift--upcoming .fd-shift__body p{
  color:#aab8b0;
}
html[data-theme=dark] body.fd-site .fd-shift--current{
  background:#202b24;border-color:#568769;
}
html[data-theme=dark] body.fd-site .fd-shift--current .fd-shift__date{
  background:#23583e;color:#fff;
}
html[data-theme=dark] body.fd-site .fd-schedule .fd-shift--current .fd-contact-links a{
  background:#303c34;color:#d4e8da;border-color:#495d4d;
}
html[data-theme=dark] body.fd-site .fd-schedule .fd-shift--current .fd-contact-links a.fd-route-action{
  background:#303c34;color:#d4e8da;border-color:#495d4d;
}
html[data-theme=dark] body.fd-site .fd-ad-tile{
  background:#252d29;
  border:1px solid #36413a;
}
html[data-theme=dark] body.fd-site .fd-ad-tile .fd-ad-empty{color:#9daaa2}
html[data-theme=dark] body.fd-site .fd-ad-tile .fd-ad-label{
  background:#303a33;color:#b4c4ba;
}

/* Public dark hierarchy: distinct navigation, quiet hero and unobtrusive empty ad slots. */
html[data-theme=dark] body.fd-site .fd-header{
  background:#14291f;
  border-bottom:0;
  box-shadow:none;
}
html[data-theme=dark] body.fd-site .fd-hero{
  background:#1d2421;
  border-bottom:0;
}
html[data-theme=dark] body.fd-site .fd-ad-tile{
  background:#181e1b;
  border:1px solid #2b3530;
  box-shadow:none;
}
html[data-theme=dark] body.fd-site .fd-ad-tile .fd-ad-empty{
  color:#82928a;
}
html[data-theme=dark] body.fd-site .fd-ad-tile .fd-ad-empty strong{
  color:#9baba2;
}
html[data-theme=dark] body.fd-site .fd-shift--upcoming .fd-shift__body .fd-directions-link{
  color:#b5d2c0;
}

/* Shared public dark surface hierarchy across home, store, cart and checkout.
   The light theme remains untouched. */
html[data-theme=dark] body.shop-page{
  --shop-bg:#111514;
  --shop-surface:#232927;
  --shop-text:#e5eae7;
  --shop-muted:#aab8b0;
  --shop-border:#3b4540;
  --shop-action:#267a55;
  background:var(--shop-bg);color:var(--shop-text);
}
html[data-theme=dark] body.shop-page .shop-product,
html[data-theme=dark] body.shop-page .shop-panel,
html[data-theme=dark] body.shop-page .shop-cart-drawer{
  background:var(--shop-surface);color:var(--shop-text);border-color:var(--shop-border);
}
html[data-theme=dark] body.shop-page .shop-product>img,
html[data-theme=dark] body.shop-page .shop-placeholder{background:#303735}
html[data-theme=dark] body.shop-page .shop-heading>p:first-child,
html[data-theme=dark] body.shop-page .shop-muted{color:var(--shop-muted)}
html[data-theme=dark] body.shop-page input,
html[data-theme=dark] body.shop-page textarea{
  background:#1b211e;color:var(--shop-text);border-color:var(--shop-border);
}

/* Login email accordion and password reveal: subtle, accessible motion. */
.auth-card .auth-alternative>summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:9px;padding:7px 10px;border-radius:9px;color:var(--text);transition:background-color .2s ease,color .2s ease}
.auth-card .auth-alternative>summary::-webkit-details-marker{display:none}
.auth-card .auth-alternative>summary::marker{content:""}
.auth-card .auth-alternative>summary:hover{background:transparent}
.auth-card .auth-alternative>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.auth-alternative__chevron{flex:none;transition:transform .25s cubic-bezier(.2,.75,.2,1)}
.auth-alternative[open] .auth-alternative__chevron{transform:rotate(180deg)}
.auth-card .auth-alternative::details-content{height:0;overflow:hidden;opacity:0;transition:height .3s cubic-bezier(.2,.75,.2,1),opacity .25s ease,content-visibility .3s;transition-behavior:allow-discrete}
.auth-card .auth-alternative[open]::details-content{height:auto;opacity:1}
@supports(interpolate-size:allow-keywords){.auth-card .auth-alternative{interpolate-size:allow-keywords}}
.auth-card .auth-alternative form{padding-top:9px}
.auth-card .password-wrap{position:relative;display:block}
.auth-card .password-wrap input{width:100%;padding-right:51px}
.auth-card .password-wrap .password-visibility-toggle{position:absolute;top:50%;right:7px;transform:translateY(-50%);height:36px;width:36px;display:grid;place-items:center;border:0;background:transparent;border-radius:9px;color:var(--muted);transition:background-color .2s ease,color .2s ease}
.auth-card .password-wrap .password-visibility-toggle:hover{background:var(--soft);color:var(--text)}
.auth-card .password-wrap .password-visibility-toggle svg{width:19px;height:19px;transition:transform .2s ease}
.auth-card .password-wrap .password-visibility-toggle:active svg{transform:scale(.9)}
@media(prefers-reduced-motion:reduce){.auth-card .auth-alternative::details-content,.auth-alternative__chevron,.auth-card .password-wrap .password-visibility-toggle,.auth-card .password-wrap .password-visibility-toggle svg{transition:none}}

/* Login logo: enlarge only the white plate, preserving the artwork's size. */
.auth-toolbar .workspace-brand{width:134px;height:50px;border-radius:6px}
.auth-toolbar .workspace-brand img{left:-21px;top:-68px}

/* Mi cuenta: responsive settings cards with shared Drago palette. */
.drago-account-settings{display:grid;gap:16px;max-width:980px}
.drago-account-settings>.form-card{display:grid;gap:12px}
.drago-account-settings h2{font-size:18px;margin:0 0 4px}
.drago-account-section{padding:20px}
.drago-account-section>.small-note,.drago-account-session .small-note{margin:0 0 16px}
.drago-account-appearance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.drago-account-theme-option{display:flex;align-items:center;gap:13px;width:100%;min-height:74px;padding:14px 16px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.drago-account-theme-option>svg{width:24px;height:24px;flex:none}
.drago-account-theme-option span{display:grid;gap:3px}
.drago-account-theme-option strong{font-size:14px}
.drago-account-theme-option small{font-size:12px;color:var(--muted);line-height:1.4}
.drago-account-theme-option[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
.drago-account-theme-option:hover{border-color:var(--accent)}
.drago-account-theme-option:focus-visible,.drago-account-system:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.drago-account-system{display:inline-flex;margin-top:12px;padding:4px 0;background:none;border:0;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.drago-account-system[aria-pressed=true]{color:var(--accent);font-weight:700}
.drago-account-session{display:flex;align-items:center;justify-content:space-between;gap:20px}
.drago-account-session .small-note{margin:0}
.drago-account-session form{margin:0}
.drago-account-session .button{white-space:nowrap}
@media(max-width:760px){.drago-account-appearance{grid-template-columns:1fr}.drago-account-session{align-items:stretch;flex-direction:column;gap:14px}.drago-account-session .button{width:100%}}
@media(prefers-reduced-motion:reduce){.drago-account-theme-option{transition:none}}

/* Shop management: consistent with existing admin panels. */
.drago-shop-admin-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0 22px}
.drago-shop-admin-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none;font-size:13px;font-weight:650}
.drago-shop-admin-nav a:hover{background:var(--soft)}
.drago-shop-admin-nav a.active{background:var(--soft);border-color:var(--accent);color:var(--accent)}
.drago-shop-admin-panel{padding:22px;display:grid;gap:14px}
.drago-shop-admin-panel h2{margin:0;font-size:18px}
.drago-shop-admin-panel .small-note{margin:0}
.drago-shop-admin-panel>.button{justify-self:start}
@media(max-width:700px){.drago-shop-admin-panel{padding:16px}.drago-shop-admin-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.drago-shop-admin-nav a{padding:8px 5px;font-size:12px}.drago-shop-admin-panel>.button{width:100%}}

/* Login: recovered password link belongs to expanded email form; signup has its own centered footer. */
.auth-card .auth-recovery-link{display:block;justify-self:start;width:fit-content;margin-top:11px;color:var(--accent);font-size:12px;font-weight:650;text-decoration:none}
.auth-card .auth-recovery-link:hover{text-decoration:underline;text-underline-offset:3px}
.auth-card .auth-recovery-link:focus-visible,.auth-card .auth-signup-prompt a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.auth-card .auth-signup-prompt{margin-top:19px;padding-top:18px;border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:13px;line-height:1.6}
.auth-card .auth-signup-prompt a{color:var(--accent);font-weight:700;text-decoration:none}
.auth-card .auth-signup-prompt a:hover{text-decoration:underline;text-underline-offset:3px}
