/* Seinto360 · Contabilidad · v68 */
.site-main--contabilidad { overflow: clip; background: #fff; }
.ct-page {
  --ct-ink: #08111c;
  --ct-copy: #4d5b6b;
  --ct-line: rgba(8, 40, 70, .11);
  --ct-blue: var(--si-blue, #0872be);
  --ct-orange: var(--si-orange, #ff9418);
  --ct-blue-soft: #edf7ff;
  --ct-orange-soft: #fff5e9;
  color: var(--ct-ink);
  background: #fff;
}
.ct-page *, .ct-page *::before, .ct-page *::after { box-sizing: border-box; }
.ct-section { padding: clamp(72px, 7vw, 112px) 0; }
.ct-section__head { max-width: 850px; margin-bottom: clamp(34px, 4vw, 56px); }
.ct-section__head--center { margin-inline: auto; text-align: center; }
.ct-section__head h2, .ct-copy h2, .ct-seo__surface h2, .ct-faq__grid h2, .ct-final h2 {
  margin: 0 0 20px; color: var(--ct-ink); font-size: clamp(2.3rem, 4.35vw, 4.6rem); font-weight: 700; line-height: .98; letter-spacing: -.06em;
}
.ct-section__head p, .ct-copy p, .ct-seo__surface p, .ct-final p { margin: 0 0 14px; color: var(--ct-copy); font-size: clamp(1rem, 1.18vw, 1.14rem); line-height: 1.72; }
.ct-eyebrow { display: inline-flex; align-items: center; margin-bottom: 18px; padding: 8px 13px; border: 1px solid rgba(8,114,190,.14); border-radius: 999px; background: linear-gradient(135deg, rgba(8,114,190,.09), rgba(255,148,24,.10)); color: var(--si-blue-dark, #075a98); font-size: 11px; font-weight: 850; line-height: 1; letter-spacing: .12em; text-transform: uppercase; }
.ct-closing { display: block; margin-top: 24px; color: #122234; font-size: 1.03rem; line-height: 1.5; }
.ct-center-closing { margin: 28px 0 0; text-align: center; color: #122234; }
.ct-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.ct-actions--center { justify-content: center; }
.ct-copy { max-width: 650px; min-width: 0; }
.ct-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.ct-pills span { padding: 9px 12px; border: 1px solid #e0e5e9; border-radius: 999px; background: #fafaf8; color: #364453; font-size: 12.5px; font-weight: 700; line-height: 1.2; }

/* Hero */
.ct-hero { display: flex; align-items: center; min-height: clamp(700px, 86vh, 900px); padding: 0 0 clamp(54px, 6vw, 82px); background: #fff; }
.ct-hero__grid { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(430px, .97fr); align-items: center; gap: clamp(42px, 6vw, 88px); }
.ct-hero__copy { max-width: 700px; }
.ct-hero__copy h1 { max-width: 14ch; margin: 0 0 24px; color: #05070b; font-size: clamp(3rem, 5vw, 5rem); font-weight: 700; line-height: .96; letter-spacing: -.068em; }
.ct-hero__copy p { max-width: 65ch; margin: 0 0 13px; color: #364252; font-size: clamp(1rem, 1.15vw, 1.16rem); line-height: 1.72; }
.ct-hero__visual { position: relative; min-height: 610px; overflow: hidden; padding: 28px; border: 1px solid rgba(8,114,190,.14); border-radius: 32px; background: radial-gradient(circle at 0 0, rgba(8,114,190,.13), transparent 35%), radial-gradient(circle at 100% 100%, rgba(255,148,24,.14), transparent 35%), linear-gradient(135deg, #f5faff, #fffaf3); box-shadow: 0 28px 72px rgba(16,39,62,.12); }
.ct-hero__toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 17px; border: 1px solid rgba(8,114,190,.10); border-radius: 16px; background: rgba(255,255,255,.92); }
.ct-hero__toolbar span { color: var(--ct-blue); font-size: .78rem; font-weight: 800; }
.ct-hero__toolbar strong { color: #243343; font-size: .82rem; }
.ct-hero__stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; margin-top: 14px; }
.ct-hero__stats article { min-height: 110px; padding: 17px; border: 1px solid rgba(8,114,190,.10); border-radius: 17px; background: rgba(255,255,255,.92); }
.ct-hero__stats small, .ct-hero__stats strong, .ct-hero__stats em { display: block; }
.ct-hero__stats small { color: #728091; font-size: .72rem; }
.ct-hero__stats strong { margin-top: 12px; color: #102235; font-size: 1.35rem; letter-spacing: -.035em; }
.ct-hero__stats em { margin-top: 4px; color: #26804d; font-size: .7rem; font-style: normal; font-weight: 800; }
.ct-hero__workorder { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 14px; padding: 20px; border: 1px solid rgba(8,114,190,.12); border-radius: 19px; background: #fff; box-shadow: 0 12px 30px rgba(15,35,55,.05); }
.ct-hero__workorder span, .ct-hero__workorder strong, .ct-hero__workorder small { display: block; }
.ct-hero__workorder span { color: var(--ct-blue); font-size: .72rem; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.ct-hero__workorder strong { margin-top: 6px; color: #102235; font-size: 1rem; }
.ct-hero__workorder small { margin-top: 4px; color: #6c7988; }
.ct-hero__workorder b { flex: 0 0 auto; padding: 9px 12px; border-radius: 999px; background: #eaf7ef; color: #257448; font-size: .68rem; }
.ct-hero__timeline { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: 7px; margin-top: 17px; }
.ct-hero__timeline div { position: relative; min-width: 0; min-height: 100px; padding: 13px 8px; border: 1px solid rgba(8,114,190,.11); border-radius: 14px; background: rgba(255,255,255,.82); text-align: center; }
.ct-hero__timeline b { display: grid; place-items: center; width: 30px; height: 30px; margin: 0 auto 10px; border-radius: 9px; background: var(--ct-blue-soft); color: var(--si-blue-dark, #075a98); font-size: .68rem; }
.ct-hero__timeline div:nth-child(even) b { background: var(--ct-orange-soft); color: var(--si-orange-dark, #e67800); }
.ct-hero__timeline span { color: #26384a; font-size: .69rem; font-weight: 750; line-height: 1.2; }

/* Benefits */
.ct-benefits { background: #f4f3ef; }
.ct-benefits__surface { padding: clamp(36px,5vw,68px); border: 1px solid rgba(11,28,46,.06); border-radius: 32px; background: #fff; box-shadow: 0 20px 55px rgba(21,36,51,.045); }
.ct-benefits__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.ct-benefit { min-height: 260px; padding: 27px; border: 1px solid #e1ded7; border-radius: 22px; background: #f9f8f5; }
.ct-benefit > span { display: inline-grid; place-items: center; width: 48px; height: 48px; margin-bottom: 34px; border-radius: 13px; background: linear-gradient(135deg,#e5f3ff,#fff0de); color: var(--si-blue-dark,#075a98); font-size: 12px; font-weight: 900; }
.ct-benefit h3, .ct-ai__grid h3, .ct-resource-grid h3, .ct-business__grid h3, .ct-diff__grid h3 { margin: 0 0 11px; color: var(--ct-ink); font-size: clamp(1.3rem,1.8vw,1.75rem); line-height: 1.08; letter-spacing: -.035em; }
.ct-benefit p, .ct-ai__grid p, .ct-resource-grid p, .ct-business__grid p, .ct-diff__grid p { margin: 0; color: #4e5968; line-height: 1.62; }

/* Common layouts */
.ct-split { display: grid; grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr); align-items: center; gap: clamp(46px,6vw,92px); }
.ct-flow { display: grid; gap: 10px; }
.ct-flow__step { display: grid; grid-template-columns: 46px minmax(0,1fr); align-items: center; gap: 14px; min-height: 62px; padding: 9px 18px 9px 9px; border: 1px solid #e1e5e9; border-radius: 17px; background: #fff; box-shadow: 0 8px 22px rgba(21,39,57,.05); }
.ct-flow__step span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--ct-blue-soft); color: var(--si-blue-dark,#075a98); font-size: 12px; font-weight: 900; }
.ct-flow__step:nth-child(even) span { background: var(--ct-orange-soft); color: var(--si-orange-dark,#e67800); }
.ct-flow__step strong { color: #172536; font-size: 1rem; }
.ct-feature--blue { background: linear-gradient(180deg,#fff 0%,#f2f8fd 52%,#fff 100%); }
.ct-feature--orange { background: linear-gradient(180deg,#fff 0%,#fff7ee 52%,#fff 100%); }
.ct-feature__grid { display: grid; grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); align-items: center; gap: clamp(44px,6vw,90px); }
.ct-feature__grid--reverse .ct-copy { order: 2; }
.ct-feature__grid--reverse > :not(.ct-copy) { order: 1; }

/* AI */
.ct-ai { padding-top: clamp(42px,5vw,72px); }
.ct-ai__surface { overflow: hidden; padding: clamp(42px,6vw,74px); border: 1px solid rgba(8,114,190,.14); border-radius: 32px; background: radial-gradient(circle at 0 0,rgba(8,114,190,.16),transparent 35%), radial-gradient(circle at 100% 100%,rgba(255,148,24,.15),transparent 33%), #f8fbfd; }
.ct-ai__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.ct-ai__grid article { min-height: 230px; padding: 26px; border: 1px solid rgba(8,114,190,.12); border-radius: 21px; background: rgba(255,255,255,.9); }
.ct-ai__grid article > span { display: inline-grid; place-items: center; width: 42px; height: 42px; margin-bottom: 30px; border-radius: 12px; background: linear-gradient(135deg,var(--ct-blue),var(--ct-orange)); color: #fff; font-size: 11px; font-weight: 900; }

/* Order card */
.ct-order-card { padding: 25px; border: 1px solid rgba(8,114,190,.13); border-radius: 27px; background: #fff; box-shadow: 0 24px 64px rgba(13,34,55,.09); }
.ct-order-card__head { display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.ct-order-card__head span { color: var(--ct-blue); font-weight: 850; }
.ct-order-card__head b { padding: 8px 11px; border-radius: 999px; background: #eaf7ef; color: #26744a; font-size: .72rem; }
.ct-order-card h3 { margin: 24px 0 18px; font-size: 1.6rem; letter-spacing: -.04em; }
.ct-order-card__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.ct-order-card__grid span { padding: 14px; border-radius: 15px; background: #f7f9fb; }
.ct-order-card__grid small, .ct-order-card__grid strong { display: block; }
.ct-order-card__grid small { color: #748191; font-size: .72rem; }
.ct-order-card__grid strong { margin-top: 5px; color: #1a2c3e; }
.ct-progress { height: 9px; margin: 22px 0 10px; overflow: hidden; border-radius: 999px; background: #e9eef2; }
.ct-progress i { display: block; width: 72%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--ct-blue),#4fa4e4); }
.ct-order-card > small { color: #6b7887; }

/* Time */
.ct-time { padding-block: clamp(52px,6vw,88px); }
.ct-time__surface { display: grid; grid-template-columns: minmax(0,1.18fr) minmax(300px,.82fr); align-items: center; gap: clamp(36px,6vw,78px); padding: clamp(38px,5vw,64px); border: 1px solid rgba(12,34,55,.06); border-radius: 30px; background: #f3f2ee; }
.ct-timer { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 28px; border-radius: 28px; background: #0c1927; box-shadow: 0 24px 62px rgba(8,25,44,.18); }
.ct-timer > span, .ct-timer > strong, .ct-timer > button { grid-column: 1 / -1; }
.ct-timer > span { color: #9eb0c3; font-size: .72rem; font-weight: 850; letter-spacing: .1em; }
.ct-timer > strong { color: #fff; font-size: clamp(3rem,5vw,5rem); line-height: 1; letter-spacing: -.055em; }
.ct-timer > div { padding: 16px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.06); }
.ct-timer b, .ct-timer small { display: block; }
.ct-timer b { color: #fff; font-size: 1.25rem; }
.ct-timer small { margin-top: 6px; color: #91a5b8; }
.ct-timer button { appearance: none; border: 0; border-radius: 14px; padding: 14px; background: var(--ct-orange); color: #fff; font-weight: 800; }

/* Profit */
.ct-profit__surface { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(42px,6vw,86px); }
.ct-profit { display: grid; grid-template-columns: 1fr auto 1fr; gap: 10px; align-items: center; padding: 28px; border: 1px solid rgba(8,114,190,.12); border-radius: 28px; background: linear-gradient(135deg,#f5faff,#fff8ef); box-shadow: 0 22px 58px rgba(15,35,55,.07); }
.ct-profit article { padding: 20px; border-radius: 18px; background: #fff; text-align: center; }
.ct-profit article small, .ct-profit article strong { display: block; }
.ct-profit article small { color: #697888; }
.ct-profit article strong { margin-top: 8px; font-size: 1.75rem; letter-spacing: -.04em; }
.ct-profit > span { font-size: .72rem; font-weight: 900; color: #738090; }
.ct-profit__result { grid-column: 1 / -1; padding: 22px; border-radius: 18px; background: #0e1d2c; text-align: center; }
.ct-profit__result small, .ct-profit__result strong, .ct-profit__result em { display: block; }
.ct-profit__result small { color: #aab9c8; }
.ct-profit__result strong { margin-top: 7px; color: #a5f08b; font-size: 2.2rem; }
.ct-profit__result em { margin-top: 6px; color: #7f94a7; font-size: .78rem; font-style: normal; }

/* Status */
.ct-status { padding-top: clamp(40px,5vw,70px); }
.ct-status__surface { padding: clamp(40px,5vw,66px); border: 1px solid rgba(8,114,190,.12); border-radius: 32px; background: #f9fbfd; }
.ct-status-track { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 8px; }
.ct-status-track div { min-height: 125px; padding: 14px; border: 1px solid #e1e6ea; border-radius: 17px; background: #fff; }
.ct-status-track span { display: grid; place-items: center; width: 34px; height: 34px; margin-bottom: 18px; border-radius: 10px; background: var(--ct-blue-soft); color: var(--si-blue-dark,#075a98); font-size: .72rem; font-weight: 900; }
.ct-status-track div:nth-child(4) { border-color: rgba(255,148,24,.25); background: #fffaf3; }
.ct-status-track div:nth-child(4) span { background: var(--ct-orange-soft); color: var(--si-orange-dark,#e67800); }
.ct-status-track strong { color: #203244; font-size: .82rem; line-height: 1.25; }

/* Technicians */
.ct-tech-grid { display: grid; gap: 11px; padding: 24px; border-radius: 27px; background: #0c1927; box-shadow: 0 24px 62px rgba(8,25,44,.16); }
.ct-tech-grid article { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 14px; min-height: 78px; padding: 14px 16px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.06); }
.ct-avatar { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: linear-gradient(135deg,var(--ct-blue),#2f91d8); color: #fff; font-size: .75rem; font-weight: 900; }
.ct-tech-grid strong, .ct-tech-grid small { display: block; }
.ct-tech-grid strong { color: #fff; }
.ct-tech-grid small { margin-top: 4px; color: #8ea1b4; }
.ct-tech-grid article > span { padding: 8px 11px; border-radius: 999px; background: rgba(159,232,112,.10); color: #c9edb4; font-size: .8rem; font-weight: 800; }

/* Compare */
.ct-compare { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.ct-compare article { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 14px; align-items: center; min-height: 120px; padding: 20px; border: 1px solid rgba(8,114,190,.11); border-radius: 20px; background: #fff; box-shadow: 0 12px 30px rgba(15,35,55,.045); }
.ct-compare article > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--ct-blue-soft); color: var(--si-blue-dark,#075a98); font-weight: 900; }
.ct-compare small, .ct-compare strong { display: block; }
.ct-compare small { color: #758292; }
.ct-compare strong { margin-top: 6px; color: #152536; font-size: 1.25rem; }
.ct-compare .is-alert { background: #fff8ee; border-color: rgba(255,148,24,.22); }
.ct-compare .is-alert > span { background: var(--ct-orange-soft); color: var(--si-orange-dark,#e67800); }

/* Periodic/calendar */
.ct-periodic { padding-block: clamp(52px,6vw,88px); }
.ct-periodic__surface { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.9fr); align-items: center; gap: clamp(38px,6vw,78px); padding: clamp(40px,5vw,66px); border-radius: 32px; background: #f3f2ee; }
.ct-calendar { overflow: hidden; padding: 24px; border: 1px solid rgba(8,114,190,.12); border-radius: 26px; background: #fff; box-shadow: 0 20px 50px rgba(15,35,55,.06); }
.ct-calendar__head { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 20px; }
.ct-calendar__head strong { font-size: 1.15rem; }
.ct-calendar__head span { color: #758292; font-size: .8rem; }
.ct-calendar__grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 7px; }
.ct-calendar__grid span { display: grid; place-items: center; aspect-ratio: 1; border-radius: 10px; background: #f7f9fb; color: #415164; font-size: .78rem; }
.ct-calendar__grid .has-job { background: var(--ct-blue); color: #fff; font-weight: 900; box-shadow: 0 8px 18px rgba(8,114,190,.18); }
.ct-calendar__note { display: flex; gap: 10px; margin-top: 18px; padding: 14px; border-radius: 14px; background: #fff7ec; color: #465465; font-size: .82rem; }
.ct-calendar__note b { color: var(--si-orange-dark,#e67800); }

/* Checklist */
.ct-checklist { display: grid; gap: 10px; padding: 24px; border: 1px solid rgba(8,114,190,.12); border-radius: 28px; background: #fff; box-shadow: 0 24px 60px rgba(15,35,55,.07); }
.ct-checklist label { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 13px; min-height: 68px; padding: 12px 14px; border-radius: 15px; background: #f8fafb; }
.ct-checklist label > span { display: grid; place-items: center; width: 34px; height: 34px; border: 2px solid #d8e0e6; border-radius: 10px; color: #fff; font-weight: 900; }
.ct-checklist label > span.is-done { border-color: #32a765; background: #32a765; }
.ct-checklist strong { color: #1c2e40; }
.ct-checklist small { color: #748190; }

/* Resource cards */
.ct-resource-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; }
.ct-resource-grid article { min-height: 205px; padding: 24px; border: 1px solid #e1e4e6; border-radius: 21px; background: #fff; box-shadow: 0 12px 30px rgba(15,35,55,.04); }
.ct-resource-grid article:nth-child(3n+1) { background: #eef7fd; }
.ct-resource-grid article:nth-child(3n) { background: #fff5e9; }
.ct-resource-grid article > span { display: inline-grid; place-items: center; width: 40px; height: 40px; margin-bottom: 32px; border-radius: 11px; background: rgba(8,114,190,.09); color: var(--si-blue-dark,#075a98); font-size: .72rem; font-weight: 900; }

/* Assets tree */
.ct-assets__surface { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(42px,6vw,86px); padding: clamp(40px,5vw,68px); border: 1px solid rgba(8,114,190,.12); border-radius: 32px; background: linear-gradient(135deg,#f4faff,#fff9f1); }
.ct-tree { display: grid; gap: 10px; }
.ct-tree > div { display: grid; grid-template-columns: 44px minmax(0,1fr); align-items: center; gap: 14px; min-height: 68px; padding: 10px 16px 10px 10px; border: 1px solid rgba(8,114,190,.11); border-radius: 16px; background: #fff; box-shadow: 0 10px 24px rgba(15,35,55,.04); }
.ct-tree b { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: var(--ct-blue-soft); color: var(--si-blue-dark,#075a98); font-size: .72rem; }
.ct-tree .level-2 { margin-left: 8%; }.ct-tree .level-3 { margin-left: 16%; }.ct-tree .level-4 { margin-left: 24%; }
.ct-tree .level-4 b { background: var(--ct-orange-soft); color: var(--si-orange-dark,#e67800); }

/* Dashboard */
.ct-dashboard { background: #f4f3ef; }
.ct-dashboard__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.ct-dashboard__grid > article { min-height: 145px; padding: 22px; border: 1px solid #e0ddd6; border-radius: 20px; background: #fff; }
.ct-dashboard__grid small, .ct-dashboard__grid strong, .ct-dashboard__grid span { display: block; }
.ct-dashboard__grid small { color: #758190; }
.ct-dashboard__grid > article strong { margin-top: 18px; color: #102235; font-size: 2rem; letter-spacing: -.05em; }
.ct-dashboard__grid > article span { margin-top: 5px; color: #4d956b; font-size: .78rem; }
.ct-dashboard__list { grid-column: 1 / -1; overflow: hidden; border: 1px solid #e0ddd6; border-radius: 20px; background: #fff; }
.ct-dashboard__list > div { display: grid; grid-template-columns: 110px minmax(0,1fr) auto; gap: 16px; align-items: center; min-height: 64px; padding: 12px 18px; border-bottom: 1px solid #edf0f2; }
.ct-dashboard__list > div:last-child { border-bottom: 0; }
.ct-dashboard__list span { color: var(--ct-blue); font-size: .78rem; font-weight: 800; }
.ct-dashboard__list strong { color: #213244; }
.ct-dashboard__list em { padding: 7px 10px; border-radius: 999px; background: #f0f5f8; color: #607080; font-size: .72rem; font-style: normal; }

/* Devices */
.ct-devices { position: relative; min-height: 430px; }
.ct-desktop { position: absolute; inset: 34px 50px 55px 0; overflow: hidden; border: 7px solid #14283b; border-radius: 22px; background: #fff; box-shadow: 0 24px 60px rgba(15,35,55,.12); }
.ct-device-bar { height: 28px; background: #14283b; }
.ct-device-body { padding: 20px; }
.ct-device-body > span { color: var(--ct-blue); font-size: .72rem; font-weight: 850; }.ct-device-body > strong { display: block; margin: 8px 0 20px; font-size: 1.25rem; }
.ct-device-body > div { height: 48px; margin-bottom: 10px; border-radius: 12px; background: linear-gradient(90deg,#eef5f9,#f8fafb); }
.ct-phone { position: absolute; right: 0; bottom: 0; width: 190px; min-height: 330px; padding: 38px 18px 18px; border: 7px solid #0e1d2c; border-radius: 30px; background: linear-gradient(180deg,#f7fbfd,#fff); box-shadow: 0 22px 48px rgba(15,35,55,.18); }
.ct-phone__notch { position: absolute; top: 9px; left: 50%; width: 70px; height: 18px; transform: translateX(-50%); border-radius: 999px; background: #0e1d2c; }
.ct-phone span, .ct-phone strong, .ct-phone b, .ct-phone small { display: block; }
.ct-phone span { color: var(--ct-blue); font-size: .72rem; font-weight: 850; }.ct-phone strong { margin-top: 10px; color: #193044; }.ct-phone b { margin: 38px 0 30px; font-size: 2.4rem; letter-spacing: -.05em; }.ct-phone small { padding: 12px; border-radius: 12px; background: var(--ct-blue); color: #fff; text-align: center; font-weight: 800; }

/* Billing */
.ct-billing { padding-top: clamp(40px,5vw,70px); }
.ct-billing__surface { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(42px,6vw,86px); padding: clamp(40px,5vw,68px); border: 1px solid rgba(8,114,190,.12); border-radius: 32px; background: #f3f2ee; }
.ct-billing-flow { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.ct-billing-flow div { min-height: 105px; padding: 18px; border-radius: 18px; background: #fff; border: 1px solid rgba(8,114,190,.10); }
.ct-billing-flow span, .ct-billing-flow strong { display: block; }.ct-billing-flow span { color: var(--ct-blue); font-size: .72rem; font-weight: 900; }.ct-billing-flow strong { margin-top: 20px; color: #1b2d3f; }
.ct-billing-flow div:last-child { background: #fff5e9; }

/* Automation */
.ct-automation { padding-top: clamp(38px,5vw,66px); }
.ct-automation__surface { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(38px,6vw,82px); align-items: center; padding: clamp(42px,5vw,68px); border-radius: 32px; background: #0b1724; box-shadow: 0 26px 70px rgba(6,19,32,.14); }
.ct-automation .ct-copy h2, .ct-automation .ct-copy p, .ct-automation .ct-closing { color: #fff; }
.ct-automation .ct-eyebrow { border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.07); color: #bfe3ff; }
.ct-automation__examples { display: grid; gap: 12px; align-content: start; }
.ct-automation__examples > span { display: grid; grid-template-columns: 48px minmax(0,1fr); align-items: center; gap: 14px; min-height: 74px; padding: 12px 18px 12px 12px; border: 1px solid rgba(255,255,255,.11); border-radius: 18px; background: rgba(255,255,255,.07); color: #f5f8fc; font-size: .96rem; font-weight: 700; line-height: 1.35; box-shadow: inset 0 1px 0 rgba(255,255,255,.04); }
.ct-automation__examples > span b { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(255,148,24,.16); color: #ffb45d; font-size: .76rem; font-weight: 900; }

/* Metrics / BI */
.ct-metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.ct-metric-grid article { min-height: 145px; padding: 20px; border: 1px solid rgba(8,114,190,.11); border-radius: 19px; background: #fff; box-shadow: 0 12px 30px rgba(15,35,55,.045); }
.ct-metric-grid span { display: inline-grid; place-items: center; width: 38px; height: 38px; margin-bottom: 26px; border-radius: 11px; background: var(--ct-blue-soft); color: var(--si-blue-dark,#075a98); font-size: .7rem; font-weight: 900; }
.ct-metric-grid article:nth-child(even) span { background: var(--ct-orange-soft); color: var(--si-orange-dark,#e67800); }
.ct-metric-grid strong { display: block; color: #1d2e3f; }
.ct-bi__surface { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(42px,6vw,86px); align-items: center; padding: clamp(40px,5vw,68px); border: 1px solid rgba(8,114,190,.12); border-radius: 32px; background: linear-gradient(135deg,#f5faff,#fff9f2); }
.ct-bi__chart { padding: 24px; border: 1px solid rgba(8,114,190,.11); border-radius: 24px; background: #fff; box-shadow: 0 20px 50px rgba(15,35,55,.05); }
.ct-bi__bars { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 8px; align-items: end; min-height: 230px; padding: 16px 10px 0; border-bottom: 1px solid #dfe5e9; }
.ct-bi__bars span { position: relative; height: var(--h); min-height: 30px; border-radius: 8px 8px 0 0; background: linear-gradient(180deg,#39a0ea,var(--ct-blue)); }
.ct-bi__bars span:nth-child(even) { background: linear-gradient(180deg,#ffb560,var(--ct-orange)); }
.ct-bi__bars b { position: absolute; top: -23px; left: 50%; transform: translateX(-50%); color: #6c7987; font-size: .65rem; }
.ct-bi__legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 14px; color: #71808f; font-size: .72rem; }
.ct-kpis { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 18px; }
.ct-kpis article { padding: 14px; border-radius: 14px; background: #f6f8fa; }.ct-kpis strong,.ct-kpis small { display: block; }.ct-kpis strong { font-size: 1.2rem; }.ct-kpis small { margin-top: 4px; color: #7a8795; }

/* Business / ecosystem / differentiators */
.ct-business { background: #f5f4f0; }
.ct-business__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.ct-business__grid article { min-height: 215px; padding: 25px; border: 1px solid #dfdcd5; border-radius: 22px; background: #fff; }
.ct-business__grid article:nth-child(1), .ct-business__grid article:nth-child(5) { background: #edf7fd; }
.ct-business__grid article:nth-child(3), .ct-business__grid article:nth-child(7) { background: #fff5e9; }
.ct-ecosystem__surface { display: grid; grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); align-items: center; gap: clamp(40px,6vw,86px); padding: clamp(40px,5vw,68px); border: 1px solid rgba(8,114,190,.12); border-radius: 32px; background: radial-gradient(circle at 100% 0,rgba(255,148,24,.11),transparent 35%), radial-gradient(circle at 0 100%,rgba(8,114,190,.11),transparent 35%), #fbfdff; }
.ct-ecosystem__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.ct-ecosystem__grid span { display: grid; place-items: center; min-height: 64px; padding: 10px; border: 1px solid #e1e5e8; border-radius: 15px; background: #fff; color: #263647; text-align: center; font-size: 12.5px; font-weight: 750; }
.ct-ecosystem__grid .is-primary { border-color: transparent; background: linear-gradient(135deg,var(--ct-blue),#2795e1); color: #fff; box-shadow: 0 14px 30px rgba(8,114,190,.18); }
.ct-ecosystem__grid .is-ai { border-color: transparent; background: linear-gradient(135deg,var(--ct-blue),var(--ct-orange)); color: #fff; }
.ct-diff { background: #f5f4f0; }
.ct-diff__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; }
.ct-diff__grid article { min-height: 225px; padding: 24px; border: 1px solid #dedbd4; border-radius: 21px; background: #fff; }
.ct-diff__grid article:nth-child(2), .ct-diff__grid article:nth-child(6) { background: #eaf5fd; }.ct-diff__grid article:nth-child(4), .ct-diff__grid article:nth-child(7) { background: #fff3e4; }
.ct-diff__grid article > span { display: inline-grid; place-items: center; width: 40px; height: 40px; margin-bottom: 28px; border-radius: 11px; background: rgba(8,114,190,.08); color: var(--si-blue-dark,#075a98); font-size: .7rem; font-weight: 900; }

/* SEO, FAQ, final */
.ct-seo__surface { max-width: 1040px; margin-inline: auto; padding: clamp(38px,5vw,66px); border: 1px solid rgba(14,32,50,.06); border-radius: 30px; background: #f3f2ee; }
.ct-seo__surface p { max-width: 80ch; }
.ct-faq { padding-top: clamp(46px,5vw,72px); }
.ct-faq__grid { display: grid; grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr); align-items: start; gap: clamp(44px,6vw,86px); }
.ct-faq__list { border-top: 1px solid #dfe2e4; }
.ct-faq details { border-bottom: 1px solid #dfe2e4; }
.ct-faq summary { position: relative; padding: 21px 42px 21px 0; cursor: pointer; list-style: none; color: #111a24; font-size: 1.03rem; font-weight: 750; line-height: 1.4; }
.ct-faq summary::-webkit-details-marker { display: none; }.ct-faq summary::after { content: "+"; position: absolute; top: 16px; right: 4px; color: var(--ct-blue); font-size: 1.55rem; font-weight: 400; }.ct-faq details[open] summary::after { content: "−"; }.ct-faq details p { margin: 0; padding: 0 46px 21px 0; color: #536071; line-height: 1.7; }
.ct-final { padding: clamp(80px,8vw,112px) 0 clamp(90px,9vw,128px); text-align: center; }
.ct-final__surface { max-width: 930px; padding: clamp(42px,6vw,72px); border: 1px solid rgba(8,114,190,.12); border-radius: 32px; background: radial-gradient(circle at 0 0,rgba(8,114,190,.14),transparent 34%), radial-gradient(circle at 100% 100%,rgba(255,148,24,.15),transparent 34%), #fbfdff; }
.ct-final p { max-width: 740px; margin-inline: auto; }

/* Reveal */
[data-ct-reveal] { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s cubic-bezier(.2,.72,.22,1); }
[data-ct-reveal].is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) { [data-ct-reveal] { opacity: 1; transform: none; transition: none; } }

/* Responsive */
@media (max-width: 1100px) {
  .ct-hero__grid, .ct-split, .ct-feature__grid, .ct-profit__surface, .ct-time__surface, .ct-periodic__surface, .ct-assets__surface, .ct-billing__surface, .ct-automation__surface, .ct-bi__surface, .ct-ecosystem__surface, .ct-faq__grid { grid-template-columns: 1fr; }
  .ct-feature__grid--reverse .ct-copy, .ct-feature__grid--reverse > :not(.ct-copy) { order: initial; }
  .ct-copy { max-width: 800px; }
  .ct-hero__visual { width: min(100%, 780px); margin-inline: auto; }
  .ct-resource-grid, .ct-diff__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ct-business__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ct-status-track { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .ct-section { padding: 64px 0; }
  .ct-hero { min-height: auto; padding: 0 0 58px; }
  .ct-hero__grid { grid-template-columns: 1fr; gap: 36px; }
  .ct-hero__copy h1 { max-width: none; font-size: clamp(2.65rem,11.5vw,4.45rem); }
  .ct-hero__visual { min-height: 0; }
  .ct-hero__timeline { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .ct-benefits__grid, .ct-ai__grid { grid-template-columns: 1fr; }
  .ct-status-track { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ct-dashboard__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ct-dashboard__list { grid-column: 1 / -1; }
  .ct-ecosystem__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .ct-actions { flex-direction: column; align-items: stretch; }.ct-actions .si-button { width: 100%; }
  .ct-hero__visual, .ct-benefits__surface, .ct-ai__surface, .ct-time__surface, .ct-periodic__surface, .ct-assets__surface, .ct-status__surface, .ct-billing__surface, .ct-automation__surface, .ct-bi__surface, .ct-ecosystem__surface, .ct-seo__surface, .ct-final__surface { padding: 24px 18px; border-radius: 23px; }
  .ct-hero__stats { grid-template-columns: 1fr; }.ct-hero__timeline { grid-template-columns: repeat(2,minmax(0,1fr)); }.ct-hero__workorder { align-items: flex-start; flex-direction: column; }
  .ct-order-card__grid, .ct-compare, .ct-billing-flow, .ct-resource-grid, .ct-metric-grid, .ct-business__grid, .ct-ecosystem__grid, .ct-diff__grid { grid-template-columns: 1fr; }
  .ct-timer { grid-template-columns: 1fr; }.ct-timer > span, .ct-timer > strong, .ct-timer > button { grid-column: auto; }
  .ct-profit { grid-template-columns: 1fr; }.ct-profit > span { text-align: center; }.ct-profit__result { grid-column: auto; }
  .ct-tech-grid { padding: 16px; }.ct-tech-grid article { grid-template-columns: 44px minmax(0,1fr); }.ct-tech-grid article > span { grid-column: 1 / -1; justify-self: start; }
  .ct-calendar__grid { grid-template-columns: repeat(7,minmax(0,1fr)); gap: 4px; }.ct-calendar { padding: 16px; }
  .ct-checklist label { grid-template-columns: 38px minmax(0,1fr); }.ct-checklist label small { grid-column: 2; }
  .ct-dashboard__grid { grid-template-columns: 1fr; }.ct-dashboard__list > div { grid-template-columns: 1fr; gap: 6px; padding: 15px; }.ct-dashboard__list em { justify-self: start; }
  .ct-devices { min-height: 390px; }.ct-desktop { right: 20px; }.ct-phone { width: 160px; min-height: 290px; }
  .ct-kpis { grid-template-columns: 1fr; }.ct-bi__bars { min-height: 190px; }
  .ct-tree .level-2 { margin-left: 4%; }.ct-tree .level-3 { margin-left: 8%; }.ct-tree .level-4 { margin-left: 12%; }
  .ct-faq summary { padding-right: 34px; }
}

/* v68 · Visuales específicos de Contabilidad --------------------------- */
.ct-finance-dashboard { min-height: 620px; }
.ct-finance-dashboard__ledger { margin-top: 14px; overflow: hidden; border: 1px solid rgba(8,114,190,.11); border-radius: 18px; background: rgba(255,255,255,.94); }
.ct-finance-dashboard__head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px 17px; border-bottom:1px solid #e8edf1; }
.ct-finance-dashboard__head span { color:#1b2d40; font-weight:800; }
.ct-finance-dashboard__head b { padding:7px 10px; border-radius:999px; background:#eaf7ef; color:#26744a; font-size:.7rem; }
.ct-finance-dashboard__row { display:grid; grid-template-columns:72px minmax(0,1fr) auto 54px; align-items:center; gap:12px; padding:12px 16px; border-bottom:1px solid #edf1f4; color:#4d5b6b; font-size:.78rem; }
.ct-finance-dashboard__row:last-child { border-bottom:0; }
.ct-finance-dashboard__row code { color:var(--ct-blue); font:700 .75rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; }
.ct-finance-dashboard__row strong { color:#142638; white-space:nowrap; }
.ct-finance-dashboard__row em { font-style:normal; color:#738090; }

.ct-ledger-card { overflow:hidden; border:1px solid rgba(8,114,190,.12); border-radius:26px; background:#fff; box-shadow:0 24px 60px rgba(15,35,55,.08); }
.ct-ledger-card__top { display:flex; justify-content:space-between; gap:20px; padding:20px 22px; background:#0c1927; color:#fff; }
.ct-ledger-card__top span { font-weight:800; }
.ct-ledger-card__top b { color:#b6dfff; font-size:.8rem; }
.ct-ledger-card__row { display:grid; grid-template-columns:64px 76px minmax(0,1fr) auto; gap:12px; align-items:center; padding:16px 20px; border-bottom:1px solid #edf0f2; }
.ct-ledger-card__row:last-child { border-bottom:0; }
.ct-ledger-card__row small { color:#7a8795; }
.ct-ledger-card__row code { color:var(--ct-blue); font-weight:800; }
.ct-ledger-card__row span { color:#344456; }
.ct-ledger-card__row strong { color:#17283a; }

.ct-tax-panel { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.ct-tax-panel article { min-height:190px; padding:24px; border:1px solid rgba(8,114,190,.11); border-radius:22px; background:#fff; box-shadow:0 14px 36px rgba(15,35,55,.05); }
.ct-tax-panel strong,.ct-tax-panel span,.ct-tax-panel small { display:block; }
.ct-tax-panel strong { font-size:2.5rem; letter-spacing:-.05em; color:#102236; }
.ct-tax-panel span { margin-top:18px; font-weight:800; color:#26394c; }
.ct-tax-panel small { margin-top:8px; color:#748292; }
.ct-tax-panel article:nth-child(2) { background:#fff8ef; }

.ct-model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.ct-model-grid article { min-height:130px; padding:20px; border:1px solid rgba(8,114,190,.11); border-radius:19px; background:#fff; box-shadow:0 12px 30px rgba(15,35,55,.045); }
.ct-model-grid b,.ct-model-grid span,.ct-model-grid small { display:block; }
.ct-model-grid b { color:var(--ct-blue); font-size:1.5rem; }
.ct-model-grid span { margin-top:12px; color:#203347; font-weight:800; }
.ct-model-grid small { margin-top:5px; color:#2e8855; }

.ct-treasury-card { padding:28px; border-radius:28px; background:#0c1927; color:#fff; box-shadow:0 24px 62px rgba(8,25,44,.18); }
.ct-treasury-card > span { color:#9fb1c3; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.ct-treasury-card > strong { display:block; margin-top:14px; font-size:clamp(2.8rem,5vw,4.8rem); letter-spacing:-.06em; }
.ct-treasury-card > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:24px; }
.ct-treasury-card article { padding:17px; border:1px solid rgba(255,255,255,.09); border-radius:16px; background:rgba(255,255,255,.06); }
.ct-treasury-card b,.ct-treasury-card small { display:block; }
.ct-treasury-card b { color:#fff; font-size:1.25rem; }
.ct-treasury-card small { margin-top:5px; color:#8fa2b6; }
.ct-treasury-card em { display:block; margin-top:18px; padding:12px 14px; border-radius:14px; background:rgba(159,232,112,.10); color:#caedb5; font-size:.82rem; font-style:normal; font-weight:800; }

.ct-reconcile { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:12px; align-items:center; padding:26px; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:linear-gradient(135deg,#f5faff,#fff9f2); box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-reconcile > div { padding:20px; border-radius:18px; background:#fff; }
.ct-reconcile small,.ct-reconcile strong,.ct-reconcile b { display:block; }
.ct-reconcile small { color:#728091; }
.ct-reconcile strong { margin-top:8px; color:#183047; }
.ct-reconcile b { margin-top:12px; font-size:1.5rem; }
.ct-reconcile > span { color:var(--ct-orange); font-size:1.8rem; font-weight:900; }
.ct-reconcile em { grid-column:1/-1; padding:13px 15px; border-radius:14px; background:#eaf7ef; color:#26744a; text-align:center; font-style:normal; font-weight:800; }

.ct-bank-list { display:grid; gap:11px; padding:22px; border-radius:28px; background:#0c1927; box-shadow:0 24px 62px rgba(8,25,44,.17); }
.ct-bank-list article { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 16px; padding:18px; border:1px solid rgba(255,255,255,.08); border-radius:17px; background:rgba(255,255,255,.06); }
.ct-bank-list span { color:#fff; font-weight:800; }
.ct-bank-list small { grid-column:1; color:#8fa2b5; }
.ct-bank-list strong { grid-row:1/3; grid-column:2; align-self:center; color:#d8e8f8; font-size:1.1rem; }

.ct-depreciation { padding:28px; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:#fff; box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-depreciation > div:first-child span,.ct-depreciation > div:first-child strong { display:block; }
.ct-depreciation > div:first-child span { color:#758292; font-size:.8rem; }
.ct-depreciation > div:first-child strong { margin-top:6px; color:#172a3d; font-size:1.35rem; }
.ct-depreciation__bar { height:18px; margin:30px 0 22px; overflow:hidden; border-radius:999px; background:#eaf0f4; }
.ct-depreciation__bar i { display:block; width:53.3%; height:100%; background:linear-gradient(90deg,var(--ct-blue),var(--ct-orange)); }
.ct-depreciation__meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.ct-depreciation__meta span { padding:14px; border-radius:14px; background:#f6f8fa; color:#6b7988; font-size:.75rem; }
.ct-depreciation__meta b { display:block; margin-top:5px; color:#203347; font-size:.92rem; }

.ct-pgc-tree { display:grid; gap:9px; padding:24px; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:#fff; box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-pgc-tree span { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:13px; min-height:60px; padding:9px 14px 9px 9px; border-radius:15px; background:#f8fafb; color:#26394c; font-weight:760; }
.ct-pgc-tree b { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:var(--ct-blue-soft); color:var(--si-blue-dark,#075a98); }
.ct-pgc-tree span:nth-child(even) b { background:var(--ct-orange-soft); color:var(--si-orange-dark,#e67800); }

.ct-rule-card { padding:28px; border-radius:28px; background:#0c1927; box-shadow:0 24px 62px rgba(8,25,44,.18); }
.ct-rule-card > span { color:#9fb1c3; font-size:.75rem; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.ct-rule-card > div { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:22px; }
.ct-rule-card > div strong { padding:14px 16px; border:1px solid rgba(255,255,255,.09); border-radius:14px; background:rgba(255,255,255,.07); color:#fff; }
.ct-rule-card > div b { color:#ffb35b; }
.ct-rule-card em { display:block; margin-top:22px; color:#b9eb9d; font-size:.82rem; font-style:normal; }

.ct-budget { display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:center; padding:28px; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:#fff; box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-budget article { padding:20px; border-radius:18px; background:#f7f9fb; text-align:center; }
.ct-budget small,.ct-budget strong { display:block; }
.ct-budget strong { margin-top:8px; font-size:1.7rem; }
.ct-budget > span { color:#7c8996; font-weight:900; }
.ct-budget > div { grid-column:1/-1; padding:20px; border-radius:18px; background:#0d1c2b; text-align:center; }
.ct-budget > div small,.ct-budget > div strong,.ct-budget > div em { display:block; }
.ct-budget > div small { color:#9fb0c1; }
.ct-budget > div strong { margin-top:6px; color:#ffbd70; font-size:2rem; }
.ct-budget > div em { margin-top:5px; color:#8fa3b6; font-style:normal; }

.ct-chart { min-height:420px; padding:28px; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:linear-gradient(135deg,#f6faff,#fff9f1); box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-chart__bars { display:flex; align-items:end; gap:10px; height:300px; padding:20px 10px 0; border-bottom:1px solid #d8e1e8; }
.ct-chart__bars span { flex:1; height:var(--h); min-width:14px; border-radius:8px 8px 2px 2px; background:linear-gradient(180deg,var(--ct-blue),#62ace2); }
.ct-chart__bars span:nth-child(3n) { background:linear-gradient(180deg,var(--ct-orange),#ffc06e); }
.ct-chart__legend { display:flex; gap:18px; margin-top:20px; color:#617080; font-size:.8rem; font-weight:700; }

.ct-forecast { position:relative; min-height:420px; overflow:hidden; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:linear-gradient(rgba(8,114,190,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(8,114,190,.05) 1px,transparent 1px),#fff; background-size:36px 36px; box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-forecast__line { position:absolute; left:10%; right:10%; top:20%; bottom:18%; border-bottom:4px solid rgba(8,114,190,.24); transform:skewY(-12deg); }
.ct-forecast > span { position:absolute; left:var(--x); top:var(--y); transform:translate(-50%,-50%); display:grid; place-items:center; width:96px; min-height:78px; padding:10px 12px; border:1px solid rgba(8,114,190,.14); border-radius:17px; background:#fff; box-shadow:0 14px 30px rgba(15,35,55,.09); text-align:center; z-index:2; }
.ct-forecast b,.ct-forecast small { display:block; }
.ct-forecast b { color:#17314a; font-size:1.1rem; }
.ct-forecast small { margin-top:4px; color:#748292; }

.ct-tools { background:#f4f3ef; }
.ct-tools__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
.ct-tools__grid span { display:flex; align-items:center; gap:12px; min-height:78px; padding:14px; border:1px solid #e0ddd6; border-radius:17px; background:#fff; color:#213548; font-weight:780; }
.ct-tools__grid b { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; border-radius:11px; background:var(--ct-blue-soft); color:var(--si-blue-dark,#075a98); font-size:.72rem; }
.ct-tools__grid span:nth-child(4n+2) b,.ct-tools__grid span:nth-child(4n+4) b { background:var(--ct-orange-soft); color:var(--si-orange-dark,#e67800); }

.ct-settings { display:grid; gap:10px; padding:24px; border:1px solid rgba(8,114,190,.12); border-radius:28px; background:#fff; box-shadow:0 22px 58px rgba(15,35,55,.07); }
.ct-settings > div { display:grid; grid-template-columns:minmax(0,1fr) auto 44px; align-items:center; gap:12px; min-height:68px; padding:13px 14px; border-radius:15px; background:#f8fafb; }
.ct-settings span { color:#617080; }
.ct-settings strong { color:#1c3044; font-size:.9rem; }
.ct-settings i { position:relative; width:42px; height:24px; border-radius:999px; background:#dce5eb; }
.ct-settings i::after { content:""; position:absolute; top:3px; right:3px; width:18px; height:18px; border-radius:50%; background:var(--ct-blue); }

@media (max-width: 900px) {
  .ct-tax-panel,.ct-model-grid,.ct-tools__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ct-finance-dashboard__row { grid-template-columns:62px minmax(0,1fr) auto; }
  .ct-finance-dashboard__row em { display:none; }
}
@media (max-width: 600px) {
  .ct-finance-dashboard { min-height:0; }
  .ct-finance-dashboard__row,.ct-ledger-card__row { grid-template-columns:1fr 1fr; }
  .ct-finance-dashboard__row span,.ct-ledger-card__row span { grid-column:1/-1; }
  .ct-tax-panel,.ct-model-grid,.ct-tools__grid { grid-template-columns:1fr; }
  .ct-treasury-card > div,.ct-depreciation__meta { grid-template-columns:1fr; }
  .ct-reconcile,.ct-budget { grid-template-columns:1fr; }
  .ct-reconcile > span,.ct-budget > span { transform:rotate(90deg); text-align:center; }
  .ct-reconcile em,.ct-budget > div { grid-column:1; }
  .ct-forecast > span { width:74px; min-height:64px; padding:8px; }
  .ct-forecast > span b { font-size:.98rem; }
  .ct-forecast > span small { font-size:.72rem; }
}
