/* v457 – optionales Halloween-Theme. Alle App-Effekte sind an das Root-Attribut
   gebunden; Standard erhält das bisherige Design ohne zusätzliche Dekoration. */

/* Theme-Auswahl ist auch im Standard-Design sichtbar. */
.settings-seasonal-theme-v457 { display:grid; gap:.6rem; margin:1.15rem 0; padding-top:1rem; border-top:1px solid var(--border); }
.settings-seasonal-theme-v457 > strong { font-size:.95rem; }
.settings-seasonal-theme-v457 > p { margin:0; font-size:.8rem; line-height:1.5; }
.settings-seasonal-grid-v457 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.settings-seasonal-choice-v457 { position:relative; display:grid; gap:.3rem; min-width:0; padding:.65rem; border:1px solid var(--border); border-radius:17px; background:var(--bg-card); color:var(--text-dark); font:inherit; text-align:left; cursor:pointer; transition:border-color .16s,box-shadow .16s; }
.settings-seasonal-choice-v457 > strong { font-size:.85rem; line-height:1.4; }
.settings-seasonal-choice-v457 > small { color:var(--text-medium); font-size:.7rem; line-height:1.4; }
.settings-seasonal-choice-v457.is-selected { border-color:var(--accent-deep); box-shadow:0 0 0 2px var(--accent-soft-bg); }
.settings-seasonal-choice-v457.is-selected::after { content:'✓'; position:absolute; top:.95rem; left:.95rem; display:grid; place-items:center; width:1.4rem; height:1.4rem; border-radius:50%; background:var(--accent-deep); color:var(--bg-card); font-size:.85rem; font-weight:800; }
.settings-seasonal-preview-v457 { position:relative; display:grid; gap:5px; height:82px; margin-bottom:.18rem; padding:16px 13px 13px 40px; overflow:hidden; border:1px solid rgba(83,64,66,.1); border-radius:12px; }
.settings-seasonal-preview-v457 i { display:block; width:72%; height:9px; border-radius:6px; }
.settings-seasonal-preview-v457 i:first-child { width:55%; }
.settings-seasonal-preview-v457 i:last-child { width:85%; height:17px; }
.settings-seasonal-preview-v457.is-standard { background:linear-gradient(140deg,#f4fbf1,#e8f0e6); }
.settings-seasonal-preview-v457.is-standard i { background:#b4d5b6; }
.settings-seasonal-preview-v457.is-standard i:last-child { background:#659573; }
.settings-seasonal-preview-v457.is-halloween { background:radial-gradient(circle at 100% 100%,#603530,transparent 75%),#231a30; }
.settings-seasonal-preview-v457.is-halloween i { background:#6b5279; }
.settings-seasonal-preview-v457.is-halloween i:last-child { width:65%; background:#e6a061; }
.settings-seasonal-preview-v457.is-halloween::after { content:''; position:absolute; width:40px; height:40px; right:4px; bottom:4px; background:url('../assets/themes/halloween/pumpkin.svg') center/contain no-repeat; }
.settings-seasonal-status-v457 { min-height:2.4em; }
.familie-halloween-scene-v457 { display:none; }

:root[data-seasonal-theme="halloween"][data-theme] {
  --bg-base:#fff7ec; --bg-card:#fffdf9; --bg-dark:#322039;
  --surface-1:#fffdf9; --surface-2:#fff2e3; --surface-3:#f5e6dc;
  --text-dark:#322039; --text-medium:#655162; --text-light:#796775; --text-white:#fff9f0;
  --wood-dark:#854421; --wood-medium:#aa6640; --wood-light:#e8b987; --wood-cream:#fff0dc;
  --border-soft:rgba(111,64,92,.14);
  --shadow-sm:0 2px 10px rgba(71,36,57,.06); --shadow-md:0 10px 28px rgba(71,36,57,.09); --shadow-lg:0 24px 58px rgba(71,36,57,.13);
  --halloween-web:#784d79; --halloween-hero-start:#ffefdc; --halloween-hero-end:#efe1f4;
  --halloween-card-glow:rgba(244,170,95,.08); --greeting-card-blend:rgba(255,239,220,.98);
}
:root[data-seasonal-theme="halloween"][data-theme="dark"] {
  --bg-base:#18101f; --bg-card:#261c2e; --bg-dark:#120c18;
  --surface-1:#261c2e; --surface-2:#302337; --surface-3:#3c2b43;
  --text-dark:#fff4e8; --text-medium:#dccbdc; --text-light:#beabc2; --text-white:#fff8ed;
  --wood-dark:#f4c595; --wood-medium:#d89961; --wood-light:#7f513b; --wood-cream:#362435;
  --border-soft:rgba(216,181,224,.16);
  --shadow-sm:0 2px 12px rgba(0,0,0,.24); --shadow-md:0 12px 32px rgba(0,0,0,.32); --shadow-lg:0 26px 64px rgba(0,0,0,.42);
  --halloween-web:#e0c6e8; --halloween-hero-start:#392139; --halloween-hero-end:#251d38;
  --halloween-card-glow:rgba(244,170,95,.05); --greeting-card-blend:rgba(57,33,57,.98);
}

:root[data-seasonal-theme="halloween"][data-theme] body {
  background:radial-gradient(ellipse at 0% 0%,rgba(230,157,78,.10),transparent 35rem),radial-gradient(ellipse at 100% 60%,rgba(137,89,173,.08),transparent 38rem),var(--bg-base) !important;
  color:var(--text-dark);
}
:root[data-seasonal-theme="halloween"][data-theme] body::before {
  background-image:radial-gradient(circle at 12% 14%,rgba(237,158,78,.07),transparent 36%),radial-gradient(circle at 92% 75%,rgba(146,98,172,.06),transparent 40%) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.navbar,.mobile-bottom-nav,.card,.auth-card,.modal-content,.confirm-box,.nav-user-dropdown,.nav-links,.mobile-nav-sheet,.category-sheet,.notification-inbox-sheet,.admin-settings-detail,.system-card) {
  background:var(--bg-card) !important; border-color:var(--border-soft) !important; color:var(--text-dark);
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.dashboard-tile,.home-summary-tile,.admin-settings-row) {
  background:linear-gradient(145deg,var(--halloween-card-glow),transparent 80%),var(--bg-card) !important;
  border-color:var(--border-soft) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.form-control,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="submit"]):not([type="button"]),textarea,select) {
  background:var(--surface-2) !important; color:var(--text-dark) !important; border-color:var(--border-soft) !important;
}
:root[data-seasonal-theme="halloween"][data-theme] :is(h1,h2,h3,h4) { color:var(--text-dark); }

/* Header- und Begrüßungsdeko nutzt die bestehenden Flächen und bleibt
   ohne Eingabe-Ziele. Weitere Bildschirmdeko folgt im v458-Abschnitt. */
:root[data-seasonal-theme="halloween"] .navbar::before,
:root[data-seasonal-theme="halloween"] .navbar::after {
  content:''; position:absolute; top:0; right:0; width:clamp(44px,14vw,112px); height:100%; max-height:112px; max-width:22%; z-index:0;
  background:var(--halloween-web); -webkit-mask:url('../assets/themes/halloween/web.svg') top right/contain no-repeat; mask:url('../assets/themes/halloween/web.svg') top right/contain no-repeat;
  opacity:.22; pointer-events:none;
}
:root[data-seasonal-theme="halloween"] .navbar::before { left:0; right:auto; transform:scaleX(-1); }
:root[data-seasonal-theme="halloween"] .navbar-inner { position:relative; z-index:1; }
:root[data-seasonal-theme="halloween"] .navbar-brand-logo { position:relative; }
:root[data-seasonal-theme="halloween"] .navbar-brand-logo svg { visibility:hidden; }
:root[data-seasonal-theme="halloween"] .navbar-brand-logo::after { content:''; position:absolute; inset:1px; background:url('../assets/themes/halloween/pumpkin.svg') center/contain no-repeat; pointer-events:none; }
:root[data-seasonal-theme="halloween"][data-theme][data-accent] .hero.hero-v445 {
  --greeting-card-blend:var(--halloween-hero-start);
  background:radial-gradient(ellipse at 95% 100%,rgba(226,139,57,.18),transparent 58%),linear-gradient(125deg,var(--halloween-hero-start),var(--halloween-hero-end)) !important;
  border:1px solid var(--border-soft); color:var(--text-dark);
}
:root[data-seasonal-theme="halloween"] .hero-v445 :is(.home-greeting-copy-v445 h1,#hero-date,.home-greeting-line-v445) { color:var(--text-dark) !important; }
:root[data-seasonal-theme="halloween"] .home-greeting-copy-v445 { min-width:0; }
:root[data-seasonal-theme="halloween"] .hero-v445 .home-greeting-copy-v445 h1 { overflow-wrap:anywhere; }
:root[data-seasonal-theme="halloween"] .hero-v445 .home-greeting-copy-v445 h1 em { color:var(--accent-deep); }
:root[data-seasonal-theme="halloween"] .hero-v445 .home-greeting-phase-v445 { background:var(--bg-card); border-color:var(--border-soft); color:var(--text-medium); }
:root[data-seasonal-theme="halloween"][data-theme] .home-greeting-media-v445::before { background:linear-gradient(90deg,var(--greeting-card-blend),transparent 90%) !important; }
:root[data-seasonal-theme="halloween"][data-theme] .home-greeting-media-v445::after { background:radial-gradient(ellipse at center,var(--halloween-card-glow),transparent 70%) !important; }
:root[data-seasonal-theme="halloween"][data-theme] .hero-v445.has-image-v445::before { background:linear-gradient(90deg,var(--greeting-card-blend) 0%,var(--greeting-card-blend) 28%,transparent 74%) !important; }
:root[data-seasonal-theme="halloween"] .familie-halloween-scene-v457 {
  display:block; position:absolute; right:.6rem; bottom:.3rem; width:156px; height:120px; z-index:3;
  background:url('../assets/themes/halloween/pumpkins.svg') center bottom/contain no-repeat; pointer-events:none; user-select:none;
}
:root[data-seasonal-theme="halloween"] .hero-v445:not(.has-image-v445) .home-greeting-copy-v445 { width:calc(100% - 150px); }
:root[data-seasonal-theme="halloween"] .hero-v445.has-image-v445 .familie-halloween-scene-v457 { width:100px; height:83px; }

@media (max-width:768px) {
  :root[data-seasonal-theme="halloween"] .navbar::before,
  :root[data-seasonal-theme="halloween"] .navbar::after { opacity:.23; }
  :root[data-seasonal-theme="halloween"] .familie-halloween-scene-v457 { right:.3rem; bottom:.35rem; width:92px; height:84px; }
  :root[data-seasonal-theme="halloween"] .hero-v445:not(.has-image-v445) .home-greeting-copy-v445 { width:calc(100% - 94px); }
  :root[data-seasonal-theme="halloween"] .hero-v445.has-image-v445 .familie-halloween-scene-v457 { width:75px; height:64px; }
}
@media (prefers-reduced-motion:reduce) { .settings-seasonal-choice-v457 { transition:none; } }
@media print {
  .settings-seasonal-theme-v457 { display:none; }
  :root[data-seasonal-theme="halloween"] .familie-halloween-scene-v457,:root[data-seasonal-theme="halloween"] .navbar::before,:root[data-seasonal-theme="halloween"] .navbar::after { display:none; }
  :root[data-seasonal-theme="halloween"] .hero-v445:not(.has-image-v445) .home-greeting-copy-v445 { width:auto; }
}

/* v458 – klarere Auswahl, eigener Halloween-Look und mehr fest platzierte Deko. */
.settings-seasonal-theme-v458 { margin-top:0; border-top:0; padding-top:.2rem; }
.settings-seasonal-grid-v458 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.settings-seasonal-preview-v457.is-auto { background:linear-gradient(120deg,#e8f0e6 0 45%,#38233f 46% 100%); }
.settings-seasonal-preview-v457.is-auto i { background:#c59c84; }
.settings-seasonal-preview-v457.is-auto i:last-child { background:#edb072; }
.settings-appearance-group-v458 { display:grid; gap:.5rem; padding:1rem 0; border-top:1px solid var(--border); }
.settings-appearance-group-v458 > p { margin:0; font-size:.8rem; }
.settings-halloween-color-info-v458 { display:grid; grid-template-columns:82px minmax(0,1fr); align-items:center; gap:.75rem; margin-top:1rem; padding:1rem; border:1px solid var(--border-soft); border-radius:18px; background:var(--surface-2); }
.settings-halloween-color-info-v458 p { margin:.35rem 0 0; color:var(--text-medium); font-size:.78rem; line-height:1.5; }
.settings-halloween-art-v458 { width:82px; height:78px; background:url('../assets/themes/halloween/candles.svg') right bottom/40px auto no-repeat,url('../assets/themes/halloween/pumpkin.svg') left bottom/57px auto no-repeat; }
:root[data-seasonal-theme="halloween"] #settings-accent-picker-v458 { display:none; }
.seasonal-admin-form-v458 { display:grid; gap:1rem; max-width:740px; }
.seasonal-admin-form-v458 > p { margin:0; font-size:.8rem; line-height:1.5; }
.seasonal-admin-form-v458 > button { justify-self:start; }
.seasonal-admin-hero-v458 { display:flex; align-items:center; gap:.9rem; padding:1rem; border:1px solid var(--border); border-radius:18px; background:var(--accent-softer-bg); }
.seasonal-admin-hero-v458 > span { width:72px; height:72px; flex:0 0 72px; background:url('../assets/themes/halloween/pumpkins.svg') center/contain no-repeat; }
.seasonal-admin-hero-v458 p { margin:.3rem 0 0; color:var(--text-medium); font-size:.78rem; }
.seasonal-admin-toggle-v458 { display:flex; align-items:center; gap:.65rem; font-weight:600; font-size:.9rem; }
.seasonal-admin-toggle-v458 input { width:20px; height:20px; flex:0 0 20px; }
.seasonal-admin-dates-v458 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.seasonal-admin-dates-v458 .form-group { margin:0; min-width:0; }
.seasonal-admin-status-v458 { padding:.8rem; border-radius:12px; background:var(--accent-soft-bg); color:var(--text-dark); }

#familie-halloween-screen-v458 { display:none; }
:root[data-seasonal-theme="halloween"] #familie-halloween-screen-v458 { display:block; position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none; user-select:none; }
:root[data-seasonal-theme="halloween"] #familie-halloween-screen-v458 i { position:absolute; display:block; pointer-events:none; }
.halloween-screen-web-v458 { top:0; width:clamp(44px,14vw,112px); height:clamp(44px,14vw,112px); background:var(--halloween-web); -webkit-mask:url('../assets/themes/halloween/web.svg') top right/contain no-repeat; mask:url('../assets/themes/halloween/web.svg') top right/contain no-repeat; opacity:.2; }
.halloween-screen-web-v458.is-left { left:0; transform:scaleX(-1); }
.halloween-screen-web-v458.is-right { right:0; }
.halloween-screen-pumpkins-v458 { right:8px; bottom:15px; width:128px; height:104px; background:url('../assets/themes/halloween/pumpkins.svg') center/contain no-repeat; opacity:.34; }
.halloween-screen-candles-v458 { left:10px; bottom:18px; width:72px; height:88px; background:url('../assets/themes/halloween/candles.svg') center/contain no-repeat; opacity:.28; }
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.form-control,textarea,select) { background-image:url('../assets/themes/halloween/web-detail.svg') !important; background-position:right top !important; background-size:42px 42px !important; background-repeat:no-repeat !important; }
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.mobile-category-link,.desktop-category-link-v393,.plus-action-card-v309,.mobile-category-group-toggle-v389,.desktop-category-group-toggle-v393) { background:linear-gradient(125deg,var(--halloween-card-glow),transparent 85%),var(--surface-2) !important; border-color:var(--border-soft) !important; }
.halloween-welcome-v458 { position:relative; display:grid; gap:.85rem; max-width:460px; }
.halloween-welcome-v458 h2 { font-size:clamp(1.55rem,5vw,2.1rem); }
.halloween-welcome-v458 p { margin:0; font-size:.9rem; line-height:1.6; color:var(--text-medium); }
.halloween-welcome-art-v458 { height:105px; background:url('../assets/themes/halloween/pumpkins.svg') calc(50% - 24px) bottom/146px auto no-repeat,url('../assets/themes/halloween/candles.svg') calc(50% + 75px) bottom/65px auto no-repeat; }
.halloween-welcome-v458 .halloween-welcome-kicker-v458 { color:var(--accent-deep); font-size:.75rem; font-weight:700; }
.halloween-welcome-actions-v458 { display:grid; gap:.55rem; margin-top:.2rem; }
.halloween-welcome-actions-v458 .btn { min-height:46px; }
.modal-backdrop:has(.halloween-welcome-v458) { padding:1rem; }
.modal-content:has(.halloween-welcome-v458) { width:min(100%,510px); overflow-y:auto; }
@media (max-width:900px) {
  .halloween-screen-web-v458 { opacity:.18; }
  .halloween-screen-pumpkins-v458 { width:72px; height:59px; right:1px; bottom:calc(var(--bottom-nav-height,76px) + env(safe-area-inset-bottom,0px) + 10px); opacity:.22; }
  .halloween-screen-candles-v458 { width:44px; height:56px; left:1px; bottom:calc(var(--bottom-nav-height,76px) + env(safe-area-inset-bottom,0px) + 12px); opacity:.19; }
  .modal-backdrop:has(.halloween-welcome-v458) { padding-top:max(1rem,env(safe-area-inset-top,0px)); padding-bottom:calc(var(--bottom-nav-height,76px) + env(safe-area-inset-bottom,0px) + 1rem); }
  .modal-content:has(.halloween-welcome-v458) { max-height:calc(100dvh - var(--bottom-nav-height,76px) - env(safe-area-inset-bottom,0px) - env(safe-area-inset-top,0px) - 2rem); }
  .settings-seasonal-grid-v458 { grid-template-columns:1fr; }
  .settings-seasonal-grid-v458 .settings-seasonal-choice-v457 { grid-template-columns:75px minmax(0,1fr); column-gap:.8rem; align-items:center; padding:.7rem; }
  .settings-seasonal-grid-v458 .settings-seasonal-preview-v457 { grid-row:1/3; height:62px; width:75px; margin:0; padding:13px 8px 8px 16px; }
  .settings-seasonal-grid-v458 .settings-seasonal-choice-v457 > strong { align-self:end; }
  .settings-seasonal-grid-v458 .settings-seasonal-choice-v457 > small { align-self:start; }
  .settings-seasonal-grid-v458 .settings-seasonal-choice-v457.is-selected::after { left:.9rem; top:.9rem; }
}
@media (max-width:430px) { .seasonal-admin-dates-v458 { grid-template-columns:1fr; } }
@media print { #familie-halloween-screen-v458 { display:none !important; } }

/* v459 – Deko sitzt an echten Kanten und skaliert mit der verfügbaren Fläche. */
:root[data-seasonal-theme="halloween"][data-theme] {
  --halloween-button-start:#FFDEA6;
  --halloween-button-end:#EFAA68;
  --halloween-button-text:#442036;
  --halloween-soft-button:linear-gradient(135deg,#fff0df,#f0e4f1);
  --halloween-soft-button-hover:linear-gradient(135deg,#ffe7c9,#ead8ee);
  --halloween-button-border:rgba(139,77,66,.27);
  --halloween-button-shine:rgba(255,255,255,.62);
}
:root[data-seasonal-theme="halloween"][data-theme="dark"] {
  --halloween-soft-button:linear-gradient(135deg,#49324c,#33263d);
  --halloween-soft-button-hover:linear-gradient(135deg,#573956,#40304a);
  --halloween-button-border:rgba(235,184,133,.28);
  --halloween-button-shine:rgba(255,240,215,.12);
}
:root[data-seasonal-theme="halloween"] #familie-halloween-screen-v458.has-navbar-v459 > .halloween-screen-web-v458 { display:none; }
.halloween-screen-lantern-v459 { right:104px; bottom:20px; width:62px; height:82px; background:url('../assets/themes/halloween/lantern.svg') center bottom/contain no-repeat; opacity:.34; }
.halloween-screen-leaves-v459 { left:62px; bottom:17px; width:95px; height:68px; background:url('../assets/themes/halloween/autumn-leaves.svg') center bottom/contain no-repeat; opacity:.22; }

:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.dashboard-tile,.home-summary-tile,.mobile-category-link,.desktop-category-link-v393,.admin-settings-row,.plus-action-card-v309) {
  box-shadow:inset 0 1px 0 var(--halloween-button-shine),0 5px 18px rgba(80,39,65,.06);
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.mobile-category-group-toggle-v389,.desktop-category-group-toggle-v393) {
  box-shadow:inset 0 1px 0 var(--halloween-button-shine);
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.nav-user,.admin-settings-search,.admin-settings-detail-bar,.settings-choice-v261:not(.is-selected),.admin-settings-overview-icon,.admin-settings-row-icon) {
  background:var(--halloween-soft-button) !important;
  border-color:var(--halloween-button-border) !important;
  color:var(--text-dark) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.nav-user-name,.admin-settings-detail-title) { color:var(--text-dark) !important; }
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(#user-settings-search-input,#admin-settings-search-input) { background:transparent !important; }
:root[data-seasonal-theme="halloween"][data-theme][data-accent] .settings-choice-v261.is-selected :is(strong,span),
:root[data-seasonal-theme="halloween"][data-theme][data-accent] .settings-choice-v261.is-selected::after { color:var(--halloween-button-text) !important; }

/* Über die bestehenden Button-Variablen bleiben auch Kategorien und Assistenten konsistent. */
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(button,.btn,[role="button"]) {
  --button-solid-bg:linear-gradient(135deg,var(--halloween-button-start),var(--halloween-button-end)) !important;
  --button-solid-text:var(--halloween-button-text) !important;
  --button-soft-bg:var(--halloween-soft-button) !important;
  --button-soft-hover:var(--halloween-soft-button-hover) !important;
  --button-border:var(--halloween-button-border) !important;
  --button-text:var(--text-dark) !important;
  --auto-button-solid:var(--button-solid-bg) !important;
  --auto-button-text:var(--button-solid-text) !important;
  --auto-button-soft:var(--button-soft-bg) !important;
  --auto-button-soft-hover:var(--button-soft-hover) !important;
  --auto-button-border:var(--button-border) !important;
  --auto-button-soft-text:var(--button-text) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] .btn:is(.btn-primary,.btn-outline,.btn-secondary):not(.btn-danger):not(.modal-close) {
  border-radius:14px;
  transition:box-shadow .18s ease,filter .18s ease,background .18s ease;
  box-shadow:inset 0 1px 0 var(--halloween-button-shine),0 5px 16px rgba(115,62,46,.12) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] .btn-primary:not(.btn-danger) {
  background:var(--button-solid-bg) !important;
  color:var(--button-solid-text) !important;
  border:1px solid var(--halloween-button-border) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.btn-outline,.btn-secondary):not(.btn-danger):not(.modal-close) {
  background:var(--button-soft-bg) !important;
  color:var(--button-text) !important;
  border:1px solid var(--halloween-button-border) !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.btn-primary,.btn-outline,.btn-secondary):focus-visible {
  outline:2px solid var(--accent-deep); outline-offset:3px;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.btn-primary,.btn-outline,.btn-secondary):disabled {
  opacity:.5; box-shadow:none !important; cursor:not-allowed;
}
@media (hover:hover) {
  :root[data-seasonal-theme="halloween"][data-theme][data-accent] .btn:is(.btn-primary,.btn-outline,.btn-secondary):not(:disabled):hover {
    filter:brightness(1.04); box-shadow:inset 0 1px 0 var(--halloween-button-shine),0 7px 20px rgba(115,62,46,.18) !important;
  }
}
@media (max-width:900px) {
  .halloween-screen-lantern-v459 { width:39px; height:52px; right:63px; bottom:calc(var(--bottom-nav-height,76px) + env(safe-area-inset-bottom,0px) + 13px); opacity:.23; }
  .halloween-screen-leaves-v459 { width:65px; height:46px; left:38px; bottom:calc(var(--bottom-nav-height,76px) + env(safe-area-inset-bottom,0px) + 12px); opacity:.16; }
}
@media (prefers-reduced-motion:reduce) {
  :root[data-seasonal-theme="halloween"] .btn { transition:none !important; }
}

/* v460 – leichte CSS-Deko, ohne zusätzliche Elemente in Karten und Symbolboxen. */
:root[data-seasonal-theme="halloween"][data-theme][data-accent] {
  --app-icon-surface:var(--surface-3);
  --app-selected-surface:linear-gradient(135deg,var(--halloween-button-start),var(--halloween-button-end));
  --app-selected-text:var(--halloween-button-text);
}
:root[data-seasonal-theme="halloween"] :is(.card:not(.calendar-toolbar),.recipe-card,.system-card,.modal-content:not(.modal-content-mobile-sheet)) { position:relative; }
:root[data-seasonal-theme="halloween"] :is(.card:not(.calendar-toolbar),.recipe-card,.system-card,.modal-content:not(.modal-content-mobile-sheet))::after {
  content:''; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:url('../assets/themes/halloween/web-detail.svg') right top/54px 54px no-repeat,
    url('../assets/themes/halloween/candles.svg') right 8px bottom 5px/35px 40px no-repeat,
    url('../assets/themes/halloween/pumpkin.svg') left 6px bottom 4px/25px 25px no-repeat;
  opacity:.19;
}
:root[data-seasonal-theme="halloween"] .recipe-card:nth-of-type(even)::after {
  background:url('../assets/themes/halloween/moon-stars.svg') right 7px top 5px/57px 39px no-repeat,
    url('../assets/themes/halloween/lantern.svg') right 7px bottom 5px/32px 43px no-repeat,
    url('../assets/themes/halloween/autumn-leaves.svg') left 6px bottom 4px/48px 34px no-repeat;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] :is(.mobile-category-group-toggle-v389,.desktop-category-group-toggle-v393) {
  background:url('../assets/themes/halloween/web-detail.svg') right top/48px 48px no-repeat,var(--surface-2) !important;
}
:root[data-seasonal-theme="halloween"] .plus-menu-head-v309 {
  background:url('../assets/themes/halloween/pumpkins.svg') right bottom/72px 58px no-repeat;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] #home-overview-root .home-summary-tile.home-deco-tile::after {
  display:block !important; opacity:.15 !important; transform:none !important;
  background:url('../assets/themes/halloween/web-detail.svg') right top/32px 32px no-repeat,
    url('../assets/themes/halloween/pumpkin.svg') right 5px bottom 4px/22px 22px no-repeat !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] #home-overview-root .home-summary-tile.home-deco-tile:nth-child(even)::after {
  background:url('../assets/themes/halloween/candles.svg') right 5px bottom 4px/24px 29px no-repeat !important;
}
:root[data-seasonal-theme="halloween"][data-theme][data-accent] .footer { background:var(--bg-card) !important; border-color:var(--border-soft) !important; }
:root[data-seasonal-theme="halloween"] .btn-primary:not(.btn-danger):not(.modal-close) { position:relative; }
:root[data-seasonal-theme="halloween"] .btn-primary:not(.btn-danger):not(.modal-close)::after {
  content:''; position:absolute; right:3px; bottom:2px; width:15px; height:15px;
  background:url('../assets/themes/halloween/pumpkin.svg') center/contain no-repeat; opacity:.18; pointer-events:none;
}
@media print {
  :root[data-seasonal-theme="halloween"] :is(.card,.recipe-card,.system-card,.modal-content,.btn-primary)::after { display:none !important; }
}
