/* The Skin Lab: calm, legible working surfaces. */
:root{--paper:#F1E6D3;--card:#FFFCF6;--ink:#241B14;--muted:#6E5D4A;--line:#DFC9A6;--sage:#4B5D45;--sage-dark:#374332;--gold:#B0703F;--gold-dark:#7A4A28;--rose:#C0433A}
html,body{background:var(--paper)!important;color:var(--ink);scroll-behavior:smooth}
.tsl-root{background:var(--paper)!important;min-height:100dvh!important}
.tsl-root:before{background:var(--paper)!important}
.tsl-root .tsl-card,.tsl-root .tsl-3d-card{background:var(--card)!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 8px 24px rgba(80,50,25,.08)!important;text-shadow:none!important}
.tsl-root .tsl-3d-card.sel{border-color:var(--sage)!important;background:#EEF3EC!important}
.tsl-root .tsl-card:before,.tsl-root .tsl-card:after,.tsl-root .tsl-btn:before,.tsl-root .tsl-btn-solid:before,.tsl-root .tsl-chip:before{display:none!important}
.tsl-root .tsl-input,.tsl-root .tsl-select{background:var(--card)!important;box-shadow:none!important;border:1px solid var(--line)!important;border-radius:10px!important;color:var(--ink)!important;min-height:44px;font-size:14px}
.tsl-root input:focus,.tsl-root textarea:focus,.tsl-root select:focus{outline:3px solid #57776530!important;border-color:var(--sage)!important}
.tsl-root button:focus-visible,.tsl-root [role=button]:focus-visible{outline:3px solid #b29262!important;outline-offset:3px}
.tsl-root .tsl-btn,.tsl-root .tsl-chip,.tsl-root .tsl-navbtn{background:var(--card)!important;color:var(--gold-dark)!important;border:1px solid var(--line)!important;box-shadow:none!important;text-shadow:none!important;border-radius:10px!important;min-height:40px;font-weight:650!important}
.tsl-root .tsl-btn-solid,.tsl-root .tsl-chip.on{background:var(--sage)!important;color:#fff!important;border:1px solid var(--sage)!important;box-shadow:0 5px 14px rgba(55,67,50,.16)!important;text-shadow:none!important;border-radius:10px!important;min-height:44px}
.tsl-root button:disabled{opacity:.42!important;cursor:not-allowed!important;transform:none!important}
.tsl-root .tsl-eyebrow{text-shadow:none!important;color:var(--muted)!important;letter-spacing:.12em!important;font-size:10px!important}
.tsl-root .tsl-h,.tsl-root .tsl-h1,.tsl-root .tsl-h2,.tsl-root .tsl-h3{text-shadow:none!important;letter-spacing:-.025em}
.tsl-root .tsl-seccion .linea{background:var(--line)!important;box-shadow:none!important}
.premium-shell{max-width:1400px!important;margin:0 auto!important;padding:28px 32px 80px!important;display:grid;grid-template-columns:210px minmax(0,1fr);column-gap:38px;align-items:start}
.premium-shell>.premium-header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 24px;border-bottom:1px solid var(--line);margin-bottom:26px}
.premium-brand{font-family:Fraunces,Georgia,serif;font-size:27px;letter-spacing:-1px;color:var(--gold-dark)}
.premium-brand small{font:10px Manrope,sans-serif;display:block;letter-spacing:2px;text-transform:uppercase;margin-top:5px;color:var(--muted)}
.premium-session{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted)}
.premium-nav{grid-column:1;grid-row:2/span 100;position:sticky;top:24px;display:flex;flex-direction:column;gap:23px;padding:3px 0}
.premium-nav h3{font:700 10px Manrope,sans-serif;letter-spacing:1.7px;text-transform:uppercase;color:#7a8880;margin:0 12px 7px}
.premium-nav button{display:flex;align-items:center;gap:11px;width:100%;padding:11px 12px;background:transparent;border:0;border-radius:9px;text-align:left;font:600 12px Manrope,sans-serif;color:var(--muted);cursor:pointer;min-height:40px}
.premium-nav button:hover{background:#EAD9BF}.premium-nav button[aria-current=page]{background:var(--card);color:var(--gold-dark);box-shadow:inset 3px 0 0 var(--gold),0 3px 10px rgba(80,50,25,.06)}
.premium-nav .nav-icon{font-size:15px;opacity:.65;width:20px;text-align:center}.premium-nav .nav-active{width:5px;height:5px;border-radius:50%;background:#577765;margin-left:auto}
.premium-shell>:not(.premium-header):not(.premium-nav){grid-column:2;min-width:0}
.premium-page-title{margin-bottom:25px}.premium-page-title h1{font:500 34px Fraunces,Georgia,serif;margin:0 0 6px;color:var(--ink)}
.premium-page-title p{font-size:13px;color:var(--muted);margin:0;line-height:1.7}
.premium-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}
.premium-metric{padding:22px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 6px 18px rgba(80,50,25,.06)}.premium-metric:first-child{background:#EEF3EC}.premium-metric small{font:700 10px Manrope,sans-serif;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.premium-metric strong{font:500 32px Fraunces,serif;display:block;margin:12px 0 7px;font-variant-numeric:tabular-nums}.premium-metric span{font-size:11px;color:var(--muted)}
.premium-chart{display:flex;align-items:center;gap:28px;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:20px;box-shadow:0 6px 18px rgba(80,50,25,.06)}
.premium-ring{width:96px;height:96px;flex:0 0 96px;border-radius:50%;position:relative}.premium-ring:after{content:'';position:absolute;inset:18px;background:var(--card);border-radius:50%}
.premium-legend{flex:1;display:grid;gap:4px;min-width:0}.premium-legend button{display:grid;grid-template-columns:10px minmax(70px,1fr) auto 45px;align-items:center;gap:12px;border:0;background:none;border-radius:7px;padding:10px 4px;text-align:left;font:500 12px Manrope,sans-serif;color:var(--ink);cursor:pointer}
.premium-legend button:hover,.premium-legend button[aria-pressed=true]{background:#f0f5ef}.premium-legend i{height:8px;width:8px;border-radius:50%}.premium-legend b{font-variant-numeric:tabular-nums}.premium-legend em{font-style:normal;color:var(--muted);text-align:right}
.premium-empty{background:var(--card);border:1px dashed var(--line);border-radius:14px;padding:32px;text-align:center;color:var(--muted);font-size:14px;line-height:1.7}
.premium-notice{padding:13px 16px;border:1px solid #dbc99f;background:#fcf8eb;border-radius:10px;font-size:12px;line-height:1.6;margin-bottom:20px;color:#75623f}
.premium-error{color:#984f47;font-size:13px;line-height:1.6;background:#fbefed;border:1px solid #edd5d0;border-radius:9px;padding:12px;margin:12px 0}
.premium-toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);width:420px;background:#253c35;color:white;padding:15px 18px;border-radius:12px;box-shadow:0 8px 30px #253c3520;z-index:9999;font:13px/1.6 Manrope,sans-serif}
.premium-demo{font:12px/1.5 Manrope,sans-serif;background:#eaf0e8;color:#355842;text-align:center;padding:8px 16px;border-bottom:1px solid #ccd9c9}
.premium-login{max-width:380px;margin:8vh auto;padding:28px}.premium-login h1{font:500 32px Fraunces,serif}.premium-login label{display:block;font-size:12px;font-weight:700;margin-bottom:9px}.premium-login input{width:100%;letter-spacing:.25em}.premium-login p{font-size:13px;line-height:1.7;color:var(--muted)}
@media(max-width:900px){.premium-shell{grid-template-columns:170px minmax(0,1fr);padding:20px!important;gap:20px}.premium-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-session>span{display:none}.premium-chart{gap:15px;padding:18px}}
@media(max-width:650px){.premium-shell{display:block;padding:16px 16px 80px!important}.premium-header{margin-bottom:12px!important;padding-bottom:16px!important}.premium-brand{font-size:23px}.premium-nav{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px;overflow:visible}.premium-nav details{border:1px solid var(--line);border-radius:10px;background:var(--card);align-self:start;box-shadow:0 4px 12px rgba(80,50,25,.06)}.premium-nav summary{font:700 12px Manrope,sans-serif;padding:12px;cursor:pointer;color:var(--gold-dark)}.premium-nav h3{display:none}.premium-nav button{font-size:12px;padding:10px}.premium-page-title h1{font-size:30px}.premium-summary{gap:10px}.premium-metric{padding:16px}.premium-metric strong{font-size:27px}.premium-chart{align-items:flex-start;gap:14px;flex-direction:column}.premium-ring{align-self:center}.premium-legend{width:100%}.premium-session{gap:6px}.premium-session button{font-size:11px!important;padding:8px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.premium-header,.premium-nav,.premium-demo,.premium-page-title{display:none!important}.premium-shell{display:block;padding:0!important}.tsl-root{background:#fff!important}}

/* 2026 unified salon workspace */
html,body{font-family:Manrope,system-ui,sans-serif;background:#e9e1d5!important}
.tsl-root{position:relative;background:transparent!important;isolation:isolate}
.tsl-root:before{content:"";position:fixed!important;inset:0!important;z-index:-2!important;display:block!important;background:linear-gradient(115deg,rgba(244,239,231,.94),rgba(244,239,231,.82)),url("assets/brand-2.webp") center/cover no-repeat!important;opacity:1!important}
.tsl-root:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(226,215,199,.14))}
.premium-shell{display:block!important;max-width:1280px!important;padding:24px 32px 80px!important}
.premium-shell>:not(.premium-header):not(.premium-nav):not(.premium-nav-backdrop){max-width:1080px;margin-left:auto;margin-right:auto}
.premium-header{position:sticky;top:12px;z-index:210;display:flex!important;padding:12px 14px!important;margin-bottom:28px!important;border:1px solid rgba(207,191,169,.9)!important;border-radius:16px;background:rgba(255,252,246,.9);box-shadow:0 12px 36px rgba(65,48,34,.12);backdrop-filter:blur(18px)}
.premium-menu-toggle{width:42px;height:42px;flex:0 0 42px;border:1px solid var(--line);border-radius:11px;background:#fffaf2;color:var(--sage-dark);font-size:21px;cursor:pointer}
.premium-brand{margin-right:auto}.premium-session{margin-left:auto}
.premium-nav-backdrop{position:fixed;inset:0;z-index:218;border:0;background:rgba(32,25,19,.36);backdrop-filter:blur(2px);cursor:pointer}
.premium-nav{position:fixed!important;z-index:220!important;left:0;top:0;bottom:0;width:min(310px,86vw);display:block!important;overflow-y:auto;padding:20px 16px 34px!important;background:rgba(255,252,246,.98);border-right:1px solid var(--line);box-shadow:18px 0 50px rgba(45,35,27,.18);transform:translateX(-105%);transition:transform .24s ease}
.nav-open .premium-nav{transform:translateX(0)}
.premium-nav-head{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 19px;margin-bottom:17px;border-bottom:1px solid var(--line)}
.premium-nav-head strong{display:block;font:500 23px Fraunces,Georgia,serif;color:var(--sage-dark)}
.premium-nav-head span{display:block;margin-top:2px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.premium-nav-head button{width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;justify-content:center!important;border:1px solid var(--line)!important;background:#fff!important;font-size:22px!important}
.premium-nav section{margin:0 0 18px}.premium-nav h3{display:block!important;margin:0 10px 7px!important}.premium-nav button{font-size:13px!important;padding:10px 12px!important}
.premium-page-title{padding:2px 2px 5px}.premium-page-title h1{font-size:clamp(30px,4vw,42px)!important;color:var(--sage-dark)!important}.premium-page-title p{max-width:680px;font-size:13.5px!important}
.tsl-root .tsl-card,.tsl-root .tsl-3d-card,.premium-chart,.premium-metric{background:rgba(255,252,246,.94)!important;border-color:rgba(207,191,169,.92)!important;box-shadow:0 10px 28px rgba(65,48,34,.09)!important;backdrop-filter:blur(8px)}
.tsl-root .tsl-h,.tsl-root .tsl-h1,.tsl-root .tsl-h2,.tsl-root .tsl-h3{font-family:Fraunces,Georgia,serif!important;color:var(--sage-dark);font-weight:560!important}
.tsl-root .tsl-eyebrow{font-weight:800!important;color:var(--gold-dark)!important}
.tsl-root .tsl-btn,.tsl-root .tsl-chip,.tsl-root .tsl-navbtn{min-height:36px!important;padding:7px 12px!important;font-size:12.5px!important}
.tsl-root .tsl-btn-solid{min-height:40px!important;padding:9px 15px!important;font-size:13px!important}
.tsl-root .tsl-link{font-weight:700;color:var(--gold-dark)}
.inventory-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;flex:0 0 auto}.inventory-actions button{min-height:31px!important;padding:4px 8px!important;font-size:10.5px!important}.inventory-actions .tsl-link{border:0;background:transparent}.inventory-actions .danger{color:var(--rose)}
.premium-ring{width:82px!important;height:82px!important;flex-basis:82px!important}.premium-ring:after{inset:17px!important}.premium-chart{padding:18px!important}.premium-legend button{padding:7px 5px!important}
@media(max-width:650px){.premium-shell{display:block!important;padding:10px 11px 70px!important}.premium-header{top:7px;margin-bottom:18px!important;padding:9px 10px!important}.premium-brand{font-size:20px}.premium-brand small{display:none}.premium-session{gap:4px}.premium-session .tsl-btn{padding:6px 8px!important;font-size:10.5px!important}.premium-menu-toggle{width:38px;height:38px;flex-basis:38px}.premium-page-title{margin-bottom:18px}.premium-page-title h1{font-size:30px!important}.premium-nav{width:min(300px,90vw)!important}.premium-summary{grid-template-columns:1fr 1fr!important}.premium-metric{padding:15px!important}.premium-chart{flex-direction:row!important;align-items:flex-start!important}.premium-ring{width:72px!important;height:72px!important;flex-basis:72px!important}.premium-legend button{grid-template-columns:9px minmax(60px,1fr) auto!important}.premium-legend em{display:none}.inventory-actions{grid-template-columns:1fr;min-width:82px}}

/* richer premium contrast */
:root{--paper:#E8DED0;--card:#FFFDF8;--ink:#1D2925;--muted:#59665F;--line:#CDBA9F;--sage:#345548;--sage-dark:#203E34;--gold:#B27A32;--gold-dark:#75451F;--rose:#9D463E}
.tsl-root:before{background:linear-gradient(112deg,rgba(235,226,213,.64),rgba(230,219,201,.42)),url("assets/brand-2.webp") center/cover no-repeat!important;filter:saturate(1.13) contrast(1.04)}
.tsl-root:after{background:linear-gradient(180deg,rgba(255,250,239,.08),rgba(62,48,36,.08))!important}
.premium-header,.tsl-root .tsl-card,.tsl-root .tsl-3d-card,.premium-chart,.premium-metric{background:#FFFDF8!important;border:1.5px solid #BFA57E!important;box-shadow:0 16px 38px rgba(38,27,18,.20),0 2px 0 rgba(255,255,255,.96) inset!important}
.tsl-root .tsl-btn-solid,.tsl-root .tsl-chip.on{background:linear-gradient(145deg,#3F6656,#29483D)!important;border-color:#29483D!important;box-shadow:0 7px 18px rgba(32,62,52,.28)!important}
.tsl-root .tsl-btn,.tsl-root .tsl-chip,.tsl-root .tsl-navbtn{background:#FFF9EE!important;border-color:#C9B28F!important;color:#6D3F1F!important}
.premium-page-title h1,.premium-brand{color:#203E34!important}.premium-nav{background:rgba(255,251,243,.99)!important}
.premium-metric:first-child,.tsl-root .tsl-3d-card.sel{background:#E1ECE6!important}
.premium-page-title{padding:14px 18px!important;border-left:5px solid #A96F29;border-radius:8px;background:linear-gradient(90deg,rgba(255,253,248,.96),rgba(255,253,248,.58));box-shadow:0 8px 24px rgba(38,27,18,.12)}
.premium-page-title h1{color:#173C31!important}.premium-page-title p{color:#3E4C45!important;font-weight:650}
.tsl-root .tsl-eyebrow{color:#8B541E!important}.premium-metric strong{color:#173C31}
.tsl-root .tsl-input,.tsl-root .tsl-select{background:#FFFEFB!important;border:1.5px solid #BDA47E!important}
.tsl-root .tsl-badge{border:1px solid currentColor!important;font-weight:800!important}
.premium-notice{background:#FFF2CE!important;border-color:#C58A35!important;color:#5F421C!important}
.premium-nav button[aria-current=page]{background:linear-gradient(90deg,#E1EEE7,#FFF8EA)!important;color:#183E33!important;box-shadow:inset 4px 0 0 #A96F29,0 5px 14px rgba(42,31,22,.12)!important}
.tsl-root .tsl-btn:hover,.tsl-root .tsl-chip:hover{border-color:#8E612D!important;background:#FFF1D9!important}.tsl-root .tsl-btn-solid:hover{filter:brightness(1.12) saturate(1.12)}
.tsl-landing-hero{background-size:contain!important;background-position:center!important;background-color:#241D18;box-shadow:inset 0 0 100px rgba(0,0,0,.34)}
@media(max-width:650px){.tsl-landing-hero{background-size:cover!important;background-position:center 42%!important}}

/* 2026 precision pass: compact, consistent admin controls */
html,body,#root{width:100%;max-width:100%;overflow-x:hidden}
.tsl-root input,.tsl-root select,.tsl-root textarea{font-size:16px!important;max-width:100%;box-sizing:border-box}
.premium-back{width:42px;height:42px;flex:0 0 42px;border:1px solid var(--line);border-radius:11px;background:#fffaf2;color:var(--sage-dark);font-size:23px;cursor:pointer}
.premium-forgot{display:block;width:100%;margin-top:16px;padding:10px;border:0;background:transparent;color:var(--gold-dark);font:700 12px Manrope,sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.inventory-actions{grid-template-columns:repeat(2,minmax(74px,1fr))!important;width:172px}.inventory-actions button{width:100%;justify-content:center;border-radius:8px!important}.inventory-actions .inventory-use{background:#e9f1ed!important;color:#244b3d!important;border-color:#aac1b6!important}.inventory-actions .inventory-add{background:#fff2dd!important;color:#70491e!important;border-color:#d1af7c!important}.inventory-actions .tsl-link{min-height:30px!important;padding:4px 7px!important;font-size:10.5px!important;border:1px solid #d6c5ad!important;border-radius:8px!important}.inventory-actions .danger{border-color:#d7aaa6!important;background:#fff5f3!important}
.invoice-overlay{position:fixed;inset:0;z-index:500;background:rgba(20,29,25,.68);display:grid;place-items:center;padding:18px;overflow:auto}.invoice-sheet{width:min(680px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#fffdf8;border:1px solid #bfa57e;border-radius:18px;box-shadow:0 28px 80px rgba(18,25,22,.35);padding:26px;color:#1d2925}.invoice-head{display:grid;grid-template-columns:96px 1fr auto;align-items:center;gap:16px;padding-bottom:17px;border-bottom:2px solid #29483d}.invoice-head img{width:96px;max-height:66px;object-fit:contain}.invoice-business{display:flex;flex-direction:column;gap:3px}.invoice-business strong{font:600 18px Fraunces,serif}.invoice-business span,.invoice-number span{font-size:11px;color:#59665f}.invoice-number{text-align:right;display:flex;flex-direction:column}.invoice-number small,.invoice-parties small{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#75451f;font-weight:800}.invoice-number b{font:600 20px Fraunces,serif}.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.invoice-parties>div{display:flex;flex-direction:column;padding:11px 13px;background:#f6efe4;border:1px solid #dbc8aa;border-radius:10px}.invoice-parties b{font-size:13px;margin:3px 0}.invoice-parties span{font-size:11px;color:#59665f}.invoice-items{border-top:1px solid #d9c7aa}.invoice-item{display:flex;justify-content:space-between;gap:15px;padding:9px 5px;border-bottom:1px solid #eadfce;font-size:12.5px}.invoice-zone{padding-left:18px;color:#59665f}.invoice-item-title{padding:10px 5px 4px;font-weight:800;color:#29483d}.invoice-totals{margin-left:auto;width:min(300px,100%);padding-top:10px}.invoice-total{display:flex;justify-content:space-between;margin-top:8px;padding:11px 0;border-top:2px solid #29483d;font:600 21px Fraunces,serif;color:#203e34}.invoice-legal{margin:14px 0 0;font-size:9.5px;color:#6f766f}.invoice-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}
@media(max-width:650px){.premium-back{width:38px;height:38px;flex-basis:38px}.invoice-sheet{padding:17px}.invoice-head{grid-template-columns:72px 1fr}.invoice-head img{width:72px}.invoice-number{grid-column:1/-1;display:grid;grid-template-columns:1fr auto auto;gap:9px;text-align:left;align-items:center}.invoice-parties{grid-template-columns:1fr}.inventory-actions{width:100%;grid-template-columns:repeat(4,1fr)!important}.inventory-actions button{font-size:9.5px!important;padding:5px 3px!important}.premium-session>span{display:none}}

/* booking concierge and premium checkout */
.booking-estimate-title{font:700 18px Fraunces,Georgia,serif;color:#173c31;margin-bottom:12px;letter-spacing:-.01em}
.booking-estimate-head{display:grid;grid-template-columns:minmax(0,1fr) 72px 78px;gap:8px;padding:8px 0 7px;border-bottom:2px solid #29483d;margin-bottom:9px;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:#75451f}
.booking-estimate-head span:nth-child(n+2){text-align:right}
.smart-booking-card{padding:20px;background:linear-gradient(145deg,#fffdf8,#f4e7ce);border:1.5px solid #b98a4b;border-radius:16px;box-shadow:0 14px 32px rgba(53,37,23,.16)}
.smart-booking-card h3{font:650 22px Fraunces,Georgia,serif;color:#173c31;margin:0 0 7px}.smart-booking-card>p{font-size:13px;line-height:1.55;color:#59665f;margin:0 0 14px}
.smart-services{display:grid;gap:5px;padding:11px 12px;background:#fffaf0;border:1px solid #d8c19d;border-radius:10px;margin-bottom:15px}.smart-services>div{display:flex;justify-content:space-between;gap:12px;font-size:12px}.smart-services span{color:#75451f;white-space:nowrap}
.smart-label{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#29483d;margin:13px 0 8px}
.smart-plan{display:block;width:100%;border:1px solid #c6a36c;background:#fffdf8;border-radius:11px;padding:12px;margin:0 0 9px;text-align:left;cursor:pointer;color:#1d2925}.smart-plan:hover{border-color:#29483d;background:#eef4f0}.smart-plan-title{display:block;font-weight:850;color:#75451f;margin-bottom:7px}.smart-plan-line{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:7px;padding:4px 0;border-top:1px solid #eee1cd;font-size:12px}.smart-plan-line small{color:#59665f}
.purchase-preview{position:relative;overflow:hidden;min-height:210px;margin:18px 0 22px;padding:23px;border-radius:19px;color:#fff;background:radial-gradient(circle at 88% 10%,rgba(230,190,101,.45),transparent 27%),linear-gradient(135deg,#142f28,#31594a 55%,#8a5b27);box-shadow:0 18px 38px rgba(22,38,32,.3);border:1px solid rgba(246,218,154,.72)}
.purchase-preview.compact{min-height:170px}.purchase-preview-shine{position:absolute;inset:-80% 35% -80% -25%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent)}
.purchase-preview-top,.purchase-preview-bottom{position:relative;display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:.15em}.purchase-preview-top b{color:#f1d390}.purchase-preview-plan{position:relative;margin:31px 0 24px;font:650 25px Fraunces,Georgia,serif}.purchase-preview-holder{position:relative;display:flex;flex-direction:column}.purchase-preview-holder small{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#d9c8a8}.purchase-preview-holder strong{margin-top:3px}.purchase-preview-bottom{margin-top:20px;align-items:end;letter-spacing:0}.purchase-preview-bottom b{font:650 23px Fraunces,serif;color:#f4da9a}
.payment-method{position:relative}.payment-method:after{content:'›';font-size:24px;color:#8b541e;transform:rotate(90deg)}.payment-method.on:after{content:'⌄'}.payment-qr-note{max-width:310px;margin:12px auto 0;font-size:11.5px;line-height:1.5;color:#59665f}
@media(max-width:480px){.booking-estimate-head{grid-template-columns:minmax(0,1fr) 62px 68px}.smart-plan-line{grid-template-columns:52px minmax(0,1fr)}.smart-plan-line small{grid-column:2}.purchase-preview{min-height:190px;padding:19px}.purchase-preview-plan{font-size:22px}}

/* resilient cover and booking loading states */
.tsl-landing-hero{isolation:isolate;background:linear-gradient(145deg,#34251c,#151f1b)!important}
.tsl-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%;z-index:-1;display:block;background:#2b211b}
.booking-load-state{padding:25px 20px;text-align:center;background:#fffdf8;border:1.5px solid #bfa57e;border-radius:15px;box-shadow:0 12px 28px rgba(38,27,18,.14)}.booking-load-state strong{display:block;font:650 20px Fraunces,serif;color:#173c31}.booking-load-state p{font-size:13px;line-height:1.55;color:#59665f;margin:8px auto 16px;max-width:310px}.booking-load-state button{min-width:150px}
@media(max-width:650px){.tsl-hero-image{object-position:center 42%}}

/* compact inventory records and one consistent action menu */
.supply-card{display:grid;grid-template-columns:minmax(0,1fr) 88px 126px;align-items:center;gap:14px;padding:14px 16px;background:#fffdf8;border:1px solid #cdbb9f;border-left:4px solid #b27a32;border-radius:12px;box-shadow:0 5px 14px rgba(50,35,24,.08)}.supply-card.low{background:#fff6f3;border-color:#c9877f;border-left-color:#9d463e}.supply-info{min-width:0}.supply-name{font:650 18px Fraunces,Georgia,serif;color:#1d2925;line-height:1.25}.supply-alert{font-size:11.5px;color:#59665f;margin-top:4px}.supply-card.low .supply-alert{color:#9d463e;font-weight:750}.supply-qty{text-align:center}.supply-qty strong{display:block;font:650 29px Fraunces,Georgia,serif;color:#173c31;line-height:1}.supply-card.low .supply-qty strong{color:#9d463e}.supply-qty span{display:block;margin-top:3px;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:#59665f}.inventory-menu{width:126px!important;min-height:40px!important;font-weight:750!important;color:#6d3f1f!important;cursor:pointer}
@media(max-width:650px){.supply-card{grid-template-columns:minmax(0,1fr) 70px;gap:10px}.inventory-menu{grid-column:1/-1;width:100%!important}.supply-name{font-size:17px}.supply-qty strong{font-size:26px}}
.record-menu{width:118px!important;min-height:38px!important;font-size:11.5px!important;font-weight:750!important;color:#6d3f1f!important;cursor:pointer}
@media(max-width:520px){.record-menu{width:108px!important}}

/* unified information hierarchy for administration records */
.admin-record{display:grid;grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:16px;padding:15px 16px;background:#fffdf8;border:1px solid #cdbb9f;border-left:4px solid #9d463e;border-radius:12px;box-shadow:0 6px 16px rgba(48,33,22,.09)}.admin-record-main{min-width:0}.admin-record-title{display:block;font:650 18px Fraunces,Georgia,serif;color:#1d2925;line-height:1.25}.admin-record-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px;font-size:12.5px;color:#59665f}.admin-record-meta b{padding:3px 8px;border-radius:7px;background:#f1e4cf;color:#75451f}.admin-record-meta time{font-weight:650}.admin-record-detail{margin-top:7px;font-size:13px;color:#4c5952}.admin-record-detail b{color:#29483d}.admin-record-value{text-align:right}.admin-record-value>strong{display:block;margin-bottom:8px;font:650 28px Fraunces,Georgia,serif;color:#9d463e;line-height:1}
@media(max-width:520px){.admin-record{grid-template-columns:minmax(0,1fr) 108px;padding:13px 12px;gap:10px}.admin-record-title{font-size:17px}.admin-record-value>strong{font-size:24px}}
.expense-record{grid-template-columns:minmax(0,1fr) 132px!important;border-left-color:#B27A32!important}.expense-record .admin-record-title{font-size:22px;color:#241B14}.expense-record .admin-record-meta{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-top:7px}.expense-record .admin-record-meta b{font-size:12px}.expense-record .admin-record-meta time{font-size:12px;color:#6E5D4A}.expense-record .admin-record-detail{font-size:11px;color:#8A7B6C;text-transform:uppercase;letter-spacing:.08em}.expense-record .admin-record-value>strong{font-size:32px;color:#75451F}.expense-record .record-menu{margin-top:4px}
.tsl-root .tsl-card{background:linear-gradient(145deg,#FFFDF8 0%,#F7EAD4 100%)!important}.tsl-root .tsl-input,.tsl-root .tsl-select{background:#FFF8EA!important}.tsl-root .tsl-btn,.tsl-root .tsl-chip,.tsl-root .record-menu,.tsl-root .inventory-menu{background:linear-gradient(180deg,#FFF8E9,#F1DFBD)!important;border-color:#C6A36C!important;color:#6B4E18!important;box-shadow:0 3px 0 #D0B27D,0 5px 10px rgba(90,60,20,.08)!important}.tsl-root .tsl-btn-solid{box-shadow:0 5px 0 #B58F3E,0 8px 16px rgba(90,60,20,.22),inset 0 1px 0 rgba(255,255,255,.9)!important}
.record-actions,.appointment-actions{display:flex!important;align-items:center;gap:7px;flex-wrap:nowrap!important}.record-actions button,.appointment-actions button{white-space:nowrap!important;min-width:0!important}.appointment-actions .danger{margin-left:auto!important}
@media(max-width:680px){.record-actions,.appointment-actions{gap:5px}.record-actions button,.appointment-actions button{font-size:11px!important;padding:7px 8px!important}.appointment-actions{overflow-x:auto;padding-bottom:3px}.expense-record{grid-template-columns:minmax(0,1fr) 112px!important}.expense-record .admin-record-value>strong{font-size:27px}}

/* warm luxury identity: the booking-button family replaces decorative green */
:root{--sage:#8B4A2F;--sage-dark:#5A2A1C;--gold:#C18B45;--gold-dark:#73401F;--line:#C9AB7D}
.tsl-root .tsl-btn-solid,.tsl-root .tsl-chip.on{background:linear-gradient(145deg,#A7653D 0%,#7A3F27 52%,#572719 100%)!important;border:1px solid #6B321F!important;color:#FFF9ED!important;box-shadow:0 8px 18px rgba(75,34,21,.3),inset 0 1px 0 rgba(255,226,176,.35)!important}
.tsl-root .tsl-btn-solid:hover,.tsl-root .tsl-chip.on:hover{filter:brightness(1.08) saturate(1.08);transform:translateY(-1px)}
.tsl-root input:focus,.tsl-root textarea:focus,.tsl-root select:focus{outline-color:rgba(166,101,61,.22)!important;border-color:#9B5D37!important}
.premium-page-title h1,.premium-brand,.tsl-root .tsl-h,.tsl-root .tsl-h1,.tsl-root .tsl-h2,.tsl-root .tsl-h3,.premium-metric strong{color:#51291D!important}
.premium-menu-toggle,.premium-back{color:#6B321F!important}.premium-metric:first-child,.tsl-root .tsl-3d-card.sel{background:linear-gradient(145deg,#FFF8EA,#F3DFC1)!important;border-color:#B77A43!important}
.premium-nav button[aria-current=page]{background:linear-gradient(90deg,#F4DDC0,#FFF9ED)!important;color:#5A2A1C!important;box-shadow:inset 4px 0 0 #A7653D,0 5px 14px rgba(67,31,19,.14)!important}.premium-nav .nav-active{background:#A7653D!important}
.premium-toast{background:#552A1C!important;box-shadow:0 12px 30px rgba(55,24,14,.3)!important}.premium-demo{background:#F5DFC3!important;color:#63351F!important;border-color:#D3AD7B!important}
.smart-booking-card h3,.smart-label,.booking-estimate-title,.booking-load-state strong{color:#5A2A1C!important}.smart-plan:hover{border-color:#8B4A2F!important;background:#FFF3DF!important}.booking-estimate-head{border-color:#7A3F27!important}

/* tangible membership and gift cards */
.purchase-preview{isolation:isolate;transform:perspective(900px) rotateX(1.2deg);border:1px solid rgba(246,211,137,.85)!important;box-shadow:0 28px 48px rgba(44,22,13,.34),0 10px 18px rgba(44,22,13,.2),inset 0 1px 0 rgba(255,255,255,.38)!important}
.purchase-preview:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 82% 8%,rgba(255,221,145,.38),transparent 30%),linear-gradient(155deg,transparent 0 43%,rgba(255,255,255,.09) 44%,transparent 58%),linear-gradient(180deg,transparent 62%,rgba(21,8,3,.34));pointer-events:none}
.purchase-preview.premium{background:radial-gradient(circle at 82% 9%,rgba(215,167,75,.36),transparent 25%),linear-gradient(132deg,#3A2B18 0%,#080706 29%,#17110A 55%,#050505 76%,#49351C 100%)!important;color:#FFF5DD!important;border-color:#D4A653!important;box-shadow:0 30px 58px rgba(0,0,0,.48),0 8px 18px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,226,156,.28)!important}
.purchase-preview.premium .purchase-preview-top b,.purchase-preview.premium .purchase-preview-bottom b{color:#F0C66F!important;text-shadow:0 1px 10px rgba(231,181,78,.24)}
.purchase-preview.essential{background:radial-gradient(circle at 85% 8%,rgba(255,250,226,.78),transparent 28%),linear-gradient(132deg,#FFF9E7 0%,#E7C889 30%,#B9853C 58%,#F3DDA8 82%,#8E5E27 100%)!important;color:#24140C!important;border-color:#F5D995!important;box-shadow:0 28px 50px rgba(99,58,18,.34),inset 0 1px 1px rgba(255,255,255,.72)!important}
.purchase-preview.essential .purchase-preview-top b,.purchase-preview.essential .purchase-preview-bottom b,.purchase-preview.essential .purchase-preview-holder small{color:#522719!important}.purchase-preview.essential .purchase-preview-shine{opacity:.75}
.purchase-preview.gift{background:radial-gradient(circle at 84% 8%,rgba(255,222,168,.42),transparent 28%),linear-gradient(135deg,#7B3E25 0%,#A9673C 38%,#6A2F1E 67%,#C08A4D 100%)!important;color:#FFF7E9!important;border-color:#E0B76F!important;box-shadow:0 28px 52px rgba(74,31,18,.38),inset 0 1px 0 rgba(255,240,205,.45)!important}
.purchase-preview.gift .purchase-preview-top b,.purchase-preview.gift .purchase-preview-bottom b{color:#FFE0A1!important}
.purchase-preview-plan{text-shadow:0 2px 12px rgba(24,9,3,.28)}
.purchase-preview-top{align-items:flex-start}.purchase-preview-top>span{font-weight:850}.purchase-preview-amount{font:650 25px Fraunces,Georgia,serif!important;letter-spacing:0!important;line-height:1;color:inherit!important}
.purchase-preview-plan{margin:28px 0 30px!important;text-transform:uppercase;letter-spacing:.04em;font-size:22px!important}
.purchase-preview-bottom{align-items:flex-end!important}.purchase-preview-holder{min-width:0;max-width:56%}.purchase-preview-holder strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-preview-note{max-width:42%;font:600 12px/1.3 Fraunces,Georgia,serif!important;letter-spacing:0!important;text-align:right;font-style:italic;overflow-wrap:anywhere}
.purchase-preview.gift .purchase-preview-holder strong,.purchase-preview.essential .purchase-preview-holder strong{color:#24140C!important;text-shadow:0 1px 0 rgba(255,255,255,.35)}.purchase-preview.gift .purchase-preview-note{color:#FFF0D5}.purchase-preview.premium .purchase-preview-holder strong{color:#FFF5DD!important}
@media(max-width:480px){.purchase-preview-amount{font-size:22px!important}.purchase-preview-plan{font-size:19px!important;margin:24px 0 26px!important}.purchase-preview-note{font-size:11px!important}}

/* final salon palette: action buttons match the original appointment CTA */
.tsl-root .tsl-btn-solid,.tsl-root .tsl-chip.on{background:linear-gradient(178deg,#FBEFCF 0%,#F2DDA6 30%,#DCB86A 66%,#C99E4E 100%)!important;color:#241B14!important;border:1px solid #B58F3E!important;box-shadow:0 5px 0 #B58F3E,0 8px 16px rgba(90,60,20,.22),inset 0 1px 0 rgba(255,255,255,.9)!important;text-shadow:0 1px 0 rgba(255,255,255,.3)!important}
.tsl-root .tsl-btn-solid:hover,.tsl-root .tsl-chip.on:hover{background:linear-gradient(178deg,#FFF8E5 0%,#F6E8BE 30%,#E4C878 66%,#C99E4E 100%)!important;filter:none!important}
.premium-nav button[aria-current=page]{background:linear-gradient(90deg,#F8EBCB,#FFF9ED)!important;color:#6B4E18!important;box-shadow:inset 4px 0 0 #C99E4E,0 5px 14px rgba(90,60,20,.12)!important}.premium-nav .nav-active{background:#C99E4E!important}

/* 2026-09 luxury correction: black, gold and warm brown only */
:root{--sage:#B58F3E;--sage-dark:#5C431E;--rose:#8A4F36}
.premium-page-title h1,.premium-brand,.tsl-root .tsl-h,.tsl-root .tsl-h1,.tsl-root .tsl-h2,.tsl-root .tsl-h3,.premium-metric strong,.booking-load-state strong,.smart-booking-card h3{color:#302014!important}
.premium-metric:first-child,.tsl-root .tsl-3d-card.sel{background:linear-gradient(145deg,#FFF9EA,#E9D09A)!important;border-color:#B58F3E!important}
.premium-toast{background:#241B14!important}.premium-demo{background:#F4E3BC!important;color:#4A351B!important;border-color:#C9A55F!important}
.premium-notice{background:#FFF2CE!important;border-color:#B58F3E!important;color:#513A19!important}
.premium-nav button[aria-current=page]{background:linear-gradient(90deg,#F8E9C0,#FFF9ED)!important;color:#4A351B!important;box-shadow:inset 4px 0 0 #B58F3E,0 5px 14px rgba(68,45,19,.14)!important}
.premium-nav .nav-active{background:#B58F3E!important}

/* Real payment-card proportion and hierarchy */
.purchase-preview{width:min(100%,430px)!important;min-height:0!important;aspect-ratio:1.586/1;margin:18px auto 24px!important;padding:22px 24px!important;border-radius:22px!important;display:flex;flex-direction:column;justify-content:space-between;transform:perspective(900px) rotateX(1deg)!important}
.purchase-preview.compact{min-height:0!important;aspect-ratio:1.586/1}
.purchase-preview.premium{background:radial-gradient(circle at 76% 8%,rgba(215,167,75,.34),transparent 28%),linear-gradient(135deg,#050505 0%,#21180C 48%,#090806 74%,#4B3518 100%)!important}
.purchase-preview.essential{background:radial-gradient(circle at 82% 7%,rgba(255,250,224,.82),transparent 30%),linear-gradient(135deg,#FFF9E8 0%,#DDBB73 42%,#8D6129 74%,#E8CF95 100%)!important}
.purchase-preview.gift{background:radial-gradient(circle at 82% 7%,rgba(255,239,198,.58),transparent 29%),linear-gradient(135deg,#604221 0%,#A6793D 43%,#4A3017 76%,#C6A05C 100%)!important}
.purchase-preview-top{z-index:2;align-items:flex-start!important}.purchase-preview-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.purchase-preview-top span{font-weight:850}.purchase-preview-tier{font:750 9px/1.2 Manrope,sans-serif;letter-spacing:.13em;color:#E3BD69;padding:4px 8px;border:1px solid currentColor;border-radius:999px;background:rgba(0,0,0,.12)}
.purchase-preview.essential .purchase-preview-tier{color:#38240F;background:rgba(255,250,230,.28)}.purchase-preview.gift .purchase-preview-tier{color:#FFF0C6}
.purchase-preview-qr{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:62px;height:62px;padding:6px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#F9E7B7,#B88938);border:1px solid rgba(65,41,12,.45);box-shadow:0 6px 15px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.75);z-index:3;color:#3B2711;font:800 10px Manrope,sans-serif;letter-spacing:.08em}
.purchase-preview-qr img{display:block;width:100%;height:100%;object-fit:cover;border-radius:5px;mix-blend-mode:multiply}
.purchase-preview-plan{display:none!important}.purchase-preview-bottom{z-index:2;margin-top:auto!important}.purchase-preview-holder strong{font-size:14px!important}.purchase-preview-note{font-size:12px!important;max-width:45%;color:inherit!important}

/* Compact record menus: a small discreet tab, full choices after opening */
.record-menu,.inventory-menu{width:46px!important;min-width:46px!important;max-width:46px!important;height:38px!important;min-height:38px!important;padding:0 17px 0 5px!important;color:transparent!important;background-color:#F1DFBD!important;background-image:none!important;border:1px solid #B58F3E!important;border-radius:10px!important;box-shadow:0 3px 8px rgba(76,52,18,.12)!important;cursor:pointer}
.record-menu option,.inventory-menu option{color:#241B14!important;background:#FFF9ED!important;font-size:13px!important}
.record-menu:focus,.inventory-menu:focus{color:transparent!important}
.supply-card{grid-template-columns:minmax(0,1fr) 72px 46px!important;padding:12px 14px!important;gap:10px!important}.supply-name{font-size:19px!important}.supply-qty strong{font-size:31px!important}
.admin-record{grid-template-columns:minmax(0,1fr) 100px!important;padding:12px 14px!important;gap:11px!important}.admin-record-title{font-size:20px!important}.admin-record-value>strong{font-size:30px!important}.expense-record .admin-record-meta{gap:4px!important}.expense-owner{font-size:13px;font-weight:850;color:#302014}.expense-record .admin-record-detail{font-size:12.5px!important;line-height:1.45;text-transform:none!important;letter-spacing:0!important}.expense-record .record-menu{margin-left:auto!important}

/* Warm premium invoice with a larger, balanced logo */
.invoice-overlay{background:rgba(28,20,13,.72)!important}.invoice-sheet{width:min(640px,100%)!important;background:linear-gradient(155deg,#FFFDF8,#F6E8CE)!important;border:1px solid #B58F3E!important;border-radius:16px!important;padding:24px 28px!important;box-shadow:0 30px 80px rgba(24,15,8,.42)!important}.invoice-head{grid-template-columns:126px 1fr auto!important;gap:18px!important;padding-bottom:14px!important;border-bottom:2px solid #B58F3E!important}.invoice-head img{width:126px!important;max-height:82px!important}.invoice-business strong{font-size:20px!important;color:#302014}.invoice-number small,.invoice-parties small{color:#795722!important}.invoice-number b{font-size:22px!important;color:#302014}.invoice-parties{margin:12px 0!important}.invoice-parties>div{background:#F4E4C7!important;border-color:#CDB07C!important;padding:10px 12px!important}.invoice-item-title{color:#4A351B!important}.invoice-total{border-color:#B58F3E!important;color:#302014!important}.invoice-actions .tsl-btn-solid{min-width:125px}

@media(max-width:650px){.purchase-preview{padding:18px 19px!important;border-radius:18px!important}.purchase-preview-qr{width:54px;height:54px}.purchase-preview-amount{font-size:21px!important}.supply-card{grid-template-columns:minmax(0,1fr) 62px 42px!important}.record-menu,.inventory-menu{grid-column:auto!important;width:42px!important;min-width:42px!important;max-width:42px!important}.admin-record,.expense-record{grid-template-columns:minmax(0,1fr) 86px!important}.invoice-sheet{padding:18px!important}.invoice-head{grid-template-columns:105px 1fr!important}.invoice-head img{width:105px!important}.invoice-number{grid-column:1/-1!important}}
.inventory-actions .inventory-use,.premium-legend button:hover,.premium-legend button[aria-pressed=true]{background:#F6E7C9!important;color:#4A351B!important;border-color:#C9A55F!important}
.premium-ring:after{background:#FFF8EA!important}.booking-load-state,.smart-services,.smart-plan{background:#FFF8EA!important;border-color:#C9A55F!important}
.founder-banner .tsl-h{color:#FFF8E8!important;text-shadow:0 2px 12px rgba(0,0,0,.4)!important}

/* Card and expense hierarchy requested after live review */
.purchase-preview-tier{font:750 17px/1.1 Fraunces,Georgia,serif!important;letter-spacing:.04em!important;color:#EFCB7D!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;text-shadow:0 2px 10px rgba(0,0,0,.28)!important}
.purchase-preview.essential .purchase-preview-tier{color:#38240F!important;text-shadow:0 1px 0 rgba(255,255,255,.4)!important}.purchase-preview.gift .purchase-preview-tier{color:#FFF0C6!important}
.purchase-preview-qr{left:28%!important;top:49%!important;width:60px!important;height:52px!important}
.purchase-preview-note{font-size:13px!important;max-width:48%!important;font-weight:700!important;color:inherit!important}
.expense-record{min-height:0!important;padding-block:10px!important}.expense-record .admin-record-value{align-self:center!important}.expense-record .record-menu{display:none!important}
@media(max-width:650px){.purchase-preview-qr{width:54px!important;height:47px!important}.expense-record{grid-template-columns:minmax(0,1fr) 82px!important}.expense-record .admin-record-title{font-size:20px!important}.expense-record .admin-record-value>strong{font-size:27px!important}}

/* Financial model adapted from the supplied compact mobile references */
.expense-period-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:4px;margin:0 0 14px;background:rgba(255,249,237,.9);border:1px solid #CDB27D;border-radius:13px;box-shadow:0 5px 14px rgba(66,44,18,.08)}
.expense-period-tabs button{min-height:38px;border:0;border-radius:9px;background:transparent;color:#756044;font:750 12px Manrope,sans-serif;cursor:pointer}.expense-period-tabs button[aria-selected=true]{background:linear-gradient(180deg,#F7E8BC,#D9B566);color:#302014;box-shadow:0 3px 8px rgba(84,56,18,.16)}
.expense-total-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;margin-bottom:15px;border:1px solid #CDB27D;border-radius:14px;background:linear-gradient(145deg,#FFFDF8,#F3E3C3);box-shadow:0 7px 18px rgba(65,43,19,.09)}.expense-total-card>div{display:flex;flex-direction:column;gap:4px}.expense-total-card span{font:800 13px Manrope,sans-serif;color:#4B3823}.expense-total-card small{font:600 11px Manrope,sans-serif;color:#7A6A55}.expense-total-card strong{font:750 clamp(24px,4vw,32px) Fraunces,Georgia,serif;color:#70491E;white-space:nowrap;font-variant-numeric:tabular-nums}
.expense-chart{display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;align-items:center!important;gap:22px!important;padding:18px!important}.expense-chart .premium-ring{width:138px!important;height:138px!important;flex-basis:138px!important}.expense-chart .premium-ring:after{inset:29px!important}.premium-ring-center{position:absolute;inset:29px;z-index:2;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.premium-ring-center small{font:750 9px Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#806B4B}.premium-ring-center strong{max-width:76px;font:750 15px/1.15 Fraunces,Georgia,serif;color:#302014;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.expense-chart .premium-legend button{grid-template-columns:10px minmax(70px,1fr) 42px minmax(68px,auto)!important;padding:8px 7px!important;border-bottom:1px solid rgba(201,171,119,.36)!important;border-radius:7px!important}.expense-chart .premium-legend button:last-child{border-bottom:0!important}.expense-chart .premium-legend span{font-weight:700!important}.expense-chart .premium-legend em{order:0!important;font-size:11px!important}.expense-chart .premium-legend b{text-align:right!important;color:#5F421C!important;white-space:nowrap!important;font-size:12px!important}.expense-clear{grid-template-columns:1fr!important;text-align:center!important;color:#795722!important}
.expense-record{position:relative;grid-template-columns:44px minmax(0,1fr) minmax(92px,auto)!important;min-height:82px!important;padding:11px 14px!important;border-left:1px solid #CDBB9F!important}.expense-record:before{content:'$';width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#F5E4B4,#C99E4E);border:1px solid #B58F3E;color:#302014;font:800 18px Fraunces,serif;box-shadow:0 3px 8px rgba(76,50,18,.14)}.expense-record .admin-record-title{font-size:18px!important;line-height:1.15!important}.expense-record .admin-record-meta{display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;margin-top:5px!important}.expense-record .admin-record-meta b{padding:2px 7px!important;font-size:10.5px!important}.expense-record .admin-record-meta time,.expense-record .expense-owner{font-size:11px!important}.expense-record .admin-record-detail{margin-top:4px!important;font-size:11.5px!important}.expense-record .admin-record-value{min-width:0!important;text-align:right!important}.expense-record .admin-record-value>strong{display:block!important;max-width:100%!important;margin:0!important;font:750 clamp(19px,3vw,27px)/1 Fraunces,Georgia,serif!important;color:#70491E!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important;letter-spacing:-.02em!important}
@media(max-width:650px){.expense-chart{grid-template-columns:1fr!important;justify-items:center!important}.expense-chart .premium-legend{width:100%!important}.expense-record{grid-template-columns:38px minmax(0,1fr) minmax(84px,auto)!important;gap:8px!important;padding:10px!important}.expense-record:before{width:32px;height:32px;font-size:16px}.expense-record .admin-record-title{font-size:16.5px!important}.expense-record .admin-record-value>strong{font-size:clamp(18px,5.2vw,23px)!important}.expense-total-card{padding:14px}.expense-total-card strong{font-size:clamp(22px,7vw,28px)}}

/* Tarjetas físicas 2026-09: sin marcos, color profundo, foil y relieve sutil. */
.purchase-preview{border:0!important;border-radius:17px!important;box-shadow:0 18px 32px rgba(45,27,14,.34),0 5px 11px rgba(45,27,14,.22),inset 0 1px 1px rgba(255,255,255,.16)!important;color:#F4D991!important;isolation:isolate}
.purchase-preview:before{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;background:linear-gradient(116deg,transparent 8%,rgba(255,255,255,.03) 37%,rgba(255,231,175,.16) 49%,rgba(255,255,255,.025) 61%,transparent 88%)!important;pointer-events:none!important}
.purchase-preview-shine{inset:-70% 43% -70% -34%!important;opacity:.62!important;background:linear-gradient(90deg,transparent,rgba(255,236,191,.16),transparent)!important}
.purchase-preview.premium{background:radial-gradient(ellipse at 82% 4%,rgba(222,178,85,.19),transparent 31%),linear-gradient(138deg,#020202 0%,#17130D 42%,#050505 72%,#241A0D 100%)!important;color:#F5DB97!important}
.purchase-preview.essential{background:radial-gradient(ellipse at 84% 5%,rgba(242,219,169,.34),transparent 31%),linear-gradient(138deg,#493629 0%,#846B59 43%,#564236 73%,#967B65 100%)!important;color:#F6DFA5!important}
.purchase-preview.gift{background:radial-gradient(ellipse at 84% 5%,rgba(255,246,207,.38),transparent 29%),repeating-linear-gradient(100deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px),linear-gradient(138deg,#805719 0%,#D7A94C 40%,#A37324 72%,#E0BE6D 100%)!important;color:#24170C!important}
.purchase-preview-tier{font:650 21px/1.1 Fraunces,Georgia,serif!important;letter-spacing:.08em!important;text-shadow:0 2px 12px rgba(0,0,0,.3)!important}
.purchase-preview.essential .purchase-preview-tier{color:#FFE6A8!important;text-shadow:0 2px 10px rgba(30,18,10,.38)!important}.purchase-preview.gift .purchase-preview-tier{color:#28190C!important;text-shadow:0 1px 0 rgba(255,248,218,.28)!important}
.purchase-preview-holder strong{font-size:14px!important;font-weight:700!important}.purchase-preview-note{font-size:12px!important;line-height:1.25!important;font-weight:650!important}.purchase-preview.gift .purchase-preview-note,.purchase-preview.gift .purchase-preview-holder strong{color:#28190C!important}
.appointment-created-at{margin:-2px 0 10px;padding-top:7px;border-top:1px solid rgba(181,143,62,.24);font-size:11.5px;font-weight:700;color:#806B50;letter-spacing:.01em}
@media(max-width:650px){.purchase-preview-tier{font-size:18px!important}.purchase-preview-holder strong{font-size:13px!important}.purchase-preview-note{font-size:11.5px!important}.appointment-created-at{font-size:11px}}

/* El panel aparece apenas se valida el PIN; estas formas se sustituyen por los datos reales en segundo plano. */
.team-opening{min-height:100vh}.team-opening .premium-header{position:sticky;top:0}.team-opening-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.team-opening-card{height:116px;padding:18px;border-radius:15px;background:linear-gradient(145deg,rgba(255,250,239,.96),rgba(235,216,180,.92));border:1px solid #C9A55F;box-shadow:0 7px 18px rgba(60,39,18,.1);overflow:hidden}.team-opening-card i,.team-opening-card b,.team-opening-card span{display:block;border-radius:999px;background:linear-gradient(90deg,#E5C987 0%,#FFF1C7 48%,#D6B56C 100%);background-size:220% 100%;animation:teamOpening 1.05s ease-in-out infinite}.team-opening-card i{width:42%;height:11px}.team-opening-card b{width:66%;height:27px;margin-top:15px}.team-opening-card span{width:88%;height:9px;margin-top:15px}@keyframes teamOpening{0%{background-position:100% 0}100%{background-position:-120% 0}}@media(max-width:650px){.team-opening-grid{grid-template-columns:1fr}.team-opening-card{height:98px}}

/* Follow-up: quieter cards, dropdown period and no decorative expense icon */
.expense-period-tabs{display:none!important}.expense-period-select{display:flex;align-items:center;gap:11px;margin:0 0 14px}.expense-period-select>span{font:750 13px Manrope,sans-serif;color:#6E5D4A}.expense-period-select select{width:min(220px,100%)!important;min-height:42px!important;background:#FFF8EA!important;border-color:#C9A55F!important;color:#302014!important;font-weight:750!important}
.expense-record{grid-template-columns:minmax(0,1fr) minmax(96px,auto)!important;min-height:72px!important;padding:11px 14px!important}.expense-record:before{display:none!important}.expense-record .admin-record-title{font-family:Manrope,sans-serif!important;font-size:16px!important;font-weight:850!important;letter-spacing:0!important}.expense-record .admin-record-meta{gap:8px!important}.expense-record .expense-owner{font-size:13.5px!important;font-weight:850!important;color:#302014!important}.expense-record .admin-record-meta b{font-size:12.5px!important;font-weight:800!important;padding:3px 8px!important}.expense-record .admin-record-detail{font-size:12px!important;color:#6E5D4A!important}.expense-record .admin-record-detail span{font-weight:750;color:#4A351B}.expense-record .admin-record-value{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:6px!important}.expense-record .admin-record-value>strong{font:750 clamp(18px,2.5vw,23px)/1.05 Fraunces,Georgia,serif!important;color:#241B14!important}.expense-record .admin-record-value time{font:700 11.5px Manrope,sans-serif;color:#75644E;white-space:nowrap}

/* Payment preview: centered plan name, real chip at the side, readable personalization */
.purchase-preview-top>div{display:contents!important}.purchase-preview-tier{position:absolute!important;left:50%!important;top:42%!important;transform:translate(-50%,-50%)!important;width:max-content!important;max-width:48%!important;text-align:center!important;font-size:23px!important;letter-spacing:.06em!important;color:#EFCB7D!important}.purchase-preview.essential .purchase-preview-tier{color:#302014!important}.purchase-preview-chip{position:absolute;left:10%;top:42%;transform:translateY(-50%);width:48px;height:38px;border-radius:8px;overflow:hidden;background:linear-gradient(145deg,#FFF0B9,#C69A42 47%,#F0CF82);border:1px solid rgba(80,52,15,.45);box-shadow:0 5px 12px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.75)}.purchase-preview-chip:before,.purchase-preview-chip:after,.purchase-preview-chip i{content:'';position:absolute;background:rgba(91,59,18,.28)}.purchase-preview-chip:before{left:15px;top:0;width:1px;height:100%}.purchase-preview-chip:after{right:15px;top:0;width:1px;height:100%}.purchase-preview-chip i:nth-child(1){left:0;right:0;top:12px;height:1px}.purchase-preview-chip i:nth-child(2){left:0;right:0;bottom:12px;height:1px}.purchase-preview-chip i:nth-child(3){left:15px;right:15px;top:12px;bottom:12px;border:1px solid rgba(91,59,18,.28);background:transparent}.purchase-preview-qr{display:none!important}.purchase-preview-holder{max-width:54%!important}.purchase-preview-holder strong{font-size:17px!important;font-weight:800!important}.purchase-preview-note{max-width:44%!important;font-size:15px!important;line-height:1.2!important;font-weight:750!important}
@media(max-width:650px){.expense-record{grid-template-columns:minmax(0,1fr) minmax(86px,auto)!important}.expense-record .admin-record-value>strong{font-size:20px!important}.purchase-preview-tier{font-size:20px!important}.purchase-preview-chip{width:43px;height:34px}.purchase-preview-holder strong{font-size:15px!important}.purchase-preview-note{font-size:13px!important}}

/* Versión 2.4.3: tarjeta más compacta y finanzas unificadas */
.purchase-preview{width:min(100%,344px)!important;padding:18px 20px!important;border-radius:18px!important}
.purchase-preview-chip{display:none!important}
.purchase-preview-tier{top:43%!important;max-width:72%!important}
.finance-module-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 18px;padding:5px;border:1px solid #CDAA64;border-radius:14px;background:linear-gradient(145deg,#F8EEDB,#E8D2A8);box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 7px 18px rgba(79,50,24,.12)}
.finance-module-tabs button{min-height:42px;border:0;border-radius:10px;background:transparent;color:#6B4726;font:800 14px/1.1 Manrope,sans-serif;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.finance-module-tabs button[aria-pressed="true"]{color:#FFF9E9;background:linear-gradient(135deg,#3B291A,#7A4A28 58%,#B88A3F);box-shadow:0 5px 12px rgba(57,35,17,.25),inset 0 1px 0 rgba(255,231,176,.36)}
@media(max-width:650px){.purchase-preview{width:min(100%,344px)!important;padding:16px 17px!important}.purchase-preview-tier{font-size:18px!important}.purchase-preview-holder strong{font-size:14px!important}.purchase-preview-note{font-size:12px!important}.finance-module-tabs{position:sticky;top:66px;z-index:5}}

/* Egresos: un solo listado, abierto desde la categoría seleccionada */
.expense-drilldown{margin:14px 0 22px}
.expense-drilldown-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 2px 10px;color:#3B291A}
.expense-drilldown-head strong{font:800 18px/1.2 Fraunces,serif}
.expense-drilldown-head span{font-size:12px;font-weight:700;color:#7A654F}
.expense-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 15px;border:1px solid #D4B679;border-radius:13px;background:linear-gradient(145deg,rgba(255,252,245,.96),rgba(247,234,207,.94));box-shadow:0 5px 14px rgba(76,47,22,.1)}
.expense-entry-main{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.expense-entry-owner{font-size:14px;line-height:1.2;color:#4A3520}
.expense-entry-category{margin-top:3px;padding:2px 8px;border-radius:999px;background:#EAD6AE;color:#74461E;font-size:12.5px;font-weight:800}
.expense-entry h4{margin:6px 0 0;font:800 17px/1.25 Manrope,sans-serif;color:#21170F;overflow-wrap:anywhere}
.expense-entry p{margin:3px 0 0;font-size:12.5px;line-height:1.35;color:#725E49}
.expense-entry-value{text-align:right;white-space:nowrap}
.expense-entry-value strong{display:block;font:800 19px/1.1 Manrope,sans-serif;color:#21170F}
.expense-entry-value time{display:block;margin-top:5px;font-size:12px;font-weight:700;color:#7A654F}
@media(max-width:430px){.expense-entry{grid-template-columns:minmax(0,1fr) 82px;gap:9px;padding:12px}.expense-entry h4{font-size:16px}.expense-entry-value strong{font-size:17px}}

/* Finanzas: resumen y períodos navegables */
.finance-module-tabs{grid-template-columns:repeat(3,1fr)}
.expense-period-control{margin-bottom:18px}
.expense-period-nav{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:8px;margin-top:8px}
.expense-period-nav button{width:38px;height:36px;border:1px solid #CDAA64;border-radius:10px;background:#FFF9EC;color:#68431F;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 3px 8px rgba(71,43,19,.1)}
.expense-period-nav button:disabled{opacity:.3;cursor:default}
.expense-period-nav strong{text-align:center;text-transform:capitalize;font-size:13.5px;color:#4A3520}
.finance-overview{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.finance-overview button{min-height:116px;padding:16px;text-align:left;border:1px solid #CDAA64;border-radius:15px;background:linear-gradient(145deg,#FFFDF7,#F0DFC0);color:#2C1E13;cursor:pointer;box-shadow:0 7px 17px rgba(68,42,20,.12)}
.finance-overview span,.finance-net-summary span{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#7A4A28}
.finance-overview strong,.finance-net-summary strong{display:block;margin-top:5px;font:800 26px/1.1 Fraunces,serif;color:#21170F}
.finance-overview small,.finance-net-summary small{display:block;margin-top:6px;font-size:12px;color:#78644F}
.finance-net-summary{padding:17px 18px;margin-bottom:22px;border:1px solid #B78A3B;border-radius:15px;background:linear-gradient(135deg,#332316,#73502D 66%,#A77A36);box-shadow:0 8px 18px rgba(49,30,14,.2)}
.finance-net-summary span,.finance-net-summary strong,.finance-net-summary small{color:#FFF4D8}
.income-breakdown-card{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:start;gap:14px}
.income-donut-wrap{display:flex;justify-content:center;align-items:flex-start;padding-top:6px}
.login-spinner{display:inline-block;width:17px;height:17px;margin-right:9px;vertical-align:-3px;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:tslspin .7s linear infinite}
@media(max-width:560px){.income-breakdown-card{grid-template-columns:1fr}.income-donut-wrap{padding:2px 0 4px}.finance-overview{gap:8px}.finance-overview button{min-height:104px;padding:13px}.finance-overview strong{font-size:22px}.finance-module-tabs button{font-size:12.5px}}

/* Reserva múltiple: elegir primero, confirmar después */
.smart-help{margin:2px 0 10px!important;font-size:12.5px!important;color:#725E49!important}
.smart-plan{transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.smart-plan:hover{border-color:#B78A3B!important;background:#FFF5DE!important}
.smart-plan.selected,.smart-plan[aria-pressed="true"]{border:2px solid #8C5B25!important;background:linear-gradient(145deg,#FFF8E8,#EED7A8)!important;box-shadow:0 7px 17px rgba(74,43,17,.2)!important;transform:translateY(-1px)}
.smart-plan-next{width:100%;margin-top:10px}
.booking-groups{margin-bottom:8px}
.booking-groups-title{margin-bottom:10px;font:800 15px/1.2 Manrope,sans-serif;color:#3B291A}
.booking-day-group{overflow:hidden;margin-bottom:10px;border:1px solid #D3B474;border-radius:12px;background:rgba(255,251,241,.9)}
.booking-day-group h4{margin:0;padding:8px 12px;background:linear-gradient(90deg,#E8D0A0,#F6E8C9);font:800 14px/1.2 Fraunces,serif;color:#4B321C}
.booking-summary-line{display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid rgba(177,140,72,.3)}
.booking-summary-line time{font-weight:800;color:#7A4A28}
.booking-summary-line strong{display:block;font-size:14px;color:#21170F}
.booking-summary-line small{display:block;margin-top:2px;font-size:12px;color:#715D48}
.booking-summary-line>b{font-size:13.5px;color:#3B291A}
@media(max-width:430px){.booking-summary-line{grid-template-columns:66px minmax(0,1fr) auto;gap:7px;padding:9px}.booking-summary-line strong{font-size:13px}.booking-summary-line>b{font-size:12.5px}}

/* Factura blanca, estrecha y vertical */
.invoice-sheet{position:relative;width:min(430px,100%)!important;min-height:min(760px,calc(100dvh - 36px));background:#fff!important;padding:24px 22px!important;border:1px solid #D8C29A!important;border-radius:12px!important}
.invoice-head{grid-template-columns:145px minmax(0,1fr)!important;gap:13px!important;background:#fff!important}
.invoice-head img{width:145px!important;max-height:96px!important}
.invoice-business{grid-column:1/-1}
.invoice-number{position:absolute;right:40px;top:42px}
.invoice-parties{grid-template-columns:1fr!important;gap:7px!important}
.invoice-parties>div{background:#fff!important;border-color:#E5D8C1!important}
.invoice-actions{margin-top:auto}

/* Encabezado y resumen financiero más ligeros */
.premium-header{background:rgba(255,250,240,.68)!important;border-color:rgba(181,143,62,.38)!important;box-shadow:0 5px 16px rgba(62,39,19,.08)!important;backdrop-filter:blur(10px)!important}
.finance-net-summary{background:linear-gradient(145deg,#FFF9EC,#EED9AC)!important;border-color:#C69B4C!important;box-shadow:0 6px 15px rgba(68,42,18,.11)!important}
.finance-net-summary span{color:#76501F!important}.finance-net-summary strong{color:#25180E!important}.finance-net-summary small{color:#755F47!important}
.finance-overview button{background:linear-gradient(145deg,#FFFDF8,#F4E6CA)!important;box-shadow:0 5px 14px rgba(68,42,20,.09)!important}
.income-records{display:grid;gap:7px;padding-top:10px}
.income-records article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid #DDD0BA;border-radius:10px;background:#FFF}
.income-records small,.income-records span,.income-records time{display:block;font-size:11.5px;color:#786550}.income-records strong{display:block;margin:2px 0;font-size:14px;color:#21170F}.income-records article>div:last-child{text-align:right}.income-records b{display:block;font-size:15px;color:#21170F}
@media(max-width:650px){.invoice-sheet{min-height:calc(100dvh - 24px)!important;padding:20px 17px!important}.invoice-head{grid-template-columns:125px minmax(0,1fr)!important}.invoice-head img{width:125px!important}.invoice-number{right:28px;top:34px!important;grid-template-columns:1fr!important;text-align:right!important}.premium-header{background:rgba(255,250,240,.74)!important}}
.finance-balance-card{background:linear-gradient(145deg,#FFFDF8,#F2E2C3)!important;border-color:#C9A55F!important}.finance-segments{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;border:1px solid #C9A55F!important;border-radius:12px!important;overflow:hidden!important}.finance-segments>div{border:0!important;border-radius:0!important;background:#FFF8EA!important;padding:13px 9px!important}.finance-segments>div+div{border-left:1px solid #C9A55F!important;background:#F4E4C7!important}.finance-segments>div>div:first-child{color:#6B4E18!important}.finance-segments>div>div:nth-child(2){color:#241B14!important;font-size:21px!important}.finance-balance-card>.tsl-h,.finance-balance-card .tsl-h{color:#241B14!important}


/* Proporciones compactas y jerarquía consistente */
.invoice-list{display:grid;gap:10px}
.invoice-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:15px 18px!important;border-left:4px solid #D8B669}
.invoice-list-copy{min-width:0;cursor:pointer}.invoice-list-copy>div{font-size:16px;color:#302014}.invoice-list-copy p{margin:4px 0 1px;font-size:13.5px;line-height:1.4;color:#756044}.invoice-list-copy small{color:#B06D32;font-size:11.5px}
.invoice-list-amount{font:700 20px Fraunces,serif;color:#241B14;white-space:nowrap}.invoice-list-actions{display:flex;gap:7px}.invoice-list-actions .tsl-btn{padding:8px 12px;min-height:38px;font-size:12px}.invoice-delete{color:#9B3F37!important;border-color:#C98F88!important}
.invoice-edit-overlay{position:fixed;inset:0;z-index:320;background:rgba(36,27,20,.58);backdrop-filter:blur(5px);display:grid;place-items:center;padding:18px}.invoice-edit-modal{width:min(520px,100%);padding:22px!important;background:#FFF9EE!important}.invoice-edit-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.invoice-edit-head small{font:800 11px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#9A682E}.invoice-edit-head h3{font:700 27px Fraunces,serif;margin:2px 0;color:#241B14}.invoice-edit-close{border:0;background:transparent;font-size:30px;color:#68431F;cursor:pointer}.invoice-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.invoice-edit-field:nth-child(3){grid-column:1/-1}.invoice-edit-field span{display:block;margin:0 0 4px;font-size:12px;font-weight:750;color:#684F35}.invoice-edit-note{font-size:11.5px;line-height:1.45;color:#756044;margin:13px 0}.invoice-edit-actions{display:flex;justify-content:flex-end;gap:9px}
.appointment-status-stack{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.appointment-confirmed{display:inline-flex;align-items:center;padding:4px 9px;border:1px solid #B79A55;border-radius:999px;background:#F7E8BC;color:#4A3520;font-size:10.5px;font-weight:800;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}
.finance-income-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.finance-income-stats>.tsl-card{padding:13px 16px!important;min-height:78px;display:flex;flex-direction:column;justify-content:center}.finance-income-stats>.tsl-card>div:last-child{font-size:23px!important;margin-top:2px!important}
.finance-overview{gap:10px!important}.finance-overview button{min-height:82px!important;padding:13px 16px!important}.finance-net-summary{padding:14px 18px!important;min-height:76px!important}.expense-period-control{margin-bottom:12px}.expense-period-select{margin-bottom:7px}.expense-period-nav{margin-top:5px}.income-breakdown-card{padding:13px!important;margin-bottom:18px!important}
@media(max-width:700px){.invoice-list-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px!important}.invoice-list-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}.invoice-list-actions .tsl-btn{padding:8px 5px}.invoice-edit-grid{grid-template-columns:1fr}.invoice-edit-field:nth-child(3){grid-column:auto}.finance-income-stats{gap:8px}.finance-income-stats>.tsl-card{min-height:70px;padding:11px 13px!important}.appointment-status-stack{max-width:145px}}
.appointment-card{position:relative}.appointment-card .appointment-confirmed{position:absolute;right:15px;top:52px;z-index:1}
@media(max-width:700px){.appointment-card .appointment-confirmed{right:13px;top:50px;font-size:9.5px;padding:3px 7px}}

/* Formularios de citas: siempre contenidos dentro del panel, incluso en móviles estrechos. */
.tsl-root .quick-action-modal{max-width:min(400px,calc(100vw - 32px))!important;overflow-x:hidden!important}
.tsl-root .quick-action-modal>*{min-width:0}
.tsl-root .quick-action-modal .tsl-input,.tsl-root .quick-action-modal .tsl-select{display:block;width:100%!important;min-width:0!important;max-width:100%!important}
.tsl-root .quick-action-modal div[style*="display: flex"]{min-width:0;flex-wrap:wrap}
.tsl-root .quick-action-modal div[style*="display: flex"]>.tsl-input{flex:1 1 135px!important}
@media(max-width:420px){.tsl-root .quick-action-modal{padding:18px!important}.tsl-root .quick-action-modal div[style*="display: flex"]>.tsl-input{flex-basis:100%!important}}

/* Horas y montos: una sola línea legible en todos los tamaños. */
.tsl-root time,.tsl-root .smart-plan-line>b,.tsl-root .booking-summary-line time{white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important}
.tsl-root .booking-summary-line{grid-template-columns:minmax(82px,auto) minmax(0,1fr) auto!important}
.tsl-root .smart-plan-line{grid-template-columns:minmax(82px,auto) minmax(0,1fr) auto!important}
@media(max-width:480px){.tsl-root .booking-summary-line{grid-template-columns:minmax(78px,auto) minmax(0,1fr)!important}.tsl-root .booking-summary-line>b{grid-column:2;text-align:right}.tsl-root .smart-plan-line{grid-template-columns:minmax(78px,auto) minmax(0,1fr)!important}.tsl-root .smart-plan-line small{grid-column:2!important}}
/* Egresos usa la misma escala visual compacta de la dona de ingresos. */
.tsl-root .expense-chart{grid-template-columns:128px minmax(0,1fr)!important;gap:18px!important;padding:16px!important}
.tsl-root .expense-chart .premium-ring{width:118px!important;height:118px!important;flex-basis:118px!important}
.tsl-root .expense-chart .premium-ring:after,.tsl-root .expense-chart .premium-ring-center{inset:24px!important}
@media(max-width:650px){.tsl-root .expense-chart{grid-template-columns:118px minmax(0,1fr)!important;justify-items:stretch!important}.tsl-root .expense-chart .premium-legend{width:auto!important}}
@media(max-width:390px){.tsl-root .expense-chart{grid-template-columns:1fr!important;justify-items:center!important}.tsl-root .expense-chart .premium-legend{width:100%!important}}

/* Horarios y resumen de citas compactos: mantienen la información en línea y
   solo permiten que la especialista baje cuando el tratamiento ocupa más espacio. */
.tsl-root .smart-plan-line{display:flex!important;align-items:baseline;gap:7px!important;min-width:0}
.tsl-root .smart-plan-line>b{flex:0 0 76px}
.tsl-root .smart-plan-service{flex:1 1 auto;min-width:0;font-weight:700;color:#2B2017}
.tsl-root .smart-plan-line small{flex:0 1 auto;min-width:0;white-space:normal;color:#6E5D4A}
.tsl-root .smart-plan-line small:before{content:"· ";color:#B27A32;font-weight:800}
.tsl-root .booking-summary-line{grid-template-columns:72px minmax(90px,1.25fr) minmax(76px,1fr) auto!important;gap:8px!important;padding:8px 10px!important}
.tsl-root .booking-summary-line>div{display:contents}
.tsl-root .booking-summary-line time{font-weight:400!important;color:#6E5D4A!important}
.tsl-root .booking-summary-line strong,.tsl-root .booking-summary-line small{display:block!important;margin:0!important;min-width:0;line-height:1.25;overflow-wrap:anywhere}
.tsl-root .booking-summary-line strong{color:#2B2017!important}
.tsl-root .booking-summary-line small{color:#715D48!important;font-size:12px!important}
.tsl-root .booking-summary-line>b{grid-column:auto!important;text-align:right;white-space:nowrap}
.tsl-root .booking-groups-title{font-size:16px!important;margin-bottom:8px!important}
.tsl-root .booking-day-group{margin-bottom:8px!important}
.tsl-root .booking-day-group h4{padding:7px 10px!important}
.tsl-root .booking-estimated-total{margin-top:3px;padding-top:9px!important;font-size:16px!important;font-weight:800!important}
.tsl-root .booking-estimated-total>span{font-weight:800!important;color:#2B2017!important}
@media(max-width:430px){
  .tsl-root .smart-plan{padding:10px!important}
  .tsl-root .smart-plan-line{gap:5px!important;font-size:11.5px!important}
  .tsl-root .smart-plan-line>b{flex-basis:69px}
  .tsl-root .booking-summary-line{grid-template-columns:62px minmax(76px,1.15fr) minmax(68px,1fr) auto!important;gap:5px!important;padding:8px!important}
  .tsl-root .booking-summary-line strong{font-size:12.5px!important}
  .tsl-root .booking-summary-line small{font-size:11.5px!important}
}

/* La tarjeta completa abre la factura; las acciones administrativas quedan en
   un selector discreto, sin tres botones compitiendo con la información. */
.tsl-root .invoice-list-row{position:relative;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto;cursor:pointer;column-gap:14px!important;row-gap:5px!important;align-items:center}
.tsl-root .invoice-list-row:hover{border-color:#B78A3B!important;box-shadow:0 8px 20px rgba(68,42,20,.14)!important}
.tsl-root .invoice-list-copy{min-width:0}
.tsl-root .invoice-list-copy{grid-row:1/3}
.tsl-root .invoice-list-amount{grid-column:2;grid-row:1;white-space:nowrap;text-align:right}
.tsl-root .invoice-options{position:relative;grid-column:2;grid-row:2;justify-self:end}
.tsl-root .invoice-options summary{list-style:none;min-width:82px;padding:6px 10px;border:1px solid #C6A36C;border-radius:8px;background:linear-gradient(180deg,#FFF8E9,#F1DFBD);box-shadow:0 2px 0 #D0B27D;color:#6B4E18;font:750 11.5px Manrope,sans-serif;text-align:center;cursor:pointer}
.tsl-root .invoice-options summary::-webkit-details-marker{display:none}
.tsl-root .invoice-options summary:after{content:"⌄";margin-left:6px;font-size:12px}
.tsl-root .invoice-options[open] summary:after{content:"⌃"}
.tsl-root .invoice-options-menu{position:absolute;z-index:50;top:calc(100% + 6px);right:0;width:126px;padding:5px;border:1px solid #C8AA75;border-radius:10px;background:#FFFDF8;box-shadow:0 10px 24px rgba(48,31,17,.22)}
.tsl-root .invoice-options-menu button{display:block;width:100%;padding:8px 9px;border:0;border-radius:7px;background:transparent;color:#3B291A;font:700 12px Manrope,sans-serif;text-align:left;cursor:pointer}
.tsl-root .invoice-options-menu button:hover{background:#F3E4C8}
.tsl-root .invoice-options-menu button.danger{color:#9B3F37}
.tsl-root .invoice-options{width:0;height:0;min-width:0;overflow:visible}
.tsl-root .invoice-options>summary{display:none!important}
.tsl-root .invoice-options-menu{top:4px;right:0}
.tsl-root .invoice-list-row{touch-action:manipulation}
.tsl-root .invoice-list-row:has(.invoice-options[open]){z-index:80!important;overflow:visible!important}
.tsl-root .invoice-options[open]{z-index:90}
.tsl-root .invoice-options[open] .invoice-options-menu{z-index:100!important}
.tsl-root .audit-filter-select{box-sizing:border-box;width:240px!important;min-width:240px!important;max-width:240px!important;flex:0 0 240px!important}
@media(max-width:560px){
  .tsl-root .invoice-list-row{grid-template-columns:minmax(0,1fr) auto!important;padding:13px!important}
  .tsl-root .invoice-options summary{min-width:76px;padding:5px 8px}
  .tsl-root .audit-filter-select{width:min(240px,calc(100vw - 92px))!important;min-width:min(240px,calc(100vw - 92px))!important;max-width:min(240px,calc(100vw - 92px))!important;flex-basis:min(240px,calc(100vw - 92px))!important}
}

/* Acceso y cabecera: entrada estable desde la parte superior y controles con
   más presencia visual sin aumentar el ruido del panel. */
.premium-shell{scroll-margin-top:0}
.premium-header{align-items:center!important}
.premium-menu-toggle,.premium-back{background:linear-gradient(145deg,#F5D783,#C89236)!important;border-color:#A97327!important;color:#3A2714!important;box-shadow:0 4px 10px rgba(92,57,18,.22),inset 0 1px 0 rgba(255,250,220,.85)!important}
.premium-menu-toggle:hover,.premium-back:hover{filter:brightness(1.06) saturate(1.08)}
.premium-brand{font-size:29px!important;font-weight:650!important;color:#4A301B!important;line-height:1!important}

/* Finanzas en dorado y marrón suave: sin tonos borgoña. */
.finance-module-tabs{background:linear-gradient(145deg,#FFF5DA,#E9D09B)!important;border-color:#C89A48!important}
.finance-module-tabs button{color:#68451F!important}
.finance-module-tabs button:hover{background:#F6E4B9!important;color:#422B16!important}
.finance-module-tabs button[aria-pressed="true"]{color:#352313!important;background:linear-gradient(145deg,#F6DB91,#C99742 70%,#B57D2D)!important;border:1px solid #A97327!important;box-shadow:0 5px 12px rgba(91,57,19,.22),inset 0 1px 0 rgba(255,248,213,.9)!important}
@media(max-width:650px){
  .premium-header{top:5px!important}
  .premium-brand{font-size:23px!important;transform:scale(1.05);transform-origin:left center}
}

/* Consistent compact record actions and pearled home-icon release */
.tsl-root .invoice-list-copy>.invoice-options{width:max-content!important;height:auto!important;margin-top:7px!important;overflow:visible!important}
.tsl-root .invoice-options>summary{display:block!important}
.tsl-root .invoice-options-menu{top:calc(100% + 6px)!important;left:0!important;right:auto!important}
.tsl-root .invoice-list-row{grid-template-rows:auto!important;cursor:default!important}
.tsl-root .record-options{position:relative;margin-top:7px;width:max-content;margin-left:auto;overflow:visible}
.tsl-root .record-options>summary{list-style:none;min-width:76px;padding:5px 9px;border:1px solid #C6A36C;border-radius:8px;background:linear-gradient(180deg,#FFF9EA,#EBCF91);box-shadow:0 2px 0 #C59C50;color:#5B3B15;font:800 11.5px Manrope,sans-serif;text-align:center;cursor:pointer}
.tsl-root .record-options>summary::-webkit-details-marker{display:none}
.tsl-root .record-options>summary:after{content:'⌄';margin-left:6px}
.tsl-root .record-options[open]>summary:after{content:'⌃'}
.tsl-root .record-options-menu{position:absolute;z-index:120;top:calc(100% + 6px);right:0;width:120px;padding:5px;border:1px solid #C8AA75;border-radius:10px;background:#FFFDF8;box-shadow:0 12px 26px rgba(48,31,17,.24)}
.tsl-root .record-options-menu button{display:block;width:100%;padding:8px 9px;border:0;border-radius:7px;background:transparent;color:#3B291A;font:700 12px Manrope,sans-serif;text-align:left;cursor:pointer}
.tsl-root .record-options-menu button:hover{background:#F3E4C8}.tsl-root .record-options-menu button.danger{color:#9B3F37}
.tsl-root .expense-entry:has(.record-options[open]),.tsl-root .income-records article:has(.record-options[open]){position:relative;z-index:100;overflow:visible}
.tsl-root .income-record-value{display:flex!important;flex-direction:column;align-items:flex-end}
@media(max-width:520px){.tsl-root .record-options>summary,.tsl-root .invoice-options summary{min-width:70px;padding:5px 7px;font-size:11px}.tsl-root .invoice-list-copy>.invoice-options{margin-top:6px!important}}

/* Invoice amount and options stay together at the lower-right edge */
.tsl-root .invoice-list-side{align-self:stretch;display:flex;min-width:112px;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:10px}
.tsl-root .invoice-list-side>.invoice-options{width:max-content!important;height:auto!important;margin-top:auto!important;overflow:visible!important}
.tsl-root .invoice-list-side .invoice-options-menu{left:auto!important;right:0!important}
@media(max-width:520px){.tsl-root .invoice-list-side{min-width:92px}}
.client-record-sheet{padding:0;overflow:hidden;border:1px solid rgba(176,112,63,.38);background:linear-gradient(145deg,rgba(255,253,248,.98),rgba(248,238,220,.97));box-shadow:0 18px 44px rgba(74,48,28,.16)}
.client-record-head{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:22px;border-bottom:1px solid rgba(176,112,63,.25);background:linear-gradient(120deg,rgba(231,197,132,.28),rgba(255,255,255,.46))}
.client-record-monogram{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font:700 27px 'Fraunces',serif;color:#fff;background:linear-gradient(145deg,#d5a94e,#8b572a);box-shadow:inset 0 1px rgba(255,255,255,.55),0 8px 18px rgba(106,65,30,.22)}
.client-record-identity span,.client-record-field small,.client-record-signature small{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#9a6a32}
.client-record-identity h2{margin:2px 0 3px;font:650 clamp(24px,4vw,34px) 'Fraunces',serif;color:#2f241c}
.client-record-identity p{margin:0;color:#756657;font-size:13px}
.client-record-status{white-space:nowrap;background:rgba(213,169,78,.2);color:#70491f}
.client-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:8px 22px 18px}
.client-record-field{padding:15px 8px;border-bottom:1px solid rgba(176,112,63,.18);min-width:0}
.client-record-field strong{display:block;margin-top:5px;font-size:15px;line-height:1.45;color:#30251d;overflow-wrap:anywhere}
.client-record-signature{margin:0 30px 20px;padding:16px;border-radius:14px;background:rgba(255,255,255,.68);border:1px solid rgba(176,112,63,.22)}
.client-record-signature img{display:block;max-width:300px;width:100%;max-height:110px;object-fit:contain;object-position:left center;margin-top:9px}
.client-record-actions{display:flex;justify-content:flex-end;gap:10px;padding:17px 22px;background:rgba(199,154,108,.11);border-top:1px solid rgba(176,112,63,.2)}
@media(max-width:620px){.client-record-head{grid-template-columns:auto 1fr;padding:18px 16px}.client-record-status{grid-column:1/-1;justify-self:start}.client-record-grid{grid-template-columns:1fr;padding:6px 16px 14px}.client-record-signature{margin:0 20px 18px}.client-record-actions{padding:15px 16px}.client-record-actions button{flex:1}}
.appointment-source{display:inline-flex;align-items:center;margin:0 0 8px;padding:5px 9px;border-radius:999px;background:rgba(213,169,78,.16);border:1px solid rgba(176,112,63,.24);color:#70491f;font-size:11.5px;line-height:1.2}
.appointment-source b{margin-right:4px}

/* 2.4.22 · ficha técnica compacta y estados financieros */
.finance-net-summary.is-negative strong{color:#B42318!important}.finance-net-summary.is-positive strong{color:#18794E!important}
.client-record-sheet{max-width:980px;margin:0 auto}.client-record-head{padding:17px 19px}.client-record-monogram{width:50px;height:50px;border-radius:14px;font-size:24px}.client-record-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:6px 18px 10px}.client-record-field{padding:10px 8px}.client-record-field strong{margin-top:3px;font-size:14px;line-height:1.35}.client-record-sheet>section{margin:10px 18px!important;padding:12px 14px!important}.client-record-audit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:10px 18px 14px;border:1px solid rgba(176,112,63,.2);border-radius:12px;overflow:hidden;background:rgba(176,112,63,.18)}.client-record-audit>div{padding:11px 13px;background:#fffaf0}.client-record-audit small,.client-record-audit strong,.client-record-audit span{display:block}.client-record-audit small{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#9a6a32}.client-record-audit strong{margin-top:3px;font-size:13.5px;color:#30251d}.client-record-audit span{margin-top:2px;font-size:11.5px;color:#756657}.client-record-actions{padding:13px 18px}.client-record-actions button{min-height:38px;padding:9px 12px}
@media(max-width:700px){.client-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:5px 13px 9px}.client-record-head{padding:15px 14px}.client-record-sheet>section{margin:9px 13px!important}.client-record-audit{margin:9px 13px 12px}.client-record-actions{padding:12px 13px}.client-record-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:420px){.client-record-grid{grid-template-columns:1fr}.client-record-audit{grid-template-columns:1fr}}

/* 2.4.23 · factura editorial inspirada en la referencia, paleta The Skin Lab */
.invoice-sheet.invoice-reference{width:min(620px,100%)!important;min-height:0!important;padding:34px 38px 26px!important;border-radius:10px!important;background:#fff!important;color:#2E2016!important}
.invoice-ref-head{display:grid;grid-template-columns:190px 1fr;align-items:center;gap:24px;padding:0 0 24px;border-bottom:0}
.invoice-ref-head img{width:185px;max-height:112px;object-fit:contain;object-position:left center}
.invoice-ref-head>div{text-align:right}.invoice-ref-head h2{margin:0;font:750 43px/1 Fraunces,serif;letter-spacing:.045em;color:#2E2016}.invoice-ref-head span{display:block;margin-top:8px;color:#A36C2F;font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.invoice-ref-meta{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:5px 0 25px;padding:15px 0;border-top:1px solid #D8BD8C;border-bottom:1px solid #D8BD8C}.invoice-ref-meta>div{display:flex;flex-direction:column;gap:3px}.invoice-ref-meta small,.invoice-ref-footer small{color:#A36C2F;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.invoice-ref-meta strong{font-size:14px}.invoice-ref-meta span{color:#715D49;font-size:11.5px}.invoice-ref-number{text-align:right}.invoice-ref-number b{font:700 18px Fraunces,serif;color:#2E2016}
.invoice-ref-table{width:100%}.invoice-ref-row{display:grid;grid-template-columns:minmax(0,1fr) 54px 84px 88px;align-items:center;border-bottom:1px solid #E5D4B6}.invoice-ref-row>*{padding:9px 7px;font-size:12px}.invoice-ref-row>*:not(:first-child){text-align:right}.invoice-ref-row>*:nth-child(2){text-align:center}.invoice-ref-labels{border:0;background:linear-gradient(90deg,#4A301D,#75502D)}.invoice-ref-labels>*{color:#FFF8E8;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}
.invoice-ref-totals{width:min(280px,100%);margin:14px 0 0 auto}.invoice-ref-totals>.tsl-row{padding:4px 7px}.invoice-ref-grand{display:flex;justify-content:space-between;margin-top:5px;padding:9px 7px 0;border-top:2px solid #B98A3D;font:700 19px Fraunces,serif;color:#2E2016}
.invoice-ref-footer{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px;padding-top:14px;border-top:2px solid #4A301D}.invoice-ref-footer>div{display:flex;flex-direction:column;gap:3px}.invoice-ref-footer strong{font-size:12px}.invoice-ref-footer span{color:#665546;font-size:10.5px;line-height:1.4}.invoice-reference .invoice-legal{margin-top:20px}.invoice-reference .invoice-actions{margin-top:14px}
@media(max-width:650px){.invoice-sheet.invoice-reference{padding:24px 18px 20px!important}.invoice-ref-head{grid-template-columns:135px 1fr;gap:13px}.invoice-ref-head img{width:135px;max-height:92px}.invoice-ref-head h2{font-size:31px}.invoice-ref-meta{grid-template-columns:1fr;gap:10px}.invoice-ref-number{text-align:left}.invoice-ref-row{grid-template-columns:minmax(0,1fr) 42px 66px 70px}.invoice-ref-row>*{padding:8px 4px;font-size:10.5px}.invoice-ref-labels>*{font-size:8.5px}.invoice-ref-footer{grid-template-columns:1fr;gap:12px;margin-top:28px}}

/* 2.4.24 · tarjetas definitivas aprobadas */
.purchase-preview{width:min(100%,344px)!important;aspect-ratio:1.586/1!important;border:0!important;border-radius:17px!important;padding:17px 19px!important;box-shadow:0 18px 32px rgba(45,27,14,.34),0 5px 11px rgba(45,27,14,.22),inset 0 1px 1px rgba(255,255,255,.16)!important;isolation:isolate}
.purchase-preview.premium{background:radial-gradient(ellipse at 82% 4%,rgba(222,178,85,.19),transparent 31%),linear-gradient(138deg,#020202 0%,#17130D 42%,#050505 72%,#241A0D 100%)!important;color:#F5DB97!important}
.purchase-preview.essential{background:radial-gradient(ellipse at 84% 5%,rgba(242,219,169,.30),transparent 31%),linear-gradient(138deg,#493629 0%,#846B59 43%,#564236 73%,#967B65 100%)!important;color:#F6DFA5!important}
.purchase-preview.gift{background:radial-gradient(ellipse at 84% 5%,rgba(255,246,207,.35),transparent 29%),repeating-linear-gradient(100deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px),linear-gradient(138deg,#805719 0%,#D7A94C 40%,#A37324 72%,#E0BE6D 100%)!important;color:#24170C!important}
.purchase-preview:before{background:linear-gradient(116deg,transparent 8%,rgba(255,255,255,.025) 37%,rgba(255,231,175,.13) 49%,rgba(255,255,255,.02) 61%,transparent 88%)!important}.purchase-preview-shine{opacity:.46!important}.purchase-preview-tier{display:block!important;position:absolute!important;left:50%!important;top:43%!important;transform:translate(-50%,-50%)!important;width:max-content!important;max-width:72%!important;font:650 21px/1.1 Fraunces,Georgia,serif!important;letter-spacing:.08em!important;text-align:center!important}.purchase-preview-qr,.purchase-preview-chip{display:none!important}.purchase-preview-holder{max-width:54%!important}.purchase-preview-holder strong{font-size:14px!important;font-weight:800!important}.purchase-preview-note{max-width:44%!important;font-size:12px!important;line-height:1.25!important;font-weight:700!important}.purchase-preview.gift .purchase-preview-note,.purchase-preview.gift .purchase-preview-holder strong{color:#28190C!important}.issued-card-wrap{max-width:390px;margin:0 auto}.issued-card-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;margin:0 auto 14px;width:min(100%,344px)}.issued-card-meta>div{padding:9px 11px;border:1px solid #D8BD8C;border-radius:9px;background:#FFF9ED}.issued-card-meta small,.issued-card-meta strong{display:block}.issued-card-meta small{font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#9A682E}.issued-card-meta strong{margin-top:3px;font-size:12px;color:#302014;overflow-wrap:anywhere}
@media(max-width:650px){.purchase-preview-tier{font-size:18px!important}.purchase-preview-holder strong{font-size:13px!important}.purchase-preview-note{font-size:11.5px!important}}
@media(max-width:420px){}
/* 2.4.26 · responsive definitivo: teléfono, tableta y laptop */
html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,#root,.tsl-root{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
*,*:before,*:after{box-sizing:border-box}
img,svg,canvas,video{max-width:100%}
button,input,select,textarea{max-width:100%;font-family:inherit}
.tsl-root>div,.premium-shell,.premium-main,.premium-shell>:not(.premium-header):not(.premium-nav):not(.premium-nav-backdrop){min-width:0}
.premium-shell{width:min(100%,1320px)!important;max-width:1320px!important;margin-inline:auto!important;padding:clamp(18px,2.4vw,32px) clamp(18px,3vw,40px) 84px!important}
.premium-shell>:not(.premium-header):not(.premium-nav):not(.premium-nav-backdrop){width:min(100%,1120px);max-width:1120px}
.premium-page-title,.premium-header{width:100%;max-width:1120px;margin-left:auto!important;margin-right:auto!important}
.tsl-card,.tsl-3d-card,.appointment-card,.admin-record,.supply-card,.invoice-list-row{min-width:0;max-width:100%}
.tsl-input,.tsl-select,textarea{width:100%;min-width:0}
.finance-overview,.finance-income-stats,.premium-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.income-breakdown-card{grid-template-columns:minmax(120px,150px) minmax(0,1fr)!important}
.invoice-overlay{padding:clamp(10px,2vw,20px)!important}.invoice-sheet.invoice-reference{width:min(620px,100%)!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;overscroll-behavior:contain}
.quick-action-modal,.invoice-edit-modal{width:min(100%,520px)!important;max-height:calc(100dvh - 24px)!important;overflow:auto!important}
.client-record-sheet{width:min(100%,980px)!important}.client-record-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.appointment-actions,.record-actions,.client-record-actions{min-width:0}
.invoice-ref-table,.invoice-items,table{max-width:100%}

/* Laptop pequeña y tableta horizontal */
@media (min-width:701px) and (max-width:1050px){
 .premium-shell{padding:20px 22px 76px!important}
 .premium-shell>:not(.premium-header):not(.premium-nav):not(.premium-nav-backdrop),.premium-page-title,.premium-header{max-width:960px}
 .premium-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .client-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .invoice-ref-head{grid-template-columns:160px minmax(0,1fr)!important}.invoice-ref-head img{width:155px!important}
}

/* Teléfono grande y tableta vertical */
@media (max-width:700px){
 body{font-size:15px}
 input,select,textarea{font-size:16px!important} /* evita zoom automático en iPhone */
 .premium-shell{display:block!important;width:100%!important;padding:max(9px,env(safe-area-inset-top)) 12px calc(72px + env(safe-area-inset-bottom))!important}
 .premium-shell>:not(.premium-header):not(.premium-nav):not(.premium-nav-backdrop),.premium-page-title,.premium-header{width:100%!important;max-width:100%!important}
 .premium-header{top:max(5px,env(safe-area-inset-top))!important;min-height:54px;padding:8px 9px!important;gap:7px!important;border-radius:13px!important}
 .premium-brand{min-width:0;font-size:clamp(17px,5.2vw,21px)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.premium-brand small{display:none!important}
 .premium-menu-toggle,.premium-back{width:38px!important;height:38px!important;min-width:38px!important;flex:0 0 38px!important}
 .premium-session{margin-left:auto;min-width:0}.premium-session>span{display:none!important}.premium-session .tsl-btn{min-height:36px!important;padding:7px 9px!important}
 .premium-nav{position:fixed!important;top:0!important;bottom:0!important;left:0!important;width:min(84vw,310px)!important;max-height:none!important;margin:0!important;padding:calc(18px + env(safe-area-inset-top)) 12px calc(18px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;display:block!important;z-index:500!important}
 .premium-page-title{margin:16px 0 14px!important;padding:14px 15px!important}.premium-page-title h1{font-size:clamp(27px,8vw,34px)!important;line-height:1.05!important}.premium-page-title p{font-size:13px!important;line-height:1.4!important}
 .premium-summary,.finance-overview,.finance-income-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 .premium-metric,.finance-overview button,.finance-income-stats>.tsl-card{min-height:74px!important;padding:11px 12px!important}.premium-metric strong,.finance-overview strong{font-size:clamp(21px,6vw,27px)!important}
 .income-breakdown-card{grid-template-columns:1fr!important;gap:8px!important}.income-donut-wrap{justify-content:center!important}
 .client-record-head{grid-template-columns:44px minmax(0,1fr)!important;gap:10px!important;padding:13px!important}.client-record-monogram{width:44px!important;height:44px!important}.client-record-status{grid-column:1/-1!important}.client-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:4px 10px 9px!important}.client-record-field{padding:9px 6px!important}.client-record-audit{grid-template-columns:1fr 1fr!important;margin:8px 10px 11px!important}.client-record-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:11px 10px!important}.client-record-actions button{width:100%!important;min-width:0!important;font-size:12px!important}
 .appointment-card{padding:13px 11px!important}.appointment-actions,.record-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;overflow:visible!important}.appointment-actions button,.record-actions button{width:100%!important;min-width:0!important;white-space:normal!important;line-height:1.2!important}
 .admin-record,.expense-record,.supply-card{width:100%!important;grid-template-columns:minmax(0,1fr) minmax(76px,auto)!important;gap:8px!important;padding:11px!important}.admin-record-main,.supply-info{min-width:0}.admin-record-title,.supply-name{overflow-wrap:anywhere}.admin-record-value>strong{font-size:clamp(18px,5.5vw,23px)!important}
 .invoice-list-row{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:12px!important}.invoice-list-side{min-width:84px!important}.invoice-list-amount{font-size:18px!important}
 .invoice-sheet.invoice-reference{border-radius:10px!important;padding:22px 16px 18px!important}.invoice-ref-head{grid-template-columns:120px minmax(0,1fr)!important;gap:10px!important}.invoice-ref-head img{width:120px!important;max-height:80px!important}.invoice-ref-head h2{font-size:clamp(27px,8vw,34px)!important}.invoice-ref-meta{grid-template-columns:1fr!important;gap:10px!important}.invoice-ref-number{text-align:left!important}.invoice-ref-row{grid-template-columns:minmax(0,1fr) 38px 62px 66px!important}.invoice-ref-row>*{padding:8px 3px!important;font-size:10px!important}.invoice-ref-labels>*{font-size:8px!important;letter-spacing:0!important}.invoice-ref-footer{grid-template-columns:1fr!important;gap:10px!important}
 .quick-action-modal,.invoice-edit-modal{padding:18px!important}.quick-action-modal div[style*="display: flex"]{flex-wrap:wrap!important}.quick-action-modal div[style*="display: flex"]>.tsl-input{flex:1 1 140px!important}
}

/* Teléfono pequeño */
@media (max-width:420px){
 .premium-shell{padding-left:9px!important;padding-right:9px!important}
 .premium-summary,.finance-overview,.finance-income-stats{grid-template-columns:1fr 1fr!important;gap:7px!important}
 .finance-overview button{min-height:70px!important;padding:10px!important}.finance-overview span,.finance-net-summary span{font-size:10px!important}.finance-overview strong,.finance-net-summary strong{font-size:21px!important}
 .client-record-grid,.client-record-audit{grid-template-columns:1fr!important}.client-record-actions{grid-template-columns:1fr 1fr!important}
 .appointment-actions,.record-actions{grid-template-columns:1fr 1fr!important}
 .quick-action-modal div[style*="display: flex"]>.tsl-input{flex-basis:100%!important}
 .invoice-ref-row{grid-template-columns:minmax(0,1fr) 32px 55px 59px!important}.invoice-ref-row>*{font-size:9px!important}.invoice-ref-labels>*{font-size:7.5px!important}
}

/* Pantallas grandes: contenido centrado, nunca estirado */
@media (min-width:1051px){
 .premium-shell{padding-left:36px!important;padding-right:36px!important}
 .premium-summary{grid-template-columns:repeat(4,minmax(0,1fr))!important}
 .finance-overview,.finance-income-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .client-record-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:420px){}

/* 2.4.29: la agenda manual queda siempre sobre el encabezado fijo. */
.quick-action-modal{position:relative;z-index:1201}
@media(max-width:650px){.client-record-view .client-record-actions{grid-template-columns:1fr 1fr!important}}
/* 2.4.32 · proporciones de escritorio: las acciones conservan tamaño de botón. */
@media(min-width:701px){
  .premium-shell .appointment-actions{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(132px,180px))!important;justify-content:start!important;overflow:visible!important}
  .premium-shell .appointment-actions>button{width:100%!important;min-width:0!important}
  .premium-shell .client-record-actions{grid-template-columns:repeat(auto-fit,minmax(132px,180px))!important;justify-content:start!important}
  .premium-shell .invoice-edit-actions,.premium-shell .invoice-actions{justify-content:flex-end!important}
  .premium-shell .invoice-edit-actions button,.premium-shell .invoice-actions button{width:auto!important;min-width:120px!important}
  .premium-shell .expense-editor .tsl-btn-solid[style*="width:100%"],
  .premium-shell .tsl-card>.tsl-btn-solid[style*="width:100%"]{width:auto!important;min-width:170px!important;max-width:240px!important}
  .premium-shell .finance-module-tabs{max-width:620px!important}
  .premium-shell .quick-action-modal{max-width:460px!important}
}

/* La acción larga conserva sus límites en teléfono y escritorio. */
.appointment-actions .appointment-complete{white-space:normal!important;line-height:1.2!important;overflow-wrap:anywhere!important}
@media(max-width:700px){.appointment-actions .appointment-complete{grid-column:1/-1!important;width:100%!important}}
@media(min-width:701px){.appointment-actions .appointment-complete{min-width:180px!important;max-width:180px!important}}
.manual-booking-map{margin:0 0 16px;padding:12px;background:rgba(255,252,246,.92);border:1px solid #D8B471;border-radius:14px;box-shadow:0 8px 20px rgba(77,48,24,.09)}
.manual-map-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px 9px;border-bottom:1px solid rgba(184,133,58,.25)}
.manual-map-head strong{font-family:Georgia,serif;font-size:17px;color:#2F2118}.manual-map-head span{font-size:12px;font-weight:800;color:#8B5C24}
.manual-map-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 3px;border-bottom:1px solid rgba(184,133,58,.16)}.manual-map-row:last-child{border-bottom:0;padding-bottom:3px}
.manual-map-index{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:900;background:#EEE2D1;color:#70502F}.manual-map-row.active .manual-map-index{background:linear-gradient(180deg,#F6D986,#B9872F);color:#34200A;box-shadow:0 2px 5px rgba(120,75,20,.25)}.manual-map-row.done .manual-map-index{background:#3F352C;color:#FFF}
.manual-map-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.manual-map-copy b{font-size:14px;color:#2D2119;white-space:normal}.manual-map-copy small{font-size:11.5px;color:#786654;white-space:normal;line-height:1.25}.manual-map-row em{font-size:9px;font-style:normal;font-weight:900;letter-spacing:.08em;color:#927247}.manual-map-row.active em{color:#9A641D}
.manual-current-service{display:block;margin-top:3px;font-family:Georgia,serif;font-size:20px;line-height:1.2;color:#3A281C;text-transform:none;letter-spacing:0}.manual-current-help{margin:0 0 12px;font-size:12.5px;line-height:1.4;color:#766451}
@media(max-width:420px){.manual-booking-map{padding:10px}.manual-map-row{grid-template-columns:26px minmax(0,1fr) auto;gap:7px}.manual-map-row em{font-size:8px}}


/* 2.4.36 — contact actions and financial state colors */
.client-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;max-width:210px}
.client-list-actions .tsl-btn,.client-list-actions .tsl-btn-solid{font-size:11.5px!important;padding:7px 10px!important;min-height:34px!important;white-space:nowrap!important}
.finance-net-summary.is-negative strong{color:#B42318!important}.finance-net-summary.is-positive strong{color:#18794E!important}.finance-net-summary.is-neutral strong{color:#34271D!important}
@media(max-width:620px){.client-list-actions{grid-column:2/-1;width:100%;max-width:none;justify-content:flex-start}.client-list-actions .tsl-btn,.client-list-actions .tsl-btn-solid{flex:1 1 auto}.client-list-actions+*{min-width:0}}


/* 2.4.37 — contact record separated from technical file */
.contact-editor{max-width:760px;margin:0 auto}.contact-editor-card{padding:20px!important}.contact-editor-card h2{font-size:27px;margin:5px 0}.contact-editor-card>p{font-size:13px;color:#756453;margin:0 0 18px}.contact-edit-field{margin-bottom:12px}.contact-edit-field label{display:block;font-size:12px;font-weight:750;color:#6F563C;margin:0 0 5px}.contact-edit-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.contact-only-grid{margin-top:15px}.contact-empty{grid-column:1/-1;color:#776755;font-size:13px}.client-last-visit{margin-top:17px;padding:15px 17px;border:1px solid #D5AE68;border-radius:13px;background:linear-gradient(135deg,rgba(255,249,235,.96),rgba(239,216,170,.72))}.client-last-visit strong{display:block;font:700 19px/1.25 Fraunces,Georgia,serif;color:#322218;margin-top:4px}.client-last-visit span{display:block;font-size:12.5px;color:#735E48;margin-top:5px}.client-relationship-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px}.client-relationship-summary>div{padding:12px 14px;border:1px solid #E0CDAA;border-radius:11px;background:rgba(255,252,245,.8)}.client-relationship-summary small{display:block;color:#7B6957;font-size:11px}.client-relationship-summary strong{display:block;color:#302219;font-size:14px;margin-top:3px}.contact-record-actions{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;gap:8px!important;margin-top:18px}.contact-record-actions button{min-height:42px}
@media(max-width:620px){.contact-edit-columns{grid-template-columns:1fr}.client-relationship-summary{grid-template-columns:1fr}.contact-record-actions{grid-template-columns:1fr 1fr!important}.contact-record-actions button:first-child{grid-column:1/-1}}

/* ============================================================
   Tarjetas digitales con apariencia de tarjeta física real.
   Premium: metal negro cepillado + oro.  Essential: perla champán.
   Regalo: oro rosa.  Paquete: cuero espresso + oro.
   Solo estilos: la estructura la arma app.js (PurchasePreview).
   ============================================================ */
.purchase-preview.real-card{
  --oro:linear-gradient(105deg,#8a6526 0%,#e9cf8a 22%,#fff1c4 34%,#c99a45 50%,#f3dc98 66%,#9b7431 84%,#e7c77c 100%);
  --tinta:#f5e6c4;
  position:relative;isolation:isolate;overflow:hidden;
  width:100%;max-width:420px;aspect-ratio:1.586/1;min-height:0!important;height:auto;
  margin:18px auto 22px;padding:7.2% 7.6%!important;box-sizing:border-box;
  border-radius:clamp(14px,4.4vw,20px)!important;
  display:flex;flex-direction:column;justify-content:space-between;
  font-family:'Manrope',-apple-system,sans-serif;color:var(--tinta);
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 -1px 0 rgba(0,0,0,.35) inset,
             0 2px 3px rgba(0,0,0,.18),0 14px 26px -10px rgba(0,0,0,.45),0 34px 60px -28px rgba(0,0,0,.55)!important;
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transition:transform .25s ease-out;
}
.purchase-preview.real-card.compact{min-height:0!important}

/* Materiales */
.purchase-preview.real-card.premium,.purchase-preview.real-card.package{
  background:
    radial-gradient(120% 90% at 85% -10%,rgba(255,255,255,.16),transparent 55%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px),
    linear-gradient(160deg,#2b2b2f 0%,#121214 38%,#1d1d21 62%,#0a0a0b 100%)!important;
}
.purchase-preview.real-card.package{
  background:
    radial-gradient(120% 90% at 85% -10%,rgba(255,220,180,.14),transparent 55%),
    radial-gradient(circle at 30% 70%,rgba(0,0,0,.25),transparent 60%),
    linear-gradient(160deg,#4a2f20 0%,#2a1a11 45%,#3a2418 70%,#1a100a 100%)!important;
}
.purchase-preview.real-card.essential{
  --oro:linear-gradient(105deg,#6e4a22 0%,#a9783f 30%,#d7aa66 48%,#8f6230 70%,#b88a4f 100%);
  --tinta:#4a3220;
  background:
    radial-gradient(90% 70% at 15% 10%,rgba(255,255,255,.9),transparent 55%),
    radial-gradient(70% 60% at 90% 90%,rgba(214,186,255,.18),transparent 60%),
    radial-gradient(60% 60% at 75% 20%,rgba(255,210,190,.35),transparent 60%),
    linear-gradient(150deg,#fbf6ec 0%,#efe2cb 45%,#f7eedf 70%,#e3d2b4 100%)!important;
}
.purchase-preview.real-card.gift{
  --oro:linear-gradient(105deg,#fff6ea 0%,#ffffff 30%,#f7dccd 50%,#fffaf4 75%,#f2cdbb 100%);
  --tinta:#fff8f2;
  background:
    radial-gradient(100% 80% at 80% 0%,rgba(255,255,255,.45),transparent 55%),
    radial-gradient(80% 70% at 0% 100%,rgba(120,50,30,.25),transparent 60%),
    linear-gradient(150deg,#e9b9a2 0%,#c98a71 40%,#dba48c 65%,#a8654e 100%)!important;
}

/* Textura fina + brillo que recorre la tarjeta */
.purchase-preview.real-card .real-card-texture{
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:url("assets/brand-logo.svg") no-repeat 112% 50%/62% auto;opacity:.10;filter:grayscale(.2);
}
.purchase-preview.real-card.essential .real-card-texture{opacity:.16;filter:sepia(.4)}
.purchase-preview.real-card::after{
  content:"";position:absolute;inset:-40% -60%!important;z-index:3!important;pointer-events:none!important;display:block;
  background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.22) 48%,rgba(255,255,255,.05) 52%,transparent 60%)!important;
  mix-blend-mode:soft-light!important;transform:translateX(-35%)!important;animation:tsl-brillo 6.5s ease-in-out infinite!important;
}
@keyframes tsl-brillo{0%,55%{transform:translateX(-35%)}100%{transform:translateX(35%)}}
@media (prefers-reduced-motion:reduce){.purchase-preview.real-card::after{animation:none}.purchase-preview.real-card{transform:none}}

/* Chip + sin contacto (arriba a la izquierda, bajo la marca) */
.purchase-preview.real-card::before{
  content:""!important;position:absolute!important;inset:auto!important;left:7.6%!important;top:43%!important;width:12.5%!important;height:auto!important;aspect-ratio:1.32/1;border-radius:6px!important;z-index:1!important;display:block!important;opacity:1!important;transform:none!important;
  background:linear-gradient(90deg,transparent 31%,rgba(70,45,10,.35) 32% 34%,transparent 35% 65%,rgba(70,45,10,.35) 66% 68%,transparent 69%),
    linear-gradient(0deg,transparent 30%,rgba(70,45,10,.35) 31% 33%,transparent 34% 66%,rgba(70,45,10,.35) 67% 69%,transparent 70%),
    linear-gradient(135deg,#f6e2a6,#c9a24f 45%,#f1d78f 60%,#a9822f)!important;
  box-shadow:inset 0 0 0 1px rgba(80,55,15,.35),0 1px 1px rgba(0,0,0,.3)!important;
}
.purchase-preview.real-card.gift::before,.purchase-preview.real-card.essential::before{
  background:linear-gradient(90deg,transparent 31%,rgba(90,60,30,.3) 32% 34%,transparent 35% 65%,rgba(90,60,30,.3) 66% 68%,transparent 69%),
    linear-gradient(0deg,transparent 30%,rgba(90,60,30,.3) 31% 33%,transparent 34% 66%,rgba(90,60,30,.3) 67% 69%,transparent 70%),
    linear-gradient(135deg,#fbf0d6,#d8b46a 45%,#f5e2b0 60%,#b48f45)!important;
}

/* Marca y plan en relieve dorado */
.purchase-preview.real-card .real-card-brand{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left}
.purchase-preview.real-card .real-card-brand strong{
  font:600 clamp(13px,3.6vw,16px)/1 'Fraunces',Georgia,serif;letter-spacing:.32em;
  background:var(--oro);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.35));
}
.purchase-preview.real-card.essential .real-card-brand strong{filter:drop-shadow(0 1px 0 rgba(255,255,255,.7))}
.purchase-preview.real-card .real-card-brand i{display:block;width:34px;height:1px;background:var(--oro);opacity:.8}
.purchase-preview.real-card .real-card-brand span{
  font:700 clamp(9px,2.5vw,10.5px)/1 'Manrope',sans-serif;letter-spacing:.38em;text-transform:uppercase;
  background:var(--oro);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.purchase-preview.real-card .real-card-amount{
  position:absolute;right:7.6%;top:38%;left:auto;bottom:auto;z-index:2;text-align:right;
  font:600 clamp(26px,8vw,36px)/1 'Fraunces',Georgia,serif;
  background:var(--oro);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 2px 1px rgba(90,40,20,.35));
}

/* Titular y código grabados */
.purchase-preview.real-card .real-card-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
.purchase-preview.real-card .real-card-person{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto}
.purchase-preview.real-card .real-card-person strong{
  font:600 clamp(12px,3.4vw,15px)/1.2 'Manrope',sans-serif;letter-spacing:.035em;color:var(--tinta);
  text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  text-shadow:0 -1px 0 rgba(0,0,0,.55),0 1px 0 rgba(255,255,255,.18);
}
.purchase-preview.real-card .real-card-person span{color:var(--tinta);font-size:clamp(9.5px,2.7vw,11px);opacity:.8;letter-spacing:.04em;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.purchase-preview.real-card .real-card-code{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;flex-shrink:0}
.purchase-preview.real-card .real-card-code span{color:var(--tinta);font-size:clamp(8.5px,2.4vw,10px);opacity:.78;letter-spacing:.04em;white-space:nowrap}
.purchase-preview.real-card .real-card-code b{
  font:600 clamp(11px,3.2vw,13.5px)/1 ui-monospace,'SFMono-Regular',Menlo,monospace;letter-spacing:.16em;color:var(--tinta);
  text-shadow:0 -1px 0 rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.2);
}
.purchase-preview.real-card.essential .real-card-person strong,.purchase-preview.real-card.essential .real-card-code b{
  text-shadow:0 1px 0 rgba(255,255,255,.75),0 -1px 0 rgba(90,60,30,.25);
}
.purchase-preview.real-card .real-card-lines{display:none}
