/* Helsinki Culture Radar · Nordic contemporary / warm editorial direction.
   The original eight-ray starburst from the teaser panel is our central brand mark.
   Design tokens are shared with the existing behavior and layout CSS. */
:root {
  color-scheme: light;
  --bg: #faf8f5;
  --surface: #fffefd;
  --surface2: #f1eff6;
  --border: #e4e0e5;
  --text: #24243e;
  --muted: #6c687a;
  --lime: #6256bb; /* legacy variable name, now our iris-purple accent */
  --orange: #e98b72;
  --ink: #292841;
  --iris: #6256bb;
  --iris-soft: #eeeafd;
  --peach: #ffd8c8;
  --lilac: #cbc9fa;
}
body { background:var(--bg); color:var(--ink); }
::selection { background:#d8cffd; color:var(--ink); }
.skip { color:#fff; }
a,button { -webkit-tap-highlight-color:transparent; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible { outline-color: #695bc8; }

/* Navigation and eight-ray signature symbol */
.topbar { background:rgba(250,248,245,.94); border-bottom-color:var(--border); backdrop-filter:blur(20px); }
.brand { gap:12px; }
.brand-mark {
  width:42px; height:42px; flex-shrink:0;
  border:0; border-radius:13px; position:relative;
  background:linear-gradient(135deg,#ffd6bb 0%,#f2cddd 48%,#c6c7fa 100%);
  box-shadow:0 5px 13px #a19abd24;
  display:grid; place-items:center;
}
.brand-mark::before,.brand-mark::after,.mark-dot { display:none!important; }
.brand-mark img { display:block; width:29px; height:29px; filter:brightness(0) saturate(100%) invert(20%) sepia(20%) saturate(2014%) hue-rotate(210deg) brightness(82%) contrast(92%); }
.brand-name { color:var(--ink); letter-spacing:.75px; }
.brand-name strong { color:#6353b9; }
.brand-sep { color:#a7a0ae; }
.location-chip { color:#777283; }
.location-circle { border-color:var(--iris); background:#d0c9f5; }
.nav-saved { border-color:#ddd7e2; background:#fff; border-radius:50px; color:var(--ink); box-shadow:0 2px 9px #211f3210; }
.nav-saved.active { color:var(--iris); border-color:var(--iris); background:var(--iris-soft); }
.saved-count { color:var(--iris); }

/* Helsinki modernism: airy paper neutrals + soft evolving sky gradients */
.hero {
  background:
    radial-gradient(ellipse at 92% 10%,#c1c6fb8c,transparent 43%),
    radial-gradient(ellipse at 64% 94%,#ffdacb91,transparent 56%),
    linear-gradient(110deg,#fff7ed 0%,#f6eff8 54%,#e8e7fc 100%);
  border-bottom:1px solid #e8dfec;
}
.eyebrow,.section-kicker { color:#6656ba; }
.eyebrow-line { background:#b7a8d3; }
.hero h1 { color:var(--ink); }
.hero h1 em { color:#6858ba; }
.period,.lime { color:#e78979; }
.hero-intro { color:#5e5b72; font-size:16px; }
.explore-link { color:#6253b1; border-color:#bcb4dc; }
.hero-art { opacity:.58; }
.orbit,.orbit-two,.orbit-three { border-color:#8880c950; }
.radar-sweep { background:conic-gradient(from -20deg,transparent 0deg,transparent 280deg,#8a7ad83b 317deg,transparent 360deg); }
.radar-core { background:#8f7dcc; border-color:#bcb1ef9c; box-shadow:0 0 28px #998add70; }
.radar-ping { background:#6554ae; box-shadow:0 0 0 7px #9182d122; }
.ping-b { background:#e58f72; box-shadow:0 0 0 7px #ef967332; }
.hero-art::before,.hero-art::after { background:#776caf42; }
.art-number,.art-label { color:#706983; }
.hero-bottom { border-top-color:#b6aecd66; color:#756f85; }
.slash { color:#e98b72; }

/* Discovery workspace */
.section-heading h2 { color:var(--ink); }
.live-indicator { color:#6e6980; }
.live-dot { background:#a392e3; box-shadow:0 0 0 4px #e8e2ff; }
.filters-panel { background:#fffefa; border-color:#e5e0e6; border-radius:20px; box-shadow:0 12px 46px #302a4410; }
.search-box,.sort-wrap { background:#f8f6f5; border-color:#ded9e2; border-radius:12px; }
.search-box svg { stroke:#8e88a2; }
.search-box input { color:#28263a; }
.search-box input::placeholder { color:#8b8596; }
.search-box:focus-within { border-color:#776ad0; background:#fff; box-shadow:0 0 0 3px #a59ae92d; }
.search-shortcut,.sort-wrap { color:#797387; }
.sort-wrap select,.field-select select { color:#2f294a; }
.sort-wrap select option,.field-select select option { background:white; color:var(--ink); }
.date-tabs button { color:#756f83; border-radius:30px; }
.date-tabs button.active,.date-tabs button:hover { background:#e8e3fb; color:#5144a4; }
.field-select,.field-date { color:#6554b8; border-color:#ded9e4; border-radius:12px; background:#fff; }
.field-date input { color:#2e2c44; color-scheme:light; }
.free-toggle { color:#4f4b62; }
.toggle-track { background:#c9c5ce; }
.free-toggle input:checked+.toggle-track { background:#7567c8; }
.free-toggle input:checked+.toggle-track::before { background:#fff; }
.category-tabs { border-top-color:#ebe7ec; }
.category-tabs button { color:#736e81; }
.category-tabs button:hover { color:#5547a9; }
.category-tabs button.active { background:#eeeafb; border-color:#e4ddfa; color:#5547a9; }
.results-top div { color:#716b7c; }
.results-top strong { color:var(--ink); }
.results-top>span { color:#878092; }

/* Events as inviting editorial cards */
.event-card { background:#fff; border-color:#e9e5e8; border-radius:17px; box-shadow:0 8px 25px #3b33400b; }
.event-card:hover { transform:translateY(-5px); border-color:#bbb1e5; box-shadow:0 16px 35px #54476a1c; }
.card-image { background:linear-gradient(140deg,#d2d4f6 0%,#f0d5e3 54%,#ffd8b3 100%); color:#4c4975; }
.card-image::after { background:linear-gradient(0deg,#2b23451c,transparent 45%); }
.category-exhibitions .card-image { background:linear-gradient(135deg,#ffdbb9,#f8bfb8,#d5c6f5); }
.category-nightlife .card-image { background:linear-gradient(135deg,#7770bf,#c096d9,#f4b4c7); }
.category-workshops .card-image { background:linear-gradient(135deg,#e5d8fb,#b9d4e3,#fbe1bf); }
.category-film .card-image { background:linear-gradient(135deg,#b9c9fa,#aaa3dd,#f1d9d2); }
.category-talks .card-image { background:linear-gradient(135deg,#fbdcc4,#dbc1ec,#c5dced); }
.category-badge { background:#fffbf9e8; color:#41355e; border-color:#fff8; border-radius:8px; }
.favorite-button { background:#fffaf2e8; border:1px solid #e7dbdb; color:#48405b; }
.favorite-button[aria-pressed=true] { color:#c4537e; border-color:#f3b2cc; background:#fff1f5; }
.free-label,.curated-label { background:#fff0c2; color:#4d3c52; border-radius:7px; }
.curated-label { background:#f9d3d8; color:#633b51; }
.card-date { color:#5a4cac; }
.card-title { color:#27243b; }
.card-description,.card-location { color:#797487; }
.card-bottom { border-top-color:#eee9ed; }
.details-link { color:#594bb0; }
.source-link { color:#787184; }
.load-more { background:#fff; border:1px solid #d9d1e6; border-radius:50px; color:#594cae; }
.skeleton-card { background:#fff; border-color:#ebe5e9; border-radius:17px; }
.skeleton-image { background:#ece6f5; }
.skeleton-bar { background:#f0edf2; }
.empty-state { background:linear-gradient(130deg,#f8f0ee,#ebe9fa); border-color:#d6cee8; border-radius:19px; }
.empty-state p { color:#686274; }
.button-primary { background:#6759bb; border-color:#6759bb; color:white; border-radius:50px; }
.button-primary:hover { background:#5143a2; }
.button-secondary { color:#594cae; border-color:#d5cae7; background:#fff; border-radius:50px; }
.button-secondary:hover { background:#f3f0ff; }

/* Starburst editorial panel – brand source */
.beyond {
  background:linear-gradient(122deg,#e8e7fa 0%,#f9e5e4 53%,#ffd7b9 100%);
  border-color:#e4dbe3; border-radius:21px; box-shadow:0 14px 40px #3d345316;
}
.beyond h2 { color:#28263f; }
.beyond h2 em { color:#6b59bd; }
.beyond p { color:#625b71; }
.mail-link { color:#5b4baa; border-color:#a99ad3; }
.beyond-side { color:#494070; }
.asterisk { display:block; width:155px; height:155px; align-self:flex-end; object-fit:contain; filter:brightness(0) saturate(100%) invert(28%) sepia(19%) saturate(1772%) hue-rotate(213deg) brightness(91%) contrast(90%); }
.footer { border-top-color:#e9e3e6; background:#f6f3f0; }
.footer-logo { color:#36314e; display:flex; align-items:center; gap:8px; }
.tiny-radar { display:inline-block; width:21px; height:21px; object-fit:contain; filter:brightness(0) saturate(100%) invert(25%) sepia(23%) saturate(2178%) hue-rotate(210deg) brightness(88%) contrast(89%); }
.footer-links { color:#6d667c; }
.footer-links a:hover { color:#5444a4; }
.footnote { color:#857f8c; }
#details-dialog { background:#fffefa; border-color:#e9deeb; color:var(--ink); border-radius:22px; box-shadow:0 30px 90px #34304455; }
#details-dialog::backdrop { background:#29213a9a; }
.dialog-close { color:#403853; border-color:#e1dbe6; background:#f7f3f8; }
.detail-category,.detail-datetime { color:#6253b3; }
.detail-description { color:#625c70; }
.detail-source { color:#80798a; }
.toast { background:#5546a6; color:white; border-radius:13px; box-shadow:0 8px 30px #5b4eb34b; }

@media(max-width:750px) {
  .brand-mark { height:34px; width:34px; border-radius:11px; }
  .brand-mark img { width:23px;height:23px; }
  .hero { background:radial-gradient(ellipse at 100% 70%,#c9c9f1a8,transparent 50%),linear-gradient(135deg,#fff6ec,#f3effc); }
  .hero-art { opacity:.25; }
  .filters-panel { border-radius:16px; }
  .beyond { border-radius:17px; }
  .asterisk { width:170px; height:170px; opacity:.75; }
}
