/* Flotilla — Odoo kanban / form / stubs */
.fleet-odo { display:flex; flex-direction:column; gap:16px; min-height:40vh; position:relative; }
.fleet-odo-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:12px 16px; padding-bottom:8px; }
.fleet-odo-new, .fleet-odo .btn-primary, .fleet-odo-form .btn-primary, .fleet-odo-empty .btn-primary {
  background: var(--o-brand, #714B67) !important;
  border-color: var(--o-brand, #714B67) !important;
  color:#fff !important;
}
.fleet-odo-title { margin:0; font-size:1.15rem; font-weight:650; color:var(--sfe-navy,#1e2b3c); }
.fleet-odo-search { flex:1 1 240px; max-width:460px; margin:0 auto; }
.fleet-odo-search__inner {
  display:flex; align-items:center; gap:8px; min-height:34px;
  border:1px solid #ced4da; border-radius:4px; padding:2px 8px; background:#fff;
}
.fleet-odo-search input[type="search"] {
  flex:1 1 120px; border:0; outline:none; min-height:28px; font-size:.875rem; background:transparent;
}
.fleet-odo-meta { display:flex; align-items:center; gap:10px; margin-left:auto; color:#6c757d; font-size:.8125rem; }
.fleet-odo-views { display:inline-flex; border:1px solid #ced4da; border-radius:4px; overflow:hidden; }
.fleet-odo-view-btn {
  display:inline-flex; align-items:center; justify-content:center; width:32px; height:30px;
  text-decoration:none; color:#495057; background:#fff; border-right:1px solid #ced4da; font-size:.85rem;
}
.fleet-odo-view-btn:last-child { border-right:0; }
.fleet-odo-view-btn.is-active { background:#e7f1ff; color:#0d6efd; }
.fleet-odo-table-wrap { overflow:auto; border:1px solid #e9ecef; border-radius:4px; background:#fff; }
.fleet-odo-table th { white-space:nowrap; font-size:.75rem; color:#6c757d; }
.fleet-odo-muted { color:#adb5bd; font-size:.75rem; }
.fleet-odo-empty {
  display:flex; flex-direction:column; align-items:center; text-align:center;
  gap:10px; padding:48px 20px; color:#495057;
}
.fleet-odo-empty__icon {
  width:72px; height:72px; border-radius:50%; background:var(--o-brand,#714B67); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:1.8rem;
}
.fleet-odo-empty h3 { margin:0; font-size:1.05rem; color:#1e2b3c; max-width:520px; }
.fleet-odo-empty p { margin:0; max-width:520px; font-size:.875rem; color:#6c757d; }
.fleet-odo-empty__actions { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:8px; }
.fleet-odo-kanban {
  display:grid; grid-template-columns:repeat(4,minmax(160px,1fr)); gap:12px;
  position:relative; min-height:280px;
}
@media(max-width:1100px){ .fleet-odo-kanban{grid-template-columns:repeat(2,minmax(140px,1fr));} }
@media(max-width:720px){ .fleet-odo-kanban{grid-template-columns:1fr;} }
.fleet-odo-kanban__col { background:#f8f9fa; border-radius:6px; padding:10px; min-height:180px; }
.fleet-odo-kanban__col h3 {
  margin:0 0 10px; font-size:.85rem; display:flex; justify-content:space-between; align-items:center; gap:8px;
}
.fleet-odo-kanban__col-actions { display:inline-flex; align-items:center; gap:8px; color:#6c757d; }
.fleet-odo-kanban__add {
  display:inline-flex; width:22px; height:22px; align-items:center; justify-content:center;
  text-decoration:none; color:#495057; border-radius:4px; font-weight:700;
}
.fleet-odo-kanban__add:hover { background:#e9ecef; }
.fleet-odo-kanban__card {
  display:flex; flex-direction:column; gap:4px; background:#fff; border:1px solid #e9ecef;
  border-radius:6px; padding:10px; margin-bottom:8px; text-decoration:none; color:#1e2b3c; font-size:.8125rem;
}
.fleet-odo-kanban__card.is-ghost { opacity:.35; pointer-events:none; }
.fleet-odo-kanban--ghost .fleet-odo-empty--overlay {
  position:absolute; inset:40px 8% auto; z-index:2; background:rgba(255,255,255,.94);
  border-radius:12px; box-shadow:0 8px 28px rgba(30,43,60,.08);
}
.fleet-odo-stub { padding:24px; background:#fff; border:1px solid #e9ecef; border-radius:6px; }
.fleet-odo-form__toolbar { display:flex; flex-wrap:wrap; align-items:flex-start; gap:12px; margin-bottom:12px; }
.fleet-odo-form__crumbs { display:flex; gap:8px; align-items:center; font-size:.9rem; flex-wrap:wrap; }
.fleet-odo-form__crumbs a:not(.btn) { color:var(--o-brand,#714B67); text-decoration:none; }
.fleet-odo-form__smart { margin-left:auto; display:flex; flex-wrap:wrap; gap:6px; }
.fleet-odo-smart-btn {
  display:inline-flex; flex-direction:column; align-items:center; text-decoration:none;
  border:1px solid #dee2e6; border-radius:4px; padding:6px 10px; background:#fff; color:#1e2b3c; font-size:.7rem; min-width:72px;
}
.fleet-odo-smart-btn strong { font-size:1.05rem; color:var(--o-brand,#714B67); }
.fleet-odo-statusbar {
  display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:14px;
}
.fleet-odo-statusbar__actions { display:flex; gap:8px; }
.fleet-odo-stages {
  display:flex; list-style:none; margin:0 0 0 auto; padding:0; gap:0; border-radius:4px; overflow:hidden;
  border:1px solid #dee2e6;
}
.fleet-odo-stage {
  padding:6px 14px; font-size:.8125rem; background:#f8f9fa; color:#6c757d; border-right:1px solid #dee2e6;
}
.fleet-odo-stage:last-child { border-right:0; }
.fleet-odo-stage.is-active { background:#cfe2ff; color:#084298; font-weight:600; }
.fleet-odo-form__layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:16px; }
@media(max-width:960px){ .fleet-odo-form__layout{grid-template-columns:1fr;} }
.fleet-odo-form__sheet { background:#fff; border:1px solid #e9ecef; border-radius:6px; padding:18px; }
.fleet-odo-form__hero { display:flex; gap:16px; align-items:flex-start; margin-bottom:16px; }
.fleet-odo-form__hero-fields { flex:1 1 auto; display:flex; flex-direction:column; gap:10px; }
.fleet-odo-form__photo {
  width:88px; height:88px; border:1px dashed #ced4da; border-radius:6px;
  display:flex; align-items:center; justify-content:center; font-size:1.6rem; color:#adb5bd; flex:0 0 auto;
}
.fleet-odo-field--title input {
  font-size:1.35rem; font-weight:500; border:0; border-bottom:1px solid #ced4da; border-radius:0;
  padding:8px 0; width:100%; outline:none;
}
.fleet-odo-form__grid {
  display:grid; grid-template-columns:repeat(2,minmax(220px,1fr)); gap:14px 24px; margin:8px 0 12px;
}
@media(max-width:720px){ .fleet-odo-form__grid{grid-template-columns:1fr;} }
.fleet-odo-field { display:flex; flex-direction:column; gap:4px; font-size:.8125rem; color:#495057; }
.fleet-odo-field--wide { margin-bottom:8px; }
.fleet-odo-field--check { flex-direction:row; align-items:center; gap:8px; }
.fleet-odo-field select, .fleet-odo-field input, .fleet-odo-field textarea {
  border:1px solid #ced4da; border-radius:4px; padding:6px 8px; font-size:.875rem; min-height:34px;
}
.fleet-odo-section { border:0; margin:0 0 16px; padding:0; }
.fleet-odo-section legend {
  font-size:.7rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#6c757d; margin-bottom:6px;
}
.fleet-odo-tabs { display:flex; gap:0; border-bottom:1px solid #dee2e6; margin:8px 0 16px; }
.fleet-odo-tab {
  padding:8px 14px; text-decoration:none; color:#6c757d; font-size:.875rem; border-bottom:2px solid transparent;
}
.fleet-odo-tab.is-active { color:var(--o-brand,#714B67); border-bottom-color:var(--o-brand,#714B67); font-weight:600; }
.fleet-odo-fiscal { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
@media(max-width:720px){ .fleet-odo-fiscal{grid-template-columns:1fr;} }
.fleet-odo-fiscal__col h3 { margin:0 0 10px; font-size:.75rem; text-transform:uppercase; letter-spacing:.04em; color:#6c757d; }
.fleet-odo-chatter {
  background:#fff; border:1px solid #e9ecef; border-radius:6px; padding:14px; display:flex; flex-direction:column; gap:12px;
}
.fleet-odo-chatter__actions { display:flex; flex-wrap:wrap; gap:6px; }
.fleet-odo-chatter__log { font-size:.8125rem; color:#6c757d; }
