body { font-family: 'Public Sans', sans-serif; }

/* Neobrutalism Core Classes */
.neo-border { 
    border: 4px solid #000 !important; 
}

.neo-shadow { 
    box-shadow: 8px 8px 0px 0px rgba(0,0,0,1); 
}

.neo-card { 
    border: 4px solid #000; 
    box-shadow: 8px 8px 0px 0px rgba(0,0,0,1); 
    background-color: #fff;
}

.neo-btn { 
    border: 3px solid #000; 
    box-shadow: 4px 4px 0px 0px rgba(0,0,0,1); 
    transition: all 0.1s; 
    text-transform: uppercase;
    font-weight: 900;
    display: inline-block;
    text-align: center;
}

.neo-btn:active { 
    box-shadow: 0px 0px 0px 0px rgba(0,0,0,1); 
    transform: translate(4px, 4px); 
}

.neo-input {
    width: 100%;
    border: 4px solid #000;
    padding: 0.75rem 1rem;
    font-weight: 700;
    outline: none;
    transition: background-color 0.2s;
}

.neo-input:focus {
    background-color: #dbeafe; /* blue-100 */
}

/* Table Specifics */
.neo-table-container {
    overflow-x: auto;
    border: 4px solid #000;
    box-shadow: 8px 8px 0px 0px rgba(0,0,0,1);
}

.neo-table {
    width: 100%;
    text-align: left;
    border-collapse: collapse;
}

.neo-table thead {
    background-color: #000;
    color: #fff;
}

.neo-table th, .neo-table td {
    padding: 1rem;
    border-bottom: 4px solid #000;
}