/* jjrblik Soporte — portal cliente · Sistema de diseño v2 (Minimal Japonés)
   Tokens: papel #f7f5f0 · papel-2 #efebe2 · tinta #0f2b30 · gris #6b675e · petroleo #1a5f6a · lima #c8e640
   hairline #dcd6c9 · éxito #3e6b4f · aviso #a8742c · error #a84832 · Tipografía: Shippori Mincho (títulos) + Inter (texto) */
.bs-portal{--bs-papel:#f7f5f0;--bs-papel2:#efebe2;--bs-oscuro:#071e22;--bs-tinta:#0f2b30;--bs-gris:#6b675e;--bs-gris4:#a8a296;--bs-gris2:#dcd6c9;--bs-petroleo:#1a5f6a;--bs-petroleo4:#3d8e9a;--bs-lima:#c8e640;--bs-hair:#dcd6c9;--bs-exito:#3e6b4f;--bs-aviso:#a8742c;--bs-error:#a84832;--bs-serif:"Shippori Mincho",Georgia,serif;--bs-sans:"Inter",system-ui,sans-serif;--bs-r:2px;
  font-family:var(--bs-sans);color:var(--bs-tinta);background:var(--bs-papel);font-size:14px;line-height:1.6;width:100%;max-width:1616px;margin:0 auto}
.bs-portal *{box-sizing:border-box}
.bs-portal a{color:var(--bs-petroleo);text-decoration:none}
.bs-portal p{margin:0 0 8px}
.bs-portal h2,.bs-portal h3,.bs-portal .bs-h2,.bs-portal .bs-h4,.entry-content .bs-portal h2,.entry-content .bs-portal h3,.elementor-widget-container .bs-portal h2,.elementor-widget-container .bs-portal h3{font-family:var(--bs-serif)!important;font-weight:500!important;color:var(--bs-tinta)!important;margin:0!important;line-height:1.45!important}
.bs-portal .bs-h2{font-size:24px!important}
.bs-portal .bs-h4{font-size:20px!important;margin-bottom:12px!important}
.bs-muted{color:var(--bs-gris);margin:0}
.bs-caption{font-size:13px;line-height:1.6;color:var(--bs-gris);margin:0}
.bs-overline{display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bs-gris);margin-bottom:6px}
.bs-overline--brand{color:var(--bs-petroleo)}.bs-overline--lime{color:var(--bs-lima)}.bs-overline--error{color:var(--bs-error)}
.bs-overline small{font-weight:400;letter-spacing:0;text-transform:none;color:var(--bs-gris4)}
.bs-ico{vertical-align:middle;flex:none}
.bs-hr{border:0;border-top:1px solid var(--bs-hair);margin:16px 0}
.bs-break{word-break:break-all}

/* Botones */
.bs-portal .bs-btn,.bs-portal a.bs-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--bs-r);border:1px solid var(--bs-hair);background:var(--bs-papel);color:var(--bs-tinta);font:500 14px/1 var(--bs-sans);cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,color .15s}
.bs-portal .bs-btn:hover,.bs-portal a.bs-btn:hover{background:var(--bs-papel2);color:var(--bs-tinta);border-color:var(--bs-gris4);text-decoration:none}
.bs-portal .bs-btn--primary,.bs-portal a.bs-btn--primary{background:var(--bs-tinta);color:var(--bs-papel);border-color:var(--bs-tinta)}
.bs-portal .bs-btn--primary:hover,.bs-portal a.bs-btn--primary:hover{background:var(--bs-petroleo);border-color:var(--bs-petroleo);color:var(--bs-papel)}
.bs-portal .bs-btn--link,.bs-portal a.bs-btn--link{border:0;background:none;padding:12px 4px;color:var(--bs-petroleo);box-shadow:inset 0 -2px 0 var(--bs-lima)}
.bs-portal .bs-btn--link:hover{background:none;color:var(--bs-tinta)}
.bs-btn--block{width:100%}

