/* 100KomplekSOUND unify layer: loaded LAST. Uses ks-tokens.css. News (daily paper) and Learn (classroom) keep their own look. */

/* ---------- fonts ---------- */
html body .cslider .cslide-sub{font-family:var(--ks-font)!important;font-weight:500!important}
html body .services-tools,html body .svc143-tools,html body .svc143-tool{font-family:var(--ks-font)!important}

/* ---------- section titles: one weight, one rhythm ---------- */
html body .section-title,html body h2.section-title{font-family:var(--ks-font)!important;font-weight:var(--ks-w-title)!important;letter-spacing:-.025em!important}
html body .section-title em,html body .section-title .accent,html body .section-title .blue-word{color:var(--ks-blue)!important;font-style:italic}
html body .ks-h{font-family:var(--ks-font)!important;font-weight:var(--ks-w-title)!important}

/* ---------- text buttons = pills ---------- */
html body :is(.svc-cta,.svc-book-link,.rg-portfolio-link,.services-scene-action,.audio-prepare-btn,.audio-download-btn,.audio-upload-service-link,.rating-send,.mobile-rosemarie-cta,.ks-btn-ghost,.ks-btn-exit,.nav-contact-btn,.svc-dd-toggle,.nav-more-toggle,.chat-opt,.bre-chip){
  border-radius:var(--ks-radius-btn)!important;min-height:var(--ks-btn-h)!important;font-family:var(--ks-font)!important;font-weight:var(--ks-w-sub)!important;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.1;box-sizing:border-box;
}
/* Primary: filled blue, white text */
html body :is(.svc-cta,.audio-prepare-btn,.rating-send,.mobile-rosemarie-cta,.audio-download-btn,.services-scene-action){
  background:var(--ks-blue-deep)!important;color:#fff!important;border:1px solid var(--ks-blue-deep)!important;
}
html[data-theme="light"] body :is(.svc-cta,.audio-prepare-btn,.rating-send,.mobile-rosemarie-cta,.audio-download-btn,.services-scene-action){background:var(--ks-blue)!important;border-color:var(--ks-blue)!important}
html body :is(.svc-cta,.audio-prepare-btn,.rating-send,.mobile-rosemarie-cta,.audio-download-btn,.services-scene-action):hover{background:var(--ks-blue-deep)!important;border-color:var(--ks-blue-deep)!important;filter:brightness(1.08)}
html body :is(.svc-cta,.audio-prepare-btn,.rating-send,.mobile-rosemarie-cta,.audio-download-btn,.services-scene-action):active{transform:translateY(1px);filter:brightness(.94)}
/* Secondary: transparent, 1px blue border, blue text */
html body :is(.svc-book-link,.rg-portfolio-link,.audio-upload-service-link,.ks-btn-ghost,.ks-btn-exit,.chat-opt,.svc-dd-toggle){
  background:transparent!important;color:var(--ks-blue)!important;border:1px solid var(--ks-blue)!important;
}
html body :is(.svc-book-link,.rg-portfolio-link,.audio-upload-service-link,.ks-btn-ghost,.ks-btn-exit,.chat-opt,.svc-dd-toggle):hover{background:var(--ks-blue-soft)!important}
html body :is(.svc-book-link,.rg-portfolio-link,.audio-upload-service-link,.ks-btn-ghost,.ks-btn-exit,.chat-opt,.svc-dd-toggle):active{transform:translateY(1px)}
/* one focus ring everywhere */
html body :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--ks-focus)!important;outline-offset:3px!important}

/* ---------- the doors call-to-action: a pill in the site blue ---------- */
html body #news .av-class-real .av-door-label{border-radius:var(--ks-radius-btn)!important;background:var(--ks-blue-deep)!important;color:#fff!important;border:1px solid var(--ks-blue)!important;padding:10px 22px!important;font-family:var(--ks-font)!important;font-weight:var(--ks-w-sub)!important;box-shadow:0 8px 20px rgba(0,40,120,.4)}

/* ---------- icon-only buttons = circles ---------- */
html body :is(.lang-globe-btn,.menu-toggle,.nav-search-clear,.modal-close,.rating-close,.services-slide-arrow,.services-slide-prev,.services-slide-next,.bap-play,.svc-cinema-play,.bre-close,.bre-home,.bre-mic,.bre-plus,.bre-send){border-radius:var(--ks-radius-icon)!important}

/* ---------- cards = one radius, border, shadow ---------- */
html body :is(.about-card,.project-card,.rating-card,.svc143-card,.svc-panel,.modal-panel,.audio-download-panel,.services-media-card,.ba-card,.rm-send-loader-card){
  border-radius:var(--ks-radius-card)!important;
}
html body :is(.about-card,.project-card,.rating-card,.audio-download-panel){border:1px solid var(--ks-card-border)!important;box-shadow:var(--ks-card-shadow)!important}
html body :is(.svc143-card,.svc-panel,.services-media-card){border:1px solid var(--ks-card-border)!important;box-shadow:var(--ks-card-shadow)!important}
html[data-theme="light"] body :is(.svc143-card,.svc-panel,.services-media-card){background:var(--ks-card-bg)!important}
html[data-theme="dark"] body :is(.svc143-card,.svc-panel,.services-media-card){background:rgba(10,22,52,.78)!important}
html body :is(.svc143-card,.svc-panel,.services-media-card) :is(h2,h3,h4,.svc143-title,.svc-title){font-family:var(--ks-font)!important;font-weight:var(--ks-w-sub)!important}
html body :is(.svc143-card,.svc-panel,.services-media-card) :is(svg,i.icon,.svc-ico,.svc143-ico){color:var(--ks-blue)}

/* ---------- inputs ---------- */
html body :is(input[type="text"],input[type="email"],input[type="search"],textarea,select){border-radius:var(--ks-radius-input)}

/* ---------- the two floating buttons: same size, shadow and border ---------- */
html body .ks-a11y-btn,html body .bre-fab{width:var(--ks-fab)!important;height:var(--ks-fab)!important;min-width:0!important;border:3px solid #fff!important;border-radius:50%!important;box-shadow:0 8px 22px rgba(0,40,120,.42)!important}
html[data-theme="dark"] body .ks-a11y-btn,html[data-theme="dark"] body .bre-fab{border-color:rgba(255,255,255,.9)!important}
@media(max-width:700px){
  html body .ks-a11y-btn{left:12px!important;bottom:calc(12px + env(safe-area-inset-bottom,0px))!important}
  html body .bre-fab{right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom,0px))!important}
}

/* ---------- warm leftovers: theme sun, LEDs, progress and kicker go blue/white ---------- */
html body .theme-switch .sun,html body .theme-switch [class*="sun"]{color:var(--ks-blue)!important;fill:var(--ks-blue)!important}
html body .cslider-bar-fill,html body .intro-loader-bar{background:linear-gradient(90deg,var(--ks-blue-deep),var(--ks-blue),#00d7ff)!important}
html body .cslide-title::after{background:linear-gradient(90deg,transparent,var(--ks-blue),#00d7ff,transparent)!important}
