/* 
   Pesticide 2026 - Modernized Common Utilities 
   Cleaned up and refactored for modern layouts.
*/

/* Resets */
form { margin: 0; padding: 0; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
img { border: none; max-width: 100%; height: auto; }

/* Utility Classes */
.pointer { cursor: pointer; }
.justify { text-align: justify; }
.nowrap { white-space: nowrap; }
.clear { clear: both; }
.clearfix::after { content: ""; display: table; clear: both; }

/* Positioning */
.fleft { float: left !important; }
.fright { float: right !important; }
.aleft { text-align: left !important; }
.aright { text-align: right !important; }
.acenter { text-align: center !important; }
.vamiddle { vertical-align: middle !important; }
.vatop { vertical-align: top !important; }

/* Spacing */
.mauto { margin-left: auto; margin-right: auto; }
.nomargin { margin: 0 !important; }
.nopadding { padding: 0 !important; }

/* Visibility */
.nodisplay { display: none !important; }
.hidden { visibility: hidden; }
.inline { display: inline; }
.block { display: block; }
.iblock { display: inline-block; }

/* Text Styles */
.b { font-weight: bold !important; }
.i { font-style: italic !important; }
.u { text-decoration: underline !important; }
.upper { text-transform: uppercase; }
.lower { text-transform: lowercase; }

/* Message Boxes (Modernized) */
.error_title, .succes_title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
}

.error { color: #d92d20; font-weight: 600; }
.success { color: #039855; font-weight: 600; }

/* UI Helpers */
#SSAutoComplete {
    position: absolute;
    z-index: 10003;
    background: white;
    border: 1px solid #e4e7ec;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1);
    border-radius: 8px;
}

.preloader {
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid var(--primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
