/* ORMEA 2.1 · interfaz profesional. Capa de mejoras sobre el CSS anterior.
   Los tokens de color provienen del logotipo ORMEA aportado por el usuario. */
:root{--bg:#f8f7f3;--card:#fffefd;--ink:#292823;--muted:#74716a;--line:#e6e3dc;--soft:#f3f0e9;--accent:#72604d;--radius:13px}
body{letter-spacing:-.007em}
.app-shell{grid-template-columns:232px minmax(0,1fr)}
.sidebar{background:#fffefd;padding:22px 15px 16px;gap:10px;box-shadow:3px 0 20px rgba(54,44,29,.015)}
.brand{padding:8px 7px 20px;margin-bottom:6px;min-height:80px}
.brand .sidebar-wordmark{width:186px}
.sidebar-label{padding:0 14px;color:#a09b92;font-size:.61rem;font-weight:730;letter-spacing:.15em}
.sidebar nav{gap:3px;margin-top:3px}
.navbtn{border-radius:9px;font-size:.89rem;min-height:42px;padding:10px 13px;gap:12px;transition:background .12s ease}
.navbtn.active{background:#eeeae3;color:#352f29}
.sidebar-foot{padding:10px 8px}
.private-pill{font-size:.69rem;background:#f0ede5;border:1px solid #e7e2d6}
.sidebar-foot .secondary{min-height:39px}
.main{background:var(--bg)}
.top{background:rgba(255,254,252,.96);min-height:78px;padding:15px clamp(22px,3.2vw,46px);gap:12px}
.top strong{font-weight:730;font-size:1rem}
.top span{font-size:.73rem}
.top-actions{display:flex;align-items:center;gap:10px;min-width:0}
.global-search-wrap{width:clamp(210px,23vw,315px);position:relative}
.global-search-wrap input{min-height:38px;background:#faf9f6;padding-left:35px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' viewBox='0 0 24 24' stroke='%2387847C' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center;border-color:#e6e3dc;font-size:.84rem}
.global-search-results{position:absolute;z-index:100;top:calc(100% + 7px);left:0;right:0;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 42px rgba(43,38,31,.15);padding:6px;max-height:330px;overflow-y:auto}
.global-search-results button{display:block;width:100%;text-align:left;border:0;border-radius:8px;background:transparent;padding:11px;cursor:pointer}
.global-search-results button:hover,.global-search-results button:focus-visible{background:#f4f0e9}
.global-search-results button strong,.global-search-results button small{display:block}
.global-search-results button small{font-size:.7rem;color:var(--muted);margin-top:3px}
.view{max-width:1500px;padding:30px clamp(22px,3.2vw,46px) 58px}
.page-head{margin-bottom:24px}
.page-head h1,.client-title h1{font-size:clamp(1.66rem,2.3vw,2.15rem);font-weight:735;letter-spacing:-.048em}
.page-head p{font-size:.85rem;line-height:1.5;max-width:670px}
.eyebrow{color:#8a7965;font-size:.62rem;letter-spacing:.17em}
.primary,.secondary{border-radius:9px;min-height:40px;font-size:.84rem;padding:9px 15px}
.primary{background:#2e2d29;border-color:#2e2d29}
.primary:hover:not(:disabled){background:#4a4136;border-color:#4a4136}
.panel,.cards article,.list{border-radius:13px;background:#fffefd;box-shadow:0 2px 10px rgba(67,59,44,.018)}
.panel{padding:23px}.panel h2{font-size:1rem;letter-spacing:-.02em}
.cards{gap:12px}.cards article{padding:19px}
.cards article strong{font-size:1.45rem;line-height:1.3}
.client-actions{display:flex;gap:7px;flex-wrap:wrap}
.client-head .tabs{margin-top:24px}
.tabs{gap:8px}
.tabs button{padding:10px 12px;font-size:.84rem}
.empty{padding:26px 18px}
.pro-client-overview .panel{margin-bottom:14px}
.overview-panel{min-height:125px}
.overview-detail{padding:8px 0;border-top:1px solid var(--line)}
.overview-detail strong{display:block;font-size:.88rem}
.overview-detail small{display:block;margin-top:5px;color:var(--muted)}
.overview-detail:first-of-type{border-top:0}
/* Agenda profesional */
.pro-agenda-panel{background:#fffefd;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 4px 20px rgba(59,51,36,.025)}
.cal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:17px 20px;border-bottom:1px solid var(--line)}
.cal-dates{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.cal-dates>strong{font-size:1rem;letter-spacing:-.02em;text-transform:capitalize}
.cal-nav{display:flex;gap:4px}
.cal-nav button{min-width:40px;min-height:34px;padding:5px 10px;font-size:.8rem}
.cal-filters{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.cal-filters select{min-width:156px;width:auto;min-height:36px;padding:7px 9px;font-size:.78rem;background:#fff}
.cal-filters .segments{gap:2px;padding:3px}.cal-filters .segments button{min-height:31px;padding:5px 11px;font-size:.77rem}
.cal-legend{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap;padding:10px 22px;border-bottom:1px solid var(--line);font-size:.73rem;color:#7f776b}
.cal-legend>span::before{display:inline-block;content:'';width:9px;height:9px;vertical-align:baseline;border-radius:3px;margin-right:6px;background:#bcaf9b}
.cal-legend .legend-trix::before{background:#83999a}.cal-legend .legend-gutt::before{background:#b7a18c}.cal-legend .legend-private::before{background:#8f9e89}.cal-legend .legend-personal::before{background:#b5acba}
.calendar-scroller{width:100%;overflow:auto;max-height:min(76vh,980px);overscroll-behavior:contain;background:#fffefd}
.cal-grid{display:grid;grid-template-columns:70px repeat(7,minmax(150px,1fr));min-width:1150px}
.cal-grid.mode-day{grid-template-columns:70px minmax(0,1fr);min-width:0}
.cal-hours{position:sticky;left:0;z-index:9;background:#fffefb;border-right:1px solid var(--line)}
.cal-hours-heading,.cal-day-head{height:59px;background:#fbfaf7;border-bottom:1px solid var(--line)}
.cal-hours-heading{padding:18px 8px;font-size:.65rem;text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}
.cal-hours-body,.cal-day-body{position:relative}
.cal-hour-label{position:absolute;left:5px;right:5px;height:23px;margin-top:-10px;text-align:center;color:#8c877e;font-size:.69rem;font-variant-numeric:tabular-nums}
.cal-day-col{min-width:0;border-right:1px solid var(--line)}.cal-day-col:last-child{border-right:0}
.cal-day-head{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;border-left:0;border-right:0;border-top:0;color:#49453e;cursor:pointer}
.cal-day-head strong{font-size:.8rem;font-weight:720;text-transform:capitalize}
.cal-day-head span{font-size:.68rem;color:#989187}
.cal-day-head.is-today{color:#6d573d;background:#f5f0e8}
.cal-day-head.is-today strong{border-bottom:2px solid #b29a7d}
.cal-slot{left:0;right:0;width:100%;background:transparent;border:0;border-top:1px solid #eeeae4;position:absolute;text-align:left;z-index:1;cursor:crosshair;border-radius:0}
.cal-slot.cal-half{border-top:1px dashed #f2eee8}
.cal-slot:hover{background:rgba(151,127,94,.055)}
.cal-slot:focus-visible{outline:2px solid #77634b;outline-offset:-2px;background:rgba(171,145,112,.09)}
.cal-event{position:absolute;z-index:4;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:3px;text-align:left;padding:7px 8px;border:1px solid #d8d3c8;border-left:3px solid #a49a89;border-radius:7px;background:#eaece6;color:#3c3a34;overflow:hidden;box-shadow:0 1px 3px rgba(42,37,31,.05);font-size:.71rem;line-height:1.2}
.cal-event:hover{filter:brightness(.98);box-shadow:0 4px 12px rgba(42,37,31,.13);z-index:7}
.cal-event:focus-visible{outline:2px solid #3d3429;outline-offset:2px;z-index:8}
.cal-event strong{font-weight:740;font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cal-event-time{font-variant-numeric:tabular-nums;font-weight:680;font-size:.67rem}
.cal-event-detail{font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}
.group-TRIX{background:#e7efef;border-color:#bbcfd0;border-left-color:#6d9294;color:#37545a}
.group-GUTT{background:#f4ece2;border-color:#dfd0bd;border-left-color:#ae9172;color:#5d4a39}
.group-PARTICULARES{background:#ecf0e6;border-color:#c9d5c1;border-left-color:#7f9b79;color:#405744}
.group-PERSONAL{background:#f0edf3;border-color:#d8d0df;border-left-color:#a799b0;color:#65586c}
.cal-event.event-done{opacity:.65}
.event-completed{display:block;font-size:.61rem;font-weight:680;margin-top:auto}
/* Buscador clientes en nueva cita */
.pro-client-field>label{display:block;margin-bottom:7px;color:#50483f;font-size:.83rem;font-weight:650}
.search-combobox{position:relative}
.client-query{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' viewBox='0 0 24 24' stroke='%23847a70' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center;padding-left:39px}
.client-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;box-shadow:0 14px 36px rgba(41,33,25,.17);border:1px solid var(--line);border-radius:12px;padding:4px;z-index:30;max-height:260px;overflow-y:auto}
.search-choice{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;width:100%;border:0;background:transparent;border-radius:7px;min-height:48px;padding:8px 12px;cursor:pointer}
.search-choice:hover,.search-choice:focus-visible,.search-choice.search-active{background:#f6f1e8}
.search-choice strong{font-size:.85rem}.search-choice small{color:var(--muted);font-size:.7rem}
.field-hint{color:var(--muted);display:block;font-size:.72rem;margin-top:7px}
.search-none{display:block;padding:14px;color:var(--muted);font-size:.79rem}
.appointment-conflict{margin-top:16px;padding:12px;border:1px solid #eed4bd;border-radius:9px;background:#fff7ef;color:#88603b;font-size:.84rem}
.pro-section-heading{font-size:.71rem;letter-spacing:.1em;text-transform:uppercase;color:#8a7a66;margin:20px 0 5px;font-weight:740}
/* Episodios, valoraciones, biblioteca */
.process-grid,.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.process-card{border:1px solid var(--line);background:#fffdf9;border-radius:12px;padding:19px}
.process-card h3{margin:10px 0 6px;font-size:1rem}.process-card>small{color:var(--muted)}
.process-card p{line-height:1.45;color:#6e6659;font-size:.84rem;white-space:pre-wrap}
.process-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.process-state{font-size:.68rem;font-weight:710;background:#eaf0e4;border-radius:99px;padding:4px 8px;color:#607850}
.process-state.is-closed{background:#efebe4;color:#756d60}
.process-details{display:grid;grid-template-columns:105px 1fr;gap:7px;margin:15px 0;font-size:.8rem}
.process-details dt{color:var(--muted)}.process-details dd{margin:0;overflow-wrap:anywhere}
.assessment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0}
.assessment-summary>div{background:#f6f3ee;border:1px solid #e8e0d5;padding:15px;border-radius:10px}
.assessment-summary span,.assessment-summary small{display:block;font-size:.72rem;color:var(--muted)}
.assessment-summary strong{display:block;font-size:1.3rem;margin:7px 0;overflow-wrap:anywhere}
.assessment-chart{margin:15px 0;padding:14px;background:#fffefd;border:1px solid var(--line);border-radius:10px}
.assessment-chart svg{width:100%;height:auto;display:block;max-height:250px}
.assessment-table-wrap{overflow:auto}
.clean-table{border-collapse:collapse;width:100%;font-size:.8rem;text-align:left}
.clean-table th,.clean-table td{padding:11px 12px;border-bottom:1px solid var(--line);white-space:normal}
.clean-table th{color:var(--muted);background:#faf8f4;font-weight:720}
.tabular{font-variant-numeric:tabular-nums;font-weight:650}
.exercise-library-card{margin-bottom:0;min-height:170px}
.exercise-library-card h3{margin:10px 0 7px;font-size:.95rem}.exercise-library-card p{font-size:.82rem;color:#6f685c;line-height:1.5;max-height:60px;overflow:hidden;white-space:pre-wrap}
.library-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.library-tags span{font-size:.69rem;border:1px solid var(--line);border-radius:99px;padding:4px 8px;color:#776d5e}
.library-choices{max-height:350px;overflow-y:auto;border:1px solid var(--line);border-radius:11px;margin-top:10px}
.program-ex{display:flex;align-items:flex-start;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.program-ex p{margin:8px 0 0;font-size:.79rem;color:var(--muted);white-space:pre-wrap}
.program-ex small{display:block;color:#776955;margin-top:5px}.program-edit{display:grid;gap:3px;justify-items:end}
.linkbtn.danger{color:#a35344}.program-actions{flex-wrap:wrap}
.empty-state{text-align:left;padding:10px}.empty-state p{color:var(--muted);line-height:1.5}
.home-reviews .list-row{min-height:60px}
/* Mobile */
@media(max-width:1100px){.process-grid,.library-grid{grid-template-columns:1fr}.calendar-scroller{max-height:70vh}}
@media(max-width:760px){
  .app-shell{display:block}.main{padding-bottom:90px}
  .sidebar{min-height:70px;gap:0;padding:7px 4px calc(6px + env(safe-area-inset-bottom))}
  .sidebar-label{display:none}.sidebar nav{display:flex;overflow-x:auto;scrollbar-width:none;gap:2px}
  .sidebar nav::-webkit-scrollbar{display:none}.navbtn{min-width:61px;font-size:.58rem;min-height:56px;padding:5px 3px;border-radius:8px}
  .top{min-height:72px;padding:calc(12px + env(safe-area-inset-top)) 14px 10px}.top #quick-new{display:none}
  .top-actions{flex:1}.global-search-wrap{width:100%;max-width:230px;margin-left:auto}.global-search-wrap input{min-height:35px;font-size:.75rem}
  .view{padding:23px 14px 40px}.pro-heading{gap:9px}
  .cal-toolbar{padding:14px;gap:12px}.cal-dates{gap:8px}.cal-dates>strong{font-size:.83rem;line-height:1.3}.cal-filters{width:100%;justify-content:space-between}
  .cal-filters select{min-width:140px}.cal-legend{justify-content:flex-start;gap:9px;padding:10px 12px;font-size:.66rem}
  .cal-grid.mode-week{min-width:1120px}.cal-grid.mode-day{min-width:0}
  .cal-event strong{font-size:.72rem}.cal-event-time{font-size:.65rem}
  .client-actions{align-self:flex-start}.assessment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .assessment-summary>div{padding:12px}.assessment-summary strong{font-size:1.04rem}
  .process-grid,.library-grid{grid-template-columns:1fr}
  .panel{padding:17px}.global-search-results{right:0;left:auto;width:min(85vw,330px)}
}
@media(max-width:390px){.top-heading span{display:none}.global-search-wrap{max-width:205px}.sidebar nav .navbtn{min-width:58px}}
@media print{.global-search-wrap,.sidebar,.top,.cal-toolbar,.cal-legend,.page-head button,.panel-title button,.assessment-table-wrap button{display:none!important}.view{padding:0!important;max-width:none}.main{margin:0}.panel{box-shadow:none;border:1px solid #ddd}.assessment-chart{page-break-inside:avoid}}

/* ORMEA 2.2 · imagen original del usuario, sin redibujado */
.brand .sidebar-icon-exact{display:block;width:43px;height:43px;flex:0 0 43px;object-fit:contain;border-radius:11px;box-shadow:0 1px 4px rgba(40,35,29,.05)}
.brand .sidebar-brand-text{font-size:1.13rem;font-weight:670;letter-spacing:.10em;color:#282520;line-height:1;white-space:nowrap}
.brand{display:flex;align-items:center;justify-content:flex-start;gap:13px;min-height:76px}
.login-card .login-icon-exact{width:110px;height:110px;display:block;object-fit:contain;margin:0 auto 12px}
.login-card .login-brand-name{font-size:2.05rem;letter-spacing:.12em;font-weight:620;margin:3px 0 8px;position:static;clip:auto;width:auto;height:auto;overflow:visible}
.pro-visit-actions{align-items:center}
.pro-visit-actions .danger-outline{border:1px solid #d8bdb6;background:#fff9f7;color:#913b30;border-radius:9px;padding:9px 14px;min-height:40px;font-size:.84rem;font-weight:650;margin-right:auto}
.pro-visit-actions .danger-outline:hover{background:#fae9e3}
.danger-button{background:#9b4235;color:white;padding:9px 15px;min-height:40px;border:1px solid #9b4235;border-radius:9px;font-size:.85rem;font-weight:700}
.danger-button:hover:not(:disabled){background:#7e3329}
.danger-note{color:#923e32;background:#fff2ef;border:1px solid #efdad3;border-radius:9px;padding:11px}
@media(max-width:600px){.pro-visit-actions{flex-wrap:wrap}.pro-visit-actions .danger-outline{margin-right:0;width:100%;justify-content:center}}

/* ORMEA 2.3: horarios TRIX, administración y economía fija */
.fixed-toggle{display:flex;align-items:center;gap:7px;font-size:.72rem;font-weight:600;color:#605d56;white-space:nowrap;cursor:pointer}
.fixed-toggle input{width:16px;height:16px;min-height:0;accent-color:#66898b;padding:0;margin:0}
.cal-fixed-trix{position:absolute;z-index:2;left:3px;right:3px;width:calc(100% - 6px);border:1px dashed #a7c0c0;border-left:3px solid #7e9fa1;border-radius:5px;background:repeating-linear-gradient(135deg,#f0f6f5,#f0f6f5 7px,#e9f0ef 7px,#e9f0ef 13px);color:#487477;display:flex;flex-direction:column;align-items:flex-start;gap:2px;justify-content:flex-start;padding:7px 9px;text-align:left;font-size:.66rem;overflow:hidden;cursor:pointer}
.cal-fixed-trix:hover{background:#dce9e6;z-index:3}
.cal-fixed-trix strong{font-size:.68rem;font-variant-numeric:tabular-nums}
.cal-fixed-trix span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.document-notice{background:#faf8f3;border:1px solid var(--line);border-radius:10px;padding:13px 15px;margin:14px 0;font-size:.83rem;color:#615d53}
.document-notice p{margin:5px 0 0;line-height:1.45}
.library-commands{display:flex;gap:9px;flex-wrap:wrap}
.danger-outline{color:#9d483d;border-color:#e6bcb3}
.danger-outline:hover{background:#fcf0ec}
.fixed-income-panel{margin-top:18px}
.income-table{border-top:1px solid var(--line);margin-top:16px}
.income-row{display:grid;grid-template-columns:minmax(150px,2fr) minmax(110px,1fr) 100px 170px;align-items:center;gap:14px;padding:14px 2px;border-bottom:1px solid var(--line)}
.income-row strong{font-variant-numeric:tabular-nums}
.income-row small{display:block;color:var(--muted);font-size:.75rem;margin-top:4px}
.income-row .income-paid{background:#ebf1e7;color:#456944}
.income-footnote{font-size:.76rem;margin:15px 0 0}
.monthly-ledger-heading,.monthly-ledger-row,.monthly-ledger-total{grid-template-columns:1.5fr repeat(3,1fr)}
.cards:has(article:nth-child(6)){grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1200px){.cards:has(article:nth-child(6)){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:750px){.cards:has(article:nth-child(6)){grid-template-columns:repeat(2,minmax(0,1fr))}.income-row{grid-template-columns:1fr 1fr;gap:8px}.income-row button{grid-column:2;justify-self:end}.income-row span{grid-column:1}}

/* Visualización rápida de valoraciones y sesiones */
.assessment-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0 18px}
.assessment-kpi{border:1px solid var(--line);background:#faf8f3;border-radius:11px;padding:14px;text-align:left;display:flex;flex-direction:column;gap:7px;min-height:97px;color:var(--ink)}
.assessment-kpi.active{background:#f1e9df;border-color:#b4a28c}
.assessment-kpi>span{font-size:.69rem;color:#776e64}
.assessment-kpi>strong{font-size:1.25rem;font-variant-numeric:tabular-nums}
.assessment-kpi>strong small{font-size:.7rem;color:#776e64}
.assessment-kpi>small{font-size:.67rem;color:#80796f}
.client-visit-item{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:8px;padding-right:10px}
.client-visit-item>.list-row{flex:1;min-width:0;border-bottom:0}
.client-visit-item>[data-manage-session]{flex:0 0 auto}
@media(max-width:680px){.assessment-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.client-visit-item{flex-wrap:wrap;padding:8px}.client-visit-item>.list-row{flex-basis:100%}.client-visit-item>[data-manage-session]{margin-left:auto}}
/* Refinamiento del informe económico */
.monthly-ledger-heading,.monthly-ledger-row,.monthly-ledger-total{grid-template-columns:minmax(180px,1.55fr) repeat(3,minmax(116px,1fr));gap:20px}
.monthly-ledger-heading>:not(:first-child),.monthly-ledger-row>:not(:first-child),.monthly-ledger-total>:not(:first-child){text-align:right;white-space:nowrap}
.file-row .right small{display:block;margin-top:5px;font-size:.76rem;color:var(--muted)}
.file-row .right strong{display:block}
@media(max-width:760px){.monthly-ledger{overflow-x:auto}.monthly-ledger-heading,.monthly-ledger-row,.monthly-ledger-total{min-width:650px;grid-template-columns:180px repeat(3,140px);gap:8px}.monthly-ledger-heading{font-size:.68rem}}

/* ORMEA 2.4 · Gestión reversible de cobros y anamnesis guiada */
.cards.three.payment-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
.payment-explainer{font-size:.82rem;margin:6px 0 0;max-width:670px;line-height:1.45}
.payment-title-actions{display:flex;gap:7px;flex-wrap:wrap}
.payment-record .danger-outline{color:#8c4035;border-color:#e7c9c2}
.void-badge{display:inline-block;padding:4px 7px;border-radius:6px;background:#f2e5e1;color:#8c4035;font-size:.72rem}
.payment-history{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}
.payment-history summary{cursor:pointer;font-size:.85rem;font-weight:650;color:#6a5b4c;padding:8px 0}
.payment-history .file-row{opacity:.8}
.confirm-row{display:flex;align-items:center;gap:10px;margin-top:17px;font-size:.87rem}
.confirm-row input{height:19px;width:19px;min-height:0;accent-color:#654f3e;flex:0 0 19px}
.intake-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fffdfa;border:1px solid var(--line);padding:21px 25px;border-radius:15px;margin:3px 0 19px}
.intake-hero h2{font-size:1.33rem;letter-spacing:-.025em;margin:6px 0}
.intake-hero p{font-size:.84rem;color:var(--muted);margin:0;max-width:670px;line-height:1.55}
.intake-progress{text-align:center;min-width:105px;border-left:1px solid var(--line);padding-left:19px}
.intake-progress strong{font-size:1.7rem;display:block;line-height:1.2}
.intake-progress span{font-size:.67rem;color:var(--muted);display:block}
.intake-layout{display:grid;grid-template-columns:minmax(180px,225px) minmax(0,1fr);gap:20px}
.intake-steps{display:flex;flex-direction:column;gap:7px}
.intake-steps button{display:flex;align-items:center;text-align:left;gap:11px;padding:13px 12px;border:1px solid var(--line);border-radius:12px;background:#fffdfa;color:#5b534c}
.intake-steps button.active{background:#eee6da;border-color:#c3b09b;color:#2e2b26}
.intake-steps button>span{display:grid;place-items:center;border:1px solid #cabba8;width:29px;height:29px;border-radius:50%;font-size:.77rem;flex:0 0 29px}
.intake-steps button strong{font-size:.83rem;display:block}
.intake-steps button small{display:block;margin-top:3px;font-size:.67rem;color:var(--muted)}
.intake-panel{margin:0;padding:28px}
.intake-panel-top{display:flex;justify-content:space-between;gap:10px;letter-spacing:.1em;color:#887663;font-size:.64rem;font-weight:700}
.intake-panel h3{margin:12px 0 6px;font-size:1.25rem;letter-spacing:-.025em}
.intake-panel>p{font-size:.84rem;line-height:1.5;margin:0 0 18px}
.intake-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.intake-fields .intake-question:has(textarea){grid-column:1/-1}
.intake-question{display:flex;flex-direction:column;gap:6px}
.intake-question-label{color:#3b342d;font-size:.84rem;font-weight:680}
.intake-question-help{font-size:.72rem;color:#786f64;line-height:1.4;font-weight:400;min-height:18px}
.intake-question textarea{min-height:95px;max-width:100%;font-size:.86rem}
.intake-note{font-size:.69rem;color:#777063;border-top:1px solid var(--line);padding-top:14px;margin:22px 0 0;line-height:1.45}
.intake-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}
.intake-mini-empty{color:var(--muted);line-height:1.5;font-size:.85rem}
.intake-mini-meta{color:#7f6e5b;font-size:.7rem;margin-bottom:12px}
.intake-summary-dl{display:grid;grid-template-columns:115px minmax(0,1fr);gap:8px 12px;margin:0;font-size:.82rem}
.intake-summary-dl dt{color:var(--muted)}
.intake-summary-dl dd{margin:0;white-space:pre-line;word-break:break-word}
.intake-old-notes{margin-top:12px}
.intake-old-notes summary{cursor:pointer;color:#716353;font-size:.82rem;font-weight:650;padding:6px 0}
.intake-old-notes p{white-space:pre-wrap;line-height:1.55;font-size:.83rem}
@media(max-width:980px){.intake-layout{grid-template-columns:1fr}.intake-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.intake-steps button{min-height:65px}}
@media(max-width:650px){.cards.three.payment-summary{grid-template-columns:1fr}.intake-hero{flex-direction:column;align-items:flex-start;padding:17px}.intake-progress{text-align:left;border:0;padding:0}.intake-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.intake-fields{grid-template-columns:1fr}.intake-panel{padding:17px}.intake-actions{flex-wrap:wrap}.intake-actions button{flex:1}.payment-record{flex-wrap:wrap}.payment-record button{margin-left:auto}}

.charge-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}
.charge-actions .danger-outline{color:#8c4035;border-color:#e7c9c2}
@media(max-width:760px){.charge-actions{width:100%;justify-content:flex-start}}

/* ORMEA 2.5: limpieza excepcional de la ficha de prueba original */
.demo-cleanup-entry{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;}
.demo-cleanup-entry p{margin:8px 0;line-height:1.5;}
.demo-cleanup-entry button{margin-top:8px;}
.demo-cleanup-count{display:flex;align-items:center;gap:14px;padding:13px 15px;border:1px solid #e3d7cb;background:#faf6f0;border-radius:12px;margin:15px 0;}
.demo-cleanup-count strong{font-size:1.8rem;line-height:1;color:#8d4138;}
.demo-cleanup-count span{font-size:.85rem;color:#655b50;}
.demo-cleanup-list{border:1px solid #e9dfd4;border-radius:12px;overflow:hidden;margin:15px 0;}
.demo-cleanup-row{display:flex;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid #eee5db;}
.demo-cleanup-row:last-child{border-bottom:0;}
.demo-cleanup-check{display:flex;align-items:flex-start;gap:12px;margin:18px 0;line-height:1.45;}
.demo-cleanup-check input{width:20px;min-height:20px;margin:2px 0;flex:none;}

/* ORMEA 2.6 — Actividad del cliente y reincorporación */
.client-toolbar{margin-bottom:12px}
.client-toolbar .client-groups{max-width:100%}
.client-status-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:13px}
.client-status-toolbar>span{font-size:.67rem;color:var(--muted);letter-spacing:.12em;font-weight:720}
.client-status-filters button{font-size:.78rem}
.client-status-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #e4dfd6;border-radius:99px;padding:5px 10px;font-size:.73rem;font-weight:690;white-space:nowrap;letter-spacing:.005em}
.client-status-chip::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.65}
.client-status-chip.active{background:#eef2ec;border-color:#dde7d9;color:#52644f}
.client-status-chip.inactive{background:#f2eee9;border-color:#e8ded4;color:#77695c}
.client-name-status{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.client-name-status h1{margin-bottom:4px}
.client-status-caption{font-size:.8rem;line-height:1.45}
.client-status-history{border-top:1px solid var(--line);margin-top:14px}
.client-status-event{display:grid;grid-template-columns:100px 100px minmax(0,1fr);gap:12px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--line);font-size:.79rem;color:var(--muted)}
.client-status-event:last-child{border-bottom:0}
.client-status-reason{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}
@media(max-width:820px){.client-status-toolbar{align-items:flex-start;flex-direction:column}.client-status-event{grid-template-columns:100px minmax(0,1fr)}.client-status-reason{grid-column:1/-1}.list-row.client .client-status-chip{margin-left:auto}}
@media(max-width:600px){.client-status-filters{width:100%;display:flex}.client-status-filters button{flex:1;font-size:.69rem;padding:6px}.list-row.client{gap:8px;flex-wrap:wrap}.list-row.client .badge,.list-row.client .client-status-chip{font-size:.66rem}}

@media(max-width:600px){.client-toolbar{flex-direction:column;align-items:stretch}.client-toolbar #client-search{width:100%;max-width:none}.client-toolbar .client-groups{width:100%;display:flex;overflow-x:auto}.client-toolbar .client-groups button{flex:1 0 auto;min-width:0;white-space:nowrap;font-size:.71rem}.client-status-filters button{white-space:nowrap}}

/* ORMEA 2.7 — Tests configurables, lectura clínica y registro por variables */
.ormea-test-page .test-title{align-items:center;margin-bottom:22px;flex-wrap:wrap}
.ormea-test-page .test-title h2{font-size:1.45rem;letter-spacing:-.03em;margin:5px 0 6px}
.ormea-test-page .test-title p{max-width:630px;font-size:.83rem;line-height:1.5;margin:0}
.test-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}
.metric-history-picker{display:flex;flex-direction:column;gap:5px;font-size:.73rem;min-width:250px;max-width:480px;flex:1}
.metric-history-picker select{width:100%}
.test-total{font-size:.74rem;color:var(--muted);white-space:nowrap}
.test-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px;padding-top:7px}
.test-template{background:#fdfbf7;border:1px solid #e4dbce;border-radius:13px;padding:16px;min-width:0;display:flex;flex-direction:column;gap:10px}
.test-template-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.test-state{font-size:.69rem;font-weight:650;color:#58684f}
.test-state.off{color:#977e6c}
.test-template h3{font-size:.98rem;line-height:1.3;letter-spacing:-.01em;margin:0}
.test-template p{font-size:.79rem;color:var(--muted);line-height:1.4;margin:0;min-height:17px}
.test-template small{font-size:.71rem;color:#77695e}
.test-template-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:8px}
.test-template-buttons .linkbtn{font-size:.74rem}
.test-library-empty{background:#f9f4ec;padding:23px;border-radius:13px;border:1px dashed #d6c5b2;text-align:left}
.test-library-empty strong{font-size:1.05rem}
.test-library-empty p{font-size:.85rem;line-height:1.55;color:var(--muted);max-width:720px}
.test-field-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:22px 0 11px}
.test-field-head h3{margin:0;font-size:1.02rem}
.test-variable-row{border:1px solid #e4dacf;border-radius:12px;background:#fcfaf6;padding:14px;display:grid;grid-template-columns:minmax(130px,1.5fr) minmax(80px,.6fr) minmax(140px,1fr) minmax(130px,1fr) auto;gap:12px;align-items:end;margin-bottom:10px}
.test-variable-row input,.test-variable-row select{min-width:0;width:100%}
.test-variable-row .test-remove-variable{min-height:44px;color:#915048}
.test-note{line-height:1.5;font-size:.76rem;margin:9px 0 15px}
.test-record-overview{border:1px solid #e7ddd2;background:#f9f4ed;padding:15px 17px;border-radius:11px;margin:14px 0 18px;font-size:.82rem}
.test-record-overview p{white-space:pre-wrap;line-height:1.5;margin:9px 0 0;color:var(--muted)}
.test-record-variables{display:grid;gap:12px;margin:18px 0}
.test-record-variables fieldset{border:1px solid #e5dacd;border-radius:11px;min-width:0;padding:16px 17px;background:#fdfbf8}
.test-record-variables legend{font-size:.89rem;font-weight:700;padding:0 5px}
.test-record-variables legend span{font-size:.75rem;color:var(--muted);font-weight:500}
.test-record-variables fieldset>small{display:block;margin-top:9px;font-size:.72rem;color:var(--muted)}
.test-measure-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}
.test-definition-form>p,.test-record-form>p{line-height:1.55}
.ormea-test-page .assessment-chart{background:#fffdfa;border:1px solid #eae2d9;border-radius:11px;padding:10px 12px;margin-top:12px}
.ormea-test-page .assessment-chart svg{display:block;width:100%;height:auto;max-height:225px}
@media(max-width:930px){.test-variable-row{grid-template-columns:repeat(2,minmax(0,1fr))}.test-variable-row label:first-child{grid-column:1/-1}.test-variable-row .test-remove-variable{justify-self:end}}
@media(max-width:640px){.ormea-test-page .test-title{flex-direction:column;align-items:stretch}.test-actions{width:100%}.test-actions button{flex:1}.metric-history-picker{min-width:0;width:100%}.test-variable-row{grid-template-columns:1fr}.test-variable-row label:first-child{grid-column:auto}.test-variable-row .test-remove-variable{justify-self:start}.test-measure-row{grid-template-columns:1fr}}

/* ORMEA 2.8 · Fichas online y biblioteca con vídeo privado */
.online-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:10px 0 20px;flex-wrap:wrap}
.online-intro h2{margin:2px 0 5px;font-size:1.34rem;letter-spacing:-.025em}
.online-intro p{margin:0;max-width:620px;line-height:1.55}
.online-program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:14px;margin-bottom:16px}
.online-program-card{text-align:left;min-height:165px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;cursor:pointer;transition:border-color .14s,box-shadow .14s}
.online-program-card:hover,.online-program-card:focus-visible{border-color:#b9a996;box-shadow:0 10px 27px rgba(52,41,27,.06)}
.online-program-card strong{font-size:1.01rem}.online-program-card small{color:var(--muted);font-size:.72rem}
.online-program-card p{margin:3px 0 5px;line-height:1.5;color:var(--muted);font-size:.85rem}
.online-card-heading{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center}
.online-empty{grid-column:1/-1;text-align:left}.online-empty p{margin:10px 0 0}
.online-safe-note{font-size:.78rem;line-height:1.5;color:#807468;margin:12px 0 20px}
.online-edit .dialog-head{align-items:flex-start;margin-bottom:12px}.online-edit .dialog-head small{color:var(--muted)}
.online-description{white-space:pre-wrap;line-height:1.6;color:#746c63;margin:8px 0 18px}
.online-program-tools{display:flex;flex-wrap:wrap;gap:7px;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:14px}
.online-exercise-list{display:grid;gap:11px;margin:8px 0 20px}
.online-exercise{border:1px solid var(--line);border-radius:12px;background:#fffdfb;padding:15px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:13px;align-items:start}
.online-exercise-number{color:#99846f;font-size:1.15rem;font-weight:700;letter-spacing:-.02em}
.online-exercise-copy strong{display:block;font-size:.93rem}
.online-exercise-copy p{font-size:.81rem;line-height:1.6;white-space:pre-wrap;margin:7px 0;color:#655a50}
.online-exercise-copy .online-exercise-dose{color:#7b6857;font-weight:650}
.online-exercise-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px}
.online-exercise-buttons a{font-size:.78rem;text-decoration:none;color:#655642}
.online-publish-panel{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:13px;background:#f7f3ed}
.online-publish-panel strong{font-size:.95rem}.online-publish-panel p{margin:6px 0;font-size:.78rem;line-height:1.5}
.online-publish-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:13px}
.online-library-results{max-height:340px;overflow-y:auto;display:grid;gap:4px;margin:13px 0}
.online-choice{display:grid;gap:5px;border:1px solid #eee8df;background:white;border-radius:8px;padding:12px;text-align:left;color:var(--ink)}
.online-choice:hover,.online-choice:focus-visible{background:#f6f1e8}
.online-choice strong{font-size:.86rem}.online-choice small{font-size:.73rem;color:var(--muted)}
.online-requests{max-height:380px;overflow:auto;margin-top:10px}
.online-request{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:12px 0}
.online-request strong,.online-request small{display:block}.online-request small{color:var(--muted);font-size:.76rem;margin-top:4px}
.online-request .online-warning{color:#9b4b3f;font-weight:650}
.online-video-container video,#library-video-container video{width:100%;max-height:65vh;border-radius:12px;margin-top:15px}
#video-upload-status{min-height:18px}
@media(max-width:640px){.online-intro{display:grid}.online-program-card{min-height:140px}.online-request{align-items:flex-start;flex-direction:column}.online-publish-actions>*{flex:1}.online-program-tools button{flex:1}}
.online-portal-url{border:1px solid var(--line);background:#fcfaf6;border-radius:12px;padding:14px;margin:16px 0}
.online-portal-url .muted{margin:10px 0 0;font-size:.76rem}
/* ORMEA 2.9 · Constructor flexible de fichas y seguimiento real */
.training-session-builder{max-width:100%}.training-session-builder .online-program-tools{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 16px}.training-blocks{display:grid;gap:13px;margin:20px 0}.training-block-card{background:#fffefd;border:1px solid #e3dbd0;border-radius:14px;overflow:hidden}.training-block-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#f5f0e9;padding:15px 19px;border-bottom:1px solid #e3dbd0}.training-block-heading h3{font-size:1.06rem;margin:0;color:#302820}.training-block-heading p{color:#796d5e;font-size:.83rem;margin:5px 0 0}.training-block-heading>span{font-size:.7rem;color:#786c60;white-space:nowrap}.training-exercise-row{display:flex;gap:13px;padding:18px 20px;border-bottom:1px solid #efe8df;align-items:flex-start}.training-exercise-row:last-child{border-bottom:0}.training-exercise-row .online-exercise-copy{min-width:0;flex:1}.training-exercise-row .online-exercise-copy>strong{font-size:.96rem}.training-exercise-row .online-exercise-dose{font-size:.8rem;line-height:1.65;color:#675e54}.training-exercise-row .online-exercise-buttons{display:flex;gap:9px;flex-wrap:wrap}.training-exercise-row .online-exercise-buttons button{font-size:.8rem}.training-empty-section{padding:17px 20px;color:#8a8076;font-size:.84rem}.training-set-overrides{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:9px}.training-set-overrides small{border:1px solid #e7dbcc;border-radius:7px;background:#faf6ef;padding:4px 7px;color:#6f5c48;font-size:.68rem}.training-checkbox{display:flex;align-items:center;gap:10px;padding:14px 0;font-size:.84rem;color:#4b4038;font-weight:600}.training-checkbox input{height:18px;width:18px;min-height:0;flex:0 0 18px}.training-set-plan{display:grid;gap:4px;margin-bottom:14px}.training-prescription-header,.training-prescription-row{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:6px;align-items:center}.training-prescription-header{font-size:.68rem;color:#857465;padding:3px 0;font-weight:700}.training-prescription-row input{min-width:0;min-height:38px;padding:6px 8px;font-size:.8rem}.training-prescription-row strong{text-align:center;color:#766757}.training-block-row{display:flex;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #eee6da}.training-block-number{width:28px;text-align:center;color:#9a8674;font-weight:700}.training-block-fields{display:grid;gap:6px;flex:1;min-width:0}.training-block-fields input{min-height:38px;font-size:.85rem}.training-block-commands{display:flex;gap:5px;flex-shrink:0}.training-block-commands .small{width:34px;padding:4px}.training-block-add{display:flex;align-items:end;gap:10px;margin-top:16px}.training-block-add label{flex:1}.training-block-add button{margin-bottom:1px}.training-block-suggest{display:flex;flex-wrap:wrap;gap:7px;padding-top:12px}.training-block-suggest button{font-size:.73rem}.training-progress-block{padding:16px 0;border-top:1px solid #eee6db}.training-progress-block h3{font-size:.96rem;margin:0 0 8px}.training-progress-block small{color:#746858}.training-chart-svg{display:block;width:100%;height:auto;max-height:220px}.training-no-chart{background:#f7f2eb;border:1px dashed #dfd4c5;border-radius:10px;padding:24px;text-align:center;color:#8a796b;font-size:.83rem}.online-edit.training-session-builder{width:100%;min-width:0}@media(max-width:780px){.training-prescription-header,.training-prescription-row{grid-template-columns:34px minmax(0,1fr) minmax(0,1fr) 55px}.training-exercise-row{padding:13px 12px}.training-block-heading{padding:12px}.training-block-commands{flex-direction:column}.training-block-add{flex-wrap:wrap}.training-block-add button{width:100%}}

.training-latest{display:grid;gap:6px;border-left:3px solid #b09d85;padding:10px 13px;background:#faf6ef;border-radius:7px;font-size:.78rem;line-height:1.5;color:#695f54}.training-latest strong{color:#473b31}
@supports selector(dialog:has(.training-session-builder)){
  dialog.dialog:has(.training-session-builder){width:min(96vw,1080px)}
  dialog.dialog:has(.online-ex-form){width:min(95vw,820px)}
  dialog.dialog:has(.training-block-manager){width:min(95vw,760px)}
}

/* ORMEA 2.11 · Biblioteca visual de vídeos propios */
.ormea-library-header{margin-bottom:22px}
.ormea-library-toolbar{display:grid;gap:11px;margin:0 0 20px}
.ormea-library-search{position:relative;display:block;max-width:none;width:100%}
.ormea-library-search>span{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:26px;line-height:1;font-weight:400;color:#817567;pointer-events:none}
.ormea-library-search input{width:100%;min-height:54px;padding:13px 17px 13px 52px;font-weight:450;border-radius:13px;background:#fffdfa}
.ormea-library-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ormea-library-controls select{width:auto;min-width:128px;min-height:40px;padding:7px 31px 7px 12px;font-size:.8rem;background:#fffdfa}
.ormea-library-controls #library-sort{margin-left:auto;min-width:165px}
.ormea-filter-chip{font-size:.8rem;min-height:40px;padding:7px 13px}
.ormea-filter-chip[aria-pressed="true"]{background:#e9dfd3;border-color:#bead98;color:#433628;font-weight:750}
.ormea-library-count{color:#80756a;font-size:.75rem;text-align:right}
.ormea-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px}
.ormea-library-card{background:#fffdfa;border:1px solid #e7dfd5;border-radius:17px;overflow:hidden;min-width:0;box-shadow:0 2px 8px rgba(55,43,25,.018);transition:box-shadow .18s,border-color .18s}
.ormea-library-card:hover{box-shadow:0 13px 28px rgba(55,43,25,.065);border-color:#d7c8b9}
.ormea-ex-cover{width:100%;display:block;padding:12px 12px 0;background:transparent;border:0;text-align:center;cursor:pointer}
.ormea-ex-cover-inner{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 9;width:100%;border-radius:11px;overflow:hidden;background:#ece7e0}
.ormea-ex-cover-inner img,.ormea-editor-preview img,#ormea-mini-cover img,.ormea-builder-thumb img,.ormea-choice-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.ormea-cover-play{position:absolute;bottom:12px;left:12px;width:37px;height:37px;border:1.5px solid white;border-radius:999px;background:rgba(35,31,28,.8);display:grid;place-items:center;color:white;font-size:15px;pointer-events:none;padding-left:2px}
.ormea-video-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:#938678;font-size:.88rem;width:100%;height:100%;font-weight:500;min-height:38px;background:linear-gradient(135deg,#e7dfd5,#f3eee8)}
.ormea-video-placeholder>span{font-size:28px;line-height:1}
.ormea-video-placeholder small{font-size:.75rem}
.ormea-card-body{padding:16px 17px 17px}
.ormea-card-meta{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ormea-card-actions{display:flex;align-items:center;gap:6px}
.ormea-favorite{background:#fffdfa;border:1px solid #e4dacf;color:#796b5d;border-radius:9px;width:33px;height:33px;display:grid;place-items:center;font-size:19px}
.ormea-favorite[aria-pressed="true"]{color:#a87b35;background:#f7efe1}
.ormea-library-card h3{margin:10px 0 5px;font-size:1.03rem;line-height:1.35;letter-spacing:-.012em}
.ormea-card-instructions{font-size:.79rem;color:#73695f;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em;margin:0 0 4px;white-space:pre-wrap}
.ormea-library-card .library-tags{margin-top:11px;min-height:29px}
.ormea-card-parameters{margin-top:15px;padding-top:14px;border-top:1px solid #eee6dd;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.ormea-card-parameters>div{padding:0 10px;border-right:1px solid #ebe4dc;min-width:0}
.ormea-card-parameters>div:first-child{padding-left:0}.ormea-card-parameters>div:last-child{border-right:0}
.ormea-card-parameters small{display:block;font-size:.67rem;color:#837769;margin-bottom:4px}.ormea-card-parameters strong{display:block;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ormea-library-empty{grid-column:1/-1;padding:34px;text-align:center}.ormea-library-empty p{color:var(--muted);margin:10px 0 0}
.ormea-ex-cover:focus-visible,.ormea-favorite:focus-visible,.ormea-builder-quick-item:focus-visible{outline:3px solid #a48c71;outline-offset:3px}
/* Editor de ejercicio, con portada generada desde el vídeo privado. */
@supports selector(dialog:has(.ormea-editor-form)){dialog.dialog:has(.ormea-editor-form){width:min(96vw,1050px)}}
.ormea-editor-columns{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);gap:24px;margin:20px 0 12px}
.ormea-editor-form .ormea-editor-fields{min-width:0}.ormea-editor-fields .grid{gap:12px;margin:13px 0 18px}
.ormea-editor-media{border:1px solid #e6dcd0;border-radius:15px;background:#fffdfb;padding:16px;min-width:0}
.ormea-editor-media h3{font-size:.97rem;margin:2px 0 13px}.ormea-editor-media p{font-size:.75rem;line-height:1.55}
.ormea-editor-preview{display:flex;align-items:center;justify-content:center;background:#eee8df;aspect-ratio:16/9;border-radius:11px;overflow:hidden}
.ormea-media-controls{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 11px}
.ormea-file-pill{position:relative;display:flex;align-items:center;justify-content:center;min-height:41px;padding:8px 11px;border:1px solid #ded3c6;border-radius:10px;cursor:pointer;background:#fff;font-size:.76rem;font-weight:650;flex:1;min-width:120px;color:#554739}
.ormea-file-pill input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.ormea-file-pill:focus-within{outline:3px solid #ab927c;outline-offset:1px}
.ormea-cover-generate{width:100%;margin:2px 0 9px}
.ormea-preview-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#847462;font-weight:750;border-top:1px solid #eee7de;margin:15px 0 10px;padding-top:14px}
.ormea-mini-card{display:flex;align-items:center;gap:11px;border:1px solid #e7ded3;padding:8px;background:#fff;border-radius:11px;min-width:0}
#ormea-mini-cover{width:115px;flex:0 0 115px;aspect-ratio:16/9;background:#eee8df;overflow:hidden;border-radius:7px}
.ormea-mini-card strong{font-size:.81rem;overflow-wrap:anywhere}
/* Barra de ejercicios dentro de la ficha online. */
.ormea-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;align-items:start;gap:15px;margin:16px 0}
.ormea-builder-layout .training-blocks{margin:0}
.ormea-builder-library{background:#fffdfa;border:1px solid #e3d9cd;border-radius:14px;padding:15px;position:sticky;top:0;max-height:70vh;overflow:auto;min-width:0}
.ormea-builder-side-title{display:grid;gap:4px;margin-bottom:12px}.ormea-builder-side-title strong{font-size:.9rem}.ormea-builder-side-title small{font-size:.72rem;color:#857769}
.ormea-builder-side-search{position:relative;display:block}
.ormea-builder-side-search span{position:absolute;top:12px;left:12px;color:#8d8176}
.ormea-builder-side-search input{padding-left:28px;font-size:.78rem;min-height:40px}
.ormea-builder-target{font-size:.69rem;margin-top:12px}.ormea-builder-target select{min-height:38px;font-size:.75rem}
.ormea-builder-quick-list{display:grid;gap:6px;padding-top:12px;max-height:48vh;overflow:auto}
.ormea-builder-quick-item{display:flex;align-items:center;gap:9px;border:1px solid #eee4d9;border-radius:9px;background:#fff;padding:7px;text-align:left;color:var(--ink);width:100%}
.ormea-builder-quick-item:hover{background:#f7f1e8}
.ormea-builder-quick-item .ormea-choice-thumb{width:65px;min-width:65px;height:51px;border-radius:7px;overflow:hidden}
.ormea-quick-copy{min-width:0;flex:1}.ormea-quick-copy strong{display:block;font-size:.71rem;line-height:1.35}.ormea-quick-copy small{display:block;font-size:.62rem;color:#7d7065;margin-top:2px}
.ormea-choice-add{font-size:18px;color:#7a6655;flex:0 0 18px}
#builder-full-library{width:100%;margin-top:12px}
.ormea-builder-thumb{flex:0 0 108px;width:108px;height:79px;border-radius:8px;overflow:hidden;background:#ece7df;align-self:flex-start}
.ormea-builder-thumb .ormea-video-placeholder{font-size:.68rem}.ormea-builder-thumb .ormea-video-placeholder>span{font-size:20px}
.ormea-online-choice{display:flex;align-items:center;gap:12px}.ormea-online-choice .ormea-choice-thumb{display:block;flex:0 0 100px;height:63px;border-radius:8px;overflow:hidden}
.ormea-online-choice>span:nth-child(2){flex:1;min-width:0}.ormea-online-choice>span:nth-child(2) strong{display:block}
.ormea-online-choice .ormea-video-placeholder{font-size:.72rem}
@media(max-width:900px){.ormea-builder-layout{grid-template-columns:1fr}.ormea-builder-library{position:static;max-height:360px}.ormea-builder-quick-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px}}
@media(max-width:690px){.ormea-editor-columns{grid-template-columns:1fr}.ormea-library-grid{grid-template-columns:1fr}.ormea-library-controls #library-sort{margin-left:0}.ormea-library-controls select{flex:1;max-width:100%;min-width:130px}.ormea-builder-quick-list{grid-template-columns:1fr}.ormea-builder-thumb{width:78px;flex-basis:78px;height:66px}.ormea-builder-library{max-height:460px}.ormea-ex-cover{padding:9px 9px 0}}

/* ORMEA 2.12 · Diseño configurable de biblioteca */
.ormea-library-grid{grid-template-columns:repeat(var(--library-columns,3),minmax(0,1fr));gap:13px}
.ormea-library-controls #library-columns{min-width:115px}
.ormea-library-grid[data-columns="4"] .ormea-card-instructions,.ormea-library-grid[data-columns="5"] .ormea-card-instructions,.ormea-library-grid[data-columns="6"] .ormea-card-instructions{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ormea-library-grid[data-columns="5"] .ormea-card-parameters,.ormea-library-grid[data-columns="6"] .ormea-card-parameters{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}
.ormea-library-grid[data-columns="5"] .ormea-card-parameters div,.ormea-library-grid[data-columns="6"] .ormea-card-parameters div{padding:0 3px;font-size:.75rem}
.ormea-library-grid[data-columns="5"] .ormea-card-body,.ormea-library-grid[data-columns="6"] .ormea-card-body{padding:10px}
.ormea-library-grid[data-columns="5"] .library-tags span,.ormea-library-grid[data-columns="6"] .library-tags span{font-size:.62rem}
@media(max-width:1000px){.ormea-library-grid{grid-template-columns:repeat(min(var(--library-columns,3),3),minmax(0,1fr))}}
@media(max-width:650px){.ormea-library-grid{grid-template-columns:1fr}}

/* ORMEA 2.12 · Calendario profesional de fichas online */
.ormea-calendar-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.ormea-calendar-top h3{margin:0 0 4px;font-size:1.03rem}.ormea-calendar-top p{font-size:.83rem;margin:0}
.ormea-calendar-nav{display:flex;align-items:center;gap:10px}.ormea-calendar-nav strong{min-width:132px;text-align:center;text-transform:capitalize;font-size:.87rem}.ormea-calendar-nav button{min-height:33px;padding:5px 11px}
.ormea-weekdays,.ormea-month-cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.ormea-weekdays strong{font-size:.72rem;text-align:center;padding:9px 2px;color:#85786b}
.ormea-month-cells{border:1px solid #e9e1d7;border-radius:12px;overflow:hidden}.ormea-date-cell{min-width:0;min-height:92px;padding:8px;background:#fffdfa;border-right:1px solid #eee6db;border-bottom:1px solid #eee6db}.ormea-date-cell.outside{background:#f6f2ed;color:#b4a69b}.ormea-date-cell.today .ormea-daynum{background:#655749;color:white;border-radius:50%;width:24px;height:24px;display:grid;place-items:center}
.ormea-daynum{font-size:.78rem;font-weight:650;display:inline-block;line-height:24px}.ormea-calendar-event{width:100%;display:block;min-height:22px;margin-top:4px;padding:4px 5px;border:0;border-radius:5px;text-align:left;font-size:.66rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;color:#504334;background:#eee4d9}.ormea-calendar-event.published{background:#e2e9de;color:#3d5c46}.ormea-date-cell small{color:#817367;font-size:.61rem}
.ormea-feedback-peek{display:grid;gap:4px;text-align:left;background:#f5eee4;border:1px solid #e9ddce;border-radius:9px;padding:9px;margin:8px 0;font-size:.74rem;line-height:1.45;color:#5b4c40}.ormea-feedback-peek strong{color:#45392c}
@media(max-width:720px){.ormea-date-cell{min-height:65px;padding:4px}.ormea-calendar-event{font-size:.56rem;padding:3px 2px}.ormea-calendar-nav strong{min-width:98px}}

/* ORMEA 2.13 · vista compacta: selector visible y portadas sin fondo negro */
.ormea-library-colselect{display:flex;align-items:center;gap:8px;white-space:nowrap;color:#6d6257;font-size:.77rem;font-weight:650}
.ormea-library-colselect #library-columns{min-width:60px;padding-right:22px}
.ormea-library-grid[data-columns="4"] .ormea-library-card h3,
.ormea-library-grid[data-columns="5"] .ormea-library-card h3,
.ormea-library-grid[data-columns="6"] .ormea-library-card h3{font-size:.92rem}
.ormea-library-grid[data-columns="4"] .ormea-card-body,
.ormea-library-grid[data-columns="5"] .ormea-card-body,
.ormea-library-grid[data-columns="6"] .ormea-card-body{padding:11px 12px}
.ormea-library-grid[data-columns="5"] .ormea-card-parameters,
.ormea-library-grid[data-columns="6"] .ormea-card-parameters{display:none}
.ormea-library-grid[data-columns="5"] .library-tags,
.ormea-library-grid[data-columns="6"] .library-tags{margin-top:7px}
.ormea-library-grid[data-columns="5"] .ormea-ex-cover,
.ormea-library-grid[data-columns="6"] .ormea-ex-cover{padding:8px 8px 0}
@media(max-width:1100px){.ormea-library-colselect{flex-wrap:wrap;gap:4px}.ormea-library-colselect #library-columns{flex:0 0 68px}}

/* ORMEA 2.14 · branded login, without marketing claim */
.login-kicker{margin-bottom:25px}


/* ORMEA 2.16 · Agenda compacta: calendario con densidad adaptable y persistente. */
.agenda-page-heading{margin-bottom:15px}
.agenda-page-heading h1{font-size:clamp(1.5rem,2.4vw,1.8rem)}
.pro-agenda-panel .cal-toolbar{padding:11px 15px;gap:11px}
.pro-agenda-panel .cal-legend{padding:7px 15px;gap:12px}
.cal-density-control{display:flex;align-items:center;gap:7px;font-size:.73rem;font-weight:600;color:#746a5f;white-space:nowrap}
.cal-density-control select{width:auto;min-width:125px;max-width:155px}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-hours-heading,
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-day-head{height:46px}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-hours-heading{padding:14px 5px}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event{
  padding:2px 5px;gap:0;line-height:1.05;border-radius:4px;
}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event-time{font-size:.59rem;line-height:1.1;white-space:nowrap}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event strong{font-size:.69rem;line-height:1.15}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event-detail,
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .event-completed{display:none}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event.is-short{
  flex-direction:row;align-items:center;gap:4px;
}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event.is-short strong{min-width:0;flex:1}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event.is-tiny .cal-event-time{display:none}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event.is-tiny strong{font-size:.63rem}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-fixed-trix{padding:3px 5px;gap:0}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-fixed-trix span{display:none}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-fixed-trix strong{font-size:.64rem;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-fixed-trix strong::before{content:'TRIX · '}
@media(max-width:760px){
  .cal-density-control{gap:4px}
  .cal-density-control select{min-width:120px;max-width:146px}
  .agenda-page-heading{margin-bottom:12px}
  .pro-agenda-panel .cal-toolbar{padding:11px}
  .calendar-scroller:is(.cal-density-compact,.cal-density-extra) .cal-event strong{font-size:.64rem}
}

/* ORMEA 2.17 · gestión privada de informes de fisioterapia */
.ormea-doc-head{align-items:center;flex-wrap:wrap}
.ormea-doc-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}
.ormea-document-row{flex-wrap:wrap;gap:12px}
.ormea-document-row .grow{min-width:200px}
.ormea-document-row small{line-height:1.5}
@media(max-width:650px){.ormea-doc-actions{justify-content:flex-start}.ormea-document-row{align-items:flex-start}.ormea-document-row .grow{flex-basis:100%}}

/* ORMEA 2.18 — Actividad del cliente y desglose GUTT */
.client-activity-note{margin-top:10px!important;color:#665642!important;font-size:.86rem;line-height:1.5}
.client-activity-note strong{color:#3d332b}
.client-actions{flex-wrap:wrap}
.gut-settlement-panel{padding:25px;margin-top:4px}
.gut-settlement-panel .panel-title{gap:12px}
.gut-settlement-panel .panel-title p{margin:5px 0 0;font-size:.81rem;line-height:1.55}
.gut-partition-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.gut-partition-cards article{padding:18px;border:1px solid var(--line);border-radius:14px;background:#faf7f2;min-width:0}
.gut-partition-cards article.gut-yours{background:#f2eee5;border-color:#d9c8b3}
.gut-partition-cards article span{display:block;color:#75695c;font-size:.75rem;line-height:1.35}
.gut-partition-cards article strong{display:block;color:#30271f;font-size:clamp(1.25rem,1.9vw,1.7rem);margin:8px 0 6px;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.gut-partition-cards article small{font-size:.72rem;line-height:1.45;display:block;color:#786d61}
.gut-receipts-breakdown{border-top:1px solid var(--line);padding:16px 0 4px}
.gut-receipts-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.gut-receipts-values span{padding:11px 13px;border-radius:10px;background:#f8f3ed;font-size:.79rem;color:#655a4e}
.gut-receipts-values b{color:#322a24;font-variant-numeric:tabular-nums;white-space:nowrap}
.gut-receipts-breakdown>p,.gut-disclaimer{font-size:.76rem;line-height:1.5}
.gut-needs-review,.gut-tax-notice{margin-top:12px;border:1px solid #e9d1b9;border-radius:11px;padding:13px 16px;background:#fbf4e9;font-size:.8rem;line-height:1.5;color:#6c5136}
.gut-needs-review p{margin:5px 0 0}
.gut-tax-notice{background:#fffaf1}
@media(max-width:1100px){.gut-partition-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.gut-partition-cards,.gut-receipts-values{grid-template-columns:1fr}.gut-settlement-panel{padding:16px}.gut-settlement-panel .panel-title{align-items:flex-start}}

/* La última columna incluye el fijo TRIX para que coincida con la cifra grande. */
.monthly-ledger-heading,.monthly-ledger-row,.monthly-ledger-total{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr))}
@media(max-width:760px){.monthly-ledger-heading,.monthly-ledger-row,.monthly-ledger-total{grid-template-columns:minmax(82px,1.2fr) repeat(3,minmax(80px,1fr));gap:8px;overflow-x:auto}}

@media(max-width:600px){.monthly-ledger{overflow-x:auto}.monthly-ledger-heading,.monthly-ledger-row,.monthly-ledger-total{min-width:485px}}

.cards .own-revenue-kpi{background:#f0ebe1;border-color:#d6c2aa}
.cards .own-revenue-kpi strong{color:#3c3527}
@media(min-width:1250px){.cards:has(.own-revenue-kpi){grid-template-columns:repeat(4,minmax(0,1fr))}}

.finance-centre-row .right{max-width:65%}
@media(max-width:650px){.finance-centre-row{display:block}.finance-centre-row .right{max-width:none;text-align:left;margin-top:9px}.finance-centre-row .right small,.finance-centre-row .right strong{overflow-wrap:anywhere}}
.month-spotlight h2{ text-transform:none }
/* Fichas económicas legibles: cuatro KPIs por fila en Mac (no siete apretados). */
@media(min-width:1101px){.cards:has(article.own-revenue-kpi):has(article:nth-child(6)){grid-template-columns:repeat(4,minmax(0,1fr))}}
.monthly-ledger-row>span:first-child>strong{text-transform:none}

/* ORMEA 2.19 · Fichas, liquidación de GUTT y reserva fiscal */
.list-row.client .grow small{line-height:1.42;white-space:normal;word-break:break-word}
.gut-panel-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.gut-primary-finance{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:14px;margin:22px 0 12px}
.gut-primary-finance article{padding:24px;border-radius:17px;min-width:0}
.gut-primary-yours{background:#eee7da;border:1px solid #d6c5af}
.gut-primary-marc{background:#f7f3ed;border:1px solid #e8ded0}
.gut-primary-finance span{display:block;color:#746757;font-size:.76rem;letter-spacing:.03em;line-height:1.5}
.gut-primary-finance strong{display:block;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:760;letter-spacing:-.045em;color:#2d2925;line-height:1.25;margin:10px 0 7px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gut-primary-marc strong{font-size:clamp(1.7rem,2.6vw,2.25rem)}
.gut-primary-finance small{font-size:.76rem;color:#7b7168;line-height:1.5}
.gut-cash-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px}
.gut-cash-primary>div{background:#faf8f5;border:1px solid #e8ded1;border-radius:12px;padding:15px}
.gut-cash-primary span,.gut-fiscal-results span{color:#796d60;font-size:.77rem;display:block;line-height:1.4}
.gut-cash-primary strong,.gut-fiscal-results strong{display:block;font-size:1.65rem;color:#342e27;letter-spacing:-.03em;margin-top:4px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gut-method-rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.gut-method-card{background:#fffefa;border:1px solid #e8ded1;border-radius:13px;padding:16px;min-width:0}
.gut-method-card>span{color:#7b6e60;display:block;font-weight:650;font-size:.8rem}
.gut-method-card>strong{display:block;font-size:1.4rem;letter-spacing:-.025em;margin:5px 0 12px;overflow-wrap:anywhere}
.gut-method-card>strong small{font-weight:450;color:#867b6e;font-size:.76rem}
.gut-method-card p{font-size:.77rem;line-height:1.55;margin:4px 0;color:#5b534b}
.gut-method-card p.muted{color:#817669;font-size:.72rem}
.gut-tax-customer-note{background:#f9f6f1;border-top:1px solid #e9ddd0;padding:13px 8px;margin:18px 0;font-size:.8rem;line-height:1.6}
.gut-tax-customer-note small{display:block;color:#796f64;margin-top:4px}
.gut-tax-settings{margin-top:18px}
.gut-finance-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;align-items:end}
.gut-finance-config-grid label{font-size:.77rem;color:#60554b;display:grid;gap:6px;min-width:0}
.gut-finance-config-grid input{min-width:0}
.gut-finance-config-grid label.gut-checkbox,.gut-invoice-form label.gut-checkbox{display:flex;flex-direction:row;gap:9px;align-items:center;padding:14px;background:#f7f3ec;border-radius:10px;font-size:.85rem}
.gut-checkbox input[type=checkbox]{width:18px;height:18px;flex-shrink:0}
.gut-fiscal-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.gut-fiscal-results article{padding:16px;border:1px solid #e6dac9;border-radius:13px;background:#faf7f1}
.gut-invoice-line-list{display:grid;gap:8px;margin:14px 0;padding:4px;max-height:300px;overflow-y:auto}
.gut-month-entry{display:flex!important;align-items:start;flex-direction:row!important;gap:10px;border-bottom:1px solid #e8e0d6;padding:11px 8px;font-size:.8rem;line-height:1.4}
.gut-month-entry input{width:18px;min-width:18px;margin-top:2px}
.gut-month-entry span{flex:1;min-width:0}
.gut-month-entry small{display:block;color:#877b6e;font-size:.74rem;margin-top:4px}
.gut-invoice-totals{background:#f3eee5;padding:14px;border-radius:13px;margin:14px 0;font-size:.85rem}
.gut-invoice-totals>div{display:flex;justify-content:space-between;gap:15px;margin:7px 0;flex-wrap:wrap}
.gut-invoice-totals>div.gut-invoice-due{border-top:1px solid #cabda8;margin-top:13px;padding-top:12px;font-weight:700}
.gut-price-preview{background:#f4efe7;color:#4b4034;border-radius:10px;padding:12px;font-size:.81rem;line-height:1.45;margin:8px 0}
@media(max-width:950px){.gut-method-rows{grid-template-columns:1fr}.gut-primary-finance{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.gut-primary-finance,.gut-cash-primary,.gut-fiscal-results,.gut-finance-config-grid{grid-template-columns:1fr}.gut-primary-finance article{padding:18px}.gut-panel-buttons{justify-content:start}.gut-settlement-panel .panel-title{display:block}.gut-settlement-panel .panel-title .gut-panel-buttons{margin-top:15px}}


/* ORMEA 2.20 · Tesorería real vs imputación del profesional */
.gut-cash-primary small{display:block;color:#887d71;font-size:.73rem;margin-top:6px;line-height:1.48}
.gut-own-invoice-vat{display:flex;align-items:flex-start;gap:24px;border:1px solid #e3d8c8;background:#f8f5ef;border-radius:12px;padding:16px;margin:0 0 18px}
.gut-own-invoice-vat>div{min-width:205px}.gut-own-invoice-vat span{display:block;color:#786a5c;font-size:.77rem}.gut-own-invoice-vat strong{display:block;color:#393026;font-size:1.55rem;margin-top:7px;font-variant-numeric:tabular-nums}
.gut-own-invoice-vat p{flex:1;font-size:.8rem;color:#736555;line-height:1.55;margin:0}
.gut-held-cash{margin-top:12px;border-top:1px solid #e0d4c5;padding-top:12px}
.gut-held-cash>strong{display:block;color:#30291f;font-size:1rem}
.gut-held-cash p{font-size:.77rem;line-height:1.5;margin:5px 0}
.gut-held-cash small{color:#8a7768;font-size:.71rem;line-height:1.4;display:block;margin-top:7px}
@media(max-width:680px){.gut-own-invoice-vat{display:block}.gut-own-invoice-vat p{margin-top:12px}}

/* ORMEA 2.21 · Inicio premium: fecha, pendientes y agenda. Sin KPIs ni cifras económicas. */
.home-page-head{align-items:flex-end;margin-bottom:30px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.home-page-head h1{text-transform:none;font-size:clamp(2rem,4.1vw,3.15rem);font-weight:735;letter-spacing:-.055em;line-height:1.03;margin-top:10px}
.home-page-head>.primary{min-width:112px}
.home-tasks{margin-bottom:28px}
.home-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.home-section-title h2{margin:0;font-size:1rem;letter-spacing:-.025em;font-weight:735}
.home-section-title .linkbtn{color:#776b5f;font-weight:650}
.home-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.home-task-note{position:relative;min-height:142px;padding:15px 16px 17px;border:1px solid rgba(109,95,77,.10);border-radius:15px;box-shadow:0 8px 22px rgba(56,46,31,.035);overflow:hidden;transition:transform .12s ease,opacity .12s ease,box-shadow .12s ease}
.home-task-note:hover{transform:translateY(-1px);box-shadow:0 11px 28px rgba(56,46,31,.055)}
.home-task-note.tone-sand{background:#f6efe2}
.home-task-note.tone-sage{background:#eef1e8}
.home-task-note.tone-mist{background:#edf1f0}
.home-task-note-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.home-task-check{width:28px;height:28px;padding:0;border:0;background:transparent;display:grid;place-items:center}
.home-task-check span{width:21px;height:21px;border:1.5px solid #827b70;border-radius:50%;display:block;position:relative;background:rgba(255,255,255,.28)}
.home-task-check[aria-pressed="true"] span{background:#514b42;border-color:#514b42}
.home-task-check[aria-pressed="true"] span::after{content:'';position:absolute;left:6px;top:3px;width:5px;height:9px;border:solid #fff;border-width:0 1.7px 1.7px 0;transform:rotate(45deg)}
.home-task-menu{border:0;background:transparent;color:#817b71;min-width:31px;min-height:28px;padding:0 2px;font-weight:800;letter-spacing:.12em}
.home-task-body{display:block;width:100%;padding:0;border:0;background:transparent;color:var(--ink);text-align:left}
.home-task-body strong{display:block;font-size:.97rem;font-weight:690;line-height:1.35;letter-spacing:-.018em}
.home-task-body small{display:block;margin-top:7px;color:#817b73;font-size:.78rem;line-height:1.42}
.home-task-note.is-done{opacity:.48;box-shadow:none}
.home-task-note.is-done .home-task-body strong{text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:#8d867b}
.home-task-empty{width:100%;min-height:96px;padding:20px;border:1px dashed #dcd5ca;border-radius:15px;background:rgba(255,254,252,.48);color:#716b62;text-align:left}
.home-task-empty span,.home-task-empty small{display:block}
.home-task-empty span{font-size:.9rem;font-weight:660;color:#5d574f}
.home-task-empty small{margin-top:5px;font-size:.76rem;color:#8a847b}
.home-agenda{padding:24px;border-radius:17px;box-shadow:0 7px 28px rgba(56,46,31,.025)}
.home-agenda .panel-title{margin-bottom:10px}
.home-agenda .panel-title h2{font-size:1.06rem}
.home-agenda .list-row{min-height:68px;padding-left:12px;padding-right:10px;border-radius:0;background:transparent}
.home-agenda .list-row:hover{background:#fbfaf7}
.home-task-form textarea{min-height:86px}
.home-task-form .actions .grow{display:block}
@media(max-width:760px){
  .home-page-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:24px;padding-bottom:24px}
  .home-page-head h1{font-size:clamp(2rem,10vw,2.7rem);line-height:1.02;margin-bottom:0}
  .home-page-head>.primary{align-self:end;min-width:auto;padding:10px 17px}
  .home-tasks{margin-bottom:18px}
  .home-section-title{margin-bottom:8px}
  .home-task-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0;padding:0;overflow:visible}
  .home-task-note{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:6px;min-width:0;min-height:60px;padding:6px;border-radius:12px;box-shadow:0 3px 10px rgba(56,46,31,.025)}
  .home-task-note-top{display:contents}
  .home-task-check{grid-column:1;grid-row:1;width:44px;height:44px}
  .home-task-body{grid-column:2;grid-row:1;min-width:0;min-height:44px;display:flex;flex-direction:column;justify-content:center}
  .home-task-body strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;font-size:.86rem;line-height:1.35;font-weight:650}
  .home-task-body small{margin-top:3px;font-size:.74rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .home-task-menu{grid-column:3;grid-row:1;width:44px;min-height:44px;letter-spacing:.08em}
  .home-task-empty{min-height:60px;padding:12px;border-radius:12px}
  .home-agenda{padding:17px 14px;margin-left:-2px;margin-right:-2px}
  .home-agenda .panel-title{padding:0 4px}
  .home-agenda .list-row{gap:10px;padding:12px 5px;min-height:66px}
  .home-agenda .list-row .time{width:48px;font-size:.82rem}
  .home-agenda .list-row .badge{display:none}
}
@media(max-width:390px){.home-page-head{grid-template-columns:1fr}.home-page-head>.primary{justify-self:start}}

/* ORMEA 2.23 · Finanzas GUTT: reparto, cobros, factura e IVA encadenado */
.gut-finance-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin:18px 0 24px;padding:14px 16px;border:1px solid #e8ded1;border-radius:14px;background:#fbf9f5}
.gut-finance-flow>div:not(.gut-flow-arrow){min-width:0}
.gut-finance-flow span{display:block;font-size:.67rem;letter-spacing:.08em;color:#8b7d6e;font-weight:700}
.gut-finance-flow strong{display:block;margin-top:4px;font-size:.88rem;color:#39322b;line-height:1.35}
.gut-finance-flow small{display:block;margin-top:3px;color:#8a8178;font-size:.7rem;line-height:1.35}
.gut-flow-arrow{color:#b4a897;font-size:1.15rem}
.gut-finance-step{margin:0 0 18px;padding:20px;border:1px solid #e7dccd;border-radius:16px;background:#fffdfa}
.gut-share-step{background:#fbf8f2}
.gut-invoice-step{background:#f8f4ec;border-color:#d9c9b3}
.gut-step-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.gut-step-heading>div{display:flex;align-items:flex-start;gap:12px;min-width:0}
.gut-step-number{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#eee5d7;color:#6d5e4e;font-size:.7rem;font-weight:800;letter-spacing:.04em}
.gut-step-heading h3{margin:0;font-size:1rem;letter-spacing:-.02em;color:#332d27}
.gut-step-heading p{margin:4px 0 0;color:#7d7266;font-size:.77rem;line-height:1.5;max-width:760px}
.gut-basis-badge{flex:0 0 auto;border:1px solid #d4c2aa;background:#efe6d9;color:#655746;border-radius:999px;padding:7px 10px;font-size:.65rem;font-weight:750;letter-spacing:.06em}
.gut-basis-badge.subtle{background:#f7f3ec;border-color:#e3d8c9;color:#7a6d5f}
.gut-basis-badge.invoice{background:#e9dfd0;border-color:#cdbb9f;color:#594b3b}
.gut-share-step .gut-primary-finance{margin:0 0 12px}
.gut-base-equation{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:11px;background:#f3ede4;color:#6f6254;font-size:.77rem}
.gut-base-equation strong{font-size:1rem;color:#332c25;font-variant-numeric:tabular-nums}
.gut-base-equation small{margin-left:auto;color:#8a7d70}
.gut-payment-step .gut-method-rows{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.gut-method-card.is-transfer{background:#fbfaf7}
.gut-method-card.is-cash{background:#f9f5ed;border-color:#deceb9}
.gut-method-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:2px}
.gut-method-title>span{color:#665b50;font-size:.82rem;font-weight:760}
.gut-method-title>small{color:#9a8f83;font-size:.68rem}
.gut-method-card>strong{font-size:1.6rem;margin:7px 0 13px;color:#302a24}
.gut-method-card>strong small{display:block;margin-top:3px;font-size:.69rem;font-weight:500;color:#93877a}
.gut-method-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.gut-method-metrics>div{padding:10px;border-radius:10px;background:#f6f2ec;min-width:0}
.gut-method-metrics>div.is-yours{background:#eee7dc}
.gut-method-metrics span{display:block;font-size:.66rem;color:#897d70;line-height:1.3}
.gut-method-metrics b{display:block;margin-top:3px;color:#3b332b;font-size:.93rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gut-method-holder{margin-top:11px;padding-top:10px;border-top:1px solid #e9e0d5}
.gut-method-holder>span{display:block;color:#8b7f72;font-size:.66rem;font-weight:650}
.gut-method-holder p{margin:4px 0 0!important;color:#655b50!important;font-size:.73rem!important}
.gut-method-warning{margin-top:8px!important;padding:7px 9px;border-radius:8px;background:#fff7e9;color:#765735!important}
.gut-payment-explanation{margin-top:12px;padding:12px 14px;border-radius:11px;background:#f7f3ed;color:#706459;font-size:.76rem;line-height:1.5}
.gut-invoice-equation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.1fr);align-items:stretch;gap:10px}
.gut-invoice-equation article{padding:16px;border:1px solid #dfd2c1;border-radius:13px;background:#fffdfa;min-width:0}
.gut-invoice-equation article.gut-invoice-total{background:#e9dfd0;border-color:#cdb99d}
.gut-invoice-equation article>span{display:block;color:#7c6d5d;font-size:.69rem;font-weight:720;letter-spacing:.04em}
.gut-invoice-equation article>strong{display:block;margin:7px 0 4px;font-size:1.55rem;color:#302922;letter-spacing:-.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gut-invoice-equation article>small{display:block;color:#8a7c6f;font-size:.7rem;line-height:1.4}
.gut-equation-sign{display:grid;place-items:center;color:#8f806f;font-size:1.35rem;font-weight:700}
.gut-invoice-clarity{margin-top:12px;padding:13px 15px;border-radius:11px;background:#efe7db;color:#5e5144;font-size:.79rem;line-height:1.55}
.gut-vat-chain-step{background:#fbfaf7;border-color:#ded3c5}
.gut-vat-chain{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:stretch}
.gut-vat-chain article{padding:16px;border:1px solid #e2d8cc;border-radius:13px;background:#fff;min-width:0}
.gut-vat-chain article.gut-vat-yours{background:#f2ece3;border-color:#d8c8b3}
.gut-vat-chain article.gut-vat-marc{background:#ece4d7;border-color:#cfbda4}
.gut-vat-chain article>span{display:block;font-size:.67rem;letter-spacing:.045em;font-weight:740;color:#7d7062}
.gut-vat-chain article>strong{display:block;margin:7px 0 4px;font-size:1.5rem;letter-spacing:-.035em;color:#302922;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gut-vat-chain article>small{display:block;color:#887c70;font-size:.7rem;line-height:1.45}
.gut-basis-badge.vat{background:#eee5d7;border-color:#d7c5aa;color:#6b5841}
.gut-vat-proof{margin-top:12px;padding:13px 15px;border-radius:11px;background:#ede5d9;color:#584c40;font-size:.79rem;line-height:1.6}
.gut-vat-legal{margin:9px 2px 0;font-size:.71rem!important;line-height:1.5}
.gut-client-tax-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;margin-top:10px;padding:12px 14px;border-top:1px solid #dfd4c5;color:#7b6e60;font-size:.75rem}
.gut-client-tax-summary strong{color:#3c342c;font-size:1rem;font-variant-numeric:tabular-nums}
.gut-client-tax-summary small{grid-column:1/-1;color:#8a7e72;line-height:1.4}
.gut-fiscal-results article small{display:block;margin-top:6px;color:#8a7d70;font-size:.7rem;line-height:1.45}
.gut-fiscal-results article.gut-fiscal-available{background:#eee8de;border-color:#d7c8b4}
.gut-invoice-totals>div>span{color:#76695d}
.gut-invoice-totals>div>strong{font-variant-numeric:tabular-nums}
@media(max-width:950px){
  .gut-finance-flow{grid-template-columns:1fr}.gut-flow-arrow{display:none}
  .gut-invoice-equation,.gut-vat-chain{grid-template-columns:1fr}.gut-equation-sign{height:18px}
}
@media(max-width:760px){
  .gut-finance-step{padding:15px 13px}
  .gut-step-heading{display:block}.gut-step-heading>div{gap:10px}.gut-basis-badge{display:inline-block;margin:10px 0 0 44px}
  .gut-payment-step .gut-method-rows{grid-template-columns:1fr}
  .gut-method-card>strong{font-size:1.45rem}
  .gut-base-equation{display:grid;grid-template-columns:1fr auto}.gut-base-equation small{grid-column:1/-1;margin-left:0}
  .gut-client-tax-summary{grid-template-columns:1fr auto}
}
@media(max-width:390px){
  .gut-method-metrics{grid-template-columns:1fr 1fr}
  .gut-primary-finance strong{font-size:2rem}
}

/* ORMEA 2.25 · liquidación GUTT simplificada */
.gutt-simple-settlement{padding:26px}
.gutt-simple-title{align-items:center;margin-bottom:18px}
.gutt-simple-title h2{margin:0}
.gutt-simple-title p{margin:5px 0 0!important}
.gutt-simple-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}
.gutt-simple-totals article{padding:20px;border:1px solid #dfd4c5;border-radius:16px;background:#fbf8f3}
.gutt-simple-totals article:first-child{background:#eee6da;border-color:#d6c4ad}
.gutt-simple-totals span,.gutt-simple-card span{display:block;color:#7c6f61;font-size:.71rem;font-weight:760;letter-spacing:.055em}
.gutt-simple-totals strong{display:block;margin:7px 0 3px;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.04em;color:#2e2924;font-variant-numeric:tabular-nums}
.gutt-simple-totals small{color:#8d8277;font-size:.72rem}
.gutt-simple-methods{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.6fr);gap:14px;align-items:start}
.gutt-simple-card{border:1px solid #e3d8ca;border-radius:17px;background:#fffdfa;padding:19px;min-width:0}
.gutt-simple-card.cash{background:#f7f1e8;border-color:#dbcab5}
.gutt-simple-card.transfer{background:#fcfaf6}
.gutt-card-document-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.gutt-card-document-actions button{min-height:44px;white-space:normal}
.gutt-document-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;border-radius:12px;background:#eee7dc;margin:12px 0 16px}
.gutt-document-tabs button{min-height:44px;border:0;background:transparent;color:#766a5c;padding:9px 7px;border-radius:9px;font-size:.83rem;white-space:normal}
.gutt-document-tabs button.active{background:#fffdfa;color:#302b25;box-shadow:0 1px 4px #44352212}
.gutt-documents-form [hidden]{display:none!important}
.gutt-document-period label{min-width:0}
.gutt-document-period select{max-width:100%}
.gutt-document-details{border:1px solid #e5dacb;border-radius:12px;padding:12px;margin-top:16px}
.gutt-document-details summary{font-size:.83rem;font-weight:650;cursor:pointer;line-height:1.5}
.gutt-document-details .gut-invoice-line-list{max-height:260px;margin-bottom:0}
.gutt-document-actions{flex-wrap:wrap;margin-top:18px}
.gutt-document-actions button{min-height:44px;white-space:normal}
.gutt-document-footnote{font-size:.75rem;line-height:1.5}
@media(max-width:760px){.gutt-documents-form .grid{grid-template-columns:minmax(0,1fr)}.gutt-documents-form .wide{grid-column:1}.gutt-documents-form input:not([type=checkbox]),.gutt-documents-form textarea,.gutt-documents-form select{font-size:16px;max-width:100%}.gutt-document-actions button{flex:1 1 160px}.gutt-card-document-actions button{flex:1 1 130px}}
.gutt-simple-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:14px;border-bottom:1px solid #e8dfd4}
.gutt-simple-card-head>div>strong{display:block;font-size:clamp(1.6rem,3vw,2.15rem);letter-spacing:-.04em;margin-top:5px;color:#2f2a25;font-variant-numeric:tabular-nums}
.gutt-simple-card-head>small{font-size:.72rem;font-weight:780;color:#7a6a59;border:1px solid #ddcfbd;border-radius:999px;padding:6px 9px;background:#f5efe6;white-space:nowrap}
.gutt-simple-base{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 2px 8px}
.gutt-simple-base span{letter-spacing:0;font-size:.76rem}
.gutt-simple-base strong{font-size:1.18rem;color:#342e28;font-variant-numeric:tabular-nums}
.gutt-simple-split{display:grid;gap:9px;margin-top:10px}
.gutt-simple-split.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.gutt-simple-split>div{padding:13px;border-radius:12px;background:#f6f2ec;min-width:0}
.gutt-simple-split>div.you{background:#ece3d7}
.gutt-simple-split span{letter-spacing:0;font-size:.7rem}
.gutt-simple-split strong{display:block;margin-top:5px;font-size:1.2rem;color:#332d27;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.gutt-simple-vat{margin-top:15px;padding-top:15px;border-top:1px solid #e8dfd4}
.gutt-simple-vat-total{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 2px 2px}
.gutt-simple-vat-total strong{font-size:1.3rem;color:#312b25;font-variant-numeric:tabular-nums}
.gutt-simple-split.compact{margin-top:8px}
.gutt-simple-split.compact>div{padding:11px 13px}
.gutt-simple-invoice-total{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:18px;border-radius:14px;background:#e8ddce;border:1px solid #cdb89c}
.gutt-simple-invoice-total span{color:#5f5143;font-size:.76rem}
.gutt-simple-invoice-total small{display:block;margin-top:4px;color:#806f5d;font-size:.72rem;line-height:1.4}
.gutt-simple-invoice-total>strong{font-size:clamp(1.75rem,3vw,2.45rem);color:#2b2723;letter-spacing:-.045em;font-variant-numeric:tabular-nums;white-space:nowrap}
.gutt-simple-warning{margin:13px 0 0;padding:11px 13px;border-radius:10px;background:#fff5e7;color:#765c3d;font-size:.75rem}
@media(max-width:850px){.gutt-simple-methods{grid-template-columns:1fr}.gutt-simple-totals{grid-template-columns:1fr}}
@media(max-width:560px){.gutt-simple-settlement{padding:15px}.gutt-simple-title{display:block}.gutt-simple-title .gut-panel-buttons{margin-top:12px}.gutt-simple-split.two{grid-template-columns:1fr}.gutt-simple-invoice-total{align-items:flex-start;flex-direction:column;gap:8px}.gutt-simple-invoice-total>strong{font-size:2rem}.gutt-simple-card{padding:15px}}


/* ORMEA 2.27 · vídeo propio dentro del constructor de sesiones online */
.online-own-video{margin-top:18px;padding:18px;border:1px solid var(--line,#e5ddd2);border-radius:18px;background:rgba(250,248,244,.72)}
.online-own-video-copy{margin-bottom:14px}.online-own-video-copy strong{display:block;font-size:15px;margin-bottom:4px}.online-own-video-copy p{margin:0}
.online-own-video-row{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}
.online-own-video-row .ormea-editor-preview{min-height:96px;height:96px;border-radius:14px;overflow:hidden;background:#f1ece4;display:grid;place-items:center}
.online-own-video-row .ormea-editor-preview img{width:100%;height:100%;object-fit:cover;display:block}
.online-own-video-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.online-own-video-actions .muted{flex-basis:100%;margin:0}
@media(max-width:720px){.online-own-video{padding:14px}.online-own-video-row{grid-template-columns:1fr}.online-own-video-row .ormea-editor-preview{height:150px}.online-own-video-actions{align-items:flex-start}}

/* ORMEA 2.27.2 · constructor de sesión a una sola columna */
@supports selector(dialog:has(.online-new-session-wizard)){
  dialog.dialog:has(.online-new-session-wizard){width:min(96vw,1180px);max-height:94dvh;padding:30px 34px;overflow-x:hidden}
}
.online-new-session-wizard{width:100%;min-width:0}
.online-new-session-wizard .dialog-head{align-items:flex-start;margin-bottom:18px}
.online-new-session-wizard .dialog-head h2{font-size:1.75rem;letter-spacing:-.035em}
.online-new-session-wizard .dialog-head small{display:block;margin-top:5px;color:#776d63;font-size:.84rem}
.online-new-session-head{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(220px,.55fr);gap:14px 18px;padding:2px 0 22px;border-bottom:1px solid #e9e0d5}
.online-new-session-head .wide{grid-column:1/-1}
.online-new-session-head label{margin-top:0!important;font-size:.82rem}
.online-new-session-head input,.online-new-session-head textarea{margin-top:7px}
.online-new-session-main{padding:20px 0 6px}
.online-new-session-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px;padding:0 2px}
.online-new-session-title strong{display:block;font-size:1.18rem;letter-spacing:-.02em}.online-new-session-title small{display:block;color:#7e7368;margin-top:4px;line-height:1.4;font-size:.78rem}
.online-new-session-blocks{display:grid;gap:13px;min-width:0}
.online-draft-block{border-radius:15px;transition:border-color .18s ease,box-shadow .18s ease}
.online-draft-block.library-open{border-color:#b9a58f;box-shadow:0 0 0 2px rgba(164,140,113,.12)}
.online-draft-block .training-block-heading{min-height:76px;padding:14px 18px;gap:16px}
.online-draft-heading-copy{display:flex;align-items:center;gap:14px;min-width:0}
.online-draft-heading-copy>div{min-width:0}.online-draft-heading-copy h3{font-size:1rem}.online-draft-heading-copy p{margin-top:3px;font-size:.73rem;color:#817568}
.online-draft-index{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:999px;background:#eee5d9;font-size:.68rem;letter-spacing:.12em;color:#786958;font-weight:800}
.online-add-from-library{white-space:nowrap;min-height:38px;padding:8px 13px}
.online-draft-selected{background:#fffefd}
.online-draft-exercise{display:grid;grid-template-columns:38px 74px minmax(0,1fr) 36px;gap:12px;align-items:center;padding:9px 16px;border-bottom:1px solid #eee7de;min-height:72px}
.online-draft-exercise:last-child{border-bottom:0}.online-draft-handle{font-size:.68rem;letter-spacing:.08em;color:#9a8876;text-align:center;font-weight:700}
.online-draft-exercise .ormea-choice-thumb{width:74px;height:54px;border-radius:9px;overflow:hidden;background:#f2ece4}.online-draft-exercise .ormea-choice-thumb img{width:100%;height:100%;object-fit:cover}
.online-draft-exercise-copy{min-width:0}.online-draft-exercise-copy strong{display:block;font-size:.88rem}.online-draft-exercise-copy small{display:block;color:#877b6f;font-size:.69rem;margin-top:2px}.online-draft-exercise-copy>span{display:block;color:#6e6256;font-size:.69rem;margin-top:4px}
.online-draft-exercise .linkbtn{width:34px;height:34px;padding:4px;font-size:1rem}
.online-draft-library{margin:10px 0 4px;padding:18px;border:1px solid #d9cabb;border-radius:15px;background:#faf6f0;box-shadow:0 12px 32px rgba(58,46,35,.06)}
.online-draft-library[hidden]{display:none!important}
.online-draft-library-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.online-draft-library-head strong{display:block;font-size:1rem}.online-draft-library-head small{display:block;color:#817568;margin-top:3px;font-size:.72rem}
.online-draft-library-search{position:relative;display:block;margin:0!important}.online-draft-library-search>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:1;color:#817568;font-size:1rem}.online-draft-library-search input{padding-left:38px!important;background:#fff}
.online-draft-library-results{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;max-height:340px!important;overflow:auto;padding:12px 1px 1px!important}
.online-draft-library-results .ormea-builder-quick-item{min-height:68px;padding:8px 10px;border-radius:10px;background:#fff}
.online-draft-library-results .ormea-builder-quick-item .ormea-choice-thumb{width:70px;min-width:70px;height:52px}
.ormea-builder-quick-item:disabled{opacity:.46;cursor:default}.ormea-builder-quick-item:disabled:hover{background:#fff}
.online-new-session-footer-fields{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:18px;align-items:end;padding-top:18px}.online-new-session-footer-fields label{margin-top:0!important}.online-new-session-footer-fields p{margin:0 0 9px}
.online-new-session-actions{position:sticky;bottom:-30px;background:linear-gradient(to bottom,rgba(255,253,250,.92),#fffdfa 28%);padding:18px 0 4px;margin-top:14px;z-index:3}
@media(max-width:900px){
  dialog.dialog:has(.online-new-session-wizard){padding:24px 22px}
  .online-new-session-head{grid-template-columns:1fr}.online-new-session-head .wide{grid-column:auto}
  .online-draft-library-results{grid-template-columns:1fr}
  .online-new-session-footer-fields{grid-template-columns:1fr;gap:8px}
}
@media(max-width:620px){
  .online-new-session-wizard .dialog-head h2{font-size:1.45rem}
  .online-draft-block .training-block-heading{align-items:flex-start;flex-direction:column;padding:13px}
  .online-draft-heading-copy{align-items:flex-start}.online-add-from-library{width:100%}
  .online-draft-exercise{grid-template-columns:28px 58px minmax(0,1fr) 30px;padding:8px 9px;gap:8px}.online-draft-exercise .ormea-choice-thumb{width:58px;height:46px}
  .online-draft-library{padding:13px;margin:8px 0}.online-draft-library-head{align-items:flex-start}.online-draft-library-results .ormea-builder-quick-item .ormea-choice-thumb{width:58px;min-width:58px;height:46px}
  .online-new-session-actions{bottom:-22px}
}


/* ORMEA Clientes · permisos, ficha técnica y evolución */
.portal-permission-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.portal-field-table,.portal-metric-table{display:grid;gap:8px}.portal-field-row{display:grid;grid-template-columns:110px minmax(0,1fr) 160px;gap:10px;align-items:end;padding:10px;border:1px solid var(--line,#e4ddd4);border-radius:14px;background:#fbf8f2}.portal-field-row label>span{display:block;margin-bottom:5px;font-size:.84rem;color:#786c60}.portal-metric-row{display:grid;grid-template-columns:minmax(0,1fr) 120px 120px;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line,#e4ddd4);border-radius:14px;background:#fbf8f2}.portal-metrics-admin{margin-top:16px}.portal-metric-history{margin-top:14px}.portal-metric-history .list-row{border-top:1px solid #e5ddd2}.portal-metric-history .list-row:first-child{border-top:0}.portal-client-photo{display:flex;align-items:center;gap:10px;margin-top:12px}.portal-client-photo img{width:58px;height:58px;object-fit:cover;border-radius:16px;border:1px solid #ddd1c2}.portal-client-photo small{color:#786c60}@media(max-width:780px){.ormea-client-portal-admin{align-items:flex-start;flex-direction:column}.portal-permission-grid{grid-template-columns:1fr 1fr}.portal-field-row{grid-template-columns:1fr}.portal-metric-row{grid-template-columns:1fr 1fr}.portal-metric-row strong{grid-column:1/-1}}


/* ORMEA 2.27.5 · Editor de dosificació per exercici abans de crear la sessió */
.online-draft-exercise-wrap{border-bottom:1px solid #eee7de;min-width:0}
.online-draft-exercise-wrap:last-child{border-bottom:0}
.online-draft-exercise-wrap>.online-draft-exercise{border-bottom:0;grid-template-columns:38px 74px minmax(0,1fr) auto}
.online-stage-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.online-stage-actions .online-stage-edit{width:auto;min-width:73px;max-width:none;height:36px;border-radius:9px;font-size:.78rem;padding:5px 12px}
.online-stage-actions .linkbtn{min-width:34px;flex-shrink:0}
.online-stage-note-preview{margin-top:7px!important;font-size:.71rem!important;color:#7c6f61!important;white-space:normal;line-height:1.45}
.online-stage-editor{margin:0 16px 14px 137px;padding:18px 20px 16px;background:#faf7f2;border:1px solid #e4d7c8;border-radius:13px;min-width:0}
.online-stage-editor-heading{margin-bottom:15px}.online-stage-editor-heading strong{display:block;color:#3b3026;font-size:1rem}.online-stage-editor-heading small{display:block;margin-top:4px;color:#7b7064;line-height:1.4;font-size:.75rem}
.online-stage-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:14px;row-gap:12px}
.online-stage-editor-grid label,.online-stage-set-row label{display:block;min-width:0;font-size:.75rem;color:#64584c;font-weight:650;margin:0!important}
.online-stage-editor-grid input,.online-stage-editor-grid textarea,.online-stage-set-row input{display:block;width:100%;min-width:0;box-sizing:border-box;margin-top:5px;padding:9px 11px;font-size:.87rem;line-height:1.35;background:#fffdf9;border:1px solid #dcd0c2;border-radius:9px}
.online-stage-editor-grid input{min-height:41px}
.online-stage-editor-grid .online-stage-instructions{grid-column:1/-1}.online-stage-editor-grid textarea{min-height:72px;resize:vertical}
.online-stage-per-set{display:flex;gap:10px;align-items:center;margin-top:17px!important;color:#4c4036;font-size:.82rem;font-weight:650}
.online-stage-per-set input{width:19px;height:19px;min-height:0;margin:0;flex:none}
.online-stage-series{margin-top:12px;padding:13px 14px;border-radius:10px;background:#fff;border:1px solid #e8dfd4}
.online-stage-series[hidden]{display:none!important}
.online-stage-series-title{font-size:.79rem;font-weight:750;color:#4e4035;margin-bottom:12px}
.online-stage-set-row{display:grid;grid-template-columns:32px repeat(3,minmax(0,1fr));gap:8px;align-items:end;padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid #eee7df}
.online-stage-set-row:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}
.online-stage-set-row>strong{font-size:.78rem;color:#8d7c69;padding:0 0 11px;text-align:center}
.online-stage-editor-actions{display:flex;justify-content:flex-end;margin-top:15px}
.online-stage-editor-actions button{min-height:38px}
@media(max-width:900px){.online-stage-editor{margin-left:16px}.online-stage-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  .online-draft-exercise-wrap>.online-draft-exercise{grid-template-columns:26px 56px minmax(0,1fr);gap:8px}
  .online-stage-actions{grid-column:3;justify-content:flex-start;margin-top:1px}
  .online-stage-actions .online-stage-edit{height:34px;min-width:70px}
  .online-stage-editor{margin:0 9px 12px;padding:14px 12px}
  .online-stage-editor-grid{grid-template-columns:1fr 1fr;gap:11px}
  .online-stage-editor-grid .online-stage-instructions{grid-column:1/-1}
  .online-stage-set-row{grid-template-columns:24px minmax(0,1fr) minmax(0,1fr);row-gap:6px}
  .online-stage-set-row label:last-child{grid-column:2/-1}
  .online-stage-set-row>strong{padding-bottom:10px}
}
@media(max-width:360px){.online-stage-editor-grid{grid-template-columns:1fr}}
