/* Senorita unified preview, approved 2026-09-07. Shared by product and admin. */
@font-face {
  font-family: Manrope;
  src: url("../vendor/manrope/Manrope.ttf") format("truetype");
  font-weight: 200 800;
  font-display: swap;
}
:root, [data-bs-theme="light"], [data-theme="light"] {
  color-scheme: light;
  --sen-bg: #edf0e9;
  --sen-surface: #fbfcf7;
  --sen-ink: #153d30;
  --sen-muted: #526357;
  --sen-line: #ccd6c9;
  --sen-soft: #e2e9dc;
  --sen-gold: #88621e;
  --sen-gold-fill: #dfbd79;
  --sen-accent: #184b37;
  --sen-on-accent: #fff9e8;
  --sen-selected: #eee3c3;
  --sen-selected-ink: #173d2c;
  --sen-danger: #9a392c;
  --sen-danger-bg: #fff0e8;
  --sen-header: #123b2b;
  --sen-header-text: #f2ebd2;
  --sen-weekend: #f0f2e9;
  --sen-shift-morning-ink: #174f38;
  --sen-shift-evening-ink: #69480d;
  --sen-shift-admin-ink: #294f63;
  --sen-shift-off-ink: #4e6255;
  --sen-shift-leave-ink: #31566d;
  --sen-shift-sick-ink: #7a3f4b;
  --sen-shadow: 0 14px 50px #143b2410;
  --sen-ornament-opacity: .085;
  --sen-glass: color-mix(in srgb, var(--sen-surface) 88%, transparent);
  --sen-ease: cubic-bezier(.22, 1, .36, 1);
  --sen-font: Manrope, Arial, sans-serif;
}
[data-bs-theme="dark"], [data-theme="dark"] {
  color-scheme: dark;
  --sen-bg: #112b23;
  --sen-surface: #18372b;
  --sen-ink: #e9ebd9;
  --sen-muted: #b1c3ae;
  --sen-line: #47624e;
  --sen-soft: #284633;
  --sen-gold: #e3c17d;
  --sen-accent: #e0bf7e;
  --sen-on-accent: #193929;
  --sen-selected: #49482f;
  --sen-selected-ink: #f5e9c6;
  --sen-danger: #ffb79f;
  --sen-danger-bg: #4a3028;
  --sen-header: #10291f;
  --sen-header-text: #eee9cf;
  --sen-weekend: #203b2b;
  --sen-shift-morning-ink: #e5f2e7;
  --sen-shift-evening-ink: #fff0c5;
  --sen-shift-admin-ink: #e3f0f6;
  --sen-shift-off-ink: #d2dfd3;
  --sen-shift-leave-ink: #e3f1f9;
  --sen-shift-sick-ink: #f7e5e9;
  --sen-shadow: 0 14px 50px #0002;
  --sen-ornament-opacity: .13;
}
.sen-brand { display: inline-flex; align-items: center; flex: none; }
.sen-brand img { display: block; width: 118px; height: auto; }
.sen-brand .brand-on-dark { display: none; }
[data-bs-theme="dark"] .sen-brand .brand-on-light,
[data-theme="dark"] .sen-brand .brand-on-light,
.sen-dark-surface .sen-brand .brand-on-light { display: none; }
[data-bs-theme="dark"] .sen-brand .brand-on-dark,
[data-theme="dark"] .sen-brand .brand-on-dark,
.sen-dark-surface .sen-brand .brand-on-dark { display: block; }
body { isolation: isolate; }
body::before, dialog.work-drawer::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  user-select: none;
  background: linear-gradient(140deg, var(--sen-gold), var(--sen-ink) 65%, transparent);
  mask: url("../brand/senorita-mark.png") right -65px center / auto 125vh no-repeat;
  opacity: var(--sen-ornament-opacity);
}
dialog.work-drawer { isolation: isolate; }
dialog.work-drawer::before { position: absolute; mask-position: right -30px top; mask-size: auto 110vh; }
.interface-preferences { display: flex; align-items: center; gap: 10px; }
.interface-preferences .preference-circle { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-height: 44px; padding: 0; border: 1px solid #78936b; border-radius: 50%; background: transparent; color: #f2ebd2; cursor: pointer; font: 600 12px var(--sen-font); }
.interface-preferences summary { list-style: none; }
.interface-preferences summary::-webkit-details-marker { display: none; }
.profile-menu { position: relative; }
.profile-menu > summary { background: #345540 !important; }
.profile-menu-content { position: absolute; top: calc(100% + 10px); right: 0; z-index: 500; box-sizing: border-box; width: 230px; max-width: calc(100vw - 32px); padding: 12px; border-radius: 12px; border: 1px solid var(--sen-line); background: var(--sen-surface); color: var(--sen-ink); box-shadow: 0 12px 40px #0003; }
.profile-menu-content a, .profile-menu-content .preference-form button { display: flex; align-items: center; box-sizing: border-box; width: 100%; min-height: 44px; padding: 8px 12px; border: 0; border-radius: 6px; background: transparent; color: var(--sen-ink); text-decoration: none; font: 14px var(--sen-font); text-align: left; }
.profile-menu-content a:hover, .profile-menu-content button:hover, .profile-menu-content button[aria-pressed="true"] { background: var(--sen-soft); }
.profile-menu-content .language-preference { display: block; }
.profile-menu-content fieldset { border: 0; margin: 8px 0 0; padding: 8px 0 0; width: 100%; border-top: 1px solid var(--sen-line); }
.profile-menu-content legend { float: none; width: auto; padding: 0 12px; font-size: 12px; color: var(--sen-muted); }
.profile-menu-content .profile-menu-logout { display: block; width: 100%; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--sen-line); }
.theme-sun { display: none; }
[data-theme="dark"] .theme-sun { display: block; }
[data-theme="dark"] .theme-moon { display: none; }
@media print { body::before { display: none; } }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
