:root,
[data-bs-theme=light] {
  --ar-primary: #000000;
  --ar-primary-rgb: 0, 0, 0;
  --bs-primary: #000000;
  --bs-primary-rgb: 0, 0, 0;
  --ar-secondary: #edf1f5;
  --ar-secondary-rgb: 237, 241, 245;
  --bs-secondary: #edf1f5;
  --bs-secondary-rgb: 237, 241, 245;
  --ar-warning: #edcb50;
  --ar-warning-rgb: 237, 203, 80;
  --bs-warning: #edcb50;
  --bs-warning-rgb: 237, 203, 80;
  --ar-info: #3f7fca;
  --ar-info-rgb: 63, 127, 202;
  --bs-info: #3f7fca;
  --bs-info-rgb: 63, 127, 202;
  --ar-success: #3fca90;
  --ar-success-rgb: 63, 202, 144;
  --bs-success: #3fca90;
  --bs-success-rgb: 63, 202, 144;
  --ar-danger: #ed5050;
  --ar-danger-rgb: 237, 80, 80;
  --bs-danger: #ed5050;
  --bs-danger-rgb: 237, 80, 80;
  --ar-light: #ffffff;
  --ar-light-rgb: 255, 255, 255;
  --bs-light: #ffffff;
  --bs-light-rgb: 255, 255, 255;
  --ar-dark: #121519;
  --ar-dark-rgb: 18, 21, 25;
  --bs-dark: #121519;
  --bs-dark-rgb: 18, 21, 25;
  --ar-link-color: #000000;
  --ar-link-hover-color: #000000;
  --bs-link-color: #000000;
  --bs-link-color-rgb: 0, 0, 0;
  --bs-link-hover-color: #000000;
  --ar-body-font-family: 'Roboto', sans-serif;
  --ar-heading-font-family: 'Roboto Condensed', sans-serif;
  --ar-root-font-size: 1rem;
  --ar-body-font-size: 1rem;
  --ar-border-width: 1px;
  --ar-border-radius: 0rem;
  --ar-border-radius-sm: calc(var(--ar-border-radius) * 0);
  --ar-border-radius-lg: calc(var(--ar-border-radius) * 0);
  --ar-border-radius-xl: calc(var(--ar-border-radius) * 0);
  --ar-border-radius-xxl: calc(var(--ar-border-radius) * 2.25);
}
[data-bs-theme=light] {
  --ar-body-bg: #ffffff;
  --bs-body-bg: #ffffff;
  --ar-body-bg-rgb: 255, 255, 255;
  --bs-body-bg-rgb: 255, 255, 255;
  --ar-body-color: #576071;
  --bs-body-color: #576071;
  --ar-body-color-rgb: 87, 96, 113;
  --bs-body-color-rgb: 87, 96, 113;
  --ar-secondary-color: #858c97;
  --bs-secondary-color: #858c97;
  --ar-heading-color: #121519;
  --bs-heading-color: #121519;
  --ar-border-color: #e3e9ef;
  --bs-border-color: #e3e9ef;
}
[data-bs-theme=light] .card {
  --ar-card-bg: #ffffff;
}
.btn-primary {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #000000;
  --ar-btn-border-color: #000000;
  --ar-btn-hover-bg: #000000;
  --ar-btn-hover-border-color: #000000;
  --ar-btn-active-bg: #000000;
  --ar-btn-active-border-color: #000000;
  --ar-btn-disabled-bg: #000000;
  --ar-btn-disabled-border-color: #000000;
}
.btn-outline-primary {
  --ar-btn-color: #000000;
  --ar-btn-border-color: #000000;
  --ar-btn-hover-bg: #000000;
  --ar-btn-hover-border-color: #000000;
  --ar-btn-active-bg: #000000;
  --ar-btn-active-border-color: #000000;
  --ar-btn-disabled-color: #000000;
  --ar-btn-disabled-border-color: #000000;
}
.btn-secondary {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #edf1f5;
  --ar-btn-border-color: #edf1f5;
  --ar-btn-hover-bg: #d4d8dc;
  --ar-btn-hover-border-color: #d4d8dc;
  --ar-btn-active-bg: #d4d8dc;
  --ar-btn-active-border-color: #d4d8dc;
  --ar-btn-disabled-bg: #edf1f5;
  --ar-btn-disabled-border-color: #edf1f5;
}
.btn-outline-secondary {
  --ar-btn-color: #edf1f5;
  --ar-btn-border-color: #edf1f5;
  --ar-btn-hover-bg: #edf1f5;
  --ar-btn-hover-border-color: #edf1f5;
  --ar-btn-active-bg: #edf1f5;
  --ar-btn-active-border-color: #edf1f5;
  --ar-btn-disabled-color: #edf1f5;
  --ar-btn-disabled-border-color: #edf1f5;
}
.btn-warning {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #edcb50;
  --ar-btn-border-color: #edcb50;
  --ar-btn-hover-bg: #d4b237;
  --ar-btn-hover-border-color: #d4b237;
  --ar-btn-active-bg: #d4b237;
  --ar-btn-active-border-color: #d4b237;
  --ar-btn-disabled-bg: #edcb50;
  --ar-btn-disabled-border-color: #edcb50;
}
.btn-outline-warning {
  --ar-btn-color: #edcb50;
  --ar-btn-border-color: #edcb50;
  --ar-btn-hover-bg: #edcb50;
  --ar-btn-hover-border-color: #edcb50;
  --ar-btn-active-bg: #edcb50;
  --ar-btn-active-border-color: #edcb50;
  --ar-btn-disabled-color: #edcb50;
  --ar-btn-disabled-border-color: #edcb50;
}
.btn-info {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #3f7fca;
  --ar-btn-border-color: #3f7fca;
  --ar-btn-hover-bg: #2666b1;
  --ar-btn-hover-border-color: #2666b1;
  --ar-btn-active-bg: #2666b1;
  --ar-btn-active-border-color: #2666b1;
  --ar-btn-disabled-bg: #3f7fca;
  --ar-btn-disabled-border-color: #3f7fca;
}
.btn-outline-info {
  --ar-btn-color: #3f7fca;
  --ar-btn-border-color: #3f7fca;
  --ar-btn-hover-bg: #3f7fca;
  --ar-btn-hover-border-color: #3f7fca;
  --ar-btn-active-bg: #3f7fca;
  --ar-btn-active-border-color: #3f7fca;
  --ar-btn-disabled-color: #3f7fca;
  --ar-btn-disabled-border-color: #3f7fca;
}
.btn-success {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #3fca90;
  --ar-btn-border-color: #3fca90;
  --ar-btn-hover-bg: #26b177;
  --ar-btn-hover-border-color: #26b177;
  --ar-btn-active-bg: #26b177;
  --ar-btn-active-border-color: #26b177;
  --ar-btn-disabled-bg: #3fca90;
  --ar-btn-disabled-border-color: #3fca90;
}
.btn-outline-success {
  --ar-btn-color: #3fca90;
  --ar-btn-border-color: #3fca90;
  --ar-btn-hover-bg: #3fca90;
  --ar-btn-hover-border-color: #3fca90;
  --ar-btn-active-bg: #3fca90;
  --ar-btn-active-border-color: #3fca90;
  --ar-btn-disabled-color: #3fca90;
  --ar-btn-disabled-border-color: #3fca90;
}
.btn-danger {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #ed5050;
  --ar-btn-border-color: #ed5050;
  --ar-btn-hover-bg: #d43737;
  --ar-btn-hover-border-color: #d43737;
  --ar-btn-active-bg: #d43737;
  --ar-btn-active-border-color: #d43737;
  --ar-btn-disabled-bg: #ed5050;
  --ar-btn-disabled-border-color: #ed5050;
}
.btn-outline-danger {
  --ar-btn-color: #ed5050;
  --ar-btn-border-color: #ed5050;
  --ar-btn-hover-bg: #ed5050;
  --ar-btn-hover-border-color: #ed5050;
  --ar-btn-active-bg: #ed5050;
  --ar-btn-active-border-color: #ed5050;
  --ar-btn-disabled-color: #ed5050;
  --ar-btn-disabled-border-color: #ed5050;
}
.btn-light {
  --booost-btn-color: #121519;
  --booost-btn-hover-color: #121519;
  --ar-btn-bg: #ffffff;
  --ar-btn-border-color: #ffffff;
  --ar-btn-hover-bg: #e6e6e6;
  --ar-btn-hover-border-color: #e6e6e6;
  --ar-btn-active-bg: #e6e6e6;
  --ar-btn-active-border-color: #e6e6e6;
  --ar-btn-disabled-bg: #ffffff;
  --ar-btn-disabled-border-color: #ffffff;
}
.btn-outline-light {
  --ar-btn-color: #ffffff;
  --ar-btn-border-color: #ffffff;
  --ar-btn-hover-bg: #ffffff;
  --ar-btn-hover-border-color: #ffffff;
  --ar-btn-active-bg: #ffffff;
  --ar-btn-active-border-color: #ffffff;
  --ar-btn-disabled-color: #ffffff;
  --ar-btn-disabled-border-color: #ffffff;
}
.btn-dark {
  --booost-btn-color: #fff;
  --booost-btn-hover-color: #fff;
  --ar-btn-bg: #121519;
  --ar-btn-border-color: #121519;
  --ar-btn-hover-bg: #000000;
  --ar-btn-hover-border-color: #000000;
  --ar-btn-active-bg: #000000;
  --ar-btn-active-border-color: #000000;
  --ar-btn-disabled-bg: #121519;
  --ar-btn-disabled-border-color: #121519;
}
.btn-outline-dark {
  --ar-btn-color: #121519;
  --ar-btn-border-color: #121519;
  --ar-btn-hover-bg: #121519;
  --ar-btn-hover-border-color: #121519;
  --ar-btn-active-bg: #121519;
  --ar-btn-active-border-color: #121519;
  --ar-btn-disabled-color: #121519;
  --ar-btn-disabled-border-color: #121519;
}
[data-bs-theme=dark] {
  --ar-primary: #ffffff;
  --ar-primary-rgb: 255, 255, 255;
  --bs-primary: #ffffff;
  --bs-primary-rgb: 255, 255, 255;
  --ar-link-color: #ffffff;
  --ar-link-color-rgb: 255, 255, 255;
  --ar-link-hover-color: #e6e6e6;
  --ar-link-hover-color-rgb: 230, 230, 230;
  --bs-link-color: #ffffff;
  --bs-link-color-rgb: 255, 255, 255;
  --bs-link-hover-color: #e6e6e6;
  --booost-btn-primary: #ffffff;
  --booost-btn-primary-hover: #e6e6e6;
  --booost-btn-primary-label: #121519;
  --booost-accordion-icon-primary: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%23ffffff'%3e%3cpath%20d='M.5%206.3c.6-.6%201.6-.6%202.3%200l9.3%209.3%209.3-9.3c.6-.6%201.6-.6%202.3%200%20.6.6.6%201.6%200%202.3L13.3%2018.8c-.6.6-1.6.6-2.3%200L.8%208.5c-.9-.8-.9-1.6-.3-2.2z'/%3e%3c/svg%3e");
}
[data-bs-theme=light] {
  --booost-btn-primary: #000000;
  --booost-btn-primary-hover: #000000;
  --booost-btn-primary-label: #fff;
  --booost-accordion-icon-primary: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%23000000'%3e%3cpath%20d='M.5%206.3c.6-.6%201.6-.6%202.3%200l9.3%209.3%209.3-9.3c.6-.6%201.6-.6%202.3%200%20.6.6.6%201.6%200%202.3L13.3%2018.8c-.6.6-1.6.6-2.3%200L.8%208.5c-.9-.8-.9-1.6-.3-2.2z'/%3e%3c/svg%3e");
}
[data-bs-theme=dark] .btn-primary {
  --booost-btn-color: var(--booost-btn-primary-label);
  --booost-btn-hover-color: var(--booost-btn-primary-label);
  --ar-btn-bg: var(--booost-btn-primary);
  --ar-btn-border-color: var(--booost-btn-primary);
  --ar-btn-hover-bg: var(--booost-btn-primary-hover);
  --ar-btn-hover-border-color: var(--booost-btn-primary-hover);
  --ar-btn-active-bg: var(--booost-btn-primary-hover);
  --ar-btn-active-border-color: var(--booost-btn-primary-hover);
  --ar-btn-disabled-bg: var(--booost-btn-primary);
  --ar-btn-disabled-border-color: var(--booost-btn-primary);
}
[data-bs-theme=dark] .btn-outline-primary {
  --ar-btn-color: var(--booost-btn-primary);
  --ar-btn-border-color: var(--booost-btn-primary);
  --ar-btn-hover-bg: var(--booost-btn-primary);
  --ar-btn-hover-border-color: var(--booost-btn-primary);
  --ar-btn-active-bg: var(--booost-btn-primary);
  --ar-btn-active-border-color: var(--booost-btn-primary);
  --ar-btn-disabled-color: var(--booost-btn-primary);
  --ar-btn-disabled-border-color: var(--booost-btn-primary);
}
[data-bs-theme=dark] .accordion-button:not(.collapsed)::after {
  --ar-accordion-btn-active-icon: var(--booost-accordion-icon-primary);
}
[data-bs-theme=dark] .bg-primary,
[data-bs-theme=dark].bg-primary,
[data-bs-theme=dark] .text-bg-primary,
[data-bs-theme=dark].text-bg-primary {
  background-color: rgba(0, 0, 0, var(--ar-bg-opacity, 1)) !important;
}
.accordion-button:not(.collapsed)::after {
  --ar-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='%23000000'%3e%3cpath%20d='M.5%206.3c.6-.6%201.6-.6%202.3%200l9.3%209.3%209.3-9.3c.6-.6%201.6-.6%202.3%200%20.6.6.6%201.6%200%202.3L13.3%2018.8c-.6.6-1.6.6-2.3%200L.8%208.5c-.9-.8-.9-1.6-.3-2.2z'/%3e%3c/svg%3e");
}
/* Logo-nahe Typografie: JAP! = Helvetica Neue Heavy Condensed -> Roboto Condensed 800,
   Fliesstext = Helvetica Neue Light -> Roboto 300 */
