/* Public search has its own scope; it also appears on course/product stylesheets. */
html[data-divers-appearance] .divers-search-trigger {
  appearance:none; position:fixed; left:calc(66px + var(--divers-cookie-width, 42px)); bottom:max(8px, env(safe-area-inset-bottom)); z-index:1301;
  display:grid; place-items:center; width:42px; height:42px; min-height:0; padding:0; margin:0;
  border:1px solid var(--appearance-line); border-radius:50%; color:var(--appearance-ink);
  background:color-mix(in srgb,var(--appearance-panel) 90%,transparent); box-shadow:0 8px 22px #0f172a33;
  backdrop-filter:blur(8px) saturate(135%); cursor:pointer; transform:none;
}
html[data-divers-appearance]:has(.divers-search-trigger) #cookiescript_badge { left:58px; max-width:calc(100vw - 116px); }
html[data-divers-order-bar] .divers-search-trigger { bottom:calc(var(--divers-order-height,90px) + 8px); }
html .divers-search-trigger[hidden], html .divers-search [hidden] { display:none; }
html .divers-search-trigger:hover { border-color:#1589a8; }
html .divers-search-trigger:focus-visible { outline:3px solid #1589a8; outline-offset:3px; }
html dialog.divers-search {
  --search-muted:#5a707b; --search-accent:#14677f; --search-surface:#f2f6f6;
  position:fixed; inset:calc(var(--search-offset,0px) + min(10vh,80px)) auto auto 50%; transform:translateX(-50%);
  width:min(680px,calc(100% - 40px)); max-width:680px; max-height:calc(var(--search-viewport,100dvh) - 110px);
  padding:0; margin:0; border:1px solid var(--appearance-line,#ced5d7); border-radius:22px;
  background:var(--appearance-panel,#fff); color:var(--appearance-ink,#071d2b); box-shadow:0 30px 100px #00121c66;
  font:400 15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-align:left; overflow:hidden;
}
html[data-theme=dark] dialog.divers-search { --search-muted:#b6cbd5; --search-accent:#79c8df; --search-surface:#153443; }
html dialog.divers-search::backdrop { background:#03162299; backdrop-filter:blur(5px); }
html .divers-search-inner { display:flex; flex-direction:column; max-height:inherit; }
html .divers-search :is(h2,h3,p,ol) { margin:0; padding:0; color:inherit; text-transform:none; }
html .divers-search button { appearance:none; margin:0; font:inherit; letter-spacing:normal; text-transform:none; cursor:pointer; box-shadow:none; transform:none; }
html .divers-search :is(a,button,input):focus-visible { outline:3px solid var(--search-accent); outline-offset:3px; }
html .divers-search-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:24px 26px 18px; }
html .divers-search-heading p { font:650 10px/1.3 system-ui,sans-serif; letter-spacing:.16em; color:var(--search-accent); margin-bottom:5px; }
html .divers-search-heading h2 { font:650 28px/1.2 system-ui,sans-serif; letter-spacing:-.04em; }
html .divers-search-close { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; min-height:0; padding:0; border:1px solid var(--appearance-line); border-radius:50%; background:transparent; color:inherit; }
html .divers-search-form { margin:0; padding:0 26px; }
html .divers-search-field { display:flex; align-items:center; gap:12px; padding:0 14px; border:1px solid var(--appearance-line); border-radius:12px; background:var(--search-surface); color:var(--search-accent); }
html .divers-search-field:focus-within { border-color:var(--search-accent); box-shadow:0 0 0 2px color-mix(in srgb,var(--search-accent) 16%,transparent); }
html .divers-search-field > svg { flex-shrink:0; }
html .divers-search-field input { appearance:none; box-sizing:border-box; width:100%; min-width:0; height:54px; padding:0; margin:0; border:0; border-radius:0; outline:none; background:transparent; color:var(--appearance-ink); font:400 16px/1.4 system-ui,sans-serif; box-shadow:none; }
html .divers-search-field input::placeholder { color:var(--search-muted); opacity:1; }
html .divers-search-field input:focus-visible { outline:none; }
html .divers-search-field input::-webkit-search-cancel-button { appearance:none; }
html .divers-search-clear { border:0; padding:8px 0; color:var(--search-muted); background:transparent; font-size:11px; }
html .divers-search-filters { display:flex; flex-wrap:wrap; gap:6px; padding:16px 26px 0; }
html .divers-search-filters button { display:flex; gap:7px; align-items:center; min-height:36px; border:1px solid var(--appearance-line); border-radius:999px; padding:6px 12px; color:var(--search-muted); background:transparent; font-size:12px; }
html .divers-search-filters button[aria-pressed=true] { color:var(--appearance-panel); background:var(--appearance-ink); border-color:var(--appearance-ink); }
html .divers-search-filters span { opacity:.7; font-size:10px; font-variant-numeric:tabular-nums; }
html .divers-search p.divers-search-status { padding:14px 26px 10px; color:var(--search-muted); font-size:12px; }
html .divers-search-scroll { overflow:auto; overscroll-behavior:contain; padding:0 14px 14px; min-height:0; }
html .divers-search-results { list-style:none; }
html .divers-search-results li { margin:0; padding:0; }
html .divers-search-result { display:flex; flex-direction:column; gap:5px; padding:16px 12px; border:1px solid transparent; border-bottom-color:var(--appearance-line); border-radius:10px; color:inherit; text-decoration:none; box-shadow:none; transition:background-color .15s; }
html .divers-search-result:hover, html:not([data-focus-modality="pointer"]) .divers-search-result:focus-visible { color:inherit; background:var(--search-surface); border-color:var(--appearance-line); text-decoration:none; box-shadow:none; }
html .divers-search-result strong { font:650 18px/1.3 system-ui,sans-serif; letter-spacing:-.02em; color:var(--appearance-ink); overflow-wrap:anywhere; }
html .divers-search-category { color:var(--search-accent); font-size:10px; letter-spacing:.04em; font-weight:650; }
html .divers-search-category[data-kind=event] { color:#9c4d26; }
html[data-theme=dark] .divers-search-category[data-kind=event] { color:#f7b28b; }
html .divers-search-result p { color:var(--search-muted); font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
html .divers-search-meta { font-size:11px; font-weight:550; color:var(--search-accent); margin-top:3px; }
html .divers-search mark { color:inherit; background:color-mix(in srgb,var(--search-accent) 12%,transparent); border-radius:2px; padding:0; }
html .divers-search-start { padding:16px 12px 22px; }
html .divers-search-start > p { color:var(--search-muted); font-size:12px; margin-bottom:12px; }
html .divers-search-start > div { display:flex; flex-wrap:wrap; gap:8px; }
html .divers-search-start button { min-height:38px; padding:8px 13px; border:1px solid var(--appearance-line); border-radius:9px; background:transparent; color:inherit; font-size:13px; }
html .divers-search-start button:hover, html .divers-search-close:hover { background:var(--search-surface); }
html .divers-search-start p.divers-search-tip { margin:20px 0 0; font-size:12px; }
html .divers-search-empty { padding:26px 12px; }
html .divers-search-empty h3 { font:650 20px/1.4 system-ui,sans-serif; }
html .divers-search-empty p { font-size:13px; color:var(--search-muted); margin:8px 0 14px; }
html .divers-search-empty a { color:var(--search-accent); font-size:13px; text-underline-offset:3px; }
html .divers-search-more, html .divers-search-retry { display:block; width:calc(100% - 24px); margin:14px 12px 0; min-height:42px; border:1px solid var(--appearance-line); border-radius:10px; padding:10px; background:var(--search-surface); color:inherit; font-size:13px; }
html .divers-search-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; padding:12px 26px; border-top:1px solid var(--appearance-line); color:var(--search-muted); font-size:10px; }
@media (max-width:600px) {
  html dialog.divers-search { inset:calc(var(--search-offset,0px) + 12px) 12px auto; transform:none; width:calc(100% - 24px); max-height:calc(var(--search-viewport,100dvh) - 24px); border-radius:17px; }
  html .divers-search-heading { padding:19px 18px 16px; }
  html .divers-search-heading h2 { font-size:25px; }
  html .divers-search-form { padding:0 18px; }
  html .divers-search-field { gap:8px; padding:0 10px; }
  html .divers-search-field input { height:50px; }
  html .divers-search-filters { padding:14px 18px 0; gap:5px; }
  html .divers-search-filters button { padding:7px 10px; }
  html .divers-search p.divers-search-status { padding:12px 18px 8px; }
  html .divers-search-scroll { padding:0 7px 10px; }
  html .divers-search-result { padding:14px 10px; }
  html .divers-search-result strong { font-size:17px; }
  html .divers-search-footer { padding:11px 18px; }
  html .divers-search-keys { display:none; }
}
@media (prefers-reduced-motion:reduce) { html .divers-search-result { transition:none; } }

html:not([data-focus-modality="pointer"]) .divers-search-result:focus-visible { outline-offset:-2px; }

@media(max-width:600px) {
  /* Leave room for all three controls and the return-to-top button on touch screens. */
  html[data-divers-appearance]:has(.divers-search-trigger) #cookiescript_badge { max-width:calc(100vw - 174px); }
  html[data-divers-appearance]:has(.divers-search-trigger) button.divers-back-to-top { width:42px; min-height:42px; padding:10px; }
  html[data-divers-appearance]:has(.divers-search-trigger) .divers-back-to-top-label { display:none; }
}
