/*
 * KCS wp-admin modern skin. Every rule is scoped to body.kcs-admin-page, which the plugin adds
 * only on its own screens, so other WordPress / plugin pages are never touched.
 */
body.kcs-admin-page {
    --blue:#2563eb; --violet:#7c3aed; --ink:#0f172a; --muted:#64748b; --line:#e6eaf2; --bg:#f4f6fb;
    --shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px -12px rgba(15,23,42,.1);
    background:var(--bg);
}
.kcs-admin-page #wpcontent { background:var(--bg); }
.kcs-admin-page .wrap { font-family:'Poppins','Inter','Segoe UI',Roboto,sans-serif; color:#334155; max-width:1500px; margin:18px 22px 0 12px; }
.kcs-admin-page .wrap h1, .kcs-admin-page .wrap h2, .kcs-admin-page .wrap h3 { font-family:inherit; color:var(--ink); letter-spacing:-.01em; }
.kcs-admin-page .wrap h1.wp-heading-inline { font-size:26px; font-weight:700; padding:0; margin-right:12px; }
.kcs-admin-page .wrap h2 { font-size:16px; font-weight:600; margin:0 0 12px; padding:0; }
.kcs-admin-page .wrap a { color:var(--blue); font-weight:500; }
.kcs-admin-page hr.wp-header-end { border:0; margin:6px 0 0; }

/* Header action links (Add New, Export ...) */
.kcs-admin-page .page-title-action {
    top:0; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--blue);
    padding:7px 14px; font-size:13px; font-weight:600; line-height:1.4; box-shadow:0 1px 2px rgba(15,23,42,.05);
    transition:background .15s, box-shadow .15s, transform .15s;
}
.kcs-admin-page .page-title-action:hover { background:#f5f7ff; color:var(--blue); box-shadow:0 6px 14px -8px rgba(15,23,42,.25); transform:translateY(-1px); }

/* Buttons */
.kcs-admin-page .button, .kcs-admin-page input.button {
    border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--blue);
    font-family:inherit; font-weight:600; font-size:13px; padding:5px 14px; min-height:36px; line-height:1.6;
    box-shadow:0 1px 2px rgba(15,23,42,.05); transition:background .15s, box-shadow .15s, transform .15s;
}
.kcs-admin-page .button:hover { background:#f5f7ff; color:var(--blue); border-color:#cfd8f3; }
.kcs-admin-page .button-small, .kcs-admin-page .button.button-small { min-height:30px; padding:2px 11px; font-size:12px; line-height:1.9; }
.kcs-admin-page .button-primary, .kcs-admin-page input.button-primary {
    background:linear-gradient(135deg,var(--blue),#4f8cff); border-color:transparent; color:#fff;
    box-shadow:0 8px 16px -8px var(--blue);
}
.kcs-admin-page .button-primary:hover, .kcs-admin-page .button-primary:focus { background:linear-gradient(135deg,#1d4ed8,#3b82f6); color:#fff; border-color:transparent; transform:translateY(-1px); }

/* Fields */
.kcs-admin-page .wrap input[type="text"], .kcs-admin-page .wrap input[type="email"], .kcs-admin-page .wrap input[type="password"],
.kcs-admin-page .wrap input[type="number"], .kcs-admin-page .wrap input[type="tel"], .kcs-admin-page .wrap input[type="url"],
.kcs-admin-page .wrap input[type="date"], .kcs-admin-page .wrap input[type="search"], .kcs-admin-page .wrap select, .kcs-admin-page .wrap textarea {
    border:1px solid var(--line); border-radius:10px; background:#f8fafc; color:var(--ink);
    font-family:inherit; font-size:13.5px; min-height:38px; padding:6px 12px; box-shadow:none;
    transition:border-color .15s, box-shadow .15s, background .15s;
}
.kcs-admin-page .wrap textarea { min-height:90px; }
.kcs-admin-page .wrap input:focus, .kcs-admin-page .wrap select:focus, .kcs-admin-page .wrap textarea:focus {
    background:#fff; border-color:var(--blue); box-shadow:0 0 0 4px rgba(37,99,235,.14); outline:none;
}
.kcs-admin-page .wrap label { font-weight:600; font-size:12.5px; color:#475569; }
.kcs-admin-page .description, .kcs-admin-page .form-field p { color:var(--muted); font-size:12.5px; }

/* Tables become cards */
.kcs-admin-page .wp-list-table {
    border:1px solid var(--line); border-radius:16px; border-collapse:separate; border-spacing:0;
    overflow:hidden; background:#fff; box-shadow:var(--shadow); margin-top:14px;
}
.kcs-admin-page .wp-list-table.fixed { table-layout:auto; }
.kcs-admin-page .wp-list-table thead th, .kcs-admin-page .wp-list-table thead td {
    background:#f8fafc; color:var(--muted); font-size:12.5px; font-weight:600; padding:14px 16px; border-bottom:1px solid var(--line); white-space:nowrap;
}
.kcs-admin-page .wp-list-table tbody td, .kcs-admin-page .wp-list-table tbody th { padding:14px 16px; border-bottom:1px solid #eef1f7; vertical-align:middle; font-size:13.5px; }
.kcs-admin-page .wp-list-table tbody tr:last-child td { border-bottom:0; }
.kcs-admin-page .wp-list-table.striped > tbody > :nth-child(odd) { background:#fff; }
.kcs-admin-page .wp-list-table tbody tr:hover { background:#f8faff; }
.kcs-admin-page .wp-list-table td strong { color:var(--ink); font-weight:600; }
.kcs-admin-page .wp-list-table td form { margin:0; display:inline-flex; gap:6px; align-items:center; flex-wrap:wrap; }
.kcs-admin-page .wp-list-table td select { max-width:170px; min-height:34px; font-size:12.5px; }

/* Cards */
.kcs-admin-page .card {
    max-width:none; background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow);
    padding:20px 22px; margin-top:0;
}
.kcs-admin-page .card h2, .kcs-admin-page .card h3 { margin-top:0; }
.kcs-admin-page .card p { margin:6px 0; }

/* Two-column pages (Branches, Riders) */
.kcs-admin-page #col-container { display:grid; grid-template-columns:minmax(300px,380px) minmax(0,1fr); gap:22px; margin-top:16px; align-items:start; }
.kcs-admin-page #col-left, .kcs-admin-page #col-right { float:none; width:auto; padding:0; }
.kcs-admin-page #col-left .col-wrap, .kcs-admin-page #col-right .col-wrap { padding:0; }
.kcs-admin-page #col-left .form-wrap { background:#fff; border:1px solid var(--line); border-radius:16px; padding:22px; box-shadow:var(--shadow); }
.kcs-admin-page #col-right .wp-list-table { margin-top:0; }
.kcs-admin-page .form-field { margin:0 0 14px; }
.kcs-admin-page .form-field input, .kcs-admin-page .form-field select, .kcs-admin-page .form-field textarea { width:100%; max-width:100%; }
@media (max-width:1000px) { .kcs-admin-page #col-container { grid-template-columns:1fr; } }

/* Settings-style forms */
.kcs-admin-page .form-table { background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); border-collapse:separate; border-spacing:0; margin-top:14px; padding:6px 22px; }
.kcs-admin-page .form-table th { padding:20px 16px 20px 0; font-weight:600; color:var(--ink); font-size:13.5px; width:220px; }
.kcs-admin-page .form-table td { padding:16px 0; }
.kcs-admin-page .form-table tr + tr th, .kcs-admin-page .form-table tr + tr td { border-top:1px solid #eef1f7; }
.kcs-admin-page .regular-text { width:100%; max-width:460px; }
.kcs-admin-page .large-text { width:100%; max-width:640px; }
.kcs-admin-page p.submit { padding:16px 0 0; }

/* Notices */
.kcs-admin-page .notice { border:1px solid var(--line); border-left-width:4px; border-radius:12px; box-shadow:var(--shadow); padding:4px 14px; }
.kcs-admin-page .notice-success { border-left-color:#10b981; background:#ecfdf5; }
.kcs-admin-page .notice-error { border-left-color:#f43f5e; background:#fff1f2; }
.kcs-admin-page .notice-warning { border-left-color:#f59e0b; background:#fffbeb; }

/* WhatsApp control (shared by list and detail pages) */
.kcs-admin-page .kcs-wa-wrap { display:inline-flex; align-items:center; gap:6px; }
.kcs-admin-page .kcs-wa-select { min-height:32px !important; font-size:12px !important; max-width:150px; }
.kcs-admin-page a.kcs-wa-btn {
    display:inline-flex; align-items:center; gap:4px; background:#25d366; color:#fff; border-radius:10px; padding:7px 12px;
    font-size:12px; font-weight:600; text-decoration:none; white-space:nowrap; box-shadow:0 6px 14px -8px #25d366;
}
.kcs-admin-page a.kcs-wa-btn:hover { background:#1fb457; color:#fff; }

/* Tracking timelines etc. that reuse .card widths */
.kcs-admin-page .wrap > div[style*="display:flex"] > .card { flex:1 1 300px; }

.kcs-admin-page .wrap input, .kcs-admin-page .wrap select, .kcs-admin-page .wrap textarea { box-sizing:border-box; }

/* Bulk CN printing bar */
.kcs-admin-page .kcs-bulk-cn { display:flex; align-items:center; gap:14px; flex-wrap:wrap; background:#fff; border:1px solid var(--line); border-radius:14px; padding:10px 16px; margin:14px 0 0; box-shadow:var(--shadow); }
.kcs-admin-page .kcs-bulk-cn label.kcs-bulk-all { display:inline-flex; align-items:center; gap:8px; margin:0; cursor:pointer; }
.kcs-admin-page .kcs-bulk-count { color:var(--muted); font-size:13px; margin-right:auto; }
.kcs-admin-page .kcs-bulk-cn .button[disabled] { opacity:.45; }
.kcs-admin-page input.kcs-bulk-cb { width:17px; height:17px; min-height:0; margin:0; }

/* ---- Automatic delivery-charge box (admin booking forms) ---- */
body.kcs-admin-page .kcs-price-box { display: flex; flex-direction: column; gap: 4px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 12px; padding: 12px 16px; max-width: 420px; }
body.kcs-admin-page .kcs-price-box.is-ok { background: #eff6ff; border-color: #bfdbfe; }
body.kcs-admin-page .kcs-price-box.is-error { background: #fef2f2; border-color: #fecaca; }
body.kcs-admin-page .kcs-price-label, body.kcs-admin-page .kcs-price-hint { font-size: 12.5px; color: #64748b; }
body.kcs-admin-page .kcs-price-amount { font-size: 22px; font-weight: 700; color: #0f172a; }

/* ---- Cards used on the Rider Cash / Shopify Stores screens ---- */
body.kcs-admin-page .kcs-sh-stat { display: block; background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; padding: 14px 16px; }
body.kcs-admin-page .kcs-sh-stat span { display: block; font-size: 12px; color: #64748b; }
body.kcs-admin-page .kcs-sh-stat strong { display: block; font-size: 22px; color: #0f172a; line-height: 1.3; }
body.kcs-admin-page .kcs-sh-stat small { color: #64748b; }
body.kcs-admin-page .kcs-sh-stat.is-bad strong { color: #be123c; }


/* KCS v1.20.0 — admin + embedded portal visual system refinement */
body.kcs-admin-page { --blue:#315eea; --ink:#18243b; --muted:#697891; --line:#e3e9f3; --bg:#f4f7fc; --shadow:0 4px 18px rgba(23,37,66,.045); }
.kcs-admin-page .wrap { max-width:1580px; margin-top:22px; }
.kcs-admin-page .wrap h1.wp-heading-inline { font-size:28px; letter-spacing:-.035em; line-height:1.2; }
.kcs-admin-page .wrap > p { color:var(--muted); }
.kcs-admin-page .wp-list-table { border-radius:14px; box-shadow:var(--shadow); }
.kcs-admin-page .wp-list-table thead th, .kcs-admin-page .wp-list-table thead td { padding:15px 16px; text-transform:uppercase; letter-spacing:.035em; font-size:11px; }
.kcs-admin-page .wp-list-table tbody td, .kcs-admin-page .wp-list-table tbody th { padding:14px 16px; }
.kcs-admin-page .wp-list-table tbody tr:hover td { background:#f5f8ff; }
.kcs-admin-page .wrap .button, .kcs-admin-page .wrap input.button { min-height:38px; border-radius:9px; padding:6px 14px; }
.kcs-admin-page .wrap .button-primary, .kcs-admin-page .wrap input.button-primary { background:linear-gradient(135deg,#315eea,#547bff); }
.kcs-admin-page .wrap input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),
.kcs-admin-page .wrap select, .kcs-admin-page .wrap textarea { min-height:40px; border-radius:9px; }
.kcs-admin-page .wrap input[type=checkbox] { accent-color:#315eea; width:16px; height:16px; }
.kcs-admin-page .wrap .tablenav { min-height:42px; display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.kcs-admin-page .wrap .tablenav .actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.kcs-admin-page .wrap .search-box { display:flex; align-items:center; gap:8px; float:none; margin:12px 0; }
.kcs-admin-page .wrap .search-box input[type=search] { width:min(340px,100%); }
.kcs-admin-page .card, .kcs-admin-page #col-left .form-wrap { border-radius:15px; box-shadow:var(--shadow); }
.kcs-admin-page .notice { margin-top:16px; }
.kcs-admin-page .wrap .form-table th { vertical-align:top; }
.kcs-admin-page .wrap a:focus-visible, .kcs-admin-page .wrap button:focus-visible, .kcs-admin-page .wrap input:focus-visible, .kcs-admin-page .wrap select:focus-visible { outline:3px solid rgba(49,94,234,.25); outline-offset:2px; }
.kcs-admin-page .kcs-sh-stat { border-radius:14px; box-shadow:0 2px 10px rgba(23,37,66,.035); }
.kcs-admin-page .kcs-sh-stat strong { letter-spacing:-.03em; font-variant-numeric:tabular-nums; }
@media (max-width:782px) {
 .kcs-admin-page .wrap { margin:12px 10px 0 0; }
 .kcs-admin-page .wrap h1.wp-heading-inline { font-size:23px; margin-bottom:8px; }
 .kcs-admin-page .wrap .search-box { float:none; flex-wrap:wrap; }
 .kcs-admin-page .wrap .tablenav { height:auto; }
 .kcs-admin-page .form-table { padding:8px 14px; }
 .kcs-admin-page .form-table th, .kcs-admin-page .form-table td { display:block; width:100%; padding:12px 0; }
 .kcs-admin-page .wp-list-table { display:block; max-width:100%; overflow-x:auto; }
}
