:root{
  --bg:#f4f7f6;--panel:#fff;--ink:#17231f;--muted:#6b7a74;--line:#dde6e2;
  --green:#0a7c5a;--green2:#13a779;--soft:#eaf7f2;--amber:#9a6505;--amberbg:#fff5dc;
  --red:#b33c39;--redbg:#fff0ef;--blue:#315b9d;--bluebg:#e9f1ff;--nav:#10231d;--nav2:#17322a;
  --shadow:0 14px 35px rgba(14,40,31,.07);--radius:18px
}
*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:var(--green)}
.icon{display:inline-block;flex:none;vertical-align:-3px}
.shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--nav),#0d1d18);color:#dce9e4;padding:24px 16px;display:flex;flex-direction:column;z-index:10}
.brand{display:flex;gap:11px;align-items:center;padding:0 8px 20px}
.brand-mark{width:38px;height:38px;border-radius:12px;background:#19b982;color:#fff;display:grid;place-items:center;font-weight:900;font-size:20px}
.brand strong{display:block;color:white;font-size:15px}.brand small,.user-mini small{display:block;color:#8aa39a;font-size:11px}
.mode{margin:0 8px 18px;padding:8px 10px;border-radius:10px;font-weight:800;font-size:10px;letter-spacing:.08em;text-align:center}.mode.demo{background:#213b33;color:#9fe4cd}.mode.real{background:#143f31;color:#61e5b8}
nav{display:grid;gap:4px}nav a{color:#b8ccc4;text-decoration:none;padding:11px 12px;border-radius:11px;display:flex;gap:10px;align-items:center;font-weight:650}nav a .icon{color:#73988a}nav a:hover,nav a.active{background:var(--nav2);color:#fff}nav a.active .icon{color:#36d29b}
.side-foot{margin-top:auto;padding:16px 8px 0;border-top:1px solid #254038}.user-mini{display:flex;gap:9px;align-items:center}.avatar{width:34px;height:34px;border-radius:50%;background:#27483d;display:grid;place-items:center;color:white;font-weight:800}.user-mini strong{font-size:12px;color:#fff;display:block}.link-btn{background:none;border:0;color:#7fa398;padding:10px 0;cursor:pointer}
.main{min-width:0}.topbar{height:88px;background:rgba(244,247,246,.92);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:18px 34px;border-bottom:1px solid rgba(221,230,226,.8);position:sticky;top:0;z-index:8}.topbar h1{font-size:22px;line-height:1.15;margin:0}.topbar p{margin:4px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;gap:9px}.content{padding:28px 34px 60px;max-width:1450px;margin:auto}.mobile-nav{display:none;background:transparent;border:0;color:var(--ink)}
.grid{display:grid;gap:18px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.split{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:22px}.stack{display:grid;gap:16px}.mt{margin-top:16px}.mb{margin-bottom:16px}.muted{color:var(--muted)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.card h3{font-size:15px;margin:0}.card h4{margin:0 0 10px;font-size:13px}
.metric{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(14,40,31,.045)}.metric span{display:block;color:var(--muted);font-size:12px;font-weight:650}.metric strong{display:block;font-size:28px;line-height:1.1;margin:7px 0 4px;letter-spacing:-.03em}.metric small{color:var(--muted)}.metric.good strong{color:var(--green)}.metric.warn strong{color:var(--amber)}
.section-title{display:flex;justify-content:space-between;align-items:end;margin:30px 0 14px}.section-title h2{margin:0;font-size:17px}.section-title p{margin:3px 0 0;color:var(--muted);font-size:12px}
.btn{display:inline-flex;align-items:center;gap:7px;justify-content:center;border:0;border-radius:11px;padding:10px 14px;text-decoration:none;font-weight:750;cursor:pointer;font-size:13px}.btn.primary{background:var(--green);color:#fff}.btn.primary:hover{background:#086b4e}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.danger{background:var(--redbg);color:var(--red)}.btn.sm{padding:7px 10px;font-size:12px}.btn.block{width:100%}.btn[disabled]{opacity:.45;cursor:not-allowed}
.field{display:grid;gap:6px;margin-bottom:14px}.field label{font-size:12px;font-weight:750;color:#46564f}.field small{color:var(--muted)}input,select,textarea{width:100%;border:1px solid #cdd9d4;background:#fff;border-radius:11px;padding:10px 11px;color:var(--ink);font:inherit;outline:none}textarea{min-height:100px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#5cb99a;box-shadow:0 0 0 3px #e6f6f0}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.check-row{display:flex;align-items:flex-start;gap:9px}.check-row input{width:auto;margin-top:3px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;font-size:12.5px;background:white}th{text-align:left;color:#64736d;font-size:11px;text-transform:uppercase;letter-spacing:.035em;background:#f8faf9}th,td{padding:12px 13px;border-bottom:1px solid #edf1ef;white-space:nowrap}tr:last-child td{border-bottom:0}
.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:850;letter-spacing:.03em;text-transform:uppercase}.badge.ok{background:#e5f6ef;color:#087051}.badge.warn{background:var(--amberbg);color:var(--amber)}.badge.bad{background:var(--redbg);color:var(--red)}.badge.neutral{background:#eef2f1;color:#5c6a65}
.flash{margin:18px 34px 0;border-radius:12px;padding:11px 14px;font-weight:650}.flash.success{background:#e3f7ef;color:#086c50}.flash.error{background:var(--redbg);color:var(--red)}.flash.info{background:var(--bluebg);color:var(--blue)}
.notice{padding:12px 14px;border-radius:12px;background:#f4f8f6;color:#52635c;font-size:12px;border:1px solid var(--line)}.notice.warning{background:var(--amberbg);color:#79510c;border-color:#f0dfae}.notice.danger{background:var(--redbg);color:var(--red);border-color:#f2cfcd}
.empty{text-align:center;padding:35px 18px;color:var(--muted)}.empty-icon{width:42px;height:42px;border:1px dashed #9fb3ab;border-radius:50%;margin:0 auto 10px;position:relative}.empty-icon:after{content:"";position:absolute;inset:12px;border:1px solid #9fb3ab;border-radius:50%}.empty h3{color:var(--ink);margin:6px 0}.empty p{max-width:450px;margin:5px auto 16px}
.progress{height:8px;background:#edf2f0;border-radius:20px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--green),#32c997);border-radius:20px}
.kpi-row{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.kpi-row>div{min-width:120px}.kpi-row strong{font-size:20px;display:block}.kpi-row small{color:var(--muted)}
.stepper{display:flex;justify-content:space-between;gap:6px;margin:0 0 26px}.step{flex:1;text-align:center;position:relative;color:#9aa8a3}.step:before{content:"";height:2px;background:#dce6e2;position:absolute;left:-50%;right:50%;top:14px;z-index:0}.step:first-child:before{display:none}.step span{position:relative;z-index:1;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#e7edeb;color:#74837d;font-weight:800}.step small{display:block;margin-top:6px;font-size:10px}.step.done span,.step.current span{background:var(--green);color:white}.step.done:before,.step.current:before{background:var(--green)}.step.current small{color:var(--green);font-weight:800}
.phone{width:310px;max-width:100%;border:8px solid #16201d;border-radius:32px;background:#efeae2;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.16);margin:auto}.phone-top{height:62px;background:#075e54;color:white;display:flex;align-items:center;gap:8px;padding:8px 10px}.phone-avatar{width:36px;height:36px;background:#dbe5e2;color:#245249;border-radius:50%;display:grid;place-items:center;font-weight:900}.phone-top strong,.phone-top small{display:block}.phone-top small{font-size:9px;color:#cfdfda}.chat-bg{min-height:330px;padding:18px 10px;background-color:#efeae2;background-image:radial-gradient(#d8d2c8 1px,transparent 1px);background-size:12px 12px}.bubble{background:#d9fdd3;border-radius:8px;padding:10px 10px 6px;max-width:88%;margin-left:auto;box-shadow:0 1px 1px rgba(0,0,0,.09);font-size:12px}.bubble small{display:block;color:#68756f;border-top:1px solid #c5e7c2;margin-top:8px;padding-top:5px}.bubble time{font-size:9px;color:#68756f;display:block;text-align:right;margin-top:4px}
.health{display:grid;gap:10px}.health-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1ef;padding:8px 0;gap:18px}.health-row:last-child{border:0}.health-row>span{display:flex;align-items:center}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:7px;background:#9aa8a3}.dot.ok{background:#11a36e}.dot.warn{background:#e2a431}.dot.bad{background:#d44b48}
.quote-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quote{border:1px solid var(--line);border-radius:15px;padding:16px;cursor:pointer;background:#fff}.quote input{width:auto;margin-right:7px}.quote:has(input:checked){border-color:#25a77d;box-shadow:0 0 0 3px #e6f6f0}.quote strong{display:block;font-size:16px;margin-top:8px}.quote ul{padding-left:17px;color:var(--muted);font-size:11px}
.login-page{min-height:100vh;background:linear-gradient(135deg,#0f241d,#0b503d);display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);background:white;border-radius:24px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.login-card .brand{padding:0 0 24px}.login-card .brand strong{color:var(--ink)}.login-card .brand small{color:var(--muted)}
.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#10231d;color:#d6f7ea;border-radius:10px;padding:10px 12px;overflow:auto;font-size:11px}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.tabs{display:flex;gap:5px;padding:4px;background:#edf2f0;border-radius:11px;width:max-content;max-width:100%;overflow:auto}.tabs a{padding:7px 11px;border-radius:8px;text-decoration:none;color:#68766f;font-weight:700;font-size:11px}.tabs a.active{background:white;color:var(--ink);box-shadow:0 2px 7px rgba(0,0,0,.05)}
.checklist{display:grid;gap:9px}.check{display:flex;gap:10px;align-items:flex-start;padding:11px;border:1px solid var(--line);border-radius:12px}.check-state{width:22px;height:22px;display:grid;place-items:center;border:1px solid #b8c8c2;border-radius:50%;color:#71847d;flex:none}.check-state.ok{background:#e6f6f0;border-color:#80cbb2;color:var(--green)}.check b{display:block}.check small{display:block;color:var(--muted)}
.hero-status{background:white;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;justify-content:space-between;gap:15px;align-items:center;box-shadow:var(--shadow)}.hero-status h2{margin:0}.hero-status p{margin:5px 0 0;color:var(--muted)}.big-dot{width:18px;height:18px;border-radius:50%;background:var(--green2);box-shadow:0 0 0 8px #e8f8f2}.big-dot.bad{background:var(--red);box-shadow:0 0 0 8px var(--redbg)}
.stat-line{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #edf1ef}.stat-line:last-child{border:0}.stat-line span{color:var(--muted)}
.pillset{display:flex;gap:7px;flex-wrap:wrap}.pill{padding:5px 8px;background:#eff4f2;border-radius:999px;font-size:10px;font-weight:700;color:#56665f}
.variable-toolbar{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 12px}.variable-toolbar button{background:#f8faf9;border:1px solid var(--line);border-radius:9px;padding:7px 10px;color:#43534c;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.variable-toolbar button:hover{border-color:#84bda9;background:#f1faf6}.variable-list{display:grid;gap:10px}.variable-row{border:1px solid var(--line);border-radius:13px;padding:12px;background:#fbfcfc}.variable-row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.variable-number{width:26px;height:26px;border-radius:8px;background:#edf5f2;display:grid;place-items:center;font-weight:800;color:#3b6758}.variable-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10px}.variable-grid.three{grid-template-columns:1fr 1fr 1fr}.template-preview-value{font-weight:700;color:#315d4f}
.price-box{border:1px solid #cce6dc;background:#f7fcfa;border-radius:16px;padding:18px}.price-box .total-label{font-size:12px;color:var(--muted);font-weight:700}.price-box .total{font-size:34px;letter-spacing:-.04em;font-weight:850;color:var(--ink);margin:2px 0}.price-box small{color:var(--muted)}
.timeline{display:grid;gap:10px}.timeline-item{display:grid;grid-template-columns:12px 1fr;gap:10px}.timeline-item:before{content:"";width:8px;height:8px;margin-top:6px;border-radius:50%;background:#a8bbb4}.timeline-item.ok:before{background:var(--green2)}.timeline-item b{display:block}.timeline-item small{color:var(--muted)}
.file-hidden{display:none!important}.compact{font-size:12px}.nowrap{white-space:nowrap}
@media(max-width:1050px){.grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.quote-options{grid-template-columns:1fr}}
@media(max-width:760px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-280px;width:250px;transition:left .2s}.shell.nav-open .sidebar{left:0}.topbar{padding:16px 18px;height:76px}.content{padding:20px 16px 50px}.mobile-nav{display:inline-grid;place-items:center}.top-actions .btn.ghost{display:none}.grid.cols-2,.grid.cols-3,.grid.cols-4,.form-row,.form-row.three,.variable-grid,.variable-grid.three{grid-template-columns:1fr}.flash{margin:12px 16px 0}.step small{display:none}.copy-row{grid-template-columns:1fr}.quote-options{grid-template-columns:1fr}.metric strong{font-size:24px}}

/* Línea KB — identidad premium */
:root{
  --bg:#f5f5f3;--panel:#ffffff;--ink:#111111;--muted:#70706c;--line:#e4e4df;
  --green:#f36a21;--green2:#ff7a2f;--soft:#fff1e8;--nav:#090909;--nav2:#171717;
  --shadow:0 18px 50px rgba(17,17,17,.055);--radius:18px;
  --orange:#f36a21;--orange-dark:#d95512;--orange-soft:#fff1e8;--black:#090909;--cream:#faf9f7;
}
body{background:linear-gradient(180deg,#f7f7f5 0%,#f3f3f0 100%);letter-spacing:-.005em}
a{color:var(--orange)}
.sidebar{background:linear-gradient(180deg,#080808 0%,#111 55%,#090909 100%);border-right:1px solid rgba(255,255,255,.06);padding:26px 16px}
.brand{gap:12px;padding:0 8px 22px}.brand-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#ff7d32,#e95813);color:#fff;box-shadow:0 10px 24px rgba(243,106,33,.28);font-size:12px;letter-spacing:.08em}.brand-mark span{font-weight:950}.brand-copy strong{font-size:16px;letter-spacing:-.025em}.brand-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#8f8f8f;margin-top:2px}
.mode{border:1px solid rgba(255,255,255,.08);background:#141414!important;color:#bdbdbd!important}.mode.real{color:#ffc09c!important;border-color:rgba(243,106,33,.28)}
nav a{color:#a8a8a8;border:1px solid transparent;padding:11px 12px}nav a .icon{color:#666}nav a:hover{background:#151515;color:#fff;border-color:#222}nav a.active{background:linear-gradient(90deg,rgba(243,106,33,.18),rgba(243,106,33,.05));color:#fff;border-color:rgba(243,106,33,.22)}nav a.active .icon{color:var(--orange)}
.side-foot{border-top-color:#242424}.avatar{background:#202020;border:1px solid #333}.link-btn{color:#9b9b9b}.link-btn:hover{color:#fff}
.topbar{background:rgba(247,247,245,.88);border-bottom:1px solid rgba(17,17,17,.07);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.topbar h1{font-size:23px;letter-spacing:-.035em}.topbar p{color:#777}
.content{padding-top:30px}.card,.metric,.hero-status{border-color:rgba(17,17,17,.08);box-shadow:var(--shadow)}.card{padding:23px}.card-head h3,.section-title h2{letter-spacing:-.02em}.metric{padding:20px}.metric strong{font-weight:850;color:#121212}.metric.good strong{color:#0a7f5e}
.btn{border-radius:10px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn.primary{background:linear-gradient(180deg,#f67832,#eb5f17);box-shadow:0 7px 18px rgba(243,106,33,.2);color:#fff}.btn.primary:hover{background:linear-gradient(180deg,#eb6a25,#d95312);transform:translateY(-1px)}.btn.ghost{border-color:#deded9;color:#1a1a1a}.btn.ghost:hover{border-color:#c9c9c2;background:#fafaf8}
input,select,textarea{border-color:#d8d8d2;border-radius:10px;background:#fff}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(243,106,33,.12)}.field label{color:#363632}
.table-wrap{border-color:#e3e3de;border-radius:14px;box-shadow:0 8px 30px rgba(17,17,17,.025)}table{background:#fff}th{background:#f8f8f6;color:#777}th,td{border-bottom-color:#efefeb}
.badge.ok{background:#e9f7f1;color:#087657}.badge.warn{background:#fff4df;color:#8a5b00}.badge.bad{background:#fff0ef;color:#ad3734}.badge.neutral{background:#f1f1ee;color:#5c5c58}
.flash.success{background:#e9f7f1;color:#087657}.notice{background:#f8f8f6;border-color:#e3e3de}.notice.warning{background:#fff5e7;border-color:#f2d8b9;color:#80500b}
.progress{background:#ecece8}.progress>span{background:linear-gradient(90deg,var(--orange),#ff9a63)}
.step span{background:#ecece8;color:#777}.step.done span,.step.current span{background:var(--orange);box-shadow:0 6px 16px rgba(243,106,33,.18)}.step.done:before,.step.current:before{background:var(--orange)}.step.current small{color:var(--orange)}
.quote{border-color:#deded9;transition:border .15s ease,box-shadow .15s ease,transform .15s ease}.quote:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(17,17,17,.05)}.quote:has(input:checked){border-color:var(--orange);box-shadow:0 0 0 3px rgba(243,106,33,.1)}
.login-page{background:radial-gradient(circle at 80% 15%,rgba(243,106,33,.24),transparent 28%),radial-gradient(circle at 15% 85%,rgba(243,106,33,.10),transparent 30%),#080808}.login-card{border:1px solid #252525;box-shadow:0 35px 100px rgba(0,0,0,.45);padding:34px}.login-card .brand-mark{box-shadow:0 12px 26px rgba(243,106,33,.26)}
.code{background:#111;color:#f5f5f3;border:1px solid #252525}.tabs{background:#ededE9}.tabs a.active{box-shadow:0 2px 8px rgba(0,0,0,.07)}
.check{border-color:#e6e6e1;background:#fff}.check-state.ok{background:#fff1e8;border-color:#ffc7a7;color:var(--orange)}
.hero-status{background:linear-gradient(135deg,#fff 0%,#fdfbf8 100%)}.big-dot{background:#0ea673;box-shadow:0 0 0 8px #e7f8f1}.big-dot.bad{background:#c9413d;box-shadow:0 0 0 8px #fff0ef}
.pill{background:#f1f1ee;color:#555}.variable-toolbar button{background:#fff;border-color:#deded9;color:#292925}.variable-toolbar button:hover{border-color:var(--orange);background:#fff6f0;color:#b8490e}.variable-row{background:#fbfbf9;border-color:#e3e3de}.variable-number{background:#fff0e7;color:#bd4b0d}
.price-box{border-color:#ffd0b7;background:linear-gradient(135deg,#fff8f3,#fff)}.price-box .total{color:#111}.timeline-item.ok:before{background:var(--orange)}
.app-footer{display:flex;justify-content:space-between;gap:16px;padding:18px 34px 26px;color:#9a9a95;font-size:11px;border-top:1px solid rgba(17,17,17,.05)}.app-footer span:first-child{font-weight:800;color:#666}
.nav-overlay{display:none;border:0;padding:0;background:rgba(0,0,0,.52);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
body.nav-lock{overflow:hidden}
/* Mantener los estados operativos diferenciados del color de marca */
.dot.ok{background:#0ea673}.dot.warn{background:#d89a20}.dot.bad{background:#c9413d}
.health-row{border-bottom-color:#efefeb}.phone{border-color:#151515}
@media(max-width:760px){
  .sidebar{left:-285px;width:268px;z-index:30;box-shadow:20px 0 55px rgba(0,0,0,.25)}
  .shell.nav-open .sidebar{left:0}.nav-overlay{position:fixed;inset:0;z-index:25}.shell.nav-open .nav-overlay{display:block}
  .topbar{padding:14px 16px}.mobile-nav{border-radius:9px;width:38px;height:38px;border:1px solid #deded9;background:#fff;margin-right:9px}
  .topbar-title{min-width:0;flex:1}.topbar h1{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .app-footer{padding:18px 16px 24px;flex-direction:column;gap:3px}.card{padding:18px}.content{padding-top:18px}
}
.inline-details{min-width:170px}.inline-details summary{cursor:pointer;color:var(--orange-dark);font-weight:750;list-style:none}.inline-details summary::-webkit-details-marker{display:none}.mini-form{display:grid;gap:8px;margin-top:10px;padding:10px;border:1px solid #e6e6e1;border-radius:10px;background:#fafaf8}.mini-form input{min-width:190px}.mini-form .check-row{font-size:11px;white-space:normal}
.app-footer>div{display:flex;gap:12px;align-items:center}.app-footer>div:first-child span:first-child{font-weight:850;color:#555}.footer-links{justify-content:flex-end}.footer-links a{color:#8b8b86;text-decoration:none}.footer-links a:hover{color:var(--orange)}
.legal-page{min-height:100vh;background:radial-gradient(circle at 85% 8%,rgba(243,106,33,.14),transparent 26%),#f6f6f3;padding:42px 20px 28px}.legal-brand{width:min(900px,100%);margin:0 auto 24px;display:flex;align-items:center;gap:12px;text-decoration:none;color:#111}.legal-brand>span:last-child{display:grid}.legal-brand b{font-size:16px}.legal-brand small{color:#888;text-transform:uppercase;letter-spacing:.12em;font-size:9px}.legal-card{width:min(900px,100%);margin:auto;background:#fff;border:1px solid #e5e5df;border-radius:22px;padding:34px;box-shadow:0 24px 70px rgba(17,17,17,.06)}.legal-card h1{font-size:34px;letter-spacing:-.045em;margin:6px 0 24px}.legal-card h2{font-size:17px;margin:28px 0 8px}.legal-card p{color:#555;max-width:78ch}.legal-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--orange-dark);font-size:10px;font-weight:850}.legal-note{margin-top:30px;padding:14px;border-radius:12px;background:#fff6f0;border:1px solid #ffd6bf;color:#714123;font-size:12px}.legal-footer{width:min(900px,100%);margin:18px auto 0;display:flex;gap:18px;flex-wrap:wrap}.legal-footer a{font-size:11px;color:#777;text-decoration:none}.legal-footer a:hover{color:var(--orange)}
@media(max-width:760px){.app-footer>div{align-items:flex-start;flex-wrap:wrap}.footer-links{justify-content:flex-start}.legal-page{padding:24px 14px}.legal-card{padding:22px;border-radius:18px}.legal-card h1{font-size:28px}.legal-footer{gap:12px}}
.login-links{display:flex;justify-content:center;gap:14px;margin-top:16px}.login-links a{font-size:10px;color:#8a8a86;text-decoration:none}.login-links a:hover{color:var(--orange)}

/* Administración de clientes e invitaciones */
.page-actions{display:flex;justify-content:flex-start;gap:10px;margin-bottom:16px}
.invite-card{width:min(500px,100%)}
.invite-head{margin:6px 0 22px;padding:18px;border:1px solid #2a2a2a;border-radius:16px;background:linear-gradient(135deg,#151515,#0d0d0d);color:#fff}
.invite-head span{display:block;color:#aaa;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.invite-head h1{font-size:25px;line-height:1.1;margin:7px 0 5px;letter-spacing:-.035em}
.invite-head p{margin:0;color:#c7c7c7;font-size:12px}
.amount-positive{color:#087657;font-weight:800}.amount-negative{color:#ad3734;font-weight:800}

/* Línea KB RC — acceso premium */
.premium-login{grid-template-columns:minmax(320px,1.05fr) minmax(360px,.75fr);gap:0;place-items:stretch;padding:0;background:#070707}
.login-showcase{min-height:100vh;padding:56px clamp(34px,6vw,88px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 20% 20%,rgba(243,106,33,.23),transparent 30%),linear-gradient(145deg,#0a0a0a,#141414 72%,#0b0b0b);color:#fff;border-right:1px solid #222}
.showcase-brand,.login-mobile-brand{display:flex;align-items:center;gap:13px}.showcase-brand>div:last-child,.login-mobile-brand>div:last-child{display:grid}.showcase-brand strong,.login-mobile-brand strong{font-size:18px}.showcase-brand small,.login-mobile-brand small{text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:#9b9b9b;margin-top:2px}
.showcase-copy{max-width:720px}.showcase-copy .eyebrow,.login-head>span{color:var(--orange);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.16em}.showcase-copy h1{font-size:clamp(42px,6vw,74px);line-height:.96;letter-spacing:-.06em;margin:14px 0 20px;max-width:760px}.showcase-copy p{font-size:16px;line-height:1.7;color:#b7b7b7;max-width:620px}.showcase-lines{display:flex;gap:10px;flex-wrap:wrap}.showcase-lines span{border:1px solid #2a2a2a;background:#111;padding:9px 12px;border-radius:999px;color:#bdbdbd;font-size:11px}
.premium-login>.premium-card{align-self:center;justify-self:center;margin:32px;width:min(470px,calc(100% - 64px));background:#fff;border-color:#e8e8e3;box-shadow:0 35px 100px rgba(0,0,0,.38)}
.login-mobile-brand{display:none;margin-bottom:26px}.login-head{margin-bottom:22px}.login-head h2{font-size:32px;letter-spacing:-.045em;margin:6px 0}.login-head p{color:#777;margin:0}.login-support{text-align:center;color:#8a8a86;font-size:10px;margin:18px 0 0}.login-support a{color:#555}
.ticket-thread{display:grid;gap:12px}.ticket-message{padding:14px 16px;border:1px solid #e8e8e3;border-radius:14px;background:#fff}.ticket-message.admin{border-left:3px solid var(--orange);background:#fffaf7}.ticket-message small{display:block;color:#8a8a86;margin-top:7px}.notification-row{display:grid;grid-template-columns:10px 1fr auto;gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid #ecece7}.notification-row.unread{font-weight:650}.notification-dot{width:8px;height:8px;border-radius:50%;background:#d8d8d3;margin-top:6px}.notification-row.unread .notification-dot{background:var(--orange)}.billing-banner{padding:14px 16px;border:1px solid #ffd3ba;background:#fff7f1;border-radius:14px;display:flex;justify-content:space-between;gap:18px;align-items:center}.billing-banner.ok{border-color:#d7e5df;background:#f7fbf9}.billing-banner.bad{border-color:#efc8c8;background:#fff6f6}.limits-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.limit-box{padding:13px;border:1px solid #e8e8e3;border-radius:12px;background:#fafaf8}.limit-box small{display:block;color:#8a8a86}.limit-box strong{display:block;font-size:18px;margin-top:4px}.consent-proof{max-width:260px;white-space:normal;word-break:break-word}.reply-preview{max-width:360px;white-space:normal;word-break:break-word}
@media(max-width:960px){.premium-login{display:block;padding:24px;background:radial-gradient(circle at 80% 15%,rgba(243,106,33,.18),transparent 28%),#080808}.login-showcase{display:none}.premium-login>.premium-card{width:min(470px,100%);margin:auto}.login-mobile-brand{display:flex}.limits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.premium-login{padding:14px}.premium-login>.premium-card{padding:24px;border-radius:20px}.limits-grid{grid-template-columns:1fr}.billing-banner{align-items:flex-start;flex-direction:column}}
