.pk-calculator { width: 100%; max-width: 100%; margin: 0; font-family: inherit; font-size: inherit; line-height: inherit; color: #222; }
.pk-calculator * { box-sizing: border-box; } .pk-label { display: block; font-size: 1em; font-weight: 600; color: #062661; margin-bottom: 8px; letter-spacing: 0.01em; }
.pk-sublabel { display: block; font-size: 0.88em; font-weight: 500; color: #555; margin-bottom: 4px; } .pk-input, .pk-select {
width: 100%; padding: 12px 16px; min-height: 50px;
border: 1px solid #d0d0d0; border-radius: 4px;
font-size: inherit; font-family: inherit; color: #222;
background: #fff; box-shadow: inset 0 1px 3px rgba(0,0,0,0.04);
transition: border-color 0.2s, box-shadow 0.2s;
}
.pk-input:focus, .pk-select:focus { outline: none; border-color: #062661; box-shadow: 0 0 0 2px rgba(6,38,97,0.1); }
.pk-select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 40px; cursor: pointer; }
.pk-select-small { width: auto; min-width: 80px; }
.pk-locked { background: #f4f4f4 !important; color: #888 !important; cursor: not-allowed; border-color: #e0e0e0 !important; box-shadow: none !important; } .pk-step { margin-bottom: 24px; }
.pk-selected-objekt { font-size: 1.15em; font-weight: 700; color: #062661; }
.pk-objekt-beskrivning { font-size: 0.92em; color: #555; margin: 6px 0 0; line-height: 1.5; }
.pk-objekt-link { color: #062661; font-size: 0.92em; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.2s; }
.pk-objekt-link:hover { border-bottom-color: #062661; }
.pk-objekt-info { margin-top: 10px; }
.pk-empty { color: #888; font-style: italic; } .pk-date-row { display: flex; gap: 16px; }
.pk-date-field { flex: 1; }
.pk-date-info { margin-top: 10px; font-size: 0.92em; color: #555; }
.pk-days-count { font-weight: 700; color: #062661; }
.pk-over10-msg { margin-top: 10px; padding: 12px 16px; background: #fef3e8; border-left: 3px solid #e8a838; border-radius: 4px; font-size: 0.92em; color: #6e4b00; line-height: 1.5; } .pk-extra-info { margin-top: 8px; font-size: 0.88em; color: #888; } .pk-tillval-checkboxes { display: flex; flex-direction: column; gap: 8px; }
.pk-tillval-label {
display: flex; align-items: center; gap: 10px;
padding: 10px 14px; border: 1px solid #d0d0d0; border-radius: 4px;
cursor: pointer; font-size: 0.95em;
transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
}
.pk-tillval-label:hover { border-color: #062661; background: #f8f9fc; box-shadow: 0 1px 3px rgba(6,38,97,0.06); }
.pk-tillval-cb:checked + .pk-tillval-label,
.pk-tillval-label:has(input:checked) { border-color: #062661; background: #f0f4fa; } .pk-actions { display: flex; gap: 12px; margin-bottom: 24px; }
.pk-btn {
display: inline-block; padding: 13px 28px;
border: none; border-radius: 4px;
font-size: 0.95em; font-weight: 600; font-family: inherit;
cursor: pointer; letter-spacing: 0.02em;
transition: background 0.2s, opacity 0.2s, transform 0.1s;
}
.pk-btn:active:not(:disabled) { transform: translateY(1px); }
.pk-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.pk-btn-cooldown { opacity: 0.4 !important; background: #888 !important; transition: opacity 0.3s; }
.pk-btn-primary { background: #062661; color: #fff; }
.pk-btn-primary:hover:not(:disabled) { background: #0a3a8f; }
.pk-btn-secondary { background: #f3f2f2; color: #222; border: 1px solid #ccc; }
.pk-btn-secondary:hover { background: #e8e7e7; } .pk-result { margin-bottom: 24px; }
.pk-result-inner { background: #fff; border: 2px solid #062661; border-radius: 6px; padding: 24px; }
.pk-calculator h3.pk-result-title,
.pk-result h3.pk-result-title,
h3.pk-result-title { margin: 0 0 4px; font-size: 1.1em; color: #062661 !important; }
.pk-result-dates { margin: 0 0 14px; font-size: 0.92em; color: #555; }
.pk-result-table { width: 100%; border-collapse: collapse; font-size: 0.95em; }
.pk-result-table td { padding: 8px 0; border-bottom: 1px solid #eee; }
.pk-result-table td:last-child { text-align: right; font-weight: 500; }
.pk-result-table tr.pk-result-subtotal td { border-top: 1px solid #ddd; font-weight: 500; }
.pk-result-table tr.pk-result-moms td { color: #666; font-size: 0.9em; }
.pk-result-table tr.pk-result-total td { border-top: 2px solid #062661; font-weight: 700; font-size: 1.08em; color: #062661; padding-top: 12px; }
.pk-result-moms-note { font-size: 0.85em; color: #888; margin-top: 10px; }
.pk-disclaimer { font-size: 0.82em; color: #999; margin-top: 12px; line-height: 1.5; }
@keyframes pk-fadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } } .pk-inquiry-btn-wrap { margin-top: 20px; text-align: center; }
.pk-btn-inquiry { background: #062661; color: #fff; width: 100%; font-size: 1em; padding: 14px 28px; }
.pk-btn-inquiry:hover { background: #0a3a8f; } .pk-inquiry { margin-top: 28px; }
.pk-inquiry-inner { background: #f9f9f8; border: 1px solid #d0d0d0; border-radius: 6px; padding: 28px; animation: pk-fadeIn 0.3s ease; }
.pk-inquiry-title { font-size: 1.08em; font-weight: 700; color: #062661; margin: 0 0 20px; }
.pk-form-row-half { display: flex; gap: 16px; }
.pk-form-row-half .pk-form-group { flex: 1; }
.pk-form-group { margin-bottom: 16px; }
.pk-form-group label { display: block; font-size: 0.88em; font-weight: 600; color: #444; margin-bottom: 5px; }
.pk-textarea { resize: vertical; min-height: 70px; }
.pk-form-actions-front { margin-top: 10px; }
.pk-form-actions-front .pk-btn { width: 100%; text-align: center; font-size: 1em; padding: 14px; } .pk-inquiry-sent { margin-top: 28px; }
.pk-inquiry-sent-inner { background: #edf7ed; border: 2px solid #2e7d32; border-radius: 6px; padding: 36px; text-align: center; animation: pk-fadeIn 0.3s ease; }
.pk-inquiry-check { font-size: 48px; color: #2e7d32; margin-bottom: 8px; }
.pk-inquiry-sent-inner h3 { margin: 0 0 8px; color: #222; }
.pk-inquiry-sent-inner p { color: #555; font-size: 0.92em; margin: 0; } .pk-unavailable { color: #666; font-style: italic; padding: 16px 0; } @media screen and (max-width: 480px) {
.pk-date-row, .pk-form-row-half { flex-direction: column; gap: 12px; }
.pk-actions { flex-direction: column; }
.pk-btn { width: 100%; text-align: center; }
.pk-inquiry-inner { padding: 20px; }
}