/* Företagsfinanser 1.0.2 – artiklar, klassisk HTML och blockinnehåll. */
.ff-article { padding-bottom: 64px; }
.ff-article-head { padding-block: 38px 34px; }
.ff-breadcrumbs { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px 10px; margin-bottom: 32px; color: var(--ff-muted); font-size: 12px; line-height: 1.7; }
.ff-breadcrumbs a { color: var(--ff-link); text-decoration: none; }
.ff-breadcrumbs a:hover { text-decoration: underline; }
.ff-breadcrumbs > :last-child { overflow-wrap: anywhere; }
.ff-site .ff-article-head h1 { margin: 18px 0 26px; color: var(--ff-ink); font: 650 clamp(2.25rem, 4.2vw, 3.6rem)/1.08 var(--ff-heading); letter-spacing: -.05em; text-transform: none; overflow-wrap: break-word; }
.ff-meta { display: flex; flex-wrap: wrap; gap: 7px 22px; color: var(--ff-muted); font-size: 12px; line-height: 1.7; }
.ff-meta a { color: inherit; text-decoration-color: var(--ff-line); text-underline-offset: 3px; }
.ff-meta a:hover { color: var(--ff-link); }
.ff-featured { margin-block: 0 38px; }
.ff-featured img { display: block; width: 100%; height: auto; border: 0; border-radius: 0; }
.ff-featured figcaption { margin-top: 10px; color: var(--ff-muted); font-size: 12px; line-height: 1.6; }

