:root{--lime:#afda32;--blue:#0878c9;--navy:#2b2c60;--blue-soft:#eaf1fb;--text:#2b2c60;--muted:#667085;--line:#e5e8f0}*{box-sizing:border-box}body{margin:0;background:#f5f6fa;color:var(--text);font:14px system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button{border:0}aside{position:fixed;width:244px;height:100dvh;background:#fff;border-right:1px solid var(--line);padding:32px 23px;display:flex;flex-direction:column}.brand{text-decoration:none;font:800 25px system-ui,sans-serif;color:var(--navy);letter-spacing:-1px;display:flex;align-items:center;gap:8px}.logo{background:var(--navy);color:#afda32;border-radius:11px;width:34px;height:38px;text-align:center;font-size:32px}.dot{color:#afda32;margin-left:-8px}.workspace{display:flex;align-items:center;gap:11px;border:1px solid var(--line);padding:13px 10px;border-radius:9px;margin:36px 0;font-size:13px;font-weight:600}.workspace small,.profile small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:4px}.workspace>span:last-child{margin-left:auto}.company,.avatar{background:#eaf1fb;color:#2b2c60;width:33px;height:33px;display:inline-grid;place-items:center;border-radius:9px;font-weight:700}.navlabel{font-size:10px;letter-spacing:1.8px;color:#8993a8;margin:0 12px 13px}nav button{width:100%;display:flex;align-items:center;gap:13px;background:none;color:#667085;padding:13px 14px;margin:4px 0;border-radius:7px;text-align:left;font-size:17px}nav button span{font-size:14px}nav button.active{background:var(--blue-soft);color:var(--navy);font-weight:700}nav b{margin-left:auto;font-size:10px;background:#dce8fa;border-radius:5px;padding:2px 6px}.aside-bottom{margin-top:auto}.tip{background:#eef3fc;padding:19px;border-radius:10px;margin-bottom:23px}.tip>span{display:block;color:#0878c9;font-size:25px;margin-bottom:10px}.tip strong{font:700 16px system-ui;line-height:1.6}.tip p{font-size:11px;color:#667085;line-height:1.6}.tip button{font-size:11px;background:none;color:var(--navy);padding:8px 0}.profile{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:11px;align-items:center;font-size:12px}.shell{margin-left:244px}header{height:78px;padding:0 42px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#667085}header i{margin:0 15px;color:#c8cede;font-style:normal}header b{color:#2b2c60;font-weight:500}.header-right{display:flex;align-items:center;gap:22px}.local{font-size:10px;color:#0878c9}.avatar{border-radius:50%;font-size:11px}main{padding:36px 42px;max-width:1640px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:700;color:#0878c9}h1{font:700 clamp(23px,2.1vw,32px) system-ui,sans-serif;letter-spacing:-1.1px;margin:10px 0}p{color:var(--muted);line-height:1.6;margin:6px 0}button.primary{background:var(--navy);color:#fff;padding:13px 19px;border-radius:7px;font-size:12px;font-weight:600;white-space:nowrap}.demo{font-size:11px;color:#356491;padding:10px 13px;background:#eaf1fb;border:1px solid #d9e6f7;border-radius:6px;margin-bottom:23px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.stats article{position:relative;background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;overflow:hidden}.stats article>span{font-size:11px;color:#667085;display:flex;justify-content:space-between;align-items:center}.stats i{display:grid;place-items:center;background:#eaf1fb;color:#0878c9;font-style:normal;font-size:17px;width:29px;height:29px;border-radius:7px}.stats i.amber{color:#ad8b40;background:#faf4e9}h2{font:700 25px system-ui;margin:14px 0 8px;letter-spacing:-.6px}.stats small{font-size:10px;color:#7d879a}.spark{position:absolute;right:15px;bottom:18px;color:#afda32;letter-spacing:3px;font-size:18px;opacity:.65}.middle{display:grid;grid-template-columns:1.55fr 1fr;gap:20px;margin:23px 0}.card{background:#fff;border:1px solid var(--line);border-radius:11px}.card-head{padding:23px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px}h3{font:700 15px system-ui;margin:0}.card-head p{font-size:11px;margin-top:5px}.tag{font-size:10px;border:1px solid var(--line);padding:7px 10px;border-radius:5px;color:#667085;white-space:nowrap}.chart-content{display:flex;align-items:center;justify-content:space-around;gap:22px;padding:3px 25px 27px}.donut{width:177px;height:177px;border-radius:50%;background:conic-gradient(#2b2c60 0 45%,#afda32 45% 73%,#0878c9 73% 91%,#e5e8f0 91%);display:grid;place-items:center;flex-shrink:0}.donut>div{width:138px;height:138px;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.donut small{font-size:8px;letter-spacing:1px;color:#7d879a}.donut strong{font:800 19px system-ui}.donut span{font-size:9px;color:#7d879a}#legend{min-width:155px}#legend>div{display:flex;gap:9px;align-items:center;font-size:11px;margin:17px 0}#legend em{width:8px;height:8px;border-radius:3px}#legend b{margin-left:auto;font-size:10px;color:#667085}.next-card{position:relative;overflow:hidden;border-radius:11px;background:#eef3fc;padding:26px 28px}.next-card h2{font-size:24px;line-height:1.45;margin:11px 0}.next-card p{max-width:235px;font-size:11px;color:#667085;position:relative;z-index:1}.next-card button{margin-top:18px;padding:11px 15px;background:#fff;border:1px solid #d9e6f7;border-radius:6px;font-size:11px;color:#2b2c60;position:relative;z-index:1}.next-card button span{margin-left:20px}.receipt-art{position:absolute;right:-16px;bottom:-17px;transform:rotate(-16deg);width:138px;height:170px;background:#f5f8ff;border:1px solid #d9e6f7;border-radius:10px;padding:18px;color:#9eb7dd;box-shadow:0 5px 20px #2b2c600a}.receipt-art span{font-size:30px;color:#0878c9;display:block}.receipt-art b{font-size:10px;display:block;margin:12px 0}.receipt-art div{font-size:15px;margin:7px 0}.text-button{background:none;color:var(--navy);font-size:11px}.toolbar{padding:0 24px 16px;display:flex;justify-content:space-between;gap:15px}.tabs{display:flex;gap:5px}.tabs button{background:none;font-size:11px;color:#667085;border-radius:5px;padding:8px 12px}.tabs .selected{color:var(--navy);background:#eaf1fb;font-weight:600}input,select,textarea{border:1px solid #dce2ee;border-radius:6px;padding:10px;background:white;color:#2b2c60;max-width:100%}#search{font-size:11px;width:200px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}th{background:#f6f8fc;font-size:8px;letter-spacing:1px;color:#7d879a;padding:13px 23px;font-weight:600}td{padding:16px 23px;border-bottom:1px solid #edf0f6;font-size:11px;color:#667085}td:first-child{display:flex;align-items:center;gap:12px;color:#2b2c60;font-weight:600}td small{display:block;font-size:9px;color:#7d879a;margin-top:4px;font-weight:400}.expense-icon{background:#eaf1fb;width:33px;height:35px;border-radius:8px;display:inline-grid;place-items:center;font-size:17px;color:#0878c9}.amount{font-weight:700;color:#2b2c60}.badge{font-size:9px;padding:5px 8px;border-radius:5px;background:#eef1f7;color:#667085}.badge.Pendiente{background:#fcf5e5;color:#b18b30}.badge.Aprobado{background:#eef7d6;color:#4d6119}.row-action{background:transparent;color:#0878c9;font-size:10px;padding:5px}.table-footer{display:flex;justify-content:space-between;padding:16px 24px;font-size:9px;color:#7d879a}footer{display:flex;justify-content:space-between;font-size:9px;color:#7d879a;padding:25px 0}footer b{color:#667085}dialog{border:1px solid var(--line);border-radius:15px;width:520px;max-width:94vw;padding:26px;box-shadow:0 20px 100px #2b2c6033}dialog::backdrop{background:#1b1c4566;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between}.modal-head h2{margin:8px 0 20px}.close{background:#eef1f7;border-radius:50%;width:28px;height:28px;font-size:20px}label{display:flex;flex-direction:column;gap:7px;font-size:12px;margin-bottom:17px}label small{color:#7d879a;font-size:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}form>.primary{width:100%}#formError{color:#b45140;font-size:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:13px 24px;border-radius:8px;box-shadow:0 4px 20px #0002;display:none;font-size:12px;z-index:10}.empty{text-align:center;padding:40px;color:#667085}.report-item{display:flex;justify-content:space-between;padding:20px 24px;border-top:1px solid var(--line);gap:15px}.report-item small{display:block;color:#667085;margin-top:5px}[hidden]{display:none!important}@media(min-width:1500px){main{padding-top:45px}.stats article{padding:25px}.middle{margin-top:28px}.chart-content{padding-bottom:35px}}@media(max-width:1150px){aside{width:205px;padding:25px 16px}.brand{font-size:22px}.shell{margin-left:205px}main{padding:28px 24px}header{padding:0 24px}.stats{gap:10px}.stats article{padding:15px}h2{font-size:21px}.spark{display:none}.chart-content{gap:15px;padding:10px 18px 25px}.donut{width:140px;height:140px}.donut>div{width:108px;height:108px}.donut strong{font-size:15px}.next-card{padding:24px}.receipt-art{opacity:.5}.middle{grid-template-columns:1.3fr 1fr}#legend{min-width:120px}td,th{padding-left:16px;padding-right:16px}}@media(max-width:800px){aside{width:100%;height:66px;bottom:0;top:auto;padding:5px 8px;z-index:3;border-top:1px solid var(--line)}aside>.brand,.workspace,.navlabel,.aside-bottom{display:none}nav{display:flex;justify-content:space-around}nav button{width:auto;flex:1;flex-direction:column;gap:3px;padding:5px;font-size:18px;margin:0}nav button span{font-size:10px}nav b{display:none}.shell{margin:0}header{height:62px;padding:0 20px}.local{display:none}main{padding:25px 18px 80px}h1{font-size:24px;max-width:260px}.page-heading{align-items:flex-start}.page-heading>div>p{font-size:12px}.page-heading>.primary{font-size:11px;padding:11px;margin-top:22px}.eyebrow{font-size:8px}.demo{font-size:10px;line-height:1.6}.stats{grid-template-columns:1fr 1fr}.stats article{padding:16px}.stats small{font-size:9px}.stats h2{font-size:23px}.middle{grid-template-columns:1fr}.next-card{min-height:230px}.receipt-art{right:25px;opacity:1;width:150px;height:175px}.next-card p{max-width:65%}.chart-content{justify-content:space-evenly;gap:20px}.donut{width:165px;height:165px}.donut>div{width:128px;height:128px}.card-head{padding:20px 16px}.toolbar{padding:0 16px 16px;flex-direction:column}.tabs{justify-content:space-between}#search{width:100%}footer{font-size:8px;gap:15px}.table-footer{padding:16px}.report-item{font-size:12px}.header-right{gap:0}}@media(prefers-reduced-motion:no-preference){button{transition:filter .15s,transform .15s}button:hover{filter:brightness(.95)}.stats article:hover{transform:translateY(-2px);transition:transform .2s}}
.signout{display:block;color:#667085;font-size:11px;margin:16px 0;text-decoration:none}button:disabled{opacity:.5;cursor:wait}.connection-error{background:#fff0e8;color:#98523a;border-color:#f2d4c0}.receipt-art{pointer-events:none}

button.signout{background:none;border:0;cursor:pointer;padding:4px 0}.login-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:420px;max-width:100%;padding:36px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 60px #2b2c6008}.login-card .brand{margin-bottom:30px}.login-card h1{font-size:25px;margin-bottom:10px}.login-card form{margin-top:28px}.login-card .primary{width:100%}.login-card .error{color:#a14837;font-size:12px;min-height:20px}.login-card .footnote{font-size:11px;margin-top:20px}.login-card label{font-size:12px}

/* Energitel palette: navy structure, blue details and lime actions. */
button.primary{background:var(--lime);color:var(--navy)}
aside{background:var(--navy);border-right-color:#37396f;color:#fff}
aside .brand{color:#fff}aside .logo{background:#fff;color:var(--navy)}
.workspace{border-color:#4b4e7d;background:#ffffff08}
.workspace small,.profile small{color:#c0c8e0}
aside .company,aside .avatar{background:#414577;color:#fff}
.navlabel{color:#aebbd9}nav button{color:#dce3f4}
nav button.active{background:var(--lime);color:var(--navy)}nav b{background:#dceea3;color:var(--navy)}
.tip{background:#373b70;color:#fff}.tip>span{color:var(--lime)}.tip p{color:#c0c8e0}.tip button{color:var(--lime)}
.profile{border-top-color:#4b4e7d}aside .signout{color:#dce3f4}
header{background:var(--navy);border-bottom-color:#37396f;color:#dce3f4}header b{color:#fff}header i{color:#aebbd9}header .local{color:#dceea3}header .avatar{background:#414577;color:#fff}header .signout{color:#fff}
.next-card{background:var(--navy);color:#fff}.next-card .eyebrow{color:var(--lime)}.next-card p{color:#dce3f4}.next-card button{background:var(--lime);border-color:var(--lime);color:var(--navy)}
.receipt-art{background:#373b70;border-color:#555b91;color:#c0c8e0}.receipt-art span{color:var(--lime)}
.login-card{border-top:5px solid var(--navy)}
button:focus-visible,a:focus-visible{outline:3px solid var(--blue)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);border-color:var(--blue)}
@media(max-width:800px){aside{border-top-color:#4b4e7d}}

.area-intro{padding:24px;margin-bottom:20px}.area-intro p{font-size:12px;max-width:800px;margin-top:10px}.area-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin-bottom:20px}.area-editor{padding:24px}.area-editor h3{margin-bottom:22px}.area-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-top:1px solid var(--line)}.area-row small{display:block;font-size:11px;color:var(--muted);margin-top:7px}.area-form-actions{display:flex;align-items:center;gap:15px}.form-hint{font-size:11px;color:var(--muted);margin:0 0 17px}#areaFormError{color:#a14837;font-size:12px;margin-bottom:15px}#areaMembers select{min-width:170px;font-size:12px}@media(max-width:800px){.area-layout{grid-template-columns:1fr}nav button span{font-size:9px}.area-intro{padding:20px}.area-form-actions{flex-wrap:wrap}}

dialog{width:660px;max-height:92dvh;overflow:auto}.expense-modes{display:flex;border-bottom:1px solid var(--line);margin-bottom:18px;gap:4px}.expense-modes button{background:transparent;padding:12px 16px;color:var(--muted);border-radius:7px 7px 0 0;font-size:12px}.expense-modes button[aria-selected=true]{color:var(--navy);background:var(--blue-soft);box-shadow:inset 0 -3px var(--lime);font-weight:700}.scan-info{padding:12px 14px;background:var(--blue-soft);color:var(--navy);border-radius:7px;font-size:12px;margin-bottom:15px}.scan-dropzone{border:1px dashed var(--blue);background:#f6f9ff;border-radius:9px;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;padding:23px 14px}.scan-dropzone.dragging{border:2px solid var(--blue);background:#eaf1fb}.scan-document{font-size:32px;color:var(--blue)}.scan-dropzone strong{font-size:14px;color:var(--navy)}.scan-dropzone>span:not(.scan-document){font-size:10px;color:var(--muted)}.scan-file-actions{display:flex;gap:20px;margin-top:5px}.scan-filename{font-size:11px;word-break:break-word;max-width:100%;color:var(--navy)}.scan-read{width:100%;margin:14px 0 11px}.scan-warnings{padding:12px 15px 12px 28px;background:#f7faec;color:#4d6119;border:1px solid #dceba9;border-radius:7px;font-size:11px;line-height:1.65;margin-bottom:18px}#scanStatus{min-height:18px}#scanTextDetails{margin-bottom:18px;font-size:11px;color:var(--muted)}#scanTextDetails summary{cursor:pointer;color:var(--blue)}#scanRawText{max-height:180px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#f6f8fc;padding:12px;border-radius:6px;font:11px monospace}#expenseAreaHint{padding-top:10px}.scan-file-actions button{font-size:12px}@media(max-width:800px){dialog{padding:20px}.expense-modes button{font-size:11px;padding:10px 12px}.scan-dropzone{padding:18px 12px}}

.brand-energitel{flex-direction:column;align-items:stretch;gap:10px;text-decoration:none}.brand-logo-panel{display:block;padding:9px;background:#fff;border-radius:9px;line-height:0}.energitel-logo{display:block;width:100%;height:auto;object-fit:contain}.brand-product{font:700 13px system-ui,sans-serif;letter-spacing:1.2px;color:var(--navy)}aside .brand-product{color:var(--lime);text-align:center}.login-card .brand-energitel{gap:12px;margin-bottom:25px}.login-card .brand-logo-panel{padding:0}.login-card .brand-product{font-size:16px;letter-spacing:1.3px;text-align:center}.mobile-brand{display:none}@media(max-width:800px){.mobile-brand{display:block;width:135px;flex-shrink:0;border-radius:5px;background:white;padding:5px;line-height:0}.mobile-brand img{display:block;width:100%;height:auto}.header-breadcrumb{display:none}header .header-right{gap:12px}}
nav{overflow-y:auto;min-height:0}.aside-bottom{padding-top:12px}.tip{display:none}.workspace{margin:25px 0}.suite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.suite-pad{padding:24px;margin-bottom:20px}.suite-pad h3{margin-bottom:14px}.suite-pad form{margin-top:18px}.suite-pad p{font-size:12px}.suite-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:15px 0}.suite-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:18px}.suite-tabs button{background:#eaf1fb;color:var(--navy);padding:11px 15px;border-radius:7px;white-space:nowrap}.suite-tabs button.selected{background:var(--navy);color:#fff}.suite-check{display:flex;flex-direction:row;align-items:center;gap:9px;font-size:12px}.suite-check input{width:16px;height:16px;accent-color:var(--navy)}.suite-list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}.suite-list-row p{font-size:11px}.suite-flow-row{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.suite-flow-row>b{grid-column:1/-1}.suite-notification{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;border-top:1px solid var(--line)}.suite-notification.unread{background:#f3f7ff}.suite-notification p{font-size:12px}.suite-notification small{font-size:10px;color:var(--muted)}.suite-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.suite-timeline article{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.suite-timeline small{display:block;color:var(--muted);margin:5px 0}.suite-timeline p{font-size:12px}.review-note{max-width:220px;white-space:normal;color:#9b5f24}.badge.Devuelto{background:#fff2dc;color:#805f20}.badge.Rechazado{background:#ffebe7;color:#a24034}.badge.Pagado{background:#eaf1fb;color:#2b2c60}.expense-check{width:15px;height:15px;accent-color:var(--navy)}.toolbar,.tabs{overflow-x:auto}.row-action{white-space:nowrap}.suite-batch-item{padding:20px 0;border-bottom:1px solid var(--line)}.suite-batch-item h3{margin-bottom:15px;word-break:break-word}#batchDialog{width:850px}#batchProgress{margin:16px 0;font-size:12px;color:var(--blue)}.offline-page{max-width:650px;margin:40px auto;padding:25px}.offline-page>.brand-logo-panel{max-width:300px;margin-bottom:25px}.offline-page form{margin-top:22px}#expenseDetails h3{margin-top:20px}#suiteDialog h3{margin:20px 0 12px}#integrationToken{font-family:monospace;font-size:12px}#reportList .report-item>div:last-child{display:flex;align-items:center;gap:10px}@media(max-width:1150px){.suite-stat-grid{grid-template-columns:1fr 1fr}.suite-stat-grid h2{font-size:20px}}@media(max-width:800px){aside{height:80px;padding:5px;overflow:auto}nav{width:max-content;min-width:100%;overflow:visible}nav button{min-width:72px;padding:7px 9px}nav button span{max-width:75px;white-space:normal;text-align:center;font-size:9px}.suite-grid,.suite-stat-grid{grid-template-columns:1fr}.suite-pad{padding:20px}.suite-flow-row{grid-template-columns:1fr}.suite-flow-row>b{grid-column:auto}.suite-notification{padding:18px}.suite-actions{gap:8px}.offline-page{margin:0 auto;padding:22px}main{padding-bottom:95px}}

.google-login{display:flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;border:1px solid #747775;border-radius:6px;background:#fff;color:#1f1f1f;font:500 14px system-ui,sans-serif;text-decoration:none;margin-top:24px}.google-login:hover{background:#f3f6fc}.google-login:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.login-divider{text-align:center;font-size:12px;margin:16px 0;color:var(--muted)}