/* Badges */
.bs-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--bs-r);font-size:12px;font-weight:600;letter-spacing:.01em;white-space:nowrap;line-height:1.4;--c:var(--bs-gris);color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 35%,transparent)}
.bs-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c)}
.bs-badge--nuevo,.bs-badge--normal{--c:var(--bs-petroleo)}
.bs-badge--en-curso,.bs-badge--alta{--c:var(--bs-aviso)}
.bs-badge--esperando-cliente{--c:var(--bs-petroleo4)}
.bs-badge--resuelto{--c:var(--bs-exito)}
.bs-badge--cerrado,.bs-badge--baja{--c:var(--bs-gris)}
.bs-badge--critica{--c:var(--bs-error)}
@supports not (color:color-mix(in srgb,red 10%,transparent)){.bs-badge{background:var(--bs-papel2);border-color:var(--bs-hair)}}

/* Shell */
.bs-shell{display:flex;min-height:640px;background:var(--bs-papel)}
.bs-side{width:260px;flex:none;border-right:1px solid var(--bs-hair);padding:24px 20px;display:flex;flex-direction:column;gap:12px}
.bs-side__user{display:flex;align-items:center;gap:10px;padding-bottom:8px}
.bs-side__user-text{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.3}
.bs-side__user-text strong{font-size:12px;font-weight:600;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bs-side__user-text small{font-size:12px;color:var(--bs-gris)}
.bs-side__logout{color:var(--bs-gris);display:inline-flex}.bs-side__logout:hover{color:var(--bs-tinta)}
.bs-avatar{width:32px;height:32px;border-radius:50%;background:var(--bs-lima);color:var(--bs-tinta);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;flex:none}
.bs-avatar--sm{width:24px;height:24px}.bs-avatar--agent{background:var(--bs-petroleo)}
.bs-side__companies{display:flex;flex-direction:column;gap:2px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);overflow:hidden;margin-bottom:4px}
.bs-portal a.bs-side__company{padding:8px 12px;font-size:13px;color:var(--bs-gris)}
.bs-portal a.bs-side__company:hover{background:var(--bs-papel2);color:var(--bs-tinta)}
.bs-portal a.bs-side__company.is-active{background:var(--bs-papel2);color:var(--bs-petroleo);font-weight:600}
.bs-nav{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.bs-portal a.bs-nav__item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--bs-r);color:var(--bs-tinta);font-size:14px}
.bs-portal a.bs-nav__item:hover{background:var(--bs-papel2)}
.bs-portal a.bs-nav__item.is-active{background:var(--bs-papel2);color:var(--bs-petroleo);font-weight:600;font-size:12px;letter-spacing:.02em}
.bs-side__foot{margin-top:auto;display:flex;flex-direction:column;font-size:14px;line-height:1.5}
.bs-side__foot small{font-size:12px;color:var(--bs-gris)}
.bs-main{flex:1;min-width:0;padding:32px 40px 40px;display:flex;flex-direction:column;gap:24px}

/* Cabecera de página */
.bs-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.bs-page-head--ticket{align-items:flex-start}
.bs-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.bs-crumbs{display:flex;gap:8px;align-items:center;font-size:14px;margin:0}
.bs-crumbs a{display:inline-flex;align-items:center;gap:4px}.bs-crumbs span{color:var(--bs-gris)}.bs-crumbs span:nth-child(2){color:var(--bs-hair)}
.bs-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bs-search{display:flex;align-items:center;gap:8px;padding:0 12px;height:36px;width:220px;background:var(--bs-papel2);border:1px solid var(--bs-hair);border-radius:var(--bs-r);color:var(--bs-gris)}
.bs-portal .bs-search input[type=search]{border:0!important;background:transparent!important;font:inherit!important;color:var(--bs-tinta)!important;width:100%;height:34px;outline:0!important;padding:0!important;margin:0!important;box-shadow:none!important;border-radius:0!important;line-height:34px}
.bs-portal .bs-search input[type=search]::-webkit-search-decoration{display:none}
.bs-select{position:relative;display:inline-flex;align-items:center;height:36px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);background:var(--bs-papel);color:var(--bs-gris)}
.bs-select select{appearance:none;-webkit-appearance:none;border:0;background:none;font:inherit;color:var(--bs-tinta);padding:0 30px 0 12px;height:100%;outline:0;cursor:pointer;width:100%}
.bs-select .bs-ico{position:absolute;right:10px;pointer-events:none}
.bs-select--block{display:flex;height:44px;background:var(--bs-papel2)}
.bs-toggle{display:inline-flex;border:1px solid var(--bs-hair);border-radius:var(--bs-r);overflow:hidden;background:var(--bs-papel)}
.bs-portal a.bs-toggle__btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--bs-gris)}
.bs-portal a.bs-toggle__btn+a.bs-toggle__btn{border-left:1px solid var(--bs-hair)}
.bs-portal a.bs-toggle__btn:hover{background:var(--bs-papel2);color:var(--bs-tinta)}
.bs-portal a.bs-toggle__btn.is-active{background:var(--bs-petroleo);color:var(--bs-papel)}

