@import url('/static/fonts/fonts.css');
/* Lacerda V3 · Stitch Signature · local assets and real application data. */
:root{--lc-ink:#dce3f0;--lc-paper:#0d141d;--lc-gold:#f2ca50;--lc-line:#303946;--lc-muted:#aab4c3;--lc-card:#192029;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}body.lacerda-index,body.lacerda-admin,body.lacerda-reserva{background:var(--lc-paper)!important;color:var(--lc-ink)!important;font-family:'DM Sans',sans-serif!important;background-image:none!important;font-variant-numeric:lining-nums tabular-nums}h1,h2,h3,h4,.font-headline,.font-serif,[class*="font-headline"],[class*="font-display"]{font-family:'DM Serif Display',Georgia,serif!important;font-weight:400!important;letter-spacing:-.015em}button,input,select,textarea{font:inherit;font-variant-numeric:lining-nums tabular-nums}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid var(--lc-gold)!important;outline-offset:4px}img{max-width:100%}[hidden],.hidden{display:none!important}svg{flex-shrink:0}input,select,textarea{max-width:100%;min-width:0}p,h1,h2,h3,h4,td{overflow-wrap:break-word}main,section,article,.grid>*{min-width:0}
.lc-eyebrow,.lc-nav-label{display:block;font:600 10px/1.5 'DM Sans',sans-serif;letter-spacing:.15em;color:var(--lc-gold)}.lc-wordmark{display:flex;gap:12px;align-items:center;font-size:17px;font-weight:700;letter-spacing:.1em;color:var(--lc-ink);line-height:1.2}.lc-wordmark img{width:72px;height:64px;object-fit:contain}.lc-wordmark span span,.lc-wordmark small{display:block;font:400 9px/1.5 'DM Sans',sans-serif;letter-spacing:.22em;color:var(--lc-muted);margin-top:4px}.lc-admin-header .lc-wordmark{display:block}.lc-admin-header .lc-wordmark>span{display:block;font-size:9px;letter-spacing:.16em;color:var(--lc-muted);margin-top:6px}.lc-public-header{min-height:88px;padding:8px max(24px,5vw);display:flex;gap:16px;align-items:center;justify-content:space-between;background:#080f17;border-bottom:1px solid #232a34;position:relative;z-index:30}.lc-public-header nav{display:flex;align-items:center;gap:26px;font-size:13px}.lc-public-header a:hover{color:var(--lc-gold)}
.lc-stitch-hero{position:relative;background:radial-gradient(ellipse at 85% 20%,#d4af3714,transparent 55%),#080f17;padding:74px 0 80px;isolation:isolate}.lc-stitch-hero>div.absolute{display:none}.lc-stitch-hero h1{font-size:clamp(40px,4.9vw,72px);max-width:820px;line-height:1.08}.lc-stitch-hero h1 span{color:var(--lc-gold)}.lc-stitch-hero .font-body-lg{font-size:16px;line-height:1.85}.lc-stitch-hero a{font:600 14px 'DM Sans',sans-serif}.lc-stitch-hero .font-title-md{font-size:14px;font-weight:600}.lc-stitch-hero .font-body-sm{font-size:12px;line-height:1.6}.lc-stitch-hero .font-label-sm{font-size:11px}.lc-stitch-hero .lg\:col-span-4>div{background:var(--lc-card);border:1px solid #303946;border-radius:16px;box-shadow:none}.lc-stitch-hero .lg\:col-span-4>div>div+div{border-top:1px solid #303946;padding-top:16px}
.lc-section-intro{max-width:1152px;margin:0 auto 28px}.lc-section-intro h2{font-size:36px;margin:10px 0}.lc-section-intro p{font-size:14px;color:var(--lc-muted)}.lc-booking{scroll-margin-top:20px;background:var(--lc-paper)!important}.lc-booking-nav{padding-top:48px!important}.lc-booking-nav>div:not(.lc-section-intro){background:#151c25!important;border:1px solid var(--lc-line);box-shadow:none!important;border-radius:12px!important}.lc-booking #services-list{gap:20px!important}.lc-booking #services-list>*,.lc-booking #barbers-list>*{border:1px solid var(--lc-line);border-radius:14px!important;box-shadow:none!important;background:var(--lc-card)}.lc-booking #services-list>:hover,.lc-booking #barbers-list>:hover{border-color:#d4af37}.lc-booking #services-list img{height:185px;object-fit:cover}.lc-booking #slots-container button{font:600 14px 'DM Sans',sans-serif;border-radius:8px;min-height:44px}.lc-booking [class*=shadow]{box-shadow:none!important}.lc-booking [class*=blur-]{display:none}.lc-gallery{background:#151c25!important;padding:48px 0!important;border-block:1px solid var(--lc-line)}.lc-gallery h2{font-size:32px}.lacerda-index footer{background:#080f17!important;border-top:1px solid var(--lc-line)}.glass-light{background:var(--lc-card)!important;border-color:var(--lc-line)!important}
.lacerda-admin>div[class*=pointer-events-none]{display:none!important}.lc-admin-header{min-height:80px;border-bottom:1px solid #232a34;background:#151c25;position:sticky;top:0;z-index:40}.lc-admin-header>div{max-width:none!important;min-height:80px;padding:12px 28px!important;gap:16px}.lc-admin-header #btn-install-shortcut{font-size:11px;background:#232a34;color:var(--lc-ink);border:1px solid var(--lc-line);box-shadow:none}.lc-workspace{max-width:none!important;width:auto!important;margin:0 0 254px 260px!important;margin-bottom:0!important;padding:28px 32px 60px!important}.lc-sidebar{position:fixed;left:0;top:80px;bottom:0;width:260px;background:#151c25;padding:20px 18px;display:flex;flex-direction:column;gap:5px;overflow:auto;z-index:35;border-right:1px solid #232a34}.lc-sidebar-brand{text-align:center;border-bottom:1px solid #303946;padding-bottom:18px;margin-bottom:8px}.lc-sidebar-brand img{width:146px;height:106px;object-fit:contain;margin:auto}.lc-sidebar-brand span{display:block;font-size:9px;color:var(--lc-muted);letter-spacing:.18em}.lc-nav-label{color:#8290a2;font-size:9px;margin:18px 12px 7px}.lc-sidebar button[id^=tab-btn]{flex-shrink:0;width:100%;min-height:45px;white-space:normal;text-align:left;padding:12px!important;font:500 12px/1.4 'DM Sans',sans-serif!important;border-radius:8px!important;box-shadow:none!important;color:#b6bdc9!important;background:transparent!important;border:0!important;display:flex;gap:10px;align-items:center;justify-content:flex-start}.lc-sidebar button[id^=tab-btn][aria-current=page]{color:#f2ca50!important;background:#d4af3715!important;box-shadow:inset 3px 0 #d4af37!important}.lc-sidebar button:hover{background:#232a34!important;color:#fff!important}.lc-sidebar button svg{width:18px!important;height:18px!important;color:inherit!important}.lc-sidebar-home{font-size:12px;color:var(--lc-gold);margin-top:auto;padding:28px 12px 5px}.lc-quick-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-bottom:26px}.lc-quick-actions button{font-size:11px!important}.lacerda-admin .atelier-card{background:var(--lc-card)!important;border:1px solid var(--lc-line)!important;border-radius:12px!important;box-shadow:none!important}.lacerda-admin .tab-pane{animation:none!important}.lacerda-admin .tab-pane h2{font-size:32px!important;line-height:1.2}.lacerda-admin .tab-pane h3{font-size:21px!important}.lacerda-admin button{border-radius:8px}.btn-gold,.lacerda-index .bg-primary{background:#d4af37!important;color:#231b00!important;border-color:#d4af37!important;box-shadow:none!important}.btn-gold:hover{background:#f2ca50!important}.btn-dark{background:#232a34!important;color:var(--lc-ink)!important;border:1px solid var(--lc-line)!important;box-shadow:none!important}.btn-dark:hover{background:#2e353f!important;border-color:#77705b!important}.text-primary{color:var(--lc-gold)!important}input:not([type=checkbox]):not([type=radio]),select,textarea{background:#0d141d!important;color:var(--lc-ink)!important;border:1px solid #424956!important;border-radius:8px!important;min-height:42px;padding:10px 12px}input::placeholder,textarea::placeholder{color:#8290a2!important}input[type=checkbox],input[type=radio]{accent-color:#d4af37}.lacerda-admin input[id=admin-email-input],.lacerda-admin input[id=admin-password-input]{padding-left:40px!important;padding-right:40px!important}.lacerda-admin dialog,.lc-cancel-dialog{background:var(--lc-card)!important;color:var(--lc-ink)!important;border:1px solid #424956!important;border-radius:16px!important;box-shadow:0 24px 80px #0007!important;max-width:calc(100vw - 24px);max-height:90dvh;overflow:auto;padding:26px}.lacerda-admin dialog::backdrop,.lc-cancel-dialog::backdrop{background:#080f17bd;backdrop-filter:blur(4px)}.lc-modal-overlay{overflow:auto;overscroll-behavior:contain}.lc-modal-overlay>div{max-height:calc(100dvh - 32px);overflow-y:auto!important;min-width:0}.lacerda-admin table{font-size:13px;font-variant-numeric:tabular-nums}.lacerda-admin table th{background:#232a34!important;color:#aab4c3!important;font-size:10px;letter-spacing:.06em}.lacerda-admin table td{border-color:#303946!important}.lacerda-admin .tab-pane [class*=shadow]{box-shadow:none!important}.lacerda-admin .lc-login{background:radial-gradient(ellipse at 50% 25%,#d4af3710,transparent 65%),#0d141d!important;backdrop-filter:none!important}.lc-login>div{background:#192029!important;border:1px solid #303946!important;border-radius:16px!important;box-shadow:0 24px 80px #0004!important}.lc-login-logo{width:170px;height:112px;object-fit:contain;margin:0 auto 10px;display:block}.lc-login .animate-ping{display:none}.lacerda-admin footer{margin-left:260px!important;background:transparent!important;color:var(--lc-muted)!important}.lacerda-admin #license-banner{margin-left:260px}.period-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:8px 0}.period-row label{font-size:12px;display:flex;flex-direction:column;gap:5px}.site-grid label{color:var(--lc-muted)!important}.site-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))!important}
/* Numbers use a dedicated type scale, never the display serif. No truncation. */
.lc-number,[id^=report-card-],[id^=stat-],input[type=number],input[type=time],input[type=date],input[type=month],input[type=week],time{font-family:'DM Sans',sans-serif!important;font-variant-numeric:lining-nums tabular-nums!important;letter-spacing:0!important}.lc-number{white-space:nowrap}.lc-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:16px;margin:24px 0}.lc-report-card{display:flex;flex-direction:column;gap:14px;min-width:0;padding:22px;background:#192029;border:1px solid #303946;border-radius:12px;cursor:pointer;position:relative}.lc-report-card:hover,.lc-report-card:focus-visible{border-color:#d4af37;background:#1d2631}.lc-report-card>div:first-child{margin:0!important}.lc-report-value{font:600 var(--lc-metric-size,26px)/1.25 'DM Sans',sans-serif!important;color:#dce3f0!important;white-space:nowrap;letter-spacing:-.025em!important;min-width:0;order:2}.lc-report-count{font:500 13px/1.5 'DM Sans',sans-serif!important;color:#aab4c3!important;order:3}.lc-report-count span{font-size:12px!important;color:#aab4c3!important}.lc-report-card>div:last-child:not(.lc-report-count):not(.lc-report-value){order:4}.lc-report-label,.lc-report-card h3,.lc-report-card h4{font:600 13px/1.4 'DM Sans',sans-serif!important}.lc-report-card>div>span{font-size:11px}.lc-report-card [class*=blur]{display:none}.lc-calendar-scroll{width:100%;overflow-x:auto;overscroll-behavior-x:contain}.lacerda-admin [id*=calendar] .lc-number{font-size:inherit}.lacerda-admin [class*=overflow-x-auto]{max-width:100%;overscroll-behavior-x:contain}.lacerda-admin .tab-pane [class*=text-4xl]:not(h2):not(h3),.lacerda-admin .tab-pane [class*=text-3xl]:not(h2):not(h3){font-family:'DM Sans',sans-serif!important;font-variant-numeric:tabular-nums;font-size:28px!important;line-height:1.25}
.lacerda-reserva{font:15px/1.7 'DM Sans',sans-serif}.lc-reserva-shell{max-width:1050px;display:grid;grid-template-columns:280px minmax(0,1fr);margin:56px auto;border:1px solid var(--lc-line);border-radius:16px;overflow:hidden;min-height:440px}.lc-reserva-shell aside{background:#080f17;color:var(--lc-gold);display:flex;flex-direction:column;justify-content:center;text-align:center;padding:28px}.lc-reserva-shell aside img{width:100%}.lc-reserva-shell aside p{font:28px/1.25 'DM Serif Display',serif}.lc-reserva-shell main{background:var(--lc-card);padding:40px;min-width:0}.lc-reserva-shell main small{font-size:10px;letter-spacing:.2em;color:var(--lc-gold)}.lc-reserva-shell h1{font-size:38px;line-height:1.15;margin:15px 0 30px}.lc-reserva-shell #details{white-space:pre-line}.lc-reserva-shell ul{padding:0;list-style:none}.lc-reserva-shell li{margin:18px 0;padding:20px;border:1px solid var(--lc-line);border-radius:10px;background:#151c25}.lc-reserva-shell a{color:var(--lc-gold)}.lc-reserva-shell button,.lc-dialog-actions button{background:#d4af37;color:#231b00;padding:12px 18px;border:0;border-radius:8px;font-weight:600}.lc-dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.lc-dialog-actions #keep-reservation{background:#303946;color:var(--lc-ink)}.lc-dialog-actions #confirm-cancellation{background:#ffb4ab;color:#690005}.lc-cancel-dialog h2{font-size:28px;margin:0 0 18px}.lc-cancel-dialog{max-width:min(480px,calc(100vw - 24px))}
@media(min-width:1600px){.lc-workspace{padding-inline:48px!important}.lc-report-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1100px){.lc-sidebar{width:224px;padding-inline:12px}.lc-workspace{margin-left:224px!important;padding-inline:22px!important}.lacerda-admin footer,.lacerda-admin #license-banner{margin-left:224px!important}.lc-public-header nav{gap:16px}.lc-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.lc-public-header{padding:10px 16px;flex-wrap:wrap;gap:8px}.lc-public-header nav{width:100%;justify-content:space-between;font-size:11px;gap:8px}.lc-wordmark{font-size:14px}.lc-wordmark img{width:55px;height:48px}.lc-stitch-hero{padding:42px 0}.lc-stitch-hero h1{font-size:42px}.lc-stitch-hero .font-body-lg{font-size:14px}.lc-stitch-hero a{width:100%;padding:15px}.lc-section-intro h2{font-size:30px}.lc-booking-nav{padding-top:32px!important}.lc-sidebar{position:static;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:6px;border:1px solid #303946;border-radius:12px;margin-bottom:20px}.lc-sidebar-brand,.lc-sidebar-home,.lc-nav-label{display:none}.lc-sidebar button[id^=tab-btn]{min-height:44px;font-size:11px!important;padding:10px!important}.lc-sidebar .whitespace-nowrap{white-space:normal}.lc-workspace{margin:0!important;padding:18px 12px 30px!important}.lc-admin-header{position:relative}.lc-admin-header>div{padding:12px 16px!important;flex-wrap:wrap}.lc-admin-header .lc-wordmark{font-size:18px}.lc-admin-header #btn-install-shortcut{max-width:120px;white-space:normal;font-size:10px;line-height:1.4}.lc-admin-header #logged-barber-badge{max-width:180px;white-space:normal;font-size:11px;overflow-wrap:anywhere}.lc-quick-actions{justify-content:flex-start;gap:8px}.lc-quick-actions button{font-size:10px!important;padding:10px!important}.lacerda-admin .tab-pane h2{font-size:28px!important}.lacerda-admin footer,.lacerda-admin #license-banner{margin-left:0!important}.lc-report-grid{grid-template-columns:minmax(0,1fr);gap:12px}.lc-report-card{padding:20px}.lc-report-value{font-size:var(--lc-metric-size,26px)!important}.lc-reserva-shell{grid-template-columns:1fr;margin:24px 12px}.lc-reserva-shell aside{display:none}.lc-reserva-shell main{padding:26px 20px}.lc-reserva-shell h1{font-size:32px}.lc-modal-overlay{padding:12px!important}.lc-modal-overlay>div{max-height:calc(100dvh - 24px);padding:22px 18px}.lacerda-admin dialog{padding:22px 16px}.lc-booking .px-gutter{padding-inline:16px}.lacerda-admin .period-row label{flex:1;min-width:110px}.lacerda-admin .tab-pane .flex{min-width:0}.lc-login{align-items:flex-start!important;padding-top:24px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:1200px){.lc-report-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.lc-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0}.lc-calendar-toolbar>div{display:flex;padding:4px;background:#192029;border:1px solid #303946;border-radius:10px}.lc-calendar-toolbar button{padding:10px 18px;font:600 12px 'DM Sans',sans-serif;color:#aab4c3}.lc-calendar-toolbar button[aria-pressed=true]{background:#d4af37;color:#231b00}.lc-calendar-toolbar label{font-size:12px;color:#aab4c3;display:flex;align-items:center;gap:12px}.lc-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:700px}.lc-month-heading{text-align:center;padding:14px;background:#232a34;color:#aab4c3;font-size:12px}.lc-month-day{min-height:170px;padding:10px;border-right:1px solid #303946;border-bottom:1px solid #303946;background:#151c25}.lc-month-date{display:flex;width:100%;align-items:center;justify-content:space-between;color:#dce3f0;font-size:15px}.lc-month-date span{font-size:10px;color:#aab4c3}.lc-today{box-shadow:inset 0 3px #d4af37}.lc-month-event{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:8px;padding:8px;width:100%;background:#232a34;border-left:2px solid #d4af37;border-radius:5px!important;text-align:left;overflow-wrap:anywhere;font-size:11px}.lc-month-event time{color:#f2ca50;font-weight:600}.lc-month-event small{color:#aab4c3;font-size:10px}.lc-month-more{font-size:10px;color:#f2ca50;margin-top:10px;display:block}.lc-day-table{table-layout:fixed}.lc-day-table th:first-child,.lc-day-table td:first-child{width:85px;position:sticky;left:0}.lc-day-table th:last-child{width:auto}
.lc-mobile-menu{display:none}@media(max-width:760px){.lc-mobile-menu{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;background:#192029;border:1px solid #303946;color:#dce3f0;font:600 13px 'DM Sans',sans-serif;margin-bottom:16px}.lc-sidebar{display:none}.lc-sidebar.lc-menu-open{display:grid}}
