/* HSB Gjutaren – kompletterande stilar. Färger och typografi ligger i theme.json. */

:root { --gjutaren-hairline: color-mix(in srgb, var(--wp--preset--color--contrast) 15%, transparent); }

/* Ingress */
.is-style-lead { font-size: var(--wp--preset--font-size--x-large); color: var(--wp--preset--color--accent-3); line-height: 1.45; }

/* Sidhuvud: aktiv sektion understruken */
.wp-block-navigation .wp-block-navigation-item.current-menu-item > a,
.wp-block-navigation .wp-block-navigation-item.current-menu-ancestor > a { text-decoration: underline; text-underline-offset: 0.35em; text-decoration-thickness: 1px; }
.gjutaren-header .wp-block-site-title a { text-decoration: none; }

/* Sidomeny för sektionen */
.gjutaren-section-nav-wrap { font-size: var(--wp--preset--font-size--small); display: flex; flex-direction: column; gap: 8px; }
.gjutaren-section-nav-wrap .gjutaren-section-title { font-weight: 500; text-decoration: none; color: var(--wp--preset--color--contrast); }
.gjutaren-section-nav-wrap .wp-block-page-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.gjutaren-section-nav-wrap .wp-block-pages-list__item { margin: 0; }
.gjutaren-section-nav-wrap .wp-block-pages-list__item a { display: block; padding-left: 12px; border-left: 2px solid transparent; text-decoration: none; color: var(--wp--preset--color--accent-3); }
.gjutaren-section-nav-wrap .wp-block-pages-list__item a:hover { color: var(--wp--preset--color--accent-1); }
.gjutaren-section-nav-wrap .current-menu-item > a { color: var(--wp--preset--color--accent-1); font-weight: 500; border-left-color: var(--wp--preset--color--accent-1); }
.gjutaren-section-nav-wrap .wp-block-pages-list__item .submenu-container, .gjutaren-section-nav-wrap .wp-block-navigation__submenu-icon { display: none; }
@media (max-width: 781px) { .gjutaren-sidebar { border-top: 1px solid var(--gjutaren-hairline); padding-top: var(--wp--preset--spacing--40); } }

/* Brödsmulor */
.wp-block-breadcrumbs { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); }
.wp-block-breadcrumbs a { color: var(--wp--preset--color--accent-4); }

/* Dokument (filblock): ensam länk = vanlig länk, flera i följd = lista med tunna linjer */
.wp-block-file { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-block: 0; }
.wp-block-file:not(.wp-block-file + .wp-block-file) { margin-top: var(--wp--style--block-gap, 1.2rem); }
.wp-block-file:has(+ .wp-block-file), .wp-block-file + .wp-block-file { padding: 14px 0; border-top: 1px solid var(--gjutaren-hairline); }
.wp-block-file + .wp-block-file:not(:has(+ .wp-block-file)) { border-bottom: 1px solid var(--gjutaren-hairline); }
.wp-block-file:has(+ .wp-block-file) a, .wp-block-file + .wp-block-file a { text-decoration: none; }
.wp-block-file:has(a[href$=".pdf" i])::after { content: "PDF"; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); }
.wp-block-file:has(a[href$=".zip" i])::after { content: "ZIP"; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); }
.wp-block-file:not(:has(+ .wp-block-file)):not(.wp-block-file + .wp-block-file) { justify-content: flex-start; }
.wp-block-file .wp-block-file__button { display: none; }
.wp-block-details .wp-block-file:first-of-type { margin-top: 0; }

/* Utfällbar rad (t.ex. äldre årsredovisningar) */
.wp-block-details { border-top: 1px solid var(--gjutaren-hairline); border-bottom: 1px solid var(--gjutaren-hairline); padding: 0; }
.wp-block-details > summary { padding: 14px 0; color: var(--wp--preset--color--accent-3); cursor: pointer; }
.wp-block-details[open] > summary { border-bottom: 0; }
.wp-block-file + .wp-block-details { border-top: 0; }

