/* Basic admin styles */
.wrap .basis-note { background:#fff; padding:12px; border-left:4px solid #006799; }

/* Form tweaks */
#regex_pattern { max-width: 600px; }

/* Filters layout */
form.basis-filters select { margin-right: 8px; }

/* Toasts */
#basis-toasts { position: fixed; right: 16px; bottom: 16px; z-index: 100000; }
#basis-toasts .toast { background: #32373c; color: #fff; padding: 10px 14px; border-radius: 4px; margin-top: 8px; box-shadow: 0 2px 6px rgba(0,0,0,0.2); }
#basis-toasts .toast.success { background: #198754; }
#basis-toasts .toast.error { background: #dc3545; }

/* Inline loader icon for row actions */
.basis-inline-spinner { display:inline-block; width: 16px; height: 16px; border: 2px solid rgba(0,0,0,0.2); border-top-color: rgba(0,0,0,0.6); border-radius: 50%; animation: basis-spin 0.6s linear infinite; vertical-align: middle; margin-left:6px; }
@keyframes basis-spin { to { transform: rotate(360deg); } }

/* Accessible modal */
.basis-modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 100001; }
.basis-modal { position: fixed; z-index: 100002; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #fff; border: 1px solid #c3c4c7; box-shadow: 0 2px 10px rgba(0,0,0,0.1); width: 420px; max-width: 90%; }
.basis-modal .basis-modal-content { padding: 16px; }
.basis-modal h2 { margin: 0 0 10px; font-size: 18px; }
.basis-modal p { margin: 0 0 16px; }
.basis-modal .basis-modal-actions { text-align: right; }
.basis-modal .basis-modal-actions .button { margin-left: 8px; }

/* Inline edit input sizing */
.small-text { width: 80px; }


/* Status indicator dots */
.column-status_indicator .basis-status-dot { display:inline-block; width:10px; height:10px; border-radius:50%; margin:0 6px; }
.column-status_indicator .basis-status-dot.enabled { background:#2ecc71; }
.column-status_indicator .basis-status-dot.disabled { background:#e74c3c; }



/* Inline validation */
.basis-field-error { display:block; color:#b32d2e; margin-top:4px; }
.basis-invalid { border-color:#b32d2e !important; box-shadow: 0 0 0 1px rgba(179,45,46,.2); }


/* Responsive tweaks */
@media screen and (max-width: 782px) {
	.form-table th { width: auto; display:block; padding-bottom: 4px; }
	.form-table td { display:block; }
	form.basis-filters label { display:block; margin-bottom:8px; }
	#basis-test-result { display:block; margin-top:6px; }
}


/* ===== BasisRedirects Design System (Light) ===== */
:root {
  --basisr-space-1: 4px;
  --basisr-space-2: 8px;
  --basisr-space-3: 12px;
  --basisr-space-4: 16px;
  --basisr-space-6: 24px;
  --basisr-radius-1: 6px;
  --basisr-radius-2: 10px;
  --basisr-border: 1px solid #dcdcde;
  --basisr-muted: #646970;
  --basisr-bg: #fff;
  --basisr-bg-soft: #f6f7f7;
  --basisr-primary: #2271b1;
  --basisr-success: #1a7f37;
  --basisr-info: #127fbf;
  --basisr-warn: #8a6d3b;
  --basisr-error: #a42834;
}

.basisr-toolbar { display:flex; gap:var(--basisr-space-2); align-items:center; justify-content:space-between; margin: var(--basisr-space-4) 0; }
.basisr-stack { display:grid; gap:var(--basisr-space-4); }
.basisr-grid-2 { display:grid; gap:var(--basisr-space-4); grid-template-columns: repeat(2, minmax(0,1fr)); }
@media (max-width:960px){ .basisr-grid-2 { grid-template-columns: 1fr; } }

.basisr-card { background:var(--basisr-bg); border:var(--basisr-border); border-radius:var(--basisr-radius-2); padding:var(--basisr-space-4); box-shadow:0 1px 2px rgba(0,0,0,.04); }
.basisr-card + .basisr-card { margin-top: var(--basisr-space-4); }
.basisr-card__title { margin:0 0 var(--basisr-space-2); font-weight:600; }
.basisr-card__subtitle { margin:0 0 var(--basisr-space-4); color:var(--basisr-muted); }

.basisr-badge { display:inline-flex; align-items:center; padding:0 var(--basisr-space-2); height:22px; border-radius:9999px; font-size:11px; font-weight:600; border:var(--basisr-border); background:var(--basisr-bg-soft); color:#1d2327; }
.basisr-badge.is-success { background:#e7f5ec; border-color:#c7ebd3; color:var(--basisr-success); }
.basisr-badge.is-info { background:#e6f4fa; border-color:#c7e6f5; color:var(--basisr-info); }
.basisr-badge.is-warn { background:#fff7e6; border-color:#ffe3a9; color:var(--basisr-warn); }
.basisr-badge.is-error { background:#fdecef; border-color:#fad3da; color:var(--basisr-error); }

.basisr-chip { display:inline-flex; gap:6px; align-items:center; padding:0 8px; height:28px; border-radius:9999px; background:var(--basisr-bg-soft); border:var(--basisr-border); }
.basisr-chip input[type="checkbox"] { margin:0; }

.basisr-form { display:grid; gap:var(--basisr-space-4); }
.basisr-form-group { display:grid; gap:var(--basisr-space-2); }
.basisr-label { font-weight:600; }
.basisr-help { color:var(--basisr-muted); font-size:12px; }

.wp-core-ui .button.primary, .wp-core-ui .button.button-primary { box-shadow:0 1px 0 rgba(0,0,0,.08); }
.wp-core-ui .button.basisr-ghost { background:transparent; border-color:#c3c4c7; }

.basisr-table-wrap { overflow:auto; border-radius:var(--basisr-radius-1); border:var(--basisr-border); background:var(--basisr-bg); }
.basisr-table-wrap table { margin:0; }

.basisr-section { padding:var(--basisr-space-4); background:var(--basisr-bg); border-radius:var(--basisr-radius-1); border:var(--basisr-border); }
.basisr-section__title { margin:0 0 var(--basisr-space-2); font-weight:600; }

.basisr-collapsible[aria-expanded="false"] .basisr-collapsible__content { display:none; }
.basisr-collapsible__toggle { cursor:pointer; }
