@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#050505;--bg-soft:#0b0b0b;--bg-card:#111;--text:#fff;--text-secondary:#a1a1aa;--accent:#d6a84f;--accent-hover:#f3d98b;--accent-dark:#9c6b1f;--border:#d6a84f2e;--font-display:"Syne", sans-serif;--font-body:"DM Sans", sans-serif;--nav-h:68px;--px:clamp(1.25rem, 5vw, 4rem);--py:clamp(5rem, 10vw, 7.5rem);--radius-card:18px;--max-w:1200px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1)}html{scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6;overflow-x:hidden}#root{width:100%;min-height:100vh}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;font-family:var(--font-body);background:0 0;border:none}section[id]{scroll-margin-top:var(--nav-h)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.container{width:100%;max-width:var(--max-w);padding:0 var(--px);margin:0 auto}.section{padding:var(--py) 0}.section-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem;font-size:11px;font-weight:600;display:block}.section-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin-bottom:1rem;font-size:clamp(2rem,4vw,2.875rem);font-weight:700;line-height:1.08}.section-subtitle{color:var(--text-secondary);font-size:1rem;line-height:1.75}.btn{font-family:var(--font-body);min-height:44px;transition:background-color .18s var(--ease-out), border-color .18s var(--ease-out), color .18s var(--ease-out), transform .18s var(--ease-out);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;line-height:1;display:inline-flex}.btn:active{transition-duration:.1s;transform:scale(.97)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:10px}.btn-primary{background:var(--accent);color:#050505;border:1px solid #0000}.btn-outline{color:var(--text);border:1px solid var(--border);background:0 0}.btn-outline-accent{color:var(--accent);border:1px solid var(--accent);background:#d6a84f0d}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-outline:hover{background:#ffffff0a;border-color:#ffffff38}.btn-outline-accent:hover{color:var(--accent-hover);border-color:var(--accent-hover);background:#d6a84f1f;transform:translateY(-1px)}}.navbar{z-index:100;height:var(--nav-h);-webkit-backdrop-filter:blur(24px);transition:border-color .25s var(--ease-out), background-color .25s var(--ease-out);background:#050505bf;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.navbar--scrolled{border-bottom-color:var(--border);background:#050505eb}.navbar__inner{height:100%;max-width:var(--max-w);padding:0 var(--px);justify-content:space-between;align-items:center;gap:2rem;margin:0 auto;display:flex}.navbar__logo{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);flex-shrink:0;align-items:center;gap:.35rem;font-size:1.25rem;font-weight:800;display:flex}.navbar__logo-img{object-fit:contain;width:auto;height:36px;display:block}.navbar__logo-mark{background:var(--accent);color:#050505;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.9rem;font-weight:800;display:inline-flex}.navbar__links{align-items:center;gap:.125rem;display:none}.navbar__links a{color:var(--text-secondary);transition:color .15s var(--ease-out);border-radius:8px;padding:.45rem .875rem;font-size:.875rem;font-weight:500}@media (hover:hover) and (pointer:fine){.navbar__links a:hover{color:var(--text)}}.navbar__actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.navbar__desktop-cta{display:none}.navbar__hamburger{border:1px solid var(--border);width:38px;height:38px;transition:border-color .15s var(--ease-out);border-radius:9px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:7px;display:flex}@media (hover:hover) and (pointer:fine){.navbar__hamburger:hover{border-color:#fff3}}.navbar__hamburger span{background:var(--text);width:18px;height:1.5px;transition:transform .25s var(--ease-out), opacity .2s var(--ease-out);transform-origin:50%;display:block}.navbar__hamburger--open span:first-child{transform:translateY(6.5px)rotate(45deg)}.navbar__hamburger--open span:nth-child(2){opacity:0;transform:scaleX(0)}.navbar__hamburger--open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.navbar__mobile{top:var(--nav-h);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border);padding:1rem var(--px) 1.75rem;z-index:99;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .22s var(--ease-out), transform .22s var(--ease-out), visibility 0s .22s;background:#050505f7;flex-direction:column;gap:0;display:flex;position:fixed;left:0;right:0;transform:translateY(-8px)}.navbar__mobile.navbar__mobile--open{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .22s var(--ease-out), transform .22s var(--ease-out), visibility 0s 0s;transform:translateY(0)}.navbar__mobile a{color:var(--text-secondary);border-bottom:1px solid var(--border);transition:color .15s var(--ease-out);padding:.875rem 0;font-size:1.0625rem;font-weight:500}@media (hover:hover) and (pointer:fine){.navbar__mobile a:hover{color:var(--text)}}.navbar__mobile-cta{margin-top:1.25rem;border-bottom:none!important}.navbar__mobile-cta a,.navbar__mobile-cta button{justify-content:center;display:flex;border-bottom:none!important}@media (width>=768px){.navbar__links{display:flex}.navbar__desktop-cta{display:inline-flex}.navbar__hamburger{display:none}}.hero{min-height:auto;padding-top:var(--nav-h);align-items:center;display:flex;position:relative;overflow:hidden}.hero__glow-top{pointer-events:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle,#d6a84f12 0%,#0000 70%);width:520px;height:520px;position:absolute;top:-15%;right:-5%}.hero__glow-bottom{pointer-events:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle,#d6a84f08 0%,#0000 70%);width:380px;height:380px;position:absolute;bottom:-20%;left:-8%}.hero__title-glow{pointer-events:none;-webkit-user-select:none;user-select:none;background:radial-gradient(#d6a84f0b 0%,#0000 68%);width:640px;height:420px;animation:7s ease-in-out infinite breathe;position:absolute;top:45%;left:18%;transform:translate(-50%,-50%)}@media (width>=900px){.hero__title-glow{top:50%;left:25%}}@keyframes breathe{0%,to{opacity:.5}50%{opacity:1}}.hero__inner{width:100%;max-width:var(--max-w);padding:5rem var(--px) 4rem;flex-direction:column;gap:3rem;margin:0 auto;display:flex}.hero__content{z-index:1;position:relative}.hero__badge{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);background:#d6a84f12;border:1px solid #d6a84f33;border-radius:100px;align-items:center;gap:.5rem;margin-bottom:1.75rem;padding:.4rem .875rem;font-size:.7rem;font-weight:700;display:inline-flex}.hero__badge-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.4s ease-in-out infinite blink;box-shadow:0 0 6px #d6a84f99}.hero__title{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text);margin-bottom:1.5rem;font-size:clamp(3rem,10vw,5.5rem);font-weight:800;line-height:1.02}.hero__title em{color:var(--accent);font-style:normal}.hero__subtitle{color:var(--text-secondary);max-width:480px;margin-bottom:2.5rem;font-size:clamp(1rem,2vw,1.125rem);line-height:1.75}.hero__actions{flex-wrap:wrap;align-items:center;gap:.875rem;display:flex}.hero__actions .btn{padding:.875rem 1.875rem;font-size:.9375rem}.hero__stats{border-top:1px solid var(--border);gap:2.25rem;margin-top:3rem;padding-top:2rem;display:flex}.hero__stat-number{font-family:var(--font-display);color:var(--text);letter-spacing:-.03em;font-size:1.875rem;font-weight:800;line-height:1}.hero__stat-label{color:var(--text-secondary);margin-top:.3rem;font-size:.8rem}.hero__visual{flex-shrink:0;justify-content:center;align-items:center;display:none}.hero__ring{border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:340px;height:340px;display:flex;position:relative}.hero__ring:before{content:"";pointer-events:none;border:1px solid #d6a84f1f;border-radius:50%;position:absolute;inset:14px}.hero__ring-bg{background:radial-gradient(circle at 42% 38%,#d6a84f1a 0%,#050505d9 60%);border-radius:50%;position:absolute;inset:28px}.hero__ring-letter{z-index:1;font-family:var(--font-display);color:#ffffff0d;letter-spacing:-.05em;-webkit-user-select:none;user-select:none;font-size:8rem;font-weight:800;line-height:1;position:relative}.hero__ring-badge{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;align-items:center;gap:.625rem;padding:.75rem 1.125rem;display:flex;position:absolute;bottom:24px;right:-20px;box-shadow:0 8px 32px #0006}.hero__ring-badge-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 10px var(--accent);border-radius:50%;flex-shrink:0;animation:2.4s ease-in-out infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}.hero__ring-badge-title{color:var(--text);font-size:.8125rem;font-weight:600;line-height:1.2}.hero__ring-badge-sub{color:var(--text-secondary);font-size:.6875rem}@media (width<=767px){.hero__inner{padding-top:3rem;padding-bottom:1.25rem}.hero__badge{margin-bottom:1.25rem}.hero__subtitle{margin-bottom:2rem}.hero__stats{margin-top:2rem;padding-top:1.25rem}}@media (width>=768px) and (width<=899px){.hero__inner{padding-top:4rem;padding-bottom:2rem}.hero__stats{margin-top:2rem;padding-top:1.25rem}}@media (width>=900px){.hero__inner{flex-direction:row;align-items:center;gap:4rem;padding-top:5rem;padding-bottom:2.5rem}.hero__content{flex:1}.hero__visual{display:flex}.hero__stats{margin-top:2rem;padding-top:1.25rem}}.barbers{background:var(--bg);padding-top:clamp(2.5rem,5vw,4rem)}.barbers__header{max-width:520px;margin-bottom:3rem}.barbers__grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (width>=600px){.barbers__grid{grid-template-columns:repeat(2,1fr)}}.barber-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);transition:border-color .2s var(--ease-out), transform .22s var(--ease-out), box-shadow .22s var(--ease-out);flex-direction:column;gap:1.25rem;padding:2rem;display:flex}@media (hover:hover) and (pointer:fine){.barber-card:hover{border-color:#d6a84f38;transform:translateY(-4px);box-shadow:0 16px 48px #00000059}.barber-card:hover .barber-card__avatar{box-shadow:0 0 0 4px #d6a84f1f}}.barber-card__header{align-items:center;gap:1.125rem;display:flex}.barber-card__avatar{border:2px solid var(--accent);width:72px;height:72px;font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;transition:box-shadow .22s var(--ease-out);background:#d6a84f0f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.375rem;font-weight:800;display:flex}.barber-card__name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;margin-bottom:.3rem;font-size:1.25rem;font-weight:700}.barber-card__specialty{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:#d6a84f14;border-radius:4px;padding:.2rem .6rem;font-size:.7rem;font-weight:700;display:inline-block}.barber-card__description{color:var(--text-secondary);font-size:.9rem;line-height:1.7}.barber-card__instagram{color:var(--text-secondary);transition:color .15s var(--ease-out);align-items:center;gap:.375rem;padding-top:.25rem;font-size:.8125rem;display:inline-flex}@media (hover:hover) and (pointer:fine){.barber-card__instagram:hover{color:var(--accent)}}.barber-card__actions{flex-direction:column;gap:.625rem;margin-top:auto;display:flex}.barber-card__actions .btn{justify-content:center;width:100%}.services{background:var(--bg-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.services__header{max-width:460px;margin-bottom:2.75rem}.services__grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=480px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.services__grid{grid-template-columns:repeat(2,1fr)}}.service-card{background:var(--bg);border:1px solid var(--border);transition:border-color .2s var(--ease-out), transform .2s var(--ease-out);border-radius:14px;flex-direction:column;gap:.875rem;padding:1.5rem;display:flex;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--accent);transform-origin:top;width:3px;height:100%;transition:transform .25s var(--ease-out);position:absolute;top:0;left:0;transform:scaleY(0)}@media (hover:hover) and (pointer:fine){.service-card:hover{border-color:#d6a84f26;transform:translateY(-2px)}.service-card:hover:before{transform:scaleY(1)}.service-card .btn-outline:hover{background:var(--accent);color:#050505;border-color:var(--accent);transform:translateY(-1px)}}.service-card__name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:1.0625rem;font-weight:700}.service-card__duration{color:var(--text-secondary);align-items:center;gap:.3rem;font-size:.8125rem;display:inline-flex}.service-card__description{color:var(--text-secondary);flex:1;font-size:.875rem;line-height:1.65}.service-card__price{font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;font-size:1.375rem;font-weight:800}.service-card .btn{width:100%;margin-top:.25rem;padding-top:1rem;padding-bottom:1rem}.gallery{background:var(--bg)}.gallery__head{flex-direction:column;gap:1.75rem;margin-bottom:clamp(2rem,4vw,3rem);display:flex}@media (width>=900px){.gallery__head{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:3rem}}.gallery__header{max-width:480px}.gallery__header .section-title{margin-bottom:.875rem}.gallery__filters{border:1px solid var(--border);background:#ffffff04;border-radius:100px;flex-shrink:0;align-self:flex-start;align-items:center;gap:.25rem;padding:.3rem;display:inline-flex}@media (width>=900px){.gallery__filters{align-self:auto}}.gallery__filter-btn{letter-spacing:.01em;color:var(--text-secondary);cursor:pointer;transition:background-color .2s var(--ease-out), color .2s var(--ease-out);font-size:.8125rem;font-weight:500;font-family:var(--font-body);background:0 0;border:0;border-radius:100px;align-items:center;gap:.5rem;padding:.6rem 1.05rem;line-height:1;display:inline-flex}.gallery__filter-count{font-variant-numeric:tabular-nums;color:#d6a84fb3;transition:color .2s var(--ease-out);font-size:.6875rem}@media (hover:hover) and (pointer:fine){.gallery__filter-btn:hover{color:var(--text)}}.gallery__filter-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gallery__filter-btn--active{background:var(--accent);color:#050505}.gallery__filter-btn--active .gallery__filter-count{color:#0505058c}@media (hover:hover) and (pointer:fine){.gallery__filter-btn--active:hover{background:var(--accent-hover);color:#050505}}@keyframes galleryIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.gallery__showcases{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=768px){.gallery__showcases{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}.showcase{isolation:isolate;background:var(--bg-soft);aspect-ratio:4/5;cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;animation:galleryIn .6s var(--ease-out) both;border:1px solid #ffffff0f;border-radius:22px;margin:0;padding:0;display:block;position:relative;overflow:hidden}.showcase:nth-child(2){animation-delay:90ms}@media (width>=1100px){.showcase{aspect-ratio:5/6}}.showcase:after{content:"";border-radius:inherit;opacity:0;transition:opacity .5s var(--ease-out);pointer-events:none;z-index:3;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #d6a84f73,inset 0 0 60px #d6a84f12}.showcase:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.showcase:focus-visible:after{opacity:1}.showcase__slides{z-index:0;position:absolute;inset:0}.showcase__img{object-fit:cover;object-position:50% 45%;opacity:0;filter:saturate(.92)contrast(1.03);width:100%;height:100%;transition:opacity .7s var(--ease-in-out), transform .7s var(--ease-out);display:block;position:absolute;inset:0;transform:scale(1.04)}.showcase__img--active{opacity:1;transition:opacity .7s var(--ease-in-out), transform var(--slide-ms,6s) cubic-bezier(.25, .1, .25, 1);transform:scale(1)}.showcase__shade{z-index:1;pointer-events:none;background:linear-gradient(#05050500 45%,#0505058c 72%,#050505e6 100%),linear-gradient(#05050559 0%,#05050500 18%);position:absolute;inset:0}.showcase__badge{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.1em;text-transform:uppercase;color:#ffffffeb;background:#05050580;border:1px solid #d6a84f47;border-radius:100px;align-items:center;gap:.5rem;padding:.3rem .8rem .3rem .3rem;font-size:.6875rem;font-weight:500;line-height:1;display:inline-flex;position:absolute;top:1.125rem;left:1.125rem}.showcase__badge-initial{background:var(--accent);color:#050505;width:22px;height:22px;font-family:var(--font-display);letter-spacing:0;border-radius:50%;justify-content:center;align-items:center;font-size:.6875rem;font-weight:700;display:inline-flex}.showcase__content{z-index:2;text-shadow:0 1px 14px #00000073;flex-direction:column;padding:clamp(1.25rem,3vw,2.25rem);display:flex;position:absolute;bottom:0;left:0;right:0}.showcase__eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--accent-hover);margin-bottom:.4rem;font-size:.6875rem;font-weight:500}.showcase__name{font-family:var(--font-display);letter-spacing:-.025em;color:var(--text);font-size:clamp(2rem,4.4vw,3.25rem);font-weight:600;line-height:1}.showcase__footer{border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1rem;display:flex}.showcase__cta{letter-spacing:.02em;color:#ffffffd9;transition:color .3s var(--ease-out);align-items:center;gap:.45rem;font-size:.8125rem;font-weight:500;display:inline-flex}.showcase__cta svg{color:var(--accent);transition:transform .3s var(--ease-out)}.showcase__progress{gap:.3rem;display:inline-flex}.showcase__bar{background:#ffffff38;border-radius:2px;width:22px;height:2px;position:relative;overflow:hidden}.showcase__bar--done{background:#d6a84f8c}.showcase__bar-fill{background:var(--accent);transform-origin:0;position:absolute;inset:0;transform:scaleX(1)}.showcase__bar-fill--running{animation:showcaseBar var(--bar-ms,3s) linear both}@keyframes showcaseBar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (hover:hover) and (pointer:fine){.showcase:hover:after{opacity:1}.showcase:hover .showcase__cta{color:var(--accent-hover)}.showcase:hover .showcase__cta svg{transform:translate(4px)}}.gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}@media (width>=640px){.gallery__grid{gap:.75rem}}@media (width>=900px){.gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}.gallery-item{background:var(--bg-soft);aspect-ratio:4/5;isolation:isolate;animation:galleryIn .5s var(--ease-out) both;animation-delay:calc(var(--i,0) * 60ms);border:1px solid #ffffff0f;border-radius:12px;margin:0;position:relative;overflow:hidden}.gallery-item:after{content:"";border-radius:inherit;opacity:0;transition:opacity .4s var(--ease-out);pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #d6a84f66}.gallery-item__img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out);display:block;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.gallery-item:hover:after{opacity:1}.gallery-item:hover .gallery-item__img{transform:scale(1.035)}}.gallery-item__badge{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.12em;text-transform:uppercase;color:#ffffffe6;background:#05050580;border:1px solid #d6a84f47;border-radius:100px;padding:.35rem .7rem;font-size:.625rem;font-weight:500;line-height:1;position:absolute;top:.875rem;left:.875rem}@media (width<=639px){.gallery-item__badge{display:none}}@media (width>=640px){.gallery-item{border-radius:var(--radius-card)}}.how-it-works{background:var(--bg-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.how-it-works__header{max-width:460px;margin-bottom:3rem}.how-it-works__grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=480px){.how-it-works__grid{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.how-it-works__grid{grid-template-columns:repeat(4,1fr)}}.step{flex-direction:column;gap:.75rem;display:flex}.step__number{font-family:var(--font-display);color:#d6a84f33;letter-spacing:-.04em;font-size:2.75rem;font-weight:800;line-height:1}.step__title{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:1.0625rem;font-weight:700}.step__description{color:var(--text-secondary);font-size:.875rem;line-height:1.7}.contact{background:var(--bg)}.contact__inner{grid-template-columns:1fr;gap:3rem;display:grid}@media (width>=768px){.contact__inner{grid-template-columns:1fr 1fr;align-items:start;gap:4rem}}.contact__header{margin-bottom:2.5rem}.contact__items{flex-direction:column;gap:1.25rem;display:flex}.contact__item{align-items:flex-start;gap:1rem;display:flex}.contact__icon{width:42px;height:42px;color:var(--accent);background:#d6a84f0f;border:1px solid #d6a84f1f;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact__item-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.25rem;font-size:.7rem;font-weight:700}.contact__item-value{color:var(--text);font-size:.9375rem;font-weight:500}.contact__item-value a{color:var(--accent);transition:color .15s var(--ease-out)}@media (hover:hover) and (pointer:fine){.contact__item-value a:hover{color:var(--accent-hover)}}.contact__right{flex-direction:column;gap:1.25rem;display:flex}.contact__hours{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:1.5rem}.contact__hours-title{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;margin-bottom:1rem;font-size:.9375rem;font-weight:700}.contact__hours-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.625rem 0;font-size:.875rem;display:flex}.contact__hours-row:last-child{border-bottom:none}.contact__hours-day{color:var(--text-secondary)}.contact__hours-time{color:var(--text);font-weight:500}.contact__hours-time--closed{color:var(--text-secondary)}.contact__cta-btn{width:100%}.contact__social-links{gap:.75rem;display:flex}.contact__social-link{width:100%;color:var(--text-secondary);border:1px solid var(--border);transition:color .15s var(--ease-out), border-color .15s var(--ease-out);border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;display:flex}@media (hover:hover) and (pointer:fine){.contact__social-link:hover{color:var(--text);border-color:#d6a84f66}}.footer{background:var(--bg-card);border-top:1px solid var(--border);padding:2.25rem 0}.footer__inner{max-width:var(--max-w);padding:0 var(--px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;margin:0 auto;display:flex}.footer__logo{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;align-items:center;gap:.3rem;font-size:1.0625rem;font-weight:800;display:flex}.footer__logo-img{object-fit:contain;width:auto;height:28px;display:block}.footer__logo-mark{background:var(--accent);color:#050505;border-radius:5px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:800;display:inline-flex}.footer__copy-group{flex-direction:column;gap:.25rem;display:flex}.footer__copy{color:var(--text-secondary);font-size:.8125rem}.footer__links{align-items:center;gap:1.25rem;display:flex}.footer__links a{color:var(--text-secondary);transition:color .15s var(--ease-out);font-size:.8125rem}@media (hover:hover) and (pointer:fine){.footer__links a:hover{color:var(--text)}}.footer__staff-link{color:#ffffff2e!important}@media (hover:hover) and (pointer:fine){.footer__staff-link:hover{color:var(--text-secondary)!important}}@media (width<=600px){.footer__inner{text-align:center;flex-direction:column}.footer__logo{justify-content:center}}.footer__credit-bar{border-top:1px solid var(--border);justify-content:center;margin-top:1.25rem;padding-top:1.25rem;display:flex}.footer__credit-link{white-space:nowrap;justify-content:center;align-items:center;gap:7px;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.footer__credit-link:hover .footer__credit-text{color:#fffffff2}.footer__credit-link:hover .footer__credit-logo{opacity:1}}.footer__credit-text{color:#ffffffc2;white-space:nowrap;font-size:.66rem;font-weight:500;line-height:1}.footer__credit-logo{object-fit:contain;filter:brightness(0)invert();opacity:.82;flex-shrink:0;width:65px;height:auto;display:block}@media (width<=600px){.footer__credit-logo{width:60px}}@keyframes booking-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.booking-overlay{z-index:200;background:var(--bg);animation:booking-in .26s var(--ease-out) both;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.booking-shell{flex-direction:column;width:100%;max-width:560px;height:100%;margin:0 auto;display:flex}@media (width>=900px){.booking-shell{max-width:1080px}}.booking-header{padding:1.125rem var(--px);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.booking-logo{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;align-items:center;gap:.5rem;font-size:1.0625rem;font-weight:800;display:flex}.booking-logo-mark{background:var(--accent);color:#050505;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.8rem;font-weight:800;display:inline-flex}.booking-logo-img{object-fit:contain;border-radius:4px;flex-shrink:0;width:auto;height:34px;display:block}.booking-logo-name{font-size:.9375rem}.booking-close{border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);transition:color .15s var(--ease-out), border-color .15s var(--ease-out);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (hover:hover) and (pointer:fine){.booking-close:hover{color:var(--text);border-color:#fff3}}.booking-progress{padding:.875rem var(--px);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:1rem;display:flex;position:relative}.booking-progress:after{content:"";height:2px;width:var(--booking-progress,0%);background:linear-gradient(to right, var(--accent-dark), var(--accent));transition:width .35s var(--ease-out);border-radius:0 2px 2px 0;position:absolute;bottom:0;left:0}.booking-dots{align-items:center;gap:6px;display:flex}.booking-dot{width:6px;height:6px;transition:background-color .2s var(--ease-out), width .2s var(--ease-out), border-radius .2s var(--ease-out);background:#ffffff1f;border-radius:50%}.booking-dot--done{background:#d6a84f66}.booking-dot--active{background:var(--accent);border-radius:3px;width:20px}.booking-step-label{color:var(--text-secondary);letter-spacing:.04em;font-size:.75rem;font-weight:600}.booking-content{padding:0 var(--px);overscroll-behavior:contain;flex:1;overflow-y:auto}@keyframes step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.booking-step-anim{animation:step-in .22s var(--ease-out) both;padding:1.5rem 0 2rem}@media (width>=900px){.booking-step-anim{padding:2.5rem 0 3rem}}.booking-stage{max-width:560px;margin:0 auto}.booking-stage-main{min-width:0}@media (width>=900px){.booking-stage--split{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:2.5rem;max-width:none;display:grid}.booking-stage--split .booking-step-title{font-size:1.75rem}}.booking-step-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.6875rem;font-weight:700}.booking-empty{color:var(--text-secondary);border:1px dashed var(--border);border-radius:14px;padding:1rem 1.125rem;font-size:.875rem;line-height:1.6}.booking-step{flex-direction:column;gap:.375rem;padding-bottom:1.5rem;display:flex}.booking-step-title{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;margin-bottom:.125rem;font-size:1.375rem;font-weight:700}.booking-step-sub{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.875rem}.booking-select-indicator{color:#050505;width:24px;height:24px;transition:background-color .18s var(--ease-out), border-color .18s var(--ease-out), transform .18s var(--ease-out);border:1.5px solid #ffffff2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.booking-select-indicator svg{animation:booking-check-in .22s var(--ease-out) both}@keyframes booking-check-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.booking-barbers{grid-template-columns:1fr;gap:.75rem;display:grid}@media (width>=900px){.booking-barbers{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}}.booking-barber-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);text-align:left;width:100%;color:inherit;font-family:var(--font-body);transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), box-shadow .18s var(--ease-out), transform .18s var(--ease-out);align-items:center;gap:1rem;padding:1rem 1.125rem;display:flex;position:relative}@media (width>=900px){.booking-barber-card{flex-direction:column;align-items:flex-start;gap:1.125rem;padding:1.5rem}}.booking-barber-card:active{transition-duration:.1s;transform:scale(.98)}@media (hover:hover) and (pointer:fine){.booking-barber-card:hover{border-color:#ffffff2e;transform:translateY(-2px)}}.booking-barber-card--selected{border-color:var(--accent);background:linear-gradient(160deg, #d6a84f1a 0%, #d6a84f00 60%), var(--bg-card);box-shadow:0 14px 32px -20px #d6a84f8c}@media (hover:hover) and (pointer:fine){.booking-barber-card--selected:hover{border-color:var(--accent)}}.booking-barber-avatar{border:2px solid var(--accent);width:52px;height:52px;font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;background:#d6a84f14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:flex}@media (width>=900px){.booking-barber-avatar{width:64px;height:64px;font-size:1.125rem}}.booking-barber-info{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.booking-barber-name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:1.125rem;font-weight:700}@media (width>=900px){.booking-barber-name{font-size:1.375rem}}.booking-barber-specialty{color:var(--text-secondary);font-size:.8125rem}.booking-barber-handle{color:#d6a84fcc;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}@media (width>=900px){.booking-barber-card .booking-select-indicator{position:absolute;top:1.25rem;right:1.25rem}}.booking-services{grid-template-columns:1fr;gap:.75rem;display:grid}@media (width>=900px){.booking-services{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}}.booking-service-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);text-align:left;width:100%;color:inherit;font-family:var(--font-body);transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), box-shadow .18s var(--ease-out), transform .18s var(--ease-out);flex-direction:column;gap:.5rem;padding:1.125rem 1.25rem;display:flex}@media (width>=900px){.booking-service-card{gap:.625rem;padding:1.5rem}}.booking-service-card:active{transition-duration:.1s;transform:scale(.98)}@media (hover:hover) and (pointer:fine){.booking-service-card:hover{border-color:#ffffff2e;transform:translateY(-2px)}}.booking-service-card--selected{border-color:var(--accent);background:linear-gradient(160deg, #d6a84f1a 0%, #d6a84f00 60%), var(--bg-card);box-shadow:0 14px 32px -20px #d6a84f8c}@media (hover:hover) and (pointer:fine){.booking-service-card--selected:hover{border-color:var(--accent)}}.booking-service-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.booking-service-name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:1.0625rem;font-weight:700;line-height:1.25}@media (width>=900px){.booking-service-name{font-size:1.1875rem}}.booking-service-desc{color:var(--text-secondary);margin-bottom:.375rem;font-size:.8125rem;line-height:1.5}.booking-service-foot{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:.875rem;display:flex}.booking-service-meta{color:var(--text-secondary);align-items:center;gap:.375rem;font-size:.8125rem;display:inline-flex}.booking-service-meta svg{color:var(--accent)}.booking-service-price{font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;font-size:1.375rem;font-weight:800}.booking-barber-card--selected .booking-select-indicator,.booking-service-card--selected .booking-select-indicator{background:var(--accent);border-color:var(--accent)}.booking-barber-card:focus-visible,.booking-service-card:focus-visible{border-radius:var(--radius-card)}.booking-day-card:focus-visible{border-radius:14px}.booking-time-chip:focus-visible{border-radius:10px}.booking-days{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.875rem .5rem;padding-top:.5rem;display:grid}@media (width>=900px){.booking-days{grid-template-columns:repeat(auto-fit,minmax(68px,1fr));gap:.875rem .625rem}}.booking-day-card{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-family:var(--font-body);transition:border-color .15s var(--ease-out), color .15s var(--ease-out), background-color .15s var(--ease-out), transform .15s var(--ease-out);border-radius:14px;flex-direction:column;align-items:center;gap:.125rem;padding:.875rem .25rem .75rem;display:flex;position:relative}.booking-day-card:active{transition-duration:.1s;transform:scale(.97)}@media (hover:hover) and (pointer:fine){.booking-day-card:hover{color:var(--text);border-color:#ffffff2e}}.booking-day-card__weekday{letter-spacing:.12em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.booking-day-card__num{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;font-size:1.625rem;font-weight:700;line-height:1.1}.booking-day-card__month{font-size:.75rem}.booking-day-card__tag{border:1px solid var(--border);background:var(--bg);color:var(--accent);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:100px;padding:.125rem .45rem;font-size:.5625rem;font-weight:700;position:absolute;top:-.55rem;left:50%;transform:translate(-50%)}.booking-day-card--selected{background:var(--accent);border-color:var(--accent);color:#050505}.booking-day-card--selected .booking-day-card__num{color:#050505}.booking-day-card--selected .booking-day-card__tag{border-color:var(--accent)}@media (hover:hover) and (pointer:fine){.booking-day-card--selected:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#050505}}.booking-day-detail{border:1px dashed var(--border);transition:background-color .2s var(--ease-out), border-color .2s var(--ease-out);border-radius:14px;margin-top:1.25rem;padding:1rem 1.125rem}.booking-day-detail--active{background:#d6a84f0d;border-style:solid;border-color:#d6a84f47}.booking-day-detail__date{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:1.0625rem;font-weight:700}.booking-day-detail__meta{color:var(--text-secondary);margin-top:.125rem;font-size:.8125rem}.booking-times-count{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:.25rem;font-size:.6875rem;font-weight:700}.booking-time-group+.booking-time-group{margin-top:1.125rem}.booking-time-group__label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);align-items:center;gap:.625rem;margin-bottom:.5rem;font-size:.6875rem;font-weight:700;display:flex}.booking-time-group__label:after{content:"";background:var(--border);flex:1;height:1px}.booking-times{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.5rem;display:grid}@media (width>=900px){.booking-times{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.625rem}}.booking-time-chip{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:.9375rem;font-weight:600;font-family:var(--font-body);font-variant-numeric:tabular-nums;text-align:center;transition:border-color .15s var(--ease-out), color .15s var(--ease-out), background-color .15s var(--ease-out), transform .15s var(--ease-out);border-radius:10px;padding:.8125rem .5rem}.booking-time-chip:active{transition-duration:.1s;transform:scale(.96)}@media (hover:hover) and (pointer:fine){.booking-time-chip:hover{color:var(--text);border-color:#ffffff2e}}.booking-time-chip--selected{background:var(--accent);border-color:var(--accent);color:#050505}@media (hover:hover) and (pointer:fine){.booking-time-chip--selected:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#050505}}.booking-time-skeleton{background:linear-gradient(90deg, var(--bg-card) 0%, #ffffff0d 50%, var(--bg-card) 100%);background-size:200% 100%;border-radius:10px;height:48px;animation:1.2s linear infinite booking-shimmer}@keyframes booking-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.booking-form{flex-direction:column;gap:1.125rem;display:flex}.booking-field{flex-direction:column;gap:.5rem;display:flex}.booking-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-size:.75rem;font-weight:700}.booking-input{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-body);transition:border-color .15s var(--ease-out);-webkit-appearance:none;border-radius:10px;outline:none;padding:.9375rem 1rem;font-size:1rem}.booking-input:focus{border-color:var(--accent)}.booking-input::placeholder{color:#a1a1aa80}.booking-input[aria-invalid=true]{border-color:#ff6b6b8c}.booking-input[aria-invalid=true]:focus{border-color:#ff8a8a}.booking-field-error{color:#ff8a8a;animation:step-in .18s var(--ease-out) both;align-items:flex-start;gap:.375rem;font-size:.8125rem;line-height:1.45;display:flex}.booking-field-error svg{flex-shrink:0;margin-top:.125rem}.booking-field-hint{color:var(--text-secondary);font-size:.75rem;line-height:1.45}.booking-form--card{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-card);padding:1.25rem}.booking-form--card .booking-input{background:var(--bg)}.booking-assurance{color:var(--text-secondary);flex-direction:column;gap:.5rem;margin-top:1.125rem;font-size:.8125rem;list-style:none;display:flex}.booking-assurance li{align-items:center;gap:.5rem;display:flex}.booking-assurance svg{color:var(--accent);flex-shrink:0}.booking-context{border:1px solid var(--border);border-radius:var(--radius-card);background:linear-gradient(180deg, #d6a84f0f 0%, #d6a84f00 45%), var(--bg-card);margin-top:1.5rem;padding:1.25rem}@media (width>=900px){.booking-context{margin-top:0;padding:1.5rem;position:sticky;top:0}}.booking-context__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.6875rem;font-weight:700}.booking-context__barber{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding-bottom:1rem;display:flex}.booking-context__avatar{border:2px solid var(--accent);width:44px;height:44px;font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;background:#d6a84f14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:800;display:flex}.booking-context__avatar--empty{background:0 0;border:1.5px dashed #fff3}.booking-context__barber--current .booking-context__barber-name{color:var(--accent)}.booking-context__barber-name{font-family:var(--font-display);color:var(--text);font-size:1rem;font-weight:700}.booking-context__barber-meta{color:var(--text-secondary);font-size:.75rem}.booking-context__rows{margin:0;padding:.25rem 0}.booking-context__row{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:baseline;gap:1rem;padding:.625rem 0;font-size:.875rem;display:flex}.booking-context__row dt{color:var(--text-secondary)}.booking-context__row dd{color:var(--text);text-align:right;margin:0;font-weight:600}.booking-context__row--current dt{color:var(--accent);font-weight:600}.booking-context__pending{color:#a1a1aa99;font-weight:500}.booking-context__total{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:1rem;padding:.875rem 0 1rem;font-size:.8125rem;display:flex}.booking-context__total strong{font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;font-size:1.375rem;font-weight:800}.booking-context__trust{border-top:1px solid var(--border);color:var(--text-secondary);flex-wrap:wrap;gap:.5rem 1rem;padding-top:1rem;font-size:.8125rem;list-style:none;display:flex}@media (width>=900px){.booking-context__trust{flex-direction:column}}.booking-context__trust li{align-items:center;gap:.5rem;display:flex}.booking-context__trust svg{color:var(--accent);flex-shrink:0}.booking-footer{padding:.875rem var(--px) max(1.25rem, env(safe-area-inset-bottom));border-top:1px solid var(--border);flex-shrink:0}.booking-error{color:#ff8a8a;animation:step-in .2s var(--ease-out) both;background:#ff6b6b12;border:1px solid #ff6b6b47;border-radius:12px;margin-bottom:.75rem;padding:.6875rem .875rem;font-size:.8125rem;line-height:1.5}.booking-nav{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.booking-nav .btn{flex:1;justify-content:center}.booking-footer>*{max-width:560px;margin-left:auto;margin-right:auto}@media (width>=900px){.booking-footer--split>*{max-width:none}.booking-footer--split .booking-nav .btn{flex:none;min-width:200px}.booking-stage--wide{max-width:none}}.booking-review{flex-direction:column;display:flex}@media (width>=900px){.booking-review{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:2.5rem;display:grid}.booking-review .booking-step-title{font-size:1.75rem}}.booking-review__main{flex-direction:column;gap:.375rem;min-width:0;display:flex}.booking-summary-back{color:var(--text-secondary);transition:color .15s var(--ease-out);border-radius:6px;align-self:flex-start;align-items:center;gap:.375rem;margin-bottom:.75rem;font-size:.8125rem;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.booking-summary-back:hover{color:var(--text)}}.booking-review-card,.booking-done__ticket{border:1px solid var(--border);border-radius:var(--radius-card);background:linear-gradient(180deg, #d6a84f0d 0%, #d6a84f00 40%), var(--bg-card);padding:1.25rem}@media (width>=900px){.booking-review-card{padding:1.5rem 1.75rem}}.booking-review-card__barber{border-bottom:1px solid var(--border);align-items:center;gap:.875rem;padding-bottom:1.125rem;display:flex}.booking-review-card__label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.booking-review-card__barber-name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:1.1875rem;font-weight:700}.booking-review-card__section{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-top:1.25rem;font-size:.6875rem;font-weight:700}.booking-review-grid{clip-path:inset(0 0 2px);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.25rem;margin:0;display:grid}@media (width<=599px){.booking-review-grid--contact{grid-template-columns:1fr}}.booking-review-grid__item{border-bottom:1px solid #ffffff0d;min-width:0;padding:.875rem 0}.booking-review-grid__item--wide{grid-column:1/-1}.booking-review-grid__item dt{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.booking-review-grid__item dd{color:var(--text);overflow-wrap:anywhere;margin:.25rem 0 0;font-size:1rem;font-weight:600}.booking-review-grid__hint{color:var(--text-secondary);font-weight:500}.booking-review-grid__item--accent dt{color:var(--accent)}.booking-review-grid__item--accent dd{font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;font-size:1.375rem;font-weight:800}.booking-checkout{border:1px solid var(--border);border-radius:var(--radius-card);background:linear-gradient(180deg, #d6a84f0f 0%, #d6a84f00 45%), var(--bg-card);margin-top:1.25rem;padding:1.25rem}@media (width>=900px){.booking-checkout{margin-top:0;padding:1.5rem;position:sticky;top:0}}.booking-checkout__total{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:1rem;font-size:.8125rem;display:flex}.booking-checkout__total strong{font-family:var(--font-display);color:var(--accent);letter-spacing:-.02em;font-size:1.875rem;font-weight:800}.booking-checkout__method{background:#d6a84f0f;border:1px solid #d6a84f47;border-radius:14px;align-items:center;gap:.75rem;margin-top:1rem;padding:.875rem;display:flex}.booking-checkout__method-icon{width:36px;height:36px;color:var(--accent);background:#d6a84f24;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.booking-checkout__method-title{color:var(--text);font-size:.9375rem;font-weight:700}.booking-checkout__method-sub{color:var(--text-secondary);font-size:.75rem;line-height:1.5}.booking-checkout__trust{margin-top:1rem}.booking-alert{color:#ff8a8a;animation:step-in .2s var(--ease-out) both;background:#ff6b6b12;border:1px solid #ff6b6b47;border-radius:12px;align-items:flex-start;gap:.625rem;margin-top:1rem;padding:.75rem .875rem;font-size:.8125rem;line-height:1.5;display:flex}.booking-alert svg{flex-shrink:0;margin-top:.0625rem}.booking-pay-btn{justify-content:center;width:100%;margin-top:1.25rem;padding:1rem;font-size:1rem}.booking-summary-note{color:var(--text-secondary);text-align:center;margin-top:.75rem;font-size:.75rem;line-height:1.5}.booking-done{text-align:center;flex-direction:column;align-items:center;gap:.5rem;max-width:600px;margin:0 auto;padding:.5rem 0 1rem;display:flex}.booking-done__icon{border:2px solid var(--border);width:76px;height:76px;color:var(--text-secondary);animation:booking-check-in .32s var(--ease-out) both;border-radius:50%;justify-content:center;align-items:center;margin-bottom:.75rem;font-size:1.75rem;display:flex}.booking-done__icon--success{border-color:var(--accent);color:var(--accent);background:#d6a84f1a;box-shadow:0 0 0 8px #d6a84f0f}.booking-done__icon--error{color:#ff8a8a;background:#ff6b6b14;border-color:#ff6b6b80}.booking-done__title{font-family:var(--font-display);color:var(--text);letter-spacing:-.025em;font-size:1.75rem;font-weight:800}@media (width>=900px){.booking-done__title{font-size:2.125rem}}.booking-done__sub{max-width:420px;color:var(--text-secondary);font-size:.9375rem;line-height:1.65}.booking-done__ticket{text-align:left;width:100%;margin-top:1rem}.booking-done__actions{grid-auto-flow:row;gap:.75rem;width:100%;margin-top:1.25rem;display:grid}@media (width>=600px){.booking-done__actions{grid-auto-columns:1fr;grid-auto-flow:column}}.booking-done__btn{justify-content:center;padding:1rem;font-size:1rem}.login-view{z-index:200;background:var(--bg);animation:booking-in .26s var(--ease-out) both;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.login-box{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:380px;display:flex}.login-logo{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;justify-content:center;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:800;display:flex}.login-logo-img{object-fit:contain;width:auto;height:48px;display:block}.login-logo-mark{background:var(--accent);color:#050505;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;font-weight:800;display:inline-flex}.login-logo-name{font-size:1rem}.login-title{font-family:var(--font-display);color:var(--text);letter-spacing:-.025em;margin-top:-.25rem;font-size:1.5rem;font-weight:700}.login-form{flex-direction:column;gap:.875rem;width:100%;display:flex}.login-field{text-align:left;flex-direction:column;gap:.4rem;display:flex}.login-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-size:.75rem;font-weight:700}.login-input{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-body);transition:border-color .15s var(--ease-out);-webkit-appearance:none;border-radius:10px;outline:none;padding:.9375rem 1rem;font-size:1rem}.login-input:focus{border-color:var(--accent)}.login-input::placeholder{color:#a1a1aa80}.login-error{color:#ff6b6b;text-align:left;background:#ff6b6b14;border:1px solid #ff6b6b33;border-radius:8px;padding:.625rem .875rem;font-size:.8125rem}.login-submit{justify-content:center;width:100%;margin-top:.25rem;padding:.9375rem;font-size:1rem}.login-hint{color:#a1a1aa73;font-size:.75rem;font-style:italic}.login-back{color:var(--text-secondary);transition:color .15s var(--ease-out);padding:.25rem;font-size:.875rem}@media (hover:hover) and (pointer:fine){.login-back:hover{color:var(--text)}}.panel-view{z-index:200;background:var(--bg);animation:booking-in .26s var(--ease-out) both;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.panel-header{padding:.875rem var(--px);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;display:flex}.panel-header-left{align-items:center;gap:.625rem;min-width:0;display:flex}.panel-logo-mark{background:var(--accent);color:#050505;width:28px;height:28px;font-family:var(--font-display);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:800;display:inline-flex}.panel-logo-img{object-fit:contain;border-radius:4px;flex-shrink:0;width:auto;height:32px;display:block}.panel-title{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:700;overflow:hidden}.panel-header-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.panel-btn-sm{border-radius:8px!important;padding:.5rem .875rem!important;font-size:.8125rem!important}.panel-content{padding:1.25rem var(--px) 2rem;overscroll-behavior:contain;flex-direction:column;flex:1;gap:1.5rem;width:100%;max-width:960px;margin:0 auto;display:flex;overflow-y:auto}@media (width>=768px){.panel-content--caja{max-width:1180px}}.panel-metrics{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.panel-metrics>:nth-child(3){text-align:center;grid-column:1/-1}@media (width>=640px){.panel-metrics{grid-template-columns:repeat(3,1fr)}.panel-metrics>:nth-child(3){text-align:left;grid-column:auto}}.panel-metric{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.3rem;padding:1rem 1.125rem;display:flex}.panel-metric-value{font-family:var(--font-body);color:var(--text);letter-spacing:0;font-size:1.5rem;font-weight:800;line-height:1}.panel-metric-value--accent{color:var(--accent)}.panel-metric-label{color:var(--text-secondary);font-size:.75rem;font-weight:500}.panel-filters{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.panel-filter-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;font-size:.8125rem;font-weight:600;font-family:var(--font-body);transition:border-color .15s var(--ease-out), color .15s var(--ease-out), background-color .15s var(--ease-out);background:0 0;border-radius:100px;padding:.5rem 1rem}.panel-filter-btn--active{background:var(--accent);border-color:var(--accent);color:#050505}@media (hover:hover) and (pointer:fine){.panel-filter-btn:not(.panel-filter-btn--active):hover{color:var(--text);border-color:#fff3}.panel-filter-btn--active:hover{background:var(--accent-hover);border-color:var(--accent-hover)}}.appointments-list{flex-direction:column;gap:2rem;display:flex}.appts-section{flex-direction:column;gap:.875rem;display:flex}.appts-section-title{font-family:var(--font-display);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.14em;font-size:.8125rem;font-weight:700}.appts-empty{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:12px;padding:1.25rem;font-size:.875rem}.appts-list{flex-direction:column;gap:.375rem;display:flex}.appt-chip{background:var(--bg-card);border:1px solid var(--border);transition:opacity .2s var(--ease-out), border-color .15s var(--ease-out);border-radius:10px;overflow:hidden}.appt-chip--open{border-color:#d6a84f33}.appt-chip--atendido{opacity:.55}.appt-chip--cancelado,.appt-chip--no-asistio{opacity:.35}.appt-chip__trigger{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:none;align-items:center;gap:.625rem;padding:.625rem .875rem;display:flex}.appt-chip__time{font-family:var(--font-display);color:var(--text);letter-spacing:-.03em;flex-shrink:0;min-width:3.25rem;font-size:.9375rem;font-weight:800}.appt-chip__name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.875rem;font-weight:600;overflow:hidden}.appt-chip__barber{color:var(--text-secondary);flex-shrink:0;font-size:.75rem}.appt-chip__badge{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:100px;flex-shrink:0;padding:.2rem .5rem;font-size:.625rem;font-weight:700}.appt-chip__badge--reservado{color:var(--accent);background:#d6a84f1a;border:1px solid #d6a84f40}.appt-chip__badge--atendido{color:var(--text-secondary);border:1px solid var(--border);background:#ffffff0d}.appt-chip__badge--cancelado,.appt-chip__badge--no-asistio{color:#ff6b6b;background:#ff6b6b14;border:1px solid #ff6b6b33}.appt-chip__badge--pendiente-cancelacion{color:#ff9f43;background:#ff9f431a;border:1px solid #ff9f4340}.appt-chip__badge--manual{color:var(--text-secondary);border:1px solid var(--border);background:#ffffff0d}.appt-chip__chevron{color:var(--text-secondary);transition:transform .2s var(--ease-out);flex-shrink:0;font-size:1.125rem;line-height:1;transform:rotate(0)}.appt-chip__chevron--open{transform:rotate(90deg)}.appt-detail{border-top:1px solid var(--border);animation:step-in .16s var(--ease-out) both;flex-direction:column;gap:.5rem;padding:.75rem .875rem .875rem;display:flex}.appt-detail__row{align-items:baseline;gap:.5rem;display:flex}.appt-detail__label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);flex-shrink:0;min-width:4.5rem;font-size:.6875rem;font-weight:700}.appt-detail__value{color:var(--text);font-size:.875rem}.appt-detail__value--accent{color:var(--accent);font-weight:600}.appt-detail__wa{color:var(--accent);transition:color .15s var(--ease-out);font-size:.875rem}@media (hover:hover) and (pointer:fine){.appt-detail__wa:hover{color:var(--accent-hover)}}.appt-detail__actions{gap:.5rem;padding-top:.375rem;display:flex}.appt-btn{font-size:.8125rem;font-weight:700;font-family:var(--font-body);cursor:pointer;transition:background-color .15s var(--ease-out), transform .15s var(--ease-out);border:1px solid #0000;border-radius:8px;flex:1;padding:.5625rem 0}.appt-btn:active{transition-duration:.1s;transform:scale(.97)}.appt-btn--done{color:var(--accent);background:#d6a84f1a;border-color:#d6a84f40}@media (hover:hover) and (pointer:fine){.appt-btn--done:hover{background:#d6a84f2e}}.appt-btn--cancel{color:#ff6b6b;background:#ff6b6b14;border-color:#ff6b6b33}@media (hover:hover) and (pointer:fine){.appt-btn--cancel:hover{background:#ff6b6b24}}.appt-btn--whatsapp{color:#25d366;background:#25d3661a;border-color:#25d36640;justify-content:center;align-items:center;text-decoration:none;display:flex}@media (hover:hover) and (pointer:fine){.appt-btn--whatsapp:hover{background:#25d3662e}}.pay-form{border:1px solid var(--border);background:#ffffff08;border-radius:8px;flex-direction:column;gap:.75rem;margin-top:.125rem;padding:.875rem;display:flex}.pay-form__title{color:var(--text);font-size:.8125rem;font-weight:700}.pay-form__field{flex-direction:column;gap:.375rem;display:flex}.pay-form__label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.pay-form__input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-body);transition:border-color .15s var(--ease-out);border-radius:8px;outline:none;padding:.5625rem .75rem;font-size:1rem;font-weight:600}.pay-form__input:focus{border-color:var(--accent)}.pay-form__input::placeholder{color:var(--text-secondary);font-weight:400}.pay-form__methods{gap:.5rem;display:flex}.pay-form__method{font-size:.8125rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:1px solid var(--border);color:var(--text-secondary);transition:background-color .15s var(--ease-out), border-color .15s var(--ease-out), color .15s var(--ease-out);background:0 0;border-radius:8px;flex:1;padding:.5rem}.pay-form__method--active{color:var(--accent);background:#d6a84f1a;border-color:#d6a84f59}.pay-summary{border-top:1px solid var(--border);flex-direction:column;gap:.375rem;padding-top:.5rem;display:flex}.appt-detail__value--negative{color:#ff6b6b}.appt-detail__note{color:var(--text-secondary);font-size:.75rem;font-style:italic}.pay-method-cap{text-transform:capitalize}.panel-tabs{border:1px solid var(--border);background:#ffffff0a;border-radius:10px;gap:.25rem;padding:.25rem;display:flex}.panel-tab{font-size:.875rem;font-weight:600;font-family:var(--font-body);cursor:pointer;color:var(--text-secondary);transition:background-color .15s var(--ease-out), color .15s var(--ease-out);background:0 0;border:none;border-radius:7px;flex:1;padding:.5rem 1rem}.panel-tab--active{background:var(--bg-card);color:var(--text)}@media (hover:hover) and (pointer:fine){.panel-tab:not(.panel-tab--active):hover{color:var(--text)}}.caja-view{flex-direction:column;gap:1.75rem;display:flex}.caja-hero{background:var(--bg-card);border:1px solid #d6a84f33;border-radius:16px;flex-direction:column;gap:.25rem;padding:1.5rem;display:flex}.caja-hero__value{font-family:var(--font-body);color:var(--accent);letter-spacing:-.02em;font-size:2.5rem;font-weight:800;line-height:1}.caja-hero__label{color:var(--text);margin-top:.25rem;font-size:.9375rem;font-weight:600}.caja-hero__sub{color:var(--text-secondary);font-size:.75rem}.caja-secondary{grid-template-columns:repeat(2,1fr);gap:.625rem;display:grid}.caja-sec-metric{background:var(--bg-card);border:1px solid var(--border);transition:border-color .2s var(--ease-out);border-radius:12px;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.caja-sec-metric--positive{border-color:#d6a84f33}.caja-sec-metric--negative{border-color:#ff6b6b33}.caja-sec-metric__value{font-family:var(--font-body);color:var(--text);letter-spacing:0;font-size:1.5rem;font-weight:800;line-height:1}.caja-sec-metric--positive .caja-sec-metric__value{color:var(--accent)}.caja-sec-metric--negative .caja-sec-metric__value{color:#ff6b6b}.caja-sec-metric__label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-size:.6875rem;font-weight:600}.caja-breakdown{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.caja-breakdown__row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.625rem 1rem;display:flex}.caja-breakdown__row:last-child{border-bottom:none}.caja-breakdown__label{color:var(--text-secondary);font-size:.8125rem}.caja-breakdown__value{font-family:var(--font-body);color:var(--text);font-size:.875rem;font-weight:600}.gastos-section{flex-direction:column;gap:.5rem;display:flex}.gastos-header{justify-content:space-between;align-items:center;display:flex}.gastos-header__title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.75rem;font-weight:600}.gastos-add-btn{color:var(--accent);cursor:pointer;transition:opacity .15s var(--ease-out);background:0 0;border:none;padding:.25rem 0;font-size:.8125rem;font-weight:600}@media (hover:hover) and (pointer:fine){.gastos-add-btn:hover{opacity:.75}}.gastos-add-btn:active{transform:scale(.95)}.gastos-form{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.5rem;padding:.875rem;display:flex}.gastos-form__input,.gastos-form__select{border:1px solid var(--border);width:100%;color:var(--text);box-sizing:border-box;transition:border-color .15s var(--ease-out);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff0d;border-radius:7px;padding:.5rem .75rem;font-size:1rem}.gastos-form__input:focus,.gastos-form__select:focus{border-color:var(--accent);outline:none}.gastos-form__select option{background:#1a1a2e}.gastos-form__error{color:#f87171;margin:0;font-size:.75rem}.gastos-form__actions{gap:.5rem;margin-top:.25rem;display:flex}.gastos-form__save,.gastos-form__cancel{cursor:pointer;transition:opacity .15s var(--ease-out), transform .1s var(--ease-out);border:none;border-radius:7px;flex:1;padding:.5rem;font-size:.8125rem;font-weight:600}.gastos-form__save{background:var(--accent);color:#fff}.gastos-form__cancel{color:var(--text-secondary);background:#ffffff0f}@media (hover:hover) and (pointer:fine){.gastos-form__save:hover,.gastos-form__cancel:hover{opacity:.8}}.gastos-form__save:active,.gastos-form__cancel:active{transform:scale(.97)}.gastos-empty{color:var(--text-secondary);text-align:center;padding:.75rem 0;font-size:.8125rem;font-style:italic}.gastos-list{flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.gastos-item{border:1px solid var(--border);background:#ffffff08;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.gastos-item__info{flex-direction:column;gap:.125rem;min-width:0;display:flex}.gastos-item__desc{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;overflow:hidden}.gastos-item__meta{font-family:var(--font-body);color:var(--text-secondary);font-size:.75rem}.gastos-item__delete{color:var(--text-secondary);cursor:pointer;transition:color .15s var(--ease-out), background .15s var(--ease-out);background:0 0;border:none;border-radius:5px;flex-shrink:0;padding:.25rem .375rem;font-size:.75rem}@media (hover:hover) and (pointer:fine){.gastos-item__delete:hover{color:#f87171;background:#f871711a}}.gastos-item__delete:active{transform:scale(.9)}.caja-block{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.875rem;padding:1rem .875rem;display:flex}.caja-block--hero{background:linear-gradient(180deg, #d6a84f0d, var(--bg-card) 60%);border-color:#d6a84f52}.caja-block__title{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:.9375rem;font-weight:700}.caja-movements{border:1px solid var(--border);border-radius:10px;overflow:hidden}.caja-row{border-bottom:1px solid var(--border);transition:opacity .2s var(--ease-out), background-color .15s var(--ease-out)}.caja-row:last-child{border-bottom:none}.caja-row--open{background:#d6a84f08}.caja-row--cancelado,.caja-row--no-asistio{opacity:.4}.caja-row__trigger{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:none;align-items:center;gap:.5rem;padding:.625rem .875rem;display:flex}.caja-row__compact{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.caja-row__amount-line{font-family:var(--font-body);color:var(--text);white-space:nowrap;text-overflow:ellipsis;text-align:left;font-size:.9375rem;font-weight:700;overflow:hidden}.caja-row__barber{color:var(--text-secondary);text-align:left;font-size:.75rem}.caja-row__chevron{color:var(--text-secondary);transition:transform .2s var(--ease-out);flex-shrink:0;font-size:1.125rem;line-height:1;transform:rotate(0)}.caja-row__chevron--open{transform:rotate(90deg)}.caja-detail{border-top:1px solid var(--border);animation:step-in .16s var(--ease-out) both;flex-direction:column;gap:.375rem;padding:.625rem .875rem .875rem;display:flex}.caja-detail__row{align-items:baseline;gap:.5rem;display:flex}.caja-detail__label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);flex-shrink:0;min-width:5rem;font-size:.6875rem;font-weight:700}.caja-detail__value{color:var(--text);font-size:.875rem}.caja-detail__value--accent{color:var(--accent);font-weight:600}.caja-detail__value--negative{color:#ff6b6b}.caja-subtabs-wrap,.caja-period-chips-wrap{position:relative}.caja-subtabs-wrap:after,.caja-period-chips-wrap:after{content:"";background:linear-gradient(to left, var(--bg-card), transparent);pointer-events:none;border-radius:0 10px 10px 0;width:1.75rem;position:absolute;top:.25rem;bottom:.25rem;right:0}.caja-subtabs,.caja-period-chips{background:var(--bg-card);border:1px solid var(--border);-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:10px;gap:.25rem;padding:.25rem;display:flex;overflow-x:auto}.caja-subtabs::-webkit-scrollbar{display:none}.caja-period-chips::-webkit-scrollbar{display:none}.caja-subtab,.caja-period-chip{white-space:nowrap;min-width:5.25rem;font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;transition:background .15s var(--ease-out), color .15s var(--ease-out);background:0 0;border:none;border-radius:7px;flex:1 0 auto;padding:.5rem .625rem;font-size:.8125rem;font-weight:600}.caja-subtab--active,.caja-period-chip--active{color:var(--accent);background:#d6a84f1f}@media (hover:hover) and (pointer:fine){.caja-subtab:not(.caja-subtab--active):hover,.caja-period-chip:not(.caja-period-chip--active):hover{color:var(--text);background:#ffffff0a}}@media (width>=640px){.caja-subtabs-wrap:after,.caja-period-chips-wrap:after{display:none}.caja-subtab,.caja-period-chip{text-align:center;flex:1;min-width:0}}.caja-period-filter{flex-direction:column;gap:.625rem;display:flex}.caja-period-custom{gap:.625rem;display:flex}.caja-period-field{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.caja-period-field__label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.caja-period-input{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-body);box-sizing:border-box;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;transition:border-color .15s var(--ease-out);border-radius:8px;padding:.5rem .625rem;font-size:.875rem}.caja-period-input:focus{border-color:var(--accent);outline:none}.caja-tab-content{flex-direction:column;gap:1.125rem;display:flex}.caja-metrics{grid-template-columns:repeat(2,1fr);gap:.625rem;display:grid}@media (width>=480px){.caja-metrics{grid-template-columns:repeat(3,1fr)}}@media (width>=768px){.caja-metrics{gap:.875rem}}.caja-grid-2,.caja-grid-3{flex-direction:column;gap:1.125rem;display:flex}@media (width>=768px){.caja-grid-2{grid-template-columns:1fr 1fr;align-items:start;gap:1.125rem;display:grid}}@media (width>=1024px){.caja-grid-3{grid-template-columns:repeat(3,1fr);align-items:start;gap:1.125rem;display:grid}}.caja-metric{border:1px solid var(--border);background:#ffffff08;border-radius:12px;flex-direction:column;gap:.25rem;padding:.875rem;display:flex}.caja-metric__value{font-family:var(--font-body);color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:800;line-height:1.1}.caja-metric__value--accent{color:var(--accent)}.caja-metric__value--negative{color:#ff6b6b}.caja-metric__icon{width:1.0625rem;height:1.0625rem;color:var(--accent);vertical-align:-2px;background:#d6a84f1f;border-radius:50%;justify-content:center;align-items:center;margin-right:.375rem;font-size:.625rem;font-weight:700;display:inline-flex}.caja-metric__label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:600}.caja-metric__label--small{text-transform:none;letter-spacing:0;font-size:.75rem;font-weight:500}.caja-balance{text-align:center;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem 0 .25rem;display:flex}.caja-balance__value{font-family:var(--font-body);color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:800;line-height:1.1}.caja-balance__value--accent{color:var(--accent)}.caja-balance__value--negative{color:#d9a463}.caja-balance__sub{color:var(--text-secondary);margin-bottom:.5rem;font-size:.75rem}.caja-balance__rows{border-top:1px solid var(--border);flex-direction:column;gap:.5rem;width:100%;margin-top:.25rem;padding-top:.75rem;display:flex}.caja-balance__row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.caja-balance__row-label{color:var(--text-secondary);font-size:.8125rem}.caja-balance__row-value{font-family:var(--font-body);color:var(--text);font-variant-numeric:tabular-nums;font-size:.9375rem;font-weight:700}.caja-balance__row-value--accent{color:var(--accent)}.caja-section__title{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:.9375rem;font-weight:700}.caja-mov-filters{gap:.375rem;display:flex}.caja-mov-filter-btn{background:var(--bg-card);border:1px solid var(--border);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;transition:background .15s var(--ease-out), color .15s var(--ease-out), border-color .15s var(--ease-out);border-radius:20px;padding:.375rem .875rem;font-size:.8125rem;font-weight:600}.caja-mov-filter-btn--active{color:var(--accent);background:#d6a84f1a;border-color:#d6a84f59}@media (hover:hover) and (pointer:fine){.caja-mov-filter-btn:not(.caja-mov-filter-btn--active):hover{color:var(--text);background:#ffffff0a}}.caja-mov-list{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:0;list-style:none;display:flex;overflow:hidden}.caja-mov-item{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.caja-mov-item:last-child{border-bottom:none}.caja-mov-item__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;display:flex}.caja-mov-item--turno .caja-mov-item__icon{color:var(--accent);background:#d6a84f1f}.caja-mov-item--ingreso .caja-mov-item__icon{color:#4ade80;background:#4ade801f}.caja-mov-item--gasto .caja-mov-item__icon{color:#f87171;background:#f871711f}.caja-mov-item__body{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.caja-mov-item__desc{color:var(--text);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.875rem;font-weight:600;display:-webkit-box;overflow:hidden}.caja-mov-item__meta{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;overflow:hidden}.caja-mov-item__amount{font-family:var(--font-body);color:var(--accent);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.9375rem;font-weight:700}.caja-mov-item__amount--pending{color:var(--text-secondary)}.caja-mov-item__amount--gasto{color:#f87171}.caja-mov-chip{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;width:fit-content;margin-top:.2rem;padding:.125rem .5rem;font-size:.625rem;font-weight:700;display:inline-block}.caja-mov-chip--ingreso{color:var(--accent);background:#d6a84f1f}.caja-mov-chip--gasto{color:var(--text-secondary);background:#ffffff0f}.caja-mov-chip--pendiente{color:#f5b942;background:#f59e0b1f}.caja-stats-section{flex-direction:column;gap:.75rem;display:flex}.caja-bars{border:1px solid var(--border);background:#ffffff08;border-radius:12px;flex-direction:column;gap:.75rem;padding:.875rem;display:flex}.caja-bars__sub{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.caja-bar-row{flex-direction:column;gap:.3rem;display:flex}.caja-bar-row__header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.caja-bar-row__label{color:var(--text);font-size:.8125rem;font-weight:600}.caja-bar-row__value{font-family:var(--font-body);color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.8125rem;font-weight:700}.caja-bar-row__pct{color:var(--text-secondary);font-weight:500}.caja-bar-track{background:#ffffff0f;border-radius:999px;width:100%;height:6px;overflow:hidden}.caja-bar-fill{background:var(--accent);height:100%;transition:width .3s var(--ease-out);border-radius:999px}.caja-bar-fill--gasto{opacity:.85;background:#d9a463}.caja-bar-fill--muted{background:var(--text-secondary);opacity:.4}.caja-chart-bars{grid-template-columns:repeat(7,1fr);align-items:end;gap:.375rem;display:grid}.caja-chart-col{flex-direction:column;align-items:center;gap:.375rem;display:flex}.caja-chart-bar-track{background:#ffffff0a;border-radius:6px;align-items:flex-end;width:100%;max-width:1.5rem;height:5.5rem;display:flex;overflow:hidden}.caja-chart-bar{background:var(--text-secondary);opacity:.35;width:100%;min-height:2px;transition:height .3s var(--ease-out);border-radius:6px 6px 0 0}.caja-chart-bar--highlight{background:var(--accent);opacity:1}.caja-chart-bar--highlight-gasto{opacity:1;background:#d9a463}.caja-chart-bar-label{color:var(--text-secondary);font-size:.6875rem;font-weight:600}.caja-chart-footer{color:var(--text-secondary);text-align:center;font-size:.8125rem}.caja-chart-footer__highlight{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700}.caja-chart-footer__highlight--gasto{color:#d9a463}.caja-category-list{flex-direction:column;gap:.875rem;display:flex}.caja-category-item{flex-direction:column;gap:.3rem;display:flex}.caja-category-item__header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.caja-category-item__name{color:var(--text);font-size:.8125rem;font-weight:600}.caja-category-item__value{font-family:var(--font-body);color:var(--text-secondary);flex-shrink:0;font-size:.75rem}.caja-ranking-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.caja-ranking-item{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.625rem 0;display:flex}.caja-ranking-item:last-child{border-bottom:none;padding-bottom:0}.caja-ranking-item:first-child{padding-top:0}.caja-ranking-item__rank{width:1.5rem;height:1.5rem;color:var(--accent);background:#d6a84f1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.caja-ranking-item__body{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.caja-ranking-item__name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.caja-ranking-item__meta{color:var(--text-secondary);font-size:.6875rem}.caja-ranking-item__value{font-family:var(--font-body);color:var(--accent);flex-shrink:0;font-size:.9375rem;font-weight:700}.reportes-view{flex-direction:column;gap:1.25rem;padding:1rem 0;display:flex}.reportes-section{flex-direction:column;gap:.5rem;display:flex}.reportes-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:700}.reportes-filter-row{flex-wrap:wrap;gap:.5rem;display:flex}.reportes-date-row{flex-wrap:wrap;gap:.75rem;margin-top:.25rem;display:flex}.reportes-date-label{color:var(--text-secondary);flex-direction:column;gap:.25rem;font-size:.75rem;display:flex}.reportes-date-input{width:10rem}.reportes-period-label{color:var(--text-secondary);font-size:.8125rem}.reportes-range-hint{color:var(--text-secondary);font-size:.8125rem;font-style:italic}.reportes-loading{color:var(--text-secondary);padding:.5rem 0;font-size:.875rem}.reportes-kpis{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.625rem;display:grid}.reportes-kpi{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;gap:.2rem;padding:.75rem 1rem;display:flex}.reportes-kpi-value{font-family:var(--font-display);color:var(--text);font-size:1.2rem;font-weight:700;line-height:1.2}.reportes-kpi-value--accent{color:var(--accent)}.avail-copy-preview{flex-wrap:wrap;gap:.375rem;padding:.5rem 0;display:flex}.avail-copy-slot{color:var(--accent);font-variant-numeric:tabular-nums;background:#d6a84f14;border:1px solid #d6a84f33;border-radius:6px;padding:.25rem .625rem;font-size:.8125rem;font-weight:600;display:inline-block}.avail-copy-empty,.avail-copy-loading{color:var(--text-secondary);padding:.25rem 0;font-size:.8125rem}.reportes-kpi-label{color:var(--text-secondary);font-size:.6875rem;font-weight:500}.reportes-error{color:#f87171;background:#f8717114;border-left:3px solid #f87171;border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.reportes-download-section{flex-direction:column;gap:.5rem;padding-top:.5rem;display:flex}.reportes-download-btn{background:var(--accent);color:var(--bg);font-family:var(--font-display);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-self:flex-start;align-items:center;gap:.4rem;padding:.85rem 2rem;font-size:.9375rem;font-weight:700;transition:background .18s,opacity .18s,transform .12s;display:inline-flex}.reportes-download-btn:hover:not(:disabled){background:var(--accent-hover)}.reportes-download-btn:active:not(:disabled){transform:scale(.97)}.reportes-download-btn:disabled{opacity:.45;cursor:not-allowed}.reportes-download-hint{color:var(--text-secondary);font-size:.75rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