/* Tarjetas, paneles, avisos */
.bs-card{background:var(--bs-papel2);border:1px solid var(--bs-hair);border-radius:var(--bs-r);padding:24px}
.bs-card--soft{display:flex;flex-direction:column;gap:6px;padding:18px 20px}
.bs-card--soft strong{font-size:12px;font-weight:600;letter-spacing:.02em}
.bs-panel{background:var(--bs-papel2);border:1px solid var(--bs-hair);border-radius:var(--bs-r);padding:20px;align-self:start}
.bs-kv{display:grid;gap:12px;margin:0 0 16px}
.bs-kv dt{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bs-gris)}
.bs-kv dd{margin:0}
.bs-files{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}
.bs-files a{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);font-size:13px;color:var(--bs-tinta);background:var(--bs-papel)}
.bs-notice{padding:12px 14px;border-radius:var(--bs-r);border:1px solid;font-size:14px}
.bs-notice--ok{background:#eef3ec;border-color:#c9d9cf;color:var(--bs-exito)}
.bs-notice--warn{background:#f7efe2;border-color:#e6d3b3;color:var(--bs-aviso)}
.bs-notice--error{background:#f6e9e5;border-color:#e6c4bb;color:var(--bs-error)}
.bs-note{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--bs-gris);margin:0}
.bs-banner{background:var(--bs-petroleo);color:var(--bs-papel);padding:12px 16px;border-radius:var(--bs-r);display:flex;align-items:center;gap:10px;margin:0}
.bs-banner--soft{background:var(--bs-papel2);color:var(--bs-tinta);border:1px solid var(--bs-hair)}

/* Vacío */
.bs-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:72px 24px;border:1px dashed var(--bs-hair);border-radius:var(--bs-r)}
.bs-empty .bs-muted{max-width:480px}
.bs-empty__ring{width:56px;height:56px;border-radius:50%;border:2px solid var(--bs-lima)}
.bs-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.bs-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* Tablero del cliente */
.bs-cboard{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:start;flex:1}
.bs-ccol{background:color-mix(in srgb,var(--bs-papel2) 60%,transparent);border:1px solid var(--bs-hair);border-radius:var(--bs-r);padding:10px;min-height:320px}
.bs-ccol__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.bs-ccol__count{font-size:13px;color:var(--bs-gris)}
.bs-ccol__cards{display:flex;flex-direction:column;gap:10px}
.bs-portal a.bs-card-t{display:flex;flex-direction:column;gap:8px;background:var(--bs-papel2);border:1px solid var(--bs-hair);border-radius:var(--bs-r);padding:12px 14px;color:var(--bs-tinta);transition:border-color .15s,box-shadow .15s}
.bs-portal a.bs-card-t:hover{border-color:var(--bs-gris4);box-shadow:0 2px 6px rgba(15,43,48,.06)}
.bs-card-t--tarea{border-left:3px solid var(--bs-petroleo)!important}
.bs-card-t__top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.bs-card-t__ref{font-size:13px;color:var(--bs-gris)}
.bs-card-t__title{font-weight:500;line-height:1.35}
.bs-card-t__meta{font-size:13px;color:var(--bs-gris)}
.bs-card-t__wait{display:inline-flex;align-items:center;gap:6px;margin:2px -14px -12px;padding:8px 14px;background:var(--bs-petroleo);color:var(--bs-papel);font-size:12px;font-weight:600}

/* Lista */
.bs-group{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}
.bs-list{display:flex;flex-direction:column;gap:8px}
.bs-portal a.bs-row,.bs-row--head{display:grid;grid-template-columns:64px 1fr 120px 170px 100px;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);background:var(--bs-papel2);color:var(--bs-tinta)}
.bs-row--head{background:none;border:0;padding:0 16px;font-size:12px;color:var(--bs-gris4)}
.bs-portal a.bs-row:hover{border-color:var(--bs-gris4)}
.bs-row .bs-badge{justify-self:start;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.bs-card-t .bs-badge{flex:none}
.bs-row--tarea{border-left:3px solid var(--bs-petroleo)!important}
.bs-row__ref{font-size:13px;color:var(--bs-gris)}
.bs-row__title{font-weight:500;display:flex;flex-direction:column;line-height:1.35}
.bs-row__title small{font-weight:400;font-size:13px;color:var(--bs-gris)}
.bs-row__date{font-size:13px;color:var(--bs-gris);text-align:right}

/* Detalle */
.bs-two{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start}
.bs-thread{display:flex;flex-direction:column;gap:12px}
.bs-msg{border:1px solid var(--bs-hair);border-radius:var(--bs-r);padding:14px 18px;background:var(--bs-papel2)}
.bs-msg--agent{background:var(--bs-papel);border-left:3px solid var(--bs-petroleo)}
.bs-msg--internal{background:#f7efe2;border-color:#e6d3b3}
.bs-msg__meta{display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:8px;color:var(--bs-gris)}
.bs-msg__meta strong{color:var(--bs-tinta);letter-spacing:.02em}
.bs-msg__meta em{margin-left:auto}
.bs-msg__body p:last-child{margin-bottom:0}
.bs-attachments{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.bs-attachments li a{display:inline-block;padding:4px 10px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);font-size:13px;background:var(--bs-papel)}
.bs-reply{display:flex;flex-direction:column;gap:12px;background:var(--bs-papel2);border:1px solid var(--bs-hair);border-radius:var(--bs-r);padding:16px 18px}
.bs-reply__actions{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.bs-attach{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--bs-gris);cursor:pointer}
.bs-attach__input,.bs-drop__input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.bs-attach:hover{color:var(--bs-tinta)}

/* Formularios */
.bs-form{display:flex;flex-direction:column;gap:22px;min-width:0}
.bs-field{display:flex;flex-direction:column;gap:8px;border:0;padding:0;margin:0;min-width:0}
.bs-field legend{padding:0}
.bs-portal input[type=text],.bs-portal input[type=url],.bs-portal input[type=search],.bs-portal input[type=password],.bs-portal input[type=email],.bs-portal textarea{width:100%;padding:12px 14px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);background:var(--bs-papel2);font:inherit;color:var(--bs-tinta);outline:0;transition:border-color .15s}
.bs-portal textarea{resize:vertical;min-height:110px;background:var(--bs-papel)}
.bs-reply textarea{background:var(--bs-papel)}
.bs-form textarea{background:var(--bs-papel2)}
.bs-portal input:focus,.bs-portal textarea:focus{border-color:var(--bs-petroleo);box-shadow:none}
.bs-portal .bs-select select{box-shadow:none!important;margin:0!important;line-height:1.4}
.bs-portal ::placeholder{color:var(--bs-gris4)}
.bs-chips{display:flex;flex-wrap:wrap;gap:8px}
.bs-chip input{position:absolute;opacity:0;width:1px;height:1px}
.bs-chip span{display:inline-block;padding:8px 14px;border:1px solid var(--bs-hair);border-radius:var(--bs-r);background:var(--bs-papel2);cursor:pointer;font-size:14px;transition:background .15s,color .15s,border-color .15s}
.bs-chip:hover span{border-color:var(--bs-gris4)}
.bs-chip input:checked+span{background:var(--bs-petroleo);border-color:var(--bs-petroleo);color:var(--bs-papel)}
.bs-chip input:focus-visible+span{outline:2px solid var(--bs-lima);outline-offset:2px}
.bs-drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px;border:1px dashed var(--bs-hair);border-radius:var(--bs-r);text-align:center;cursor:pointer;color:var(--bs-petroleo);position:relative}
.bs-drop strong{color:var(--bs-tinta);font-weight:500}.bs-drop small{color:var(--bs-gris);font-size:13px}
.bs-drop:hover,.bs-drop.is-over{background:var(--bs-papel2)}
.bs-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px}
.bs-steps{margin:0;padding-left:0;list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:12px}
.bs-steps li{counter-increment:s;display:flex;gap:12px;font-size:14px;line-height:1.5}
.bs-steps li::before{content:counter(s);flex:none;background:var(--bs-lima);color:var(--bs-tinta);font-size:12px;font-weight:600;padding:2px 8px;border-radius:var(--bs-r);height:fit-content}
.bs-sla{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}
.bs-sla li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--bs-hair);padding-bottom:8px;font-size:14px}
.bs-sla li span{color:var(--bs-gris)}
.bs-tips{margin:0 0 12px;padding-left:18px;display:flex;flex-direction:column;gap:8px;font-size:14px}

