/*
IMPORTANT LAYOUT STYLES:
These classes create the sticky header and footer layout.
- .fixed-header and .fixed-footer make the elements stick to the top and bottom of the viewport.
- The dynamic padding to prevent content from being obscured by these fixed elements is handled in /assets/js/script.js.
DO NOT REMOVE OR MODIFY these styles.
*/
.ad-container { 
    min-height: 250px; 
    display: flex; 
    justify-content: center; 
}

.fixed-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

.fixed-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

/* Calculator UI Utilities */
.input-field {
    background-color: #0f172a; /* bg-slate-900 */
    border: 1px solid #334155; /* border-slate-700 */
    border-radius: 0.375rem; /* rounded-md */
    padding: 0.5rem 0.75rem;
    color: #f8fafc; /* text-slate-50 */
    font-size: 0.875rem; /* text-sm */
    transition: all 0.2s;
}
.input-field:focus {
    outline: none;
    border-color: #3b82f6; /* border-blue-500 */
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.input-field-sm {
    background-color: #0f172a;
    border: 1px solid #334155;
    border-radius: 0.25rem;
    padding: 0.375rem 0.5rem;
    color: #f8fafc;
    font-size: 0.75rem; /* text-xs */
    transition: all 0.2s;
}
.input-field-sm:focus {
    outline: none;
    border-color: #3b82f6;
}