/* App-local finish: separate navigation, supporting controls and primary actions. */
@layer dimau-premium, dimau-history-lighting;
@layer dimau-premium {
  html:root body nav.nav {
    background:rgba(249,252,254,.97)!important;border-bottom:1px solid #d5e4ec!important;
    box-shadow:0 3px 18px #153a4e0c!important;gap:10px 18px!important;
  }
  .nav :where(button,summary):where(:not([data-music-toggle]):not([class*="music"])) {
    background:#fff!important;color:#23485f!important;border:1px solid #d5e2ea!important;
    border-radius:10px!important;box-shadow:0 1px 2px #14374808!important;
    text-shadow:none!important;min-height:44px!important;font-weight:600!important;
  }
  .nav .nav-link.on,.nav-actions .btn-tide {
    background:#075b84!important;color:#fff!important;border-color:#075b84!important;
    box-shadow:0 3px 8px #075b841a!important;
  }
  .nav .nav-link.on span,.nav-actions .btn-tide span {color:#fff!important;}
  .nav-links {
    gap:6px!important;padding:3px 0 7px!important;scrollbar-width:thin!important;
    scrollbar-color:#a8c5d5 transparent!important;mask-image:none!important;-webkit-mask-image:none!important;
  }
  .nav-links::-webkit-scrollbar {height:4px!important;}
  .nav-links::-webkit-scrollbar-thumb {background:#a8c5d5!important;box-shadow:none!important;}
  .nav-links::-webkit-scrollbar-track {background:transparent!important;}
  .nav-tools .search input,.nav-tools #search-in {
    background:#fff!important;border:1px solid #cddfe9!important;border-radius:10px!important;
    color:#1d4056!important;box-shadow:none!important;min-height:44px!important;
  }
  .nav-tools .search input::placeholder {color:#5b7484!important;opacity:1!important;}
  .hero-content,.cap-hero-content {
    background:rgba(249,253,255,.95)!important;border:1px solid #d4e4ed!important;
    border-radius:22px!important;box-shadow:0 8px 30px #163b4b12!important;
    padding:clamp(24px,4vw,48px)!important;
  }
  .hero h1,.cap-hero h1 {line-height:1.13!important;letter-spacing:-.035em!important;text-wrap:balance;}
  .hero p,.cap-hero p {color:#34576a!important;line-height:1.7!important;}
  .hero-ctas {background:transparent!important;border:0!important;box-shadow:none!important;gap:10px!important;}
  .hero-ctas :is(.cta-big,.cta-ghost) {
    background:#075b84!important;color:#fff!important;border:1px solid #075b84!important;
    border-radius:12px!important;box-shadow:0 4px 12px #075b8426!important;min-height:48px!important;
    padding:12px 18px!important;font-weight:700!important;
  }
  .hero-ctas button span {color:inherit!important;}
  .hero-ctas .cta-ghost {background:#fff!important;color:#075b84!important;border-color:#c7dce8!important;box-shadow:none!important;}
  .hero-meta {border-top:1px solid #d6e5ed!important;padding-top:22px!important;gap:20px!important;}
  .hero-meta strong {color:#075b84!important;}
  .hero-meta span {color:#567080!important;}
  :is(.card-body,.form-card,.explainer-card,.review-card,.profile-card,.detail-card,.organiser-card,.role-card,.wiz-card) {
    background:rgba(250,253,255,.96)!important;border-color:#d5e4ec!important;
    border-radius:18px!important;box-shadow:0 4px 18px #163b4b0d!important;
  }
  .nav :is(a,button,summary,input):focus-visible,.hero-ctas button:focus-visible {
    outline:3px solid #0875ad!important;outline-offset:3px!important;box-shadow:0 0 0 5px #65bce929!important;
  }
  @media(hover:hover) {
    .nav :is(button,summary):not([data-music-toggle]):hover {background:#edf7fc!important;border-color:#86bdd7!important;box-shadow:0 0 14px #5fb9e52e!important;}
    .nav .nav-link.on:hover,.nav-actions .btn-tide:hover,.hero-ctas .cta-big:hover {background:#064c70!important;color:#fff!important;box-shadow:0 0 20px #5fb9e552!important;}
  }
  @media(max-width:900px) {
    .nav {grid-template-columns:minmax(0,1fr) auto!important;padding:12px 16px!important;gap:10px 8px!important;}
    .nav>.brand {grid-column:1!important;grid-row:1!important;gap:10px!important;min-width:0!important;}
    .nav .brand>span:last-child {font-size:20px!important;line-height:1.2!important;}
    .nav>.nav-actions {grid-column:2!important;grid-row:1!important;gap:6px!important;}
    .nav>.nav-links {grid-column:1/-1!important;grid-row:2!important;}
    .nav>.nav-tools {grid-column:1/-1!important;grid-row:3!important;gap:8px!important;}
    .nav-actions>.btn,.nav-actions summary {padding:8px 10px!important;}
    .nav-tools .search {flex:1 1 130px!important;min-width:0!important;}
    .hero {padding:28px 16px 40px!important;}
    .hero-content {padding:24px!important;}
    .hero h1 {font-size:clamp(1.9rem,7.8vw,2.5rem)!important;}
    .hero p {font-size:16px!important;}
    .hero-ctas {display:flex!important;flex-wrap:wrap!important;}
    .hero-ctas>button {flex:1 1 155px!important;}
    .hero-meta {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
  @media(forced-colors:active) {
    .nav :is(button,summary,input),.hero-ctas button {background:ButtonFace!important;color:ButtonText!important;border-color:ButtonText!important;box-shadow:none!important;}
    .nav :is(button,summary) span,.hero-ctas button span {color:ButtonText!important;}
    .nav :focus-visible,.hero-ctas :focus-visible {outline-color:Highlight!important;}
  }
}
