:root{font-family:Montserrat,Arial,sans-serif;color:#182033;background:#f6f8fc}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}[hidden]{display:none!important}.muted{color:#758095;font-size:13px;line-height:1.75}.overline,.topbar-kicker{font-size:10px;font-weight:700;letter-spacing:.16em;color:#e89f1f}.login-layout{display:grid;grid-template-columns:52% 48%;min-height:100vh}.login-brand{padding:40px clamp(32px,5vw,86px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 110% 95%,#203b83 0%,#142a64 34%,transparent 60%),linear-gradient(135deg,#182033,#0a2572);color:#fff}.brand-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.brand-head img{width:min(65%,330px);height:140px;object-fit:contain;object-position:left center}.version{border:1px solid #ffffff55;border-radius:30px;padding:9px 12px;font-size:11px;white-space:nowrap}.login-brand h1{font-family:Poppins,sans-serif;font-size:clamp(40px,4.7vw,70px);line-height:1.13;letter-spacing:-.045em;font-weight:600;margin:24px 0}.login-brand em{font-style:normal;color:#e89f1f}.login-brand p{font-size:14px;line-height:2;max-width:480px}.login-brand small{color:#d4d9e8;font-size:11px}.login-side{position:relative;display:flex;justify-content:center;align-items:center;padding:42px 28px}.login-card{width:min(100%,420px)}.login-card h2{font:600 36px Poppins,sans-serif;letter-spacing:-.04em;margin:12px 0 8px}.login-card>.muted{margin-bottom:30px}.login-card label,.modal-form label{display:block;font-weight:700;font-size:12px;margin:16px 0 8px}.login-card input,.modal-form input,.modal-form select,.modal-form textarea,.toolbar input,.toolbar select{width:100%;padding:13px 14px;border:1px solid #d7dfec;border-radius:9px;background:white;color:#182033;outline:0;font-size:13px;margin-top:8px}.login-card input:focus,.modal-form input:focus,.modal-form select:focus,.toolbar input:focus{border-color:#0a2572;box-shadow:0 0 0 3px #0a257215}.password-line{position:relative}.password-line input{padding-right:90px}.text-button{position:absolute;right:10px;top:20px;background:none;border:0;color:#0a2572;font-weight:700;font-size:12px}.primary{background:#b67e34;color:#fff;border:0;border-radius:9px;padding:13px 19px;font-weight:700;font-size:12px}.primary:hover{background:#9e6a2a}.full{width:100%;margin-top:26px;min-height:51px}.status{font-size:12px;line-height:1.6;color:#b03232;min-height:15px}.status.ok{color:#176344}.login-help{margin-top:30px;padding-top:22px;border-top:1px solid #e1e5ed;color:#8b94a6;font-size:11px;line-height:1.9}.login-footer{position:absolute;bottom:18px;color:#8b94a6;font-size:11px}.mobile-brand{display:none}#workspace{display:flex;min-height:100vh}.sidebar{width:255px;flex-shrink:0;background:linear-gradient(165deg,#182033,#0a2572);color:white;display:flex;flex-direction:column;padding:24px 16px;position:sticky;top:0;height:100vh}.sidebar-logo{width:195px;height:95px;object-fit:contain;object-position:left}.sidebar-sub{color:#a8b9dc;font-size:10px;letter-spacing:.12em;padding:0 12px 30px}.sidebar nav{display:grid;gap:8px}.nav-button{color:#e2e8f8;border:0;background:transparent;border-radius:9px;text-align:left;padding:15px 13px;font-size:12px;font-weight:700}.nav-button.active,.nav-button:hover{background:#ffffff1e;color:#fff}.sidebar-bottom{margin-top:auto;padding:18px 12px 0;border-top:1px solid #ffffff30;font-size:11px;overflow-wrap:anywhere}.sidebar-bottom #sidebar-role{margin:7px 0 14px;color:#efbb67}.outline-dark{border:1px solid #ffffff55;color:white;background:transparent;padding:10px 13px;border-radius:8px}.workspace-main{min-width:0;flex:1}.topbar{display:flex;justify-content:space-between;align-items:center;background:white;padding:23px clamp(20px,3vw,42px);border-bottom:1px solid #e9edf4}.topbar h2{font:600 25px Poppins,sans-serif;margin:6px 0 0}.lab-chip{color:#176344;background:#e6f6ef;padding:9px 12px;border-radius:30px;font-size:11px;font-weight:700}.content{padding:32px clamp(18px,3vw,42px);max-width:1450px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:25px}.section-heading h3,.panel h3{font:600 21px Poppins,sans-serif;margin:0}.section-heading p{margin:6px 0 0}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.metric,.panel{background:#fff;border:1px solid #e6eaf1;border-radius:15px;box-shadow:0 4px 20px #0a257208}.metric{padding:22px;display:flex;flex-direction:column;gap:10px}.metric span{font-size:12px;color:#62718a}.metric strong{font:600 35px Poppins,sans-serif;color:#0a2572}.metric small{color:#8894a6;font-size:11px}.panel{overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #edf0f6}.panel-head h3{font-size:17px}.link-button{border:0;background:none;color:#0a2572;font-size:12px;font-weight:700}.toolbar{display:flex;align-items:center;gap:12px;padding:18px;border-bottom:1px solid #edf0f6;flex-wrap:wrap}.toolbar input{flex:2;min-width:190px;margin:0}.toolbar select{flex:1;min-width:170px;margin:0}.inline-check{white-space:nowrap;font-size:11px;color:#64748b}.inline-check input{width:auto}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{background:#f9fafc;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#738198;padding:13px 17px}td{padding:15px 17px;border-top:1px solid #edf0f6;font-size:12px}td strong{display:block;font-size:12px}td small{color:#8390a2}td .action{border:1px solid #d9e0ec;border-radius:7px;padding:7px 10px;background:white;color:#0a2572;font-weight:700}.stage-tag{display:inline-block;padding:6px 9px;border-radius:18px;background:#edf2ff;color:#183b82;font-size:10px;font-weight:700}.empty{padding:38px 24px;text-align:center;color:#78869c;font-size:13px;line-height:1.8}.pipeline-board{display:flex;gap:14px;overflow-x:auto;padding-bottom:18px}.pipeline-column{flex:0 0 225px;background:#edf1f8;border-radius:13px;padding:14px;min-height:200px}.pipeline-column h4{font-size:12px;margin:0 0 14px;display:flex;justify-content:space-between}.pipeline-column h4 span{color:#6c7a90}.pipeline-card{background:white;border:1px solid #e0e6ef;border-radius:10px;padding:14px;margin-bottom:9px;font-size:12px}.pipeline-card strong{display:block;margin-bottom:8px}.pipeline-card small{color:#718096}.pipeline-card button{display:block;margin-top:10px;background:none;border:0;padding:0;color:#0a2572;font-weight:700;font-size:11px}.alert{padding:14px 17px;border-radius:9px;background:#fff4ed;color:#9e4626;margin-bottom:18px;font-size:12px}.alert.success{background:#e8f7ee;color:#176344}.menu-toggle{display:none}dialog{border:0;border-radius:16px;padding:0;width:min(92vw,720px);max-height:90vh;box-shadow:0 25px 80px #07172c55}dialog::backdrop{background:#101b30a8}.modal-form{display:flex;flex-direction:column;max-height:90vh}.modal-header,.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:19px 26px;border-bottom:1px solid #e6ebf2}.modal-header h3{font:600 24px Poppins,sans-serif;margin:7px 0 0}.close-button{font-size:27px;border:0;background:none;color:#7c8a9b}.modal-body{overflow-y:auto;padding:14px 26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.form-grid .wide{grid-column:1/-1}.modal-form label{margin:9px 0 4px}.modal-form textarea{resize:vertical}.modal-footer{border-top:1px solid #e6ebf2;border-bottom:0;justify-content:flex-end;gap:10px}.secondary{border:1px solid #d8e0ec;background:white;color:#182033;border-radius:8px;padding:12px 18px;font-size:12px}.history-row{padding:10px 0;border-bottom:1px solid #edf0f5;font-size:12px;color:#55647a}#client-history h4{font-size:13px}#client-history{margin-top:22px}.archived{opacity:.65}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.brand-head img{width:230px}.version{font-size:10px}}@media(max-width:800px){.login-layout{grid-template-columns:1fr}.login-brand{display:none}.login-side{min-height:100vh}.mobile-brand{display:block;width:240px;height:100px;object-fit:contain;object-position:left}.sidebar{position:fixed;z-index:4;left:-270px;transition:left .2s}.sidebar.open{left:0}.menu-toggle{display:block;border:0;background:none;font-size:22px}.topbar{gap:12px}.lab-chip{font-size:10px}.content{padding:22px 14px}.section-heading{align-items:flex-start}.section-heading .primary{white-space:nowrap}.metrics{gap:9px}.metric{padding:14px}.metric strong{font-size:27px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.modal-header,.modal-footer{padding:15px}.modal-body{padding:10px 15px}}
/* Recuperación de contraseña (v0.3.1) */
.auth-links{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.auth-links .link-button{padding:6px 0;text-align:left}.auth-links .link-button:hover{text-decoration:underline}.pw-hint{font-size:11px;line-height:1.7;color:#8b94a6;margin:10px 0 0}
