/* ---- BOARD ---- */
.gtb-board { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.gtb-board-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; flex-wrap:wrap; gap:8px; }
.gtb-live-count { font-size:14px; font-weight:600; color:#1D9E75; }
.gtb-sort { display:flex; align-items:center; gap:8px; font-size:13px; color:#6b7280; }
.gtb-sort-btn { padding:4px 12px; border-radius:20px; border:1px solid #e5e7eb; text-decoration:none; color:#374151; font-size:12px; }
.gtb-sort-btn.active { background:#1D9E75; color:#fff; border-color:#1D9E75; }
.gtb-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:16px; }

/* ---- CARD ---- */
.gtb-card { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:16px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.gtb-card-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.gtb-badge { display:inline-block; padding:3px 10px; border-radius:20px; font-size:11px; font-weight:600; }
.gtb-badge-toto   { background:#d1fae5; color:#065f46; }
.gtb-badge-maruti { background:#dbeafe; color:#1e40af; }
.gtb-badge-bus    { background:#fef3c7; color:#92400e; }
.gtb-badge-loader { background:#fce7f3; color:#9d174d; }
.gtb-expiry { font-size:11px; color:#9ca3af; }
.gtb-card-name { font-size:15px; font-weight:600; color:#111827; margin:0 0 6px; }
.gtb-card-msg { font-size:13px; color:#374151; margin:0 0 10px; line-height:1.5; }
.gtb-card-meta { display:flex; flex-wrap:wrap; gap:8px; font-size:12px; color:#6b7280; margin-bottom:12px; }
.gtb-card-meta span { display:flex; align-items:center; gap:3px; }
.gtb-card-actions { display:flex; gap:8px; margin-bottom:8px; }
.gtb-btn { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:5px; padding:8px 12px; border-radius:8px; font-size:13px; font-weight:600; text-decoration:none; transition:opacity .15s; }
.gtb-btn-call { background:#1D9E75; color:#fff; }
.gtb-btn-wa   { background:#25D366; color:#fff; }
.gtb-btn:hover { opacity:.88; }
.gtb-posted-at { font-size:11px; color:#9ca3af; margin:0; text-align:right; }
.gtb-empty-state { text-align:center; padding:40px 20px; color:#6b7280; }

/* ---- FORM ---- */
.gtb-form-wrap { max-width:560px; }
.gtb-form { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:24px; }
.gtb-field { margin-bottom:16px; }
.gtb-field label { display:block; font-size:13px; font-weight:600; color:#374151; margin-bottom:6px; }
.gtb-field input, .gtb-field textarea, .gtb-field select {
    width:100%; padding:9px 12px; border:1px solid #d1d5db; border-radius:8px;
    font-size:14px; color:#111827; box-sizing:border-box; transition:border-color .15s;
}
.gtb-field input:focus, .gtb-field textarea:focus, .gtb-field select:focus {
    border-color:#1D9E75; outline:none; box-shadow:0 0 0 3px rgba(29,158,117,.12);
}
.gtb-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media(max-width:480px) { .gtb-row { grid-template-columns:1fr; } .gtb-grid { grid-template-columns:1fr; } }
.req { color:#e74c3c; }
.gtb-optional { color:#9ca3af; font-weight:400; font-size:12px; }
.gtb-checkbox-label { display:flex; align-items:center; gap:6px; margin-top:6px; font-size:12px; font-weight:400 !important; cursor:pointer; }
.gtb-checkbox-label input { width:auto !important; }
.gtb-btn-submit { width:100%; padding:11px; background:#1D9E75; color:#fff; border:none; border-radius:8px; font-size:15px; font-weight:700; cursor:pointer; margin-top:4px; transition:background .15s; }
.gtb-btn-submit:hover { background:#0F6E56; }
.gtb-disclaimer { font-size:11px; color:#9ca3af; margin-top:10px; text-align:center; }
.gtb-notice { padding:12px 16px; border-radius:8px; margin-bottom:16px; font-size:14px; line-height:1.6; }
.gtb-notice-success { background:#d1fae5; color:#065f46; border:1px solid #6ee7b7; }
.gtb-notice-error   { background:#fee2e2; color:#991b1b; border:1px solid #fca5a5; }
.gtb-delete-link { display:block; margin-top:6px; font-size:12px; word-break:break-all; color:#065f46; text-decoration:underline; }
.gtb-btn-primary { display:inline-block; padding:10px 20px; background:#1D9E75; color:#fff; border-radius:8px; text-decoration:none; font-weight:600; }
