:root {
    color-scheme: dark;
    --bg: #080808;
    --bg-soft: #0e0e0f;
    --surface: #151516;
    --surface-2: #1c1c1e;
    --surface-3: #242426;
    --line: rgba(255,255,255,.085);
    --line-strong: rgba(255,255,255,.15);
    --text: #f5f5f7;
    --muted: #98989f;
    --gold: #c79a28;
    --gold-2: #e2bd59;
    --gold-soft: rgba(199,154,40,.14);
    --green: #32b768;
    --red: #ef5a5a;
    --blue: #5b8def;
    --shadow: 0 24px 70px rgba(0,0,0,.34);
    --radius-xl: 28px;
    --radius-lg: 20px;
    --radius-md: 14px;
    --sidebar: 252px;
}

/* Client portal: native V2 parity for queue, store, orders and account services. */
.client-portal-heading{align-items:flex-end}.client-portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-portal-grid>a{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center;padding:22px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));color:var(--text);text-decoration:none;min-height:118px}.client-portal-grid>a>span{width:54px;height:54px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--gold) 35%,transparent);background:color-mix(in srgb,var(--gold) 11%,transparent);color:var(--gold-2);border-radius:16px}.client-portal-grid>a svg{width:22px}.client-portal-grid>a>div{min-width:0}.client-portal-grid strong{font-size:1.02rem}.client-portal-grid p{margin:5px 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}.client-portal-grid>a>svg{color:var(--muted);width:18px}
.profile-client-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.profile-client-links>a{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:15px;border:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none}.profile-client-links>a>svg:first-child{color:var(--gold);width:20px}.profile-client-links span{min-width:0}.profile-client-links strong,.profile-client-links small{display:block}.profile-client-links small{color:var(--muted);font-size:.72rem;margin-top:3px}.profile-client-links>a>svg:last-child{width:16px;color:var(--muted)}
.client-feed-services{margin-top:18px;padding:22px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(199,154,40,.08),rgba(255,255,255,.015))}.client-feed-services>header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.client-feed-services h3{margin:3px 0 0}.client-feed-services>header>a{color:var(--gold-2);text-decoration:none;font-size:.82rem}.client-feed-services>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.client-feed-services>div>a{display:flex;gap:11px;align-items:center;padding:14px;border:1px solid var(--line);background:rgba(0,0,0,.18);color:var(--text);text-decoration:none}.client-feed-services>div>a>svg{width:20px;color:var(--gold)}.client-feed-services strong,.client-feed-services small{display:block}.client-feed-services small{color:var(--muted);font-size:.7rem;margin-top:3px}
.client-appointment-meta{display:flex;align-items:center;gap:10px;margin-top:10px}.client-appointment-meta strong{font-size:.9rem}.client-appointment-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.client-appointment-actions a,.client-appointment-actions button{display:inline-flex;align-items:center;gap:6px;min-height:35px;padding:0 10px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--text);font:inherit;font-size:.75rem;text-decoration:none;cursor:pointer}.client-appointment-actions svg{width:15px}.client-appointment-actions .danger-text{color:var(--red)}.appointment-list>article{align-items:flex-start}.appointment-list .list-main{min-width:0;flex:1}.appointment-list .list-value{display:none}
.current-subscription-card{display:grid;grid-template-columns:58px 1fr auto;gap:16px;align-items:center;margin-bottom:18px;padding:20px;border:1px solid color-mix(in srgb,var(--gold) 42%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 14%,transparent),rgba(255,255,255,.02))}.current-subscription-card>span{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:var(--gold);color:#090909}.current-subscription-card h3{margin:2px 0 5px}.current-subscription-card p{margin:0;color:var(--muted);font-size:.82rem}.current-subscription-card>strong{font-size:1.15rem;color:var(--gold-2)}.plan-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plan-card.current{border-color:var(--green)}
.client-queue-live,.client-queue-join,.client-history-block{border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015));padding:22px}.client-queue-live>header,.client-queue-join>header{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--line)}.client-queue-live>header>div,.client-queue-join>header>div{flex:1}.client-queue-live h3,.client-queue-join h3{margin:2px 0}.client-queue-live p,.client-queue-join p{margin:4px 0 0;color:var(--muted);font-size:.82rem}.queue-live-icon,.client-queue-join>header>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--gold) 13%,transparent);color:var(--gold)}.client-queue-main{display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;padding:22px 0}.client-queue-main>div strong,.client-queue-main>span:last-child strong{display:block;font-size:1.05rem}.client-queue-main small{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.client-queue-main p{margin:4px 0 0;color:var(--muted);font-size:.82rem}.client-queue-live>footer{display:flex;align-items:center;gap:26px;padding-top:17px;border-top:1px solid var(--line)}.client-queue-live>footer>span small,.client-queue-live>footer>span strong{display:block}.client-queue-live>footer>span small{color:var(--muted);font-size:.7rem}.client-queue-live>footer .gold-button{margin-left:auto}.client-queue-join form{display:grid;gap:17px;padding-top:20px}.client-queue-join label>span,.client-queue-join legend{display:block;margin-bottom:7px;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.client-queue-join select{width:100%;min-height:48px;padding:0 13px;border:1px solid var(--line);background:var(--surface-2);color:var(--text)}.client-queue-join fieldset{border:0;padding:0;margin:0}.client-queue-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.client-queue-services>label{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:13px;border:1px solid var(--line);background:rgba(0,0,0,.16);cursor:pointer}.client-queue-services label span{margin:0;text-transform:none;letter-spacing:0;color:var(--text)}.client-queue-services strong,.client-queue-services small{display:block}.client-queue-services small{color:var(--muted);margin-top:2px}.client-queue-services b{font-size:.8rem;color:var(--gold-2)}.client-queue-total{display:flex;gap:28px;padding:14px;border:1px solid color-mix(in srgb,var(--gold) 30%,transparent);background:color-mix(in srgb,var(--gold) 7%,transparent)}.client-queue-total span small,.client-queue-total span strong{display:block}.client-queue-total small{color:var(--muted)}.client-history-block{margin-top:14px}.client-history-block>header{margin-bottom:12px}.client-history-block>div{display:grid;gap:8px}.client-history-block article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;border-top:1px solid var(--line)}.client-history-block article p,.client-history-block article small{margin:2px 0 0;color:var(--muted);font-size:.76rem}
.client-shop-hero{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:30px;margin-bottom:14px;border:1px solid var(--line);background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--gold) 22%,transparent),transparent 38%),linear-gradient(135deg,#171512,#0c0c0d)}.client-shop-hero h2{max-width:650px;margin:4px 0 8px;font-family:var(--display-font,Georgia,serif);font-size:clamp(2rem,5vw,3.6rem);font-weight:500}.client-shop-hero p{margin:0;color:var(--muted)}.client-cart-button{display:grid;grid-template-columns:auto auto auto;gap:8px;align-items:center;min-height:48px;padding:0 15px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);text-decoration:none}.client-cart-button b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#080808}.subscriber-strip{display:flex;gap:10px;align-items:center;padding:12px 15px;margin-bottom:14px;border:1px solid color-mix(in srgb,var(--gold) 28%,transparent);background:color-mix(in srgb,var(--gold) 8%,transparent);color:var(--gold-2);font-size:.82rem}.client-shop-filters{display:grid;grid-template-columns:1fr 190px 170px 46px;gap:8px;margin-bottom:16px}.client-shop-filters label{display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid var(--line);background:var(--surface)}.client-shop-filters input,.client-shop-filters select{width:100%;min-height:46px;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:0 12px}.client-shop-filters label input{border:0;padding:0}.client-shop-filters button{border:0;background:var(--gold);color:#080808}.client-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-product-grid>article{overflow:hidden;border:1px solid var(--line);background:var(--surface)}.client-product-image{position:relative;display:grid;place-items:center;aspect-ratio:1.2;background:#0d0d0e}.client-product-image img{width:100%;height:100%;object-fit:cover}.client-product-image>svg{width:44px;color:var(--muted)}.client-product-image span{position:absolute;top:10px;left:10px;padding:6px 9px;background:var(--gold);color:#080808;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.client-product-grid>article>div:last-child{padding:16px}.client-product-grid h3{margin:4px 0 7px}.client-product-grid p{min-height:38px;margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}.client-product-price{display:flex;gap:9px;align-items:baseline;margin:13px 0}.client-product-price del{color:var(--muted);font-size:.75rem}.client-product-price strong{color:var(--gold-2);font-size:1.08rem}.client-product-grid button{width:100%;min-height:42px;border:1px solid color-mix(in srgb,var(--gold) 36%,transparent);background:color-mix(in srgb,var(--gold) 10%,transparent);color:var(--gold-2);font:inherit;font-weight:700}.client-product-grid button:disabled{opacity:.4}
.client-cart-layout{display:grid;grid-template-columns:1fr 330px;gap:18px;align-items:start}.client-cart-list{display:grid;gap:9px}.client-cart-list article{display:grid;grid-template-columns:74px 1fr auto auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);background:var(--surface)}.client-cart-list article>span{width:74px;height:74px;display:grid;place-items:center;overflow:hidden;background:#0d0d0e}.client-cart-list img{width:100%;height:100%;object-fit:cover}.client-cart-list h3{margin:0 0 5px}.client-cart-list small{color:var(--muted)}.client-cart-list article>div>div{display:inline-flex;align-items:center;gap:10px;margin-top:10px}.client-cart-list article>div>div button{width:28px;height:28px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text)}.client-cart-remove{width:34px;height:34px;border:0;background:transparent;color:var(--red)}.client-cart-summary{position:sticky;top:90px;padding:22px;border:1px solid var(--line);background:linear-gradient(145deg,#191817,#111112)}.client-cart-summary h3{margin:4px 0 15px}.client-cart-summary p,.client-cart-summary>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;margin:0;border-bottom:1px solid var(--line)}.client-cart-summary>div{margin:3px 0 16px;font-size:1.05rem;border-bottom:0}.client-cart-summary>.gold-button{width:100%}.client-cart-summary>small{display:flex;gap:7px;margin-top:11px;color:var(--muted);font-size:.7rem}.success-text{color:var(--green)}
.client-inline-tabs{display:inline-flex;gap:4px;padding:4px;margin-bottom:14px;border:1px solid var(--line);background:var(--surface)}.client-inline-tabs a{padding:10px 15px;color:var(--muted);text-decoration:none;font-size:.8rem}.client-inline-tabs a.active{background:var(--gold);color:#080808;font-weight:750}.client-order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-order-list>article{padding:18px;border:1px solid var(--line);background:var(--surface)}.client-order-list header{display:flex;justify-content:space-between;gap:14px}.client-order-list header small,.client-order-list header strong{display:block}.client-order-list header small{color:var(--muted);margin-bottom:3px}.client-order-list>article>p{min-height:36px;color:var(--muted);font-size:.8rem;line-height:1.5}.client-order-list>article>div{display:flex;gap:30px;padding:13px 0;border-top:1px solid var(--line)}.client-order-list>article>div span small,.client-order-list>article>div span strong{display:block}.client-order-list>article>div small{color:var(--muted);font-size:.7rem}.client-order-list footer{display:flex;gap:8px;margin-top:10px}.danger-text{color:var(--red)!important}.client-refund-list,.client-notification-list{display:grid;gap:9px}.client-refund-list article{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);background:var(--surface)}.client-refund-list article>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(226,189,89,.09);color:var(--gold)}.client-refund-list h3{margin:3px 0}.client-refund-list p{margin:0;color:var(--muted);font-size:.78rem}.client-refund-list article>div:last-child{text-align:right}.client-refund-list article>div:last-child strong,.client-refund-list article>div:last-child em,.client-refund-list article>div:last-child small{display:block}.client-refund-list em{margin-top:4px;color:var(--gold);font-style:normal;font-size:.72rem}.client-refund-list .pago em{color:var(--green)}.client-notification-list button{display:grid;grid-template-columns:46px 1fr auto;gap:13px;align-items:center;width:100%;padding:15px;border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;font:inherit}.client-notification-list button.unread{border-color:color-mix(in srgb,var(--gold) 35%,transparent);background:color-mix(in srgb,var(--gold) 7%,var(--surface))}.client-notification-list button>span{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.04);color:var(--gold)}.client-notification-list p{margin:4px 0;color:var(--muted);font-size:.8rem}.client-notification-list small{color:var(--muted);font-size:.7rem}.client-empty-large{min-height:280px}.compact-empty{padding:28px 12px!important}
@media(max-width:900px){.profile-client-links,.client-feed-services>div{grid-template-columns:repeat(2,minmax(0,1fr))}.client-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-cart-layout{grid-template-columns:1fr}.client-cart-summary{position:static}.client-shop-filters{grid-template-columns:1fr 1fr}.client-shop-filters label{grid-column:1/-1}.client-shop-filters button{min-height:46px}}
@media(max-width:620px){.client-portal-heading{align-items:flex-start}.client-portal-grid,.client-order-list,.client-product-grid{grid-template-columns:1fr}.client-portal-grid>a{min-height:auto;padding:16px}.profile-client-links{grid-template-columns:1fr 1fr}.client-feed-services{padding:16px}.client-feed-services>div{grid-template-columns:1fr 1fr}.client-feed-services>div>a{padding:12px}.appointment-list>article{grid-template-columns:50px 1fr}.appointment-list .date-tile{width:50px}.client-appointment-actions{grid-column:1/-1}.current-subscription-card{grid-template-columns:48px 1fr}.current-subscription-card>span{width:48px;height:48px}.current-subscription-card>strong{grid-column:2}.plan-card-actions{grid-template-columns:1fr}.client-queue-live,.client-queue-join,.client-history-block{padding:16px}.client-queue-live>header{align-items:flex-start;flex-wrap:wrap}.client-queue-live>header .payment-pill{margin-left:62px}.client-queue-main{grid-template-columns:44px 1fr}.client-queue-main>span:last-child{grid-column:2}.client-queue-live>footer{display:grid;grid-template-columns:1fr 1fr;gap:12px}.client-queue-live>footer .gold-button{grid-column:1/-1;margin-left:0}.client-queue-services{grid-template-columns:1fr}.client-shop-hero{align-items:flex-start;flex-direction:column;padding:22px}.client-shop-hero h2{font-size:2.1rem}.client-shop-filters{grid-template-columns:1fr}.client-shop-filters label{grid-column:auto}.client-cart-list article{grid-template-columns:62px 1fr auto}.client-cart-list article>span{width:62px;height:62px}.client-cart-list article>strong{grid-column:2}.client-cart-remove{grid-column:3;grid-row:1}.client-refund-list article{grid-template-columns:44px 1fr}.client-refund-list article>div:last-child{grid-column:2;text-align:left}.client-notification-list button{grid-template-columns:40px 1fr auto;padding:13px}.client-notification-list button>span{width:40px;height:40px}}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--bg); }
body { min-height: 100vh; margin: 0; color: var(--text); background: var(--bg); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.lucide { width: 1em; height: 1em; stroke-width: 1.8; }
.side-nav .lucide, .bottom-nav .lucide { width: 19px; height: 19px; }
.muted { color: var(--muted); }

html { scrollbar-color: #3f3420 #0b0b0c; scrollbar-width: thin; }
::-webkit-scrollbar { width: 9px; height: 9px; }
::-webkit-scrollbar-track { background: #0b0b0c; }
::-webkit-scrollbar-thumb { border: 2px solid #0b0b0c; border-radius: 999px; background: #4c3c1c; }

.app-shell { min-height: 100vh; }
.side-nav { position: fixed; inset: 0 auto 0 0; z-index: 40; width: var(--sidebar); display: flex; flex-direction: column; padding: 24px 18px; border-right: 1px solid var(--line); background: rgba(11,11,12,.94); backdrop-filter: blur(20px); }
.brand { display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 0 8px; }
.brand img { width: 44px; height: 44px; object-fit: contain; }
.brand-monogram { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(145deg, var(--gold-2), #8d6510); color: #070707; font-weight: 900; }
.brand > span:last-child { min-width: 0; }
.brand strong, .brand small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.brand strong { font-size: 14px; letter-spacing: -.02em; }
.brand small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.environment-badge { display: flex; align-items: center; gap: 8px; margin: 22px 8px 16px; color: #b9b9be; font-size: 11px; }
.environment-badge span { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 5px rgba(50,183,104,.1); }
.side-nav nav { display: flex; flex-direction: column; gap: 5px; }
.side-nav nav a { min-height: 46px; display: flex; align-items: center; gap: 13px; padding: 0 13px; border-radius: 13px; color: #aaaab0; font-size: 13px; font-weight: 600; transition: .2s ease; }
.side-nav nav a .lucide { width: 19px; height: 19px; }
.side-nav nav a:hover { color: #fff; background: rgba(255,255,255,.045); }
.side-nav nav a.active { color: var(--gold-2); background: var(--gold-soft); box-shadow: inset 0 0 0 1px rgba(199,154,40,.2); }
.side-footer { margin-top: auto; padding-top: 18px; border-top: 1px solid var(--line); }
.profile-mini { display: flex; align-items: center; gap: 10px; padding: 0 8px 15px; }
.profile-mini > span { width: 34px; height: 34px; overflow: hidden; display: grid; place-items: center; border-radius: 50%; background: var(--surface-3); color: var(--gold-2); font-size: 11px; font-weight: 800; }
.profile-mini > span img { width: 100%; height: 100%; object-fit: cover; }
.profile-mini strong, .profile-mini small { display: block; }
.profile-mini strong { font-size: 12px; }
.profile-mini small { margin-top: 2px; color: var(--muted); font-size: 10px; }
.logout { display: flex; align-items: center; gap: 9px; padding: 9px; color: var(--muted); font-size: 12px; }
.logout:hover { color: var(--red); }

.app-main { min-height: 100vh; margin-left: var(--sidebar); }
.topbar { height: 88px; position: sticky; top: 0; z-index: 30; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 clamp(24px, 4vw, 54px); border-bottom: 1px solid var(--line); background: rgba(8,8,8,.82); backdrop-filter: blur(18px); }
.topbar h1 { margin: 0; font-size: 21px; letter-spacing: -.03em; }
.mobile-kicker { display: none; color: var(--gold-2); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; }
.top-actions { display: flex; align-items: center; gap: 12px; }
.real-data { display: flex; align-items: center; gap: 7px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: rgba(255,255,255,.025); font-size: 11px; }
.real-data .lucide { color: var(--green); }
.avatar { width: 38px; height: 38px; overflow: hidden; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(199,154,40,.35); background: var(--gold-soft); color: var(--gold-2); font-size: 11px; font-weight: 800; }
.avatar img { width: 100%; height: 100%; object-fit: cover; }
.content { width: min(100%, 1440px); margin: 0 auto; padding: 34px clamp(24px, 4vw, 54px) 64px; }
.bottom-nav { display: none; }

.welcome-hero { min-height: 310px; position: relative; overflow: hidden; display: flex; align-items: flex-end; padding: clamp(28px, 5vw, 54px); border: 1px solid var(--line); border-radius: var(--radius-xl); background: #171717 var(--hero-image) center 38%/cover no-repeat; box-shadow: var(--shadow); }
.welcome-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.9) 0%, rgba(0,0,0,.58) 46%, rgba(0,0,0,.2)), linear-gradient(0deg, rgba(0,0,0,.64), transparent 60%); }
.welcome-content { position: relative; max-width: 630px; }
.eyebrow { display: block; margin-bottom: 10px; color: var(--gold-2); font-size: 11px; font-weight: 750; text-transform: uppercase; letter-spacing: .13em; }
.welcome-content h2, .section-heading h2, .booking-heading h2 { margin: 0; font-size: clamp(30px, 4vw, 50px); line-height: 1.02; letter-spacing: -.05em; }
.welcome-content p { max-width: 520px; margin: 14px 0 23px; color: #c1c1c5; font-size: 16px; line-height: 1.55; }
.gold-button, .outline-button, .ghost-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 22px; border: 0; border-radius: 14px; font-weight: 760; cursor: pointer; transition: .18s ease; }
.gold-button { color: #090909; background: linear-gradient(135deg, #e2bd59, #b98917); box-shadow: 0 12px 30px rgba(199,154,40,.22); }
.gold-button:hover { transform: translateY(-1px); filter: brightness(1.06); }
.gold-button:disabled { opacity: .4; cursor: not-allowed; transform: none; filter: none; }
.gold-button.compact { min-height: 45px; padding-inline: 18px; font-size: 13px; }
.outline-button { min-height: 44px; border: 1px solid rgba(199,154,40,.38); color: var(--gold-2); background: rgba(199,154,40,.07); font-size: 12px; }
.outline-button:hover { background: rgba(199,154,40,.14); }
.ghost-button { min-height: 44px; border: 1px solid var(--line); color: var(--muted); background: transparent; font-size: 12px; }

.metric-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; margin-top: 20px; }
.metric-grid article { min-height: 132px; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(145deg, #19191b, #111112); }
.metric-grid article::after { content: ""; position: absolute; width: 90px; height: 90px; top: -38px; right: -24px; border-radius: 50%; background: var(--gold-soft); filter: blur(2px); }
.metric-grid .lucide { position: absolute; width: 20px; height: 20px; top: 20px; right: 20px; color: var(--gold-2); }
.metric-grid span { color: var(--muted); font-size: 11px; }
.metric-grid strong { margin-top: 7px; font-size: clamp(22px, 3vw, 31px); letter-spacing: -.04em; }
.dashboard-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 20px; margin-top: 20px; }
.panel-card, .list-card, .data-table-card, .chart-card, .queue-list { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); }
.panel-card { padding: 24px; }
.panel-title { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 17px; }
.panel-title small, .chart-heading small { display: block; margin-bottom: 5px; color: var(--gold-2); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; }
.panel-title h3, .chart-heading h3 { margin: 0; font-size: 18px; letter-spacing: -.025em; }
.panel-title > a { color: var(--gold-2); font-size: 11px; font-weight: 700; }
.mini-agenda article { display: grid; grid-template-columns: 52px 34px minmax(0,1fr) auto; align-items: center; gap: 12px; min-height: 64px; border-top: 1px solid var(--line); }
.mini-agenda article:first-child { border-top: 0; }
.mini-time { color: var(--gold-2); font-size: 16px; font-weight: 800; }
.mini-avatar { width: 34px; height: 34px; overflow: hidden; display: grid; place-items: center; border-radius: 50%; color: var(--gold-2); background: var(--gold-soft); }
.mini-avatar img { width: 100%; height: 100%; object-fit: cover; }
.mini-avatar .lucide { width: 15px; height: 15px; }
.mini-agenda strong, .mini-agenda small { display: block; }
.mini-agenda strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.mini-agenda small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.status { display: inline-flex; align-items: center; justify-content: center; min-height: 23px; padding: 0 9px; border-radius: 999px; color: #d5a83a; background: rgba(199,154,40,.12); font-size: 9px; font-weight: 750; white-space: nowrap; }
.status.confirmado, .status.concluido { color: #6bd994; background: rgba(50,183,104,.12); }
.status.cancelado, .status.nao_compareceu { color: #ff8585; background: rgba(239,90,90,.12); }
.status.em_atendimento { color: #84aaff; background: rgba(91,141,239,.13); }
.quick-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.quick-grid a { min-height: 74px; display: grid; grid-template-columns: 32px minmax(0,1fr) 16px; align-items: center; gap: 9px; padding: 12px; border: 1px solid var(--line); border-radius: 14px; background: #19191a; font-size: 11px; font-weight: 700; }
.quick-grid a > .lucide:first-child { width: 32px; height: 32px; padding: 8px; border-radius: 10px; color: var(--gold-2); background: var(--gold-soft); }
.quick-grid a > .lucide:last-child { color: #5c5c61; }

.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 4px 0 28px; }
.section-heading h2 { font-size: clamp(28px, 3.5vw, 43px); }
.section-heading p { margin: 11px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.date-chip { display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 14px; border: 1px solid var(--line); border-radius: 12px; color: #bcbcc1; background: var(--surface); font-size: 11px; }
.search-box { min-width: min(100%, 280px); display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 0 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.search-box .lucide { color: var(--muted); }
.search-box input { width: 100%; border: 0; outline: 0; color: var(--text); background: transparent; }
.tabs { display: inline-flex; margin: 0 0 16px; padding: 4px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.tabs button { min-height: 34px; padding: 0 15px; border: 0; border-radius: 9px; color: var(--muted); background: transparent; font-size: 11px; font-weight: 700; cursor: pointer; }
.tabs button.active { color: #090909; background: var(--gold-2); }
.appointment-list article { display: grid; grid-template-columns: 70px minmax(0,1fr) auto; align-items: center; gap: 18px; min-height: 92px; padding: 14px 22px; border-top: 1px solid var(--line); }
.appointment-list.with-avatars article { grid-template-columns: 70px 44px minmax(0,1fr) auto; }
.appointment-list article:first-child { border-top: 0; }
.appointment-list article[hidden] { display: none; }
.date-tile, .time-tile { min-width: 62px; min-height: 61px; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid rgba(199,154,40,.24); border-radius: 13px; background: var(--gold-soft); }
.date-tile small, .time-tile small { color: var(--gold-2); font-size: 9px; font-weight: 700; }
.date-tile strong { margin-top: 3px; font-size: 22px; }
.time-tile strong { color: var(--gold-2); font-size: 16px; }
.list-title { display: flex; align-items: center; gap: 10px; }
.list-title > strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.list-main p { margin: 7px 0 0; color: var(--muted); font-size: 11px; }
.list-main p .lucide { margin-right: 5px; vertical-align: -2px; }
.list-person-row { display: flex; align-items: center; gap: 6px; }
.inline-avatar, .appointment-avatar { overflow: hidden; flex: 0 0 auto; display: inline-grid; place-items: center; border: 1px solid rgba(199,154,40,.28); border-radius: 50%; color: var(--gold-2); background: var(--surface-3); font-size: 10px; font-weight: 800; }
.inline-avatar { width: 25px; height: 25px; }
.inline-avatar.large { width: 36px; height: 36px; }
.appointment-avatar { width: 44px; height: 44px; }
.inline-avatar img, .appointment-avatar img { width: 100%; height: 100%; object-fit: cover; }
.list-value { font-size: 12px; }
.empty-state { grid-column: 1/-1; min-height: 250px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 38px; text-align: center; }
.empty-state .lucide { width: 54px; height: 54px; margin-bottom: 14px; padding: 15px; border-radius: 17px; color: var(--gold-2); background: var(--gold-soft); }
.empty-state h3 { margin: 0; font-size: 16px; }
.empty-state p { margin: 7px 0 0; color: var(--muted); font-size: 12px; }
.empty-state.compact { min-height: 130px; }

.plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.plan-card { min-height: 410px; position: relative; display: flex; flex-direction: column; padding: 27px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(160deg, #1c1c1e, #111112); }
.plan-card.featured { border-color: rgba(199,154,40,.55); box-shadow: inset 0 0 0 1px rgba(199,154,40,.1), 0 20px 60px rgba(0,0,0,.24); }
.plan-badge { position: absolute; top: 18px; right: 18px; padding: 6px 9px; border-radius: 999px; color: #090909; background: var(--gold-2); font-size: 9px; font-weight: 800; }
.plan-card > small { color: var(--muted); font-size: 10px; }
.plan-card h3 { max-width: 80%; margin: 8px 0 17px; font-size: 19px; }
.plan-price { color: var(--gold-2); font-size: 27px; font-weight: 850; }
.plan-price span { color: var(--muted); font-size: 10px; font-weight: 500; }
.plan-card > p { min-height: 54px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.plan-card ul { list-style: none; margin: 11px 0 26px; padding: 0; }
.plan-card li { display: flex; align-items: center; gap: 8px; padding: 8px 0; color: #c5c5c9; font-size: 11px; }
.plan-card li .lucide { color: var(--gold-2); }
.plan-card .outline-button { width: 100%; margin-top: auto; }
.plan-card button.outline-button { cursor: pointer; }

.plan-modal { position: fixed; inset: 0; z-index: 120; display: none; align-items: center; justify-content: center; padding: 20px; }
.plan-modal.open { display: flex; }
.plan-modal-backdrop { position: absolute; inset: 0; border: 0; background: rgba(0,0,0,.8); backdrop-filter: blur(8px); }
.plan-modal > section { width: min(100%, 520px); position: relative; padding: 34px; border: 1px solid rgba(199,154,40,.32); border-radius: 24px; background: linear-gradient(155deg,#1c1c1e,#101011); box-shadow: var(--shadow); animation: sheet-in .22s ease-out; }
.plan-modal-close { position: absolute; top: 18px; right: 18px; }
.plan-modal h2 { margin: 12px 0 9px; font-size: 31px; letter-spacing: -.045em; }
.plan-modal-price { color: var(--gold-2); font-size: 27px; font-weight: 850; }
.plan-modal > section > p { margin: 15px 0 21px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.plan-benefits { display: grid; gap: 10px; margin: 0 0 26px; padding: 18px 0; border-block: 1px solid var(--line); }
.plan-benefits span { display: flex; align-items: center; gap: 9px; color: #d0d0d3; font-size: 11px; }
.plan-benefits .lucide { color: var(--gold-2); }
.plan-modal .gold-button { width: 100%; }

.data-table-card { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 720px; }
th { padding: 15px 20px; color: var(--muted); background: #111112; font-size: 9px; text-align: left; text-transform: uppercase; letter-spacing: .1em; }
td { padding: 17px 20px; border-top: 1px solid var(--line); color: #c9c9cd; font-size: 11px; }
td small { color: var(--muted); }
.person { display: flex; align-items: center; gap: 11px; }
.person > span { width: 34px; height: 34px; overflow: hidden; display: grid; place-items: center; border-radius: 50%; color: var(--gold-2); background: var(--gold-soft); font-size: 10px; font-weight: 800; }
.person > span img { width: 100%; height: 100%; object-fit: cover; }
.person strong { color: var(--text); font-size: 12px; }
.team-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.team-card { position: relative; padding: 27px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(150deg, #1b1b1d, #111112); text-align: center; }
.team-avatar { width: 78px; height: 78px; overflow: hidden; display: grid; place-items: center; margin: 0 auto 16px; border: 2px solid rgba(199,154,40,.38); border-radius: 50%; color: var(--gold-2); background: var(--surface-3); font-weight: 850; }
.team-avatar img { width: 100%; height: 100%; object-fit: cover; }
.status-dot { position: absolute; width: 11px; height: 11px; top: 83px; left: calc(50% + 25px); border: 2px solid var(--surface); border-radius: 50%; background: #65656a; }
.status-dot.online { background: var(--green); }
.team-card h3 { margin: 0; font-size: 15px; }
.team-card > p { margin: 7px 0 22px; color: var(--muted); font-size: 10px; }
.team-card > div:last-child { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); padding-top: 18px; }
.team-card > div:last-child span + span { border-left: 1px solid var(--line); }
.team-card small, .team-card strong { display: block; }
.team-card small { color: var(--muted); font-size: 9px; }
.team-card strong { margin-top: 5px; font-size: 13px; }
.service-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.service-card { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 14px; min-height: 112px; padding: 18px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); }
.service-icon { width: 48px; height: 48px; overflow: hidden; display: grid; place-items: center; border-radius: 14px; color: var(--gold-2); background: var(--gold-soft); font-size: 20px; }
.service-icon img { width: 100%; height: 100%; object-fit: cover; }
.service-card small { color: var(--gold-2); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.service-card h3 { margin: 4px 0 5px; font-size: 13px; }
.service-card p { max-width: 380px; overflow: hidden; margin: 0; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.service-meta { text-align: right; }
.service-meta strong, .service-meta span { display: block; }
.service-meta strong { color: var(--gold-2); font-size: 12px; }
.service-meta span { margin-top: 5px; color: var(--muted); font-size: 9px; }
.queue-list { padding: 8px 22px; }
.queue-list article { display: grid; grid-template-columns: 46px minmax(0,1fr) auto; align-items: center; gap: 15px; min-height: 82px; border-top: 1px solid var(--line); }
.queue-list article:first-child { border-top: 0; }
.queue-list article.active { margin: 8px -10px; padding: 0 10px; border: 1px solid rgba(199,154,40,.3); border-radius: 14px; background: var(--gold-soft); }
.queue-number { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: var(--gold-2); background: var(--surface-3); font-weight: 800; }
.queue-list small { color: var(--gold-2); font-size: 9px; text-transform: uppercase; }
.queue-list h3 { margin: 4px 0 0; font-size: 13px; }
.queue-list article > strong { font-size: 12px; }
.queue-person { display: flex; align-items: center; gap: 10px; }

.chart-card { padding: 25px; margin-top: 20px; }
.chart-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.chart-heading > span { color: var(--muted); font-size: 9px; }
.bar-chart { min-height: 230px; display: flex; align-items: flex-end; gap: 10px; padding-top: 30px; }
.chart-column { flex: 1; min-width: 18px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.chart-bar { width: min(100%, 32px); min-height: 5px; border-radius: 8px 8px 3px 3px; background: linear-gradient(180deg, var(--gold-2), #936b10); box-shadow: 0 8px 22px rgba(199,154,40,.13); }
.chart-column small { color: var(--muted); font-size: 8px; }

.profile-card { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-xl); background: var(--surface); }
.profile-cover { height: 250px; background: #1b1b1b var(--hero-image) center/cover no-repeat; position: relative; }
.profile-cover::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, var(--surface), transparent 70%); }
.profile-content { display: flex; align-items: flex-end; gap: 22px; padding: 0 34px 24px; margin-top: -50px; position: relative; }
.profile-avatar-large { width: 100px; height: 100px; overflow: hidden; flex: 0 0 auto; display: grid; place-items: center; border: 5px solid var(--surface); border-radius: 50%; color: var(--gold-2); background: var(--surface-3); font-size: 24px; font-weight: 850; }
.profile-avatar-large img { width: 100%; height: 100%; object-fit: cover; }
.profile-avatar-trigger { position: relative; flex: 0 0 auto; display: block; cursor: pointer; }
.profile-avatar-camera { width: 31px; height: 31px; position: absolute; right: 1px; bottom: 1px; display: grid; place-items: center; border: 3px solid var(--surface); border-radius: 50%; color: #0b0b0c; background: var(--gold-2); box-shadow: 0 7px 18px rgba(0,0,0,.32); transition: transform .18s ease,background .18s ease; }
.profile-avatar-camera .lucide { width: 14px; height: 14px; }
.profile-avatar-trigger:hover .profile-avatar-camera { transform: scale(1.08); background: #e5bf5e; }
.profile-avatar-trigger:focus-within .profile-avatar-large { box-shadow: 0 0 0 2px var(--gold-2); }
.profile-content h2 { margin: 0; font-size: 29px; }
.profile-content p { margin: 7px 0 0; color: var(--muted); font-size: 12px; }
.profile-actions { display: flex; gap: 10px; padding: 0 34px 34px 155px; }
.profile-photo-editor { display: grid; grid-template-columns: 72px minmax(0,1fr) auto; align-items: center; gap: 17px; margin-top: 18px; padding: 18px 20px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(135deg,rgba(205,163,61,.07),#111213 42%); box-shadow: var(--shadow-soft); }
.profile-photo-preview { width: 72px; height: 72px; overflow: hidden; display: grid; place-items: center; border: 1px solid rgba(205,163,61,.3); border-radius: 50%; color: var(--gold-2); background: #1b1a17; font-size: 20px; font-weight: 850; }
.profile-photo-preview img { width: 100%; height: 100%; object-fit: cover; }
.profile-photo-copy h3 { margin: 5px 0 4px; font-size: 16px; }
.profile-photo-copy p { max-width: 620px; margin: 0; color: #929297; font-size: 10px; line-height: 1.5; }
.profile-photo-copy > small { display: block; margin-top: 6px; color: #68696e; font-size: 8px; }
.profile-photo-actions { display: flex; align-items: center; gap: 8px; }
.profile-photo-actions label { cursor: pointer; }
.profile-photo-actions button:disabled { opacity: .42; cursor: not-allowed; filter: grayscale(.35); }

.feed-section { margin-top: 34px; }
.barber-strip { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.barber-feed-card { position: relative; min-height: 230px; display: flex; flex-direction: column; align-items: center; padding: 24px 18px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(160deg,#1b1b1d,#111112); text-align: center; transition: .2s ease; }
.barber-feed-card:hover { transform: translateY(-3px); border-color: rgba(199,154,40,.4); }
.barber-feed-avatar { width: 76px; height: 76px; overflow: hidden; display: grid; place-items: center; margin-bottom: 15px; border: 2px solid rgba(199,154,40,.34); border-radius: 50%; color: var(--gold-2); background: var(--surface-3); font-weight: 850; }
.barber-feed-avatar img { width: 100%; height: 100%; object-fit: cover; }
.barber-feed-card strong { font-size: 13px; }
.barber-feed-card > small { min-height: 30px; margin-top: 6px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.rating { display: inline-flex; align-items: center; gap: 5px; margin-top: auto; color: var(--gold-2); font-size: 10px; font-weight: 750; }
.rating .lucide { fill: currentColor; }
.service-showcase { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.showcase-card { min-height: 255px; position: relative; overflow: hidden; display: flex; align-items: flex-end; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #181819; box-shadow: 0 16px 40px rgba(0,0,0,.18); transition: .22s ease; }
.showcase-card:hover { transform: translateY(-3px); border-color: rgba(199,154,40,.42); }
.showcase-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.showcase-overlay { position: absolute; inset: 0; background: linear-gradient(0deg,rgba(0,0,0,.94),rgba(0,0,0,.12) 70%); }
.showcase-copy { position: relative; display: flex; flex-direction: column; }
.showcase-copy small { color: var(--gold-2); font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .12em; }
.showcase-copy strong { margin-top: 6px; font-size: 15px; }
.showcase-copy em { margin-top: 7px; color: #c2c2c6; font-size: 10px; font-style: normal; }
.membership-banner { min-height: 190px; display: flex; align-items: center; justify-content: space-between; gap: 26px; margin-top: 20px; padding: 34px; border: 1px solid rgba(199,154,40,.26); border-radius: var(--radius-xl); background: radial-gradient(circle at 85% 10%,rgba(199,154,40,.22),transparent 34%),linear-gradient(135deg,#201b12,#111112 55%); }
.membership-banner h3 { max-width: 620px; margin: 0; font-size: clamp(25px,3.5vw,40px); letter-spacing: -.045em; }
.membership-banner p { margin: 10px 0 0; color: var(--muted); font-size: 12px; }

.booking-layout { overflow: hidden; width: min(100%, 1040px); margin: 0 auto; display: grid; grid-template-columns: .86fr 1.14fr; border: 1px solid var(--line); border-radius: var(--radius-xl); background: #0b0b0c; box-shadow: var(--shadow); }
.booking-hero { min-height: 620px; position: relative; background: #1a1a1a var(--hero-image) center/cover no-repeat; }
.booking-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.88), rgba(0,0,0,.15) 65%), linear-gradient(90deg, transparent 60%, #0b0b0c); }
.hero-brand { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 44px; }
.hero-brand img { width: min(80%, 300px); max-height: 155px; object-fit: contain; filter: drop-shadow(0 10px 28px rgba(0,0,0,.55)); }
.hero-brand strong { font-family: Georgia, serif; color: var(--gold-2); font-size: 34px; letter-spacing: .15em; text-transform: uppercase; text-align: center; }
.booking-body { display: flex; flex-direction: column; justify-content: center; padding: clamp(30px, 5vw, 58px); }
.booking-heading > span { color: var(--gold-2); font-size: 10px; font-weight: 750; text-transform: uppercase; letter-spacing: .14em; }
.booking-heading h2 { margin-top: 10px; font-size: clamp(36px, 5vw, 55px); }
.booking-heading h2 em { color: var(--gold-2); font-style: normal; }
.booking-heading p { max-width: 460px; margin: 14px 0 26px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.booking-selectors { display: flex; flex-direction: column; gap: 10px; }
.booking-selectors > button { min-height: 70px; display: grid; grid-template-columns: 36px minmax(0,1fr) 18px; align-items: center; gap: 10px; padding: 0 17px; border: 1px solid var(--line); border-radius: 15px; color: var(--text); background: var(--surface-2); text-align: left; cursor: pointer; }
.booking-selectors > button:disabled { opacity: .35; cursor: not-allowed; }
.booking-selectors > button > .lucide:first-child { width: 20px; height: 20px; color: var(--gold-2); }
.booking-selectors > button > .lucide:last-child { color: var(--gold-2); }
.booking-selectors small, .booking-selectors strong { display: block; }
.booking-selectors small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.booking-selectors strong { margin-top: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.booking-total { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; padding: 14px 3px 0; border-top: 1px solid var(--line); }
.booking-total span { color: var(--muted); font-size: 10px; }
.booking-total strong { color: var(--gold-2); font-size: 17px; }
.booking-submit { width: 100%; margin-top: 18px; }
.real-operation-note { display: flex; align-items: flex-start; gap: 7px; margin: 13px 0 0; color: #727278; font-size: 9px; line-height: 1.45; }
.real-operation-note .lucide { flex: 0 0 auto; margin-top: 1px; color: var(--gold); }

.immersive-booking { padding: 0; background: #090909; }
.immersive-booking .app-main { margin-left: 0; }
.immersive-booking .booking-content { width: 100%; max-width: none; padding: 82px 0 0; }
.immersive-booking .booking-layout { width: 100%; min-height: calc(100vh - 82px); margin: 0; border: 0; border-radius: 0; box-shadow: none; grid-template-columns: minmax(360px,.95fr) minmax(520px,1.05fr); }
.immersive-booking .booking-hero { min-height: calc(100vh - 82px); }
.immersive-booking .booking-body { width: min(100%,680px); margin: 0 auto; padding: 52px clamp(38px,7vw,92px); }
.booking-topbar { position: fixed; inset: 0 0 auto; z-index: 75; height: 82px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 clamp(20px,4vw,54px); border-bottom: 1px solid var(--line); background: rgba(9,9,9,.88); backdrop-filter: blur(20px); }
.booking-back { width: fit-content; min-height: 46px; display: inline-flex; align-items: center; gap: 10px; color: #c2c2c6; font-size: 11px; font-weight: 650; }
.booking-back .lucide { width: 28px; height: 28px; stroke-width: 2.15; }
.booking-back:hover { color: var(--gold-2); }
.booking-progress { display: grid; grid-template-columns: repeat(3,34px); align-items: center; justify-content: center; gap: 6px; }
.booking-progress > span { height: 2px; border-radius: 99px; background: #333336; }
.booking-progress > span.active { background: var(--gold-2); }
.booking-progress small { grid-column: 1/-1; color: var(--muted); font-size: 8px; text-align: center; text-transform: uppercase; letter-spacing: .1em; }
.booking-live { justify-self: end; display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.booking-live > span { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(50,183,104,.1); }
.hero-signature { position: absolute; z-index: 2; inset: auto 34px 34px; }
.hero-signature span, .hero-signature strong { display: block; }
.hero-signature span { color: var(--gold-2); font-size: 9px; text-transform: uppercase; letter-spacing: .14em; }
.hero-signature strong { margin-top: 7px; font-family: Georgia,serif; font-size: 20px; font-weight: 500; }

.picker-sheet { position: fixed; inset: 0; z-index: 100; display: none; align-items: flex-end; justify-content: center; }
.picker-sheet.open { display: flex; }
.sheet-backdrop { position: absolute; inset: 0; border: 0; background: rgba(0,0,0,.76); backdrop-filter: blur(6px); }
.picker-sheet > section { width: min(100%, 760px); max-height: min(88vh, 760px); position: relative; display: flex; flex-direction: column; padding: 26px; border: 1px solid var(--line-strong); border-radius: 25px 25px 0 0; background: #111112; box-shadow: 0 -25px 80px rgba(0,0,0,.55); animation: sheet-in .24s ease-out; }
@keyframes sheet-in { from { transform: translateY(24px); opacity: .4; } }
.picker-sheet header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 19px; border-bottom: 1px solid var(--line); }
.picker-sheet header small { color: var(--gold-2); font-size: 9px; font-weight: 750; text-transform: uppercase; letter-spacing: .12em; }
.picker-sheet header h2 { margin: 6px 0 0; font-size: 22px; }
.sheet-close { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--muted); background: var(--surface-2); cursor: pointer; }
.sheet-content { min-height: 200px; overflow-y: auto; padding: 18px 1px; }
.sheet-continue { width: 100%; flex: 0 0 auto; }
.picker-list { display: grid; gap: 10px; }
.picker-option { width: 100%; min-height: 70px; display: grid; grid-template-columns: 48px minmax(0,1fr) 24px; align-items: center; gap: 13px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 14px; color: var(--text); background: var(--surface-2); text-align: left; cursor: pointer; }
.picker-option.selected { border-color: rgba(199,154,40,.75); background: var(--gold-soft); }
.picker-option .option-avatar { width: 48px; height: 48px; overflow: hidden; display: grid; place-items: center; border-radius: 13px; color: var(--gold-2); background: #2a2a2d; font-weight: 800; }
.picker-option .option-avatar img { width: 100%; height: 100%; object-fit: cover; }
.picker-option strong, .picker-option small { display: block; }
.picker-option strong { font-size: 12px; }
.picker-option small { margin-top: 5px; color: var(--muted); font-size: 10px; }
.picker-option > .lucide { color: #67676d; }
.picker-option.selected > .lucide { color: var(--gold-2); }
.picker-option .service-photo { border-radius: 13px; }
.picker-option .service-photo { position: relative; }
.picker-option .service-photo img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; }
.calendar-shell { padding: 2px 4px 4px; }
.calendar-nav { display: grid; grid-template-columns: 42px 1fr 42px; align-items: center; margin-bottom: 14px; }
.calendar-nav strong { color: var(--gold-2); font-size: 13px; text-align: center; text-transform: capitalize; }
.calendar-nav button { width: 42px; height: 42px; display: grid; place-items: center; border: 0; border-radius: 50%; color: var(--gold-2); background: transparent; cursor: pointer; }
.calendar-nav button:hover { background: var(--gold-soft); }
.calendar-nav button:disabled { opacity: .18; cursor: not-allowed; }
.calendar-nav .lucide { width: 21px; height: 21px; }
.calendar-weekdays, .calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }
.calendar-weekdays { margin-bottom: 5px; }
.calendar-weekdays span { padding: 5px 0; color: #d2d2d5; font-size: 10px; font-weight: 750; text-align: center; }
.calendar-grid { min-height: 230px; align-content: start; row-gap: 2px; }
.calendar-blank { min-height: 42px; }
.calendar-day { min-width: 0; min-height: 42px; position: relative; display: grid; place-items: center; padding: 0 0 8px; border: 0; color: #d8d8dc; background: transparent; font-size: 11px; font-weight: 700; cursor: pointer; }
.calendar-day > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; }
.calendar-day > i { width: 5px; height: 5px; position: absolute; bottom: 3px; border-radius: 50%; background: var(--green); }
.calendar-day.unavailable > i { background: var(--red); }
.calendar-day.selected > span { color: #080808; background: linear-gradient(135deg,var(--gold-2),#b98917); box-shadow: 0 8px 22px rgba(199,154,40,.24); }
.calendar-day.selected > i { opacity: 0; }
.calendar-day:disabled { color: #505055; cursor: not-allowed; }
.calendar-day:disabled > span { background: transparent; box-shadow: none; }
.calendar-loading, .calendar-error { grid-column: 1/-1; min-height: 220px; display: grid; place-items: center; color: var(--muted); font-size: 10px; text-align: center; }
.calendar-loading .lucide { width: 22px; height: 22px; color: var(--gold-2); animation: spin .8s linear infinite; }
.time-choice-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-top: 16px; }
.time-choice-heading h3 { margin: 0; font-size: 16px; }
.time-choice-heading small { max-width: 220px; color: var(--muted); font-size: 9px; text-align: right; text-transform: capitalize; }
.date-strip { display: grid; grid-template-columns: repeat(7, minmax(58px,1fr)); gap: 8px; overflow-x: auto; padding-bottom: 8px; }
.date-option { min-height: 75px; padding: 8px; border: 1px solid var(--line); border-radius: 13px; color: #bbb; background: var(--surface-2); cursor: pointer; }
.date-option span, .date-option strong { display: block; }
.date-option span { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.date-option strong { margin-top: 6px; font-size: 18px; }
.date-option.selected { border-color: var(--gold); color: #090909; background: var(--gold-2); }
.date-option.selected span { color: rgba(0,0,0,.6); }
.period-tabs { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 19px 0 12px; }
.period-tabs button { min-height: 38px; border: 1px solid var(--line); border-radius: 11px; color: #b8b8bd; background: var(--surface-2); cursor: pointer; }
.period-tabs button.active { border-color: var(--gold); color: var(--gold-2); background: var(--gold-soft); }
.slot-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.slot-grid button { min-height: 42px; border: 1px solid var(--line); border-radius: 11px; color: #d0d0d4; background: var(--surface-2); cursor: pointer; }
.slot-grid button.selected { border-color: var(--gold); color: #090909; background: var(--gold-2); }
.slot-grid button:disabled { opacity: .25; cursor: not-allowed; }
.loading-box { min-height: 210px; display: grid; place-items: center; color: var(--muted); font-size: 11px; }
.loading-box .lucide { margin-right: 7px; color: var(--gold-2); animation: spin .8s linear infinite; vertical-align: -3px; }
@keyframes spin { to { transform: rotate(360deg); } }
.confirm-summary { display: grid; gap: 10px; }
.confirm-summary article { display: flex; justify-content: space-between; gap: 20px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.confirm-summary span { color: var(--muted); font-size: 10px; }
.confirm-summary strong { font-size: 11px; text-align: right; }
.real-warning { margin-top: 16px; padding: 14px; border: 1px solid rgba(239,160,55,.25); border-radius: 13px; color: #e6bf83; background: rgba(239,160,55,.08); font-size: 10px; line-height: 1.5; }

.v2-login { min-height:100svh; overflow-x:hidden; overflow-y:auto; padding:0 !important; background:#080808; }
.auth-shell { min-height:100svh; display:grid; grid-template-columns:minmax(0,1fr) minmax(480px,38vw); }
.auth-showcase { min-height:100svh; position:sticky; top:0; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; padding:clamp(32px,5vw,72px); background:#171513 var(--auth-hero) center/cover no-repeat; }
.auth-showcase::after { content:""; position:absolute; width:45vw; height:45vw; right:-25vw; bottom:-26vw; border:1px solid rgba(226,189,89,.12); border-radius:50%; box-shadow:0 0 0 6vw rgba(226,189,89,.025),0 0 0 12vw rgba(226,189,89,.018); }
.auth-showcase-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,5,5,.25),rgba(5,5,5,.56)),linear-gradient(0deg,rgba(4,4,4,.95),rgba(4,4,4,.16) 72%),radial-gradient(circle at 20% 20%,rgba(199,154,40,.08),transparent 38%); }
.auth-brand,.auth-story,.auth-showcase-footer { position:relative; z-index:2; }
.auth-brand { width:fit-content; display:flex; align-items:center; gap:13px; }
.auth-brand img { width:auto; max-width:190px; height:58px; object-fit:contain; object-position:left center; }
.auth-brand:has(img) .auth-brand-copy { display:none; }
.auth-login .auth-showcase,.auth-cadastro .auth-showcase { align-items:center; justify-content:center; }
.auth-login .auth-brand,.auth-cadastro .auth-brand { margin:auto; }
.auth-login .auth-brand img,.auth-cadastro .auth-brand img { max-width:280px; height:112px; object-position:center; }
.auth-login .auth-showcase-footer,.auth-cadastro .auth-showcase-footer { position:absolute; right:clamp(32px,5vw,72px); bottom:clamp(32px,5vw,72px); left:clamp(32px,5vw,72px); justify-content:center; }
.auth-monogram { width:46px; height:46px; display:grid; place-items:center; border:1px solid rgba(226,189,89,.5); color:#090909; background:linear-gradient(145deg,#efd170,#aa7712); font-family:Georgia,serif; font-size:22px; font-weight:800; }
.auth-brand-copy strong,.auth-brand-copy small { display:block; }
.auth-brand-copy strong { max-width:260px; overflow:hidden; color:#f8f5ec; font-family:Georgia,serif; font-size:17px; font-weight:500; letter-spacing:.05em; text-overflow:ellipsis; white-space:nowrap; }
.auth-brand-copy small { margin-top:4px; color:#c6a552; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.28em; }
.auth-story { max-width:680px; padding:30px 0; }
.auth-kicker { display:flex; align-items:center; gap:10px; color:#e4bd59; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.2em; }
.auth-kicker::before { content:""; width:34px; height:1px; background:#d0a63d; }
.auth-story h1 { max-width:670px; margin:18px 0 16px; font:500 clamp(42px,5.4vw,76px)/.98 Georgia,serif; letter-spacing:-.045em; text-wrap:balance; }
.auth-story p { max-width:560px; margin:0; color:#c2c0bd; font-size:15px; line-height:1.65; }
.auth-benefits { display:flex; flex-wrap:wrap; gap:9px; margin-top:27px; }
.auth-benefits span { min-height:36px; display:inline-flex; align-items:center; gap:8px; padding:0 12px; border:1px solid rgba(255,255,255,.1); color:#d3d1cc; background:rgba(12,12,12,.42); backdrop-filter:blur(12px); font-size:9px; font-weight:650; }
.auth-benefits .lucide { width:14px; height:14px; color:#dcba61; }
.auth-showcase-footer { display:flex; align-items:center; gap:11px; color:#8f8d89; font-size:9px; text-transform:uppercase; letter-spacing:.13em; }
.auth-showcase-footer span { width:7px; height:7px; border-radius:50%; background:#d6ae49; box-shadow:0 0 0 5px rgba(214,174,73,.1); }
.auth-panel { min-height:100svh; border-left:1px solid rgba(255,255,255,.08); background:radial-gradient(circle at 90% 0,rgba(199,154,40,.08),transparent 28%),#0c0c0d; }
.auth-panel-scroll { min-height:100%; display:grid; place-items:center; padding:clamp(30px,5vw,64px) clamp(26px,4vw,58px); }
.auth-panel-inner { width:min(100%,480px); }
.auth-mobile-brand { display:none; }
.auth-switcher { display:grid; grid-template-columns:1fr 1fr; gap:4px; margin-bottom:34px; padding:4px; border:1px solid rgba(255,255,255,.09); background:#121213; }
.auth-switcher a { min-height:40px; display:flex; align-items:center; justify-content:center; color:#77777d; font-size:11px; font-weight:750; }
.auth-switcher a.active { color:#111; background:linear-gradient(135deg,#e0ba58,#b6841b); box-shadow:0 7px 22px rgba(199,154,40,.17); }
.auth-heading { margin-bottom:25px; }
.auth-heading > span { color:#c79a28; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.16em; }
.auth-heading h2 { margin:8px 0 9px; font-size:clamp(30px,3.2vw,41px); line-height:1.04; letter-spacing:-.045em; }
.auth-heading p { margin:0; color:#8d8d93; font-size:11px; line-height:1.6; }
.auth-alert { display:flex; align-items:flex-start; gap:10px; margin:0 0 18px; padding:12px 13px; border:1px solid; font-size:10px; line-height:1.5; }
.auth-alert .lucide { width:16px; height:16px; flex:0 0 16px; margin-top:1px; }
.auth-alert.error { color:#ffaaaa; border-color:rgba(239,90,90,.24); background:rgba(239,90,90,.075); }
.auth-alert.success { color:#8de2ad; border-color:rgba(50,183,104,.24); background:rgba(50,183,104,.075); }
.auth-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 12px; }
.auth-field { min-width:0; }
.auth-field.wide,.auth-form > .wide { grid-column:1/-1; }
.auth-field > label,.auth-label-row label { display:block; color:#d1d1d4; font-size:10px; font-weight:720; }
.auth-field label b,.auth-label-row label b { color:#ef6b6b; font-weight:800; }
.auth-label-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.auth-label-row a { color:#d2a943; font-size:9px; font-weight:700; }
.auth-input { min-height:54px; display:grid; grid-template-columns:21px minmax(0,1fr) auto; align-items:center; gap:10px; margin-top:7px; padding:0 13px; border:1px solid rgba(255,255,255,.12); background:#151516; transition:.18s ease; }
.auth-input:focus-within { border-color:rgba(216,174,69,.78); box-shadow:0 0 0 4px rgba(199,154,40,.09); background:#181819; }
.auth-input > .lucide { width:17px; height:17px; color:#75757a; }
.auth-input:focus-within > .lucide { color:#d5ad49; }
.auth-input input { width:100%; min-width:0; min-height:52px; padding:0; border:0; outline:0; color:#f4f4f5; background:transparent; font-size:12px; }
.auth-input input::placeholder { color:#5f5f64; }
.auth-input button { width:34px; height:34px; display:grid; place-items:center; padding:0; border:0; color:#77777c; background:transparent; cursor:pointer; }
.auth-input button:hover { color:#e1b957; }
.auth-input button .lucide { width:16px; height:16px; }
.auth-field > small,.auth-field [data-password-match] { display:none; margin-top:6px; color:#ef8585; font-size:8px; }
.auth-field.is-invalid .auth-input { border-color:rgba(239,90,90,.65); box-shadow:0 0 0 3px rgba(239,90,90,.07); }
.auth-field.is-invalid > small,.auth-field.is-mismatch [data-password-match] { display:block; }
.auth-remember,.auth-consent { display:flex; align-items:flex-start; gap:9px; color:#8f8f95; font-size:9px; line-height:1.45; cursor:pointer; }
.auth-remember { align-items:center; }
.auth-remember input,.auth-consent input { width:16px; height:16px; flex:0 0 16px; margin:0; accent-color:#c79a28; }
.auth-primary { width:100%; min-height:52px; display:flex; align-items:center; justify-content:center; gap:10px; padding:0 18px; border:0; color:#0b0b0b; background:linear-gradient(135deg,#e3bf60,#b98719); box-shadow:0 13px 30px rgba(199,154,40,.18); font-size:11px; font-weight:850; cursor:pointer; transition:.18s ease; }
.auth-primary:hover { transform:translateY(-1px); filter:brightness(1.05); }
.auth-primary:disabled { opacity:.55; cursor:wait; transform:none; }
.auth-primary .lucide { width:17px; height:17px; }
.auth-login-loader[hidden] { display:none !important; }
.auth-login-loader { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:24px; background:rgba(5,5,5,.82); backdrop-filter:blur(13px); -webkit-backdrop-filter:blur(13px); }
.auth-login-loader-card { min-width:210px; display:grid; justify-items:center; gap:8px; padding:28px 30px; border:1px solid rgba(226,189,89,.18); border-radius:17px; background:linear-gradient(155deg,rgba(27,27,29,.98),rgba(11,11,12,.99)); box-shadow:0 28px 85px rgba(0,0,0,.55); text-align:center; }
.auth-login-spinner { width:43px; height:43px; display:block; margin-bottom:7px; border:3px solid rgba(226,189,89,.16); border-top-color:#e2bd59; border-right-color:#bd8c20; border-radius:50%; box-shadow:0 0 24px rgba(210,166,53,.12); animation:spin .72s linear infinite; }
.auth-login-loader-card strong { color:#f4f1e9; font-size:13px; letter-spacing:-.01em; }
.auth-login-loader-card small { color:#85858a; font-size:9px; }
.auth-is-loading { overflow:hidden !important; }
.auth-password-meter { display:grid; grid-template-columns:repeat(3,1fr); gap:4px; margin-top:8px; }
.auth-password-meter i { height:2px; background:#2c2c2e; }
.auth-password-meter span { grid-column:1/-1; color:#69696f; font-size:8px; }
.auth-password-meter[data-strength="1"] i:nth-child(1) { background:#df6d63; }
.auth-password-meter[data-strength="2"] i:nth-child(-n+2) { background:#d9a43e; }
.auth-password-meter[data-strength="3"] i { background:#4fc37a; }
.auth-password-meter[data-strength="1"] span { color:#df8179; }
.auth-password-meter[data-strength="2"] span { color:#d6af5b; }
.auth-password-meter[data-strength="3"] span { color:#68cb8d; }
.auth-role-note { display:flex; align-items:center; gap:11px; margin-top:16px; padding:12px 13px; border:1px solid rgba(255,255,255,.07); background:rgba(255,255,255,.018); }
.auth-role-note > .lucide { width:18px; height:18px; flex:0 0 18px; color:#cba23d; }
.auth-role-note strong,.auth-role-note p { display:block; }
.auth-role-note strong { font-size:9px; }
.auth-role-note p { margin:3px 0 0; color:#727278; font-size:8px; line-height:1.4; }
.auth-alternative { display:flex; align-items:center; justify-content:center; gap:7px; margin-top:18px; padding-top:18px; border-top:1px solid rgba(255,255,255,.07); color:#77777d; font-size:9px; }
.auth-alternative a { color:#dcaf43; font-weight:780; }
.auth-result-card { padding:25px 22px; border:1px solid rgba(255,255,255,.08); background:#131314; text-align:center; }
.auth-result-card > span { width:52px; height:52px; display:grid; place-items:center; margin:0 auto 15px; border-radius:50%; }
.auth-result-card.success > span { color:#66d28d; background:rgba(50,183,104,.12); }
.auth-result-card.error > span { color:#ef8585; background:rgba(239,90,90,.11); }
.auth-result-card > span .lucide { width:23px; height:23px; }
.auth-result-card h3 { margin:0; font-size:20px; }
.auth-result-card p { margin:9px 0 20px; color:#8d8d93; font-size:10px; line-height:1.6; }
.auth-panel-footer { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-top:23px; padding-top:18px; border-top:1px solid rgba(255,255,255,.065); }
.auth-panel-footer p { max-width:310px; display:flex; align-items:flex-start; gap:7px; margin:0; color:#65656b; font-size:8px; line-height:1.45; }
.auth-panel-footer p .lucide { flex:0 0 auto; margin-top:1px; color:#8b753d; }
.auth-panel-footer > a { display:flex; align-items:center; gap:6px; color:#8f8f95; font-size:8px; white-space:nowrap; }
.auth-panel-footer > a:hover { color:#d6aa3f; }

@media (max-width: 1050px) {
    :root { --sidebar: 215px; }
    .dashboard-grid { grid-template-columns: 1fr; }
    .plan-grid, .team-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .booking-layout { grid-template-columns: .7fr 1.3fr; }
    .immersive-booking .booking-layout { grid-template-columns: .76fr 1.24fr; }
    .barber-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .login-shell { grid-template-columns: 1fr 430px; }
}

@media (max-width: 760px) {
    body { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
    .side-nav { display: none; }
    .app-main { margin-left: 0; }
    .topbar { height: 69px; padding: max(9px,env(safe-area-inset-top)) 17px 9px; }
    .topbar h1 { font-size: 16px; }
    .mobile-kicker { display: block; margin-bottom: 3px; }
    .real-data { display: none; }
    .avatar { width: 34px; height: 34px; }
    .content { padding: 18px 14px 30px; }
    .bottom-nav { position: fixed; inset: auto 10px max(9px,env(safe-area-inset-bottom)) 10px; z-index: 60; display: grid; grid-template-columns: repeat(5,1fr); min-height: 64px; padding: 6px; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(23,23,24,.94); box-shadow: 0 18px 50px rgba(0,0,0,.45); backdrop-filter: blur(18px); }
    .bottom-nav a { min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; color: #6f6f74; font-size: 8px; }
    .bottom-nav a .lucide { width: 18px; height: 18px; }
    .bottom-nav a.active { color: var(--gold-2); }
    .bottom-nav a:nth-child(n+6) { display: none; }
    .welcome-hero { min-height: 280px; padding: 26px 22px; border-radius: 22px; }
    .welcome-overlay { background: linear-gradient(0deg, rgba(0,0,0,.9), rgba(0,0,0,.2)); }
    .welcome-content h2 { font-size: 36px; }
    .welcome-content p { font-size: 13px; }
    .metric-grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
    .metric-grid article { min-height: 102px; padding: 13px; border-radius: 15px; }
    .metric-grid .lucide { width: 16px; height: 16px; top: 12px; right: 12px; }
    .metric-grid span { max-width: 75px; font-size: 8px; }
    .metric-grid strong { font-size: 17px; }
    .panel-card { padding: 18px; border-radius: 17px; }
    .quick-grid { grid-template-columns: 1fr 1fr; }
    .section-heading { align-items: stretch; flex-direction: column; margin-bottom: 20px; }
    .section-heading h2 { font-size: 32px; }
    .search-box { width: 100%; }
    .appointment-list article { grid-template-columns: 56px minmax(0,1fr); gap: 12px; min-height: 86px; padding: 13px; }
    .appointment-list.with-avatars article { grid-template-columns: 56px 38px minmax(0,1fr); }
    .appointment-avatar { width: 38px; height: 38px; }
    .appointment-list .list-value { display: none; }
    .date-tile, .time-tile { min-width: 54px; min-height: 56px; }
    .list-title { align-items: flex-start; flex-direction: column; gap: 5px; }
    .plan-grid, .team-grid, .service-grid { grid-template-columns: 1fr; }
    .plan-card { min-height: 360px; }
    .service-card { grid-template-columns: 42px minmax(0,1fr) auto; }
    .profile-cover { height: 170px; }
    .profile-content { align-items: center; flex-direction: column; padding: 0 20px 24px; text-align: center; }
    .profile-actions { flex-direction: column; padding: 0 20px 24px; }
    .profile-photo-editor { grid-template-columns: 58px minmax(0,1fr); gap: 13px; padding: 15px; border-radius: 15px; }
    .profile-photo-preview { width: 58px; height: 58px; font-size: 16px; }
    .profile-photo-copy h3 { font-size: 14px; }
    .profile-photo-copy p { font-size: 9px; }
    .profile-photo-actions { grid-column: 1/-1; }
    .profile-photo-actions > * { flex: 1; }
    .booking-topbar { height: 62px; grid-template-columns: 1fr auto; padding: max(8px,env(safe-area-inset-top)) 16px 8px; }
    .booking-back span { display: none; }
    .booking-back .lucide { width: 31px; height: 31px; }
    .booking-progress { grid-template-columns: repeat(3,28px); }
    .booking-live { display: none; }
    .immersive-booking { padding-bottom: 0; }
    .immersive-booking .booking-content { padding-top: 62px; }
    .immersive-booking .booking-layout { display: block; width: 100%; min-height: calc(100dvh - 62px); margin: 0; }
    .booking-layout { display: block; width: calc(100% + 28px); margin: -18px -14px -30px; border: 0; border-radius: 0; box-shadow: none; }
    .booking-hero, .immersive-booking .booking-hero { min-height: 225px; background-position: center 42%; }
    .booking-hero::before { background: linear-gradient(0deg, #0b0b0c 0%, rgba(0,0,0,.08) 70%); }
    .hero-brand img { width: min(68%,230px); max-height: 100px; }
    .booking-body, .immersive-booking .booking-body { width: 100%; min-height: calc(100dvh - 287px); justify-content: flex-start; padding: 4px 22px max(36px,env(safe-area-inset-bottom)); }
    .booking-heading { text-align: center; }
    .booking-heading h2 { font-size: 34px; }
    .booking-heading p { font-size: 12px; }
    .booking-selectors > button { min-height: 65px; }
    .picker-sheet > section { max-height: 96dvh; padding: 22px 18px max(18px,env(safe-area-inset-bottom)); }
    .picker-sheet.calendar-mode { align-items: stretch; background: #080808; }
    .picker-sheet.calendar-mode .sheet-backdrop { display: none; }
    .picker-sheet.calendar-mode > section { width: 100%; height: 100dvh; max-height: 100dvh; padding: max(13px,env(safe-area-inset-top)) 18px max(12px,env(safe-area-inset-bottom)); border: 0; border-radius: 0; background: #080808; box-shadow: none; animation: none; }
    .picker-sheet.calendar-mode header { min-height: 52px; position: relative; align-items: center; justify-content: center; padding: 0 48px 10px; border-bottom: 0; text-align: center; }
    .picker-sheet.calendar-mode header small { display: none; }
    .picker-sheet.calendar-mode header h2 { margin: 0; font-size: 20px; }
    .picker-sheet.calendar-mode .sheet-close { width: 34px; height: 34px; position: absolute; top: 0; right: 0; border: 0; background: transparent; }
    .picker-sheet.calendar-mode .sheet-close .lucide { width: 27px; height: 27px; stroke-width: 2.6; }
    .picker-sheet.calendar-mode .sheet-content { min-height: 0; flex: 1 1 auto; overflow: hidden; display: flex; flex-direction: column; padding: 0; }
    .picker-sheet.calendar-mode .sheet-continue { min-height: 52px; margin-top: 9px; border-radius: 9px; }
    .calendar-shell { padding-inline: 0; }
    .picker-sheet.calendar-mode .calendar-nav { grid-template-columns: 38px 1fr 38px; margin-bottom: 2px; }
    .picker-sheet.calendar-mode .calendar-nav button { width: 38px; height: 34px; }
    .picker-sheet.calendar-mode .calendar-weekdays { margin-bottom: 0; }
    .picker-sheet.calendar-mode .calendar-nav strong { font-size: 14px; }
    .picker-sheet.calendar-mode .calendar-weekdays span { padding: 4px 0; font-size: 11px; }
    .picker-sheet.calendar-mode .calendar-grid { min-height: 0; flex: 1 1 auto; grid-auto-rows: minmax(34px,1fr); row-gap: 0; }
    .picker-sheet.calendar-mode .calendar-day, .picker-sheet.calendar-mode .calendar-blank { min-height: 34px; }
    .picker-sheet.calendar-mode .calendar-day { padding-bottom: 5px; font-size: 12px; }
    .picker-sheet.calendar-mode .calendar-day > span { width: 32px; height: 32px; }
    .picker-sheet.calendar-mode .calendar-day > i { width: 4px; height: 4px; bottom: 2px; }
    .picker-sheet.calendar-mode .time-choice-heading { display: block; flex: 0 0 auto; margin-top: 10px; }
    .picker-sheet.calendar-mode .time-choice-heading h3 { font-size: 17px; }
    .picker-sheet.calendar-mode .time-choice-heading small { display: none; }
    .picker-sheet.calendar-mode .period-tabs { flex: 0 0 auto; gap: 7px; margin: 8px 0; }
    .picker-sheet.calendar-mode .period-tabs button { min-height: 38px; font-size: 13px; }
    .picker-sheet.calendar-mode .slot-grid { flex: 0 0 auto; gap: 7px; }
    .picker-sheet.calendar-mode .slot-grid button { min-height: 38px; font-size: 13px; }
    .picker-sheet.calendar-mode .loading-box { min-height: 92px; }
    .date-strip { grid-template-columns: repeat(7,58px); }
    .slot-grid { grid-template-columns: repeat(3,1fr); }
    .auth-shell { min-height:100dvh; display:block; }
    .auth-showcase { height:136px; min-height:136px; position:relative; align-items:center; justify-content:center; padding:13px 16px 15px; background-position:center 42%; }
    .auth-showcase-shade { background:linear-gradient(0deg,rgba(5,5,5,.92),rgba(5,5,5,.3)),linear-gradient(90deg,rgba(5,5,5,.22),rgba(5,5,5,.52)); }
    .auth-showcase::after,.auth-benefits,.auth-showcase-footer,.auth-story p { display:none; }
    .auth-brand { margin:auto; }
    .auth-brand img,.auth-login .auth-brand img,.auth-cadastro .auth-brand img { max-width:174px; height:68px; object-position:center; }
    .auth-brand-copy strong { max-width:210px; font-size:12px; }
    .auth-brand-copy small { font-size:7px; }
    .auth-monogram { width:34px; height:34px; font-size:18px; }
    .auth-story { display:none; }
    .auth-kicker { font-size:7px; }
    .auth-kicker::before { width:20px; }
    .auth-story h1 { max-width:430px; margin:6px 0 0; font-size:23px; line-height:1; }
    .auth-panel { min-height:calc(100dvh - 136px); border:0; }
    .auth-panel-scroll { display:block; padding:14px 16px max(14px,env(safe-area-inset-bottom)); }
    .auth-panel-inner { width:calc(100vw - 32px); max-width:480px; min-width:0; margin:0 auto; }
    .auth-switcher,.auth-form,.auth-field,.auth-input,.auth-role-note,.auth-alternative,.auth-panel-footer { max-width:100%; }
    .auth-switcher { margin-bottom:14px; padding:3px; }
    .auth-switcher a { min-height:36px; font-size:10px; }
    .auth-heading { margin-bottom:14px; }
    .auth-heading > span { display:none; }
    .auth-heading h2 { margin-top:0; font-size:25px; }
    .auth-heading p { font-size:9px; line-height:1.4; }
    .auth-form { grid-template-columns:1fr; gap:9px; }
    .auth-field,.auth-field.wide,.auth-form > .wide { grid-column:1; }
    .auth-field > label,.auth-label-row label { font-size:9px; }
    .auth-input { min-height:46px; margin-top:5px; }
    .auth-input input { min-height:44px; font-size:12px; }
    .auth-primary { min-height:48px; font-size:11px; }
    .auth-role-note { margin-top:9px; padding:8px 10px; }
    .auth-role-note p { margin-top:1px; }
    .auth-alternative { margin-top:9px; padding-top:9px; }
    .auth-panel-footer { align-items:center; flex-direction:row; margin-top:9px; padding-top:9px; }
    .auth-panel-footer p { display:none; }
    .auth-panel-footer > a { order:-1; }
    .auth-register-form .auth-consent { margin-top:2px; }
    .auth-login .auth-panel-scroll { min-height:calc(100dvh - 136px); display:grid; place-items:center; padding-block:16px; }
    .auth-login .auth-panel-inner,.auth-cadastro .auth-panel-inner { position:relative; overflow:hidden; max-width:430px; padding:18px; border:1px solid rgba(255,255,255,.095); border-radius:16px; background:linear-gradient(155deg,rgba(25,25,27,.97),rgba(12,12,13,.98)); box-shadow:0 24px 65px rgba(0,0,0,.38); }
    .auth-login .auth-panel-inner::before,.auth-cadastro .auth-panel-inner::before { content:""; position:absolute; inset:0 18px auto; height:1px; background:linear-gradient(90deg,transparent,rgba(226,189,89,.7),transparent); }
    .auth-login .auth-switcher,.auth-cadastro .auth-switcher { border-radius:11px; background:#0d0d0e; }
    .auth-login .auth-switcher a,.auth-cadastro .auth-switcher a { border-radius:8px; }
    .auth-login .auth-input,.auth-cadastro .auth-input { border-radius:11px; background:#111112; }
    .auth-login .auth-primary,.auth-cadastro .auth-primary { border-radius:11px; }
    .auth-login .auth-role-note { display:none; }
    .barber-strip { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; margin-right: -14px; padding-right: 14px; }
    .barber-feed-card { flex: 0 0 190px; scroll-snap-align: start; }
    .service-showcase { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; margin-right: -14px; padding-right: 14px; }
    .showcase-card { min-height: 225px; flex: 0 0 210px; scroll-snap-align: start; }
    .membership-banner { align-items: flex-start; flex-direction: column; padding: 26px 22px; }
    .membership-banner .gold-button { width: 100%; }
    .plan-modal { align-items: flex-end; padding: 0; }
    .plan-modal > section { border-radius: 24px 24px 0 0; padding: 31px 22px max(24px,env(safe-area-inset-bottom)); }
}

@media (max-width:760px) and (max-height:760px) {
    .auth-showcase { height:108px; min-height:108px; padding:10px 14px 11px; }
    .auth-brand img,.auth-login .auth-brand img,.auth-cadastro .auth-brand img { max-width:154px; height:56px; }
    .auth-brand-copy small { display:none; }
    .auth-story { padding-top:2px; }
    .auth-kicker { display:none; }
    .auth-story h1 { max-width:350px; margin:0; font-size:20px; }
    .auth-panel { min-height:calc(100dvh - 108px); }
    .auth-panel-scroll { padding:10px 14px max(10px,env(safe-area-inset-bottom)); }
    .auth-panel-inner { width:calc(100vw - 28px); }
    .auth-switcher { margin-bottom:10px; }
    .auth-switcher a { min-height:34px; }
    .auth-heading { margin-bottom:10px; }
    .auth-heading h2 { font-size:22px; }
    .auth-heading p { display:none; }
    .auth-form { gap:7px; }
    .auth-input { min-height:43px; }
    .auth-input input { min-height:41px; }
    .auth-primary { min-height:45px; }
    .auth-role-note { min-height:34px; margin-top:7px; padding:7px 9px; }
    .auth-role-note p { display:none; }
    .auth-alternative { margin-top:7px; padding-top:7px; }
    .auth-panel-footer { margin-top:7px; padding-top:7px; }
    .auth-login .auth-panel-scroll { min-height:calc(100dvh - 108px); padding-block:10px; }
    .auth-login .auth-panel-inner,.auth-cadastro .auth-panel-inner { padding:14px; }
}

@media (max-width: 760px) and (max-height: 620px) {
    .picker-sheet.calendar-mode > section { padding-top: max(8px,env(safe-area-inset-top)); padding-bottom: max(8px,env(safe-area-inset-bottom)); }
    .picker-sheet.calendar-mode header { min-height: 44px; padding-bottom: 6px; }
    .picker-sheet.calendar-mode header h2 { font-size: 17px; }
    .picker-sheet.calendar-mode .calendar-grid { grid-auto-rows: minmax(26px,1fr); }
    .picker-sheet.calendar-mode .calendar-day, .picker-sheet.calendar-mode .calendar-blank { min-height: 26px; }
    .picker-sheet.calendar-mode .calendar-day > span { width: 25px; height: 25px; }
    .picker-sheet.calendar-mode .time-choice-heading { margin-top: 5px; }
    .picker-sheet.calendar-mode .period-tabs { margin: 5px 0; }
    .picker-sheet.calendar-mode .period-tabs button,
    .picker-sheet.calendar-mode .slot-grid button { min-height: 30px; }
    .picker-sheet.calendar-mode .sheet-continue { min-height: 46px; margin-top: 6px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .001ms !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Barber workspace */
.modal-lock { overflow: hidden !important; }
.agenda-toolbar { margin-bottom: 16px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg,#171719,#101011); }
.period-pills { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 14px; }
.period-pills a { min-height: 34px; display: inline-flex; align-items: center; padding: 0 13px; border: 1px solid var(--line); border-radius: 999px; color: #98989f; background: #141416; font-size: 10px; font-weight: 700; }
.period-pills a.active { border-color: rgba(215,177,55,.75); color: #0a0a0b; background: linear-gradient(135deg,var(--gold-2),#b98917); }
.period-pills.compact-pills { margin: 0; justify-content: flex-end; }
.period-pills.compact-pills a { min-height: 30px; padding-inline: 10px; font-size: 9px; }
.filter-form { display: grid; grid-template-columns: 170px 170px minmax(190px,1fr) auto auto; align-items: end; gap: 10px; }
.filter-form label, .block-form label, .schedule-fields label, .reschedule-form label { display: grid; gap: 6px; color: #9b9ba2; font-size: 9px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.filter-form input, .filter-form select, .block-form input, .schedule-fields input, .schedule-fields select, .reschedule-form input { width: 100%; height: 42px; padding: 0 12px; border: 1px solid var(--line-strong); border-radius: 10px; outline: 0; color: var(--text); background: #0d0d0e; font: inherit; font-size: 11px; text-transform: none; letter-spacing: normal; color-scheme: dark; }
.filter-form input:focus, .filter-form select:focus, .block-form input:focus, .schedule-fields input:focus, .schedule-fields select:focus, .reschedule-form input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(199,154,40,.1); }
.custom-period { display: none; grid-column: 1/-1; grid-template-columns: repeat(2,minmax(0,200px)); gap: 10px; }
.custom-period.show { display: grid; }
.appointment-worklist { display: grid; gap: 11px; }
.appointment-work-card { position: relative; display: grid; grid-template-columns: 72px 50px minmax(0,1fr) auto; align-items: center; gap: 16px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg,#18181a,#111112); box-shadow: 0 12px 35px rgba(0,0,0,.13); }
.appointment-work-card::before { content: ""; width: 3px; position: absolute; inset: 14px auto 14px 0; border-radius: 3px; background: #6b6b72; }
.appointment-work-card.status-confirmado::before { background: #4e9dff; }.appointment-work-card.status-em_andamento::before { background: var(--gold-2); box-shadow: 0 0 16px rgba(219,179,53,.6); }.appointment-work-card.status-concluido::before { background: var(--green); }.appointment-work-card.status-cancelado::before,.appointment-work-card.status-nao_compareceu::before { background: var(--red); }
.appointment-when { min-height: 58px; display: grid; place-items: center; align-content: center; border-right: 1px solid var(--line); text-align: center; }
.appointment-when strong { color: var(--gold-2); font-size: 19px; letter-spacing: -.03em; }.appointment-when span { margin-top: 3px; color: #cacacf; font-size: 10px; }.appointment-when small { margin-top: 2px; color: #67676e; font-size: 8px; }
.appointment-avatar.large { width: 50px; height: 50px; font-size: 12px; }.appointment-avatar.detail-avatar { width: 62px; height: 62px; }
.appointment-summary { min-width: 0; }.appointment-title-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }.appointment-title-row > div > strong,.appointment-detail-hero h3 { display: block; font-size: 14px; }.appointment-title-row small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; }.appointment-summary > p { overflow: hidden; margin: 8px 0; color: #b6b6bc; font-size: 11px; white-space: nowrap; text-overflow: ellipsis; }.appointment-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }.appointment-meta > span { display: inline-flex; align-items: center; gap: 5px; color: #a9a9af; font-size: 9px; }.appointment-meta .lucide { width: 13px; height: 13px; }
.payment-pill { width: fit-content; display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: 999px; font-size: 8px !important; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }.payment-pill.paid { color: #7be3a1 !important; background: rgba(48,182,100,.12); }.payment-pill.pending { color: #f0bd69 !important; background: rgba(239,160,55,.12); }.payment-pill .lucide { width: 12px; height: 12px; }
.appointment-actions-v2 { display: flex; align-items: center; gap: 6px; }
.icon-action { min-width: 38px; min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 10px; border: 1px solid var(--line); border-radius: 10px; color: #a9a9b0; background: #0d0d0e; cursor: pointer; font-size: 9px; }.icon-action:hover { border-color: var(--line-strong); color: var(--text); }.icon-action .lucide { width: 15px; height: 15px; }.icon-action.positive { color: #77dfa0; border-color: rgba(48,182,100,.2); background: rgba(48,182,100,.07); }.icon-action.danger { color: #ff8989; border-color: rgba(238,80,80,.18); background: rgba(238,80,80,.06); }.icon-action[aria-busy=true] .lucide,.gold-button[aria-busy=true] .lucide,.outline-button[aria-busy=true] .lucide { animation: spin .8s linear infinite; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 20px 0 4px; }.pagination a,.pagination span { min-height: 38px; display: inline-flex; align-items: center; gap: 6px; padding: 0 13px; border: 1px solid var(--line); border-radius: 10px; color: #aaaab0; background: var(--surface); font-size: 10px; }.pagination span { color: var(--muted); background: transparent; }.pagination .lucide { width: 14px; height: 14px; }
.premium-empty { min-height: 260px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
.appointment-modal,.v2-confirm-dialog { position: fixed; inset: 0; z-index: 120; display: none; align-items: center; justify-content: center; padding: 22px; }.appointment-modal.open,.v2-confirm-dialog.open { display: flex; }.appointment-modal-backdrop,.v2-confirm-backdrop { position: absolute; inset: 0; border: 0; background: rgba(0,0,0,.82); backdrop-filter: blur(8px); }.appointment-modal > section { width: min(100%,660px); max-height: min(90dvh,800px); position: relative; overflow: hidden; display: flex; flex-direction: column; border: 1px solid var(--line-strong); border-radius: 24px; background: #111113; box-shadow: 0 30px 100px rgba(0,0,0,.65); }.appointment-modal > section > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 21px 22px; border-bottom: 1px solid var(--line); }.appointment-modal > section > header h2 { margin: 5px 0 0; font-size: 20px; }.appointment-modal-content { overflow-y: auto; padding: 22px; }.appointment-detail-hero { display: flex; align-items: center; gap: 14px; }.appointment-detail-hero h3 { margin: 8px 0 4px; }.appointment-detail-hero p { margin: 0; color: var(--muted); font-size: 10px; }.appointment-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-top: 18px; }.appointment-detail-grid article { padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: #171719; }.appointment-detail-grid span { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }.appointment-detail-grid strong { display: block; margin-top: 6px; font-size: 11px; line-height: 1.45; }.payment-proof { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px; padding: 14px; border: 1px solid rgba(48,182,100,.18); border-radius: 13px; background: rgba(48,182,100,.06); }.payment-proof.pending { border-color: rgba(239,160,55,.18); background: rgba(239,160,55,.06); }.payment-proof > div > span { display: flex; align-items: center; gap: 6px; color: #7be3a1; font-size: 9px; font-weight: 800; text-transform: uppercase; }.payment-proof.pending > div > span { color: #e9b85f; }.payment-proof > div > strong { display: block; max-width: 330px; overflow: hidden; margin-top: 5px; color: #c2c2c8; font-size: 9px; text-overflow: ellipsis; }.payment-proof .lucide { width: 14px; height: 14px; }
.v2-confirm-dialog [hidden] { display: none !important; }
.profile-editor { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 18px; }.profile-form-card { padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(145deg,#151516,#101011); box-shadow: var(--shadow-soft); }.profile-form-card form { display: grid; gap: 13px; margin-top: 18px; }.profile-form-card label { display: grid; gap: 7px; }.profile-form-card label > span { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.profile-form-card label > small { color: var(--muted); font-size: 9px; }.profile-form-card input { width: 100%; min-height: 46px; padding: 0 13px; color: var(--text); border: 1px solid var(--line-strong); border-radius: 11px; outline: none; background: #0c0c0d; }.profile-form-card input:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(210,171,61,.09); }.profile-form-card input:disabled { color: #78787e; background: #121213; }.panel-icon { display: grid; width: 40px; height: 40px; place-items: center; color: var(--gold); border: 1px solid rgba(210,171,61,.18); border-radius: 12px; background: rgba(210,171,61,.06); }.panel-icon .lucide { width: 18px; height: 18px; }.account-strip { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; overflow: hidden; margin-top: 16px; border: 1px solid var(--line); border-radius: 16px; background: var(--line); }.account-strip > span { padding: 17px; background: #131314; }.account-strip small,.account-strip strong { display: block; }.account-strip small { margin-bottom: 6px; color: var(--muted); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }.account-strip strong { font-size: 11px; }.account-active { display: flex !important; align-items: center; gap: 6px; color: #67d88d; }.account-active .lucide { width: 14px; height: 14px; }
.reschedule-panel { overflow: hidden; margin-top: 12px; border: 1px solid var(--line); border-radius: 13px; }.reschedule-toggle { width: 100%; min-height: 62px; display: grid; grid-template-columns: 30px 1fr 20px; align-items: center; gap: 10px; padding: 12px 14px; border: 0; color: var(--text); background: #171719; text-align: left; cursor: pointer; }.reschedule-toggle > .lucide:first-child { color: var(--gold-2); }.reschedule-toggle strong,.reschedule-toggle small { display: block; }.reschedule-toggle strong { font-size: 11px; }.reschedule-toggle small { margin-top: 4px; color: var(--muted); font-size: 9px; }.reschedule-form { display: none; grid-template-columns: 1fr 1fr auto; align-items: end; gap: 9px; padding: 14px; border-top: 1px solid var(--line); }.reschedule-panel.open .reschedule-form { display: grid; }.appointment-detail-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-top: 16px; }.danger-button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 14px; border: 1px solid rgba(238,80,80,.3); border-radius: 11px; color: #ff9292; background: rgba(238,80,80,.09); cursor: pointer; font-size: 10px; font-weight: 750; }.danger-button .lucide { width: 15px; height: 15px; }
.v2-confirm-dialog { z-index: 150; }.v2-confirm-dialog > section { width: min(100%,410px); position: relative; padding: 26px; border: 1px solid var(--line-strong); border-radius: 22px; background: #121214; box-shadow: 0 30px 100px rgba(0,0,0,.7); text-align: center; }.confirm-icon { width: 48px; height: 48px; display: grid; place-items: center; margin: 0 auto 14px; border-radius: 50%; color: var(--gold-2); background: var(--gold-soft); }.v2-confirm-dialog h3 { margin: 0; font-size: 20px; }.v2-confirm-dialog p { margin: 9px 0 18px; color: var(--muted); font-size: 11px; line-height: 1.55; }.v2-confirm-dialog label { display: grid; gap: 7px; margin-bottom: 16px; color: var(--muted); font-size: 9px; text-align: left; text-transform: uppercase; }.v2-confirm-dialog textarea { resize: vertical; padding: 11px; border: 1px solid var(--line-strong); border-radius: 11px; outline: 0; color: var(--text); background: #0c0c0d; }.v2-confirm-dialog > section > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.app-toast-stack { position: fixed; z-index: 180; top: 18px; right: 18px; display: grid; gap: 8px; pointer-events: none; }.app-toast { min-width: 260px; max-width: 370px; display: flex; align-items: center; gap: 9px; padding: 13px 15px; border: 1px solid rgba(48,182,100,.25); border-radius: 12px; color: #bff4d1; background: rgba(15,42,26,.96); box-shadow: 0 18px 50px rgba(0,0,0,.4); opacity: 0; transform: translateY(-8px); transition: .2s ease; font-size: 11px; }.app-toast.error { border-color: rgba(238,80,80,.25); color: #ffc1c1; background: rgba(55,17,20,.96); }.app-toast.show { opacity: 1; transform: none; }.app-toast .lucide { width: 17px; height: 17px; }
.server-search button { width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 8px; color: #0b0b0c; background: var(--gold-2); cursor: pointer; }.server-search button .lucide { width: 14px; height: 14px; }
.service-card.service-paused { opacity: .54; }.service-toggle { min-height: 31px; display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; padding: 0 9px; border: 1px solid var(--line); border-radius: 9px; color: #aaaab1; background: #101011; cursor: pointer; font-size: 8px; }.service-toggle.active { color: #f0c962; border-color: rgba(199,154,40,.24); }.service-toggle .lucide { width: 12px; height: 12px; }.available-services { margin-top: 24px; padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }.compact-service-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }.compact-service-list article { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #171719; }.compact-service-list strong,.compact-service-list small { display: block; }.compact-service-list strong { font-size: 11px; }.compact-service-list small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.queue-head-actions { display: flex; gap: 8px; }.premium-queue article { grid-template-columns: 46px minmax(0,1fr) auto; }.queue-person { display: flex; align-items: center; gap: 11px; }.queue-person p { margin: 5px 0 0; color: var(--muted); font-size: 9px; }.queue-payment { display: grid; justify-items: end; gap: 7px; }.queue-payment strong { font-size: 12px; }
.availability-layout { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(330px,.65fr); gap: 16px; align-items: start; }.availability-card { padding: 20px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }.schedule-editor { display: grid; gap: 8px; }.schedule-row { overflow: hidden; display: grid; grid-template-columns: 150px 1fr; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: #171719; }.schedule-row.is-off { opacity: .65; }.schedule-day strong { display: block; font-size: 11px; }.switch-label { display: flex !important; align-items: center; gap: 6px !important; margin-top: 7px; text-transform: none !important; letter-spacing: 0 !important; }.switch-label input { width: auto; height: auto; accent-color: var(--gold); }.schedule-fields { display: grid; grid-template-columns: repeat(5,minmax(80px,1fr)) auto; align-items: end; gap: 7px; }.schedule-fields input,.schedule-fields select { height: 38px; padding: 0 8px; }.block-form { display: grid; grid-template-columns: repeat(2,1fr); gap: 9px; }.block-reason,.block-form .gold-button { grid-column: 1/-1; }.block-list { display: grid; gap: 8px; margin-top: 18px; }.block-list article { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #171719; }.block-list strong,.block-list small { display: block; }.block-list strong { font-size: 10px; }.block-list small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.finance-list-card { margin-top: 20px; padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }.finance-list { display: grid; gap: 7px; }.finance-list article { display: grid; grid-template-columns: 48px minmax(0,1fr) auto auto 40px; align-items: center; gap: 12px; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: #171719; }.finance-date { width: 42px; height: 42px; display: grid; place-items: center; align-content: center; border-radius: 10px; color: #090909; background: var(--gold-2); }.finance-date strong { font-size: 16px; }.finance-date span { font-size: 7px; font-weight: 800; }.finance-list article > div:nth-child(2) strong,.finance-list article > div:nth-child(2) small { display: block; }.finance-list article > div:nth-child(2) strong { font-size: 11px; }.finance-list article > div:nth-child(2) small { margin-top: 4px; color: var(--muted); font-size: 9px; }.finance-value { font-size: 12px; }.focus-service-card { display: flex; align-items: center; gap: 20px; margin-top: 18px; padding: 18px 20px; border: 1px solid rgba(199,154,40,.24); border-radius: 18px; background: linear-gradient(135deg,rgba(199,154,40,.12),#141415 45%); }.focus-service-card.is-active { box-shadow: 0 0 0 1px rgba(199,154,40,.12),0 16px 50px rgba(0,0,0,.25); }.focus-label { min-width: 150px; display: flex; align-items: center; gap: 7px; color: var(--gold-2); font-size: 9px; font-weight: 800; text-transform: uppercase; }.focus-label > span { width: 7px; height: 7px; border-radius: 50%; background: var(--gold-2); box-shadow: 0 0 0 5px rgba(199,154,40,.12); }.focus-client { flex: 1; display: flex; align-items: center; gap: 12px; }.focus-client small,.focus-client h3,.focus-client p { display: block; margin: 0; }.focus-client small { color: var(--gold-2); font-size: 9px; }.focus-client h3 { margin-top: 3px; font-size: 14px; }.focus-client p { margin-top: 3px; color: var(--muted); font-size: 9px; }.focus-actions { display: flex; gap: 7px; }

@media (max-width: 1100px) {
    .filter-form { grid-template-columns: repeat(2,minmax(0,1fr)); }.filter-form .filter-search { grid-column: 1/-1; }.filter-form > .gold-button,.filter-form > .ghost-button { width: 100%; }
    .appointment-work-card { grid-template-columns: 64px 44px minmax(0,1fr); }.appointment-actions-v2 { grid-column: 2/-1; justify-content: flex-end; border-top: 1px solid var(--line); padding-top: 10px; }
    .availability-layout { grid-template-columns: 1fr; }.schedule-fields { grid-template-columns: repeat(3,minmax(80px,1fr)); }
}

@media (max-width: 760px) {
    .role-barbeiro .bottom-nav { display: flex; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; justify-content: flex-start; }.role-barbeiro .bottom-nav::-webkit-scrollbar { display: none; }.role-barbeiro .bottom-nav a,.role-barbeiro .bottom-nav a:nth-child(n+6) { flex: 0 0 66px; display: flex; }
    .agenda-heading { align-items: flex-start; }.agenda-toolbar { padding: 12px; }.period-pills { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; scrollbar-width: none; }.period-pills a { flex: 0 0 auto; }.filter-form { grid-template-columns: 1fr 1fr; }.filter-form label,.custom-period { min-width: 0; }.custom-period { grid-column: 1/-1; grid-template-columns: 1fr 1fr; }
    .appointment-work-card { grid-template-columns: 58px 42px minmax(0,1fr); gap: 10px; padding: 13px 12px; }.appointment-when { min-height: 52px; }.appointment-when strong { font-size: 17px; }.appointment-avatar.large { width: 42px; height: 42px; }.appointment-title-row { display: block; }.appointment-title-row .status { width: fit-content; margin-top: 7px; }.appointment-actions-v2 { grid-column: 1/-1; justify-content: stretch; overflow-x: auto; }.appointment-actions-v2 .icon-action { flex: 1 0 auto; }.appointment-summary > p { white-space: normal; line-height: 1.4; }
    .appointment-modal { align-items: flex-end; padding: 0; }.appointment-modal > section { width: 100%; max-height: 94dvh; border-radius: 22px 22px 0 0; }.appointment-modal-content { padding: 17px; }.appointment-detail-grid { grid-template-columns: 1fr 1fr; }.payment-proof { align-items: flex-start; flex-direction: column; }.payment-proof .outline-button { width: 100%; }.reschedule-form { grid-template-columns: 1fr 1fr; }.reschedule-form .gold-button { grid-column: 1/-1; width: 100%; }.appointment-detail-actions > * { flex: 1 1 100%; }.v2-confirm-dialog { align-items: flex-end; padding: 0; }.v2-confirm-dialog > section { width: 100%; border-radius: 22px 22px 0 0; }
    .profile-editor { grid-template-columns: 1fr; }.account-strip { grid-template-columns: 1fr 1fr; }
    .app-toast-stack { inset: max(10px,env(safe-area-inset-top)) 10px auto; }.app-toast { min-width: 0; width: 100%; }
    .compact-service-list { grid-template-columns: 1fr; }.premium-queue { padding: 7px 12px; }.premium-queue article { grid-template-columns: 38px minmax(0,1fr); gap: 10px; padding-block: 10px; }.queue-payment { grid-column: 2; justify-items: start; display: flex; align-items: center; justify-content: space-between; }.queue-head-actions { width: 100%; }.queue-head-actions .gold-button { width: 100%; }
    .availability-card { padding: 14px; }.schedule-row { grid-template-columns: 1fr; }.schedule-day { display: flex; align-items: center; justify-content: space-between; }.switch-label { margin: 0; }.schedule-fields { grid-template-columns: 1fr 1fr; }.schedule-fields label:nth-child(5),.schedule-fields .outline-button { grid-column: 1/-1; }.block-form { grid-template-columns: 1fr 1fr; }
    .finance-list-card { padding: 14px; }.finance-list-card .panel-title { align-items: flex-start; flex-direction: column; }.finance-list-card .compact-pills { width: 100%; justify-content: flex-start; }.finance-list article { grid-template-columns: 42px minmax(0,1fr) 38px; }.finance-list .payment-pill,.finance-value { grid-column: 2; }.finance-list .icon-action { grid-column: 3; grid-row: 1/3; }.focus-service-card { align-items: flex-start; flex-wrap: wrap; padding: 15px; }.focus-label { width: 100%; }.focus-actions { width: 100%; }.focus-actions > * { flex: 1; }
}

@media (max-width: 430px) {
    .filter-form { grid-template-columns: 1fr; }.filter-form .filter-search,.filter-form > *,.custom-period { grid-column: 1; }.custom-period { grid-template-columns: 1fr 1fr; }
    .appointment-work-card { grid-template-columns: 52px minmax(0,1fr); }.appointment-avatar.large { display: none; }.appointment-summary { grid-column: 2; }.appointment-actions-v2 { grid-column: 1/-1; }.icon-action span { display: inline; }
    .appointment-detail-grid { grid-template-columns: 1fr; }.appointment-detail-hero .appointment-avatar { display: grid; }.reschedule-form { grid-template-columns: 1fr; }.reschedule-form .gold-button { grid-column: 1; }
    .schedule-fields { grid-template-columns: 1fr 1fr; }.block-form { grid-template-columns: 1fr; }.block-reason,.block-form .gold-button { grid-column: 1; }
}

/* Checkout interno: Payment Brick (Pix e cartões) sem sair do app-v2. */
.embedded-checkout-page{width:min(1080px,100%);margin:0 auto 44px}.embedded-checkout-top{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;margin-bottom:18px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,rgba(199,154,40,.09),rgba(255,255,255,.018))}.embedded-checkout-top>a{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:12px;color:var(--text);background:rgba(0,0,0,.22)}.embedded-checkout-top>a svg{width:23px;height:23px}.embedded-checkout-top small,.embedded-checkout-panel-head small{display:block;color:var(--gold-2);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.embedded-checkout-top h2{margin:3px 0 0;font-size:22px}.embedded-checkout-top>span{display:inline-flex;align-items:center;gap:7px;color:#9bd5ae;font-size:11px;font-weight:700}.embedded-checkout-top>span svg{width:18px}.embedded-checkout-layout{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(420px,1.28fr);gap:16px;align-items:start}.embedded-checkout-summary,.embedded-checkout-panel,.embedded-checkout-unavailable{border:1px solid var(--line);border-radius:16px;background:linear-gradient(150deg,#191817,#101011);box-shadow:0 24px 70px rgba(0,0,0,.22)}.embedded-checkout-summary{position:sticky;top:94px;padding:24px}.embedded-checkout-summary h3{margin:7px 0 5px;font-size:21px}.embedded-checkout-summary>p{margin:0;color:var(--muted);font-size:12px}.embedded-checkout-detail{display:flex;gap:10px;align-items:flex-start;margin:20px 0;padding:14px;border:1px solid var(--line);border-radius:10px;color:#c1c1c5;background:rgba(0,0,0,.18);font-size:12px;line-height:1.55}.embedded-checkout-detail svg{flex:0 0 18px;width:18px;margin-top:1px;color:var(--gold)}.embedded-checkout-total{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:18px 0;border-block:1px solid var(--line)}.embedded-checkout-total span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.embedded-checkout-total strong{color:var(--gold-2);font-size:25px}.embedded-checkout-expiry{display:flex;align-items:center;gap:11px;margin-top:15px;padding:12px;border:1px solid rgba(226,189,89,.2);border-radius:10px;color:var(--gold-2);background:rgba(199,154,40,.07)}.embedded-checkout-expiry.urgent{border-color:rgba(239,90,90,.32);color:#ff9b9b;background:rgba(239,90,90,.07)}.embedded-checkout-expiry>svg{width:20px}.embedded-checkout-expiry small,.embedded-checkout-expiry strong{display:block}.embedded-checkout-expiry small{color:var(--muted);font-size:9px}.embedded-checkout-expiry strong{margin-top:2px;font-size:16px;font-variant-numeric:tabular-nums}.embedded-checkout-summary ul{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}.embedded-checkout-summary li{display:flex;align-items:center;gap:9px;color:#8d8d93;font-size:10px}.embedded-checkout-summary li svg{width:16px;color:#b0a16e}.embedded-checkout-panel{overflow:hidden}.embedded-checkout-panel-head{display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}.embedded-checkout-panel-head>span{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;color:var(--gold-2);background:var(--gold-soft)}.embedded-checkout-panel-head>span svg{width:22px}.embedded-checkout-panel-head h3{margin:3px 0;font-size:18px}.embedded-checkout-panel-head p{margin:0;color:var(--muted);font-size:10px}.embedded-checkout-loader{min-height:320px;display:flex;align-items:center;justify-content:center;gap:10px;color:#aaa;font-size:12px}.embedded-checkout-loader svg,.embedded-payment-wait svg,.embedded-status-result.pending .embedded-result-icon svg{animation:embedded-checkout-spin 1s linear infinite}.embedded-checkout-loader[hidden]{display:none}.embedded-checkout-panel #paymentBrick_container{min-height:410px;padding:16px;background:#111112}.embedded-checkout-panel>footer{display:flex;gap:8px;align-items:center;padding:13px 20px;border-top:1px solid var(--line);color:#737379;font-size:9px}.embedded-checkout-panel>footer svg{width:15px;color:#76bd8e}.embedded-checkout-result{padding:20px;background:#111112}.embedded-pix-result,.embedded-status-result{display:grid;justify-items:center;text-align:center;padding:8px 6px 16px}.embedded-result-icon{width:52px;height:52px;display:grid;place-items:center;margin-bottom:12px;border-radius:50%;color:var(--gold-2);background:var(--gold-soft)}.embedded-result-icon svg{width:25px;height:25px}.embedded-status-result.approved .embedded-result-icon,.embedded-checkout-result.approved .embedded-result-icon{color:#8cdda8;background:rgba(50,183,104,.12)}.embedded-checkout-result.error .embedded-result-icon{color:#ff9b9b;background:rgba(239,90,90,.11)}.embedded-pix-result small,.embedded-status-result small{color:var(--gold-2);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.embedded-pix-result h3,.embedded-status-result h3{margin:5px 0 7px;font-size:21px}.embedded-pix-result p,.embedded-status-result p{max-width:500px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.embedded-pix-result>img{width:220px;height:220px;margin:18px 0;padding:8px;border-radius:12px;background:#fff}.embedded-pix-result>label{width:min(100%,520px);text-align:left}.embedded-pix-result>label span{display:block;margin-bottom:6px;color:#8d8d92;font-size:9px;text-transform:uppercase}.embedded-pix-result textarea{width:100%;height:72px;resize:none;padding:10px;border:1px solid var(--line);border-radius:9px;color:#d4d4d6;background:#090909;font:10px/1.4 monospace}.embedded-pix-result>.gold-button,.embedded-status-result>.gold-button{width:min(100%,360px);margin-top:12px;justify-content:center}.embedded-payment-wait{display:flex;align-items:center;gap:8px;margin-top:16px;color:#8f8f94;font-size:10px}.embedded-payment-id{margin-top:9px!important;color:#606066!important;text-transform:none!important;letter-spacing:0!important}.embedded-checkout-unavailable{display:grid;justify-items:center;text-align:center;min-height:390px;padding:48px 24px}.embedded-checkout-unavailable>span{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;color:var(--gold-2);background:var(--gold-soft)}.embedded-checkout-unavailable>span svg{width:29px}.embedded-checkout-unavailable h3{margin:18px 0 7px;font-size:22px}.embedded-checkout-unavailable p{max-width:430px;margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.55}@keyframes embedded-checkout-spin{to{transform:rotate(360deg)}}

@media(max-width:760px){.role-cliente.view-checkout .content{padding:14px 14px 92px}.embedded-checkout-page{margin-bottom:0}.embedded-checkout-top{grid-template-columns:auto 1fr;padding:13px;margin-bottom:10px}.embedded-checkout-top>a{width:42px;height:42px}.embedded-checkout-top h2{font-size:17px}.embedded-checkout-top>span{grid-column:2;font-size:9px;margin-top:-9px}.embedded-checkout-layout{grid-template-columns:1fr;gap:10px}.embedded-checkout-summary{position:static;padding:17px}.embedded-checkout-summary h3{font-size:18px}.embedded-checkout-detail{margin:14px 0;padding:11px}.embedded-checkout-total{padding:13px 0}.embedded-checkout-total strong{font-size:22px}.embedded-checkout-summary ul{display:none}.embedded-checkout-panel-head{grid-template-columns:42px 1fr;padding:15px}.embedded-checkout-panel-head>span{width:42px;height:42px}.embedded-checkout-panel #paymentBrick_container{min-height:390px;padding:8px}.embedded-checkout-result{padding:13px}.embedded-pix-result>img{width:190px;height:190px}.embedded-checkout-panel>footer{padding:11px 14px}.embedded-checkout-unavailable{min-height:330px;padding:36px 18px}}

/* Confirmação 3DS do cartão permanece integrada ao checkout do app. */
.embedded-three-ds-result{display:grid;gap:16px}.embedded-three-ds-heading{display:flex;align-items:center;justify-content:center;gap:13px;text-align:left}.embedded-three-ds-heading .embedded-result-icon{flex:0 0 52px;margin:0}.embedded-three-ds-heading small{color:var(--gold-2);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.embedded-three-ds-heading h3{margin:4px 0 5px;font-size:19px}.embedded-three-ds-heading p{max-width:520px;margin:0;color:var(--muted);font-size:10px;line-height:1.5}.embedded-three-ds-result #statusScreenBrick_container{min-height:320px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#111112}
@media(max-width:760px){.embedded-three-ds-heading{align-items:flex-start}.embedded-three-ds-heading .embedded-result-icon{width:44px;height:44px;flex-basis:44px}.embedded-three-ds-heading h3{font-size:17px}.embedded-three-ds-result #statusScreenBrick_container{min-height:360px}}

/* Checkout do próprio profissional: mantém a configuração sensível dentro do V2. */
.barber-checkout-card { max-width:760px; margin-top:16px; }
.barber-checkout-card select { width:100%; min-height:46px; padding:0 13px; color:var(--text); border:1px solid var(--line-strong); border-radius:11px; outline:none; background:#0c0c0d; }
.barber-checkout-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.barber-checkout-card .settings-security-note { margin:0; }
@media (max-width: 640px) { .barber-checkout-fields { grid-template-columns:1fr; } }

/* Histórico concluído e transparência financeira do profissional */
.agenda-history-footer { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:20px; }
.agenda-history-footer > a { min-height:88px; display:grid; grid-template-columns:48px minmax(0,1fr) auto 17px; align-items:center; gap:13px; padding:14px 16px; border:1px solid rgba(255,255,255,.085); border-radius:11px; background:#111213; transition:.18s ease; }
.agenda-history-footer > a:hover { transform:translateY(-1px); border-color:rgba(255,255,255,.15); background:#151617; }
.agenda-history-footer > a.completed { border-color:rgba(50,183,104,.16); background:linear-gradient(120deg,rgba(50,183,104,.055),#111213 60%); }
.agenda-history-footer > a.completed .agenda-cancelled-footer-icon { color:#78c994; border-color:rgba(50,183,104,.22); background:rgba(50,183,104,.07); }
.agenda-history-footer > a.completed .agenda-cancelled-footer-copy small { color:#78b98d; }
.agenda-history-footer > a.cancelled .agenda-cancelled-footer-icon { color:#c97e7e; border-color:rgba(205,85,85,.2); background:rgba(205,85,85,.065); }
.agenda-history-footer > a > b { min-width:27px; height:27px; display:grid; place-items:center; padding:0 7px; border-radius:99px; color:#b4dcbf; background:rgba(50,183,104,.1); font-size:9px; }
.agenda-history-footer > a.cancelled > b { color:#efc4c4; background:rgba(205,85,85,.12); }
.completed-archive { overflow:hidden; border:1px solid rgba(50,183,104,.18); border-radius:13px; background:#111313; box-shadow:0 20px 55px rgba(0,0,0,.18); }
.completed-archive-head { min-height:112px; display:grid; grid-template-columns:52px minmax(0,1fr) auto; align-items:center; gap:16px; padding:20px 22px; border-bottom:1px solid rgba(255,255,255,.07); background:radial-gradient(circle at 90% 0,rgba(50,183,104,.1),transparent 32%),linear-gradient(120deg,#171918,#111313 68%); }
.completed-archive-icon { width:52px; height:52px; display:grid; place-items:center; border:1px solid rgba(50,183,104,.23); border-radius:12px; color:#79cc96; background:rgba(50,183,104,.075); }
.completed-archive-icon .lucide { width:23px; height:23px; }
.completed-archive-head h3 { margin:5px 0; font:500 24px/1.1 Georgia,"Times New Roman",serif; }
.completed-archive-head p { margin:0; color:#7e8380; font-size:9px; line-height:1.5; }
.completed-archive-count { display:grid; justify-items:end; }.completed-archive-count strong { color:#91d4a8; font:500 29px/1 Georgia,"Times New Roman",serif; }.completed-archive-count small { margin-top:5px; color:#696e6b; font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.completed-archive-list { display:grid; gap:1px; background:rgba(255,255,255,.055); }
.completed-record { min-height:96px; display:grid; grid-template-columns:72px 44px minmax(0,1fr) auto auto; align-items:center; gap:14px; padding:15px 18px; background:#121414; }
.completed-record-date { display:grid; justify-items:center; padding-right:14px; border-right:1px solid rgba(255,255,255,.07); }.completed-record-date strong { color:#d5d8d6; font:500 17px/1 Georgia,"Times New Roman",serif; }.completed-record-date span { margin-top:5px; color:#747a76; font-size:9px; }
.completed-record-copy { min-width:0; }.completed-record-copy small { color:#696e6b; font-size:7px; text-transform:uppercase; letter-spacing:.06em; }.completed-record-copy h4 { overflow:hidden; margin:5px 0 4px; color:#dedfdf; font-size:13px; white-space:nowrap; text-overflow:ellipsis; }.completed-record-copy p { overflow:hidden; margin:0; color:#777d79; font-size:9px; white-space:nowrap; text-overflow:ellipsis; }
.completed-record-meta { display:grid; justify-items:end; gap:6px; }.completed-record-meta .status { display:inline-flex; align-items:center; gap:4px; }.completed-record-meta strong { color:#d5d8d6; font-size:11px; }.completed-record-meta small { color:#68a97e; font-size:8px; }
.completed-record-actions { display:grid; gap:6px; }.completed-record-actions .agenda-action { min-height:36px; padding-inline:10px; }
.finance-history-copy > div { flex-wrap:wrap; }.finance-history-copy .status { min-height:20px; display:inline-flex; align-items:center; padding:0 7px; font-size:7px; }

@media (max-width:760px) {
    .agenda-history-footer { grid-template-columns:1fr; }
    .completed-archive-head { min-height:104px; grid-template-columns:45px minmax(0,1fr) auto; gap:12px; padding:17px 14px; }.completed-archive-icon { width:45px; height:45px; border-radius:10px; }.completed-archive-head h3 { font-size:20px; }.completed-archive-count strong { font-size:25px; }
    .completed-record { grid-template-columns:58px 40px minmax(0,1fr) auto; gap:10px; padding:13px; }.completed-record-date { padding-right:10px; }.completed-record-copy h4 { font-size:12px; }.completed-record-actions { grid-column:3/-1; grid-template-columns:1fr 1fr; width:100%; }
}
@media (max-width:430px) {
    .agenda-history-footer > a { grid-template-columns:42px minmax(0,1fr) auto 16px; min-height:78px; padding:12px; gap:11px; }
    .completed-archive-head { grid-template-columns:42px minmax(0,1fr); }.completed-archive-count { grid-column:2; grid-row:2; justify-items:start; display:flex; align-items:baseline; gap:6px; }
    .completed-record { grid-template-columns:54px 38px minmax(0,1fr); }.completed-record-meta { grid-column:2/-1; justify-items:start; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; }.completed-record-actions { grid-column:2/-1; }
}

/* Native administrative service management v45 */
.admin-service-editor[hidden] { display: none !important; }
.admin-service-editor {
    scroll-margin-top: 88px;
    margin: 0 0 16px;
    overflow: hidden;
    border: 1px solid rgba(205,163,61,.25);
    border-top: 2px solid #cda33d;
    border-radius: 13px;
    background: linear-gradient(145deg,rgba(205,163,61,.055),transparent 38%),#111213;
    box-shadow: 0 22px 65px rgba(0,0,0,.23);
}
.admin-service-editor > header {
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 17px 20px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.admin-service-editor h3 { margin: 4px 0 0; color: #ededee; font: 500 24px/1.1 Georgia,"Times New Roman",serif; }
.admin-service-editor header p { margin: 6px 0 0; color: #77787c; font-size: 9px; }
.admin-service-editor form { padding: 20px; }
.admin-service-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.admin-service-form-grid > label { display: grid; align-content: start; gap: 7px; }
.admin-service-form-grid > .wide { grid-column: 1/-1; }
.admin-service-form-grid > label > span:first-child { color: #8a8b8f; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.admin-service-form-grid input:not([type="checkbox"]),
.admin-service-form-grid textarea {
    width: 100%;
    min-height: 47px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 8px;
    outline: 0;
    color: #eeeeef;
    background: #18191a;
    font: inherit;
    font-size: 11px;
    transition: border-color .18s ease,box-shadow .18s ease;
}
.admin-service-form-grid textarea { min-height: 86px; padding-block: 12px; resize: vertical; line-height: 1.5; }
.admin-service-form-grid input:focus,.admin-service-form-grid textarea:focus { border-color: rgba(205,163,61,.65); box-shadow: 0 0 0 3px rgba(205,163,61,.08); }
.input-with-suffix { position: relative; }
.input-with-suffix input { padding-right: 48px !important; }
.input-with-suffix em { position: absolute; top: 50%; right: 13px; transform: translateY(-50%); color: #77787c; font-size: 9px; font-style: normal; }
.admin-service-field-label { color: #8a8b8f; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.admin-service-image { display: grid; gap: 7px; }
.admin-service-image-layout { display: grid; grid-template-columns: 118px minmax(0,1fr); gap: 12px; align-items: stretch; }
.admin-service-image-preview { min-height: 96px; overflow: hidden; position: relative; display: grid; place-items: center; border: 1px solid rgba(205,163,61,.2); border-radius: 10px; background: radial-gradient(circle at 50% 30%,rgba(205,163,61,.1),transparent 56%),#171819; }
.admin-service-image-preview > img { width: 100%; height: 100%; min-height: 96px; display: block; object-fit: cover; }
.admin-service-image-preview > img[hidden],.admin-service-image-preview > span[hidden] { display: none !important; }
.admin-service-image-preview > span { display: grid; justify-items: center; gap: 7px; color: #5f6064; }
.admin-service-image-preview > span .lucide { width: 22px; height: 22px; color: #8d743a; }
.admin-service-image-preview > span small { color: #717276; font-size: 8px; }
.admin-service-image-picker { min-width: 0; position: relative; display: grid !important; align-content: center !important; padding: 15px 17px; border: 1px dashed rgba(205,163,61,.3); border-radius: 10px; background: rgba(205,163,61,.035); cursor: pointer; transition: border-color .18s ease,background .18s ease; }
.admin-service-image-picker:hover { border-color: rgba(205,163,61,.6); background: rgba(205,163,61,.07); }
.admin-service-image-picker input { position: absolute; width: 1px !important; height: 1px !important; min-height: 0 !important; overflow: hidden; opacity: 0; pointer-events: none; }
.admin-service-image-picker > span { display: flex; align-items: center; gap: 12px; }
.admin-service-image-picker > span > .lucide { width: 23px; height: 23px; color: #cda33d; }
.admin-service-image-picker > span > span { display: grid; gap: 4px; }
.admin-service-image-picker strong { color: #e0e0e2; font-size: 11px; }
.admin-service-image-picker small,.admin-service-image-help { color: #727378; font-size: 8px; }
.admin-service-image-help { display: block; line-height: 1.45; }
.admin-service-active { grid-template-columns: auto 1fr; align-items: center; min-height: 64px; padding: 12px 14px; border: 1px solid rgba(255,255,255,.09); border-radius: 9px; background: rgba(255,255,255,.018); cursor: pointer; }
.admin-service-active input { width: 18px; height: 18px; accent-color: #cda33d; }
.admin-service-active > span { display: grid; gap: 4px; }
.admin-service-active > span strong { color: #d8d8da; font-size: 11px; }
.admin-service-active > span small { color: #707176; font-size: 8px; }
.admin-service-form-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.07); }
.role-admin .admin-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.role-admin .admin-service-grid .service-card { position: relative; grid-template-columns: 62px minmax(0,1fr) auto; grid-template-rows: minmax(90px,auto) auto; gap: 13px 16px; overflow: hidden; padding: 15px 16px 0; border-radius: 11px; background: linear-gradient(145deg,rgba(255,255,255,.018),transparent 52%),#111213; }
.role-admin .admin-service-grid .service-card.service-paused { opacity: .7; }
.role-admin .admin-service-grid .service-icon { width: 62px; height: 62px; border-radius: 9px; }
.role-admin .admin-service-grid .service-card h3 { margin-top: 5px; color: #e4e4e6; font-size: 15px; }
.role-admin .admin-service-grid .service-card p { max-width: none; margin-top: 6px; color: #77787c; line-height: 1.45; white-space: normal; }
.role-admin .admin-service-grid .service-meta { align-items: flex-end; }
.admin-service-status { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; color: #8c8d91; font-size: 8px; font-weight: 750; }
.admin-service-status i { width: 6px; height: 6px; border-radius: 50%; background: #7b7c80; }
.admin-service-status.active { color: #72c78d; }
.admin-service-status.active i { background: #5fc47f; box-shadow: 0 0 0 4px rgba(95,196,127,.08); }
.admin-service-actions { grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr 42px; gap: 1px; margin: 0 -16px; border-top: 1px solid rgba(255,255,255,.075); background: rgba(255,255,255,.07); }
.admin-service-actions button { min-height: 45px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border: 0; color: #a8a8ac; background: #131415; cursor: pointer; font-size: 9px; font-weight: 750; }
.admin-service-actions button:hover { color: #e3c266; background: #18191a; }
.admin-service-actions button.danger:hover { color: #e68a8a; }
.admin-service-actions .lucide { width: 14px; height: 14px; }
.admin-cancelled-shortcut.is-summary { cursor: default; }

@media (max-width: 760px) {
    .admin-service-editor { border-radius: 11px; }
    .admin-service-editor > header,.admin-service-editor form { padding: 15px; }
    .admin-service-form-grid { grid-template-columns: 1fr; gap: 11px; }
    .admin-service-form-grid > .wide { grid-column: 1; }
    .role-admin .admin-service-grid { grid-template-columns: 1fr; }
    .role-admin .admin-service-grid .service-card { grid-template-columns: 58px minmax(0,1fr) auto; }
}

@media (max-width: 430px) {
    .admin-service-image-layout { grid-template-columns: 92px minmax(0,1fr); }
    .admin-service-image-preview,.admin-service-image-preview > img { min-height: 86px; }
    .admin-service-image-picker { padding: 12px; }
    .admin-service-image-picker > span { gap: 9px; }
    .admin-service-image-picker > span > .lucide { width: 20px; height: 20px; }
    .role-admin .admin-service-grid .service-card { grid-template-columns: 54px minmax(0,1fr); }
    .role-admin .admin-service-grid .service-icon { width: 54px; height: 54px; }
    .role-admin .admin-service-grid .service-meta { grid-column: 1/-1; display: flex; align-items: center; justify-content: space-between; padding-top: 4px; }
    .role-admin .admin-service-grid .service-meta span { margin-top: 0; }
    .admin-service-status { margin-left: auto !important; }
    .admin-service-form-actions { display: grid; grid-template-columns: 1fr 1fr; }
}

/* Barber agenda rebuild v25 */
.view-agenda.role-barbeiro .content { max-width: 1180px; padding-top: 20px; }
.agenda-pro-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 17px; padding: 8px 2px 18px; border-bottom: 1px solid rgba(255,255,255,.09); }
.agenda-pro-title h2 { margin: 6px 0 7px; font: 500 36px/1 Georgia,"Times New Roman",serif; letter-spacing: -.025em; }
.agenda-pro-title p { max-width: 590px; margin: 0; color: #85868a; font-size: 9px; line-height: 1.6; }
.agenda-pro-actions { display: flex; align-items: center; gap: 8px; }
.agenda-today-link { min-height: 42px; display: inline-flex; align-items: center; gap: 9px; padding: 0 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 8px; color: #d5d5d7; background: #121314; }
.agenda-today-link .lucide { width: 17px; height: 17px; color: #cda33d; }
.agenda-today-link span,.agenda-today-link small { display: block; }
.agenda-today-link span { font-size: 9px; font-weight: 750; }
.agenda-today-link small { margin-bottom: 2px; color: #696a6e; font-size: 6px; text-transform: uppercase; letter-spacing: .08em; }

.agenda-calendar-pro { scroll-margin-top: 72px; overflow: hidden; border: 1px solid rgba(255,255,255,.105); border-radius: 12px; background: #121314; box-shadow: 0 20px 60px rgba(0,0,0,.18); }
.agenda-calendar-top { min-height: 91px; display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 18px 21px; border-bottom: 1px solid rgba(255,255,255,.075); background: linear-gradient(110deg,rgba(255,255,255,.025),transparent 52%),radial-gradient(circle at 92% 0,rgba(202,158,50,.11),transparent 28%); }
.agenda-month-copy h3 { margin: 5px 0 0; font: 500 25px/1.05 Georgia,"Times New Roman",serif; text-transform: capitalize; }
.agenda-month-copy p { margin: 6px 0 0; color: #747579; font-size: 8px; }
.agenda-month-nav { display: grid; grid-template-columns: 38px auto 38px; align-items: center; gap: 7px; }
.agenda-month-nav a { min-width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.11); border-radius: 7px; color: #d2ae53; background: #0e0f10; }
.agenda-month-nav a:hover { border-color: rgba(205,163,61,.44); background: rgba(205,163,61,.07); }
.agenda-month-nav a.month-today { min-width: 66px; padding: 0 11px; color: #b5b5b8; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.agenda-month-nav .lucide { width: 18px; height: 18px; }
.agenda-calendar-body { padding: 12px 14px 14px; background: #0f1011; }
.agenda-calendar-weekdays,.agenda-calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }
.agenda-calendar-weekdays { padding: 0 4px 7px; }
.agenda-calendar-weekdays span { color: #66676b; font-size: 7px; font-weight: 850; text-align: center; text-transform: uppercase; letter-spacing: .12em; }
.agenda-calendar-grid { overflow: hidden; gap: 1px; border: 1px solid rgba(255,255,255,.07); border-radius: 8px; background: rgba(255,255,255,.07); }
.agenda-date { min-width: 0; min-height: 91px; position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: 9px; color: #bebec1; background: #141516; transition: background .16s ease,box-shadow .16s ease,color .16s ease; -webkit-tap-highlight-color: transparent; }
.agenda-date.empty { background: #101112; }
a.agenda-date:hover { z-index: 2; background: #1a1b1c; box-shadow: inset 0 0 0 1px rgba(205,163,61,.4); }
.agenda-date.selected,
.agenda-date.selected:hover,
.agenda-date.selected:focus,
.agenda-date.selected:active { z-index: 3; color: #0d0d0e; background: linear-gradient(145deg,#e8c969,#c99825) !important; box-shadow: inset 0 0 0 1px #f5dd91,0 8px 22px rgba(166,119,16,.24); }
.agenda-date.selected:focus-visible { outline: 2px solid #fff0b0; outline-offset: -3px; }
.agenda-date-top { display: flex; align-items: center; justify-content: space-between; gap: 5px; }
.agenda-date-top b { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; font-size: 9px; }
.agenda-date.today:not(.selected) .agenda-date-top b { color: #0e0e0f; background: #d4a83d; }
.agenda-date-top em { color: #d2aa4b; font-size: 6px; font-style: normal; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.agenda-date.selected .agenda-date-top em { color: rgba(0,0,0,.6); }
.agenda-date-info { min-width: 0; margin-top: 4px; }
.agenda-date-info strong,.agenda-date-info small { display: block; }
.agenda-date-info strong { color: #e0b957; font: 500 18px/1 Georgia,"Times New Roman",serif; }
.agenda-date.selected .agenda-date-info strong { color: #15110a; }
.agenda-date-info small { overflow: hidden; margin-top: 2px; color: #6f7074; font-size: 6px; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; text-overflow: ellipsis; }
.agenda-date.selected .agenda-date-info small { color: rgba(0,0,0,.56); }
.agenda-date-status { display: flex; align-items: center; gap: 4px; min-width: 0; }
.agenda-date-status i { width: 5px; height: 5px; flex: 0 0 5px; border-radius: 50%; background: #d6aa41; }
.agenda-date-status i.completed { background: #62c884; }
.agenda-date-status small { overflow: hidden; margin-left: 2px; color: #616266; font-size: 6px; white-space: nowrap; text-overflow: ellipsis; }
.agenda-date.selected .agenda-date-status i { background: #271d08; }
.agenda-date.selected .agenda-date-status small { color: rgba(0,0,0,.62); }
.agenda-date-empty { display: flex; align-items: center; gap: 5px; color: #48494c; }
.agenda-date-empty .lucide { width: 12px; height: 12px; }
.agenda-date-empty small { font-size: 6px; }
.agenda-calendar-summary { min-height: 61px; display: flex; align-items: center; gap: 0; padding: 0 9px; border-top: 1px solid rgba(255,255,255,.075); background: #121314; }
.agenda-calendar-summary > span { min-width: 116px; padding: 0 14px; border-right: 1px solid rgba(255,255,255,.07); }
.agenda-calendar-summary small,.agenda-calendar-summary strong { display: block; }
.agenda-calendar-summary small { color: #6e6f73; font-size: 6px; text-transform: uppercase; letter-spacing: .09em; }
.agenda-calendar-summary strong { margin-top: 4px; color: #c8c8cb; font-size: 10px; }
.agenda-calendar-summary .selected-date-summary { min-width: 165px; display: grid; grid-template-columns: 29px 1fr; margin-left: auto; border-right: 0; }
.selected-date-summary .lucide { width: 21px; height: 21px; grid-row: 1/3; align-self: center; color: #d2aa48; }

.agenda-pro-controls { display: flex; align-items: stretch; gap: 8px; margin: 11px 0 0; padding: 8px; border: 1px solid rgba(255,255,255,.085); border-radius: 10px; background: #101112; }
.agenda-view-tabs { min-width: 0; display: flex; align-items: center; gap: 5px; }
.agenda-view-tabs a { min-height: 38px; display: inline-flex; align-items: center; gap: 7px; padding: 0 12px; border: 1px solid transparent; border-radius: 7px; color: #747579; background: transparent; font-size: 8px; font-weight: 760; }
.agenda-view-tabs a .lucide { width: 15px; height: 15px; }
.agenda-view-tabs a:hover { color: #d4d4d6; background: #161718; }
.agenda-view-tabs a.active { color: #e0bc61; border-color: rgba(205,163,61,.26); background: rgba(205,163,61,.08); }
.agenda-pro-controls .agenda-filter-toggle { width: auto; min-width: 155px; min-height: 38px; margin-left: auto; padding: 0 11px; border: 1px solid rgba(255,255,255,.09); border-radius: 7px; background: #151617; }
.agenda-pro-controls .agenda-filter-toggle span { gap: 7px; }
.agenda-pro-controls .agenda-advanced-filters { display: none; grid-column: 1/-1; width: 100%; margin: 0; padding: 13px; border-top: 1px solid rgba(255,255,255,.075); }
.agenda-pro-controls.filters-open { display: grid; grid-template-columns: 1fr auto; }
.agenda-pro-controls.filters-open .agenda-advanced-filters { display: grid; }

.agenda-day-panel { scroll-margin-top: 88px; margin-top: 18px; }
.agenda-day-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 10px; padding: 0 2px 12px; border-bottom: 1px solid rgba(255,255,255,.08); }
.agenda-day-heading h3 { margin: 5px 0 0; font: 500 24px/1.1 Georgia,"Times New Roman",serif; text-transform: capitalize; }
.agenda-day-heading p { margin: 5px 0 0; color: #75767a; font-size: 8px; }
.agenda-day-tools { display: flex; align-items: center; gap: 12px; }
.agenda-day-count { min-width: 74px; display: flex; align-items: baseline; justify-content: flex-end; gap: 5px; }
.agenda-day-count strong { color: #d8b45a; font: 500 25px/1 Georgia,"Times New Roman",serif; }
.agenda-day-count small { color: #696a6e; font-size: 7px; }
.agenda-day-tools > a { min-height: 33px; display: inline-flex; align-items: center; gap: 6px; padding: 0 9px; border: 1px solid rgba(255,255,255,.1); border-radius: 7px; color: #9b9ca0; background: #131415; font-size: 7px; font-weight: 750; }
.agenda-day-tools > a .lucide { width: 14px; height: 14px; color: #cda443; }
.agenda-timeline { position: relative; display: grid; gap: 10px; }
.agenda-event { display: grid; grid-template-columns: 68px minmax(0,1fr); gap: 12px; }
.agenda-event-rail { position: relative; display: flex; justify-content: flex-end; padding-top: 15px; }
.agenda-event-rail::after { content: ""; width: 1px; position: absolute; z-index: 0; top: 37px; right: 0; bottom: -20px; background: rgba(255,255,255,.095); }
.agenda-event:last-child .agenda-event-rail::after { bottom: 30px; }
.agenda-event-rail time { padding-right: 13px; text-align: right; }
.agenda-event-rail strong,.agenda-event-rail span { display: block; }
.agenda-event-rail strong { color: #e0e0e2; font-size: 14px; }
.agenda-event-rail span { margin-top: 3px; color: #5f6064; font-size: 7px; }
.agenda-event-rail > i { width: 9px; height: 9px; position: absolute; z-index: 1; top: 20px; right: -4px; border: 2px solid #0b0c0d; border-radius: 50%; background: #8a8b8e; box-shadow: 0 0 0 2px rgba(255,255,255,.1); }
.agenda-event.status-confirmado .agenda-event-rail > i { background: #d2a641; box-shadow: 0 0 0 2px rgba(210,166,65,.18); }
.agenda-event.status-em_andamento .agenda-event-rail > i { background: #6b97ef; box-shadow: 0 0 0 3px rgba(107,151,239,.16); }
.agenda-event.status-concluido .agenda-event-rail > i { background: #62c884; }
.agenda-event.status-cancelado .agenda-event-rail > i,.agenda-event.status-nao_compareceu .agenda-event-rail > i { background: #d86464; }
.agenda-event-card { overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; background: linear-gradient(125deg,#161718,#121314 64%); box-shadow: 0 10px 32px rgba(0,0,0,.13); }
.agenda-event.status-em_andamento .agenda-event-card { border-color: rgba(105,151,239,.3); box-shadow: inset 3px 0 0 #6b97ef,0 12px 35px rgba(0,0,0,.15); }
.agenda-event-card > header { min-height: 77px; display: grid; grid-template-columns: 43px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 13px 15px; }
.agenda-client-avatar { width: 42px; height: 42px; overflow: hidden; display: grid; place-items: center; border: 1px solid rgba(205,163,61,.22); border-radius: 50%; color: #d8b45b; background: #222326; font-size: 9px; font-weight: 850; }
.agenda-client-avatar img { width: 100%; height: 100%; object-fit: cover; }
.agenda-client-copy { min-width: 0; }
.agenda-client-copy > span { display: block; color: #67686c; font-size: 7px; text-transform: uppercase; letter-spacing: .06em; }
.agenda-client-copy h4 { overflow: hidden; margin: 5px 0 3px; color: #e8e8e9; font-size: 13px; white-space: nowrap; text-overflow: ellipsis; }
.agenda-client-copy p { margin: 0; color: #7a7b7f; font-size: 8px; }
.agenda-event-details { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(90px,.45fr) minmax(155px,.7fr); align-items: center; border-top: 1px solid rgba(255,255,255,.065); border-bottom: 1px solid rgba(255,255,255,.065); background: rgba(0,0,0,.11); }
.agenda-event-details > span { min-width: 0; min-height: 60px; display: flex; align-items: center; gap: 10px; padding: 10px 15px; border-right: 1px solid rgba(255,255,255,.065); }
.agenda-event-details > span:last-child { border-right: 0; }
.agenda-event-details .lucide { width: 17px; height: 17px; flex: 0 0 17px; color: #987e3f; }
.agenda-event-details small,.agenda-event-details strong { display: block; }
.agenda-event-details small { color: #65666a; font-size: 6px; text-transform: uppercase; letter-spacing: .07em; }
.agenda-event-details strong { overflow: hidden; margin-top: 4px; color: #bfc0c3; font-size: 9px; line-height: 1.35; text-overflow: ellipsis; }
.agenda-value { display: block!important; }
.agenda-value strong { color: #dedee0; font-size: 11px; }
.agenda-payment.paid .lucide { color: #61c782; }
.agenda-payment.pending .lucide { color: #d3a946; }
.agenda-payment.paid strong { color: #7edc9c; }
.agenda-payment.pending strong { color: #dcb85f; }
.agenda-event-actions { min-height: 56px; display: flex; align-items: center; justify-content: flex-end; gap: 7px; padding: 9px 12px; }
.agenda-action { min-height: 36px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; border: 1px solid rgba(255,255,255,.09); border-radius: 7px; color: #a5a6aa; background: #151617; cursor: pointer; font-size: 8px; font-weight: 780; }
.agenda-action .lucide { width: 14px; height: 14px; }
.agenda-action:hover { color: #ededee; border-color: rgba(255,255,255,.18); }
.agenda-action.primary { color: #0c0c0c; border-color: #d1a541; background: #d1a541; }
.agenda-action.payment { color: #e1ba5f; border-color: rgba(209,165,65,.3); background: rgba(209,165,65,.08); }
.agenda-action.more { padding-inline: 10px; }
.agenda-day-empty { min-height: 140px; display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 23px; border: 1px dashed rgba(255,255,255,.12); border-radius: 10px; background: rgba(255,255,255,.018); }
.agenda-day-empty > span { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 50%; color: #d2aa49; background: rgba(205,163,61,.09); }
.agenda-day-empty h3 { margin: 0; font-size: 13px; }
.agenda-day-empty p { margin: 5px 0 0; color: #747579; font-size: 8px; }
.agenda-pagination { margin-left: 80px; }

@media (max-width: 900px) {
    .agenda-event-details { grid-template-columns: minmax(0,1fr) 110px; }
    .agenda-payment { grid-column: 1/-1; border-top: 1px solid rgba(255,255,255,.065); border-right: 0!important; }
}

@media (max-width: 760px) {
    .view-agenda.role-barbeiro .content { padding-top: 13px; }
    .agenda-pro-hero { align-items: stretch; flex-direction: column; gap: 14px; padding: 3px 1px 15px; }
    .agenda-pro-title h2 { font-size: 31px; }
    .agenda-pro-title p { font-size: 8px; }
    .agenda-pro-actions { display: grid; grid-template-columns: 1fr 1.25fr; }
    .agenda-pro-actions > * { min-width: 0; justify-content: center; }
    .agenda-calendar-top { min-height: 79px; padding: 14px; }
    .agenda-month-copy h3 { font-size: 21px; }
    .agenda-month-copy p { display: none; }
    .agenda-month-nav { grid-template-columns: 34px auto 34px; gap: 5px; }
    .agenda-month-nav a { min-width: 34px; height: 34px; }
    .agenda-month-nav a.month-today { min-width: 54px; padding-inline: 7px; }
    .agenda-calendar-body { padding: 8px; }
    .agenda-calendar-weekdays { padding-bottom: 6px; }
    .agenda-calendar-weekdays span { font-size: 6px; }
    .agenda-date { min-height: 61px; padding: 5px; }
    .agenda-date-top b { width: 21px; height: 21px; font-size: 8px; }
    .agenda-date-top em { font-size: 5px; }
    .agenda-date-info strong { font-size: 11px; }
    .agenda-date-info small { display: none; }
    .agenda-date-status small,.agenda-date-empty small { display: none; }
    .agenda-date-empty .lucide { width: 10px; height: 10px; }
    .agenda-calendar-summary { min-height: 54px; padding: 0; }
    .agenda-calendar-summary > span { min-width: 0; flex: 1 1 0; padding: 0 7px; }
    .agenda-calendar-summary .selected-date-summary { min-width: 0; display: block; margin-left: 0; }
    .agenda-calendar-summary .selected-date-summary .lucide { display: none; }
    .agenda-pro-controls { display: grid; grid-template-columns: 1fr auto; padding: 6px; }
    .agenda-view-tabs { overflow-x: auto; scrollbar-width: none; }
    .agenda-view-tabs a { min-width: 72px; flex: 0 0 auto; flex-direction: column; gap: 3px; padding: 6px 9px; }
    .agenda-view-tabs a .lucide { width: 14px; height: 14px; }
    .agenda-pro-controls .agenda-filter-toggle { min-width: 42px; width: 42px; padding: 0; }
    .agenda-pro-controls .agenda-filter-toggle span { font-size: 0; }
    .agenda-pro-controls .agenda-filter-toggle > .lucide { display: none; }
    .agenda-pro-controls.filters-open { grid-template-columns: 1fr auto; }
    .agenda-pro-controls.filters-open .agenda-advanced-filters { grid-template-columns: 1fr 1fr; }
    .agenda-advanced-filters .filter-search,.agenda-advanced-filters .custom-period { grid-column: 1/-1; }
    .agenda-day-panel { scroll-margin-top: 70px; margin-top: 16px; }
    .agenda-day-heading { align-items: flex-start; }
    .agenda-day-heading h3 { font-size: 20px; }
    .agenda-day-heading p { font-size: 7px; }
    .agenda-day-count { flex-direction: column; align-items: flex-end; gap: 1px; }
    .agenda-day-count strong { font-size: 21px; }
    .agenda-day-tools { align-items: flex-end; flex-direction: column; gap: 5px; }
    .agenda-day-tools > a { min-height: 28px; padding-inline: 7px; }
    .agenda-event { grid-template-columns: 49px minmax(0,1fr); gap: 8px; }
    .agenda-event-rail { padding-top: 14px; }
    .agenda-event-rail time { padding-right: 9px; }
    .agenda-event-rail strong { font-size: 11px; }
    .agenda-event-rail span { font-size: 6px; }
    .agenda-event-rail > i { top: 18px; }
    .agenda-event-card > header { grid-template-columns: 38px minmax(0,1fr); min-height: 73px; gap: 9px; padding: 11px; }
    .agenda-client-avatar { width: 37px; height: 37px; }
    .agenda-client-copy h4 { font-size: 11px; }
    .agenda-event-card > header > .status { grid-column: 2; width: fit-content; margin-top: -2px; }
    .agenda-event-details { grid-template-columns: 1fr 85px; }
    .agenda-event-details > span { min-height: 55px; padding: 9px 11px; }
    .agenda-event-details strong { font-size: 8px; }
    .agenda-event-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); min-height: auto; gap: 6px; padding: 8px; }
    .agenda-action { width: 100%; min-height: 38px; padding-inline: 7px; }
    .agenda-action.more:last-child:nth-child(3) { grid-column: 1/-1; }
    .agenda-day-empty { grid-template-columns: 40px minmax(0,1fr); padding: 17px; }
    .agenda-day-empty > a { grid-column: 1/-1; width: 100%; }
    .agenda-pagination { margin-left: 57px; }
}

@media (max-width: 430px) {
    .agenda-pro-title h2 { font-size: 29px; }
    .agenda-today-link { padding-inline: 9px; }
    .agenda-month-copy .eyebrow { display: none; }
    .agenda-month-copy h3 { font-size: 18px; }
    .agenda-month-nav { grid-template-columns: 31px auto 31px; }
    .agenda-month-nav a { min-width: 31px; height: 31px; }
    .agenda-month-nav a.month-today { min-width: 46px; font-size: 7px; }
    .agenda-calendar-body { padding: 6px; }
    .agenda-date { min-height: 54px; padding: 4px; }
    .agenda-date-top b { width: 19px; height: 19px; }
    .agenda-date-top em { display: none; }
    .agenda-date-info strong { font-size: 9px; }
    .agenda-date-status { gap: 3px; }
    .agenda-date-status i { width: 4px; height: 4px; flex-basis: 4px; }
    .agenda-calendar-summary > span { min-width: 92px; }
    .agenda-view-tabs a { min-width: 66px; font-size: 7px; }
    .agenda-day-heading h3 { font-size: 18px; }
    .agenda-event { grid-template-columns: 43px minmax(0,1fr); gap: 6px; }
    .agenda-event-rail time { padding-right: 7px; }
    .agenda-event-rail strong { font-size: 10px; }
    .agenda-event-card { border-radius: 8px; }
    .agenda-service .lucide { display: none; }
    .agenda-event-details { grid-template-columns: 1fr 72px; }
    .agenda-event-details > span { padding-inline: 8px; }
    .agenda-action span { font-size: 7px; }
}

/* Barber booking & operations v24 */
.barber-calendar { overflow: hidden; margin: 14px 0 11px; border: 1px solid rgba(255,255,255,.105); border-radius: 14px; background: linear-gradient(145deg,#151617,#101112); box-shadow: 0 16px 45px rgba(0,0,0,.15); }
.barber-calendar-head { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 19px; border-bottom: 1px solid rgba(255,255,255,.075); background: radial-gradient(circle at 88% 0,rgba(207,164,57,.1),transparent 30%); }
.barber-calendar-head h3 { margin: 4px 0 0; font: 500 21px/1.15 Georgia,"Times New Roman",serif; }
.barber-calendar-head p { margin: 5px 0 0; color: #747579; font-size: 8px; }
.barber-calendar-head nav { display: grid; grid-template-columns: 38px minmax(125px,auto) 38px; align-items: center; gap: 7px; }
.barber-calendar-head nav a { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.11); border-radius: 8px; color: #d1aa4c; background: #101112; }
.barber-calendar-head nav a:hover { border-color: rgba(207,164,57,.45); background: rgba(207,164,57,.07); }
.barber-calendar-head nav .lucide { width: 18px; height: 18px; }
.barber-calendar-head nav strong { color: #dedee0; font: 500 14px/1 Georgia,serif; text-align: center; text-transform: capitalize; }
.barber-calendar-weekdays,.barber-calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }
.barber-calendar-weekdays { padding: 0 10px; border-bottom: 1px solid rgba(255,255,255,.06); background: #0f1011; }
.barber-calendar-weekdays span { padding: 10px 7px; color: #67686c; font-size: 7px; font-weight: 800; text-align: center; text-transform: uppercase; letter-spacing: .11em; }
.barber-calendar-grid { gap: 1px; padding: 1px; background: rgba(255,255,255,.055); }
.calendar-day { min-width: 0; min-height: 76px; position: relative; display: flex; align-items: flex-start; justify-content: space-between; gap: 7px; padding: 10px; color: #b9b9bc; background: #121314; transition: background .16s ease,border-color .16s ease,transform .16s ease; }
.calendar-day.empty { background: #0e0f10; opacity: .5; }
a.calendar-day:hover { z-index: 1; background: #191a1b; box-shadow: inset 0 0 0 1px rgba(207,164,57,.32); }
.calendar-day.today { box-shadow: inset 0 0 0 1px rgba(207,164,57,.35); }
.calendar-day.selected { z-index: 2; color: #fff; background: linear-gradient(145deg,rgba(207,164,57,.2),rgba(207,164,57,.065)); box-shadow: inset 0 0 0 2px #cda239; }
.calendar-day-number { width: 25px; height: 25px; flex: 0 0 25px; display: grid; place-items: center; border-radius: 50%; font-size: 9px; font-weight: 780; }
.calendar-day.today .calendar-day-number { color: #0b0b0b; background: #d0a640; }
.calendar-day-count { min-width: 0; padding-top: 2px; text-align: right; }
.calendar-day-count b,.calendar-day-count small { display: block; }
.calendar-day-count b { color: #e2bf66; font-size: 12px; }
.calendar-day-count small { margin-top: 2px; color: #68696d; font-size: 6px; text-transform: uppercase; letter-spacing: .06em; }
.calendar-day-free { padding-top: 7px; color: #4d4e52; font-size: 7px; }
.calendar-day-dots { position: absolute; left: 11px; bottom: 9px; display: flex; gap: 4px; }
.calendar-day-dots i,.barber-calendar > footer i { width: 5px; height: 5px; display: inline-block; border-radius: 50%; background: #d0a640; }
.calendar-day-dots i.done,.barber-calendar > footer i.done { background: #5fc983; }
.barber-calendar > footer { min-height: 40px; display: flex; align-items: center; gap: 16px; padding: 8px 17px; border-top: 1px solid rgba(255,255,255,.065); color: #747579; font-size: 7px; }
.barber-calendar > footer > span { display: inline-flex; align-items: center; gap: 6px; }
.barber-calendar > footer strong { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; color: #d2ad50; font-size: 8px; font-weight: 750; }
.barber-calendar > footer strong .lucide { width: 14px; height: 14px; }
.appointment-list-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin: 15px 2px 9px; }
.appointment-list-heading h3 { margin: 4px 0 0; font: 500 20px/1.1 Georgia,"Times New Roman",serif; text-transform: capitalize; }
.appointment-list-heading > span { color: #77787c; font-size: 8px; }

.view-novo .content { padding-top: 18px; }
.booking-command-head { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: start; gap: 18px; margin-bottom: 14px; padding: 24px 26px 20px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: radial-gradient(circle at 86% 10%,rgba(207,164,57,.16),transparent 28%),linear-gradient(135deg,#191a1b,#101112 70%); box-shadow: 0 18px 50px rgba(0,0,0,.2); }
.booking-command-head::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(#e2bf65,#9d7318); }
.booking-command-copy h2 { margin: 6px 0 7px; font: 500 31px/1.05 Georgia,"Times New Roman",serif; letter-spacing: -.025em; }
.booking-command-copy p { max-width: 650px; margin: 0; color: #9d9ea2; font-size: 10px; line-height: 1.6; }
.booking-back-link { min-height: 39px; display: inline-flex; align-items: center; gap: 8px; padding: 0 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 9px; color: #d5d5d7; background: rgba(255,255,255,.025); font-size: 9px; font-weight: 750; }
.booking-back-link:hover { color: #efd17f; border-color: rgba(207,164,57,.45); background: rgba(207,164,57,.07); }
.booking-back-link .lucide { width: 17px; height: 17px; }
.booking-progress { grid-column: 1/-1; display: grid; grid-template-columns: repeat(4,1fr); gap: 0; margin-top: 7px; }
.booking-progress > span { min-width: 0; position: relative; display: grid; grid-template-columns: 28px minmax(0,1fr); align-items: center; gap: 8px; color: #68696d; }
.booking-progress > span:not(:last-child)::after { content: ""; height: 1px; position: absolute; z-index: 0; top: 14px; left: 34px; right: 8px; background: rgba(255,255,255,.1); }
.booking-progress b { width: 28px; height: 28px; position: relative; z-index: 1; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; background: #171819; font-size: 9px; }
.booking-progress small { position: relative; z-index: 1; width: fit-content; padding-right: 8px; background: #141516; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.booking-progress > span.active { color: #dfbd64; }
.booking-progress > span.active b { color: #111; border-color: #d7ae48; background: #d7ae48; box-shadow: 0 0 0 4px rgba(207,164,57,.1); }
.booking-progress > span.complete { color: #8fcba3; }
.booking-progress > span.complete b { color: #09100b; border-color: #63bb81; background: #63bb81; }
.booking-progress > span.complete:not(:last-child)::after { background: rgba(99,187,129,.36); }

.view-novo .booking-v24 { grid-template-columns: minmax(0,1fr) 318px; gap: 14px; }
.view-novo .booking-v24 .manual-booking-main { gap: 11px; }
.view-novo .booking-v24 .operator-section { overflow: visible; border-color: rgba(255,255,255,.1); border-radius: 12px; background: #121314; box-shadow: none; }
.view-novo .booking-v24 .operator-section > header { min-height: 78px; padding: 15px 17px; border-bottom-color: rgba(255,255,255,.075); background: linear-gradient(90deg,rgba(255,255,255,.025),transparent); }
.view-novo .operator-section > header h3 { font: 500 19px/1.15 Georgia,"Times New Roman",serif; }
.view-novo .operator-section > header p { margin: 5px 0 0; color: #7f8084; font-size: 8px; line-height: 1.45; }
.view-novo .operator-section > header .section-mark { width: 24px; height: 24px; color: #806d3d; }
.view-novo .step-number { width: 33px; height: 33px; flex: 0 0 33px; display: grid; place-items: center; border: 1px solid rgba(207,164,57,.28); border-radius: 9px; color: #d2ad4f; background: rgba(207,164,57,.06); font: 700 9px/1 Arial,sans-serif; letter-spacing: .08em; }
.client-lookup { margin: 14px 16px 10px; }
.client-lookup > span { color: #6e6f72; }
.operator-subheading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 13px 16px 0; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.07); }
.operator-subheading span { color: #c7c8ca; font-size: 9px; font-weight: 750; }
.operator-subheading small { color: #65666a; font-size: 7px; text-transform: uppercase; letter-spacing: .08em; }
.view-novo .operator-fields { padding: 10px 16px 16px; }
.view-novo .operator-fields label > span,.view-novo .schedule-picker-row label > span { font-size: 8px; }
.view-novo .operator-fields input,.view-novo .schedule-picker-row input,.view-novo .booking-notes textarea { border-radius: 8px; background: #0e0f10; }
.view-novo .compact-search { margin-left: auto; }

.view-novo .manual-service-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; padding: 13px; }
.view-novo .manual-service-option { min-height: 88px; grid-template-columns: 42px minmax(0,1fr) auto; grid-template-rows: 1fr; align-items: center; gap: 9px; padding: 10px; border-radius: 9px; background: #0f1011; }
.view-novo .manual-service-option:hover { border-color: rgba(207,164,57,.28); background: #141516; }
.view-novo .manual-service-option.selected { border-color: rgba(207,164,57,.62); background: linear-gradient(135deg,rgba(207,164,57,.12),rgba(207,164,57,.03)); box-shadow: inset 0 0 0 1px rgba(207,164,57,.08); }
.view-novo .manual-service-visual { width: 42px; height: 48px; border-radius: 7px; }
.view-novo .manual-service-copy strong { font-size: 10px; line-height: 1.25; }
.view-novo .manual-service-copy small { margin-top: 5px; }
.view-novo .manual-service-option > b { font-size: 9px; }
.view-novo .manual-service-check { top: 5px; right: 5px; }
.view-novo .schedule-picker-row { padding: 13px 16px; }
.view-novo .duration-summary { border-radius: 8px; background: #0f1011; }
.view-novo .duration-summary span { display: block; margin-top: 4px; color: #65666a; font-size: 7px; }
.view-novo .manual-slots { padding: 0 16px 16px; }
.view-novo .manual-slots section > div button { min-height: 36px; border-radius: 7px; }

.booking-payment-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(230px,.9fr); gap: 13px; padding: 14px 16px 10px; }
.booking-choice-group { min-width: 0; margin: 0; padding: 0; border: 0; }
.booking-choice-group legend { margin-bottom: 9px; color: #9c9da1; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
.booking-choice-group > div { display: grid; gap: 7px; }
.payment-method-group > div { grid-template-columns: repeat(3,minmax(0,1fr)); }
.booking-choice-group label { min-width: 0; cursor: pointer; }
.booking-choice-group input { position: absolute; opacity: 0; pointer-events: none; }
.booking-choice-group label > span { min-height: 64px; display: grid; grid-template-columns: 27px minmax(0,1fr); grid-template-rows: auto auto; align-content: center; column-gap: 8px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.09); border-radius: 8px; background: #0e0f10; transition: .18s ease; }
.booking-choice-group label:hover > span { border-color: rgba(207,164,57,.28); background: #131415; }
.booking-choice-group input:checked + span { border-color: rgba(207,164,57,.62); background: rgba(207,164,57,.09); box-shadow: inset 0 0 0 1px rgba(207,164,57,.08); }
.booking-choice-group label .lucide { width: 20px; height: 20px; grid-row: 1/3; align-self: center; color: #8a8b8f; }
.booking-choice-group input:checked + span .lucide { color: #d4ad4b; }
.booking-choice-group b { overflow: hidden; color: #d8d8da; font-size: 9px; white-space: nowrap; text-overflow: ellipsis; }
.booking-choice-group small { overflow: hidden; margin-top: 3px; color: #66676b; font-size: 7px; white-space: nowrap; text-overflow: ellipsis; }
.payment-status-group > div { grid-template-columns: 1fr; }
.payment-status-group label > span { min-height: 68px; }
.payment-status-group .paid-choice input:checked + span { border-color: rgba(92,188,126,.6); background: rgba(92,188,126,.09); }
.payment-status-group .paid-choice input:checked + span .lucide { color: #70d493; }
.booking-payment-note { display: flex; align-items: center; gap: 9px; margin: 0 16px 16px; padding: 10px 12px; border-left: 2px solid #c59a35; color: #aaa166; background: rgba(197,154,53,.055); }
.booking-payment-note.paid { border-left-color: #5cbb7d; color: #7cc994; background: rgba(92,187,125,.055); }
.booking-payment-note .lucide { width: 16px; height: 16px; flex: 0 0 16px; }
.booking-payment-note p { margin: 0; font-size: 8px; line-height: 1.5; }

.view-novo .booking-v24 .manual-booking-summary { top: 82px; overflow: hidden; padding: 0; border: 1px solid rgba(255,255,255,.11); border-top: 0; border-radius: 12px; background: #121314; box-shadow: 0 18px 50px rgba(0,0,0,.22); }
.view-novo .booking-v24 .manual-booking-summary::before { content: ""; display: block; height: 3px; background: linear-gradient(90deg,#9b7017,#e0bc5b,#9b7017); }
.summary-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; padding: 17px 17px 13px; border-bottom: 1px solid rgba(255,255,255,.075); }
.summary-heading h3 { margin: 4px 0 0!important; font-size: 19px!important; }
.summary-kicker { color: #77787c; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.summary-payment-state { display: inline-flex; align-items: center; padding: 6px 8px; border: 1px solid rgba(223,171,62,.28); border-radius: 6px; color: #e0b655; background: rgba(223,171,62,.07); font-size: 7px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.summary-payment-state.paid { color: #70d493; border-color: rgba(92,188,126,.28); background: rgba(92,188,126,.07); }
.summary-lines { display: grid; padding: 4px 17px; }
.summary-lines > span { display: grid; grid-template-columns: 69px minmax(0,1fr); gap: 8px; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.summary-lines small { color: #6f7074; font-size: 8px; }
.summary-lines strong { overflow: hidden; color: #c7c7ca; font-size: 9px; line-height: 1.35; text-align: right; text-overflow: ellipsis; }
.summary-payment-line { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 11px 17px; padding: 11px; border: 1px solid rgba(207,164,57,.16); border-radius: 8px; background: rgba(207,164,57,.045); }
.summary-payment-line > span { display: flex; align-items: center; gap: 7px; color: #8b7742; }
.summary-payment-line .lucide { width: 17px; height: 17px; }
.summary-payment-line small { font-size: 7px; text-transform: uppercase; }
.summary-payment-line > div { min-width: 0; text-align: right; }
.summary-payment-line strong,.summary-payment-line em { display: block; }
.summary-payment-line strong { color: #ded4b7; font-size: 9px; }
.summary-payment-line em { margin-top: 3px; color: #77787b; font-size: 7px; font-style: normal; }
.booking-notes { display: block; padding: 0 17px 11px; }
.booking-notes > span { display: block; margin-bottom: 6px; color: #797a7e; font-size: 8px; }
.booking-notes textarea { width: 100%; resize: vertical; }
.booking-total { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin: 0 17px; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.08); }
.booking-total small,.booking-total em { display: block; }
.booking-total small { color: #b8b8bb; font-size: 9px; font-weight: 750; }
.booking-total em { margin-top: 4px; color: #66676a; font-size: 7px; font-style: normal; }
.booking-total > strong { color: #e0bc60; font: 500 22px/1 Georgia,"Times New Roman",serif; }
.booking-submit { width: calc(100% - 34px)!important; min-height: 51px; margin: 0 17px; border-radius: 9px!important; }
.booking-submit > span { display: block; text-align: left; }
.booking-submit small { display: block; margin-top: 2px; color: rgba(0,0,0,.56); font-size: 7px; font-weight: 650; }
.summary-warning { display: flex; align-items: flex-start; gap: 7px; margin: 11px 17px 16px; color: #696a6e; font-size: 7px; line-height: 1.45; }
.summary-warning .lucide { width: 13px; height: 13px; flex: 0 0 13px; color: #8b7742; }

.appointment-payment-meta { display: inline-flex; align-items: center; gap: 7px; }
.payment-method-label { color: #77787d; font-size: 8px; }
.icon-action.attention { color: #e1b95d; border-color: rgba(207,164,57,.28); background: rgba(207,164,57,.075); }
.appointment-payment-card { overflow: hidden; margin-top: 12px; border: 1px solid rgba(223,171,62,.24); border-radius: 11px; background: rgba(223,171,62,.045); }
.appointment-payment-card.paid { border-color: rgba(92,188,126,.24); background: rgba(92,188,126,.045); }
.appointment-payment-card > header { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 13px; }
.payment-state-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 9px; color: #e2b95c; background: rgba(223,171,62,.11); }
.appointment-payment-card.paid .payment-state-icon { color: #70d493; background: rgba(92,188,126,.11); }
.appointment-payment-card header small,.appointment-payment-card header strong,.appointment-payment-card header p { display: block; }
.appointment-payment-card header small { color: #76777b; font-size: 7px; text-transform: uppercase; letter-spacing: .09em; }
.appointment-payment-card header strong { margin-top: 3px; font-size: 11px; }
.appointment-payment-card header p { margin: 4px 0 0; color: #898a8e; font-size: 8px; }
.appointment-payment-card header > a { display: inline-flex; align-items: center; gap: 6px; color: #caaa59; font-size: 8px; font-weight: 750; }
.appointment-payment-card header > a .lucide { width: 14px; height: 14px; }
.appointment-payment-facts { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(255,255,255,.065); border-bottom: 1px solid rgba(255,255,255,.065); background: rgba(0,0,0,.12); }
.appointment-payment-facts > span { padding: 10px 13px; }
.appointment-payment-facts > span + span { border-left: 1px solid rgba(255,255,255,.065); }
.appointment-payment-facts small,.appointment-payment-facts strong { display: block; }
.appointment-payment-facts small { color: #747579; font-size: 7px; text-transform: uppercase; }
.appointment-payment-facts strong { margin-top: 4px; font-size: 10px; }
.appointment-payment-form { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 10px; padding: 12px 13px; }
.appointment-payment-form label { display: block; margin-bottom: 6px; color: #a1a2a5; font-size: 8px; font-weight: 700; }
.appointment-payment-form select { width: 100%; min-height: 40px; padding: 0 34px 0 11px; border: 1px solid rgba(255,255,255,.13); border-radius: 8px; color: #eee; background-color: #0d0e0f; }
.payment-register-button { min-height: 40px; display: inline-flex; align-items: center; gap: 8px; padding: 0 13px; border: 0; border-radius: 8px; color: #0c0c0c; background: #d4aa43; cursor: pointer; font-size: 9px; font-weight: 850; }
.payment-register-button .lucide { width: 16px; height: 16px; }
.payment-register-button small { display: block; margin-top: 1px; color: rgba(0,0,0,.55); font-size: 7px; font-weight: 650; }
.appointment-detail-actions .attention { color: #0c0c0c; background: #d4aa43; }

@media (max-width: 1080px) {
    .view-novo .booking-v24 { grid-template-columns: 1fr; }
    .view-novo .booking-v24 .manual-booking-summary { position: static; }
    .booking-payment-grid { grid-template-columns: 1fr; }
    .payment-status-group > div { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
    .barber-calendar { margin-top: 10px; border-radius: 11px; }
    .barber-calendar-head { min-height: 72px; padding: 12px; }
    .barber-calendar-head h3 { font-size: 17px; }
    .barber-calendar-head p { display: none; }
    .barber-calendar-head nav { grid-template-columns: 32px minmax(100px,auto) 32px; gap: 4px; }
    .barber-calendar-head nav a { width: 32px; height: 32px; }
    .barber-calendar-head nav strong { font-size: 11px; }
    .barber-calendar-weekdays { padding: 0 3px; }
    .barber-calendar-weekdays span { padding: 8px 2px; font-size: 6px; }
    .calendar-day { min-height: 54px; padding: 6px 5px; }
    .calendar-day-number { width: 22px; height: 22px; flex-basis: 22px; font-size: 8px; }
    .calendar-day-count { padding-top: 3px; }
    .calendar-day-count b { font-size: 8px; }
    .calendar-day-count small,.calendar-day-free { display: none; }
    .calendar-day-dots { left: 6px; bottom: 5px; }
    .barber-calendar > footer { min-height: 35px; gap: 10px; padding: 7px 10px; }
    .barber-calendar > footer strong { font-size: 7px; }
    .appointment-list-heading { margin-top: 12px; }
    .appointment-list-heading h3 { font-size: 17px; }
    .view-novo .content { padding-top: 10px; }
    .booking-command-head { grid-template-columns: 1fr auto; margin-bottom: 10px; padding: 18px 15px 14px; border-radius: 11px; }
    .booking-command-copy h2 { font-size: 25px; }
    .booking-command-copy p { font-size: 8px; }
    .booking-back-link { width: 40px; padding: 0; justify-content: center; }
    .booking-back-link span { display: none; }
    .booking-back-link .lucide { width: 20px; height: 20px; }
    .booking-progress { margin-top: 3px; }
    .booking-progress > span { grid-template-columns: 24px minmax(0,1fr); gap: 5px; }
    .booking-progress b { width: 24px; height: 24px; }
    .booking-progress > span:not(:last-child)::after { top: 12px; left: 29px; right: 5px; }
    .booking-progress small { font-size: 6px; }
    .view-novo .booking-v24 .operator-section > header { min-height: 70px; padding: 12px; }
    .view-novo .operator-section > header p { font-size: 7px; }
    .view-novo .step-number { width: 29px; height: 29px; flex-basis: 29px; }
    .view-novo .operator-section > header .section-mark { display: none; }
    .client-lookup { margin: 11px 11px 8px; }
    .operator-subheading { margin-inline: 11px; }
    .view-novo .operator-fields { grid-template-columns: 1fr; gap: 8px; padding: 9px 11px 12px; }
    .view-novo .compact-search { width: 42px; overflow: hidden; }
    .view-novo .compact-search input { width: 0; opacity: 0; }
    .view-novo .compact-search:focus-within { width: min(46vw,190px); }
    .view-novo .compact-search:focus-within input { width: 100%; opacity: 1; }
    .view-novo .manual-service-grid { grid-template-columns: 1fr 1fr; gap: 7px; padding: 10px; }
    .view-novo .manual-service-option { min-height: 84px; grid-template-columns: 38px minmax(0,1fr); grid-template-rows: auto auto; align-content: center; gap: 5px 8px; padding: 8px; }
    .view-novo .manual-service-visual { width: 38px; height: 48px; grid-row: 1/3; }
    .view-novo .manual-service-option > b { grid-column: 2; }
    .view-novo .schedule-picker-row { padding: 11px; }
    .view-novo .manual-slots { padding: 0 11px 12px; }
    .booking-payment-grid { padding: 11px; }
    .payment-method-group > div { grid-template-columns: 1fr 1fr; }
    .payment-status-group > div { grid-template-columns: 1fr; }
    .booking-payment-note { margin: 0 11px 12px; }
    .appointment-payment-meta { align-items: flex-start; flex-direction: column; gap: 4px; }
    .appointment-charge .payment-pill { flex-basis: auto; }
    .appointment-payment-card > header { grid-template-columns: 36px minmax(0,1fr); }
    .appointment-payment-card header > a { grid-column: 2; width: fit-content; }
    .appointment-payment-form { grid-template-columns: 1fr; }
    .payment-register-button { width: 100%; justify-content: center; }
}

@media (max-width: 430px) {
    .barber-calendar-head > div .eyebrow { display: none; }
    .barber-calendar-head nav { grid-template-columns: 29px minmax(94px,auto) 29px; }
    .barber-calendar-head nav a { width: 29px; height: 29px; }
    .calendar-day { min-height: 49px; padding: 5px 3px; }
    .calendar-day-number { width: 20px; height: 20px; flex-basis: 20px; }
    .calendar-day-dots { left: 5px; bottom: 4px; }
    .barber-calendar > footer span:nth-child(2) { display: none; }
    .booking-command-copy p { display: none; }
    .booking-command-head { align-items: center; }
    .booking-progress small { display: none; }
    .booking-progress > span { grid-template-columns: 24px 1fr; }
    .booking-progress > span:not(:last-child)::after { right: 7px; }
    .view-novo .manual-service-copy strong { font-size: 9px; }
    .booking-choice-group label > span { min-height: 59px; padding: 8px; }
    .summary-heading { padding-inline: 14px; }
    .summary-lines,.booking-notes { padding-inline: 14px; }
    .summary-payment-line,.booking-total { margin-inline: 14px; }
    .booking-submit { width: calc(100% - 28px)!important; margin-inline: 14px; }
    .summary-warning { margin-inline: 14px; }
}

/* Barber V2 — operator workspace */
[hidden] { display: none !important; }
.role-barbeiro {
    --sidebar: 238px;
    --surface: #111213;
    --surface-2: #171819;
    --surface-3: #202123;
    --line: rgba(255,255,255,.09);
    --line-strong: rgba(255,255,255,.17);
    --gold: #b88b29;
    --gold-2: #d6ad4a;
    --gold-soft: rgba(198,151,43,.10);
    background: #090a0a;
}
.role-barbeiro .side-nav { padding: 22px 14px; border-color: #252628; background: #0c0d0d; backdrop-filter: none; }
.role-barbeiro .brand { padding: 0 10px 19px; border-bottom: 1px solid #242526; }
.role-barbeiro .brand-monogram { border-radius: 3px; background: #c99c35; box-shadow: none; }
.role-barbeiro .environment-badge { margin: 18px 10px 12px; font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.role-barbeiro .side-nav nav { gap: 1px; }
.role-barbeiro .side-nav nav a { min-height: 43px; position: relative; padding: 0 12px; border-radius: 2px; font-size: 12px; }
.role-barbeiro .side-nav nav a:hover { background: #151616; }
.role-barbeiro .side-nav nav a.active { color: #f1d47d; background: #181713; box-shadow: none; }
.role-barbeiro .side-nav nav a.active::before { content: ""; width: 2px; position: absolute; inset: 8px auto 8px 0; background: var(--gold-2); }
.role-barbeiro .topbar { height: 74px; padding-inline: clamp(22px,3.5vw,48px); background: rgba(9,10,10,.94); }
.role-barbeiro .topbar h1 { font-family: Georgia, "Times New Roman", serif; font-size: 23px; font-weight: 500; letter-spacing: -.015em; }
.role-barbeiro .real-data { border-radius: 2px; background: transparent; }
.role-barbeiro .content { padding: 28px clamp(22px,3.5vw,48px) 60px; }
.role-barbeiro .section-heading { align-items: center; margin-bottom: 23px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.role-barbeiro .section-heading h2 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(29px,3.2vw,42px); font-weight: 500; letter-spacing: -.025em; }
.role-barbeiro .section-heading p { max-width: 690px; margin-top: 8px; font-size: 12px; }
.role-barbeiro .eyebrow { margin-bottom: 8px; color: #c79d3c; font-size: 9px; letter-spacing: .18em; }
.role-barbeiro .gold-button,
.role-barbeiro .outline-button,
.role-barbeiro .ghost-button,
.role-barbeiro .danger-button { border-radius: 3px; box-shadow: none; }
.role-barbeiro .gold-button { background: #c79a32; }
.role-barbeiro .gold-button:hover { background: #d8ae4a; transform: none; }
.role-barbeiro .outline-button { background: transparent; }
.role-barbeiro .search-box,
.role-barbeiro .date-chip,
.role-barbeiro .tabs,
.role-barbeiro .tabs button,
.role-barbeiro .status,
.role-barbeiro .payment-pill,
.role-barbeiro .pagination a,
.role-barbeiro .pagination span { border-radius: 3px; }
.role-barbeiro .metric-grid { gap: 1px; overflow: hidden; border: 1px solid var(--line); background: var(--line); }
.role-barbeiro .metric-grid article { min-height: 116px; border: 0; border-radius: 0; background: #111213; }
.role-barbeiro .metric-grid article::after { display: none; }
.role-barbeiro .metric-grid .lucide { width: 18px; height: 18px; color: #b99441; }
.role-barbeiro .panel-card,
.role-barbeiro .data-table-card,
.role-barbeiro .chart-card,
.role-barbeiro .queue-list,
.role-barbeiro .agenda-toolbar,
.role-barbeiro .availability-card,
.role-barbeiro .finance-list-card,
.role-barbeiro .available-services,
.role-barbeiro .profile-form-card,
.role-barbeiro .profile-card,
.role-barbeiro .premium-empty { border-radius: 4px; background: #111213; box-shadow: none; }
.role-barbeiro .quick-grid { gap: 1px; background: var(--line); }
.role-barbeiro .quick-grid a { border: 0; border-radius: 0; background: #171819; }
.role-barbeiro .quick-grid a > .lucide:first-child { border-radius: 2px; }
.role-barbeiro .focus-service-card { border-radius: 3px; background: linear-gradient(90deg,rgba(199,154,40,.09),#111213 48%); box-shadow: none; }
.role-barbeiro .appointment-worklist { display: grid; gap: 2px; background: #090a0a; }
.role-barbeiro .appointment-work-card { border-radius: 3px; background: #111213; }
.role-barbeiro .appointment-work-card:hover { background: #151617; }
.role-barbeiro .appointment-when,
.role-barbeiro .icon-action,
.role-barbeiro .appointment-detail-grid article,
.role-barbeiro .payment-proof,
.role-barbeiro .reschedule-panel,
.role-barbeiro .appointment-modal > section,
.role-barbeiro .v2-confirm-dialog > section { border-radius: 3px; }
.role-barbeiro .service-grid { gap: 2px; }
.role-barbeiro .service-card { min-height: 104px; border-radius: 3px; background: #111213; }
.role-barbeiro .service-icon { border-radius: 2px; }
.role-barbeiro .service-toggle { border-radius: 2px; }
.role-barbeiro .schedule-row,
.role-barbeiro .block-list article,
.role-barbeiro .finance-list article,
.role-barbeiro .finance-date,
.role-barbeiro .compact-service-list article { border-radius: 2px; }
.role-barbeiro .finance-list { gap: 2px; }
.role-barbeiro .finance-list article { background: #171819; }

.heading-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; }
.operator-heading .text-action { min-height: 40px; display: inline-flex; align-items: center; gap: 7px; color: #bdbdc1; font-size: 11px; }
.operator-heading .text-action .lucide { width: 18px; height: 18px; }
.manual-booking { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; align-items: start; }
.manual-booking-main { min-width: 0; display: grid; gap: 10px; }
.operator-section { border: 1px solid var(--line); background: #111213; }
.operator-section > header { min-height: 72px; display: flex; align-items: center; gap: 13px; padding: 15px 18px; border-bottom: 1px solid var(--line); }
.operator-section > header > div { min-width: 0; flex: 1; }
.operator-section > header small { display: block; margin-bottom: 3px; color: #9a9a9f; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .13em; }
.operator-section > header h3 { margin: 0; font-family: Georgia,"Times New Roman",serif; font-size: 18px; font-weight: 500; }
.step-number { min-width: 30px; color: var(--gold-2); font: 500 18px/1 Georgia,serif; }
.client-step { position: relative; z-index: 4; padding-bottom: 18px; }
.client-lookup { min-height: 54px; position: relative; display: grid; grid-template-columns: 20px 1fr; align-items: center; column-gap: 9px; margin: 18px 18px 10px; padding: 0 14px; border: 1px solid var(--line-strong); background: #0b0c0c; }
.client-lookup .lucide { color: var(--gold-2); }
.client-lookup input { width: 100%; height: 50px; border: 0; outline: 0; color: var(--text); background: transparent; }
.client-lookup > span { grid-column: 2; margin: -11px 0 9px; color: #6f7074; font-size: 8px; }
.client-search-results,
[data-queue-client-results] { position: absolute; z-index: 15; overflow: hidden; border: 1px solid var(--line-strong); background: #141516; box-shadow: 0 20px 55px rgba(0,0,0,.5); }
.client-search-results { inset: 124px 18px auto; }
[data-queue-client-results] { inset: calc(100% + 5px) 0 auto; }
.client-search-results button,
[data-queue-client-results] button { width: 100%; min-height: 58px; display: grid; grid-template-columns: 34px 1fr 18px; align-items: center; gap: 10px; padding: 9px 12px; border: 0; border-top: 1px solid var(--line); color: var(--text); background: transparent; text-align: left; cursor: pointer; }
.client-search-results button:first-child,
[data-queue-client-results] button:first-child { border-top: 0; }
.client-search-results button:hover,
[data-queue-client-results] button:hover { background: #1c1d1e; }
.client-search-results button > span,
[data-queue-client-results] button > span { width: 31px; height: 31px; display: grid; place-items: center; color: #0a0a0a; background: var(--gold-2); font-size: 9px; font-weight: 850; }
.client-search-results strong,.client-search-results small,
[data-queue-client-results] strong,[data-queue-client-results] small { display: block; }
.client-search-results strong,[data-queue-client-results] strong { font-size: 11px; }
.client-search-results small,[data-queue-client-results] small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.client-result-empty { padding: 17px; color: var(--muted); font-size: 10px; }
.client-result-empty.error { color: #ff9292; }
.selected-client { display: flex; align-items: center; gap: 10px; margin: 0 18px 12px; padding: 11px; border-left: 2px solid var(--green); background: rgba(50,183,104,.06); }
.selected-client-mark { width: 31px; height: 31px; display: grid; place-items: center; color: #65d58d; background: rgba(50,183,104,.11); }
.selected-client > div { flex: 1; }
.selected-client small,.selected-client strong { display: block; }
.selected-client small { color: #79bf91; font-size: 8px; text-transform: uppercase; }
.selected-client strong { margin-top: 3px; font-size: 11px; }
.selected-client button { border: 0; color: var(--gold-2); background: transparent; cursor: pointer; font-size: 9px; }
.operator-fields { display: grid; gap: 9px; padding: 0 18px; }
.operator-fields.three-columns { grid-template-columns: 1.1fr .8fr 1.1fr; }
.operator-fields label,
.schedule-picker-row label,
.booking-notes,
.service-create-panel label,
.queue-manual-panel form > label { display: grid; gap: 7px; color: #96969c; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .1em; }
.operator-fields input,
.schedule-picker-row input,
.booking-notes textarea,
.service-create-panel input,
.queue-manual-panel input { width: 100%; min-height: 44px; padding: 0 12px; border: 1px solid var(--line-strong); border-radius: 2px; outline: 0; color: var(--text); background: #0b0c0c; }
.operator-fields input:focus,
.schedule-picker-row input:focus,
.booking-notes textarea:focus,
.service-create-panel input:focus,
.queue-manual-panel input:focus { border-color: #9f7923; box-shadow: 0 0 0 2px rgba(199,154,40,.08); }
.operator-fields input[readonly] { color: #9ea0a3; background: #151616; }
.compact-search { width: min(220px,42%); display: flex; align-items: center; gap: 7px; padding: 0 10px; border: 1px solid var(--line); background: #0b0c0c; }
.compact-search input { width: 100%; height: 37px; border: 0; outline: 0; color: var(--text); background: transparent; font-size: 10px; }
.manual-service-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; padding: 1px; background: var(--line); }
.manual-service-option { min-height: 78px; display: grid; grid-template-columns: 46px minmax(0,1fr) auto 22px; align-items: center; gap: 11px; padding: 12px 14px; background: #151617; cursor: pointer; }
.manual-service-option:hover { background: #191a1b; }
.manual-service-option.selected { box-shadow: inset 2px 0 var(--gold-2); background: #1a1915; }
.manual-service-option > input { position: absolute; opacity: 0; pointer-events: none; }
.manual-service-visual { width: 44px; height: 44px; overflow: hidden; display: grid; place-items: center; color: var(--gold-2); background: #232426; }
.manual-service-visual img { width: 100%; height: 100%; object-fit: cover; }
.manual-service-copy strong,.manual-service-copy small { display: block; }
.manual-service-copy strong { font-size: 11px; }
.manual-service-copy small { margin-top: 5px; color: var(--muted); font-size: 9px; }
.manual-service-option > b { color: #d8bd77; font-size: 10px; white-space: nowrap; }
.manual-service-check { width: 19px; height: 19px; display: grid; place-items: center; border: 1px solid #45464a; color: transparent; }
.manual-service-check .lucide { width: 12px; height: 12px; stroke-width: 3; }
.manual-service-option.selected .manual-service-check { border-color: var(--gold-2); color: #090909; background: var(--gold-2); }
.schedule-picker-row { display: grid; grid-template-columns: minmax(180px,260px) 1fr; align-items: end; gap: 16px; padding: 18px; }
.duration-summary { min-height: 44px; padding: 8px 0 6px 16px; border-left: 1px solid var(--line); }
.duration-summary small,.duration-summary strong { display: block; }
.duration-summary small { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }
.duration-summary strong { margin-top: 5px; font-size: 12px; }
.manual-slots { min-height: 112px; padding: 0 18px 18px; }
.manual-slots > section { display: grid; grid-template-columns: 62px 1fr; align-items: start; gap: 10px; padding-top: 10px; border-top: 1px solid var(--line); }
.manual-slots > section > strong { padding-top: 10px; color: #96979b; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }
.manual-slots > section > div { display: grid; grid-template-columns: repeat(6,minmax(56px,1fr)); gap: 6px; }
.manual-slots button { min-height: 36px; border: 1px solid var(--line); border-radius: 2px; color: #d3d3d5; background: #191a1b; cursor: pointer; font-size: 10px; }
.manual-slots button:hover { border-color: #8c6b24; }
.manual-slots button.selected { border-color: var(--gold-2); color: #090909; background: var(--gold-2); font-weight: 800; }
.slots-placeholder { min-height: 94px; display: flex; align-items: center; justify-content: center; gap: 9px; color: #737478; border: 1px dashed #2b2c2e; font-size: 10px; }
.slots-placeholder .lucide { width: 18px; height: 18px; }
.slots-placeholder.loading .lucide,.chat-loading .lucide { animation: spin .8s linear infinite; }
.slots-placeholder.error { color: #ff9292; }
.manual-booking-summary { position: sticky; top: 92px; padding: 22px; border: 1px solid rgba(199,154,40,.28); border-top: 2px solid var(--gold-2); background: #121313; }
.summary-kicker { color: var(--gold-2); font-size: 8px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.manual-booking-summary h3 { margin: 7px 0 20px; font-family: Georgia,"Times New Roman",serif; font-size: 21px; font-weight: 500; }
.summary-lines { display: grid; border-block: 1px solid var(--line); }
.summary-lines > span { padding: 12px 0; border-top: 1px solid var(--line); }
.summary-lines > span:first-child { border-top: 0; }
.summary-lines small,.summary-lines strong { display: block; }
.summary-lines small { color: #77787c; font-size: 8px; text-transform: uppercase; letter-spacing: .1em; }
.summary-lines strong { margin-top: 5px; font-size: 10px; line-height: 1.45; }
.booking-notes { margin-top: 15px; }
.booking-notes textarea { min-height: 70px; padding: 10px 12px; resize: vertical; }
.local-payment-box { display: flex; gap: 10px; margin-top: 14px; padding: 13px; border: 1px solid rgba(50,183,104,.19); background: rgba(50,183,104,.05); }
.local-payment-box > .lucide { flex: 0 0 auto; color: #70d692; }
.local-payment-box small,.local-payment-box strong { display: block; }
.local-payment-box small { color: #75b78b; font-size: 8px; text-transform: uppercase; }
.local-payment-box strong { margin-top: 4px; font-size: 11px; }
.local-payment-box p { margin: 5px 0 0; color: #777c79; font-size: 8px; line-height: 1.45; }
.booking-total { display: flex; align-items: center; justify-content: space-between; margin: 18px 0 13px; }
.booking-total span { color: #aaaab0; font-size: 10px; }
.booking-total strong { color: #eed27e; font: 500 23px/1 Georgia,serif; }
.manual-booking-summary > .gold-button { width: 100%; }
.summary-warning { display: flex; gap: 7px; margin: 12px 0 0; color: #6e6f73; font-size: 8px; line-height: 1.45; }
.summary-warning .lucide { flex: 0 0 auto; color: var(--gold-2); }

.appointment-contact-actions { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 12px; background: var(--line); }
.appointment-contact-actions a { min-height: 42px; display: flex; align-items: center; justify-content: center; gap: 7px; color: #babac0; background: #171819; font-size: 9px; }
.appointment-contact-actions a:hover { color: var(--gold-2); background: #1c1d1e; }
.operator-chat { height: calc(100dvh - 130px); min-height: 530px; display: grid; grid-template-rows: auto 1fr auto; overflow: hidden; border: 1px solid var(--line); background: #0f1010; }
.operator-chat > header { min-height: 78px; display: grid; grid-template-columns: 38px 44px minmax(0,1fr) 38px; align-items: center; gap: 11px; padding: 13px 16px; border-bottom: 1px solid var(--line); background: #141515; }
.chat-back,.chat-phone { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid var(--line); color: #c5c5c9; }
.chat-back .lucide { width: 22px; height: 22px; }
.operator-chat header small,.operator-chat header h2,.operator-chat header p { display: block; margin: 0; }
.operator-chat header small { color: var(--gold-2); font-size: 8px; }
.operator-chat header h2 { margin-top: 3px; font: 500 18px/1.1 Georgia,serif; }
.operator-chat header p { margin-top: 4px; color: var(--muted); font-size: 9px; }
.operator-chat-messages { overflow-y: auto; display: flex; flex-direction: column; gap: 8px; padding: 22px max(18px,7vw); background: radial-gradient(circle at 50% 0,rgba(199,154,40,.035),transparent 40%),#0d0e0e; }
.operator-chat-messages article { max-width: min(76%,560px); padding: 10px 12px 8px; border: 1px solid var(--line); background: #171819; }
.operator-chat-messages article.mine { align-self: flex-end; border-color: rgba(199,154,40,.22); background: #1b1914; }
.operator-chat-messages article.theirs { align-self: flex-start; }
.operator-chat-messages article small { color: var(--gold-2); font-size: 8px; font-weight: 700; }
.operator-chat-messages article p { margin: 5px 0 3px; color: #e2e2e4; font-size: 11px; line-height: 1.55; white-space: pre-wrap; }
.operator-chat-messages article time { display: block; color: #68696c; font-size: 7px; text-align: right; }
.chat-loading,.chat-empty { min-height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: #77787c; text-align: center; font-size: 10px; }
.chat-loading { flex-direction: row; }
.chat-empty .lucide { width: 31px; height: 31px; color: #927326; }
.chat-empty strong { color: #c9c9cd; }
.chat-empty p { margin: 0; }
.chat-empty.error { color: #ff9292; }
.operator-chat-form { display: grid; grid-template-columns: 1fr 46px; gap: 8px; padding: 12px 16px; border-top: 1px solid var(--line); background: #141515; }
.operator-chat-form input { min-width: 0; height: 46px; padding: 0 13px; border: 1px solid var(--line-strong); border-radius: 2px; outline: 0; color: var(--text); background: #0b0c0c; }
.operator-chat-form input:focus { border-color: #9f7923; }
.operator-chat-form button { width: 46px; height: 46px; display: grid; place-items: center; border: 0; border-radius: 2px; color: #090909; background: var(--gold-2); cursor: pointer; }

.service-create-panel,.queue-manual-panel { margin-bottom: 15px; padding: 20px; border: 1px solid rgba(199,154,40,.23); border-top: 2px solid var(--gold-2); background: #111213; }
.service-create-panel form { display: grid; grid-template-columns: 1.2fr .6fr .6fr 1.4fr auto; align-items: end; gap: 9px; }
.service-description-field { min-width: 0; }
.text-action { border: 0; color: var(--gold-2); background: transparent; cursor: pointer; font-size: 10px; }
.operator-notice { min-height: 78px; display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 12px; margin-bottom: 15px; padding: 15px 18px; border-left: 2px solid var(--gold-2); background: #131414; }
.operator-notice > .lucide { color: var(--gold-2); }
.operator-notice strong { font-size: 11px; }
.operator-notice p { margin: 5px 0 0; color: var(--muted); font-size: 9px; }
.operator-notice a { color: var(--gold-2); font-size: 10px; }
.queue-manual-panel form { display: grid; grid-template-columns: 1.1fr 1fr .8fr 1fr; gap: 10px; }
.queue-client-search { position: relative; grid-column: 1/-1; }
.queue-manual-panel fieldset { grid-column: 1/-1; margin: 4px 0 0; padding: 0; border: 0; }
.queue-manual-panel legend { margin-bottom: 8px; color: #96969c; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .1em; }
.queue-service-options { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--line); }
.queue-service-options label { min-height: 46px; display: grid; grid-template-columns: 18px 1fr auto; align-items: center; gap: 8px; padding: 9px 11px; background: #171819; cursor: pointer; }
.queue-service-options input { min-height: 0; accent-color: var(--gold-2); }
.queue-service-options span { font-size: 10px; }
.queue-service-options b { color: #d7bd77; font-size: 9px; }
.queue-manual-actions { grid-column: 1/-1; display: flex; align-items: center; justify-content: space-between; padding-top: 11px; border-top: 1px solid var(--line); }
.queue-manual-actions > span { display: flex; align-items: center; gap: 7px; color: #7bd79a; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.queue-priority { display: inline-flex; align-items: center; gap: 5px; padding: 5px 0 0; border: 0; color: var(--gold-2); background: transparent; cursor: pointer; font-size: 8px; }
.queue-priority .lucide { width: 12px; height: 12px; }
.recent-blocks { display: grid; gap: 1px; margin-top: 22px; border-top: 1px solid var(--line); background: var(--line); }
.recent-blocks > small { padding: 13px 0 7px; color: #77787c; background: #111213; font-size: 8px; text-transform: uppercase; letter-spacing: .1em; }
.recent-blocks > span { display: grid; grid-template-columns: 84px 1fr; gap: 8px; padding: 9px; color: #7f8084; background: #141515; font-size: 9px; }
.recent-blocks b { color: #a7a7ab; }

@media (max-width: 1100px) {
    .manual-booking { grid-template-columns: 1fr; }
    .manual-booking-summary { position: static; }
    .service-create-panel form { grid-template-columns: 1fr 1fr 1fr; }
    .service-create-panel .service-description-field { grid-column: 1/3; }
    .manual-slots > section > div { grid-template-columns: repeat(5,minmax(56px,1fr)); }
}

@media (max-width: 760px) {
    .role-barbeiro { padding-bottom: calc(69px + env(safe-area-inset-bottom)); }
    .role-barbeiro .topbar { height: 61px; padding: max(7px,env(safe-area-inset-top)) 14px 7px; }
    .role-barbeiro .topbar h1 { font-size: 18px; }
    .role-barbeiro .mobile-kicker { font-size: 7px; letter-spacing: .15em; }
    .role-barbeiro .content { padding: 15px 12px 26px; }
    .role-barbeiro .section-heading { gap: 15px; margin-bottom: 15px; padding-bottom: 15px; }
    .role-barbeiro .section-heading h2 { font-size: 28px; }
    .role-barbeiro .section-heading p { font-size: 10px; }
    .role-barbeiro .bottom-nav { inset: auto 0 0; min-height: 62px; padding: 4px 5px max(4px,env(safe-area-inset-bottom)); border-width: 1px 0 0; border-radius: 0; background: rgba(12,13,13,.97); box-shadow: 0 -12px 32px rgba(0,0,0,.35); }
    .role-barbeiro .bottom-nav a,.role-barbeiro .bottom-nav a:nth-child(n+6) { flex-basis: 64px; min-height: 52px; }
    .role-barbeiro .bottom-nav a .lucide { width: 17px; height: 17px; }
    .role-barbeiro .metric-grid { grid-template-columns: 1fr; }
    .role-barbeiro .metric-grid article { min-height: 75px; display: grid; grid-template-columns: 1fr auto; align-items: end; padding: 14px 15px; }
    .role-barbeiro .metric-grid .lucide { display: none; }
    .role-barbeiro .metric-grid strong { grid-column: 2; grid-row: 1; font-size: 20px; }
    .role-barbeiro .metric-grid span { grid-column: 1; grid-row: 1; max-width: none; font-size: 9px; }
    .operator-heading .text-action { align-self: flex-start; }
    .manual-booking { gap: 10px; }
    .operator-section > header { min-height: 63px; padding: 12px 13px; }
    .operator-section > header h3 { font-size: 16px; }
    .client-lookup { margin: 13px 13px 9px; }
    .client-search-results { inset: 109px 13px auto; }
    .selected-client { margin-inline: 13px; }
    .operator-fields { grid-template-columns: 1fr !important; padding-inline: 13px; }
    .compact-search { width: 40%; }
    .manual-service-grid { grid-template-columns: 1fr; }
    .manual-service-option { min-height: 68px; grid-template-columns: 42px minmax(0,1fr) auto 20px; padding: 9px 11px; }
    .manual-service-visual { width: 40px; height: 40px; }
    .schedule-picker-row { grid-template-columns: 1fr 1fr; gap: 10px; padding: 13px; }
    .manual-slots { padding: 0 13px 13px; }
    .manual-slots > section { grid-template-columns: 1fr; gap: 4px; }
    .manual-slots > section > div { grid-template-columns: repeat(4,1fr); }
    .manual-booking-summary { padding: 17px 15px; }
    .appointment-contact-actions { grid-template-columns: 1fr; }
    .operator-chat { height: calc(100dvh - 91px - env(safe-area-inset-bottom)); min-height: 0; margin: -15px -12px -26px; border-inline: 0; }
    .operator-chat > header { min-height: 69px; grid-template-columns: 35px 38px minmax(0,1fr) 35px; gap: 8px; padding: 9px 11px; }
    .operator-chat > header .appointment-avatar { width: 38px; height: 38px; }
    .operator-chat-messages { padding: 17px 13px; }
    .operator-chat-messages article { max-width: 88%; }
    .operator-chat-form { padding: 9px 11px; }
    .service-create-panel,.queue-manual-panel { padding: 14px 12px; }
    .service-create-panel form,.queue-manual-panel form { grid-template-columns: 1fr 1fr; }
    .service-create-panel .service-description-field { grid-column: 1/-1; }
    .service-create-panel form > .gold-button { grid-column: 1/-1; }
    .queue-client-search,.queue-manual-panel fieldset,.queue-manual-actions { grid-column: 1/-1; }
    .queue-service-options { grid-template-columns: 1fr; }
    .queue-manual-actions { align-items: stretch; flex-direction: column; gap: 10px; }
    .queue-manual-actions .gold-button { width: 100%; }
}

@media (max-width: 430px) {
    .heading-actions { width: 100%; }
    .heading-actions > * { flex: 1 1 100%; }
    .compact-search { width: 37%; }
    .compact-search .lucide { display: none; }
    .manual-service-option > b { font-size: 9px; }
    .manual-slots > section > div { grid-template-columns: repeat(3,1fr); }
    .schedule-picker-row { grid-template-columns: 1fr; }
    .duration-summary { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
    .service-create-panel form,.queue-manual-panel form { grid-template-columns: 1fr; }
    .service-create-panel .service-description-field,.service-create-panel form > .gold-button,.queue-client-search,.queue-manual-panel fieldset,.queue-manual-actions { grid-column: 1; }
    .operator-notice { grid-template-columns: 25px 1fr; }
    .operator-notice a { grid-column: 2; }
}

/* Visual balance pass: soft geometry, compact agenda */
.role-barbeiro .gold-button,
.role-barbeiro .outline-button,
.role-barbeiro .ghost-button,
.role-barbeiro .danger-button { border-radius: 9px; }
.role-barbeiro .search-box,
.role-barbeiro .date-chip,
.role-barbeiro .tabs,
.role-barbeiro .pagination a,
.role-barbeiro .pagination span { border-radius: 10px; }
.role-barbeiro .status,
.role-barbeiro .payment-pill { border-radius: 999px; }
.role-barbeiro .panel-card,
.role-barbeiro .data-table-card,
.role-barbeiro .chart-card,
.role-barbeiro .queue-list,
.role-barbeiro .agenda-toolbar,
.role-barbeiro .availability-card,
.role-barbeiro .finance-list-card,
.role-barbeiro .available-services,
.role-barbeiro .profile-form-card,
.role-barbeiro .profile-card,
.role-barbeiro .premium-empty { border-radius: 13px; }
.role-barbeiro .focus-service-card,
.role-barbeiro .service-card,
.role-barbeiro .appointment-work-card { border-radius: 12px; }
.role-barbeiro .service-icon,
.role-barbeiro .schedule-row,
.role-barbeiro .block-list article,
.role-barbeiro .finance-list article,
.role-barbeiro .finance-date,
.role-barbeiro .compact-service-list article { border-radius: 9px; }
.role-barbeiro .appointment-when,
.role-barbeiro .icon-action,
.role-barbeiro .appointment-detail-grid article,
.role-barbeiro .payment-proof,
.role-barbeiro .reschedule-panel { border-radius: 10px; }
.role-barbeiro .appointment-modal > section,
.role-barbeiro .v2-confirm-dialog > section { border-radius: 15px; }
.role-barbeiro .period-pills a { border-radius: 8px; }
.role-barbeiro .filter-form input,
.role-barbeiro .filter-form select { border-radius: 8px; }
.operator-section,
.manual-booking-summary,
.service-create-panel,
.queue-manual-panel,
.operator-chat { overflow: hidden; border-radius: 13px; }
.client-lookup,
.operator-fields input,
.schedule-picker-row input,
.booking-notes textarea,
.service-create-panel input,
.queue-manual-panel input,
.compact-search,
.manual-service-check,
.manual-slots button,
.operator-chat-form input,
.operator-chat-form button { border-radius: 8px; }
.manual-service-grid { gap: 7px; padding: 12px; background: transparent; }
.manual-service-option { border: 1px solid var(--line); border-radius: 10px; }
.manual-service-option.selected { border-color: rgba(214,173,74,.52); box-shadow: inset 3px 0 var(--gold-2); }
.local-payment-box,.appointment-contact-actions { border-radius: 9px; }

.agenda-toolbar { position: relative; padding: 13px; background: #111213; }
.period-pills { margin-bottom: 11px; }
.period-pills a { min-height: 32px; padding-inline: 12px; background: #18191a; }
.period-pills a.active { box-shadow: 0 6px 18px rgba(191,145,42,.14); }
.agenda-filter-toggle { display: none; }
.filter-form { padding-top: 12px; border-top: 1px solid var(--line); }
.appointment-worklist { gap: 9px !important; background: transparent !important; }
.appointment-work-card { position: relative; border-color: rgba(255,255,255,.095); background: linear-gradient(110deg,#151617,#111213 58%); box-shadow: 0 10px 28px rgba(0,0,0,.12); }
.appointment-work-card::before { content: ""; width: 3px; position: absolute; inset: 13px auto 13px 0; border-radius: 0 4px 4px 0; background: #4c4d50; }
.appointment-work-card.status-confirmado::before { background: #55c982; }
.appointment-work-card.status-em_andamento::before { background: #739cf2; }
.appointment-work-card.status-pendente::before { background: var(--gold-2); }
.appointment-work-card.status-cancelado::before,.appointment-work-card.status-nao_compareceu::before { background: #ea6969; }
.appointment-work-card.status-concluido::before { background: #8a8d91; }
.appointment-when { border: 0; background: #1b1c1d; }
.appointment-avatar.large { border-color: rgba(214,173,74,.32); box-shadow: 0 0 0 3px rgba(214,173,74,.05); }
.appointment-actions-v2 { align-self: stretch; }
.appointment-actions-v2 .icon-action { background: rgba(255,255,255,.018); }

@media (max-width: 760px) {
    .agenda-heading { display: grid; grid-template-columns: 1fr; }
    .agenda-heading .heading-actions { display: grid; grid-template-columns: 1fr auto; }
    .agenda-heading .heading-actions .gold-button { min-height: 46px; }
    .agenda-heading .date-chip { min-width: 104px; justify-content: center; }
    .agenda-toolbar { padding: 10px; }
    .period-pills { overflow-x: auto; margin: 0; padding: 1px 0 8px; scrollbar-width: none; }
    .period-pills::-webkit-scrollbar { display: none; }
    .period-pills a { min-height: 34px; padding-inline: 13px; }
    .agenda-filter-toggle { width: 100%; min-height: 43px; display: flex; align-items: center; justify-content: space-between; padding: 0 12px; border: 1px solid var(--line); border-radius: 9px; color: #c7c7cb; background: #18191a; cursor: pointer; font-size: 10px; font-weight: 700; }
    .agenda-filter-toggle > span { display: flex; align-items: center; gap: 8px; }
    .agenda-filter-toggle > .lucide { transition: transform .2s ease; }
    .agenda-toolbar.filters-open .agenda-filter-toggle > .lucide { transform: rotate(180deg); }
    .agenda-toolbar .filter-form { display: none; grid-template-columns: 1fr 1fr; margin-top: 9px; padding-top: 10px; }
    .agenda-toolbar.filters-open .filter-form { display: grid; }
    .appointment-work-card { grid-template-columns: 58px 44px minmax(0,1fr); gap: 10px; padding: 13px 12px 11px 14px; }
    .appointment-when { min-width: 0; min-height: 61px; border-radius: 9px; }
    .appointment-when strong { font-size: 17px; }
    .appointment-when span { font-size: 9px; }
    .appointment-avatar.large { display: inline-grid; width: 42px; height: 42px; }
    .appointment-title-row { display: block; }
    .appointment-title-row > div > strong { font-size: 12px; }
    .appointment-title-row small { font-size: 8px; }
    .appointment-title-row .status { margin-top: 6px; }
    .appointment-summary > p { margin: 7px 0; font-size: 10px; }
    .appointment-actions-v2 { grid-column: 1/-1; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: visible; margin-top: 1px; padding-top: 9px; }
    .appointment-actions-v2 .icon-action { min-width: 0; min-height: 38px; padding: 0 7px; font-size: 9px; }
    .operator-chat > header { border-radius: 13px 13px 0 0; }
}

@media (max-width: 430px) {
    .agenda-heading .heading-actions { grid-template-columns: 1fr; }
    .agenda-heading .date-chip { display: none; }
    .agenda-toolbar .filter-form { grid-template-columns: 1fr; }
    .appointment-work-card { grid-template-columns: 54px 40px minmax(0,1fr); }
    .appointment-avatar.large { display: inline-grid; width: 39px; height: 39px; }
    .appointment-summary { grid-column: 3; }
    .appointment-actions-v2 { grid-column: 1/-1; }
    .appointment-actions-v2 .icon-action span { display: inline; }
    .operator-chat > header { grid-template-columns: 36px minmax(0,1fr) 36px; }
    .operator-chat > header .appointment-avatar { display: none; }
    .operator-chat > header > div { min-width: 0; }
    .operator-chat > header h2 { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .operator-chat > header small { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
}

/* Barber refinement v22 */
.role-barbeiro .appointment-worklist { gap: 12px !important; }
.role-barbeiro .appointment-work-card { display: block; overflow: hidden; padding: 0; border: 1px solid rgba(255,255,255,.105); border-radius: 15px; background: linear-gradient(145deg,#171819,#111213); box-shadow: 0 12px 32px rgba(0,0,0,.16); }
.role-barbeiro .appointment-work-card::before { display: none; }
.appointment-card-head { display: grid; grid-template-columns: 88px 46px minmax(0,1fr) auto; align-items: center; gap: 13px; padding: 15px 17px; }
.appointment-card-time { align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding-right: 14px; border-right: 1px solid var(--line); }
.appointment-card-time strong { color: #e7c66e; font: 600 22px/1 Georgia,"Times New Roman",serif; }
.appointment-card-time span { margin-top: 5px; color: #818287; font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.appointment-client { min-width: 0; }
.appointment-client strong,.appointment-client small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.appointment-client strong { font-size: 13px; }
.appointment-client small { margin-top: 5px; color: #77787d; font-size: 8px; }
.appointment-card-head > .status { min-height: 25px; padding-inline: 10px; }
.appointment-service-line { min-height: 43px; display: flex; align-items: center; gap: 9px; margin: 0 17px; padding: 10px 0; border-top: 1px solid var(--line); color: #b8b8bd; font-size: 10px; }
.appointment-service-line .lucide { width: 14px; height: 14px; flex: 0 0 auto; color: #a7812b; }
.appointment-card-footer { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 12px 10px 17px; border-top: 1px solid var(--line); background: rgba(255,255,255,.018); }
.appointment-charge { display: flex; align-items: center; gap: 9px; }
.appointment-charge > small { color: #6f7074; font-size: 8px; text-transform: uppercase; letter-spacing: .07em; }
.appointment-charge > strong { color: #e8e8e9; font-size: 13px; white-space: nowrap; }
.appointment-charge .payment-pill { padding: 4px 7px; }
.appointment-card-footer .appointment-actions-v2 { display: flex; align-items: center; gap: 6px; border: 0; padding: 0; }
.appointment-card-footer .icon-action { min-height: 36px; border-radius: 9px; background: #171819; }

.barber-day-hero { min-height: 205px; position: relative; overflow: hidden; display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 30px; border: 1px solid var(--line); border-radius: 18px; background: #171819 var(--hero-image) center 42%/cover no-repeat; box-shadow: 0 20px 55px rgba(0,0,0,.22); }
.barber-day-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(4,5,5,.96),rgba(5,6,6,.79) 48%,rgba(5,6,6,.35)),linear-gradient(0deg,rgba(3,4,4,.72),transparent 65%); }
.barber-day-copy,.barber-day-actions { position: relative; }
.barber-day-copy h2 { margin: 0; font: 500 clamp(34px,4vw,48px)/1 Georgia,"Times New Roman",serif; letter-spacing: -.035em; }
.barber-day-copy p { max-width: 560px; margin: 12px 0 0; color: #b7b7bc; font-size: 12px; line-height: 1.55; }
.barber-day-actions { display: flex; align-items: center; gap: 9px; }
.day-secondary-action { min-height: 45px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; color: #e0e0e2; background: rgba(10,11,11,.55); backdrop-filter: blur(8px); font-size: 11px; font-weight: 700; }
.today-stat-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 12px; }
.today-stat-row article { min-height: 88px; display: flex; align-items: center; gap: 13px; padding: 15px 17px; border: 1px solid var(--line); border-radius: 13px; background: #121314; }
.stat-symbol { width: 37px; height: 37px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; color: #d2aa48; background: rgba(199,154,40,.1); }
.today-stat-row small,.today-stat-row strong { display: block; }
.today-stat-row small { color: #85868b; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }
.today-stat-row strong { margin-top: 5px; font-size: 18px; }
.next-service-panel { display: grid; grid-template-columns: 170px minmax(0,1fr) auto; align-items: center; gap: 20px; margin-top: 12px; padding: 18px 20px; border: 1px solid rgba(199,154,40,.24); border-radius: 15px; background: linear-gradient(110deg,rgba(199,154,40,.09),#131414 42%); }
.next-service-panel.is-active { border-color: rgba(91,141,239,.3); background: linear-gradient(110deg,rgba(91,141,239,.09),#131414 42%); }
.next-service-label { display: flex; align-items: center; gap: 9px; color: #d3ad51; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.next-service-label > span { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 5px rgba(199,154,40,.09); }
.next-service-main { min-width: 0; display: grid; grid-template-columns: 57px 46px minmax(0,1fr); align-items: center; gap: 12px; }
.next-service-time { color: #f0d47e; font: 600 21px/1 Georgia,serif; }
.next-service-main h3,.next-service-main p,.next-service-main small { display: block; overflow: hidden; margin: 0; text-overflow: ellipsis; white-space: nowrap; }
.next-service-main h3 { font-size: 13px; }
.next-service-main p { margin-top: 4px; color: #a8a8ad; font-size: 9px; }
.next-service-main small { margin-top: 4px; color: #77787d; font-size: 8px; }
.next-service-actions { display: flex; gap: 6px; }
.next-service-actions a,.next-service-actions button { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; color: #c5c5ca; background: #171819; cursor: pointer; font-size: 9px; }
.next-service-actions button { color: #0a0a0a; border-color: var(--gold-2); background: var(--gold-2); font-weight: 800; }
.today-workspace { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); gap: 12px; margin-top: 12px; }
.today-schedule-panel,.today-shortcuts { overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: #121314; }
.today-schedule-panel > header,.today-shortcuts > header { min-height: 71px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 17px; border-bottom: 1px solid var(--line); }
.today-schedule-panel h3,.today-shortcuts h3 { margin: 0; font: 500 18px/1.1 Georgia,serif; }
.today-schedule-panel > header a { display: inline-flex; align-items: center; gap: 6px; color: var(--gold-2); font-size: 9px; font-weight: 700; }
.today-schedule-list article { min-height: 65px; display: grid; grid-template-columns: 48px 36px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 10px 17px; border-top: 1px solid var(--line); }
.today-schedule-list article:first-child { border-top: 0; }
.today-schedule-list time { color: #dfbd65; font-size: 13px; font-weight: 800; }
.today-schedule-list .mini-avatar { font-size: 9px; font-weight: 800; }
.today-schedule-list strong,.today-schedule-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.today-schedule-list strong { font-size: 11px; }
.today-schedule-list small { margin-top: 4px; color: #85868a; font-size: 8px; }
.today-empty { min-height: 180px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px; color: #797a7f; text-align: center; }
.today-empty .lucide { width: 30px; height: 30px; margin-bottom: 10px; color: #9d7c31; }
.today-empty strong { color: #c4c4c7; font-size: 12px; }
.today-empty p { margin: 6px 0 0; font-size: 9px; }
.today-shortcuts nav { display: grid; }
.today-shortcuts nav a { min-height: 66px; display: grid; grid-template-columns: 34px 1fr 16px; align-items: center; gap: 10px; padding: 10px 15px; border-top: 1px solid var(--line); }
.today-shortcuts nav a:first-child { border-top: 0; }
.today-shortcuts nav a > .lucide:first-child { width: 34px; height: 34px; padding: 8px; border-radius: 9px; color: var(--gold-2); background: var(--gold-soft); }
.today-shortcuts nav a > .lucide:last-child { color: #626367; }
.today-shortcuts strong,.today-shortcuts small { display: block; }
.today-shortcuts strong { font-size: 10px; }
.today-shortcuts small { margin-top: 4px; color: #77787c; font-size: 8px; }

.view-novo .operator-heading { margin-bottom: 18px; }
.view-novo .manual-booking { gap: 14px; }
.view-novo .operator-section { border-radius: 15px; background: linear-gradient(145deg,#151617,#111213); box-shadow: 0 10px 28px rgba(0,0,0,.1); }
.view-novo .operator-section > header { background: rgba(255,255,255,.018); }
.view-novo .step-number { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; font-size: 13px; background: rgba(199,154,40,.12); }
.view-novo .manual-service-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.view-novo .manual-service-option { min-height: 94px; position: relative; grid-template-columns: 48px minmax(0,1fr); grid-template-rows: auto auto; gap: 8px 10px; padding: 12px; }
.view-novo .manual-service-option > b { grid-column: 2; color: #d9b85d; }
.view-novo .manual-service-check { position: absolute; top: 9px; right: 9px; }
.view-novo .manual-booking-summary { border: 1px solid var(--line); border-top: 3px solid #c79a32; border-radius: 15px; box-shadow: 0 18px 45px rgba(0,0,0,.18); }

.role-barbeiro .service-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.role-barbeiro .service-card { min-height: 245px; display: grid; grid-template-columns: 1fr; grid-template-rows: 105px minmax(0,1fr) auto; align-items: stretch; gap: 0; overflow: hidden; padding: 0; border-radius: 15px; background: linear-gradient(150deg,#171819,#111213); }
.role-barbeiro .service-card .service-icon { width: 100%; height: 105px; border-radius: 0; background: radial-gradient(circle at 50% 35%,rgba(199,154,40,.16),#171819 65%); }
.role-barbeiro .service-card .service-icon .lucide { width: 30px; height: 30px; }
.role-barbeiro .service-card .service-icon img { object-fit: cover; }
.role-barbeiro .service-card > div:nth-child(2) { padding: 14px 15px 10px; }
.role-barbeiro .service-card h3 { margin-top: 6px; font: 500 18px/1.15 Georgia,serif; }
.role-barbeiro .service-card p { max-width: none; margin-top: 7px; font-size: 9px; line-height: 1.45; white-space: normal; }
.role-barbeiro .service-meta { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 8px; padding: 11px 15px 14px; border-top: 1px solid var(--line); text-align: left; }
.role-barbeiro .service-meta strong { font: 600 16px/1 Georgia,serif; }
.role-barbeiro .service-meta span { margin: 0; text-align: right; }
.role-barbeiro .service-toggle { grid-column: 1/-1; width: 100%; min-height: 34px; justify-content: center; margin-top: 6px; border-radius: 8px; }
.service-create-panel { border-radius: 15px; }
.service-create-panel form { grid-template-columns: 1.1fr .55fr .55fr 1.1fr 1fr auto; }
.service-image-field input[type=file] { padding: 8px; color: #999aa0; font-size: 9px; }
.service-image-field input[type=file]::file-selector-button { margin-right: 8px; padding: 7px 9px; border: 0; border-radius: 7px; color: #0a0a0a; background: var(--gold-2); cursor: pointer; font-weight: 800; }

.finance-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 4px 0 22px; border-bottom: 1px solid var(--line); }
.finance-heading h2 { margin: 0; font: 500 clamp(31px,3.5vw,45px)/1 Georgia,serif; letter-spacing: -.035em; }
.finance-heading p { margin: 10px 0 0; color: #8e8f94; font-size: 11px; }
.finance-month-form label { display: grid; gap: 6px; color: #8b8c91; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .09em; }
.finance-month-form input,.finance-month-form select { min-height: 42px; padding: 0 11px; border: 1px solid var(--line-strong); border-radius: 9px; color: var(--text); background: #121314; }
.finance-period-nav { display: flex; gap: 7px; margin-top: 14px; }
.finance-period-nav a { min-height: 35px; display: inline-flex; align-items: center; padding: 0 13px; border: 1px solid var(--line); border-radius: 9px; color: #929398; background: #131415; font-size: 9px; font-weight: 700; }
.finance-period-nav a.active { color: #0a0a0a; border-color: #c79a32; background: #c79a32; }
.finance-summary-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr 1fr; gap: 10px; margin-top: 14px; }
.finance-summary-grid article { min-height: 138px; position: relative; overflow: hidden; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #131415; }
.finance-summary-grid article.featured { color: #111; border-color: #d7ae4b; background: linear-gradient(135deg,#dfbc60,#b98a25); }
.finance-summary-icon { width: 32px; height: 32px; display: grid; place-items: center; margin-bottom: 18px; border-radius: 9px; color: #d1aa4c; background: rgba(199,154,40,.1); }
.finance-summary-grid .featured .finance-summary-icon { color: #111; background: rgba(0,0,0,.1); }
.finance-summary-grid small,.finance-summary-grid strong,.finance-summary-grid p { display: block; }
.finance-summary-grid small { color: #85868b; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.finance-summary-grid .featured small { color: rgba(0,0,0,.62); }
.finance-summary-grid strong { margin-top: 6px; font: 600 21px/1 Georgia,serif; }
.finance-summary-grid p { margin: 7px 0 0; color: #74757a; font-size: 8px; }
.finance-summary-grid .featured p { color: rgba(0,0,0,.58); }
.commission-overview { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 10px; padding: 12px 16px; border: 1px solid rgba(239,90,90,.16); border-radius: 13px; background: rgba(239,90,90,.045); }
.commission-overview > div { display: flex; align-items: center; gap: 11px; }
.commission-overview > div:last-child { display: block; text-align: right; }
.commission-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: #f18a8a; background: rgba(239,90,90,.1); }
.commission-overview small,.commission-overview strong { display: block; }
.commission-overview small { color: #8c8d91; font-size: 8px; text-transform: uppercase; }
.commission-overview strong { margin-top: 4px; font-size: 11px; }
.finance-reconciliation-note { display:flex; align-items:center; gap:12px; margin-top:10px; padding:13px 16px; border:1px solid rgba(215,174,75,.22); border-radius:13px; background:rgba(215,174,75,.06); }
.finance-reconciliation-note > span { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:9px; color:#ddb85c; background:rgba(215,174,75,.12); }
.finance-reconciliation-note strong,.finance-reconciliation-note p { display:block; }
.finance-reconciliation-note strong { font-size:11px; }
.finance-reconciliation-note p { margin:4px 0 0; color:#8c8d91; font-size:9px; line-height:1.45; }
.finance-history { overflow: hidden; margin-top: 14px; border: 1px solid var(--line); border-radius: 15px; background: #121314; }
.finance-history > header { min-height: 75px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 17px; border-bottom: 1px solid var(--line); }
.finance-history > header h3 { margin: 0; font: 500 19px/1.1 Georgia,serif; }
.finance-history > header > span { color: #85868b; font-size: 9px; }
.finance-history-list article { min-height: 74px; display: grid; grid-template-columns: 40px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 12px 16px; border-top: 1px solid var(--line); }
.finance-history-list article:first-child { border-top: 0; }
.finance-client-avatar { width: 39px; height: 39px; overflow: hidden; display: grid; place-items: center; border-radius: 50%; color: #e0bd65; background: #232426; font-size: 9px; font-weight: 850; }
.finance-client-avatar img { width: 100%; height: 100%; object-fit: cover; }
.finance-history-copy { min-width: 0; }
.finance-history-copy > div { display: flex; align-items: center; gap: 8px; }
.finance-history-copy strong,.finance-history-copy p,.finance-history-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.finance-history-copy strong { font-size: 11px; }
.finance-history-copy p { margin: 5px 0 0; color: #a2a3a8; font-size: 9px; }
.finance-history-copy small { margin-top: 4px; color: #6f7074; font-size: 8px; }
.origin-badge { padding: 4px 6px; border-radius: 6px; color: #a8c1ef; background: rgba(91,141,239,.1); font-size: 7px; font-weight: 800; text-transform: uppercase; }
.origin-badge.fila { color: #dabd70; background: rgba(199,154,40,.1); }
.finance-history-value { display: grid; grid-template-columns: 7px auto; align-items: center; justify-content: end; gap: 5px; text-align: right; }
.payment-dot { width: 6px; height: 6px; border-radius: 50%; background: #e3a64b; }
.payment-dot.paid { background: #5fc983; }
.finance-history-value strong { font-size: 12px; }
.finance-history-value a,.finance-history-value small { grid-column: 1/-1; color: #947b3c; font-size: 8px; }

@media (max-width: 1100px) {
    .today-workspace { grid-template-columns: 1fr; }
    .service-create-panel form { grid-template-columns: repeat(3,1fr); }
    .service-image-field { grid-column: 2/4; }
    .finance-summary-grid { grid-template-columns: repeat(2,1fr); }
    .role-barbeiro .service-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 760px) {
    .appointment-card-head { grid-template-columns: 66px 40px minmax(0,1fr); gap: 10px; padding: 13px; }
    .appointment-card-time { padding-right: 10px; }
    .appointment-card-time strong { font-size: 19px; }
    .appointment-card-head > .appointment-avatar.large { display: inline-grid; width: 40px; height: 40px; }
    .appointment-card-head > .status { grid-column: 3; width: fit-content; margin-top: -2px; }
    .appointment-service-line { margin-inline: 13px; }
    .appointment-card-footer { padding: 9px 10px 10px 13px; }
    .appointment-charge > small { display: none; }
    .appointment-charge { flex-wrap: wrap; gap: 6px; }
    .appointment-charge .payment-pill { order: 3; flex-basis: 100%; width: fit-content; }
    .appointment-card-footer .icon-action { min-width: 70px; padding-inline: 8px; }
    .barber-day-hero { min-height: 210px; align-items: flex-start; flex-direction: column; justify-content: flex-end; padding: 21px 18px; border-radius: 16px; }
    .barber-day-copy h2 { font-size: 34px; }
    .barber-day-copy p { font-size: 10px; }
    .barber-day-actions { width: 100%; }
    .barber-day-actions > * { flex: 1; min-width: 0; padding-inline: 9px; }
    .today-stat-row { grid-template-columns: 1fr; gap: 7px; }
    .today-stat-row article { min-height: 67px; }
    .today-stat-row article > div { flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
    .today-stat-row strong { margin: 0; font-size: 17px; }
    .next-service-panel { grid-template-columns: 1fr; gap: 13px; padding: 16px; }
    .next-service-main { grid-template-columns: 54px 42px minmax(0,1fr); }
    .next-service-actions { display: grid; grid-template-columns: repeat(3,1fr); }
    .next-service-actions a,.next-service-actions button { padding-inline: 7px; }
    .today-workspace { grid-template-columns: 1fr; }
    .today-schedule-panel > header a span { display: none; }
    .today-schedule-list article { grid-template-columns: 43px 34px minmax(0,1fr); padding-inline: 13px; }
    .today-schedule-list article > .status { grid-column: 3; width: fit-content; }
    .view-novo .manual-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 10px; }
    .view-novo .manual-service-option { min-height: 118px; display: grid; grid-template-columns: 1fr; grid-template-rows: 50px auto auto; gap: 7px; }
    .view-novo .manual-service-visual { width: 100%; height: 50px; }
    .view-novo .manual-service-option > b { grid-column: 1; }
    .role-barbeiro .service-grid { grid-template-columns: 1fr; gap: 9px; }
    .role-barbeiro .service-card { min-height: 128px; grid-template-columns: 88px minmax(0,1fr); grid-template-rows: minmax(76px,auto) auto; }
    .role-barbeiro .service-card .service-icon { width: 88px; height: 100%; grid-row: 1/3; }
    .role-barbeiro .service-card > div:nth-child(2) { padding: 13px 13px 7px; }
    .role-barbeiro .service-card h3 { font-size: 16px; }
    .role-barbeiro .service-meta { grid-column: 2; padding: 7px 13px 12px; }
    .service-create-panel form { grid-template-columns: 1fr 1fr; }
    .service-description-field,.service-image-field { grid-column: 1/-1; }
    .finance-heading { align-items: stretch; flex-direction: column; gap: 16px; }
    .finance-month-form input,.finance-month-form select { width: 100%; }
    .finance-period-nav { overflow-x: auto; padding-bottom: 3px; scrollbar-width: none; }
    .finance-period-nav a { flex: 0 0 auto; }
    .finance-summary-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
    .finance-summary-grid article { min-height: 122px; padding: 14px; }
    .finance-summary-icon { margin-bottom: 13px; }
    .finance-summary-grid strong { font-size: 17px; }
    .commission-overview { align-items: stretch; flex-direction: column; }
    .commission-overview > div:last-child { padding-top: 10px; border-top: 1px solid var(--line); text-align: left; }
    .finance-history-list article { grid-template-columns: 38px minmax(0,1fr); padding: 12px; }
    .finance-history-value { grid-column: 2; grid-template-columns: 7px 1fr auto; justify-content: stretch; margin-top: 4px; text-align: left; }
    .finance-history-value a,.finance-history-value small { grid-column: 3; }
}

@media (max-width: 430px) {
    .appointment-card-footer { align-items: flex-end; }
    .appointment-card-footer .appointment-actions-v2 { display: grid; grid-template-columns: repeat(3,42px); gap: 5px; }
    .appointment-card-footer .icon-action { min-width: 42px; width: 42px; padding: 0; }
    .appointment-card-footer .icon-action span { display: none; }
    .barber-day-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .day-secondary-action { font-size: 9px; }
    .today-schedule-panel > header a { font-size: 0; }
    .today-schedule-panel > header a .lucide { width: 18px; height: 18px; }
    .view-novo .manual-service-copy strong { font-size: 10px; }
    .service-create-panel form { grid-template-columns: 1fr; }
    .service-description-field,.service-image-field { grid-column: 1; }
}

/* Keep the rebuilt agenda above legacy barber overrides. */
.view-agenda.role-barbeiro .agenda-pro-controls { display: flex; align-items: stretch; gap: 8px; padding: 8px; border-radius: 10px; background: #101112; }
.view-agenda.role-barbeiro .agenda-pro-controls.filters-open { display: grid; grid-template-columns: 1fr auto; }
.view-agenda.role-barbeiro .agenda-pro-controls .agenda-advanced-filters { display: none; margin: 0; }
.view-agenda.role-barbeiro .agenda-pro-controls.filters-open .agenda-advanced-filters { display: grid; }

@media (max-width: 760px) {
    .view-agenda.role-barbeiro .agenda-pro-controls { display: grid; grid-template-columns: 1fr auto; padding: 6px; }
    .view-agenda.role-barbeiro .agenda-pro-controls .agenda-filter-toggle { width: 42px; min-width: 42px; padding: 0; }
    .view-agenda.role-barbeiro .agenda-pro-controls .agenda-filter-toggle span { font-size: 0; }
    .view-agenda.role-barbeiro .agenda-pro-controls .agenda-filter-toggle span .lucide { width: 17px; height: 17px; display: block; color: #c9a34b; }
    .view-agenda.role-barbeiro .agenda-pro-controls .agenda-filter-toggle > .lucide { display: none; }
    .view-agenda.role-barbeiro .agenda-pro-controls.filters-open .agenda-advanced-filters { grid-template-columns: 1fr 1fr; }
}

/* Agenda readability and spacing v28 */
.view-agenda.role-barbeiro .agenda-pro-actions { display: flex; justify-content: flex-end; }
.view-agenda.role-barbeiro .agenda-pro-actions .gold-button { min-height: 45px; padding-inline: 18px; font-size: 10px; }
.view-agenda.role-barbeiro .agenda-month-nav { grid-template-columns: 40px 40px; }
.view-agenda.role-barbeiro .agenda-month-nav a { min-width: 40px; height: 40px; }
.view-agenda.role-barbeiro .agenda-calendar-weekdays span { font-size: 9px; }
.view-agenda.role-barbeiro .agenda-date { min-height: 103px; padding: 11px; }
.view-agenda.role-barbeiro .agenda-date-top b { width: 29px; height: 29px; font-size: 12px; }
.view-agenda.role-barbeiro .agenda-date-top em { font-size: 8px; }
.view-agenda.role-barbeiro .agenda-date-info strong { font-size: 21px; }
.view-agenda.role-barbeiro .agenda-date-info small { margin-top: 3px; font-size: 8px; }
.view-agenda.role-barbeiro .agenda-date-status small,.view-agenda.role-barbeiro .agenda-date-empty small { font-size: 8px; }
.view-agenda.role-barbeiro .agenda-date-status i { width: 6px; height: 6px; flex-basis: 6px; }
.view-agenda.role-barbeiro .agenda-calendar-summary small { font-size: 8px; }
.view-agenda.role-barbeiro .agenda-calendar-summary strong { font-size: 12px; }
.view-agenda.role-barbeiro .agenda-day-panel { margin-top: 24px; }
.view-agenda.role-barbeiro .agenda-day-heading { margin-bottom: 14px; padding-bottom: 15px; }
.view-agenda.role-barbeiro .agenda-day-heading h3 { font-size: 27px; }
.view-agenda.role-barbeiro .agenda-day-heading p { font-size: 10px; }
.view-agenda.role-barbeiro .agenda-day-count strong { font-size: 29px; }
.view-agenda.role-barbeiro .agenda-day-count small { font-size: 9px; }
.view-agenda.role-barbeiro .agenda-timeline { gap: 14px; }
.view-agenda.role-barbeiro .agenda-event { grid-template-columns: 76px minmax(0,1fr); gap: 14px; }
.view-agenda.role-barbeiro .agenda-event-rail { padding-top: 18px; }
.view-agenda.role-barbeiro .agenda-event-rail strong { font-size: 17px; }
.view-agenda.role-barbeiro .agenda-event-rail span { margin-top: 4px; font-size: 9px; }
.view-agenda.role-barbeiro .agenda-event-rail > i { top: 23px; width: 10px; height: 10px; }
.view-agenda.role-barbeiro .agenda-event-card > header { min-height: 91px; grid-template-columns: 51px minmax(0,1fr) auto; gap: 13px; padding: 16px 18px; }
.view-agenda.role-barbeiro .agenda-client-avatar { width: 50px; height: 50px; font-size: 11px; }
.view-agenda.role-barbeiro .agenda-client-copy > span { font-size: 9px; }
.view-agenda.role-barbeiro .agenda-client-copy h4 { margin: 6px 0 4px; font-size: 16px; }
.view-agenda.role-barbeiro .agenda-client-copy p { font-size: 10px; }
.view-agenda.role-barbeiro .agenda-event-card > header > .status { padding: 7px 10px; font-size: 8px; }
.view-agenda.role-barbeiro .agenda-event-details > span { min-height: 72px; padding: 13px 18px; }
.view-agenda.role-barbeiro .agenda-event-details .lucide { width: 20px; height: 20px; flex-basis: 20px; }
.view-agenda.role-barbeiro .agenda-event-details small { font-size: 8px; }
.view-agenda.role-barbeiro .agenda-event-details strong { margin-top: 5px; font-size: 11px; }
.view-agenda.role-barbeiro .agenda-value strong { font-size: 14px; }
.view-agenda.role-barbeiro .agenda-event-actions { min-height: 64px; gap: 9px; padding: 11px 15px; }
.view-agenda.role-barbeiro .agenda-action { min-height: 41px; padding-inline: 15px; font-size: 10px; }
.view-agenda.role-barbeiro .agenda-action .lucide { width: 16px; height: 16px; }

@media (max-width: 760px) {
    .view-agenda.role-barbeiro .agenda-pro-hero { gap: 15px; }
    .view-agenda.role-barbeiro .agenda-pro-actions { display: block; }
    .view-agenda.role-barbeiro .agenda-pro-actions .gold-button { width: 100%; min-height: 49px; font-size: 11px; }
    .view-agenda.role-barbeiro .agenda-calendar-top { min-height: 84px; }
    .view-agenda.role-barbeiro .agenda-month-copy h3 { font-size: 23px; }
    .view-agenda.role-barbeiro .agenda-month-nav { grid-template-columns: 38px 38px; }
    .view-agenda.role-barbeiro .agenda-month-nav a { min-width: 38px; height: 38px; }
    .view-agenda.role-barbeiro .agenda-calendar-body { padding: 9px; }
    .view-agenda.role-barbeiro .agenda-calendar-weekdays { padding-bottom: 8px; }
    .view-agenda.role-barbeiro .agenda-calendar-weekdays span { font-size: 9px; }
    .view-agenda.role-barbeiro .agenda-date { min-height: 69px; padding: 6px; }
    .view-agenda.role-barbeiro .agenda-date-top b { width: 25px; height: 25px; font-size: 12px; }
    .view-agenda.role-barbeiro .agenda-date-top em { display: none; }
    .view-agenda.role-barbeiro .agenda-date-info strong { font-size: 14px; }
    .view-agenda.role-barbeiro .agenda-date-info { margin-top: 7px; }
    .view-agenda.role-barbeiro .agenda-date-info small { display: none; }
    .view-agenda.role-barbeiro .agenda-date-status { margin-top: auto; }
    .view-agenda.role-barbeiro .agenda-date-status small,.view-agenda.role-barbeiro .agenda-date-empty small { display: none; }
    .view-agenda.role-barbeiro .agenda-date-status i { width: 5px; height: 5px; flex-basis: 5px; }
    .view-agenda.role-barbeiro .agenda-calendar-summary { min-height: 61px; }
    .view-agenda.role-barbeiro .agenda-calendar-summary small { font-size: 8px; }
    .view-agenda.role-barbeiro .agenda-calendar-summary strong { font-size: 11px; }
    .view-agenda.role-barbeiro .agenda-day-panel { margin-top: 22px; }
    .view-agenda.role-barbeiro .agenda-day-heading { margin-bottom: 14px; padding-bottom: 14px; }
    .view-agenda.role-barbeiro .agenda-day-heading h3 { font-size: 22px; }
    .view-agenda.role-barbeiro .agenda-day-heading p { font-size: 10px; line-height: 1.45; }
    .view-agenda.role-barbeiro .agenda-day-count strong { font-size: 26px; }
    .view-agenda.role-barbeiro .agenda-day-count small { font-size: 9px; }
    .view-agenda.role-barbeiro .agenda-timeline { gap: 14px; }
    .view-agenda.role-barbeiro .agenda-event { grid-template-columns: 52px minmax(0,1fr); gap: 9px; }
    .view-agenda.role-barbeiro .agenda-event-rail { padding-top: 17px; }
    .view-agenda.role-barbeiro .agenda-event-rail time { padding-right: 10px; }
    .view-agenda.role-barbeiro .agenda-event-rail strong { font-size: 14px; }
    .view-agenda.role-barbeiro .agenda-event-rail span { font-size: 9px; }
    .view-agenda.role-barbeiro .agenda-event-rail > i { top: 21px; }
    .view-agenda.role-barbeiro .agenda-event-card > header { min-height: 91px; grid-template-columns: 46px minmax(0,1fr); gap: 11px; padding: 14px; }
    .view-agenda.role-barbeiro .agenda-client-avatar { width: 45px; height: 45px; font-size: 10px; }
    .view-agenda.role-barbeiro .agenda-client-copy > span { font-size: 9px; }
    .view-agenda.role-barbeiro .agenda-client-copy h4 { margin: 6px 0 4px; font-size: 15px; }
    .view-agenda.role-barbeiro .agenda-client-copy p { font-size: 11px; }
    .view-agenda.role-barbeiro .agenda-event-card > header > .status { padding: 6px 9px; font-size: 9px; }
    .view-agenda.role-barbeiro .agenda-event-details { grid-template-columns: minmax(0,1fr) 96px; }
    .view-agenda.role-barbeiro .agenda-event-details > span { min-height: 66px; padding: 12px; }
    .view-agenda.role-barbeiro .agenda-event-details small { font-size: 8px; }
    .view-agenda.role-barbeiro .agenda-event-details strong { font-size: 11px; line-height: 1.4; }
    .view-agenda.role-barbeiro .agenda-value strong { font-size: 13px; }
    .view-agenda.role-barbeiro .agenda-payment { min-height: 68px; }
    .view-agenda.role-barbeiro .agenda-event-actions { gap: 7px; padding: 10px; }
    .view-agenda.role-barbeiro .agenda-action { min-height: 44px; padding-inline: 9px; font-size: 10px; }
    .view-agenda.role-barbeiro .agenda-action .lucide { width: 15px; height: 15px; }
}

@media (max-width: 430px) {
    .view-agenda.role-barbeiro .agenda-date { min-height: 65px; padding: 5px; }
    .view-agenda.role-barbeiro .agenda-date-top b { width: 24px; height: 24px; font-size: 12px; }
    .view-agenda.role-barbeiro .agenda-date-info strong { font-size: 13px; }
    .view-agenda.role-barbeiro .agenda-calendar-summary > span { padding-inline: 6px; }
    .view-agenda.role-barbeiro .agenda-day-heading h3 { font-size: 20px; }
    .view-agenda.role-barbeiro .agenda-event { grid-template-columns: 49px minmax(0,1fr); gap: 8px; }
    .view-agenda.role-barbeiro .agenda-event-card > header { padding: 13px; }
    .view-agenda.role-barbeiro .agenda-client-copy h4 { font-size: 14px; }
}

/* Barber agenda interaction and booking flow v31 */
.view-agenda.role-barbeiro .agenda-day-panel { position: relative; scroll-margin-top: 82px; }
.view-agenda.role-barbeiro .agenda-day-panel.awaiting-selection .agenda-day-heading { align-items: center; }
.view-agenda.role-barbeiro .agenda-selection-empty { min-height: 164px; grid-template-columns: 56px minmax(0,1fr); border-style: solid; border-color: rgba(205,163,61,.2); background: radial-gradient(circle at 7% 50%,rgba(205,163,61,.1),transparent 25%),#111213; }
.view-agenda.role-barbeiro .agenda-selection-empty > span { width: 52px; height: 52px; border-radius: 12px; }
.view-agenda.role-barbeiro .agenda-selection-empty > span .lucide { width: 24px; height: 24px; }
.view-agenda.role-barbeiro .agenda-selection-empty small { display: block; margin-bottom: 6px; color: #bd9742; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.view-agenda.role-barbeiro .agenda-selection-empty h3 { font: 500 19px/1.15 Georgia,"Times New Roman",serif; }
.view-agenda.role-barbeiro .agenda-selection-empty p { max-width: 560px; font-size: 10px; line-height: 1.55; }
.view-agenda.role-barbeiro .agenda-day-panel.is-updating { min-height: 260px; overflow: hidden; pointer-events: none; }
.view-agenda.role-barbeiro .agenda-day-panel.is-updating > * { opacity: .22; filter: saturate(.45); }
.view-agenda.role-barbeiro .agenda-day-panel.is-updating::after { content: "Carregando atendimentos…"; position: absolute; z-index: 4; inset: 0; display: grid; place-items: center; color: #e1bd64; background: rgba(9,10,10,.76); font-size: 11px; font-weight: 800; letter-spacing: .04em; }
.view-agenda.role-barbeiro .agenda-panel-enter { animation: agendaPanelEnter .24s ease both; }
@keyframes agendaPanelEnter { from { opacity: .25; transform: translateY(9px); } to { opacity: 1; transform: translateY(0); } }

.view-novo.role-barbeiro .booking-command-head { border-radius: 11px; }
.view-novo.role-barbeiro .booking-progress > span { height: auto; min-height: 30px; border-radius: 0; background: transparent; }
.view-novo.role-barbeiro .operator-section,
.view-novo.role-barbeiro .manual-booking-summary { scroll-margin-top: 82px; }
.view-novo.role-barbeiro .booking-v24 { grid-template-columns: minmax(0,1fr) 340px; gap: 16px; }
.view-novo.role-barbeiro .booking-v24 .manual-booking-main { gap: 14px; }
.view-novo.role-barbeiro .booking-v24 .operator-section { border-radius: 10px; }
.view-novo.role-barbeiro .booking-v24 .operator-section > header { min-height: 86px; padding: 17px 18px; }
.view-novo.role-barbeiro .operator-section > header small { font-size: 9px; }
.view-novo.role-barbeiro .operator-section > header h3 { font-size: 21px; }
.view-novo.role-barbeiro .operator-section > header p { max-width: 620px; font-size: 9px; }
.view-novo.role-barbeiro .step-number { width: 36px; height: 36px; flex-basis: 36px; border-radius: 8px; font-size: 11px; }
.view-novo.role-barbeiro .client-lookup { min-height: 60px; margin: 16px 18px 11px; border-radius: 8px; }
.view-novo.role-barbeiro .client-lookup input { height: 56px; font-size: 12px; }
.view-novo.role-barbeiro .client-lookup > span { font-size: 9px; }
.view-novo.role-barbeiro .operator-subheading span { font-size: 10px; }
.view-novo.role-barbeiro .operator-subheading small { font-size: 8px; }
.view-novo.role-barbeiro .operator-fields { gap: 11px; padding: 11px 18px 19px; }
.view-novo.role-barbeiro .operator-fields label > span,
.view-novo.role-barbeiro .schedule-picker-row label > span { font-size: 9px; }
.view-novo.role-barbeiro .operator-fields input,
.view-novo.role-barbeiro .schedule-picker-row input { min-height: 48px; font-size: 12px; }
.view-novo.role-barbeiro .manual-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; padding: 14px; }
.view-novo.role-barbeiro .manual-service-option { min-height: 84px; position: relative; grid-template-columns: 52px minmax(0,1fr) auto 21px; grid-template-rows: 1fr; align-items: center; gap: 10px; padding: 11px 12px; border-radius: 8px; }
.view-novo.role-barbeiro .manual-service-visual { width: 52px; height: 58px; grid-row: auto; border-radius: 7px; }
.view-novo.role-barbeiro .manual-service-copy strong { font-size: 12px; }
.view-novo.role-barbeiro .manual-service-copy small { font-size: 9px; }
.view-novo.role-barbeiro .manual-service-option > b { grid-column: auto; font-size: 11px; }
.view-novo.role-barbeiro .manual-service-check { position: static; width: 21px; height: 21px; }
.view-novo.role-barbeiro .schedule-picker-row { padding: 15px 18px; }
.view-novo.role-barbeiro .duration-summary small { font-size: 9px; }
.view-novo.role-barbeiro .duration-summary strong { font-size: 14px; }
.view-novo.role-barbeiro .manual-slots { padding: 0 18px 18px; }
.view-novo.role-barbeiro .manual-slots button { min-height: 41px; font-size: 11px; }
.view-novo.role-barbeiro .booking-payment-grid { gap: 14px; padding: 16px 18px 12px; }
.view-novo.role-barbeiro .booking-choice-group legend { font-size: 9px; }
.view-novo.role-barbeiro .booking-choice-group label > span { min-height: 68px; }
.view-novo.role-barbeiro .booking-choice-group b { font-size: 10px; }
.view-novo.role-barbeiro .booking-choice-group small { font-size: 8px; }
.view-novo.role-barbeiro .booking-payment-note { margin: 0 18px 18px; }
.view-novo.role-barbeiro .booking-payment-note p { font-size: 9px; }
.view-novo.role-barbeiro .booking-v24 .manual-booking-summary { border-radius: 10px; }
.view-novo.role-barbeiro .summary-lines small { font-size: 9px; }
.view-novo.role-barbeiro .summary-lines strong { font-size: 10px; }
.view-novo.role-barbeiro .summary-payment-line strong { font-size: 10px; }
.view-novo.role-barbeiro .summary-payment-line em,
.view-novo.role-barbeiro .summary-payment-line small { font-size: 8px; }
.view-novo.role-barbeiro .booking-notes > span { font-size: 9px; }
.view-novo.role-barbeiro .summary-warning { font-size: 8px; }

@media (max-width: 1080px) {
    .view-novo.role-barbeiro .booking-v24 { grid-template-columns: 1fr; }
    .view-novo.role-barbeiro .booking-v24 .manual-booking-summary { position: static; }
}

@media (max-width: 760px) {
    .view-agenda.role-barbeiro .agenda-day-panel { scroll-margin-top: 68px; }
    .view-agenda.role-barbeiro .agenda-day-panel.awaiting-selection .agenda-day-heading { align-items: flex-start; }
    .view-agenda.role-barbeiro .agenda-selection-empty { min-height: 145px; grid-template-columns: 45px minmax(0,1fr); gap: 12px; padding: 18px 15px; }
    .view-agenda.role-barbeiro .agenda-selection-empty > span { width: 43px; height: 43px; }
    .view-agenda.role-barbeiro .agenda-selection-empty h3 { font-size: 17px; }
    .view-agenda.role-barbeiro .agenda-selection-empty p { font-size: 10px; }
    .view-novo.role-barbeiro .content { padding-top: 11px; }
    .view-novo.role-barbeiro .operator-section,
    .view-novo.role-barbeiro .manual-booking-summary { scroll-margin-top: 69px; }
    .view-novo.role-barbeiro .booking-command-head { grid-template-columns: 1fr; gap: 12px; padding: 15px 14px 14px; }
    .view-novo.role-barbeiro .booking-back-link { width: auto; min-height: 38px; grid-row: 1; justify-self: start; justify-content: flex-start; padding: 0 11px; }
    .view-novo.role-barbeiro .booking-back-link span { display: inline; }
    .view-novo.role-barbeiro .booking-command-copy { grid-row: 2; }
    .view-novo.role-barbeiro .booking-command-copy h2 { margin-top: 4px; font-size: 28px; }
    .view-novo.role-barbeiro .booking-command-copy p { display: block; font-size: 10px; line-height: 1.55; }
    .view-novo.role-barbeiro .booking-progress { grid-row: 3; margin-top: 1px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.08); }
    .view-novo.role-barbeiro .booking-progress > span { min-height: 44px; display: grid; grid-template-columns: 1fr; justify-items: center; gap: 6px; text-align: center; }
    .view-novo.role-barbeiro .booking-progress b { width: 28px; height: 28px; font-size: 10px; }
    .view-novo.role-barbeiro .booking-progress small { display: block; padding: 0; color: inherit; background: transparent; font-size: 7px; letter-spacing: .04em; }
    .view-novo.role-barbeiro .booking-progress > span:not(:last-child)::after { top: 14px; left: calc(50% + 18px); right: calc(-50% + 18px); }
    .view-novo.role-barbeiro .booking-v24 { gap: 12px; }
    .view-novo.role-barbeiro .booking-v24 .manual-booking-main { gap: 12px; }
    .view-novo.role-barbeiro .booking-v24 .operator-section > header { min-height: 0; display: grid; grid-template-columns: 36px minmax(0,1fr); align-items: start; gap: 11px; padding: 15px 14px; }
    .view-novo.role-barbeiro .operator-section > header h3 { font-size: 19px; }
    .view-novo.role-barbeiro .operator-section > header p { font-size: 10px; line-height: 1.5; }
    .view-novo.role-barbeiro .operator-section > header .section-mark { display: none; }
    .view-novo.role-barbeiro .step-number { width: 36px; height: 36px; flex-basis: 36px; font-size: 11px; }
    .view-novo.role-barbeiro .service-step > header .compact-search { width: 100%; grid-column: 1/-1; margin: 4px 0 0; padding-inline: 12px; border-radius: 8px; }
    .view-novo.role-barbeiro .service-step > header .compact-search .lucide { display: block; flex: 0 0 auto; }
    .view-novo.role-barbeiro .service-step > header .compact-search input { width: 100%; height: 46px; opacity: 1; font-size: 16px; }
    .view-novo.role-barbeiro .client-lookup { min-height: 62px; margin: 13px 14px 9px; padding-inline: 12px; }
    .view-novo.role-barbeiro .client-lookup input { height: 58px; font-size: 16px; }
    .view-novo.role-barbeiro .client-lookup > span { margin-bottom: 8px; font-size: 9px; }
    .view-novo.role-barbeiro .client-search-results { position: relative; inset: auto; margin: -2px 14px 12px; }
    .view-novo.role-barbeiro .selected-client { margin-inline: 14px; border-radius: 7px; }
    .view-novo.role-barbeiro .operator-subheading { margin-inline: 14px; }
    .view-novo.role-barbeiro .operator-subheading span { font-size: 11px; }
    .view-novo.role-barbeiro .operator-subheading small { font-size: 8px; }
    .view-novo.role-barbeiro .operator-fields { gap: 11px; padding: 11px 14px 16px; }
    .view-novo.role-barbeiro .operator-fields label > span,
    .view-novo.role-barbeiro .schedule-picker-row label > span { font-size: 10px; }
    .view-novo.role-barbeiro .operator-fields input,
    .view-novo.role-barbeiro .schedule-picker-row input { min-height: 50px; font-size: 16px; }
    .view-novo.role-barbeiro .manual-service-grid { grid-template-columns: 1fr; gap: 8px; padding: 12px; }
    .view-novo.role-barbeiro .manual-service-option { min-height: 82px; grid-template-columns: 58px minmax(0,1fr) auto 23px; grid-template-rows: 1fr; gap: 10px; padding: 11px 12px; }
    .view-novo.role-barbeiro .manual-service-visual { width: 58px; height: 58px; grid-row: auto; }
    .view-novo.role-barbeiro .manual-service-copy strong { font-size: 13px; }
    .view-novo.role-barbeiro .manual-service-copy small { font-size: 10px; }
    .view-novo.role-barbeiro .manual-service-option > b { grid-column: auto; font-size: 12px; }
    .view-novo.role-barbeiro .manual-service-check { position: static; }
    .view-novo.role-barbeiro .schedule-picker-row { grid-template-columns: 1fr; gap: 11px; padding: 14px; }
    .view-novo.role-barbeiro .duration-summary { min-height: 0; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px; border: 1px solid rgba(255,255,255,.08); border-radius: 8px; background: #0e0f10; }
    .view-novo.role-barbeiro .duration-summary small { font-size: 9px; }
    .view-novo.role-barbeiro .duration-summary strong { margin: 0; font-size: 15px; }
    .view-novo.role-barbeiro .duration-summary span { display: none; }
    .view-novo.role-barbeiro .manual-slots { padding: 0 14px 15px; }
    .view-novo.role-barbeiro .manual-slots > section { grid-template-columns: 1fr; gap: 7px; }
    .view-novo.role-barbeiro .manual-slots > section > strong { padding-top: 5px; font-size: 9px; }
    .view-novo.role-barbeiro .manual-slots > section > div { grid-template-columns: repeat(3,1fr); gap: 7px; }
    .view-novo.role-barbeiro .manual-slots button { min-height: 44px; font-size: 11px; }
    .view-novo.role-barbeiro .booking-payment-grid { grid-template-columns: 1fr; gap: 16px; padding: 14px; }
    .view-novo.role-barbeiro .payment-method-group > div { grid-template-columns: 1fr 1fr; }
    .view-novo.role-barbeiro .payment-status-group > div { grid-template-columns: 1fr; }
    .view-novo.role-barbeiro .booking-choice-group legend { font-size: 10px; }
    .view-novo.role-barbeiro .booking-choice-group label > span { min-height: 72px; padding: 10px; }
    .view-novo.role-barbeiro .booking-choice-group b { font-size: 11px; }
    .view-novo.role-barbeiro .booking-choice-group small { font-size: 9px; white-space: normal; line-height: 1.3; }
    .view-novo.role-barbeiro .booking-payment-note { margin: 0 14px 15px; padding: 12px; }
    .view-novo.role-barbeiro .booking-payment-note p { font-size: 10px; }
    .view-novo.role-barbeiro .booking-v24 .manual-booking-summary { padding: 0; }
    .view-novo.role-barbeiro .summary-heading { padding: 17px 15px 14px; }
    .view-novo.role-barbeiro .summary-kicker { font-size: 8px; }
    .view-novo.role-barbeiro .summary-heading h3 { font-size: 21px!important; }
    .view-novo.role-barbeiro .summary-payment-state { font-size: 8px; }
    .view-novo.role-barbeiro .summary-lines { padding-inline: 15px; }
    .view-novo.role-barbeiro .summary-lines > span { grid-template-columns: 76px minmax(0,1fr); padding: 12px 0; }
    .view-novo.role-barbeiro .summary-lines small { font-size: 9px; }
    .view-novo.role-barbeiro .summary-lines strong { font-size: 11px; }
    .view-novo.role-barbeiro .summary-payment-line { margin: 13px 15px; padding: 12px; }
    .view-novo.role-barbeiro .booking-notes { padding: 0 15px 12px; }
    .view-novo.role-barbeiro .booking-notes > span { font-size: 10px; }
    .view-novo.role-barbeiro .booking-notes textarea { min-height: 86px; font-size: 16px; }
    .view-novo.role-barbeiro .booking-total { margin-inline: 15px; }
    .view-novo.role-barbeiro .booking-total small { font-size: 10px; }
    .view-novo.role-barbeiro .booking-total em { font-size: 9px; }
    .view-novo.role-barbeiro .booking-total > strong { font-size: 25px; }
    .view-novo.role-barbeiro .booking-submit { width: calc(100% - 30px)!important; min-height: 56px; margin-inline: 15px; font-size: 11px; }
    .view-novo.role-barbeiro .booking-submit small { font-size: 8px; }
    .view-novo.role-barbeiro .summary-warning { margin: 12px 15px 17px; font-size: 9px; }
}

@media (max-width: 390px) {
    .view-novo.role-barbeiro .payment-method-group > div { grid-template-columns: 1fr; }
    .view-novo.role-barbeiro .manual-service-option { grid-template-columns: 52px minmax(0,1fr) 22px; }
    .view-novo.role-barbeiro .manual-service-visual { width: 52px; height: 54px; }
    .view-novo.role-barbeiro .manual-service-option > b { grid-column: 2; margin-top: -18px; }
    .view-novo.role-barbeiro .manual-service-check { grid-column: 3; grid-row: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .view-agenda.role-barbeiro .agenda-panel-enter { animation: none; }
}

/* Client booking polish v37 */
.role-cliente.view-agendar .booking-topbar {
    border-bottom-color: rgba(218,179,78,.2);
    background:
        radial-gradient(circle at 50% -90%,rgba(219,180,82,.17),transparent 58%),
        linear-gradient(180deg,rgba(33,31,26,.98),rgba(20,19,17,.97));
    box-shadow: 0 12px 38px rgba(0,0,0,.3);
}
.role-cliente.view-agendar .booking-back {
    color: #ddd4c2;
}
.role-cliente.view-agendar .booking-back:hover {
    color: #f1d787;
}
.role-cliente.view-agendar .booking-progress > span {
    min-width: 0;
    height: 2px;
    position: static;
    display: block;
    background: rgba(255,255,255,.13);
}
.role-cliente.view-agendar .booking-progress {
    grid-column: auto;
    grid-template-columns: repeat(3,34px);
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 0;
}
.role-cliente.view-agendar .booking-progress > span:not(:last-child)::after {
    content: none;
}
.role-cliente.view-agendar .booking-progress > span.active {
    background: linear-gradient(90deg,#ead17d,#b98720);
    box-shadow: 0 0 12px rgba(215,174,70,.24);
}
.role-cliente.view-agendar .booking-progress small {
    grid-column: 1/-1;
    width: auto;
    padding: 0;
    background: transparent;
    text-align: center;
}
.role-cliente.view-agendar .booking-progress small,
.role-cliente.view-agendar .booking-live {
    color: #aaa395;
}
.role-cliente.view-agendar #booking-total {
    align-items: center;
    margin: 16px 0 0;
    padding: 14px 3px 0;
    border-top: 1px solid var(--line);
}
.role-cliente.view-agendar #booking-total > strong {
    color: #eed27e;
    font-size: 18px;
}
.role-cliente.view-agendar #booking-total > span {
    display: grid;
    gap: 4px;
}
.role-cliente.view-agendar #booking-total > span > small {
    color: #d9c47e;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .025em;
}
.role-cliente .picker-sheet.calendar-mode .sheet-backdrop {
    background: rgba(4,4,3,.75);
}
.role-cliente .picker-sheet.calendar-mode > section {
    border-color: rgba(220,183,87,.19);
    background:
        radial-gradient(circle at 50% 0,rgba(213,171,67,.1),transparent 34%),
        linear-gradient(180deg,#191813,#11110f 72%);
}
.role-cliente .picker-sheet.calendar-mode header {
    border-bottom-color: rgba(220,183,87,.12);
}
.role-cliente .picker-sheet.calendar-mode header h2 {
    color: #f2eee5;
}
.role-cliente .picker-sheet.calendar-mode .sheet-close {
    border-color: rgba(220,183,87,.18);
    color: #d9ccad;
    background: rgba(255,255,255,.04);
}
.role-cliente .picker-sheet.calendar-mode .calendar-shell {
    padding: 11px 10px 9px;
    border: 1px solid rgba(218,179,78,.16);
    border-radius: 16px;
    background: linear-gradient(145deg,rgba(42,39,32,.97),rgba(25,24,21,.99));
    box-shadow: inset 0 1px rgba(255,255,255,.04),0 14px 35px rgba(0,0,0,.16);
}
.role-cliente .picker-sheet.calendar-mode .calendar-nav {
    margin-bottom: 5px;
}
.role-cliente .picker-sheet.calendar-mode .calendar-nav strong {
    color: #e4c66e;
    font-family: Georgia,"Times New Roman",serif;
    font-size: 15px;
    font-weight: 500;
}
.role-cliente .picker-sheet.calendar-mode .calendar-nav button {
    border: 1px solid rgba(218,179,78,.15);
    border-radius: 10px;
    color: #e1c36a;
    background: rgba(214,174,70,.055);
}
.role-cliente .picker-sheet.calendar-mode .calendar-nav button:hover {
    border-color: rgba(218,179,78,.34);
    background: rgba(214,174,70,.11);
}
.role-cliente .picker-sheet.calendar-mode .calendar-weekdays {
    margin-bottom: 3px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}
.role-cliente .picker-sheet.calendar-mode .calendar-weekdays span {
    color: #c7bead;
    font-size: 11px;
}
.role-cliente .picker-sheet.calendar-mode .calendar-grid {
    gap: 2px;
    padding-top: 4px;
    background: transparent;
}
.role-cliente .picker-sheet.calendar-mode .calendar-day {
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 0 0 6px;
    border: 0;
    border-radius: 9px;
    color: #eee7d9;
    background: rgba(255,255,255,.025);
    font-size: 12px;
}
.role-cliente .picker-sheet.calendar-mode .calendar-day:hover:not(:disabled) {
    background: rgba(218,179,78,.08);
    box-shadow: inset 0 0 0 1px rgba(218,179,78,.18);
}
.role-cliente .picker-sheet.calendar-mode .calendar-day > span {
    width: 31px;
    height: 31px;
    flex: none;
    border: 1px solid rgba(255,255,255,.04);
    background: rgba(255,255,255,.022);
    font-size: inherit;
}
.role-cliente .picker-sheet.calendar-mode .calendar-day.available > span {
    border-color: rgba(218,179,78,.16);
    background: rgba(218,179,78,.055);
}
.role-cliente .picker-sheet.calendar-mode .calendar-day.selected {
    color: #15130e;
    background: rgba(218,179,78,.1);
    box-shadow: inset 0 0 0 1px rgba(234,202,108,.2);
}
.role-cliente .picker-sheet.calendar-mode .calendar-day.selected > span {
    color: #15130e;
    border-color: #f1d782;
    background: linear-gradient(135deg,#ead078,#bd8d26);
    box-shadow: 0 7px 20px rgba(199,154,40,.28);
}
.role-cliente .picker-sheet.calendar-mode .calendar-day > i {
    left: 50%;
    bottom: 2px;
    transform: translateX(-50%);
}
.role-cliente .picker-sheet.calendar-mode .calendar-day:disabled {
    color: #736f66;
    background: rgba(255,255,255,.012);
    opacity: .72;
}
.role-cliente .picker-sheet.calendar-mode .calendar-day:disabled > span {
    border-color: transparent;
    background: transparent;
}
.role-cliente .picker-sheet.calendar-mode .time-choice-heading h3 {
    color: #f1ede4;
}
.role-cliente .picker-sheet.calendar-mode .time-choice-heading small {
    color: #aaa395;
}
.role-cliente .picker-sheet.calendar-mode .period-tabs button,
.role-cliente .picker-sheet.calendar-mode .slot-grid button {
    border-color: rgba(255,255,255,.09);
    color: #d9d2c5;
    background: #201f1b;
}
.role-cliente .picker-sheet.calendar-mode .period-tabs button.active,
.role-cliente .picker-sheet.calendar-mode .slot-grid button.selected {
    border-color: #bc8d26;
    color: #e8ca72;
    background: rgba(190,143,38,.09);
}

@media (max-width: 760px) {
    .role-cliente.view-agendar .booking-topbar {
        padding-inline: 14px;
    }
    .role-cliente.view-agendar .booking-back {
        width: 40px;
        height: 40px;
        justify-content: center;
        border: 1px solid rgba(220,183,87,.18);
        border-radius: 12px;
        background: rgba(255,255,255,.035);
    }
    .role-cliente.view-agendar .booking-back .lucide {
        width: 27px;
        height: 27px;
    }
    .role-cliente.view-agendar .booking-progress {
        grid-template-columns: repeat(3,28px);
    }
    .role-cliente .picker-sheet.calendar-mode {
        background: #12110e;
    }
    .role-cliente .picker-sheet.calendar-mode > section {
        background:
            radial-gradient(circle at 50% 0,rgba(213,171,67,.1),transparent 29%),
            linear-gradient(180deg,#191813,#11110f 72%);
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-shell {
        padding: 8px 7px 6px;
        border-radius: 14px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-grid {
        gap: 2px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day {
        min-height: 34px;
        border-radius: 8px;
        font-size: 13px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day > span {
        width: 32px;
        height: 32px;
    }
}

@media (max-width: 760px) and (max-height: 620px) {
    .role-cliente .picker-sheet.calendar-mode .calendar-shell {
        padding-block: 5px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day {
        min-height: 26px;
        font-size: 12px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day > span {
        width: 25px;
        height: 25px;
    }
}

/* Client booking mobile rhythm v39 */
@media (max-width: 760px) {
    .role-cliente.view-agendar .booking-topbar {
        height: 54px;
        grid-template-columns: 42px minmax(0,1fr) 42px;
        padding: max(6px,env(safe-area-inset-top)) 15px 6px;
    }
    .role-cliente.view-agendar .booking-back {
        width: 38px;
        height: 38px;
        min-height: 38px;
        border-radius: 10px;
    }
    .role-cliente.view-agendar .booking-back .lucide {
        width: 25px;
        height: 25px;
    }
    .role-cliente.view-agendar .booking-progress {
        grid-column: 2;
        grid-template-columns: repeat(3,29px);
        gap: 6px;
    }
    .role-cliente.view-agendar .booking-progress small {
        margin-top: 1px;
        font-size: 7px;
    }
    .role-cliente.view-agendar .booking-content {
        padding-top: 54px;
    }
    .role-cliente.view-agendar .booking-layout {
        min-height: calc(100dvh - 54px);
    }
    .role-cliente.view-agendar .booking-hero {
        min-height: 190px;
        background-position: center 43%;
    }
    .role-cliente.view-agendar .booking-hero::before {
        background: linear-gradient(0deg,#0b0b0c 0%,rgba(0,0,0,.04) 74%);
    }
    .role-cliente.view-agendar .hero-brand {
        padding: 24px 38px 40px;
    }
    .role-cliente.view-agendar .hero-brand img {
        width: min(61%,210px);
        max-height: 82px;
    }
    .role-cliente.view-agendar .hero-signature {
        inset: auto 24px 19px;
    }
    .role-cliente.view-agendar .hero-signature span {
        font-size: 8px;
    }
    .role-cliente.view-agendar .hero-signature strong {
        margin-top: 5px;
        font-size: 18px;
    }
    .role-cliente.view-agendar .booking-body {
        min-height: auto;
        padding: 15px 22px max(24px,env(safe-area-inset-bottom));
    }
    .role-cliente.view-agendar .booking-heading > span {
        font-size: 9px;
    }
    .role-cliente.view-agendar .booking-heading h2 {
        margin-top: 7px;
        font-size: clamp(29px,8vw,34px);
        line-height: 1.05;
    }
    .role-cliente.view-agendar .booking-heading p {
        margin: 10px auto 16px;
        font-size: 11px;
        line-height: 1.45;
    }
    .role-cliente.view-agendar .booking-selectors {
        gap: 8px;
    }
    .role-cliente.view-agendar .booking-selectors > button {
        min-height: 59px;
        grid-template-columns: 32px minmax(0,1fr) 17px;
        gap: 9px;
        padding: 0 15px;
        border-radius: 13px;
    }
    .role-cliente.view-agendar .booking-selectors small {
        font-size: 8px;
    }
    .role-cliente.view-agendar .booking-selectors strong {
        margin-top: 3px;
        font-size: 12px;
    }
    .role-cliente.view-agendar #booking-total {
        margin-top: 11px;
        padding-top: 11px;
    }
    .role-cliente.view-agendar .booking-submit {
        width: 100%!important;
        min-height: 50px;
        margin: 12px 0 0;
        border-radius: 12px!important;
    }
    .role-cliente.view-agendar .real-operation-note {
        justify-content: center;
        margin: 9px 0 0;
        font-size: 8px;
        line-height: 1.35;
    }
}

@media (max-width: 430px) {
    .role-cliente.view-agendar .booking-progress > span {
        grid-template-columns: none;
    }
    .role-cliente.view-agendar .booking-progress small {
        display: none;
    }
}

@media (max-width: 760px) and (max-height: 700px) {
    .role-cliente.view-agendar .booking-hero {
        min-height: 170px;
    }
    .role-cliente.view-agendar .hero-signature {
        bottom: 15px;
    }
    .role-cliente.view-agendar .booking-body {
        padding-top: 11px;
    }
    .role-cliente.view-agendar .booking-heading p {
        margin-bottom: 12px;
    }
    .role-cliente.view-agendar .booking-selectors > button {
        min-height: 55px;
    }
}

/* Client calendar alignment v40 */
@media (max-width: 760px) {
    .role-cliente .picker-sheet.calendar-mode > section {
        padding: max(12px,env(safe-area-inset-top)) 20px max(12px,env(safe-area-inset-bottom));
        background:
            radial-gradient(circle at 50% -12%,rgba(204,160,49,.08),transparent 30%),
            #0b0b0a;
    }
    .role-cliente .picker-sheet.calendar-mode header {
        min-height: 48px;
        display: grid;
        grid-template-columns: 40px minmax(0,1fr) 40px;
        align-items: center;
        gap: 0;
        padding: 0 0 8px;
        text-align: center;
    }
    .role-cliente .picker-sheet.calendar-mode header > div {
        grid-column: 2;
        min-width: 0;
    }
    .role-cliente .picker-sheet.calendar-mode header h2 {
        margin: 0;
        font-size: 19px;
        line-height: 1.1;
        white-space: nowrap;
    }
    .role-cliente .picker-sheet.calendar-mode .sheet-close {
        width: 36px;
        height: 36px;
        position: static;
        grid-column: 3;
        justify-self: end;
        border: 0;
        border-radius: 10px;
        background: rgba(255,255,255,.035);
    }
    .role-cliente .picker-sheet.calendar-mode .sheet-close .lucide {
        width: 24px;
        height: 24px;
        stroke-width: 2.35;
    }
    .role-cliente .picker-sheet.calendar-mode .sheet-content {
        width: 100%;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-shell {
        width: 100%;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav {
        grid-template-columns: 40px minmax(0,1fr) 40px;
        margin: 0 0 4px;
        padding: 0 1px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav strong {
        font-family: inherit;
        font-size: 14px;
        font-weight: 750;
        line-height: 40px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav button {
        width: 40px;
        height: 40px;
        border: 0;
        border-radius: 10px;
        background: transparent;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav button:hover {
        border: 0;
        background: rgba(213,170,60,.08);
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav .lucide {
        width: 20px;
        height: 20px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-weekdays {
        margin: 0;
        padding-bottom: 3px;
        border-bottom: 1px solid rgba(255,255,255,.055);
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-weekdays span {
        padding: 6px 0;
        color: #aaa69e;
        font-size: 10px;
        font-weight: 750;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-grid {
        width: 100%;
        min-height: 0;
        align-content: start;
        grid-auto-rows: 40px;
        row-gap: 1px;
        column-gap: 0;
        padding: 4px 0 0;
        background: transparent;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day,
    .role-cliente .picker-sheet.calendar-mode .calendar-blank {
        width: 100%;
        min-height: 40px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day {
        display: grid;
        place-items: center;
        gap: 0;
        padding: 0 0 7px;
        border: 0;
        border-radius: 0;
        color: #e6e2da;
        background: transparent;
        box-shadow: none;
        font-size: 13px;
        font-weight: 700;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day:hover:not(:disabled),
    .role-cliente .picker-sheet.calendar-mode .calendar-day.selected {
        background: transparent;
        box-shadow: none;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day > span,
    .role-cliente .picker-sheet.calendar-mode .calendar-day.available > span {
        width: 31px;
        height: 31px;
        display: grid;
        place-items: center;
        border: 0;
        border-radius: 50%;
        background: transparent;
        box-shadow: none;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day.selected > span {
        color: #17130a;
        border: 0;
        background: linear-gradient(135deg,#ebce6a,#bd8a20);
        box-shadow: 0 5px 15px rgba(202,154,38,.3);
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day > i {
        width: 4px;
        height: 4px;
        bottom: 2px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day:disabled {
        color: #5c5a55;
        background: transparent;
        opacity: 1;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day:disabled > span {
        border: 0;
        background: transparent;
    }
    .role-cliente .picker-sheet.calendar-mode .time-choice-heading {
        margin-top: 12px;
    }
}

@media (max-width: 760px) and (max-height: 620px) {
    .role-cliente .picker-sheet.calendar-mode > section {
        padding-inline: 17px;
    }
    .role-cliente .picker-sheet.calendar-mode header {
        min-height: 42px;
        padding-bottom: 4px;
    }
    .role-cliente .picker-sheet.calendar-mode header h2 {
        font-size: 18px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav strong {
        line-height: 34px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-nav button {
        height: 34px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-grid {
        grid-auto-rows: 32px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day,
    .role-cliente .picker-sheet.calendar-mode .calendar-blank {
        min-height: 32px;
    }
    .role-cliente .picker-sheet.calendar-mode .calendar-day > span,
    .role-cliente .picker-sheet.calendar-mode .calendar-day.available > span {
        width: 27px;
        height: 27px;
    }
}

/* App interaction and cancelled archive v41 */
body,
body * {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
}
input,
textarea,
[contenteditable="true"],
.selectable-text {
    -webkit-user-select: text;
    user-select: text;
    -webkit-touch-callout: default;
}
img,
a {
    -webkit-user-drag: none;
}
.native-picker-input {
    position: relative;
    cursor: pointer;
}
.native-picker-input::-webkit-calendar-picker-indicator {
    width: auto;
    height: auto;
    position: absolute;
    inset: 0;
    padding: 0;
    opacity: 0;
    cursor: pointer;
}
.profile-avatar-form {
    flex: 0 0 auto;
    margin: 0;
}
.profile-avatar-form.is-uploading {
    pointer-events: none;
}
.profile-avatar-form.is-uploading .profile-avatar-large {
    opacity: .62;
    filter: saturate(.55);
}
.profile-avatar-form.is-uploading .profile-avatar-camera .lucide {
    animation: spin .8s linear infinite;
}
.agenda-cancelled-link {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 9px;
    color: #a4a5a9;
    background: #121314;
    font-size: 9px;
    font-weight: 780;
}
.agenda-cancelled-link:hover,
.agenda-cancelled-link.active {
    border-color: rgba(211,104,104,.32);
    color: #e3b5b5;
    background: rgba(199,83,83,.065);
}
.agenda-cancelled-link .lucide {
    width: 16px;
    height: 16px;
    color: #c56d6d;
}
.agenda-cancelled-link b {
    min-width: 20px;
    height: 20px;
    display: grid;
    place-items: center;
    padding: 0 5px;
    border-radius: 99px;
    color: #f1c6c6;
    background: rgba(213,91,91,.13);
    font-size: 8px;
}
.agenda-cancelled-footer {
    margin-top: 22px;
}
.agenda-cancelled-footer > a {
    min-height: 82px;
    display: grid;
    grid-template-columns: 46px minmax(0,1fr) auto 18px;
    align-items: center;
    gap: 14px;
    padding: 14px 17px;
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 12px;
    color: #a4a5a9;
    background: linear-gradient(120deg,#141516,#101112);
    box-shadow: 0 14px 36px rgba(0,0,0,.15);
    transition: border-color .2s ease,background .2s ease,transform .2s ease;
}
.agenda-cancelled-footer > a:hover {
    border-color: rgba(204,95,95,.28);
    background: linear-gradient(120deg,rgba(151,57,57,.07),#111213 58%);
    transform: translateY(-1px);
}
.agenda-cancelled-footer-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(204,95,95,.2);
    border-radius: 10px;
    color: #cc7777;
    background: rgba(195,75,75,.065);
}
.agenda-cancelled-footer-icon .lucide { width: 21px; height: 21px; }
.agenda-cancelled-footer-copy { min-width: 0; display: grid; gap: 3px; }
.agenda-cancelled-footer-copy small {
    color: #a46c6c;
    font-size: 7px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.agenda-cancelled-footer-copy strong {
    color: #e4e4e5;
    font: 500 19px/1.05 Georgia,"Times New Roman",serif;
}
.agenda-cancelled-footer-copy em {
    overflow: hidden;
    color: #737478;
    font-size: 8px;
    font-style: normal;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.agenda-cancelled-footer > a > b {
    min-width: 27px;
    height: 27px;
    display: grid;
    place-items: center;
    padding: 0 7px;
    border-radius: 99px;
    color: #efc4c4;
    background: rgba(205,85,85,.12);
    font-size: 9px;
}
.agenda-cancelled-footer-arrow { width: 17px; height: 17px; color: #68696d; }
.cancelled-archive {
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.095);
    border-radius: 13px;
    background: #111213;
    box-shadow: 0 20px 55px rgba(0,0,0,.18);
}
.cancelled-archive-head {
    min-height: 112px;
    display: grid;
    grid-template-columns: 52px minmax(0,1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    background: radial-gradient(circle at 90% 0,rgba(188,70,70,.09),transparent 32%),linear-gradient(120deg,#171819,#111213 68%);
}
.cancelled-archive-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(204,95,95,.22);
    border-radius: 12px;
    color: #d27878;
    background: rgba(195,75,75,.075);
}
.cancelled-archive-icon .lucide {
    width: 23px;
    height: 23px;
}
.cancelled-archive-head h3 {
    margin: 5px 0 5px;
    font: 500 24px/1.1 Georgia,"Times New Roman",serif;
}
.cancelled-archive-head p {
    margin: 0;
    color: #7e7f83;
    font-size: 9px;
    line-height: 1.5;
}
.cancelled-archive-count {
    display: grid;
    justify-items: end;
}
.cancelled-archive-count strong {
    color: #dda1a1;
    font: 500 29px/1 Georgia,"Times New Roman",serif;
}
.cancelled-archive-count small {
    margin-top: 5px;
    color: #696a6e;
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.cancelled-archive-list {
    display: grid;
    gap: 1px;
    background: rgba(255,255,255,.055);
}
.cancelled-record {
    min-height: 92px;
    display: grid;
    grid-template-columns: 72px 44px minmax(0,1fr) auto auto;
    align-items: center;
    gap: 14px;
    padding: 15px 18px;
    background: #121314;
}
.cancelled-record-date {
    display: grid;
    justify-items: center;
    padding-right: 14px;
    border-right: 1px solid rgba(255,255,255,.07);
}
.cancelled-record-date strong {
    color: #d5d5d7;
    font: 500 17px/1 Georgia,"Times New Roman",serif;
}
.cancelled-record-date span {
    margin-top: 5px;
    color: #747579;
    font-size: 9px;
}
.cancelled-record-copy {
    min-width: 0;
}
.cancelled-record-copy small {
    color: #696a6e;
    font-size: 7px;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.cancelled-record-copy h4 {
    overflow: hidden;
    margin: 5px 0 4px;
    color: #dedee0;
    font-size: 13px;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.cancelled-record-copy p {
    overflow: hidden;
    margin: 0;
    color: #77787c;
    font-size: 9px;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.cancelled-record-meta {
    display: grid;
    justify-items: end;
    gap: 7px;
}
.cancelled-record-meta strong {
    color: #a8a8ac;
    font-size: 11px;
}
.cancelled-record > .agenda-action {
    min-height: 40px;
}
.cancelled-pagination {
    margin-top: 14px;
}

@media (max-width: 760px) {
    .profile-avatar-form {
        align-self: center;
    }
    .view-agenda.role-barbeiro .agenda-pro-actions {
        display: grid;
        grid-template-columns: auto minmax(0,1fr);
        gap: 8px;
    }
    .view-agenda.role-barbeiro .agenda-cancelled-link {
        min-height: 49px;
        padding-inline: 13px;
    }
    .view-agenda.role-barbeiro .agenda-pro-actions .gold-button {
        width: 100%;
    }
    .cancelled-archive-head {
        min-height: 104px;
        grid-template-columns: 45px minmax(0,1fr) auto;
        gap: 12px;
        padding: 17px 14px;
    }
    .cancelled-archive-icon {
        width: 45px;
        height: 45px;
        border-radius: 10px;
    }
    .cancelled-archive-head h3 {
        font-size: 20px;
    }
    .cancelled-archive-head p {
        font-size: 9px;
    }
    .cancelled-archive-count strong {
        font-size: 25px;
    }
    .cancelled-record {
        grid-template-columns: 58px 40px minmax(0,1fr) auto;
        gap: 10px;
        padding: 13px;
    }
    .cancelled-record-date {
        padding-right: 10px;
    }
    .cancelled-record-copy h4 {
        font-size: 12px;
    }
    .cancelled-record-meta {
        gap: 5px;
    }
    .cancelled-record > .agenda-action {
        grid-column: 3/-1;
        width: 100%;
    }
}

@media (max-width: 430px) {
    .view-agenda.role-barbeiro .agenda-pro-actions {
        grid-template-columns: 1fr;
    }
    .agenda-cancelled-footer { margin-top: 18px; }
    .agenda-cancelled-footer > a {
        grid-template-columns: 42px minmax(0,1fr) auto 16px;
        gap: 11px;
        min-height: 76px;
        padding: 12px;
    }
    .agenda-cancelled-footer-icon { width: 42px; height: 42px; }
    .agenda-cancelled-footer-copy strong { font-size: 18px; }
    .agenda-cancelled-footer-copy em { font-size: 8px; }
    .cancelled-archive-head {
        grid-template-columns: 42px minmax(0,1fr);
    }
    .cancelled-archive-count {
        grid-column: 2;
        grid-row: 2;
        justify-items: start;
        display: flex;
        align-items: baseline;
        gap: 6px;
    }
    .cancelled-record {
        grid-template-columns: 54px 38px minmax(0,1fr);
    }
    .cancelled-record-meta {
        grid-column: 2/-1;
        justify-items: start;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .cancelled-record > .agenda-action {
        grid-column: 2/-1;
    }
}

/* Administrative command center and shared calendar v43 */
.role-admin .content { max-width: 1240px; }
.admin-control-hero {
    min-height: 270px;
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0,1fr) 250px;
    align-items: end;
    gap: 34px;
    padding: 34px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 15px;
    background: #111213 var(--hero-image) center 46%/cover no-repeat;
    box-shadow: 0 24px 70px rgba(0,0,0,.28);
}
.admin-control-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(5,6,6,.98) 0%,rgba(5,6,6,.86) 48%,rgba(5,6,6,.48)),linear-gradient(0deg,rgba(5,6,6,.88),transparent 78%); }
.admin-control-copy,.admin-live-card { position: relative; z-index: 1; }
.admin-control-copy h2 { margin: 8px 0 12px; color: #f2f2f2; font: 500 clamp(35px,4.3vw,53px)/.99 Georgia,"Times New Roman",serif; letter-spacing: -.04em; }
.admin-control-copy h2 em { color: #d6ae4c; font-style: normal; }
.admin-control-copy > p { max-width: 640px; margin: 0; color: #b1b1b5; font-size: 11px; line-height: 1.6; }
.admin-control-actions { display: flex; align-items: center; gap: 9px; margin-top: 23px; }
.admin-control-secondary { min-height: 45px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; border: 1px solid rgba(255,255,255,.16); border-radius: 9px; color: #e0e0e2; background: rgba(9,10,10,.62); backdrop-filter: blur(8px); font-size: 10px; font-weight: 750; }
.admin-live-card { min-height: 166px; align-self: end; padding: 20px; border: 1px solid rgba(218,179,83,.25); border-radius: 12px; background: rgba(12,13,13,.8); backdrop-filter: blur(13px); }
.admin-live-card > span { display: flex; align-items: center; gap: 8px; color: #c7a44d; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.admin-live-card > span i,.admin-command-status i { width: 7px; height: 7px; display: inline-block; border-radius: 50%; background: #61ca84; box-shadow: 0 0 0 5px rgba(97,202,132,.09); }
.admin-live-card > strong { display: block; margin-top: 22px; color: #f0d27a; font: 500 42px/1 Georgia,"Times New Roman",serif; }
.admin-live-card p { margin: 6px 0 15px; color: #c2c2c5; font-size: 10px; }
.admin-live-card small { display: flex; align-items: center; gap: 6px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.08); color: #727377; font-size: 8px; }
.admin-live-card small .lucide { width: 13px; height: 13px; color: #a8893e; }
.role-admin .metric-grid { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; margin-top: 12px; }
.role-admin .metric-grid article { min-height: 112px; border-radius: 11px; }
.admin-command-center { overflow: hidden; margin-top: 14px; border: 1px solid rgba(255,255,255,.09); border-radius: 13px; background: #111213; box-shadow: 0 18px 55px rgba(0,0,0,.16); }
.admin-command-center > header { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 21px; border-bottom: 1px solid rgba(255,255,255,.075); background: linear-gradient(105deg,rgba(255,255,255,.025),transparent 55%),radial-gradient(circle at 94% 0,rgba(204,159,49,.1),transparent 25%); }
.admin-command-center h3 { margin: 5px 0 0; font: 500 24px/1.1 Georgia,"Times New Roman",serif; }
.admin-command-center header p { margin: 7px 0 0; color: #77787c; font-size: 9px; }
.admin-command-status { display: inline-flex; align-items: center; gap: 10px; color: #8f9094; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.admin-command-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; background: rgba(255,255,255,.065); }
.admin-command-grid > a { min-height: 84px; display: grid; grid-template-columns: 42px minmax(0,1fr) 18px; align-items: center; gap: 13px; padding: 14px 17px; color: #d9d9dc; background: #121314; transition: background .18s ease,color .18s ease; }
.admin-command-grid > a:hover { background: #18191a; }
.admin-command-grid > a.featured { background: linear-gradient(105deg,rgba(205,163,61,.13),#131415 60%); }
.admin-command-icon { width: 41px; height: 41px; display: grid; place-items: center; border: 1px solid rgba(205,163,61,.17); border-radius: 9px; color: #d6ac47; background: rgba(205,163,61,.07); }
.admin-command-icon .lucide { width: 19px; height: 19px; }
.admin-command-grid a > span:nth-child(2) { min-width: 0; }
.admin-command-grid small,.admin-command-grid strong,.admin-command-grid em { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.admin-command-grid small { color: #68696d; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.admin-command-grid strong { margin-top: 4px; font-size: 11px; }
.admin-command-grid em { margin-top: 4px; color: #77787b; font-size: 8px; font-style: normal; }
.admin-command-grid > a > .lucide { width: 16px; height: 16px; color: #5f6064; }

.admin-agenda-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; padding: 7px 2px 20px; border-bottom: 1px solid rgba(255,255,255,.09); }
.admin-agenda-hero h2 { margin: 6px 0 8px; font: 500 38px/1 Georgia,"Times New Roman",serif; letter-spacing: -.03em; }
.admin-agenda-hero p { max-width: 640px; margin: 0; color: #85868b; font-size: 10px; line-height: 1.6; }
.admin-agenda-actions { display: flex; align-items: center; gap: 8px; }
.admin-agenda-filters { display: grid; grid-template-columns: minmax(190px,.8fr) minmax(190px,.7fr) auto 1fr; align-items: end; gap: 9px; margin: 12px 0; padding: 11px; border: 1px solid rgba(255,255,255,.085); border-radius: 10px; background: #101112; }
.admin-agenda-filters label { display: grid; gap: 6px; }
.admin-agenda-filters label > span { color: #727378; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.admin-agenda-filters select { width: 100%; min-height: 41px; padding: 0 34px 0 11px; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; color: #d2d2d5; background: #171819; font-size: 10px; }
.admin-agenda-filters > button { min-height: 41px; }
.admin-cancelled-shortcut { justify-self: end; min-height: 41px; display: inline-flex; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid rgba(225,105,105,.16); border-radius: 8px; color: #b98d8d; background: rgba(225,105,105,.04); font-size: 9px; font-weight: 750; }
.admin-cancelled-shortcut b { min-width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; color: #e1a2a2; background: rgba(225,105,105,.11); font-size: 8px; }
.view-agenda.role-admin .agenda-calendar-pro { margin-top: 0; }
.view-agenda.role-admin .agenda-month-nav { grid-template-columns: 42px 42px; }
.view-agenda.role-admin .agenda-month-nav a { min-width: 42px; height: 42px; }
.view-agenda.role-admin .agenda-calendar-weekdays span { font-size: 9px; }
.view-agenda.role-admin .agenda-date { min-height: 104px; padding: 11px; }
.view-agenda.role-admin .agenda-date-top b { width: 30px; height: 30px; font-size: 12px; }
.view-agenda.role-admin .agenda-date-info strong { font-size: 21px; }
.view-agenda.role-admin .agenda-date-info small,.view-agenda.role-admin .agenda-date-status small,.view-agenda.role-admin .agenda-date-empty small { font-size: 8px; }
.view-agenda.role-admin .agenda-day-panel { position: relative; scroll-margin-top: 82px; margin-top: 24px; }
.view-agenda.role-admin .agenda-day-heading { margin-bottom: 14px; padding-bottom: 15px; }
.view-agenda.role-admin .agenda-day-heading h3 { font-size: 27px; }
.view-agenda.role-admin .agenda-day-heading p { font-size: 10px; }
.view-agenda.role-admin .agenda-event { grid-template-columns: 76px minmax(0,1fr); gap: 14px; }
.view-agenda.role-admin .agenda-event-rail strong { font-size: 17px; }
.view-agenda.role-admin .agenda-event-rail span { font-size: 9px; }
.view-agenda.role-admin .agenda-event-card > header { min-height: 91px; grid-template-columns: 51px minmax(0,1fr) auto; gap: 13px; padding: 16px 18px; }
.view-agenda.role-admin .agenda-client-avatar { width: 50px; height: 50px; font-size: 11px; }
.view-agenda.role-admin .agenda-client-copy > span { font-size: 9px; }
.view-agenda.role-admin .agenda-client-copy h4 { margin: 6px 0 4px; font-size: 16px; }
.view-agenda.role-admin .agenda-client-copy p { display: flex; align-items: center; gap: 6px; font-size: 10px; }
.view-agenda.role-admin .agenda-client-copy p .lucide { width: 13px; height: 13px; color: #b28c32; }
.view-agenda.role-admin .agenda-event-details > span { min-height: 72px; padding: 13px 18px; }
.view-agenda.role-admin .agenda-event-details strong { margin-top: 5px; font-size: 11px; }
.view-agenda.role-admin .agenda-event-actions { min-height: 64px; gap: 8px; padding: 11px 15px; }
.view-agenda.role-admin .agenda-action { min-height: 41px; padding-inline: 14px; font-size: 10px; }
.view-agenda.role-admin .agenda-selection-empty { min-height: 164px; grid-template-columns: 56px minmax(0,1fr); border-style: solid; border-color: rgba(205,163,61,.2); background: radial-gradient(circle at 7% 50%,rgba(205,163,61,.1),transparent 25%),#111213; }
.view-agenda.role-admin .agenda-selection-empty > span { width: 52px; height: 52px; border-radius: 12px; }
.view-agenda.role-admin .agenda-selection-empty small { display: block; margin-bottom: 6px; color: #bd9742; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.view-agenda.role-admin .agenda-day-panel.is-updating { min-height: 260px; overflow: hidden; pointer-events: none; }
.view-agenda.role-admin .agenda-day-panel.is-updating > * { opacity: .22; filter: saturate(.45); }
.view-agenda.role-admin .agenda-day-panel.is-updating::after { content: "Carregando atendimentos…"; position: absolute; z-index: 4; inset: 0; display: grid; place-items: center; color: #e1bd64; background: rgba(9,10,10,.76); font-size: 11px; font-weight: 800; letter-spacing: .04em; }
.admin-agenda-pagination { margin-left: 90px; }

@media (max-width: 1050px) {
    .role-admin .metric-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .admin-control-hero { grid-template-columns: minmax(0,1fr) 220px; }
    .admin-agenda-filters { grid-template-columns: 1fr 1fr auto; }
    .admin-cancelled-shortcut { grid-column: 1/-1; justify-self: stretch; justify-content: center; }
}

@media (max-width: 760px) {
    .role-admin .content { padding-top: 13px; }
    .admin-control-hero { min-height: 330px; grid-template-columns: 1fr; gap: 17px; padding: 23px 18px; border-radius: 13px; }
    .admin-control-copy h2 { font-size: 36px; }
    .admin-control-copy > p { font-size: 10px; }
    .admin-live-card { min-height: 118px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 14px; padding: 15px; }
    .admin-live-card > span,.admin-live-card small { grid-column: 1/-1; }
    .admin-live-card > strong { grid-column: 2; grid-row: 2/4; margin: 0; font-size: 37px; }
    .admin-live-card p { margin: 0; }
    .role-admin .metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
    .role-admin .metric-grid article { min-height: 98px; }
    .role-admin .metric-grid article:last-child:nth-child(odd) { grid-column: 1/-1; }
    .admin-command-center > header { align-items: flex-start; flex-direction: column; gap: 12px; }
    .admin-command-grid { grid-template-columns: 1fr; }
    .admin-command-grid > a { min-height: 79px; }
    .admin-agenda-hero { align-items: stretch; flex-direction: column; gap: 15px; padding-top: 2px; }
    .admin-agenda-hero h2 { font-size: 32px; }
    .admin-agenda-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .admin-agenda-actions > * { min-width: 0; padding-inline: 9px; }
    .admin-agenda-filters { grid-template-columns: 1fr 1fr; padding: 9px; }
    .admin-agenda-filters > button,.admin-cancelled-shortcut { grid-column: auto; }
    .view-agenda.role-admin .agenda-calendar-top { min-height: 84px; padding: 14px; }
    .view-agenda.role-admin .agenda-month-copy h3 { font-size: 23px; }
    .view-agenda.role-admin .agenda-month-copy p { display: none; }
    .view-agenda.role-admin .agenda-month-nav { grid-template-columns: 38px 38px; }
    .view-agenda.role-admin .agenda-month-nav a { min-width: 38px; height: 38px; }
    .view-agenda.role-admin .agenda-calendar-body { padding: 9px; }
    .view-agenda.role-admin .agenda-calendar-weekdays { padding-bottom: 8px; }
    .view-agenda.role-admin .agenda-calendar-weekdays span { font-size: 9px; }
    .view-agenda.role-admin .agenda-date { min-height: 69px; padding: 6px; }
    .view-agenda.role-admin .agenda-date-top b { width: 25px; height: 25px; font-size: 12px; }
    .view-agenda.role-admin .agenda-date-top em { display: none; }
    .view-agenda.role-admin .agenda-date-info { margin-top: 7px; }
    .view-agenda.role-admin .agenda-date-info strong { font-size: 14px; }
    .view-agenda.role-admin .agenda-date-info small,.view-agenda.role-admin .agenda-date-status small,.view-agenda.role-admin .agenda-date-empty small { display: none; }
    .view-agenda.role-admin .agenda-calendar-summary { min-height: 61px; }
    .view-agenda.role-admin .agenda-calendar-summary small { font-size: 8px; }
    .view-agenda.role-admin .agenda-calendar-summary strong { font-size: 10px; }
    .view-agenda.role-admin .agenda-day-panel { scroll-margin-top: 68px; margin-top: 22px; }
    .view-agenda.role-admin .agenda-day-heading h3 { font-size: 22px; }
    .view-agenda.role-admin .agenda-day-heading p { font-size: 10px; line-height: 1.45; }
    .view-agenda.role-admin .agenda-event { grid-template-columns: 52px minmax(0,1fr); gap: 9px; }
    .view-agenda.role-admin .agenda-event-card > header { grid-template-columns: 46px minmax(0,1fr); gap: 11px; padding: 14px; }
    .view-agenda.role-admin .agenda-client-avatar { width: 45px; height: 45px; }
    .view-agenda.role-admin .agenda-client-copy h4 { font-size: 15px; }
    .view-agenda.role-admin .agenda-client-copy p { font-size: 11px; }
    .view-agenda.role-admin .agenda-event-card > header > .status { grid-column: 2; width: fit-content; margin-top: -2px; }
    .view-agenda.role-admin .agenda-event-details { grid-template-columns: minmax(0,1fr) 96px; }
    .view-agenda.role-admin .agenda-event-details > span { min-height: 66px; padding: 12px; }
    .view-agenda.role-admin .agenda-payment { grid-column: 1/-1; }
    .view-agenda.role-admin .agenda-event-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; padding: 10px; }
    .view-agenda.role-admin .agenda-action { width: 100%; min-height: 44px; padding-inline: 8px; font-size: 9px; }
    .view-agenda.role-admin .admin-event-actions > :last-child:nth-child(3) { grid-column: 1/-1; }
    .admin-agenda-pagination { margin-left: 61px; }
}

@media (max-width: 520px) {
    .admin-control-actions { display: grid; grid-template-columns: 1fr; }
    .admin-control-actions > * { width: 100%; }
}

@media (max-width: 430px) {
    .admin-agenda-actions { grid-template-columns: 1fr; }
    .admin-agenda-filters { grid-template-columns: 1fr; }
    .admin-agenda-filters > button,.admin-cancelled-shortcut { grid-column: 1; }
    .view-agenda.role-admin .agenda-month-copy .eyebrow { display: none; }
    .view-agenda.role-admin .agenda-month-copy h3 { font-size: 20px; }
    .view-agenda.role-admin .agenda-date { min-height: 66px; padding: 5px; }
    .view-agenda.role-admin .agenda-date-top b { width: 24px; height: 24px; font-size: 12px; }
    .view-agenda.role-admin .agenda-date-info strong { font-size: 13px; }
    .view-agenda.role-admin .agenda-calendar-summary > span { padding-inline: 6px; }
    .view-agenda.role-admin .agenda-calendar-summary > span:nth-child(2),
    .view-agenda.role-admin .agenda-calendar-summary > span:nth-child(3) { display: none; }
    .view-agenda.role-admin .agenda-day-heading h3 { font-size: 20px; }
    .view-agenda.role-admin .agenda-event { grid-template-columns: 49px minmax(0,1fr); gap: 8px; }
    .view-agenda.role-admin .agenda-event-card > header { padding: 13px; }
    .admin-agenda-pagination { margin-left: 57px; }
}

/* Native administrative team management v47 */
.admin-team-editor[hidden],.admin-team-loading[hidden],.admin-team-photo-preview[hidden],.admin-team-photo-empty[hidden] { display: none !important; }
.admin-team-editor { margin: 4px 0 28px; overflow: hidden; border: 1px solid rgba(205,163,61,.22); border-radius: 15px; background: linear-gradient(145deg,rgba(205,163,61,.055),transparent 24%),#111213; box-shadow: 0 22px 60px rgba(0,0,0,.3); }
.admin-team-editor > header { min-height: 104px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 23px 25px; border-bottom: 1px solid rgba(255,255,255,.075); background: linear-gradient(90deg,rgba(205,163,61,.08),transparent 42%); }
.admin-team-editor > header h3 { margin: 5px 0 3px; color: #f2f0eb; font-family: Georgia,serif; font-size: 29px; font-weight: 500; letter-spacing: -.025em; }
.admin-team-editor > header p { margin: 0; color: #858585; font-size: 10px; }
.admin-team-editor > header .sheet-close { flex: 0 0 auto; }
.admin-team-loading { min-height: 230px; display: flex; align-items: center; justify-content: center; gap: 10px; color: #caa344; font-size: 11px; font-weight: 750; }
.admin-team-loading .lucide-loader { animation: spin 1s linear infinite; }
.admin-team-editor form { display: grid; gap: 15px; padding: 18px; }
.admin-team-form-section { padding: 19px; border: 1px solid rgba(255,255,255,.07); border-radius: 11px; background: rgba(255,255,255,.018); }
.admin-team-section-heading { min-height: 45px; display: flex; align-items: center; gap: 12px; margin-bottom: 17px; }
.admin-team-section-icon { width: 40px; height: 40px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid rgba(205,163,61,.22); border-radius: 9px; color: #d2ab4c; background: rgba(205,163,61,.07); }
.admin-team-section-icon .lucide { width: 18px; height: 18px; }
.admin-team-section-heading > div { min-width: 0; }
.admin-team-section-heading small { display: block; margin-bottom: 4px; color: #a88435; font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .14em; }
.admin-team-section-heading h4 { margin: 0; color: #e9e6df; font-size: 16px; font-weight: 750; }
.admin-team-selection-count { margin-left: auto; padding: 6px 9px; border: 1px solid rgba(205,163,61,.15); border-radius: 6px; color: #b99543; background: rgba(205,163,61,.045); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.admin-team-profile-grid { display: grid; grid-template-columns: 170px minmax(0,1fr); gap: 22px; align-items: start; }
.admin-team-photo { display: grid; justify-items: center; gap: 10px; padding: 17px 12px; border: 1px dashed rgba(205,163,61,.2); border-radius: 10px; background: rgba(0,0,0,.16); text-align: center; }
.admin-team-photo-preview { width: 102px; height: 102px; overflow: hidden; border: 2px solid rgba(205,163,61,.37); border-radius: 50%; background: #1a1b1c; box-shadow: 0 0 0 6px rgba(205,163,61,.045); }
.admin-team-photo-preview img { width: 100%; height: 100%; display: block; object-fit: cover; }
.admin-team-photo-preview > span { width: 100%; height: 100%; display: grid; place-items: center; color: #c9a143; }
.admin-team-photo-preview > span .lucide { width: 34px; height: 34px; }
.admin-team-photo > label { cursor: pointer; }
.admin-team-photo > label input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; pointer-events: none; }
.admin-team-photo > label > span { min-height: 36px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; border: 1px solid rgba(205,163,61,.22); border-radius: 7px; color: #d9b557; background: rgba(205,163,61,.065); font-size: 9px; }
.admin-team-photo > label .lucide { width: 14px; height: 14px; }
.admin-team-photo > small { color: #707070; font-size: 8px; line-height: 1.45; }
.admin-team-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.admin-team-fields label { min-width: 0; display: grid; gap: 7px; color: #9b9b9b; font-size: 9px; font-weight: 700; }
.admin-team-fields label.wide { grid-column: 1/-1; }
.admin-team-fields input:not([type="checkbox"]),.admin-team-fields textarea,.admin-team-fields select,.admin-team-schedule-row input[type="time"],.admin-team-schedule-row select { width: 100%; min-height: 44px; padding: 0 12px; border: 1px solid rgba(255,255,255,.105); border-radius: 7px; outline: none; color: #efede7; background: #0b0c0d; font: inherit; font-size: 11px; transition: border-color .18s,box-shadow .18s; }
.admin-team-fields textarea { min-height: 84px; padding-top: 12px; resize: vertical; line-height: 1.5; }
.admin-team-fields input:focus,.admin-team-fields textarea:focus,.admin-team-fields select:focus,.admin-team-schedule-row input:focus,.admin-team-schedule-row select:focus { border-color: rgba(205,163,61,.52); box-shadow: 0 0 0 3px rgba(205,163,61,.075); }
.admin-team-fields label > small { color: #686868; font-size: 8px; font-weight: 500; }
.admin-team-specialty-grid { grid-template-columns: minmax(0,1.4fr) minmax(215px,.6fr); }
.admin-team-active { min-height: 69px; align-self: end; display: flex !important; align-items: center; gap: 11px !important; padding: 12px; border: 1px solid rgba(61,173,104,.15); border-radius: 8px; background: rgba(61,173,104,.035); cursor: pointer; }
.admin-team-active input { width: 19px; height: 19px; flex: 0 0 auto; accent-color: #cda33d; }
.admin-team-active > span { display: grid; gap: 4px; }
.admin-team-active strong { color: #dcd9d1; font-size: 10px; }
.admin-team-active small { color: #737373; font-size: 8px; font-weight: 500; line-height: 1.35; }
.admin-team-service-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.admin-team-service-options > label { min-height: 63px; position: relative; display: flex; align-items: center; gap: 10px; padding: 11px 38px 11px 12px; border: 1px solid rgba(255,255,255,.075); border-radius: 8px; background: #0d0e0f; cursor: pointer; transition: border-color .18s,background .18s,transform .18s; }
.admin-team-service-options > label:hover { border-color: rgba(205,163,61,.3); transform: translateY(-1px); }
.admin-team-service-options input { position: absolute; opacity: 0; pointer-events: none; }
.admin-team-service-options label > span { min-width: 0; display: grid; gap: 5px; }
.admin-team-service-options strong { overflow: hidden; color: #d7d4ce; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.admin-team-service-options small { color: #777; font-size: 8px; }
.admin-team-service-options label > .lucide { width: 19px; height: 19px; position: absolute; right: 12px; color: #454545; }
.admin-team-service-options label:has(input:checked) { border-color: rgba(205,163,61,.48); background: rgba(205,163,61,.075); }
.admin-team-service-options label:has(input:checked) strong,.admin-team-service-options label:has(input:checked) > .lucide { color: #e1bd62; }
.admin-team-schedule { overflow: hidden; border: 1px solid rgba(255,255,255,.07); border-radius: 9px; }
.admin-team-schedule-labels,.admin-team-schedule-row { display: grid; grid-template-columns: minmax(142px,1.15fr) repeat(4,minmax(86px,.72fr)) minmax(112px,.92fr); gap: 8px; align-items: center; }
.admin-team-schedule-labels { min-height: 35px; padding: 0 11px; color: #6f6f6f; background: #0a0b0c; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.admin-team-schedule-row { min-height: 60px; padding: 8px 11px; border-top: 1px solid rgba(255,255,255,.055); transition: opacity .18s,background .18s; }
.admin-team-schedule-row:first-of-type { border-top: 0; }
.admin-team-schedule-row > label:not(.admin-team-day-toggle) { display: grid; gap: 4px; }
.admin-team-schedule-row > label:not(.admin-team-day-toggle) > span { display: none; }
.admin-team-schedule-row input[type="time"],.admin-team-schedule-row select { min-height: 37px; padding: 0 9px; font-size: 9px; }
.admin-team-day-toggle { cursor: pointer; }
.admin-team-day-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.admin-team-day-toggle > span { display: flex; align-items: center; gap: 9px; color: #d7d4ce; font-size: 10px; font-weight: 750; }
.admin-team-day-toggle i { width: 29px; height: 16px; position: relative; flex: 0 0 auto; border-radius: 20px; background: #343536; transition: background .18s; }
.admin-team-day-toggle i::after { content: ""; width: 10px; height: 10px; position: absolute; top: 3px; left: 3px; border-radius: 50%; background: #858585; transition: transform .18s,background .18s; }
.admin-team-day-toggle input:checked + span i { background: rgba(205,163,61,.35); }
.admin-team-day-toggle input:checked + span i::after { transform: translateX(13px); background: #d0a642; }
.admin-team-schedule-row.is-off { background: rgba(255,255,255,.012); }
.admin-team-schedule-row.is-off > label:not(.admin-team-day-toggle) { opacity: .28; }
.admin-team-form-actions { display: flex; justify-content: flex-end; gap: 9px; padding-top: 3px; }
.admin-team-form-actions button { min-width: 155px; }
.role-admin .admin-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.role-admin .admin-team-grid .team-card { min-width: 0; overflow: hidden; padding: 0; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; background: #111213; text-align: left; box-shadow: 0 14px 34px rgba(0,0,0,.17); }
.role-admin .admin-team-grid .team-card.is-paused { opacity: .68; }
.team-card-main { min-height: 115px; position: relative; display: grid; grid-template-columns: 60px minmax(0,1fr) auto; grid-template-rows: auto auto auto; align-content: center; gap: 4px 14px; padding: 18px; }
.team-card-main .team-avatar { width: 58px; height: 58px; grid-row: 1/4; align-self: center; margin: 0; border: 1px solid rgba(205,163,61,.28); font-size: 13px; }
.team-card-main .status-dot { width: 10px; height: 10px; top: auto; right: auto; bottom: 27px; left: 66px; border: 2px solid #111213; }
.team-card-main h3 { grid-column: 2; margin: 0; color: #efede7; font-size: 15px; line-height: 1.15; }
.team-card-main > p { grid-column: 2; margin: 0; overflow: hidden; color: #ad904e; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.team-card-main > small { grid-column: 2/4; overflow: hidden; color: #6f6f6f; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.admin-team-state { grid-column: 3; grid-row: 1/3; align-self: start; display: inline-flex; align-items: center; gap: 5px; padding: 5px 7px; border: 1px solid rgba(255,255,255,.08); border-radius: 5px; color: #808080; background: rgba(255,255,255,.025); font-size: 7px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.admin-team-state i { width: 5px; height: 5px; border-radius: 50%; background: #717171; }
.admin-team-state.active { color: #8fd2a6; border-color: rgba(61,173,104,.18); background: rgba(61,173,104,.05); }
.admin-team-state.active i { background: #48b96f; }
.admin-team-stats { min-height: 69px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.06); border-bottom: 1px solid rgba(255,255,255,.06); background: #0d0e0f; }
.admin-team-stats > span { min-width: 0; display: grid; align-content: center; gap: 5px; padding: 11px 13px; border-left: 1px solid rgba(255,255,255,.055); }
.admin-team-stats > span:first-child { border-left: 0; }
.admin-team-stats small { overflow: hidden; color: #656565; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; text-transform: uppercase; letter-spacing: .055em; }
.admin-team-stats strong { color: #d8d5ce; font-size: 12px; }
.role-admin .admin-team-grid .team-card footer { min-height: 54px; display: grid; grid-template-columns: 1.45fr .75fr; gap: 8px; padding: 8px; }
.role-admin .admin-team-grid .team-card footer button { min-width: 0; min-height: 37px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border: 1px solid rgba(255,255,255,.08); border-radius: 7px; color: #aaa; background: rgba(255,255,255,.02); font-size: 8px; font-weight: 750; cursor: pointer; }
.role-admin .admin-team-grid .team-card footer button:first-child { color: #d6b258; border-color: rgba(205,163,61,.2); background: rgba(205,163,61,.045); }
.role-admin .admin-team-grid .team-card footer .lucide { width: 13px; height: 13px; }

@media (max-width: 960px) {
    .admin-team-service-options { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .admin-team-schedule-labels,.admin-team-schedule-row { grid-template-columns: minmax(130px,1.1fr) repeat(4,minmax(77px,.7fr)) minmax(100px,.85fr); gap: 6px; }
}

@media (max-width: 760px) {
    .admin-team-editor { border-radius: 12px; }
    .admin-team-editor > header { min-height: 91px; padding: 18px; }
    .admin-team-editor > header h3 { font-size: 25px; }
    .admin-team-editor form { gap: 11px; padding: 11px; }
    .admin-team-form-section { padding: 15px; }
    .admin-team-profile-grid { grid-template-columns: 1fr; }
    .admin-team-photo { grid-template-columns: 82px minmax(0,1fr); justify-items: start; align-items: center; text-align: left; }
    .admin-team-photo-preview { width: 76px; height: 76px; grid-row: 1/3; }
    .admin-team-photo > small { align-self: start; }
    .admin-team-specialty-grid { grid-template-columns: 1fr; }
    .admin-team-active { align-self: auto; }
    .admin-team-schedule { border: 0; overflow: visible; display: grid; gap: 8px; }
    .admin-team-schedule-labels { display: none; }
    .admin-team-schedule-row { min-height: 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; padding: 12px; border: 1px solid rgba(255,255,255,.07); border-radius: 8px; background: #0d0e0f; }
    .admin-team-schedule-row:first-of-type { border-top: 1px solid rgba(255,255,255,.07); }
    .admin-team-day-toggle { grid-column: 1/-1; padding-bottom: 7px; border-bottom: 1px solid rgba(255,255,255,.055); }
    .admin-team-schedule-row > label:not(.admin-team-day-toggle) > span { display: block; color: #6e6e6e; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
    .admin-team-schedule-row > label:last-child { grid-column: 1/-1; }
    .role-admin .admin-team-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
    .admin-team-fields { grid-template-columns: 1fr; }
    .admin-team-fields label.wide { grid-column: 1; }
    .admin-team-service-options { grid-template-columns: 1fr; }
    .admin-team-form-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .admin-team-form-actions button { min-width: 0; width: 100%; }
}

@media (max-width: 400px) {
    .admin-team-photo { grid-template-columns: 70px minmax(0,1fr); padding: 12px 10px; }
    .admin-team-photo-preview { width: 64px; height: 64px; }
    .team-card-main { grid-template-columns: 54px minmax(0,1fr); gap: 4px 11px; padding: 15px; }
    .team-card-main .team-avatar { width: 52px; height: 52px; }
    .team-card-main .status-dot { bottom: 24px; left: 57px; }
    .admin-team-state { grid-column: 2; grid-row: auto; width: fit-content; margin-top: 3px; }
    .team-card-main > small { grid-column: 2; }
    .admin-team-stats > span { padding-inline: 9px; }
    .role-admin .admin-team-grid .team-card footer { grid-template-columns: 1fr; }
}

/* Admin V2 — gestão completa */
.admin-section-tabs,.admin-period-nav { display:flex; align-items:center; gap:7px; margin:0 0 22px; padding:6px; overflow-x:auto; border:1px solid var(--line); border-radius:12px; background:#101011; scrollbar-width:none; }
.admin-section-tabs::-webkit-scrollbar,.admin-period-nav::-webkit-scrollbar { display:none; }
.admin-section-tabs a,.admin-period-nav a { flex:0 0 auto; min-height:40px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 16px; border:1px solid transparent; border-radius:8px; color:#8f8f94; font-size:12px; font-weight:720; }
.admin-section-tabs a.active,.admin-period-nav a.active { color:#0a0a0a; border-color:#d1a942; background:linear-gradient(135deg,var(--gold-2),var(--gold)); box-shadow:0 7px 20px rgba(199,154,40,.16); }
.admin-section-tabs .lucide { width:16px; height:16px; }
.admin-report-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.admin-report-metrics article { min-height:142px; display:flex; flex-direction:column; align-items:flex-start; padding:20px; border:1px solid var(--line); border-radius:12px; background:linear-gradient(145deg,#171718,#111112); box-shadow:0 14px 38px rgba(0,0,0,.16); }
.admin-report-metrics article > span { width:34px; height:34px; display:grid; place-items:center; margin-bottom:18px; border:1px solid rgba(255,255,255,.08); border-radius:8px; color:var(--gold-2); background:#202021; }
.admin-report-metrics article.featured { border-color:rgba(199,154,40,.3); background:linear-gradient(145deg,rgba(199,154,40,.15),#121212 62%); }
.admin-report-metrics small { color:#7f7f84; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.admin-report-metrics strong { margin-top:7px; color:#f6f2e9; font-size:24px; letter-spacing:-.04em; }
.admin-report-metrics p { margin:auto 0 0; color:#77777d; font-size:11px; }
.admin-report-columns,.admin-shop-columns,.admin-settings-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:18px; }
.admin-report-list,.admin-order-board { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#121213; }
.admin-report-list > header,.admin-order-board > header,.admin-refund-list > header { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:18px 20px; border-bottom:1px solid var(--line); }
.admin-report-list header small,.admin-order-board header small { color:var(--gold-2); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.admin-report-list h3,.admin-order-board h3 { margin:4px 0 0; font-size:16px; }
.admin-report-list > article { min-height:66px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:12px; padding:11px 18px; border-top:1px solid rgba(255,255,255,.05); }
.admin-report-list > article:first-of-type { border-top:0; }
.admin-report-list article div strong,.admin-report-list article div small { display:block; }
.admin-report-list article div strong { font-size:12px; }.admin-report-list article div small { margin-top:4px; color:#777; font-size:10px; }
.admin-report-list article b { color:#d8b557; font-size:12px; }
.rank-number { width:30px; height:30px; display:grid; place-items:center; border:1px solid rgba(199,154,40,.28); border-radius:8px; color:var(--gold-2); background:rgba(199,154,40,.07); font-size:11px; font-weight:850; }
.admin-finance-hero { min-height:190px; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:18px; padding:28px; border:1px solid rgba(199,154,40,.27); border-radius:14px; background:radial-gradient(circle at 85% 10%,rgba(226,189,89,.16),transparent 34%),linear-gradient(135deg,#1b1811,#111112 65%); }
.admin-finance-hero strong { display:block; margin:4px 0 7px; color:#f6d578; font-size:clamp(32px,5vw,54px); letter-spacing:-.055em; }
.admin-finance-hero p { max-width:580px; margin:0; color:#a7a49b; font-size:12px; line-height:1.6; }
.admin-commission-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:24px; }
.admin-commission-summary > article { display:grid; grid-template-columns:auto minmax(0,1fr); gap:13px; padding:18px; border:1px solid var(--line); border-radius:11px; background:#141415; }
.admin-commission-summary > article > div small,.admin-commission-summary > article > div h3,.admin-commission-summary > article > div strong { display:block; margin:0; }
.admin-commission-summary > article > div small { color:#777; font-size:9px; }.admin-commission-summary > article > div h3 { margin:4px 0 7px; font-size:14px; }.admin-commission-summary > article > div strong { color:var(--gold-2); font-size:18px; }
.admin-commission-summary button,.admin-ledger button,.admin-refund-list article > button,.admin-order-board article > button { grid-column:1/-1; min-height:36px; border:1px solid rgba(199,154,40,.25); border-radius:7px; color:var(--gold-2); background:rgba(199,154,40,.06); font-size:10px; font-weight:750; cursor:pointer; }
.admin-list-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin:22px 0 10px; }.admin-list-heading h3 { margin:0; font-size:18px; }.admin-list-heading nav { display:flex; gap:6px; }.admin-list-heading nav a { padding:8px 12px; border-radius:7px; color:#777; background:#151516; font-size:10px; }.admin-list-heading nav a.active { color:var(--gold-2); background:var(--gold-soft); }
.admin-ledger,.admin-refund-list { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#111112; }
.admin-ledger > article,.admin-refund-list > article,.admin-order-board > article { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto auto; align-items:center; gap:14px; padding:15px 18px; border-top:1px solid rgba(255,255,255,.055); }
.admin-ledger > article:first-child,.admin-refund-list > article:first-of-type,.admin-order-board > article:first-of-type { border-top:0; }
.ledger-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:9px; color:var(--gold-2); background:var(--gold-soft); }
.admin-ledger h4,.admin-ledger p,.admin-refund-list h4,.admin-refund-list p,.admin-order-board h4,.admin-order-board p { margin:0; }.admin-ledger h4,.admin-refund-list h4,.admin-order-board h4 { margin:4px 0; font-size:13px; }.admin-ledger p,.admin-refund-list p,.admin-order-board p { color:#777; font-size:10px; line-height:1.45; }.admin-ledger small,.admin-refund-list small,.admin-order-board small { color:#777; font-size:9px; }
.admin-ledger-status { padding:6px 9px; border-radius:6px; color:#c69090; background:rgba(239,90,90,.08); font-size:8px; font-style:normal; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }.admin-ledger-status.pago { color:#8fd2a6; background:rgba(50,183,104,.09); }
.admin-positive-empty { grid-column:1/-1; min-height:100px; display:flex; align-items:center; justify-content:center; gap:14px; padding:22px; color:#8fd2a6; border:1px dashed rgba(50,183,104,.2); border-radius:11px; background:rgba(50,183,104,.035); }.admin-positive-empty .lucide { width:27px; height:27px; }.admin-positive-empty strong,.admin-positive-empty p { display:block; margin:0; }.admin-positive-empty p { margin-top:4px; color:#73787a; font-size:10px; }
.admin-refund-settings,.admin-settings-form,.admin-catalog-editor { overflow:hidden; margin-bottom:18px; border:1px solid var(--line); border-radius:13px; background:#121213; }
.admin-refund-settings > header,.admin-settings-form > header,.admin-catalog-editor > header { display:flex; align-items:center; gap:14px; padding:21px 23px; border-bottom:1px solid var(--line); background:linear-gradient(90deg,rgba(199,154,40,.055),transparent); }.admin-refund-settings > header > .lucide { margin-left:auto; color:var(--gold-2); }.admin-refund-settings h3,.admin-settings-form h3,.admin-catalog-editor h3 { margin:3px 0; font-size:18px; }.admin-refund-settings header p,.admin-settings-form header p { margin:0; color:#777; font-size:11px; }
.admin-refund-settings form { display:grid; gap:14px; padding:22px; }.admin-refund-settings form > div { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.admin-refund-settings label,.admin-settings-form label,.admin-catalog-editor label,.admin-backup-grid label { display:grid; gap:7px; color:#aaa; font-size:10px; font-weight:700; }
.admin-refund-settings input,.admin-refund-settings textarea,.admin-settings-form input,.admin-settings-form select,.admin-settings-form textarea,.admin-catalog-editor input,.admin-catalog-editor select,.admin-catalog-editor textarea,.admin-backup-grid input { width:100%; min-height:44px; padding:10px 12px; border:1px solid rgba(255,255,255,.1); border-radius:8px; outline:none; color:#ececec; background:#0d0d0e; font:inherit; }.admin-refund-settings textarea,.admin-settings-form textarea,.admin-catalog-editor textarea { resize:vertical; }
.admin-refund-settings input:focus,.admin-refund-settings textarea:focus,.admin-settings-form input:focus,.admin-settings-form select:focus,.admin-settings-form textarea:focus,.admin-catalog-editor input:focus,.admin-catalog-editor select:focus,.admin-catalog-editor textarea:focus { border-color:rgba(199,154,40,.56); box-shadow:0 0 0 3px rgba(199,154,40,.08); }
.refund-value small,.refund-value strong { display:block; }.refund-value strong { margin-top:3px; color:var(--gold-2); }
.admin-order-board > article { grid-template-columns:auto minmax(0,1fr) auto auto; }.admin-order-board > article > button { grid-column:auto; padding:0 10px; }.admin-order-board > article > button.danger { color:#d88989; border-color:rgba(239,90,90,.2); background:rgba(239,90,90,.05); }
.top-products { margin-top:16px; }
.admin-catalog-editor form,.admin-settings-form { padding-bottom:0; }.admin-catalog-form-grid,.admin-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:22px; }.admin-catalog-form-grid .wide,.admin-settings-grid .wide { grid-column:1/-1; }.admin-catalog-editor .admin-team-form-actions { margin:0; padding:15px 22px; border-top:1px solid var(--line); }
.admin-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.admin-product-grid > article { overflow:hidden; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:12px; background:#141415; }.admin-product-grid > article.is-paused { opacity:.62; }.admin-product-image { aspect-ratio:16/10; display:grid; place-items:center; color:#5d5d62; background:#0d0d0e; }.admin-product-image img { width:100%; height:100%; object-fit:cover; }.admin-product-image .lucide { width:32px; height:32px; }.admin-product-copy { flex:1; padding:17px; }.admin-product-copy > small { color:var(--gold-2); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }.admin-product-copy h3 { margin:6px 0; font-size:16px; }.admin-product-copy p { min-height:34px; margin:0; color:#7d7d82; font-size:10px; line-height:1.5; }.admin-product-copy > div { display:flex; justify-content:space-between; align-items:center; margin-top:15px; }.admin-product-copy > div strong { color:#e5c66f; }.admin-product-copy > div span { color:#808086; font-size:9px; }.admin-product-grid footer { display:grid; grid-template-columns:1fr 1fr auto; gap:6px; padding:9px; border-top:1px solid var(--line); }.admin-product-grid footer button,.admin-category-list article > button { min-height:36px; border:1px solid rgba(255,255,255,.08); border-radius:7px; color:#aaa; background:#0f0f10; font-size:9px; cursor:pointer; }.admin-product-grid footer button.danger,.admin-category-list button.danger { width:38px; color:#d88989; }
.admin-category-list { display:grid; gap:9px; }.admin-category-list > article { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto auto; align-items:center; gap:14px; padding:17px; border:1px solid var(--line); border-radius:10px; background:#141415; }.admin-category-list > article > span { width:40px; height:40px; display:grid; place-items:center; color:var(--gold-2); border-radius:9px; background:var(--gold-soft); }.admin-category-list h3,.admin-category-list p { margin:0; }.admin-category-list h3 { margin:3px 0; font-size:14px; }.admin-category-list p { color:#777; font-size:10px; }.admin-category-list small { color:#666; font-size:8px; text-transform:uppercase; }.admin-category-list em { padding:6px 8px; border-radius:6px; color:#999; background:#202021; font-size:8px; font-style:normal; }.admin-category-list em.active { color:#8fd2a6; background:rgba(50,183,104,.08); }.admin-category-list article > button { padding:0 12px; }
.settings-icon { flex:0 0 42px; width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(199,154,40,.22); border-radius:10px; color:var(--gold-2); background:var(--gold-soft); }.settings-icon.danger { color:#e78282; border-color:rgba(239,90,90,.2); background:rgba(239,90,90,.07); }.admin-settings-form > header > div { min-width:0; }.admin-settings-form > footer { display:flex; justify-content:flex-end; gap:10px; padding:15px 22px; border-top:1px solid var(--line); }.admin-settings-grid fieldset { margin:0; padding:13px; border:1px solid var(--line); border-radius:9px; }.admin-settings-grid legend { padding:0 5px; color:#aaa; font-size:10px; }.settings-days { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; }.settings-days label { position:relative; }.settings-days input { position:absolute; opacity:0; }.settings-days span { min-height:38px; display:grid; place-items:center; border:1px solid var(--line); border-radius:7px; color:#777; background:#101011; cursor:pointer; }.settings-days input:checked + span { color:#0a0a0a; border-color:var(--gold-2); background:var(--gold-2); }
.admin-brand-assets { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding:0 22px 22px; }.admin-brand-assets label { min-height:86px; position:relative; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:11px; padding:13px; border:1px dashed rgba(255,255,255,.13); border-radius:9px; background:#0f0f10; cursor:pointer; }.admin-brand-assets label > span { width:36px; height:36px; display:grid; place-items:center; color:var(--gold-2); border-radius:8px; background:var(--gold-soft); }.admin-brand-assets strong,.admin-brand-assets small { display:block; }.admin-brand-assets small { margin-top:3px; color:#666; font-size:8px; }.admin-brand-assets input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.settings-security-note { display:flex; gap:12px; margin:0 22px 22px; padding:15px; border:1px solid rgba(50,183,104,.15); border-radius:9px; color:#8fd2a6; background:rgba(50,183,104,.04); }.settings-security-note p { margin:4px 0 0; color:#778079; font-size:10px; }.admin-color-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; padding:22px 22px 0; }.admin-color-grid label { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:48px; padding:9px 11px; border:1px solid var(--line); border-radius:8px; background:#0f0f10; }.admin-color-grid input[type=color] { width:30px; height:30px; min-height:0; padding:0; overflow:hidden; border:0; border-radius:6px; background:none; cursor:pointer; }
.admin-system-stats { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; margin-bottom:14px; }.admin-system-stats article { padding:15px; border:1px solid var(--line); border-radius:9px; background:#141415; }.admin-system-stats small,.admin-system-stats strong { display:block; }.admin-system-stats small { color:#747479; font-size:8px; text-transform:uppercase; }.admin-system-stats strong { margin-top:7px; font-size:20px; }
.admin-backup-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.admin-backup-grid > section { display:flex; flex-wrap:wrap; align-content:flex-start; gap:11px; padding:22px; border:1px solid var(--line); border-radius:12px; background:#141415; }.admin-backup-grid > section > div { flex:1 1 calc(100% - 60px); }.admin-backup-grid h3,.admin-backup-grid p { margin:0; }.admin-backup-grid h3 { margin:4px 0 7px; }.admin-backup-grid p { color:#7b7b80; font-size:10px; line-height:1.5; }.admin-backup-grid form { flex:1 1 100%; display:grid; gap:10px; }.admin-maintenance { margin-top:20px; overflow:hidden; border:1px solid rgba(239,90,90,.2); border-radius:12px; background:#130f10; }.admin-maintenance > header { display:flex; justify-content:space-between; align-items:center; padding:20px 22px; border-bottom:1px solid rgba(239,90,90,.14); }.admin-maintenance h3,.admin-maintenance p { margin:0; }.admin-maintenance p { margin-top:5px; color:#806f72; font-size:10px; }.admin-maintenance > header > .lucide { color:#e78282; }.admin-maintenance > div { display:grid; grid-template-columns:repeat(3,1fr); }.admin-maintenance article { display:grid; grid-template-columns:auto minmax(0,1fr); gap:11px; padding:18px; border-left:1px solid rgba(239,90,90,.12); }.admin-maintenance article:first-child { border-left:0; }.admin-maintenance article > span { width:36px; height:36px; display:grid; place-items:center; color:#d98282; border-radius:8px; background:rgba(239,90,90,.07); }.admin-maintenance strong,.admin-maintenance small { display:block; }.admin-maintenance small { margin-top:4px; color:#77696b; font-size:9px; line-height:1.4; }.admin-maintenance button { grid-column:1/-1; min-height:36px; margin-top:7px; border:1px solid rgba(239,90,90,.23); border-radius:7px; color:#da8a8a; background:rgba(239,90,90,.055); font-size:9px; font-weight:800; cursor:pointer; }
.admin-client-state { margin-left:auto; padding:5px 7px; border-radius:5px; color:#9a9a9e; background:#202021; font-size:7px; font-style:normal; text-transform:uppercase; }.admin-client-state.active { color:#8fd2a6; background:rgba(50,183,104,.08); }.admin-client-actions { display:flex; gap:6px; justify-content:flex-end; }.admin-client-actions button { min-height:34px; display:inline-flex; align-items:center; gap:6px; padding:0 10px; border:1px solid var(--line); border-radius:7px; color:#aaa; background:#151516; font-size:9px; cursor:pointer; }.admin-client-actions button.danger { width:35px; padding:0; justify-content:center; color:#d88989; }
.admin-service-order-panel { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:22px; padding:18px 20px; border:1px solid var(--line); border-radius:11px; background:#121213; }.admin-service-order-panel h3,.admin-service-order-panel p { margin:0; }.admin-service-order-panel h3 { font-size:16px; }.admin-service-order-panel p { margin-top:5px; color:#777; font-size:10px; }.admin-service-order-list { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }.admin-service-order-list article { min-height:37px; display:flex; align-items:center; gap:7px; padding:5px 7px 5px 10px; border:1px solid var(--line); border-radius:7px; background:#0e0e0f; }.admin-service-order-list article > span { color:var(--gold-2); font-size:9px; }.admin-service-order-list strong { max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9px; }.admin-service-order-list button { width:26px; height:26px; display:grid; place-items:center; border:0; border-radius:5px; color:#8f8f94; background:#1c1c1e; cursor:pointer; }
.admin-team-checkout-credentials { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.admin-team-card-tools { display:flex; align-items:center; justify-content:flex-end; gap:5px; padding:7px 9px; border-bottom:1px solid var(--line); background:#101011; }.admin-team-card-tools > span { margin-right:auto; color:#666; font-size:8px; text-transform:uppercase; }.admin-team-card-tools button { width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--line); border-radius:6px; color:#999; background:#171718; cursor:pointer; }.admin-team-card-tools button.danger { color:#d88989; }.admin-team-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }

@media (max-width: 1050px) {
    .admin-report-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .admin-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .admin-commission-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .admin-color-grid { grid-template-columns:repeat(3,1fr); }
    .admin-system-stats { grid-template-columns:repeat(3,1fr); }
    .admin-maintenance > div { grid-template-columns:1fr; }.admin-maintenance article { border-left:0; border-top:1px solid rgba(239,90,90,.12); }.admin-maintenance article:first-child { border-top:0; }
}
@media (max-width: 760px) {
    .role-admin .bottom-nav { display:flex; justify-content:flex-start; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; grid-template-columns:none; padding-right:8px; }.role-admin .bottom-nav::-webkit-scrollbar { display:none; }.role-admin .bottom-nav a,.role-admin .bottom-nav a:nth-child(n+6) { flex:0 0 67px; display:flex; }
    .admin-section-tabs,.admin-period-nav { margin-inline:-2px; }.admin-section-tabs a,.admin-period-nav a { min-height:38px; padding-inline:13px; }
    .admin-report-metrics { gap:8px; }.admin-report-metrics article { min-height:126px; padding:15px; }.admin-report-metrics strong { font-size:20px; }
    .admin-report-columns,.admin-shop-columns,.admin-settings-columns,.admin-backup-grid { grid-template-columns:1fr; }
    .admin-finance-hero { min-height:0; display:block; padding:22px; }.admin-finance-hero button { width:100%; margin-top:18px; }
    .admin-commission-summary { grid-template-columns:1fr; }
    .admin-ledger > article,.admin-refund-list > article,.admin-order-board > article { grid-template-columns:auto minmax(0,1fr) auto; gap:10px; padding:13px; }.admin-ledger > article > strong,.refund-value,.admin-order-board > article > strong { grid-column:2; }.admin-ledger-status { grid-column:3; grid-row:1; }.admin-ledger > article > button,.admin-refund-list article > button,.admin-order-board > article > button { grid-column:1/-1; width:100%; }
    .admin-refund-settings form > div,.admin-catalog-form-grid,.admin-settings-grid { grid-template-columns:1fr; }.admin-catalog-form-grid .wide,.admin-settings-grid .wide { grid-column:1; }
    .admin-product-grid { grid-template-columns:1fr; }.admin-category-list > article { grid-template-columns:auto minmax(0,1fr) auto; }.admin-category-list article > em { grid-column:3; grid-row:1; }.admin-category-list article > button { grid-column:1/-1; width:100%; }.admin-category-list article > button.danger { grid-column:1/-1; width:100%; }
    .admin-brand-assets { grid-template-columns:1fr; }.admin-color-grid { grid-template-columns:repeat(2,1fr); }.admin-system-stats { grid-template-columns:repeat(3,1fr); }
    .admin-service-order-panel { display:block; }.admin-service-order-list { justify-content:flex-start; margin-top:14px; }.admin-team-checkout-credentials { grid-template-columns:1fr; }.admin-team-stats { grid-template-columns:repeat(2,1fr); }.admin-team-stats > span:nth-child(3) { border-left:0; border-top:1px solid var(--line); }.admin-team-stats > span:nth-child(4) { border-top:1px solid var(--line); }
    .settings-days { grid-template-columns:repeat(4,1fr); }
}
@media (max-width: 430px) {
    .admin-report-metrics { grid-template-columns:1fr 1fr; }.admin-report-metrics article { min-height:116px; }.admin-report-metrics article > span { margin-bottom:12px; }
    .admin-color-grid { grid-template-columns:1fr 1fr; padding-inline:15px; }.admin-settings-grid,.admin-catalog-form-grid { padding:17px 15px; }.admin-settings-form > header,.admin-catalog-editor > header,.admin-refund-settings > header { padding:17px 15px; }.admin-settings-form > footer { padding:13px 15px; }.admin-brand-assets { padding-inline:15px; }.admin-system-stats { grid-template-columns:repeat(2,1fr); }
}
