.calc-nav-item {
    display: flex;
    align-items: center;
    width: 100%;
    text-align: left;
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    transition: all 0.2s ease-in-out;
}

.calc-nav-item:hover {
    background: #eff6ff;
    color: #1d4ed8;
}



.calc-nav-item--accent {
    background: #f0f9ff;
}

.quick-nav-chip {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    background: #eef2ff;
    color: #4338ca;
    font-weight: 600;
    transition: all 0.2s ease-in-out;
}

.quick-nav-chip:hover {
    background: #e0e7ff;
    color: #312e81;
}

/* Form styles */
#external-walls-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#external-walls-section select,
#external-walls-section textarea,
#general-characteristics-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#general-characteristics-section select,
#general-characteristics-section textarea,
#geometric-characteristics-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#geometric-characteristics-section select,
#geometric-characteristics-section textarea,
#roof-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#roof-section select,
#roof-section textarea,
#floor-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#floor-section select,
#floor-section textarea,
#engineering-systems-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#engineering-systems-section select,
#engineering-systems-section textarea,
#ventilation-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#ventilation-section select,
#ventilation-section textarea,
#hot-water-supply-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#hot-water-supply-section select,
#hot-water-supply-section textarea,
#tariffs-and-factors-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
#tariffs-and-factors-section select,
#tariffs-and-factors-section textarea {
    width: 100% !important;
    padding: 0.35rem 0.5rem !important;
    border: 2px solid #d1d5db !important;
    border-radius: 0.5rem !important;
    background-color: #ffffff !important;
    font-size: 0.875rem !important;
    line-height: normal !important;
    color: #111827 !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important;
    height: 2.25rem !important;
    display: block !important;
}

#external-walls-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#external-walls-section select:hover,
#external-walls-section textarea:hover,
#general-characteristics-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#general-characteristics-section select:hover,
#general-characteristics-section textarea:hover,
#geometric-characteristics-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#geometric-characteristics-section select:hover,
#geometric-characteristics-section textarea:hover,
#roof-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#roof-section select:hover,
#roof-section textarea:hover,
#floor-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#floor-section select:hover,
#floor-section textarea:hover,
#engineering-systems-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#engineering-systems-section select:hover,
#engineering-systems-section textarea:hover,
#ventilation-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#ventilation-section select:hover,
#ventilation-section textarea:hover,
#hot-water-supply-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#hot-water-supply-section select:hover,
#hot-water-supply-section textarea:hover,
#tariffs-and-factors-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):hover,
#tariffs-and-factors-section select:hover,
#tariffs-and-factors-section textarea:hover {
    border-color: #9ca3af !important;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1) !important;
}

#external-walls-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#external-walls-section select:focus,
#external-walls-section textarea:focus,
#general-characteristics-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#general-characteristics-section select:focus,
#general-characteristics-section textarea:focus,
#geometric-characteristics-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#geometric-characteristics-section select:focus,
#geometric-characteristics-section textarea:focus,
#roof-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#roof-section select:focus,
#roof-section textarea:focus,
#floor-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#floor-section select:focus,
#floor-section textarea:focus,
#engineering-systems-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#engineering-systems-section select:focus,
#engineering-systems-section textarea:focus,
#ventilation-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#ventilation-section select:focus,
#ventilation-section textarea:focus,
#hot-water-supply-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#hot-water-supply-section select:focus,
#hot-water-supply-section textarea:focus,
#tariffs-and-factors-section input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
#tariffs-and-factors-section select:focus,
#tariffs-and-factors-section textarea:focus {
    outline: none !important;
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1), 0 2px 4px 0 rgba(0, 0, 0, 0.1) !important;
}

input[type="text"]:disabled,
input[type="number"]:disabled,
input[type="email"]:disabled,
input[type="tel"]:disabled,
select:disabled,
textarea:disabled {
    background-color: #f3f4f6;
    color: #6b7280;
    cursor: not-allowed;
    border-color: #e5e7eb;
}

select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 0.5rem center;
    background-repeat: no-repeat;
    background-size: 1.5em 1.5em;
    padding-right: 2.5rem;
    appearance: none;
    cursor: pointer;
}

input[type="checkbox"] {
    width: 1.25rem;
    height: 1.25rem;
    border: 2px solid #d1d5db;
    border-radius: 0.25rem;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

input[type="checkbox"]:checked {
    background-color: #3b82f6;
    border-color: #3b82f6;
}

input[type="checkbox"]:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

label {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    margin-bottom: 0.375rem;
}

.errorlist {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0 0;
}

.errorlist li {
    color: #dc2626;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

.helptext {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: #6b7280;
}

input.error,
select.error,
textarea.error {
    border-color: #dc2626;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

label .required {
    color: #dc2626;
    margin-left: 0.25rem;
}

.htmx-indicator {
    opacity: 0;
    transition: opacity 200ms ease-in;
}

.htmx-request .htmx-indicator {
    opacity: 1;
}

.htmx-request.htmx-indicator {
    opacity: 1;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    opacity: 1;
    height: auto;
}

table input[type="text"],
table input[type="number"],
table select {
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
}
