:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#172033;background:#f4f7fb;color-scheme:light;--panel:#fff;--panel-2:#f7f9fc;--line:#dce3ed;--muted:#66758a;--blue:#1769e0;--danger:#c9363e;--shadow:0 10px 30px rgba(29,53,87,.09)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;background:#f4f7fb;color:#172033}button,input,select,textarea{font:inherit}[hidden]{display:none!important}.login{min-height:100dvh;display:grid;place-items:center;padding:1rem;background:linear-gradient(145deg,#edf4ff,#fff 55%,#edf8f3)}.card{width:min(100%,410px);padding:1.5rem;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.brand-mark{display:grid;place-items:center;width:48px;height:48px;margin-bottom:1rem;border-radius:15px;background:linear-gradient(135deg,#2b7de9,#1657bb);color:#fff;font-weight:900}.brand-mark.small{width:38px;height:38px;margin:0;border-radius:12px}.card h1{margin:.25rem 0;font-size:1.85rem}.card>p{color:var(--muted)}.card label{display:grid;gap:.45rem;margin:1rem 0;color:#344258;font-weight:650}.card input{width:100%;min-height:50px;padding:.8rem .9rem;border:1px solid #c9d3e1;border-radius:12px;outline:0;background:#fff;color:#172033}.card input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #1769e01c}.card button{width:100%;min-height:50px;border:0;border-radius:12px;background:var(--blue);color:#fff;font-weight:750}.card button:disabled{opacity:.65}#message{min-height:1.45rem;color:var(--danger)}.app-shell{display:grid;grid-template-columns:1fr;min-height:100dvh}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;display:flex;flex-direction:column;width:min(86vw,290px);height:100dvh;border-right:1px solid var(--line);background:#fff;box-shadow:20px 0 55px rgba(23,32,51,.18);transform:translateX(-105%);transition:transform .22s}.sidebar.open{transform:translateX(0)}.brand{display:flex;align-items:center;gap:.75rem;min-height:68px;padding:0 1.1rem;border-bottom:1px solid var(--line);font-weight:800}.main-menu{display:grid;gap:.3rem;padding:.85rem;overflow:auto}.main-menu button,.logout-button{display:flex;align-items:center;gap:.8rem;width:100%;min-height:48px;padding:.72rem .9rem;border:0;border-radius:12px;background:transparent;color:#46566c;text-align:left}.main-menu button:hover,.main-menu button.active{background:#eaf2ff;color:#125fc9}.main-menu button.active{font-weight:750}.menu-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#f0f4f9}.logout-button{margin:auto .85rem .85rem;width:calc(100% - 1.7rem);color:var(--danger)}.logout-button:hover{background:#fff0f1}.workspace{min-width:0}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:.75rem;min-height:66px;padding:.55rem 1rem;border-bottom:1px solid var(--line);background:#ffffffef;backdrop-filter:blur(14px)}.topbar>div:nth-child(2){display:grid;min-width:0}.topbar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-context,.user-box small{color:var(--muted);font-size:.76rem}.user-box{display:flex;align-items:center;gap:.65rem;margin-left:auto}.user-box>div{display:none}.avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eaf2ff;color:#145ec4;font-size:.8rem;font-weight:800}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#26354a;font-size:1.25rem}.content{max-width:1180px;margin:0 auto;padding:1.1rem 1rem 5rem;outline:none}.welcome,.module-header{display:grid;gap:.9rem}.welcome h1,.module-header h1{margin:.12rem 0;font-size:clamp(1.55rem,7vw,2.25rem)}.welcome p,.module-header p{margin:.25rem 0;color:var(--muted);line-height:1.5}.eyebrow{color:var(--blue)!important;font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.status-badge{width:max-content;padding:.45rem .7rem;border:1px solid #bfe6ce;border-radius:999px;background:#effaf3;color:#18864b;font-size:.78rem}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.3rem 0}.summary-card{display:grid;gap:.35rem;min-width:0;padding:1rem;border:1px solid var(--line);border-radius:16px;background:#fff}.summary-card small,.summary-card span{overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.summary-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-section h2{margin:1.8rem 0 .8rem;font-size:1.15rem}.quick-grid{display:grid;gap:.7rem}.quick-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:72px;padding:.85rem;border:1px solid var(--line);border-radius:16px;background:#fff;color:#172033;text-align:left}.quick-card:active{background:#eaf2ff}.quick-card>span{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#eaf2ff;color:var(--blue)}.quick-card div{display:grid;gap:.2rem;min-width:0}.quick-card small{display:-webkit-box;color:var(--muted);font-size:.75rem;-webkit-box-orient:vertical;-webkit-line-clamp:2}.quick-card b{color:var(--blue)}.empty-state{display:grid;place-items:center;margin:2rem auto;padding:2rem 1rem;border:1px dashed #cbd6e5;border-radius:18px;background:#fff;text-align:center}.empty-state p{max-width:520px;color:var(--muted)}.empty-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:17px;background:#eaf2ff;color:var(--blue)}@media(min-width:760px){.content{padding:2rem}.welcome,.module-header{display:flex;justify-content:space-between}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-box>div{display:grid}.card{padding:2rem}}@media(min-width:1050px){.app-shell{grid-template-columns:280px 1fr}.sidebar{position:sticky;width:280px;transform:none;box-shadow:none}.icon-button{display:none}.topbar{padding-inline:1.5rem}.content{padding:2.25rem}}


