/* Panel del Dueño de Vetfly: las piezas del sistema (app.css) y lo poco propio del panel */
.panel-app { background: var(--fondo); }
.panel-barra { gap: 16px; }
.panel-marca { display: inline-flex; align-items: center; gap: 12px; white-space: nowrap; }
.panel-marca img { height: 24px; width: auto; display: block; }
.panel-marca span { font-weight: 500; color: var(--texto-suave); font-size: var(--ts-base); padding-left: 12px; border-left: 1px solid var(--borde); }
.panel-marca.grande img { height: 40px; }
.panel-nav { display: flex; gap: 4px; }
.panel-nav a { padding: 8px 12px; border-radius: var(--radio-control); color: var(--texto); text-decoration: none; font-weight: 600; }
.panel-nav a.on, .panel-nav a:hover { background: var(--azul-claro); color: var(--azul); }
.panel-cont { max-width: 1280px; margin: 0 auto; padding: 24px 16px 48px; display: grid; gap: 16px; }
.panel-cont .sec-cab { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.panel-cont .sec-cab h1 { margin: 4px 0 0; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.panel-cont .sec-acc { display: flex; gap: 8px; flex-wrap: wrap; }
.panel-cont .sec-acc form { margin: 0; }
.panel-cont .migas { font-size: var(--ts-base); color: var(--texto-suave); }
.panel-cont .tarjeta.seccion { padding: 20px; }
.panel-cont .tarjeta-cab { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
.panel-cont .tarjeta-cab h2 { margin: 0; }
.panel-cont .tabla-cont .tarjeta-cab { padding: 16px 20px 0; }
.panel-cont .tabla-cont { overflow-x: auto; }
.panel-cont .acciones { display: flex; gap: 8px; justify-content: flex-end; flex-wrap: wrap; margin-top: 16px; }
.panel-cont .acciones .espacio { flex: 1; }
.panel-cont .panel-izq { justify-content: flex-start; margin-top: 0; }
.panel-dos { display: grid; grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)); gap: 16px; }
.panel-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.panel-kpis .kpi { background: var(--superficie); border: 1px solid var(--borde); border-radius: var(--radio-contenedor); padding: 12px 16px; display: grid; gap: 4px; }
.panel-kpis .kpi b { font-size: var(--ts-subtitulo); color: var(--azul); }
.panel-form .form-sec { margin: 8px 0; }
.panel-sub { display: flex; align-items: center; gap: 4px; }
.panel-sub input { flex: 1; min-width: 0; }
.panel-sub em { font-style: normal; color: var(--texto-suave); white-space: nowrap; }
.panel-clave { font: 600 20px/1.4 ui-monospace, Menlo, monospace; letter-spacing: 2px; padding: 12px 16px; background: var(--azul-claro); color: var(--azul); border-radius: var(--radio-control); text-align: center; margin: 4px 0 12px; user-select: all; }
.panel-uri { display: block; word-break: break-all; font-size: 12px; color: var(--texto-suave); }
@media (max-width: 720px) { .panel-dos { grid-template-columns: 1fr; } .panel-barra { flex-wrap: wrap; } }
.panel-cont .dos { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 0 16px; }
.panel-cont .tabla { width: 100%; border-collapse: collapse; }
.panel-cont .tabla td a { white-space: nowrap; }
.panel-cont .prod-sub { display: block; color: var(--texto-suave); font-size: var(--ts-pequeno); }
.panel-cont .chip { white-space: nowrap; }
