  /* ---------- BRAND PANEL ---------- */
  .brand-panel{
    margin:0 0 14px 0; background:var(--paper); border-radius:var(--radius-lg); padding:20px 22px;
    box-shadow:var(--shadow-md); display:flex; flex-direction:column; gap:14px;
  }
  .brand-panel-head h3{
    font-family:var(--font-mono); font-size:13px; letter-spacing:0.12em; margin:0;
    color:var(--paper-ink); text-transform:uppercase;
  }
  .brand-field{ display:flex; flex-direction:column; gap:6px; }
  .brand-field label{
    font-family:var(--font-mono); font-size:11px; letter-spacing:0.06em;
    color:var(--paper-fade); text-transform:uppercase;
  }
  .brand-field input[type=text]{
    padding:9px 10px; border:1px solid var(--paper-line); border-radius:var(--radius-sm);
    font-family:var(--font-ui); font-size:13px; background:var(--graphite-light); color:var(--paper-ink);
    outline:none;
  }
  .brand-field input[type=text]:focus{ border-color:var(--felt-light); box-shadow:var(--ring-focus); }
  .logo-row{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
  .logo-preview{
    width:48px; height:48px; object-fit:contain; border-radius:var(--radius-sm);
    border:1px solid var(--paper-line); background:var(--graphite-light);
  }
  .product-img-preview{
    width:40px; height:40px; object-fit:cover; border-radius:var(--radius-sm);
    border:1px solid var(--paper-line); background:var(--graphite-light);
  }
  .field input[type=file], .brand-field input[type=file]{ font-family:var(--font-ui); font-size:12px; color:#746762; }
  .chip-thumb{
    width:20px; height:20px; object-fit:cover; border-radius:var(--radius-sm);
    vertical-align:middle; margin-right:5px;
  }
  .brand-hint{ font-family:var(--font-mono); font-size:10.5px; color:var(--paper-fade); }
  .backup-row{ display:flex; gap:8px; flex-wrap:wrap; }
  .lock-overlay{
    position:fixed; inset:0; background:var(--graphite); z-index:200;
    display:flex; align-items:center; justify-content:center; padding:20px;
  }
  .lock-box{
    width:100%; max-width:300px; display:flex; flex-direction:column; align-items:center; gap:14px;
  }
  .lock-icon{ font-size:40px; }
  .lock-title{
    font-family:var(--font-mono); font-size:14px; letter-spacing:0.06em; color:var(--paper);
  }
  .lock-pin-input{
    width:160px; text-align:center; font-size:26px; letter-spacing:0.5em; padding:10px 0 10px 0.5em;
    border-radius:var(--radius-md); border:1px solid #3A403C; background:#2B2F2C; color:var(--paper);
    font-family:var(--font-mono);
  }
  .lock-pin-input:focus{ outline:none; border-color:var(--felt); box-shadow:var(--ring-focus); }
  .lock-error{ font-family:var(--font-mono); font-size:12px; color:#FF9B85; }
  .link-btn{
    background:none; border:none; color:#46A87C; font-family:var(--font-ui);
    font-size:12px; text-decoration:underline; cursor:pointer; padding:2px;
  }
  .lock-text-input{
    width:100%; padding:10px 12px; border-radius:var(--radius-md); border:1px solid #3A403C;
    background:#2B2F2C; color:var(--paper); font-family:var(--font-ui);
    font-size:13px; outline:none;
  }
  .lock-text-input:focus{ outline:none; border-color:var(--felt); box-shadow:var(--ring-focus); }
  .lock-text-input::placeholder{ color:#7A827C; }

  /* ---------- AUTH / INICIO DE SESIÓN (solo #authOverlay) ---------- */
  #authOverlay.lock-overlay{
    background:var(--graphite);
    align-items:center; justify-content:center; padding:24px;
  }
  #authOverlay .auth-shell{
    width:100%; max-width:960px; display:grid;
    grid-template-columns:1.15fr 1fr; gap:0;
    border:1px solid #463B36; border-radius:var(--radius-lg);
    overflow:hidden; box-shadow:var(--shadow-lg);
    background:var(--graphite);
  }
  /* panel de marca (izquierda) */
  #authOverlay .auth-brand{
    background:var(--graphite); color:var(--paper); padding:48px 44px 40px;
    display:flex; flex-direction:column; align-items:flex-start; gap:14px; justify-content:center;
  }
  #authOverlay .auth-brand-logo{
    width:54px; height:54px; border-radius:var(--radius-md);
    background:var(--felt); color:#fff; display:flex; align-items:center; justify-content:center;
    font-size:26px; box-shadow:var(--shadow-md); margin-bottom:6px;
  }
  #authOverlay .auth-brand-name{
    font-family:var(--font-mono); font-size:20px; letter-spacing:0.16em; font-weight:700; color:#fff;
  }
  #authOverlay .auth-brand-tag{
    font-family:var(--font-ui); font-size:15px; font-weight:600; color:#E8D8D1;
  }
  #authOverlay .auth-brand-sub{
    margin:4px 0 0; font-size:13.5px; line-height:1.55; color:#B7A8A0; max-width:340px;
  }
  #authOverlay .auth-sync{
    margin-top:18px; padding:16px 18px; border:1px solid #463B36; border-radius:var(--radius-md);
    background:rgba(255,255,255,0.03); max-width:360px;
  }
  #authOverlay .auth-sync-head{
    display:flex; align-items:center; gap:9px; font-family:var(--font-mono);
    font-size:12px; letter-spacing:0.07em; text-transform:uppercase; font-weight:700; color:#7ED8AC; margin-bottom:6px;
  }
  #authOverlay .auth-sync-head .icon{ font-size:16px; color:#4FB57F; }
  #authOverlay .auth-sync-sub{ font-size:12.5px; line-height:1.55; color:#A99A92; }
  /* card de login (derecha) */
  #authOverlay .auth-card{
    background:var(--paper); color:var(--paper-ink);
    padding:44px 42px; display:flex; flex-direction:column; justify-content:center;
  }
  #authOverlay .auth-card-title{
    font-family:var(--font-mono); font-size:16px; letter-spacing:0.06em; font-weight:700;
    color:var(--paper-ink); margin-bottom:22px; text-transform:uppercase;
  }
  #authOverlay .auth-field{ display:flex; flex-direction:column; gap:7px; margin-bottom:16px; }
  #authOverlay .auth-label{
    font-family:var(--font-mono); font-size:11px; letter-spacing:0.08em; color:var(--paper-fade);
    text-transform:uppercase; font-weight:700;
  }
  #authOverlay .auth-input{
    width:100%; min-height:48px; padding:0 14px; border-radius:var(--radius-md);
    border:1px solid var(--paper-line); background:var(--warm-card); color:var(--paper-ink);
    font-family:var(--font-ui); font-size:14px; outline:none;
    transition:border-color 0.12s ease, box-shadow 0.12s ease, background 0.12s ease;
  }
  #authOverlay .auth-input:focus{
    border-color:var(--felt); box-shadow:var(--ring-focus); background:#fff;
  }
  #authOverlay .auth-input::placeholder{ color:#A99A92; }
  #authOverlay .auth-error{
    font-size:12.5px; line-height:1.45; color:var(--maroon); margin:0 0 12px;
  }
  #authOverlay .auth-submit{
    width:100%; min-height:50px; margin:4px 0 6px;
  }
  #authOverlay .auth-link{
    background:none; border:none; cursor:pointer; font-family:var(--font-ui);
    font-size:13px; color:var(--felt); text-decoration:underline; padding:4px;
  }
  #authOverlay .auth-link:hover{ color:var(--felt-light); }
  #authOverlay .auth-link-strong{ font-weight:700; }
  #authOverlay .auth-divider{
    display:flex; align-items:center; gap:10px; margin:16px 0 10px;
    color:var(--paper-fade); font-size:12.5px;
  }
  #authOverlay .auth-divider::before, #authOverlay .auth-divider::after{
    content:""; flex:1; height:1px; background:var(--paper-line);
  }
  /* móvil: una sola columna */
  @media (max-width:760px){
    #authOverlay .auth-shell{ grid-template-columns:1fr; max-width:420px; }
    #authOverlay .auth-brand{ padding:28px 26px 8px; }
    #authOverlay .auth-brand-logo{ width:46px; height:46px; font-size:22px; }
    #authOverlay .auth-sync{ display:none; }
    #authOverlay .auth-card{ padding:28px 26px 34px; }
  }
  @media (max-width:380px){
    #authOverlay .auth-brand{ padding:22px 18px 6px; }
    #authOverlay .auth-card{ padding:24px 18px 28px; }
  }

  /* ---------- ESTADO DE SINCRONIZACIÓN EN PANEL ---------- */
  .cloud-status-row{
    display:flex; align-items:center; gap:8px; margin-top:6px;
  }
  .cloud-status-row .icon{
    font-size:16px; color:var(--felt); flex-shrink:0;
  }
  .cloud-status-dot{
    width:8px; height:8px; border-radius:var(--radius-pill); background:var(--felt); flex-shrink:0;
  }
  .cloud-status-row #cloudStatus{
    margin:0; font-family:var(--font-mono); font-size:11px; color:var(--paper-ink);
  }


