/* =====================================================
   Okul Öğrenci Bilgileri v3 — Stil
   ===================================================== */

/* --- Ortak --- */

.oob-section {
    padding: 20px;
    background: #f9fafb;
    border: 1px solid #dde0e9;
    border-radius: 8px;
    margin-top: 24px;
}

.oob-section-title {
    margin: 0 0 6px !important;
    font-size: 18px !important;
    color: #1a2e4a;
}

.oob-sub-title {
    margin: 12px 0 10px !important;
    font-size: 14px;
    color: #3d5a80;
    font-weight: 700;
}

.oob-section-desc {
    margin: 0 0 16px !important;
    color: #666;
    font-size: 13px;
}

.req { color: #e74c3c; }
.optional { color: #999; font-size: 11px; font-weight: 400; }

/* Grid */
.oob-field-grid { display: grid; gap: 12px; }
.oob-grid-1 { grid-template-columns: 1fr; }
.oob-grid-2 { grid-template-columns: repeat(2, 1fr); }
.oob-grid-3 { grid-template-columns: repeat(3, 1fr); }
.oob-grid-4 { grid-template-columns: repeat(4, 1fr); }
.oob-grid-5 { grid-template-columns: repeat(5, 1fr); }

/* Fatura alanındaki diğer ebeveyn satırları varsayılan gizli */
.oob-other-parent-field { display: none; }

/* Ana Checkout Sayfasını Tek Kolon Yapma */
.woocommerce-checkout form.checkout {
    display: block !important;
}

.woocommerce-checkout form.checkout #customer_details,
.woocommerce-checkout form.checkout #order_review_heading,
.woocommerce-checkout form.checkout #order_review,
.woocommerce-checkout .col2-set .col-1, 
.woocommerce-checkout .col2-set .col-2 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin-bottom: 20px;
}

/* Fatura Alanları 2 Kolon */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}
.woocommerce-checkout .form-row {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

@media (max-width: 760px) {
    .oob-grid-2, .oob-grid-3, .oob-grid-4, .oob-grid-5 { grid-template-columns: 1fr 1fr; }
    .woocommerce-billing-fields__field-wrapper,
    .woocommerce-shipping-fields__field-wrapper,
    .woocommerce-additional-fields__field-wrapper {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 500px) {
    .oob-grid-2, .oob-grid-3, .oob-grid-4, .oob-grid-5 { grid-template-columns: 1fr; }
}

.oob-fg { display: flex; flex-direction: column; }

.oob-fg label {
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 4px;
}

.oob-fg .input-text,
.oob-fg input[type="text"],
.oob-fg input[type="email"],
.oob-fg input[type="tel"],
.oob-fg input[type="number"],
.oob-fg select {
    width: 100% !important;
    box-sizing: border-box;
    padding: 8px 10px !important;
    border: 1px solid #ccd0dc !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    background: #fff;
    color: #333;
    transition: border-color .2s;
}

.oob-fg .input-text:focus,
.oob-fg input:focus,
.oob-fg select:focus {
    outline: none;
    border-color: #3d5a80 !important;
    box-shadow: 0 0 0 2px rgba(61,90,128,.12);
}

.oob-fg .input-text[readonly] {
    background: #f0f3f8;
    color: #555;
}

/* --- Veli Bölümü --- */

#oob-parent-section {
    margin-bottom: 10px;
}

#oobOtherParent {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px dashed #c5cad8;
}

/* --- Öğrenci Bölümü (Checkout) --- */

.oob-product-block {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e3e6f0;
}

.oob-product-block:last-child { border-bottom: none; margin-bottom: 0; }

.oob-product-name {
    margin: 0 0 10px !important;
    font-size: 15px;
    color: #2c3e50;
}

.oob-student-entry {
    background: #fff;
    border: 1px solid #e2e5f0;
    border-radius: 6px;
    padding: 14px 16px;
    margin-bottom: 10px;
}

.oob-entry-label {
    font-weight: 700;
    color: #3d5a80;
    margin: 0 0 12px !important;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.oob-fg-full { grid-column: 1 / -1; }

.oob-saved-select {
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #ccd0dc;
    border-radius: 4px;
    font-size: 13px;
    margin-bottom: 12px;
    background: #fafbff;
}

.oob-save-row {
    margin-top: 14px;
    font-size: 13px;
    color: #555;
}

.oob-save-row input[type=checkbox] {
    margin-right: 6px;
    vertical-align: middle;
}

/* --- Admin Kutusu --- */

.oob-admin-box {
    background: #fff8e1;
    border: 1px solid #ffe082;
    border-radius: 6px;
    padding: 14px 18px;
    margin-top: 20px;
}

.oob-admin-box h3 { margin: 0 0 10px; font-size: 14px; color: #6d5000; }
.oob-admin-box p  { margin: 4px 0; font-size: 13px; }
.oob-admin-table th { background: #fff3cd; font-weight: 600; }

/* --- Hesabım: Çocuklarım --- */

#oobPage { max-width: 100%; overflow-x: auto; }

.oob-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
    margin-bottom: 28px;
    min-width: 700px;
}

.oob-table th,
.oob-table td {
    padding: 9px 10px;
    border: 1px solid #e0e3ee;
    vertical-align: middle;
}

.oob-table thead th {
    background: #eef1f8;
    font-weight: 700;
    color: #2c3e50;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.oob-table tbody tr:nth-child(even) { background: #fafbfe; }

.oob-table .oob-inp {
    width: 100%;
    box-sizing: border-box;
    padding: 5px 7px;
    border: 1px solid #3d5a80;
    border-radius: 3px;
    font-size: 12px;
}

.oob-acts .button {
    margin-right: 3px;
    font-size: 11px !important;
    padding: 4px 8px !important;
}

.oob-edit   { background: #3d5a80 !important; color: #fff !important; border-color: #3d5a80 !important; }
.oob-save   { background: #27ae60 !important; color: #fff !important; border-color: #27ae60 !important; }
.oob-cancel { background: #95a5a6 !important; color: #fff !important; border-color: #95a5a6 !important; }
.oob-del    { background: #e74c3c !important; color: #fff !important; border-color: #e74c3c !important; }

/* Ekleme formu */
.oob-add-box {
    background: #f5f7fb;
    border: 1px solid #dde0ea;
    border-radius: 8px;
    padding: 20px 24px;
    margin-top: 4px;
}

.oob-add-box h3 { margin: 0 0 16px; font-size: 15px; color: #2c3e50; }

.oob-add-btn-col {
    justify-content: flex-end;
}

.oob-add-btn-col .button {
    padding: 9px 18px !important;
    align-self: flex-end;
}

/* Notice */
.oob-notice {
    padding: 10px 14px;
    border-radius: 5px;
    font-size: 13px;
    margin-bottom: 14px;
}

.oob-notice.ok  { background: #eafaf1; border: 1px solid #27ae60; color: #1e8449; }
.oob-notice.err { background: #fdedec; border: 1px solid #e74c3c; color: #c0392b; }