/* Exhibidores: experiencia móvil primero */
.exhibitor-client-toolbar{display:block;padding:0;background:transparent;border:0}
.client-filter-box{display:grid;gap:.65rem;width:100%}
.client-filter-box>label{font-weight:800;color:#25344a}
.mobile-search{position:relative}
.mobile-search input{width:100%;min-height:56px;padding:.85rem 3rem .85rem 1rem;border:1px solid #bdcbe0;border-radius:16px;background:#fff;color:#172033;font-size:1rem;outline:0}
.mobile-search input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #1769e01c}
.mobile-search span{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#5e718c;font-size:1.45rem;pointer-events:none}
.client-filter-box select{display:none}
.search-help{margin:0;color:var(--muted);font-size:.82rem}
.client-match-list{display:grid;gap:.55rem;max-height:min(52dvh,440px);overflow:auto;overscroll-behavior:contain}
.client-match{display:grid;gap:.28rem;width:100%;min-height:78px;padding:.82rem .9rem;border:1px solid #cad7e8;border-radius:15px;background:#fff;color:#172033;text-align:left;box-shadow:0 3px 12px rgba(29,53,87,.05)}
.client-match:active{border-color:var(--blue);background:#edf5ff}
.client-match strong,.client-match small{overflow-wrap:anywhere}
.client-match strong{font-size:.96rem;line-height:1.25}
.client-match strong span{display:inline-block;margin-right:.25rem;color:var(--blue)}
.client-match small{display:-webkit-box;color:#52647c;font-size:.8rem;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.client-match em{color:#6d7d91;font-size:.75rem;font-style:normal}
.selected-client{display:grid;gap:.2rem;padding:.85rem 1rem;border:1px solid #9dc2f4;border-radius:14px;background:#eaf3ff}
.selected-client small{color:#52647c}.selected-client strong{overflow-wrap:anywhere}
.exhibitor-record-grid{display:grid;gap:.75rem}
.exhibitor-record{display:grid;gap:.58rem;padding:1rem;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(29,53,87,.06)}
.exhibitor-record header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.exhibitor-record header div{display:grid}.exhibitor-record header small,.exhibitor-record dt{color:var(--muted);font-size:.7rem;text-transform:uppercase}
.exhibitor-record header strong{color:var(--blue);font-size:1.05rem}
.exhibitor-record header>span{padding:.32rem .5rem;border-radius:999px;background:#edf4ff;color:#135fc8;font-size:.72rem}
.exhibitor-record h3,.exhibitor-record p,.exhibitor-record dl{margin:0}
.exhibitor-record h3{font-size:1rem;overflow-wrap:anywhere}.exhibitor-record p{color:#52647c;font-size:.85rem}
.exhibitor-record dd{margin:.15rem 0 0;font-size:.82rem}
.exhibitor-record-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.25rem}
.exhibitor-record-actions button{min-height:48px}
.sku-field small{color:var(--muted);font-weight:500}
.sku-field select:disabled{display:none}
.locked-sku{display:block;padding:.9rem;border:1px solid #b8c7da;border-radius:12px;background:#eef2f7;color:#23334a;font-weight:800;overflow-wrap:anywhere}
.photo-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.8rem}
.photo-thumb{display:grid;grid-template-rows:145px auto auto;gap:.25rem;min-width:0;padding:0 0 .65rem;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;color:#172033;text-align:left}
.photo-thumb img{width:100%;height:145px;object-fit:cover;background:#edf1f6}
.photo-thumb span,.photo-thumb small{padding:0 .7rem}.photo-thumb span{font-weight:800}.photo-thumb small{color:var(--blue)}
.photo-viewer{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#07111f;color:#fff}
.photo-viewer::backdrop{background:#07111f}
.photo-viewer img{display:block;width:100%;height:calc(100dvh - 104px);object-fit:contain}
.photo-viewer p{position:absolute;right:1rem;bottom:.75rem;margin:0}
.photo-viewer-back{position:fixed;z-index:2;top:max(1rem,env(safe-area-inset-top));left:1rem;min-height:46px;padding:.65rem 1rem;border:0;border-radius:999px;background:#fff;color:#172033;font-weight:800;box-shadow:0 5px 20px #0006}
@media(max-width:520px){.content{padding-inline:.75rem}.form-panel,.table-panel{border-radius:16px}.photo-inputs{grid-template-columns:1fr}.photo-preview{grid-template-columns:1fr}.photo-thumb{grid-template-rows:190px auto auto}.photo-thumb img{height:190px}.exhibitor-actions{position:sticky;bottom:0;z-index:5;margin-inline:-1rem;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:#fffffff2;box-shadow:0 -8px 22px rgba(23,32,51,.1)}}
@media(min-width:760px){.exhibitor-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-preview{grid-template-columns:repeat(3,minmax(0,1fr))}}


/* Buscador de clientes: paleta clara y neutra */
#exhibitor-client-matches.client-match-list{gap:.65rem}
#exhibitor-client-matches .client-match{
  border:1px solid #d6dee9;
  background:#ffffff;
  color:#1f2937;
  box-shadow:0 4px 14px rgba(31,41,55,.06);
}
#exhibitor-client-matches .client-match:hover{
  border-color:#9baabd;
  background:#f8fafc;
}
#exhibitor-client-matches .client-match:active,
#exhibitor-client-matches .client-match.selected{
  border-color:#82b59a;
  background:#edf8f1;
  color:#183c28;
}
#exhibitor-client-matches .client-match strong span{color:#28724b}
#exhibitor-client-matches .client-match small{color:#5d6878}
#exhibitor-client-matches .client-match em{color:#728094}
#exhibitor-selected-client.selected-client{
  border-color:#a8cfb8;
  background:#f0f8f3;
  color:#183c28;
}
#exhibitor-client-filter{border-color:#cbd5e1;background:#fff}
#exhibitor-client-filter:focus{border-color:#5b8c70;box-shadow:0 0 0 4px rgba(91,140,112,.14)}


/* Bitácora independiente de exhibidores */
#exhibitor-history{margin-top:1rem}
.audit-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.audit-header h3{margin:.15rem 0;font-size:1.25rem}
@media(max-width:520px){
  .audit-header{align-items:stretch;flex-direction:column}
  .audit-header .row-action{width:100%;min-height:48px}
}

.view-hidden{display:none!important}


/* Pantallas exclusivas de exhibidores */
.exhibitor-list-toolbar,.detail-screen-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.exhibitor-list-toolbar p,.detail-screen-header p{margin:0 0 .2rem}
.detail-screen-header h2{margin:0;font-size:1.35rem}
.add-exhibitor-button{min-height:48px;padding:.72rem 1rem;border:0;border-radius:13px;background:#28724b;color:#fff;font-weight:800}
.add-exhibitor-button:hover{background:#205d3d}
@media(max-width:520px){
  .exhibitor-list-toolbar{align-items:stretch;flex-direction:column}
  .add-exhibitor-button{width:100%;min-height:52px}
}


/* Alineación del encabezado de exhibidores */
.exhibitor-list-toolbar{
  min-height:76px;
  margin:0;
  padding:.85rem 1.15rem;
  border-bottom:1px solid var(--line);
}
.exhibitor-list-toolbar>div{
  display:flex;
  align-items:center;
  gap:.75rem;
  min-width:0;
}
.exhibitor-list-toolbar .eyebrow{
  margin:0;
  line-height:1.2;
}
.exhibitor-list-toolbar>div>strong{
  padding:.3rem .55rem;
  border-radius:999px;
  background:#eef2f6;
  color:#4d5c70;
  font-size:.78rem;
  font-weight:700;
  white-space:nowrap;
}
.exhibitor-list-toolbar .add-exhibitor-button{
  flex:0 0 auto;
  min-width:205px;
  margin:0;
}
@media(max-width:520px){
  .exhibitor-list-toolbar{
    min-height:0;
    padding:1rem;
  }
  .exhibitor-list-toolbar>div{
    justify-content:space-between;
    width:100%;
  }
  .exhibitor-list-toolbar .add-exhibitor-button{
    min-width:0;
  }
}


/* Búsqueda dinámica y filas editables de clientes */
.client-live-search>div{display:grid;gap:.38rem}
.client-live-search small{padding-left:.15rem;color:var(--muted);font-size:.76rem}
.result-count span{color:#7a8798;font-size:.76rem}
.client-edit-row{cursor:pointer;transition:background-color .15s,box-shadow .15s}
.client-edit-row:hover{background:#f3f7fc}
.client-edit-row:focus{position:relative;outline:2px solid #8fb4e7;outline-offset:-2px;background:#f3f7fc}
@media(max-width:719px){
  .client-live-search{grid-template-columns:1fr}
  .client-live-search>button{width:100%}
  .result-count span{display:none}
}


/* Filtros itinerados y doble toque de clientes */
.client-filter-panel{margin:1.15rem 0}
.client-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:.75rem;margin-bottom:.75rem}
.client-filter-grid label{display:grid;gap:.35rem;color:#435269;font-size:.8rem;font-weight:750}
.client-filter-grid select{width:100%;min-height:48px;padding:.7rem .8rem;border:1px solid #c9d3e1;border-radius:12px;background:#fff;color:#172033;outline:0}
.client-filter-grid select:focus{border-color:#5b8c70;box-shadow:0 0 0 4px rgba(91,140,112,.14)}
.client-filter-panel .client-live-search{margin:.25rem 0 0}
.client-edit-row{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.client-edit-row.tap-pending{background:#eaf3ff;box-shadow:inset 4px 0 #4f86cf}
.client-edit-row.inactive{background:#fafbfc;color:#5f6c7d}
.client-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:.3rem .5rem;border-radius:999px;font-size:.7rem;font-weight:800}
.client-status-badge.active{background:#e8f7ee;color:#187342}
.client-status-badge.inactive{background:#fff0f1;color:#b62f3a}
@media(max-width:719px){
  .client-filter-grid{grid-template-columns:1fr 1fr;max-width:none}
  .client-filter-panel .client-live-search{max-width:none}
  .client-edit-row td{min-height:48px}
}
@media(max-width:390px){
  .client-filter-grid{grid-template-columns:1fr}
}


/* Actualización de clientes: resumen, estado e itinerario móvil */
.client-edit-heading{align-items:center}
.client-record-summary{display:grid;gap:.7rem;margin:-.25rem 0 1.15rem;padding:1rem;border:1px solid #cfe0d5;border-radius:16px;background:#f2f9f4}
.client-record-summary>div,.client-state-control{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-height:44px}
.client-record-summary small{display:block;color:#65748a;font-size:.72rem;text-transform:uppercase}
.client-record-summary strong{overflow-wrap:anywhere}
.client-state-control{cursor:pointer}
.client-state-control>span{display:grid}
.client-state-control>input{position:absolute;opacity:0;pointer-events:none}
.client-state-control>i{position:relative;display:block;width:54px;height:30px;border-radius:999px;background:#b7c1cf;transition:.2s}
.client-state-control>i::after{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0003;transition:.2s}
.client-state-control>input:checked+i{background:#258451}
.client-state-control>input:checked+i::after{transform:translateX(24px)}
.client-state-control>input:focus-visible+i{outline:3px solid #8db7ee;outline-offset:2px}
.visit-schedule>p{margin:.1rem 0 .8rem;color:var(--muted);font-size:.82rem;line-height:1.4}
.visit-order-list{display:grid;gap:.55rem}
.visit-order-row{display:grid;grid-template-columns:minmax(0,1fr) 115px;align-items:center;gap:.75rem;padding:.7rem;border:1px solid #d8e0ea;border-radius:13px;background:#f8fafc}
.visit-order-row.selected{border-color:#9fc9b0;background:#f0f8f3}
.visit-day-check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:.7rem!important;margin:0!important;font-weight:800!important}
.visit-day-check input{width:22px!important;height:22px!important;min-height:0!important;accent-color:#258451}
.visit-order-field{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;align-items:center;gap:.4rem!important;margin:0!important;color:#536176!important;font-size:.75rem}
.visit-order-field input{min-height:42px!important;padding:.55rem!important;text-align:center}
@media(min-width:720px){
  .client-record-summary{grid-template-columns:.65fr 1.45fr 1fr}
  .client-record-summary>div{display:grid;align-content:center}
  .visit-order-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .client-edit-heading{align-items:stretch}
  .client-edit-heading .row-action{width:100%;min-height:48px}
  .client-record-summary{padding:.85rem}
  .visit-order-row{grid-template-columns:minmax(0,1fr) 105px;padding:.65rem}
}


/* Recuperación de contraseña */
.auth-card section>h1{margin:.25rem 0;font-size:1.85rem}
.auth-card section>p{color:var(--muted);line-height:1.45}
.auth-card form>button:not(.auth-link){width:100%;min-height:50px;border:0;border-radius:12px;background:var(--blue);color:#fff;font-weight:750}
.auth-link{width:100%;min-height:44px;margin-top:.55rem;border:0!important;background:transparent!important;color:#1769e0!important;font-weight:750}
.auth-link:hover{text-decoration:underline}
.auth-message{min-height:1.45rem;margin:.8rem 0 0;line-height:1.4}
.auth-message.success{color:#187342}
.auth-message.error{color:var(--danger)}


/* Cliente nuevo: formulario heredado, optimizado para móvil */
.legacy-client-form{display:grid;gap:1rem}
.form-section{border:1px solid var(--border);border-radius:16px;background:#fff;overflow:hidden}
.form-section>summary{cursor:pointer;list-style:none;padding:1rem 1.1rem;font-weight:800;color:#17233b;background:#f7f9fc;display:flex;align-items:center;justify-content:space-between;min-height:52px}
.form-section>summary::-webkit-details-marker{display:none}
.form-section>summary::after{content:'+';font-size:1.35rem;color:#1769e0}
.form-section[open]>summary::after{content:'−'}
.form-section>.nested{padding:1rem}
.photo-field small{display:block;color:#60708a;margin-top:.35rem}
.client-photo-preview{display:block;width:min(100%,420px);max-height:320px;object-fit:contain;margin-top:.75rem;border:1px solid var(--border);border-radius:12px;background:#f4f7fb}
.visit-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.visit-day-row{border:1px solid var(--border);border-radius:12px;padding:.75rem;background:#f9fbfd}
.visit-day-row>label:first-child{display:flex;align-items:center;gap:.6rem;font-weight:800}
.visit-day-row input[type=checkbox]{width:22px;height:22px}
.visit-order{margin-top:.65rem}
@media(max-width:640px){
 .legacy-client-form.form-panel{padding:.75rem;background:transparent;border:0;box-shadow:none}
 .form-section>.nested{padding:.8rem}
 .visit-day-grid{grid-template-columns:1fr}
 .form-section>summary{position:sticky;top:0;z-index:1}
 .legacy-client-form .primary-action{position:sticky;bottom:.75rem;z-index:2;box-shadow:0 8px 24px rgba(18,54,96,.22)}
}

/* Reclamos de productos: flujo móvil heredado */
.claim-header{align-items:flex-end}
.claim-header-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}
.claim-filter-panel{display:grid;grid-template-columns:minmax(0,1fr) 210px auto;align-items:end;gap:.75rem;margin:1.2rem 0;padding:1rem;border:1px solid var(--line);border-radius:16px;background:#fff}
.claim-filter-panel label{display:grid;gap:.38rem;color:#405169;font-size:.78rem;font-weight:800}
.claim-filter-panel input,.claim-filter-panel select{width:100%;min-height:50px;padding:.75rem .85rem;border:1px solid #c8d3e2;border-radius:12px;background:#fff;color:#172033;outline:0}
.claim-filter-panel input:focus,.claim-filter-panel select:focus{border-color:#5b8c70;box-shadow:0 0 0 4px rgba(91,140,112,.14)}
.claim-filter-panel>button{min-height:50px;padding:.7rem 1rem;border:0;border-radius:12px;background:#315f4a;color:#fff;font-weight:800}
.claim-result-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem;color:#344258}
.claim-result-heading small{color:var(--muted)}
.claim-card-grid{display:grid;gap:.8rem}
.claim-card{display:grid;gap:.65rem;padding:1rem;border:1px solid #d7e0eb;border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(29,53,87,.06)}
.claim-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.claim-card>header>div{display:grid;gap:.15rem;min-width:0}.claim-card>header small,.claim-card dt{color:#6b788b;font-size:.69rem;text-transform:uppercase}
.claim-card>header strong{overflow-wrap:anywhere;color:#1f6b48;font-size:1rem}
.claim-card h2,.claim-card p,.claim-card dl{margin:0}.claim-card h2{font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.claim-client{color:#4e5e73;font-size:.85rem}
.claim-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding:.75rem;border-radius:13px;background:#f6f8fb}
.claim-card dl>div{display:grid;gap:.16rem}.claim-card dd{margin:0;font-size:.82rem;overflow-wrap:anywhere}
.claim-status{flex:0 0 auto;padding:.35rem .55rem;border-radius:999px;background:#eef2f6;color:#526177;font-size:.68rem;font-weight:850}
.claim-status-1{background:#e9f8ef;color:#187543}.claim-status-2{background:#fff0f1;color:#b62f3a}.claim-status-3{background:#fff5df;color:#93620e}.claim-status-4{background:#e9f2ff;color:#185fb9}
.claim-detail{border-top:1px solid var(--line);padding-top:.55rem}.claim-detail>summary{cursor:pointer;min-height:44px;padding:.65rem 0;color:#1769e0;font-weight:800;list-style:none}.claim-detail>summary::after{content:'+';float:right}.claim-detail[open]>summary::after{content:'−'}
.claim-detail>div>p{margin:.45rem 0;color:#425169;font-size:.84rem}
.claim-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:.75rem}
.claim-photo-grid button{display:grid;grid-template-rows:120px auto;gap:.35rem;padding:0 0 .55rem;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;color:#26364c;text-align:left}
.claim-photo-grid img{width:100%;height:120px;object-fit:cover;background:#edf1f6}.claim-photo-grid span{padding:0 .65rem;font-size:.76rem;font-weight:800}
.pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:1.1rem 0}.pagination button{min-height:44px;padding:.6rem .8rem;border:1px solid #c7d3e2;border-radius:11px;background:#fff;color:#1769e0;font-weight:750}.pagination button:disabled{opacity:.45}.pagination span{font-size:.8rem;color:var(--muted)}
.claim-create-header{align-items:center}.claim-create-form{display:grid;gap:1rem}.claim-selection{display:grid;gap:.6rem}.claim-selection>label{display:grid;gap:.4rem;color:#28384f;font-weight:800}.claim-selected{display:grid;gap:.2rem;padding:.85rem 1rem;border:1px solid #a8cfb8;border-radius:14px;background:#f0f8f3}.claim-selected small,.claim-selected span{color:#607087;font-size:.76rem}.claim-selected strong{overflow-wrap:anywhere}
.claim-family-filter select{width:100%;min-height:54px;padding:.8rem 2.7rem .8rem .9rem;border:1px solid #c8d3df;border-radius:14px;background:#fff;color:#233044;font:inherit;outline:0}
.claim-family-filter select:focus,.claim-create-form .mobile-search input:focus{border-color:#5b8c70;box-shadow:0 0 0 4px rgba(91,140,112,.14)}
#claim-client-results.client-match-list,#claim-product-results.client-match-list{gap:.65rem}
#claim-client-results .client-match,#claim-product-results .client-match{border-color:#d6dee9;background:#fff;color:#1f2937;box-shadow:0 4px 14px rgba(31,41,55,.06)}
#claim-client-results .client-match:hover,#claim-product-results .client-match:hover{border-color:#9baabd;background:#f8fafc}
#claim-client-results .client-match:active,#claim-product-results .client-match:active{border-color:#82b59a;background:#edf8f1;color:#183c28}
#claim-client-results .client-match strong span,#claim-product-results .client-match strong span{color:#28724b}
#claim-client-results .client-match small,#claim-product-results .client-match small{color:#5d6878}
#claim-client-results .client-match em{color:#728094}
#claim-product-help{padding:.1rem .15rem;color:#667386}
.claim-fields{display:grid;gap:1rem;padding-top:.25rem}.claim-flow-banner{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.85rem 1rem;border-radius:14px;background:#edf5f0;color:#204f38}.claim-flow-banner small{font-size:.68rem;font-weight:850;letter-spacing:.08em}.claim-flow-banner strong{text-align:right}
.claim-photo-help{margin:.15rem 0 .75rem;color:var(--muted);font-size:.78rem}.claim-photo-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.75rem}.claim-photo-preview article{display:grid;grid-template-rows:145px auto;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fff}.claim-photo-preview img{width:100%;height:145px;object-fit:cover}.claim-photo-preview span{padding:.55rem .7rem;font-size:.78rem;font-weight:800}
.claim-form-actions{display:grid;grid-template-columns:auto minmax(220px,1fr);gap:.65rem}.claim-form-actions button{min-height:52px}
.claim-success{display:grid;place-items:center;max-width:590px;margin:5dvh auto;padding:2rem;border:1px solid #cfe3d6;border-radius:22px;background:#fff;text-align:center;box-shadow:var(--shadow)}.claim-success>span{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#e9f8ef;color:#187543;font-size:2rem;font-weight:900}.claim-success h1{margin:.15rem 0;overflow-wrap:anywhere}.claim-success>p:not(.eyebrow){color:var(--muted)}.claim-success>strong{padding:.4rem .7rem;border-radius:999px;background:#e9f8ef;color:#187543}.claim-success>div{display:grid;gap:.65rem;width:100%;margin-top:1rem}.claim-success button{min-height:52px}
@media(min-width:760px){.claim-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.claim-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){
 .claim-header{align-items:stretch}.claim-header-actions{display:grid}.claim-header-actions button{width:100%;min-height:50px}
 .claim-filter-panel{grid-template-columns:1fr;margin:.9rem 0;padding:.8rem}.claim-filter-panel>button{width:100%}
 .claim-result-heading{align-items:flex-start;flex-direction:column;gap:.15rem}
 .claim-create-header{align-items:stretch}.claim-create-header>button{width:100%;min-height:48px}
 .claim-create-form.form-panel{padding:.75rem;background:transparent;border:0;box-shadow:none}
 .claim-selection,.claim-fields{padding:.8rem;border:1px solid var(--line);border-radius:16px;background:#fff}
 .claim-photo-grid{grid-template-columns:1fr 1fr}.claim-photo-grid button{grid-template-rows:105px auto}.claim-photo-grid img{height:105px}
 .claim-photo-preview{grid-template-columns:1fr}.claim-photo-preview article{grid-template-rows:190px auto}.claim-photo-preview img{height:190px}
 .claim-form-actions{position:sticky;z-index:5;bottom:0;grid-template-columns:1fr;margin:0 -.75rem -.75rem;padding:.75rem calc(.75rem + env(safe-area-inset-right)) calc(.75rem + env(safe-area-inset-bottom)) calc(.75rem + env(safe-area-inset-left));background:#fffffff2;box-shadow:0 -8px 22px rgba(23,32,51,.12)}
 .claim-form-actions .primary-action{grid-row:1}.claim-form-actions .row-action{grid-row:2}
}