/* Tabeller: bara tunna vågräta linjer */
.wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table td, .wp-block-table th { border: 0; border-top: 1px solid var(--gjutaren-hairline); padding: 14px 24px 14px 0; text-align: left; vertical-align: top; }
.wp-block-table tr:last-child td { border-bottom: 1px solid var(--gjutaren-hairline); }
.wp-block-table thead { border-bottom: 1px solid var(--wp--preset--color--contrast); }
.wp-block-table thead th { font-weight: 500; border-top: 0; }
.wp-block-table.is-style-gjutaren-fakta td:first-child { color: var(--wp--preset--color--accent-4); white-space: nowrap; }
.wp-block-table figcaption { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); }

/* Länklista (översiktssidor) */
.wp-block-list.is-style-gjutaren-lanklista { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 30rem), 1fr)); column-gap: 64px; }
.wp-block-list.is-style-gjutaren-lanklista > li { border-top: 1px solid var(--gjutaren-hairline); padding: 22px 32px 22px 0; position: relative; color: var(--wp--preset--color--accent-4); font-size: var(--wp--preset--font-size--medium); margin: 0; }
.wp-block-list.is-style-gjutaren-lanklista > li a { display: block; font-size: var(--wp--preset--font-size--x-large); color: var(--wp--preset--color--contrast); text-decoration: none; letter-spacing: -0.02em; margin-bottom: 4px; }
.wp-block-list.is-style-gjutaren-lanklista > li a::after { content: ""; position: absolute; inset: 0; }
.wp-block-list.is-style-gjutaren-lanklista > li::after { content: "→"; position: absolute; right: 0; top: 22px; font-size: var(--wp--preset--font-size--x-large); color: var(--wp--preset--color--contrast); }
.wp-block-list.is-style-gjutaren-lanklista > li:hover a, .wp-block-list.is-style-gjutaren-lanklista > li:hover::after { color: var(--wp--preset--color--accent-1); }

/* Enkel lista med linjer (t.ex. mötesdatum) */
.wp-block-list.is-style-gjutaren-rader { list-style: none; padding: 0; margin-left: 0; }
.wp-block-list.is-style-gjutaren-rader > li { padding: 12px 0; border-top: 1px solid var(--gjutaren-hairline); margin: 0; }
.wp-block-list.is-style-gjutaren-rader > li:last-child { border-bottom: 1px solid var(--gjutaren-hairline); }

/* Telefonnummer */
.gjutaren-nummer a { text-decoration: none; }

/* Startsidan */
.gjutaren-nyheter .wp-block-post { border-top: 1px solid var(--wp--preset--color--contrast); padding-top: 24px; }
.gjutaren-skiss img { mix-blend-mode: multiply; -webkit-mask-image: radial-gradient(ellipse 72% 70% at 50% 50%, #000 55%, transparent 100%); mask-image: radial-gradient(ellipse 72% 70% at 50% 50%, #000 55%, transparent 100%); }
.gjutaren-siffror .wp-block-column { border-top: 1px solid var(--gjutaren-hairline); padding-top: 16px; }

/* Bildrutnät med lika format */
.gjutaren-bildrutnat .wp-block-image img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.gjutaren-bildrutnat.is-kvadrat .wp-block-image img { aspect-ratio: 1; }
.wp-block-image figcaption { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); text-align: left; margin-top: 8px; }

/* Sidfot */
.gjutaren-footer a { text-decoration: none; }
.gjutaren-footer a:hover { text-decoration: underline; }
.gjutaren-footer .wp-block-column p { margin-block: 0 0.6em; }

/* Startsidan: kräm-sektionen går ihop med sidfoten */
.home .wp-site-blocks > footer, .home .wp-site-blocks > .wp-block-template-part:last-child { margin-block-start: 0; }

/* Sidhuvud på mobil */
.gjutaren-header .wp-block-buttons { flex-shrink: 0; }
.gjutaren-header .wp-block-button__link { white-space: nowrap; }
@media (max-width: 600px) { .gjutaren-header .wp-block-site-title { font-size: var(--wp--preset--font-size--medium); } }
.wp-block-file:has(a[href$=".doc" i])::after, .wp-block-file:has(a[href$=".docx" i])::after { content: "DOC"; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); }
.is-style-lead + .wp-block-list.is-style-gjutaren-lanklista { margin-top: var(--wp--preset--spacing--50); }
.gjutaren-siffror p { overflow-wrap: normal; word-break: normal; hyphens: auto; }

