:root{--rojo: #9c2718;--rojo-hover: #851f12;--ambar: #c9912f;--crema: #f7ecd8;--crema-card: #fffaf1;--tinta: #241a12;--tinta-soft: #6a5b49;--linea: #e6d6ba;--ok: #3f7d3a;--ko: #9c2718;--sans: "Spline Sans", system-ui, sans-serif;--serif: "Fraunces", Georgia, serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--sans);color:var(--tinta);background:var(--crema);-webkit-font-smoothing:antialiased}.app-shell{display:flex;min-height:100%}.sidebar{width:240px;flex:none;height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:1.6rem 1.1rem;background:var(--crema-card);border-right:1px solid var(--linea)}.sidebar-brand{margin-bottom:2rem}.sidebar-app{font-family:var(--serif);font-weight:600;font-size:1.5rem;line-height:1;margin:0}.sidebar-nav{display:flex;flex-direction:column;gap:.25rem;flex:1}.sidebar-link{display:block;padding:.6rem .8rem;border-radius:10px;color:var(--tinta);text-decoration:none;font-weight:600;font-size:.95rem;transition:background .15s ease,color .15s ease}.sidebar-link:hover{background:var(--crema)}.sidebar-link.is-active{background:var(--rojo);color:var(--crema)}.sidebar-footer{display:flex;flex-direction:column;gap:.6rem;border-top:1px solid var(--linea);padding-top:1rem}.sidebar-user{font-size:.85rem;color:var(--tinta-soft)}.app-main{flex:1;min-width:0;height:100vh;overflow-y:auto}.topbar,.drawer-overlay,.sidebar-close{display:none}@media (max-width: 768px){.app-shell{display:block}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;background:var(--crema-card);border-bottom:1px solid var(--linea);position:sticky;top:0;z-index:20}.topbar-brand{font-family:var(--serif);font-weight:600;font-size:1.25rem}.hamburger{border:1px solid var(--linea);background:#fff;color:var(--tinta);font-size:1.2rem;line-height:1;padding:.4rem .7rem;border-radius:10px;cursor:pointer}.sidebar{position:fixed;top:0;left:0;bottom:0;height:100vh;width:260px;max-width:80%;transform:translate(-100%);transition:transform .2s ease;z-index:40;box-shadow:0 0 40px -8px #241a128c}.sidebar.is-open{transform:translate(0)}.sidebar-close{display:block;align-self:flex-end;border:none;background:transparent;color:var(--tinta-soft);font-size:1.6rem;line-height:1;padding:0;margin-bottom:.5rem;cursor:pointer}.drawer-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#241a1273;z-index:30}.app-main{height:auto;overflow:visible}}.brand-eyebrow{font-family:var(--sans);font-weight:600;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ambar);margin:0 0 .4rem}.muted{color:var(--tinta-soft)}.center{text-align:center}.btn{font-family:var(--sans);font-weight:600;font-size:.95rem;border-radius:10px;padding:.7rem 1.2rem;border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--rojo);color:var(--crema);width:100%}.btn-primary:hover:not(:disabled){background:var(--rojo-hover)}.btn-ghost{background:transparent;color:var(--rojo);border-color:var(--linea)}.btn-ghost:hover{background:#fff;border-color:var(--ambar)}.auth-shell{min-height:100%;display:grid;place-items:center;padding:2rem 1.25rem;background:radial-gradient(120% 80% at 50% -10%,#fbf3e3 0%,var(--crema) 60%)}.auth-card{width:100%;max-width:400px;background:var(--crema-card);border:1px solid var(--linea);border-radius:18px;padding:2.5rem 2.2rem;box-shadow:0 18px 50px -28px #241a1280}.auth-title{font-family:var(--serif);font-weight:600;font-size:2.1rem;line-height:1.05;margin:0 0 .35rem}.auth-sub{margin:0 0 1.8rem;color:var(--tinta-soft);font-size:.95rem}.auth-form{display:flex;flex-direction:column;gap:1.1rem}.auth-alt{margin:1.3rem 0 0;text-align:center;font-size:.9rem;color:var(--tinta-soft)}.auth-alt a{color:var(--rojo);font-weight:600;text-decoration:none}.auth-alt a:hover{text-decoration:underline}.field{display:flex;flex-direction:column;gap:.35rem}.field span{font-size:.8rem;font-weight:600;letter-spacing:.02em;color:var(--tinta-soft)}.field input{font-family:var(--sans);font-size:1rem;padding:.7rem .85rem;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta);transition:border-color .15s ease,box-shadow .15s ease}.field input:focus{outline:none;border-color:var(--ambar);box-shadow:0 0 0 3px #c9912f2e}.form-error{margin:0;color:var(--rojo);font-size:.9rem;font-weight:500}.panel-shell{max-width:980px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.panel-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;border-bottom:1px solid var(--linea);padding-bottom:1.4rem;margin-bottom:2rem}.panel-title{font-family:var(--serif);font-weight:600;font-size:2rem;margin:0;line-height:1.05}.panel-header-right{display:flex;align-items:center;gap:1rem}.who{font-size:.9rem;color:var(--tinta-soft)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.1rem;margin-bottom:1.1rem}.card{background:var(--crema-card);border:1px solid var(--linea);border-radius:14px;padding:1.4rem 1.5rem}.card-accent{border-color:var(--ambar);box-shadow:inset 0 0 0 1px #c9912f40}.card-value{font-family:var(--serif);font-weight:600;font-size:2.4rem;line-height:1;margin:0 0 .5rem;color:var(--rojo)}.card-label{margin:0;font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tinta-soft)}.card-status-top{display:flex;align-items:center;gap:.55rem;margin-bottom:.6rem}.card-status-text{font-family:var(--serif);font-size:1.25rem;font-weight:600}.dot{width:11px;height:11px;border-radius:50%;flex:none}.dot-ok{background:var(--ok);box-shadow:0 0 0 3px #3f7d3a2e}.dot-ko{background:var(--ko);box-shadow:0 0 0 3px #9c27182e}.timestamp{margin-top:1.6rem;font-size:.85rem;color:var(--tinta-soft)}.settings-list{display:flex;flex-direction:column;gap:1.2rem;max-width:680px}.setting-card{background:var(--crema-card);border:1px solid var(--linea);border-radius:14px;padding:1.5rem 1.6rem}.setting-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.setting-label{font-family:var(--serif);font-weight:600;font-size:1.2rem;margin:0 0 .25rem}.setting-desc{margin:0;font-size:.9rem;color:var(--tinta-soft)}.setting-meta{margin:.9rem 0 0;font-size:.85rem;color:var(--tinta-soft)}.badge{flex:none;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.3rem .65rem;border-radius:999px;white-space:nowrap}.badge-ok{background:#3f7d3a1f;color:var(--ok)}.badge-ko{background:#9c27181a;color:var(--rojo)}.setting-form{display:flex;gap:.6rem;margin-top:1.1rem;flex-wrap:wrap}.setting-form input{flex:1 1 240px;font-family:var(--sans);font-size:1rem;padding:.65rem .8rem;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta)}.setting-form input:focus{outline:none;border-color:var(--ambar);box-shadow:0 0 0 3px #c9912f2e}.btn-inline{width:auto}.setting-msg{margin:.8rem 0 0;font-size:.88rem;color:var(--ok)}.setting-msg.is-error{color:var(--rojo)}.estrellas{display:flex;gap:.3rem;margin:.2rem 0 1rem}.estrella{background:none;border:none;padding:0;cursor:pointer;font-size:2rem;line-height:1;color:var(--tinta-soft);transition:color .12s ease,transform .08s ease}.estrella.is-on{color:var(--ambar)}.estrella:not(:disabled):hover{color:var(--ambar);transform:scale(1.1)}.estrella:disabled{cursor:default}.dist-barras{display:flex;flex-direction:column;gap:.5rem;margin-top:.4rem}.dist-fila{display:flex;align-items:center;gap:.7rem}.dist-nota{width:2.8rem;flex-shrink:0;color:var(--tinta-soft);font-size:.9rem;white-space:nowrap}.dist-barra-track{flex:1;height:14px;background:var(--crema);border-radius:7px;overflow:hidden}.dist-barra-fill{display:block;height:100%;background:var(--ambar);border-radius:7px;min-width:2px}.dist-n{width:2.2rem;flex-shrink:0;text-align:right;color:var(--tinta-soft);font-size:.9rem}.dist-grupos{display:flex;flex-direction:column;gap:1.2rem}.dist-titulo{margin:0 0 .4rem;font-size:.95rem;color:var(--tinta)}.val-dims{display:flex;flex-direction:column;gap:.6rem;margin:.2rem 0 .9rem}.val-dim{display:flex;align-items:center;gap:.8rem}.val-dim-label{width:6.5rem;flex-shrink:0;color:var(--tinta-soft);font-size:.95rem}.comentarios-lista{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.8rem}.comentario-item{border:1px solid var(--linea);border-radius:10px;padding:.7rem .9rem;background:#fff}.comentario-cab{display:flex;justify-content:space-between;gap:.8rem;margin-bottom:.3rem}.comentario-notas{color:var(--ambar);font-size:.85rem;font-weight:600}.comentario-fecha{color:var(--tinta-soft);font-size:.85rem;white-space:nowrap}.comentario-texto{margin:0;color:var(--tinta)}.copia-fila{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-top:.4rem}.copia-dato{flex:1;min-width:0;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem;color:var(--tinta);background:var(--crema);border:1px solid var(--linea);border-radius:8px;padding:.55rem .7rem}.mensaje-box{margin:.4rem 0 0;white-space:pre-wrap;line-height:1.6;color:var(--tinta);background:var(--crema-card);border:1px solid var(--linea);border-radius:10px;padding:.8rem 1rem}.afinar-card{border:2px solid var(--ambar);box-shadow:0 2px 14px #c9912f2e}.afinar-toggle{display:flex;align-items:center;justify-content:space-between;gap:.8rem;width:100%;background:none;border:none;padding:.3rem .4rem;margin:-.3rem -.4rem;border-radius:10px;cursor:pointer;text-align:left;font-family:var(--sans);transition:background .12s ease}.afinar-toggle:hover{background:#c9912f1a}.afinar-toggle-main{display:flex;flex-direction:column;gap:.15rem}.afinar-toggle-texto{font-size:1.05rem;font-weight:600;color:var(--rojo);line-height:1.3}.afinar-toggle-sub{font-size:.82rem;font-weight:500;color:var(--ambar)}.afinar-toggle-chevron{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--ambar);color:#fff;font-size:.75rem}.afinar-cuerpo{margin-top:1rem}.aviso-privacidad{margin:0 0 1rem;padding:.75rem 1rem;background:var(--crema-card);border-left:4px solid var(--rojo);border-radius:8px;color:var(--rojo);font-size:.92rem;line-height:1.5}.gate-card{max-width:460px;margin:12vh auto 0;text-align:center;background:var(--crema-card);border:1px solid var(--linea);border-radius:18px;padding:2.5rem 2.2rem}.gate-title{font-family:var(--serif);font-weight:600;font-size:1.7rem;margin:0 0 .6rem}.gate-card .btn{margin-top:1.4rem}.consulta-textarea{width:100%;min-height:150px;resize:vertical;font-family:var(--sans);font-size:1rem;line-height:1.5;padding:.9rem 1rem;border:1px solid var(--linea);border-radius:12px;background:#fff;color:var(--tinta);margin-bottom:1rem}.consulta-textarea:focus{outline:none;border-color:var(--ambar);box-shadow:0 0 0 3px #c9912f2e}.consulta-resultado{display:flex;flex-direction:column;gap:1.3rem}.consulta-texto{margin:0;white-space:pre-wrap;color:var(--tinta-soft)}.consulta-texto.is-clamped{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.ver-mas{margin-top:.5rem;background:none;border:none;padding:0;cursor:pointer;font-family:var(--sans);font-size:.88rem;font-weight:600;color:var(--rojo)}.ver-mas:hover{text-decoration:underline}.coaching-mensaje{font-family:var(--serif);font-size:1.3rem;line-height:1.5;margin:0}.coaching-diagnostico{margin:0;line-height:1.6;color:var(--tinta-soft)}.acuerdo-nombre{font-family:var(--serif);font-weight:600;font-size:1.1rem;line-height:1.3;margin:0}.acuerdo-roto{border-left:4px solid var(--rojo)}.acuerdo-trabajar{border-left:4px solid var(--ambar)}.acciones-list{margin:.6rem 0 0;padding-left:1.2rem;line-height:1.6}.acciones-list li{margin-bottom:.4rem}.consulta-acciones{display:flex;gap:.6rem;flex-wrap:wrap}.contexto-toggle{margin-bottom:1rem}.contexto-bloque{display:flex;flex-direction:column;gap:.9rem;margin-bottom:1rem}.contexto-fila{display:flex;gap:.9rem;flex-wrap:wrap}.contexto-fila .field{flex:1 1 140px}.form-col{display:flex;flex-direction:column;align-items:stretch;gap:1.1rem;margin-top:1rem}.field select,.field textarea{font-family:var(--sans);font-size:1rem;padding:.65rem .8rem;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta)}.field textarea{min-height:70px;resize:vertical}.field select:focus,.field textarea:focus{outline:none;border-color:var(--ambar);box-shadow:0 0 0 3px #c9912f2e}.uso-secciones{display:flex;flex-direction:column;gap:1.3rem}.uso-secciones .cards{margin-bottom:0}.uso-nota{margin:0;font-size:.85rem;color:var(--tinta-soft)}.tabla-scroll{overflow-x:auto}.tabla-uso{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:.8rem}.tabla-uso th,.tabla-uso td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--linea);white-space:nowrap}.tabla-uso th{color:var(--tinta-soft);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.tabla-uso th.num,.tabla-uso td.num{text-align:right;font-variant-numeric:tabular-nums}.tabla-uso tr:last-child td{border-bottom:none}.prompt-texto{margin:.8rem 0 0;white-space:pre-wrap;line-height:1.5;color:var(--tinta-soft);font-size:.92rem}.lista-historial{display:flex;flex-direction:column;gap:.8rem}.historial-card{display:flex;flex-direction:column;gap:.25rem;width:100%;text-align:left;cursor:pointer;background:var(--crema-card);border:1px solid var(--linea);border-radius:14px;padding:1rem 1.2rem;font-family:inherit;color:inherit;transition:border-color .15s ease}.historial-card:hover{border-color:var(--ambar)}.historial-titulo{font-weight:600;font-size:1.02rem}.historial-fecha{font-size:.85rem;color:var(--tinta-soft)}.acciones-list .accion{display:flex;align-items:flex-start;gap:.6rem}.accion-check{flex:none;background:none;border:none;cursor:pointer;font-size:1.2rem;line-height:1.4;padding:0;color:var(--ambar)}.accion.is-hecha .accion-texto{text-decoration:line-through;color:var(--tinta-soft)}.acuerdos-lista{margin:.6rem 0;padding-left:1.3rem;display:flex;flex-direction:column;gap:.7rem;line-height:1.5}.acuerdos-lista li{padding-left:.3rem}.sidebar-nav-extra{margin-top:auto;padding-top:.75rem;border-top:1px solid var(--linea)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#241a128c;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.modal-card{background:var(--crema-card);border:1px solid var(--linea);border-radius:14px;padding:1.6rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}
