/* Materials share the Events typography, palette and responsive 3/2/1 grid. */
/* Format owns the color; topic owns the miniature. Text labels never rely on color. */
[data-format-tone]{--format-bg:#eeedf0;--format-hover:#e4e2e8;--format-ink:#534d60;--format-edge:#81758e}
[data-format-tone="lavender"]{--format-bg:#eee8f7;--format-hover:#e5dcf1;--format-ink:#5a4177;--format-edge:#9272b5}
[data-format-tone="turquoise"]{--format-bg:#e0f2ee;--format-hover:#d0eae4;--format-ink:#226557;--format-edge:#4b9b87}
[data-format-tone="yellow"]{--format-bg:#faf1d5;--format-hover:#f3e6ba;--format-ink:#745c18;--format-edge:#b69b49}
[data-format-tone="blue"]{--format-bg:#e3eff9;--format-hover:#d4e5f4;--format-ink:#365f81;--format-edge:#709abd}
[data-format-tone="indigo"]{--format-bg:#e7e8f8;--format-hover:#dbddf1;--format-ink:#4c5088;--format-edge:#8185bc}
[data-format-tone="peach"]{--format-bg:#f9e9de;--format-hover:#f2dbcb;--format-ink:#805037;--format-edge:#bf8b6b}
[data-format-tone="pink"]{--format-bg:#f4e5ed;--format-hover:#ebd7e2;--format-ink:#7d4564;--format-edge:#b7809e}
:root[data-theme="dark"] [data-format-tone]{--format-bg:#302d36;--format-hover:#3b3742;--format-ink:#d1cbdc;--format-edge:#9b8bac}
:root[data-theme="dark"] [data-format-tone="lavender"]{--format-bg:#30273f;--format-hover:#3b304c;--format-ink:#d6c2ed;--format-edge:#ab8dcc}
:root[data-theme="dark"] [data-format-tone="turquoise"]{--format-bg:#203a35;--format-hover:#29473f;--format-ink:#a8dfcf;--format-edge:#6da995}
:root[data-theme="dark"] [data-format-tone="yellow"]{--format-bg:#3b3521;--format-hover:#47402a;--format-ink:#ead69b;--format-edge:#bda565}
:root[data-theme="dark"] [data-format-tone="blue"]{--format-bg:#243445;--format-hover:#2c4054;--format-ink:#b8d5ed;--format-edge:#85abc9}
:root[data-theme="dark"] [data-format-tone="indigo"]{--format-bg:#2b2d45;--format-hover:#363852;--format-ink:#c9caf4;--format-edge:#9499ce}
:root[data-theme="dark"] [data-format-tone="peach"]{--format-bg:#3d2e28;--format-hover:#4b3930;--format-ink:#edc5ac;--format-edge:#c69679}
:root[data-theme="dark"] [data-format-tone="pink"]{--format-bg:#3c2934;--format-hover:#4a3341;--format-ink:#e9bdd3;--format-edge:#c08ca7}
.catalog .event-card.material-card{padding:0;border-top:1px solid var(--line);overflow:hidden}
.material-card-content{padding:22px;display:flex;flex:1;flex-direction:column;min-width:0}
.material-cover{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-template-rows:auto 1fr 84px;gap:16px;padding:24px;min-height:340px;background:var(--format-bg);color:#282332;flex:none}
.material-cover-format,.material-cover-title{grid-column:1/-1}
.material-cover-format{font-size:.875rem;line-height:1.5;color:var(--format-ink);font-weight:600}
.catalog .material-card .material-cover-title{font-size:1.5rem;line-height:1.25;letter-spacing:-.45px;margin:0;overflow-wrap:anywhere;align-self:start;font-weight:700}
.material-cover-title a{color:inherit!important;text-decoration:none!important}
.material-cover-title a::after{content:'';position:absolute;inset:0}
.material-cover:has(a){position:relative}
.material-cover:has(a:hover){background:var(--format-hover)}
.material-cover:has(a:focus-visible){outline:3px solid var(--primary);outline-offset:-4px}
.material-cover-figure{display:block;width:84px;height:84px;object-fit:contain;grid-column:2;grid-row:3;justify-self:end;align-self:end}
.material-cover--detail{grid-template-columns:minmax(0,1fr) 120px;grid-template-rows:auto 1fr auto;min-height:280px;margin:0 0 28px;border-radius:10px;gap:20px 28px;padding:28px}
.material-cover--detail .material-cover-format{grid-column:1/-1}
.material-detail .material-cover-title{font-size:2rem;line-height:1.25;letter-spacing:-.6px;margin:0;overflow-wrap:anywhere;align-self:center;grid-column:1}
.material-cover--detail .material-cover-figure{width:120px;height:120px;align-self:center;grid-row:2/4}
.material-article>.material-badges{margin-bottom:24px}
:root[data-theme="dark"] .material-cover{color:#f6f2fc}
@media(max-width:700px){.material-card-content{padding:20px}.material-cover{padding:24px;min-height:320px}.material-cover--detail{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-template-rows:auto 1fr 84px;gap:18px;margin-bottom:24px;padding:22px;min-height:0}.material-detail .material-cover-title{font-size:1.625rem;grid-column:1/-1}.material-cover--detail .material-cover-figure{width:84px;height:84px;grid-row:3}}
.material-filter-selects{display:none}
.materials-intro{min-height:172px}.materials-intro .intro-art{height:164px}.materials-intro .intro-lead{max-width:540px}
.material-controls .material-formats{gap:10px;margin:0 0 22px}.material-formats .tab{white-space:normal;line-height:1.45;text-align:left;font-size:.875rem}.material-formats .tab-count{flex-shrink:0}
:root .material-formats .tab[data-format-tone]{border-bottom:3px solid var(--format-edge);box-shadow:none}
:root .material-formats .tab[data-format-tone]:is(:hover,.active){background:var(--format-bg);color:var(--format-ink);border-color:var(--format-edge)}
:root .material-formats .tab[data-format-tone].active{outline:1px solid var(--format-edge);outline-offset:-2px}
:root .material-formats .tab[data-format-tone].active .tab-count{color:var(--format-ink);background:var(--format-hover)}
:root .material-formats .tab[data-format-tone]:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.material-filter-selects #materials-format{border-bottom:3px solid var(--format-edge)}
.material-topic-row{display:flex;gap:16px;align-items:baseline}.material-filter-label{font-size:.875rem;color:var(--muted);font-weight:600;flex-shrink:0}.material-topic-tabs{display:flex;gap:6px 12px;flex-wrap:wrap}.material-topic{font-size:.875rem;min-height:40px;padding:7px 10px;border-radius:7px;color:var(--muted);border:1px solid transparent}.material-topic:hover{background:var(--tint);text-decoration:none}.material-topic.active{color:var(--selected-ink);background:var(--tint);border-color:var(--lavender);font-weight:600}
.material-reset{margin-left:auto;font-size:.875rem;text-decoration:underline;min-height:44px;display:flex;align-items:center}
.catalog .material-card{padding:22px;border-radius:14px;border-top:3px solid var(--lavender);min-width:0;display:flex;flex-direction:column}.material-card-top{display:flex;align-items:center;gap:12px;margin-bottom:20px;min-height:44px}.material-symbol{display:grid;place-items:center;width:42px;height:44px;flex:0 0 auto;border-radius:10px;background:var(--tint);color:var(--selected-ink)}.material-symbol svg{width:22px;height:22px}.material-kind{font-size:.875rem;line-height:1.45;color:var(--selected-ink);font-weight:600}.material-card:has(.material-symbol svg ellipse){border-top-color:var(--turquoise-edge)}.material-card:has(.material-symbol svg ellipse) .material-symbol{background:var(--turquoise-tint);color:var(--turquoise-ink)}
.catalog .material-card h3{font-size:1.125rem;line-height:1.5;margin:0 0 12px;letter-spacing:-.2px}.material-description{font-size:1rem;line-height:1.6;color:var(--muted);margin:0 0 20px}.material-card-bottom{margin-top:auto}.material-topics{display:flex;flex-wrap:wrap;gap:6px 10px;margin-bottom:15px}.material-topics span{font-size:.875rem;color:var(--muted);line-height:1.5}.material-topics span:not(:last-child)::after{content:' ·';margin-left:8px;color:var(--lavender)}.material-read{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:5px}.material-grid .no-results{padding:32px}.material-grid .no-results p{margin-bottom:20px}
.material-badges .badge{font-size:.875rem;line-height:1.5;padding:6px 10px}.material-badges .material-format{background:var(--format-bg);color:var(--format-ink)}.material-detail{max-width:900px}.material-detail h1{margin:18px 0 24px;font-size:2rem;line-height:1.35}.material-author{font-size:.875rem;color:var(--muted);margin:0 0 28px}.material-byline{display:grid;gap:18px;padding:20px;margin:0 0 28px;border-radius:12px;background:var(--soft);font-size:.875rem;color:var(--muted);line-height:1.7}.material-role{display:block;color:var(--selected-ink);margin-bottom:4px;font-weight:600}.material-prose{font-size:1rem;line-height:1.85}.material-prose h2{font-size:1.5rem;line-height:1.4;margin:36px 0 18px;letter-spacing:-.3px}.material-prose h3,.material-prose h4{font-size:1.125rem;line-height:1.55;margin:28px 0 14px}.material-prose h5,.material-prose h6{font-size:1rem;line-height:1.6}.material-prose li{margin:8px 0}.material-prose img{max-width:100%;height:auto;border-radius:10px}.material-prose table{min-width:520px}.material-prose pre{white-space:pre-wrap;overflow-wrap:anywhere}.material-prose details{border:1px solid var(--line);border-radius:10px;padding:16px;margin:14px 0}.material-prose summary{cursor:pointer;font-weight:600}.material-prose [id]{scroll-margin-top:100px}.material-prose .material-callout{margin:22px 0;padding:18px 20px;background:var(--tint);border-left:3px solid var(--lavender);border-radius:0 10px 10px 0}.material-subheading{font-weight:700;margin:18px 0 12px;font-size:1rem}.material-source{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:32px;padding-top:20px;font-size:.875rem}.material-source a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline}
@media(max-width:700px){.material-topic-row{display:block}.material-filter-label{display:block;margin:0 0 8px}.material-topic-tabs{gap:4px 6px}.material-topic{min-height:44px}.material-controls .material-formats{gap:8px;margin-bottom:18px}.material-formats .tab{font-size:.875rem;max-width:100%;gap:8px}.catalog .material-card{padding:20px}.materials-catalog .section-heading{flex-wrap:wrap;gap:8px 12px}.materials-catalog .section-heading h2{font-size:1.25rem;max-width:100%;overflow-wrap:anywhere}.material-reset{margin-left:0}.material-detail h1{font-size:1.625rem;letter-spacing:-.4px}.material-byline{padding:16px}.material-prose h2{font-size:1.375rem}.material-prose [id]{scroll-margin-top:140px}}
@media(max-width:700px){.material-controls .material-formats,.material-controls .material-topic-row{display:none}.material-filter-selects{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.material-filter-selects .field{font-size:.875rem}.material-filter-selects select{width:100%;text-overflow:ellipsis;min-height:48px;padding:10px 8px}.materials-intro .intro-art{height:142px}.material-prose details>div{margin-top:14px}}
