/* Bolagsskatt-kalkylator v1.1.3
   Grön palett, full bredd, mobiloptimerad, !important där temat överskriver */

.bsk-root{margin:1.5em 0;font-family:inherit;color:#1e3a5f;width:100%;box-sizing:border-box}
.bsk-root *{box-sizing:border-box}
.bsk-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5em 1.8em;box-shadow:0 1px 3px rgba(0,0,0,0.04)}
.bsk-header{margin-bottom:1.2em}
.bsk-title{margin:0 0 0.4em;color:#1e3a5f;font-size:1.4em;font-weight:700;line-height:1.3}
.bsk-intro{margin:0;color:#475569;line-height:1.6;font-size:0.95em}

/* TAB-NAVIGATION: hög specificitet + !important för att slå tema-CSS */
.bsk-root .bsk-tabs{display:flex;gap:0.4em;margin-bottom:1.2em;border-bottom:2px solid #e2e8f0;flex-wrap:wrap;background:transparent}
.bsk-root .bsk-tabs button.bsk-tab,
.bsk-root .bsk-tabs .bsk-tab{
    flex:1 1 auto !important;
    background:transparent !important;
    border:none !important;
    border-bottom:3px solid transparent !important;
    padding:0.7em 1em !important;
    cursor:pointer !important;
    font-size:0.92em !important;
    font-weight:600 !important;
    color:#64748b !important;
    font-family:inherit !important;
    margin-bottom:-2px !important;
    white-space:nowrap !important;
    transition:all 0.15s !important;
    text-shadow:none !important;
    box-shadow:none !important;
    line-height:1.3 !important;
    text-decoration:none !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    min-width:0 !important;
    width:auto !important;
    height:auto !important;
}
.bsk-root .bsk-tabs button.bsk-tab:hover,
.bsk-root .bsk-tabs .bsk-tab:hover{color:#16a34a !important;background:transparent !important}
.bsk-root .bsk-tabs button.bsk-tab.active,
.bsk-root .bsk-tabs .bsk-tab.active{
    color:#16a34a !important;
    border-bottom-color:#16a34a !important;
    background:transparent !important;
}

.bsk-section{margin-bottom:1.3em;padding:0.9em 1.1em;background:#f8fafc;border-radius:8px;border-left:3px solid #16a34a}
.bsk-section-title{margin:0 0 0.7em;color:#1e3a5f;font-size:0.98em;font-weight:700}

.bsk-fields{display:grid;grid-template-columns:1fr 1fr;gap:1em}
.bsk-field{display:block}
.bsk-label{display:block;font-weight:600;color:#1e3a5f;margin-bottom:0.3em;font-size:0.9em}
.bsk-field input{width:100%;padding:0.65em 0.85em;border:1px solid #cbd5e1;border-radius:6px;font-size:0.95em;box-sizing:border-box;font-family:inherit;background:#fff;color:#1e3a5f}
.bsk-field input:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,0.1)}
.bsk-field small{display:block;color:#64748b;font-size:0.82em;margin-top:0.3em;line-height:1.5}

.bsk-exempel-intro{margin:0 0 1em;color:#475569;font-size:0.95em}
.bsk-exempel-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.8em}

/* Exempel-knappar: hög specificitet + !important */
.bsk-root button.bsk-exempel-btn,
.bsk-root .bsk-exempel-btn{
    background:#fff !important;
    border:1px solid #e2e8f0 !important;
    border-left:3px solid #16a34a !important;
    border-radius:8px !important;
    padding:1em 1.2em !important;
    cursor:pointer !important;
    text-align:left !important;
    font-family:inherit !important;
    color:#1e3a5f !important;
    transition:all 0.15s !important;
    text-shadow:none !important;
    box-shadow:none !important;
    width:100% !important;
    display:block !important;
    line-height:1.4 !important;
}
.bsk-root .bsk-exempel-btn:hover{border-left-color:#15803d !important;background:#f0fdf4 !important}
.bsk-root .bsk-exempel-btn strong{display:block;color:#1e3a5f !important;font-size:0.98em;margin-bottom:0.2em;font-weight:700}
.bsk-root .bsk-exempel-btn span{display:block;color:#475569 !important;font-size:0.88em;margin-bottom:0.2em}
.bsk-root .bsk-exempel-btn small{display:block;color:#94a3b8 !important;font-size:0.8em}

.bsk-actions{display:flex;gap:0.6em;margin:1.2em 0 0;flex-wrap:wrap}

/* Huvudknapp Räkna ut */
.bsk-root button.bsk-btn,
.bsk-root .bsk-btn{
    flex:1 !important;
    background:#16a34a !important;
    color:#fff !important;
    border:none !important;
    padding:0.85em 1.5em !important;
    border-radius:6px !important;
    font-size:1em !important;
    font-weight:600 !important;
    cursor:pointer !important;
    font-family:inherit !important;
    transition:background 0.15s !important;
    min-width:200px !important;
    text-shadow:none !important;
    box-shadow:none !important;
    line-height:1.3 !important;
    text-transform:none !important;
    letter-spacing:normal !important;
}
.bsk-root .bsk-btn:hover{background:#15803d !important;color:#fff !important}

/* Sekundärknapp Rensa */
.bsk-root button.bsk-btn-secondary,
.bsk-root .bsk-btn-secondary{
    background:#fff !important;
    color:#64748b !important;
    border:1px solid #cbd5e1 !important;
    padding:0.85em 1.2em !important;
    border-radius:6px !important;
    font-size:0.95em !important;
    font-weight:500 !important;
    cursor:pointer !important;
    font-family:inherit !important;
    text-shadow:none !important;
    box-shadow:none !important;
    line-height:1.3 !important;
    text-transform:none !important;
    letter-spacing:normal !important;
}
.bsk-root .bsk-btn-secondary:hover{background:#f1f5f9 !important;color:#1e3a5f !important}

.bsk-resultat{margin-top:1.5em;padding-top:1.5em;border-top:2px solid #e2e8f0}
.bsk-result-title{margin:0 0 1em;color:#1e3a5f;font-size:1.2em;font-weight:700}

.bsk-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0.7em;margin-bottom:1em}
.bsk-summary-kort{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:0.9em 1.1em;border-left:4px solid #16a34a}
.bsk-summary-kort.skatt{border-left-color:#dc2626}
.bsk-summary-kort.netto{border-left-color:#16a34a;background:#f0fdf4}
.bsk-summary-kort.netto.negativ{border-left-color:#dc2626 !important;background:#fef2f2 !important}
.bsk-summary-kort.netto.negativ .bsk-summary-varde{color:#dc2626 !important}
.bsk-summary-namn{font-size:0.82em;color:#64748b;margin:0 0 0.3em;font-weight:500;text-transform:uppercase;letter-spacing:0.03em}
.bsk-summary-varde{font-size:1.4em;font-weight:700;color:#1e3a5f;margin:0;font-variant-numeric:tabular-nums}

.bsk-tabell{width:100%;max-width:100%;border-collapse:collapse;margin:1em 0;table-layout:fixed;box-sizing:border-box}
.bsk-tabell td{padding:0.7em 0.9em;border-bottom:1px solid #f1f5f9;color:#334155;font-size:0.94em;box-sizing:border-box}
.bsk-tabell td:first-child{width:60%}
.bsk-tabell td:last-child{width:40%;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.bsk-tabell tr.summa td{font-weight:700;color:#1e3a5f;border-bottom:2px solid #1e3a5f;padding-top:0.8em}
.bsk-tabell tr.skatt td{color:#dc2626;font-weight:600}
.bsk-tabell tr.netto td{color:#16a34a;font-weight:700;font-size:1.02em;padding-top:0.7em;border-bottom:none}
.bsk-tabell tr.netto.negativ td{color:#dc2626 !important}
.bsk-tabell tr.note td{color:#64748b;font-size:0.86em;font-style:italic;border-bottom:none;padding-top:0;padding-bottom:0.3em;white-space:normal}

/* Bokföringstabell: GRÖN header + table-layout:fixed för exakt bredd */
.bsk-bokforing{margin:1.5em 0;padding:1.2em;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;max-width:100%;overflow:hidden}
.bsk-bokforing table.bsk-konton{width:100% !important;max-width:100% !important;table-layout:fixed !important;border-collapse:separate !important;border-spacing:0 !important;font-size:0.92em;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff !important;box-sizing:border-box}
.bsk-bokforing table.bsk-konton thead tr{background:#16a34a !important}
.bsk-bokforing table.bsk-konton th{background:#16a34a !important;color:#fff !important;padding:0.8em 0.7em !important;text-align:left !important;font-weight:600 !important;font-size:0.78em !important;text-transform:uppercase !important;letter-spacing:0.04em !important;border:none !important;box-sizing:border-box}
.bsk-bokforing table.bsk-konton th:nth-child(1){width:18%}
.bsk-bokforing table.bsk-konton th:nth-child(2){width:42%}
.bsk-bokforing table.bsk-konton th:nth-child(3){width:20%;text-align:right !important}
.bsk-bokforing table.bsk-konton th:nth-child(4){width:20%;text-align:right !important}
.bsk-bokforing table.bsk-konton tbody tr{background:#fff !important;transition:background 0.12s}
.bsk-bokforing table.bsk-konton tbody tr:nth-child(even){background:#f8fafc !important}
.bsk-bokforing table.bsk-konton tbody tr:hover{background:#f0fdf4 !important}
.bsk-bokforing table.bsk-konton td{padding:0.8em 0.7em !important;border:none !important;border-bottom:1px solid #f1f5f9 !important;color:#334155;vertical-align:middle;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}
.bsk-bokforing table.bsk-konton tbody tr:last-child td{border-bottom:none !important}
.bsk-bokforing table.bsk-konton td:nth-child(3),
.bsk-bokforing table.bsk-konton td:nth-child(4){text-align:right !important;font-variant-numeric:tabular-nums;font-weight:600;color:#1e3a5f;white-space:nowrap}
.bsk-bokforing table.bsk-konton td:nth-child(1){font-family:ui-monospace,Menlo,Consolas,monospace;color:#16a34a !important;font-weight:700;font-size:0.95em;letter-spacing:0.02em}
.bsk-bokforing table.bsk-konton td:nth-child(2){font-size:0.92em;line-height:1.35}
.bsk-bokforing table.bsk-konton td.bsk-empty{color:#94a3b8 !important;font-weight:400 !important;font-size:1.15em;line-height:1}

.bsk-timeline{margin:1.5em 0;padding:1.2em;background:#fff;border:1px solid #e2e8f0;border-radius:8px}
.bsk-timeline-intro{margin:0 0 1em;color:#475569;font-size:0.92em}
.bsk-timeline-tabell{width:100%;border-collapse:collapse;font-size:0.92em;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}
.bsk-timeline-rad{display:grid;grid-template-columns:120px 1fr 1fr 1fr;gap:0.5em;align-items:center;padding:0.7em 0.8em;border-bottom:1px solid #f1f5f9;font-size:0.92em}
.bsk-timeline-rad:nth-child(even){background:#f8fafc}
.bsk-timeline-rad:hover:not(.header){background:#f0fdf4}
.bsk-timeline-rad.header{font-weight:600;color:#fff;background:#16a34a !important;padding:0.75em 0.8em;border-radius:0;border-bottom:none;margin-bottom:0;font-size:0.85em;text-transform:uppercase;letter-spacing:0.03em}
.bsk-timeline-rad.header:hover{background:#16a34a !important}
.bsk-timeline-rad.atkomst{font-weight:700;background:#fef3c7 !important;border-left:4px solid #f59e0b;padding-left:0.7em}
.bsk-timeline-rad.atkomst:hover{background:#fef3c7 !important}
.bsk-timeline-rad div{font-variant-numeric:tabular-nums}
.bsk-timeline-rad div:first-child{font-weight:600;color:#1e3a5f}
.bsk-timeline-rad.header div:first-child{color:#fff;font-weight:600}
.bsk-timeline-rad div:not(:first-child){text-align:right}
.bsk-timeline-rad.header div:not(:first-child){text-align:right}

.bsk-disclaimer{margin:1.5em 0 0;padding:1em 1.2em;background:#f8fafc;border-radius:8px;border-left:3px solid #94a3b8}
.bsk-disclaimer p{margin:0;color:#64748b;font-size:0.86em;line-height:1.6}
.bsk-disclaimer a{color:#16a34a;text-decoration:none}

/* RESPONSIVE: tablet */
@media(max-width:768px){
  .bsk-card{padding:1.2em 1.4em}
  .bsk-fields,.bsk-exempel-grid{grid-template-columns:1fr}
}

/* RESPONSIVE: mobil */
@media(max-width:600px){
  .bsk-card{padding:1em 1.1em}
  .bsk-title{font-size:1.15em}
  .bsk-intro{font-size:0.9em}
  .bsk-root .bsk-tabs button.bsk-tab{padding:0.6em 0.5em !important;font-size:0.82em !important;flex:1 1 30% !important}
  .bsk-summary{grid-template-columns:1fr}
  .bsk-summary-varde{font-size:1.3em}
  .bsk-actions{flex-direction:column}
  .bsk-root .bsk-btn,.bsk-root .bsk-btn-secondary{width:100% !important;min-width:0 !important}

  /* Bokföringstabell blir kort på mobil */
  .bsk-bokforing table.bsk-konton{font-size:0.92em;table-layout:auto !important;border:1px solid #e5e7eb !important}
  .bsk-bokforing table.bsk-konton thead{display:none !important}
  .bsk-bokforing table.bsk-konton tbody tr{display:block !important;margin-bottom:0.6em !important;border:1px solid #e5e7eb !important;border-left:4px solid #16a34a !important;border-radius:6px !important;padding:0.7em 0.9em !important;background:#fff !important}
  .bsk-bokforing table.bsk-konton tbody tr:nth-child(even){background:#fff !important}
  .bsk-bokforing table.bsk-konton tbody tr:last-child{margin-bottom:0 !important}
  .bsk-bokforing table.bsk-konton td{display:block !important;border:none !important;border-bottom:none !important;padding:0.3em 0 !important;text-align:left !important;width:100% !important;overflow:visible !important;white-space:normal !important}
  .bsk-bokforing table.bsk-konton td:before{content:attr(data-label);display:inline-block;width:100px;font-weight:600;color:#64748b;font-size:0.78em;text-transform:uppercase;letter-spacing:0.03em}
  .bsk-bokforing table.bsk-konton td:nth-child(1){font-size:1em !important;color:#16a34a !important;border-bottom:1px solid #f1f5f9 !important;padding-bottom:0.4em !important;margin-bottom:0.3em !important;font-weight:700 !important}
  .bsk-bokforing table.bsk-konton td:nth-child(1):before{display:none}
  .bsk-bokforing table.bsk-konton td:nth-child(3),
  .bsk-bokforing table.bsk-konton td:nth-child(4){text-align:left !important}

  /* Timeline blir kort på mobil */
  .bsk-timeline-rad{grid-template-columns:1fr;gap:0.3em;padding:0.7em 0.7em;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:0.5em;border-bottom:1px solid #e5e7eb}
  .bsk-timeline-rad.header{display:none}
  .bsk-timeline-rad div{display:flex;justify-content:space-between;font-size:0.85em}
  .bsk-timeline-rad div:before{content:attr(data-label);font-weight:600;color:#64748b;font-size:0.78em;text-transform:uppercase;letter-spacing:0.03em}
  .bsk-timeline-rad div:first-child{font-size:1em;color:#16a34a;font-weight:700;border-bottom:1px solid #f1f5f9;padding-bottom:0.3em;margin-bottom:0.3em;display:block;text-align:left}
  .bsk-timeline-rad div:first-child:before{display:none}
  .bsk-timeline-rad.atkomst{padding-left:0.7em}
}