h1, h2, h3, h4, .h1, .h2, .h3, .h4, .display-1, .display-2, .display-3, .display-4, .display-5, .display-6 { font-weight: 800; letter-spacing: -0.01em; }
body { --bs-body-font-weight: 300; font-weight: 300; }
strong, b, .fw-bold, .fw-semibold, .btn, .card-title { font-weight: 500; }

/* Das "!" aus dem Logo als Stilelement (assets/bang.svg, Balken + Punkt aus JAP-BRAND-cmyk.svg).
   Als Maske, damit die Farbe aus dem Theme kommt und im Dark Mode mitgeht. */
:root {
  --jap-bang-bar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 316'%3E%3Cpath d='M74 38.2C73.9 72.4 73.6 80.1 69.6 131.8C67.3 162.7 64.9 188.4 64.4 188.9C63.4 189.9 6.9 212.2 6.5 211.8C5.6 210.6 0.9 60.6 1 34.2L1 1L37.5 1L74 1L74 38.2Z'/%3E%3C/svg%3E");
  --jap-bang-dot: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 316'%3E%3Cpath d='M66 272.5C66 295.9 65.7 315 65.4 315C65.1 315 53.1 311.4 38.7 306.9C24.3 302.5 11.7 298.7 10.8 298.4C9.2 297.9 9 295.9 9 275.6L9 253.3L36.3 241.7C51.2 235.4 64.1 230.1 64.8 230.1C65.7 230 66 239.1 66 272.5Z'/%3E%3C/svg%3E");
  --jap-bang: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 316'%3E%3Cpath d='M74 38.2C73.9 72.4 73.6 80.1 69.6 131.8C67.3 162.7 64.9 188.4 64.4 188.9C63.4 189.9 6.9 212.2 6.5 211.8C5.6 210.6 0.9 60.6 1 34.2L1 1L37.5 1L74 1L74 38.2Z'/%3E%3Cpath d='M66 272.5C66 295.9 65.7 315 65.4 315C65.1 315 53.1 311.4 38.7 306.9C24.3 302.5 11.7 298.7 10.8 298.4C9.2 297.9 9 295.9 9 275.6L9 253.3L36.3 241.7C51.2 235.4 64.1 230.1 64.8 230.1C65.7 230 66 239.1 66 272.5Z'/%3E%3C/svg%3E");
}
/* Hero (Zeilenklasse jap-bang-hero): das "!" zeichnet sich rechts ein - der Balken von oben, dann springt der Punkt */
@media (min-width: 992px) {
  .jap-bang-hero { position: relative; }
  .jap-bang-hero::before, .jap-bang-hero::after {
    content: ""; position: absolute; z-index: 3; pointer-events: none;
    right: 8%; top: calc(50% - min(30vh, 300px));
    height: min(60vh, 600px); aspect-ratio: 75 / 316;
    background-color: #fff;
    -webkit-mask: var(--jap-bang-bar) center / contain no-repeat; mask: var(--jap-bang-bar) center / contain no-repeat;
    animation: jap-bang-bar 1.1s cubic-bezier(.7, 0, .3, 1) .5s both;
  }
  .jap-bang-hero::after {
    -webkit-mask-image: var(--jap-bang-dot); mask-image: var(--jap-bang-dot);
    transform-origin: 50% 86%;
    animation: jap-bang-dot .7s cubic-bezier(.34, 1.56, .64, 1) 1.5s both;
  }
}
@keyframes jap-bang-bar { from { clip-path: inset(0 0 100% 0); } to { clip-path: inset(0); } }
@keyframes jap-bang-dot { from { opacity: 0; transform: scale(0); } to { opacity: 1; transform: none; } }
/* Hintergrund (Zeilenklasse jap-bang-bg): grosses transparentes "!" im Weissraum zwischen Ueberschrift und Text, wandert beim Scrollen leicht mit */
.jap-bang-bg { position: relative; isolation: isolate; overflow: clip; }
.jap-bang-bg::after {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
  left: 30%; top: 50%; height: 88%; aspect-ratio: 75 / 316; transform: translateY(-50%);
  background-color: var(--bs-emphasis-color); opacity: .05;
  -webkit-mask: var(--jap-bang) center / contain no-repeat; mask: var(--jap-bang) center / contain no-repeat;
}
@supports (animation-timeline: view()) {
  .jap-bang-bg::after { animation: jap-bang-drift linear both; animation-timeline: view(); }
}
@keyframes jap-bang-drift { from { transform: translateY(-44%); } to { transform: translateY(-56%); } }
@media (prefers-reduced-motion: reduce) {
  .jap-bang-hero::before, .jap-bang-hero::after, .jap-bang-bg::after { animation: none; }
}

body.template-folder_contents,
body[class*="controlpanel"],
body.template-sharing,
body.template-historyview {
  --ar-body-font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --ar-heading-font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
#edit-zone { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
