:root{--bg:#0f1115;--sidebar:#14171d;--card:#1b1f27;--card2:#20242e;--accent:#6c5ce7;--accent2:#00d4a4;--text:#e8e9ee;--muted:#8a8f9c;--border:#2a2e38}:root[data-theme=light]{--bg:#f4f5f8;--sidebar:#ffffff;--card:#ffffff;--card2:#eef0f4;--accent:#6c5ce7;--accent2:#00b391;--text:#1a1d24;--muted:#6b7280;--border:#e3e5eb}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);transition:background .15s,color .15s}a{color:inherit}.app{display:flex;flex-direction:column;min-height:100vh}.topbar{background:var(--sidebar);border-bottom:1px solid var(--border);padding:12px 28px;display:flex;align-items:center;gap:28px}.brand{display:flex;flex-direction:column;margin-right:8px}.logo{font-weight:700;font-size:16px;line-height:1.1;white-space:nowrap}.logo span{color:var(--accent2)}.subtitle{font-size:11px;color:var(--muted);white-space:nowrap}.nav{flex-direction:row;gap:4px;flex:1 1}.nav,.nav a{display:flex}.nav a{text-decoration:none;cursor:pointer;padding:9px 16px;border-radius:8px;font-size:13.5px;color:var(--muted);align-items:center;gap:8px;white-space:nowrap}.nav a:hover{background:var(--card);color:var(--text)}.nav a.active{background:var(--accent);color:white}.main{flex:1 1;padding:24px 32px;width:100%}h1{font-size:22px;margin:0 0 4px}.greeting{color:var(--muted);font-size:14px;margin-bottom:28px}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin-bottom:32px}.metric{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:18px}.metric .label{font-size:12px;color:var(--muted);margin-bottom:8px}.metric .value{font-size:26px;font-weight:700}.metric .delta{font-size:12px;margin-top:6px}.delta.up{color:var(--accent2)}.delta.down{color:#ff6b6b}.panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px}.panel h2{margin-top:0;font-size:16px;font-weight:500}.hint,.panel h2{color:var(--muted)}.hint{font-size:12px;margin-top:20px;border-top:1px solid var(--border);padding-top:14px}.chat-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.chat-row{display:flex;justify-content:space-between;align-items:center;background:var(--card2);border-radius:10px;padding:12px 16px}.chat-row .who{font-size:14px;font-weight:600}.chat-row .preview{font-size:12px;color:var(--muted);margin-top:3px}.badge{font-size:11px;padding:3px 8px;border-radius:20px}.badge.ai{background:rgba(0,212,164,.15);color:var(--accent2)}.badge.human{background:rgba(108,92,231,.15);color:var(--accent)}.badge.danger{background:rgba(255,107,107,.15);color:#ff6b6b}.search-input{width:100%;background:var(--card2);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:13px 16px;font-size:14px;font-family:inherit;margin-bottom:20px}.search-input:focus{outline:none;border-color:var(--accent)}.patient-list{display:flex;flex-direction:column;gap:10px}.patient-row{display:flex;justify-content:space-between;align-items:center;background:var(--card2);border-radius:10px;padding:14px 16px;cursor:pointer;transition:background .15s}.patient-row:hover{background:var(--border)}.patient-row .who{font-size:14px;font-weight:600}.patient-row .phone{font-size:12px;color:var(--muted);margin-top:2px}.patient-row .visita{font-size:11px;color:var(--muted);white-space:nowrap}.ficha-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.ficha-header h2{margin:0 0 4px;font-size:19px;font-weight:700}.ficha-header .phone{font-size:13px;color:var(--muted)}.ficha-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:800px){.ficha-grid{grid-template-columns:1fr}}.ficha-section{background:var(--card2);border-radius:10px;padding:16px}.ficha-section h3{margin:0 0 10px;font-size:12px;color:var(--accent2);text-transform:uppercase;letter-spacing:.03em;display:flex;align-items:center;gap:6px}.ficha-section p{margin:0 0 6px;font-size:13px;line-height:1.5}.ficha-section p:last-child{margin-bottom:0}.ficha-citas{display:flex;flex-direction:column;gap:8px}.ficha-cita-row{display:flex;justify-content:space-between;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:13px}.tabs{display:flex;gap:8px;margin-bottom:20px}.tabs a{text-decoration:none;padding:8px 16px;border-radius:8px;font-size:13px;color:var(--muted);background:var(--card2)}.tabs a.active{background:var(--accent);color:white}