/* Alla delar följer samma innehållsbredd; breda block får inte bryta ut. */
.ff-site .ff-entry { max-width: 980px; color: var(--ff-ink); font: 18px/1.8 var(--ff-font); overflow-wrap: break-word; }
.ff-site .ff-entry.ff-content-width { margin-inline: auto; }
.ff-site .ff-entry > * { max-width: 100%; margin-inline: 0; }
.ff-site .ff-entry.entry-content :is(.alignwide, .alignfull) { width: 100%; max-width: 100%; margin-inline: 0; }
.ff-site .ff-entry .is-layout-constrained > * { max-width: 100%; }
.ff-site .ff-entry :is(.info-box, .advanced-info-box, .info-box-advanced, .premium-info-box, .infobox) { box-sizing: border-box; width: 100%; max-width: 100%; margin-inline: 0; }
.ff-entry::after { display: table; clear: both; content: ''; }
.ff-entry > :first-child { margin-top: 0; }
.ff-entry p { margin: 0 0 1.45em; }
.ff-entry :is(h2, h3, h4, h5, h6) { color: var(--ff-ink); font-family: var(--ff-heading); text-transform: none; scroll-margin-top: 28px; }
.ff-entry h2 { margin: 1.65em 0 .65em; font-size: clamp(1.7rem, 2.6vw, 2.3rem); font-weight: 650; line-height: 1.18; letter-spacing: -.04em; }
.ff-entry h3 { margin: 1.6em 0 .65em; font-size: 1.45rem; font-weight: 650; line-height: 1.3; letter-spacing: -.025em; }
.ff-entry h4 { margin: 1.5em 0 .6em; font-size: 1.2rem; font-weight: 650; line-height: 1.4; letter-spacing: -.015em; }
.ff-entry :is(h5, h6) { margin: 1.5em 0 .6em; font-size: 1.05rem; font-weight: 700; line-height: 1.45; }
.ff-entry :is(h2, h3)[tabindex='-1']:focus-visible { outline: 2px solid var(--ff-link); outline-offset: 7px; }
.ff-entry a { color: var(--ff-link); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.ff-entry a:hover { color: var(--ff-ink); text-decoration-thickness: 2px; }
.ff-entry :is(a, button, input, textarea, select, summary):focus-visible,
.ff-toc :is(a, summary):focus-visible,
.ff-after-article :is(a, input, textarea, button):focus-visible { outline: 2px solid var(--ff-link); outline-offset: 4px; }
.ff-entry strong { font-weight: 650; }
.ff-entry :is(ul, ol) { margin: 0 0 1.45em; padding-left: 1.4em; }
.ff-entry ul { list-style: disc; }
.ff-entry ul ul { list-style: circle; }
.ff-entry ul ul ul { list-style: square; }
.ff-entry ul.ffp-kryss { list-style: none; padding-left: 0; }

/* wpautop lagger in tomma stycken och radbrytningar mellan inline-element inuti
   verktygsblocken. De ar alltid oavsiktliga och ger en vit rand i rutan. */
.ff-entry :is(.ffp-tool, .ffp-tabs, .ffp-panels, .ffp-fig, .ffp-lista, .ffp-rak, .ffp-kryss) > p:empty { display: none; }
.ff-entry :is(.ffp-tool, .ffp-tabs, .ffp-panels, .ffp-fig, .ffp-lista, .ffp-rak, .ffp-kryss) > br { display: none; }
.ff-entry li { margin: .55em 0; padding-left: .25em; }
.ff-entry li::marker { color: var(--ff-link); font-weight: 650; }
.ff-entry li > :is(ul, ol) { margin-block: .65em; }
.ff-entry li > p:last-child { margin-bottom: 0; }
.ff-entry :is(img, video) { max-width: 100%; height: auto; }
.ff-entry :is(figure, .wp-caption) { max-width: 100%; }
.ff-entry :is(figcaption, .wp-caption-text) { margin: 10px 0 24px; color: var(--ff-muted); font-size: 13px; line-height: 1.65; }
.ff-entry .alignleft { float: left; margin: 8px 28px 20px 0; }
.ff-entry .alignright { float: right; margin: 8px 0 20px 28px; }
.ff-entry .aligncenter { display: block; margin-inline: auto; }
.ff-entry iframe { max-width: 100%; }
.ff-entry iframe:is([src*='youtube'], [src*='vimeo']) { width: 100%; height: auto; aspect-ratio: 16 / 9; }
.ff-entry blockquote { margin: 30px 0; padding: 24px 28px; border: 0; border-left: 4px solid var(--ff-accent); background: var(--ff-paper); color: var(--ff-ink); font-size: 1.1em; }
.ff-entry blockquote p:last-child { margin-bottom: 0; }
.ff-entry blockquote cite { display: block; margin-top: 14px; color: var(--ff-muted); font-size: 14px; font-style: normal; }
.ff-entry .ff-guide-tip { margin: 28px 0; padding: 25px 28px; border: 1px solid var(--ff-line); border-top: 3px solid var(--ff-accent); background: var(--ff-paper); }
.ff-entry .ff-guide-tip > :first-child { margin-top: 0; }
.ff-entry .ff-guide-tip > :last-child { margin-bottom: 0; }
.ff-entry details { margin: 16px 0; padding: 20px 24px; border: 1px solid var(--ff-line); background: #fff; border-radius: 0; }
.ff-entry summary { cursor: pointer; font-weight: 650; line-height: 1.6; }
.ff-entry details[open] > summary { margin-bottom: 18px; }
.ff-entry details > :last-child { margin-bottom: 0; }
.ff-entry code { padding: 2px 5px; background: var(--ff-paper); color: var(--ff-ink); font-size: .87em; }
.ff-entry pre { max-width: 100%; overflow-x: auto; margin: 25px 0; padding: 20px; background: var(--ff-paper); font-size: 14px; line-height: 1.7; white-space: pre; }
.ff-entry pre code { padding: 0; font-size: inherit; }
.ff-entry .wp-block-columns { gap: 28px; }
.ff-entry .wp-block-column { min-width: 0; }

/* Läsbara tabeller på dator. Javascript aktiverar kort endast för enkla tabeller. */
.ff-site .ff-entry table { width: 100%; margin: 28px 0; border: 1px solid var(--ff-line); border-collapse: collapse; background: #fff; color: var(--ff-ink); font-size: 15px; line-height: 1.65; }
.ff-entry :is(th, td) { padding: 15px 18px; border: 1px solid var(--ff-line); text-align: left; vertical-align: top; }
.ff-entry :is(thead th, tr:first-child > th) { background: var(--ff-ink); color: var(--ff-paper); font-weight: 600; }
.ff-entry th a { color: inherit !important; text-decoration: underline; text-underline-offset: 3px; }
.ff-entry tbody tr:nth-child(even) > td { background: #faf7f3; }
.ff-entry caption { padding: 0 0 13px; text-align: left; color: var(--ff-muted); font-size: 14px; line-height: 1.6; }
.ff-table-scroll { width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; margin: 28px 0; }
.ff-site .ff-table-scroll table { margin: 0; }
.ff-table-scroll:focus-visible { outline: 2px solid var(--ff-link); outline-offset: 3px; }

/* En innehållsförteckning per artikel, byggd av artikelns rubriker. */
.ff-toc-slot:empty { display: none; }
.ff-toc { margin: 0 0 35px; padding: 23px 26px; border: 1px solid var(--ff-line); border-top: 3px solid var(--ff-ink); background: var(--ff-paper); }
.ff-toc summary { display: flex; align-items: center; gap: 12px; color: var(--ff-ink); font: 650 16px/1.6 var(--ff-font); cursor: pointer; list-style: none; }
.ff-toc summary::-webkit-details-marker { display: none; }
.ff-toc summary::after { content: '+'; margin-left: 4px; color: var(--ff-link); font: 400 26px/1 var(--ff-font); }
.ff-toc[open] summary::after { content: '−'; }
.ff-toc-count { margin-left: auto; color: var(--ff-muted); font-size: 12px; font-weight: 400; white-space: nowrap; }
.ff-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 38px; row-gap: 12px; margin: 24px 0 0; padding-left: 21px; }
.ff-toc li { margin: 0; padding-left: 4px; color: var(--ff-ink); font: 400 14px/1.65 var(--ff-font); overflow-wrap: anywhere; }
.ff-toc li::marker { color: var(--ff-link); font-size: 12px; font-weight: 650; }
.ff-toc a { color: var(--ff-ink); text-decoration: none; }
.ff-toc a:hover { color: var(--ff-link); text-decoration: underline; text-underline-offset: 3px; }
.ff-toc .ff-toc-sub { font-size: 13px; }
.ff-toc .ff-toc-sub a { color: var(--ff-muted); }

/* Formulär: bara textfält, knappar och listor, aldrig reglage eller kryssrutors mått. */
.ff-site :is(.ff-entry, .ff-after-article) :is(input:not([type]), input[type='text'], input[type='email'], input[type='url'], input[type='tel'], input[type='search'], input[type='number'], input[type='password'], input[type='date'], input[type='datetime-local'], textarea, select) { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 46px; padding: 11px 14px; border: 1px solid var(--ff-line); border-radius: 0; background: #fff; color: var(--ff-ink); font: 16px/1.5 var(--ff-font); box-shadow: none; }
.ff-site :is(.ff-entry, .ff-after-article) textarea { min-height: 160px; resize: vertical; }
.ff-site :is(.ff-entry, .ff-after-article) input::placeholder,
.ff-site :is(.ff-entry, .ff-after-article) textarea::placeholder { color: var(--ff-muted); opacity: 1; }
.ff-site :is(.ff-entry, .ff-after-article) :is(input[type='submit'], button[type='submit']),
.ff-site .ff-entry .wpcf7-submit,
.ff-entry .wp-block-button__link { display: inline-block; width: auto; max-width: 100%; min-height: 46px; padding: 12px 23px; border: 1px solid var(--ff-ink); border-radius: 0; background: var(--ff-ink); color: var(--ff-paper); font: 600 15px/1.5 var(--ff-font); text-align: center; text-decoration: none; cursor: pointer; }
.ff-site :is(.ff-entry, .ff-after-article) :is(input[type='submit'], button[type='submit']):hover,
.ff-entry .wp-block-button__link:hover { background: var(--ff-link); border-color: var(--ff-link); color: #fff; }
.ff-entry .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--ff-ink); }
.ff-entry .wpcf7-form label { display: block; margin-bottom: 8px; color: var(--ff-ink); font-size: 15px; line-height: 1.7; }
.ff-entry .wpcf7-form-control-wrap { display: block; margin-top: 6px; }
.ff-entry .wpcf7-list-item { display: block; margin: 8px 0; }
.ff-entry .wpcf7-list-item label { display: flex; align-items: baseline; gap: 9px; }
.ff-entry .wpcf7-list-item-label { display: inline; }
.ff-entry .wpcf7-not-valid-tip { display: block; margin-top: 6px; color: #a72432; font-size: 14px; }
.ff-entry .wpcf7 form .wpcf7-response-output { margin: 20px 0; padding: 15px 18px; font-size: 15px; line-height: 1.6; }
.ff-entry .wpcf7-spinner { vertical-align: middle; }
.ff-entry :is(fieldset, legend) { max-width: 100%; }
.ff-entry fieldset { margin: 20px 0; padding: 20px; border: 1px solid var(--ff-line); }
.ff-entry legend { padding-inline: 8px; font-weight: 650; }

/* Kommentarer och länkar efter artikeln. */
.ff-after-article { clear: both; }
.ff-tags { margin-block: 35px; color: var(--ff-muted); font-size: 13px; line-height: 1.8; }
.ff-tags a { display: inline-block; margin: 4px 7px 4px 0; padding: 3px 10px; border: 1px solid var(--ff-line); color: var(--ff-link); text-decoration: none; }
.ff-tags a:hover { border-color: var(--ff-link); }
.ff-site .ff-after-article .post-navigation { margin: 38px 0; }
.ff-after-article .nav-links { display: flex; justify-content: space-between; gap: 28px; }
.ff-after-article .nav-links > div { max-width: 48%; }
.ff-after-article .nav-next { margin-left: auto; text-align: right; }
.ff-after-article .nav-links a { color: var(--ff-link); font-size: 15px; line-height: 1.65; }
.ff-after-article .comments-area { margin: 32px 0 0; padding: 32px 0 0; border-top: 1px solid var(--ff-line); background: transparent; box-shadow: none; }
.ff-after-article :is(.comment-reply-title, .comments-title) { margin-bottom: 25px; font: 650 1.8rem/1.25 var(--ff-heading); letter-spacing: -.035em; text-transform: none; }
.ff-after-article .comment-form label { display: block; margin-bottom: 7px; font-size: 14px; }
.ff-after-article .comment-form-cookies-consent label { display: inline; margin-left: 7px; }
.ff-after-article .comment-list { padding-left: 0; list-style: none; }
.ff-after-article .comment-list .children { margin-left: 22px; padding-left: 15px; border-left: 1px solid var(--ff-line); list-style: none; }
.ff-after-article .comment-body { margin-bottom: 24px; }

@media (max-width: 640px) {
  .ff-article { padding-bottom: 42px; }
  .ff-article-head { padding-block: 25px 27px; }
  .ff-breadcrumbs { margin-bottom: 23px; font-size: 11px; }
  .ff-site .ff-article-head h1 { margin: 14px 0 23px; font-size: clamp(2rem, 8.5vw, 2.8rem); line-height: 1.12; letter-spacing: -.045em; }
  .ff-meta { gap: 6px 14px; font-size: 11px; }
  .ff-featured { margin-bottom: 28px; }
  .ff-site .ff-entry { font-size: 17px; line-height: 1.8; }
  .ff-entry h2 { font-size: 1.75rem; }
  .ff-entry h3 { font-size: 1.35rem; }
  .ff-entry :is(.alignleft, .alignright) { display: block; float: none; margin: 22px auto; }
  .ff-entry :is(blockquote, .ff-guide-tip) { padding: 20px; }
  .ff-entry details { padding: 17px 19px; }
  .ff-site .ff-table-cards { display: block; border: 0; background: transparent; }
  .ff-table-cards caption { display: block; }
  .ff-table-cards thead,
  .ff-table-cards > tbody > .ff-label-row { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; }
  .ff-table-cards tbody { display: block; }
  .ff-site .ff-table-cards tbody > tr:not(.ff-label-row) { display: block; margin-bottom: 16px; padding: 9px 18px; border: 1px solid var(--ff-line); border-top: 3px solid var(--ff-ink); background: #fff; }
  .ff-site .ff-table-cards tbody > tr:not(.ff-label-row) > :is(td, th) { display: block; width: auto; padding: 11px 0; border: 0; background: transparent; color: var(--ff-ink); font-size: 15px; white-space: normal; overflow-wrap: anywhere; }
  .ff-site .ff-table-cards tbody > tr:not(.ff-label-row) > :is(td, th) + :is(td, th) { border-top: 1px solid var(--ff-line); }
  .ff-table-cards tbody > tr:not(.ff-label-row) > :is(td, th)::before { display: block; margin-bottom: 3px; color: var(--ff-link); font-size: 12px; font-weight: 650; content: attr(data-ff-label); }
  .ff-table-scroll.ff-has-cards { overflow: visible; }
  .ff-toc { margin-bottom: 28px; padding: 19px 20px; }
  .ff-toc summary { gap: 8px; font-size: 15px; }
  .ff-toc-count { font-size: 11px; }
  .ff-toc ol { grid-template-columns: minmax(0, 1fr); gap: 13px; margin-top: 21px; }
  .ff-toc li { font-size: 14px; }
  .ff-after-article .nav-links { display: block; }
  .ff-after-article .nav-links > div { max-width: 100%; margin-block: 18px; text-align: left; }
  .ff-after-article .comment-list .children { margin-left: 10px; padding-left: 10px; }
}

@media print {
  .ff-article { padding: 0; }
  .ff-article-head { padding-top: 0; }
  .ff-site .ff-entry { font-size: 11pt; line-height: 1.6; }
  .ff-site .ff-entry :is(h2, h3, h4) { break-after: avoid; }
  .ff-featured { break-inside: avoid; }
  .ff-toc-slot, .ff-after-article .comments-area, .ff-after-article .post-navigation { display: none; }
  .ff-table-scroll { overflow: visible; }
  .ff-site .ff-entry table { display: table; font-size: 9pt; }
  .ff-site .ff-entry tbody { display: table-row-group; }
  .ff-site .ff-entry tr { display: table-row !important; }
  .ff-site .ff-entry :is(td, th) { display: table-cell !important; width: auto; padding: 7px 9px; border: 1px solid #999; }
  .ff-site .ff-table-cards thead { display: table-header-group; }
  .ff-site .ff-table-cards :is(thead, .ff-label-row) { position: static; width: auto; height: auto; padding: initial; overflow: visible; clip: auto; clip-path: none; white-space: normal; }
  .ff-site .ff-entry tbody > tr:not(.ff-label-row) > :is(td, th)::before { display: none; }
  .ff-entry a { color: inherit; }
}