/* Aktuellt: hela inlägg i en lista, senaste överst */
.gjutaren-aktuellt .wp-block-post-template { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--70); }
.gjutaren-aktuellt .wp-block-post { border-top: 1px solid var(--wp--preset--color--contrast); padding-top: var(--wp--preset--spacing--40); }
.gjutaren-aktuellt .wp-block-post-title a { text-decoration: none; }
.gjutaren-aktuellt .wp-block-post-title { font-size: var(--wp--preset--font-size--xx-large); }
.gjutaren-aktuellt .wp-block-query-pagination { margin-top: var(--wp--preset--spacing--60); }
.home .wp-block-heading a { text-decoration: none; }

/* Lite mer luft mellan avsnitten på undersidorna */
.wp-block-post-content > h2.wp-block-heading { margin-block-start: clamp(36px, 4vw, 52px); }
.wp-block-post-content > h2.wp-block-heading:first-child { margin-block-start: 0; }

/* Tunn linje under sidhuvudet */
.gjutaren-header { border-bottom: 1px solid var(--gjutaren-hairline); }

/* HSB-loggan längst till höger i sidfoten */
.gjutaren-footer .gjutaren-logo-col { flex: 0 0 auto !important; display: flex; justify-content: flex-end; }
.gjutaren-footer .gjutaren-hsb-logo { margin: 0; }
.gjutaren-footer .gjutaren-hsb-logo img { height: 96px; width: auto; }
@media (max-width: 781px) { .gjutaren-footer .gjutaren-logo-col { justify-content: flex-start; } }
.gjutaren-footer p { overflow-wrap: normal; word-break: normal; }

/* Sidfot: namn, tre kolumner och logga jämnt fördelade */
@media (min-width: 782px) {
  .gjutaren-footer > .wp-block-columns { justify-content: space-between; column-gap: 40px !important; }
  .gjutaren-footer > .wp-block-columns > .wp-block-column { flex: 0 1 auto !important; }
}
.gjutaren-aktuellt [id^="nyhet-"] { scroll-margin-top: 24px; }

/* Mobilmenyn (öppnad via ikonen med tre streck) */
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--base) !important;
	color: var(--wp--preset--color--contrast) !important;
	padding: 24px 20px 40px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { top: 24px; right: 20px; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: stretch !important;
	padding-top: 88px !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: stretch !important;
	gap: 0 !important;
	width: 100%;
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--contrast) 15%, transparent);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--contrast) 15%, transparent);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: flex !important;
	justify-content: space-between;
	align-items: baseline;
	width: 100%;
	padding: 18px 0 !important;
	font-size: 28px;
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.2;
	text-decoration: none !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after {
	content: "→";
	font-size: 22px;
}
.wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .current-menu-ancestor > .wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--accent-1);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus { outline: none; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent-1);
	outline-offset: 4px;
}

/* Mobil: få plats med hela sidhuvudet */
@media (max-width: 600px) {
	:root { --wp--preset--spacing--50: 20px; }
	.gjutaren-header > .wp-block-group { gap: 14px !important; }
	.gjutaren-header > .wp-block-group > .wp-block-group { gap: 8px !important; }
	.gjutaren-header .wp-block-site-title { font-size: 15px !important; line-height: 1.3; min-width: 0; margin-right: 12px !important; }
	.gjutaren-header .wp-block-button__link { padding: 0.45rem 0.9rem !important; font-size: 14px !important; }
	.gjutaren-header .wp-block-navigation__responsive-container-open { padding: 6px; }
	h1.wp-block-post-title, main h1 { font-size: clamp(32px, 9.5vw, 44px) !important; overflow-wrap: break-word; hyphens: auto; }
}
@media (max-width: 360px) {
	.gjutaren-header .wp-block-site-title { font-size: 13.5px !important; }
	.gjutaren-header .wp-block-button__link { padding: 0.4rem 0.75rem !important; font-size: 13px !important; }
}
