/* Thimze Print Features — Frontend Styles */

/* -------------------------------------------------------
   Base inputs & buttons
-------------------------------------------------------- */
.tpf-input {
    display: block;
    width: 100%;
    padding: 9px 12px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.4;
    background: #fff;
    box-sizing: border-box;
    transition: border-color .15s;
}

.tpf-input:focus {
    outline: none;
    border-color: #2d6a5a;
    box-shadow: 0 0 0 3px rgba(45, 106, 90, .12);
}

.tpf-input textarea.tpf-input {
    resize: vertical;
}

label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 5px;
}

.tpf-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: background .15s, transform .1s;
}

.tpf-btn:active {
    transform: translateY(1px);
}

.tpf-btn-primary {
    background: #2d6a5a;
    color: #fff;
}

.tpf-btn-primary:hover {
    background: #245749;
}

/* -------------------------------------------------------
   Forms
-------------------------------------------------------- */
.tpf-form-wrap {
    padding: 8px 0;
}

.tpf-form-wrap h2 {
    font-size: 22px;
    margin-bottom: 6px;
}

.tpf-form-wrap > p {
    color: #6b7280;
    margin-bottom: 20px;
}

.tpf-form {
    display: flex;
    flex-direction: column;
}

/* -------------------------------------------------------
   Messages
-------------------------------------------------------- */
.tpf-msg-success {
    background: #f0fdf4;
    border: 1px solid #86efac;
    color: #166534;
}

.tpf-msg-error {
    background: #fef2f2;
    border: 1px solid #fca5a5;
    color: #991b1b;
}

/* -------------------------------------------------------
   Dashboard cards
-------------------------------------------------------- */
.tpf-dashboard {
    padding: 4px 0;
}

.tpf-dashboard-header h2 {
    font-size: 20px;
}

/* -------------------------------------------------------
   Discount badge
-------------------------------------------------------- */
.tpf-discount-badge {
    background: #2d6a5a;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
    vertical-align: middle;
}

/* -------------------------------------------------------
   Brand profile cards
-------------------------------------------------------- */
.tpf-brand-card {
    transition: box-shadow .15s;
}

.tpf-brand-card:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,.08);
}

/* -------------------------------------------------------
   Modal
-------------------------------------------------------- */
#tpf-brand-modal,
#tpf-reject-modal {
    display: none;
}

#tpf-brand-modal.is-open,
#tpf-reject-modal.is-open {
    display: flex !important;
}

/* -------------------------------------------------------
   Responsive
-------------------------------------------------------- */
@media (max-width: 600px) {
    .tpf-form [style*="grid-template-columns"] {
        grid-template-columns: 1fr !important;
    }
}