/* Login */
.bs-login{display:grid;grid-template-columns:minmax(320px,42%) 1fr;min-height:720px}
.bs-login__brand{background:var(--bs-oscuro);color:var(--bs-papel);padding:64px 72px;display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.bs-mark{display:block;width:24px;height:2px;background:var(--bs-lima);margin-bottom:12px}
.bs-portal .bs-login__brand h2.bs-login__title,.entry-content .bs-portal .bs-login__brand h2.bs-login__title{font-family:var(--bs-serif)!important;font-weight:500!important;font-size:36px!important;line-height:1.4!important;color:var(--bs-papel)!important;margin:0 0 16px!important;max-width:460px}
.bs-login__brand p{color:var(--bs-gris2);font-size:16px;line-height:1.7;max-width:460px}
.bs-login__sla{display:flex;flex-direction:column;gap:6px;color:var(--bs-gris2);font-size:14px}
.bs-login__sla .bs-overline{color:var(--bs-gris4)}
.bs-login__form{display:flex;align-items:center;justify-content:center;padding:48px 24px}
.bs-login__box{width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px}
.bs-portal .login-username,.bs-portal .login-password{display:flex;flex-direction:column;gap:6px;margin:0}
.bs-portal .login-username label,.bs-portal .login-password label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bs-gris)}
.bs-portal .login-remember{display:flex;align-items:center;font-size:14px;color:var(--bs-gris);margin:0}
.bs-portal .login-remember label{display:inline-flex;align-items:center;gap:8px;margin:0;cursor:pointer}
.bs-portal .login-remember input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--bs-petroleo)}
.bs-portal .login-submit{margin:0}
.bs-portal .login-submit input{width:100%;padding:13px 24px;border-radius:var(--bs-r);border:1px solid var(--bs-tinta);background:var(--bs-tinta);color:var(--bs-papel);font:500 14px/1 var(--bs-sans);cursor:pointer}
.bs-portal .login-submit input:hover{background:var(--bs-petroleo);border-color:var(--bs-petroleo)}
.bs-login__links{margin:0;font-size:14px}

/* Responsive */
@media (max-width:1100px){.bs-cboard{grid-template-columns:repeat(3,minmax(0,1fr))}.bs-two{grid-template-columns:1fr}.bs-grid-3{grid-template-columns:1fr}}
@media (max-width:820px){.bs-shell{flex-direction:column}.bs-side{width:100%;border-right:0;border-bottom:1px solid var(--bs-hair);padding:16px 20px}.bs-nav{flex-direction:row;overflow-x:auto;margin:0}.bs-side__foot{display:none}.bs-main{padding:20px 16px 32px}.bs-cboard{grid-template-columns:1fr}.bs-ccol--empty{display:none}.bs-ccol{min-height:0}.bs-portal a.bs-row{grid-template-columns:1fr auto;grid-template-areas:"title status" "ref prio" "date date"}.bs-row--head{display:none}.bs-row__ref{grid-area:ref}.bs-row__title{grid-area:title}.bs-row__date{grid-area:date;text-align:left}.bs-grid-2{grid-template-columns:1fr}.bs-login{grid-template-columns:1fr}.bs-login__brand{padding:40px 24px}.bs-search{width:100%}.bs-tools{width:100%}}
