:root { --ink:#241034; --warm:#7b1fc7; --paper:#f7f8fc; --muted:#6c6278; --line:#e5e0ee; --cream:#f0e8fa; --success:#12b886; font-family:"DM Sans",sans-serif; color:var(--ink); background:var(--paper); }
.brand-settings { display:grid; grid-template-columns:1fr 220px; gap:22px; border-bottom:1px solid var(--line); padding-bottom:24px; margin-bottom:24px; }.brand-settings h3 { margin-bottom:5px; }.brand-settings p { color:var(--muted); font-size:14px; margin-bottom:14px; }.theme-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }.theme-option { display:grid; gap:7px; cursor:pointer; color:var(--ink); }.theme-option input { position:absolute; opacity:0; }.theme-preview { height:105px; display:block; border-radius:10px; border:3px solid transparent; background-size:cover; background-position:center; }.theme-option input:checked + .theme-preview { border-color:var(--warm); box-shadow:0 0 0 2px #f06c2f33; }.theme-option strong { font-size:12px; }.theme-gold { background-image:url('/assets/tema-dourado.jpg'); }.theme-beach { background-image:url('/assets/tema-praia.jpg'); background-position:center 75%; }.theme-pink { background-image:url('/assets/tema-rosa.jpg'); }.logo-picker { padding:16px; border-radius:12px; background:var(--cream); }.logo-preview { width:100%; aspect-ratio:1.6; object-fit:contain; background:#fff; border-radius:8px; border:1px solid var(--line); margin:0 0 12px; }.upload-label { display:block; background:#fff; border:1px dashed #b89989; padding:10px; text-align:center; border-radius:8px; color:var(--warm); cursor:pointer; }.upload-label input { display:none; }
* { box-sizing:border-box; } body { margin:0; min-width:320px; } button,input { font:inherit; } button { cursor:pointer; } .hidden { display:none!important; }
.shell { min-height:100vh; } .brand { color:var(--ink); text-decoration:none; font:700 25px "Playfair Display",serif; letter-spacing:-1px; } .brand span { color:var(--warm); }
.eyebrow { font-size:11px; font-weight:700; letter-spacing:.15em; color:var(--warm); margin:0 0 12px; } h1,h2,h3,p { margin-top:0; } h1,h2 { font-family:"Playfair Display",serif; letter-spacing:-.035em; } h1 { font-size:clamp(34px,5vw,62px); line-height:1.03; } h2 { font-size:32px; margin-bottom:10px; } h3 { font-size:18px; margin-bottom:8px; } p { line-height:1.5; }
.auth-layout { min-height:100vh; display:grid; grid-template-columns:1.1fr .9fr; background:linear-gradient(112deg,#f8e1d5 0%,#f8e1d5 52%,#fffaf4 52%); } .brand-intro { padding:50px clamp(30px,9vw,150px); display:flex; min-height:100%; flex-direction:column; justify-content:space-between; } .brand-intro>div { max-width:560px; margin:auto 0; } .intro-copy { max-width:430px; font-size:17px; color:var(--muted); } .auth-card { width:min(430px,calc(100% - 44px)); align-self:center; justify-self:center; background:#fff; border:1px solid var(--line); border-radius:22px; padding:28px; box-shadow:0 18px 60px #6a3d2a1a; }
.tab-row { display:flex; gap:4px; background:var(--cream); border-radius:10px; padding:4px; margin-bottom:25px; }.tab { border:0; flex:1; padding:10px; color:var(--muted); background:transparent; border-radius:7px; font-weight:700; }.tab.active { background:#fff; color:var(--ink); box-shadow:0 2px 8px #55352214; }.auth-form { display:grid; gap:16px; }.auth-form h2 { font-size:27px; margin:0 0 2px; }
label { display:grid; gap:7px; color:#5c4942; font-size:13px; font-weight:700; } input { width:100%; border:1px solid var(--line); border-radius:9px; padding:12px 13px; color:var(--ink); background:#fffdfb; outline:none; } input:focus { border-color:var(--warm); box-shadow:0 0 0 3px #f06c2f1a; } small { color:var(--muted); font-weight:400; }.primary-button,.link-button { border:0; background:var(--ink); color:#fff; padding:13px 18px; text-align:center; border-radius:9px; font-weight:700; text-decoration:none; }.primary-button:hover,.link-button:hover { background:var(--warm); }.notice { color:var(--muted); min-height:20px; margin:14px 0 0; font-size:14px; }.notice.error { color:#b3291e; }.notice.success { color:#20744c; }
.onboarding { min-height:100vh; padding:42px clamp(22px,8vw,120px); background:linear-gradient(135deg,#fffaf4 0 67%,#f8e1d5 67%); }.onboarding-card { max-width:650px; margin:10vh auto; background:#fff; padding:clamp(27px,5vw,52px); border-radius:24px; box-shadow:0 15px 60px #40201516; }.onboarding-card>p:not(.eyebrow) { color:var(--muted); }.form-grid { display:grid; gap:16px; }.slug-input { display:flex; align-items:center; border:1px solid var(--line); background:#fffdfb; border-radius:9px; overflow:hidden; }.slug-input span { color:var(--muted); font-size:14px; padding-left:13px; }.slug-input input { border:0; box-shadow:none!important; }
.panel { min-height:100vh; display:grid; grid-template-columns:245px 1fr; }
.sidebar { background:var(--ink); color:#fff; padding:28px 20px; display:flex; flex-direction:column; }
.sidebar-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.sidebar-toggle { display:none; border:1px solid #ffffff24; background:#ffffff14; color:#fff; padding:9px 12px; border-radius:999px; font-weight:700; }
.sidebar .brand { color:#fff; padding:0 9px; }
.company-chip { display:flex; align-items:center; gap:8px; font-size:13px; color:#e8cfc2; margin:50px 9px 21px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.company-dot { width:7px; height:7px; border-radius:50%; background:var(--warm); flex:0 0 auto; }
.sidebar nav { display:grid; gap:3px; }
.nav-item,.signout { border:0; text-align:left; background:transparent; color:#d7b9aa; padding:12px 10px; border-radius:8px; font-weight:600; }
.nav-item.active,.nav-item:hover { background:#ffffff14; color:#fff; }
.google-button { border:1px solid #d9d4e2; background:#fff; color:#33283c; padding:12px 18px; border-radius:10px; font-weight:700; display:flex; align-items:center; justify-content:center; gap:10px; transition:.2s ease; }
.google-button:hover { border-color:var(--warm); background:var(--cream); }
.google-mark { display:grid; place-items:center; width:20px; height:20px; }
.google-mark svg { width:20px; height:20px; display:block; }
.auth-link { justify-self:center; font-size:13px; }
.form-help { color:var(--muted); font-size:14px; margin:0; }
.signout { margin-top:auto; color:#d7b9aa; }
.panel-content { padding:44px clamp(24px,6vw,95px); max-width:1320px; width:100%; }
.panel-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:27px; }
.panel-header h1 { margin:0; font-size:45px; }
.link-button { white-space:nowrap; background:var(--warm); }
.link-button:hover { background:var(--ink); }
.hero-card { min-height:232px; display:flex; align-items:center; justify-content:space-between; gap:28px; padding:40px; border-radius:22px; background:linear-gradient(118deg,#f8e1d5,#ffe7bc); }
.hero-card h2 { margin:0 0 8px; }
.hero-card p:not(.eyebrow) { max-width:465px; color:var(--muted); margin:0; }
.hero-number { width:132px; height:132px; flex:0 0 auto; display:grid; place-content:center; text-align:center; background:#fff8f1; color:var(--warm); font-size:52px; line-height:.8; border-radius:50%; font-family:"Playfair Display",serif; }
.hero-number span { color:var(--muted); font:600 11px "DM Sans",sans-serif; margin-top:10px; }
.overview-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:17px; }
.info-card,.form-card,.list-card,.hours-card,.settings-card { border:1px solid var(--line); background:#fff; border-radius:16px; padding:24px; }
.info-card>span { display:block; color:var(--warm); font-weight:700; font-size:13px; margin-bottom:32px; }
.info-card p { color:var(--muted); font-size:14px; min-height:42px; }
.text-button { background:none; border:0; padding:0; color:var(--warm); font-weight:700; }
.section-heading { display:flex; justify-content:space-between; margin-bottom:22px; }
.section-heading h2 { margin:0; }
.section-heading p:not(.eyebrow) { color:var(--muted); max-width:570px; }
.two-columns { display:grid; grid-template-columns:minmax(300px,.9fr) minmax(320px,1.1fr); gap:17px; }
.form-card { display:grid; align-content:start; gap:16px; }
.form-card h3 { margin:0; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.list-card { min-height:190px; }
.service-row { display:flex; align-items:center; gap:12px; padding:14px 0; border-bottom:1px solid var(--line); }
.service-row:last-child { border:0; }
.service-row h3 { font-size:16px; margin:0; }
.service-row p { color:var(--muted); margin:3px 0 0; font-size:13px; }
.service-row div { flex:1; }
.delete-button { background:#fff0ed; color:#af3b2d; border:0; padding:8px 10px; border-radius:7px; font-size:12px; font-weight:700; }
.empty-state { margin:40px auto; color:var(--muted); text-align:center; max-width:240px; }
.hours-card { max-width:750px; }
.weekday-list { display:grid; gap:9px; margin-bottom:22px; }
.weekday { display:grid; grid-template-columns:28px 120px 1fr 1fr; align-items:center; gap:12px; padding:12px; border:1px solid var(--line); border-radius:10px; }
.weekday input[type="checkbox"] { width:18px; height:18px; accent-color:var(--warm); }
.weekday input[type="time"] { padding:9px; }
.weekday.disabled { opacity:.48; }
.settings-card { max-width:820px; }
.settings-grid { grid-template-columns:1fr 1fr; margin-bottom:22px; }
.settings-grid label:last-child { max-width:150px; }
.revenue-card { margin:18px 0 20px; padding:24px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(180deg,#fff 0%,#fffaf4 100%); box-shadow:0 18px 45px #5d2f1810; }
.revenue-heading { align-items:flex-end; margin-bottom:18px; }
.revenue-heading p:not(.eyebrow) { margin-bottom:0; max-width:540px; }
.revenue-badge { display:grid; gap:3px; justify-items:end; padding:14px 16px; border-radius:16px; background:var(--ink); color:#fff; min-width:170px; }
.revenue-badge strong { font:700 25px "Playfair Display",serif; line-height:1; }
.revenue-badge span { font-size:12px; color:#e8cfc2; }
.revenue-chart-shell { display:grid; grid-template-columns:1fr 220px; gap:18px; align-items:stretch; }
.revenue-chart { min-height:260px; display:flex; align-items:flex-end; gap:14px; padding:18px; border-radius:18px; background:linear-gradient(180deg,#faf4ee 0%,#fff 100%); border:1px solid var(--line); overflow:hidden; }
.revenue-bar { flex:1; display:grid; align-items:end; gap:10px; min-width:0; }
.revenue-bar-track { position:relative; height:190px; border-radius:16px; background:linear-gradient(180deg,#f8ece4 0%,#fff 100%); border:1px solid #f0ddd0; overflow:hidden; }
.revenue-bar-fill { position:absolute; left:0; right:0; bottom:0; border-radius:16px 16px 0 0; background:linear-gradient(180deg,#f4a271 0%,#f06c2f 100%); box-shadow:0 14px 30px #f06c2f40; }
.revenue-bar-label { display:grid; gap:3px; text-align:center; }
.revenue-bar-label strong { font-size:12px; }
.revenue-bar-label span { font-size:12px; color:var(--muted); }
.revenue-legend { display:grid; gap:12px; align-content:start; padding:8px 0; }
.legend-item { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border-radius:14px; background:#fff; border:1px solid var(--line); }
.legend-item strong { font-size:12px; color:var(--ink); }
.legend-item span { font-size:12px; color:var(--muted); }
.legend-swatch { width:12px; height:12px; border-radius:4px; background:linear-gradient(180deg,#f4a271 0%,#f06c2f 100%); box-shadow:0 0 0 3px #f06c2f1a; margin-right:10px; flex:0 0 auto; }
@media (max-width:800px) { .auth-layout { grid-template-columns:1fr; background:#f8e1d5; }.brand-intro { min-height:380px; padding:36px 26px; }.auth-card { margin:0 0 34px; }.panel { grid-template-columns:1fr; }.sidebar { min-height:auto; padding:16px 14px 12px; position:sticky; top:0; z-index:12; box-shadow:0 8px 24px #00000014; }.sidebar-top { gap:10px; }.sidebar-toggle { display:inline-flex; }.sidebar .brand { padding:0 2px; }.company-chip { margin:10px 2px 12px; font-size:12px; }.sidebar nav { display:none; gap:8px; flex-direction:column; padding-bottom:8px; }.sidebar.sidebar-open nav { display:flex; }.nav-item { white-space:nowrap; padding:10px 12px; flex:0 0 auto; text-align:left; }.signout { margin-top:10px; padding:10px 12px; width:100%; }.panel-content { padding:24px 16px 30px; }.panel-header { flex-direction:column; }.overview-grid,.two-columns,.settings-grid { grid-template-columns:1fr; }.weekday { grid-template-columns:25px 85px 1fr 1fr; gap:7px; padding:9px; font-size:13px; }.hero-card { padding:27px; }.hero-number { width:104px; height:104px; font-size:42px; }.revenue-chart-shell { grid-template-columns:1fr; }.revenue-badge { justify-items:start; min-width:0; } }
@media(max-width:460px) { .hero-card { align-items:flex-start; }.hero-number { display:none; }.form-row { grid-template-columns:1fr; }.weekday { grid-template-columns:25px 1fr 1fr; }.weekday .day-name { grid-column:2 / 4; }.weekday input[type="checkbox"] { grid-row:1 / 3; }.revenue-card { padding:18px; }.revenue-chart { padding:14px; gap:10px; min-height:230px; }.revenue-bar-track { height:165px; }.revenue-badge strong { font-size:22px; }.sidebar { padding:14px 12px 10px; }.sidebar nav { gap:6px; }.nav-item { padding:9px 10px; font-size:13px; }.signout { padding:10px 10px; } }

/* Visual inspirado no app de referência: roxo, cards leves e agenda colorida. */
.sidebar { background:linear-gradient(160deg,#32104f 0%,#58159b 58%,#7620bf 100%); }
.sidebar .brand span { color:#d48cff; }
.nav-item { display:flex; align-items:center; gap:10px; color:#eadcff; }
.nav-item.active,.nav-item:hover { background:#ffffff20; color:#fff; box-shadow:inset 3px 0 #e2a7ff; }
.nav-icon { width:22px; color:#e3a8ff; font-size:18px; text-align:center; }
.company-dot { background:#d995ff; box-shadow:0 0 0 4px #d995ff24; }
.hero-card { background:linear-gradient(120deg,#efe1fb,#e0ccfa); }
.hero-number { background:#fff; color:var(--warm); }
.primary-button,.link-button { background:var(--warm); box-shadow:0 8px 20px #7b1fc733; }
.primary-button:hover,.link-button:hover { background:#5b1499; }
.revenue-card { background:linear-gradient(180deg,#fff 0%,#faf7ff 100%); }
.revenue-chart { background:linear-gradient(180deg,#f7efff 0%,#fff 100%); }
.revenue-bar-track { background:linear-gradient(180deg,#eee0fa 0%,#fff 100%); border-color:#e1cff2; }
.revenue-bar-fill { background:linear-gradient(180deg,#c566ef 0%,#7b1fc7 100%); box-shadow:0 14px 30px #7b1fc740; }
.legend-swatch { background:linear-gradient(180deg,#c566ef 0%,#7b1fc7 100%); box-shadow:0 0 0 3px #7b1fc71a; }
.agenda-week-strip { display:grid; grid-template-columns:repeat(7,1fr); gap:8px; margin:0 0 16px; }
.agenda-day { border:1px solid var(--line); background:#fff; color:var(--muted); border-radius:14px; padding:10px 6px; display:grid; gap:3px; text-align:center; }
.agenda-day span { text-transform:uppercase; font-size:10px; font-weight:700; }
.agenda-day strong { color:var(--ink); font-size:22px; }
.agenda-day small { font-size:10px; }
.agenda-day.active { border-color:var(--warm); background:linear-gradient(160deg,#8d30d2,#6d18ad); color:#fff; box-shadow:0 8px 18px #7b1fc733; }
.agenda-day.active strong { color:#fff; }
.agenda-date { margin-bottom:16px; max-width:220px; }
.agenda-row { position:relative; overflow:hidden; border:1px solid var(--line); border-left:5px solid var(--warm); background:#fff; border-radius:14px; padding:16px 18px; display:grid; grid-template-columns:70px 1fr auto; align-items:center; gap:14px; margin-bottom:10px; box-shadow:0 7px 20px #2d154d0b; }
.agenda-row time { font-weight:700; color:var(--warm); font-size:18px; }
.agenda-row h3 { margin:0 0 4px; font-size:16px; }
.agenda-row p { margin:0; color:var(--muted); font-size:13px; }
.agenda-row strong { color:var(--success); }
.agenda-status { display:inline-block; margin-top:7px; color:#148a68; background:#e2f8ef; border-radius:999px; padding:3px 8px; font-size:10px; font-weight:700; }
.agenda-accent-1 { border-left-color:#25b8d7; }.agenda-accent-2 { border-left-color:#e65ab7; }.agenda-accent-3 { border-left-color:#f2b94b; }
@media(max-width:800px) { .agenda-week-strip { gap:5px; }.agenda-day { padding:8px 2px; }.agenda-day strong { font-size:18px; }.agenda-day small { font-size:9px; }.agenda-row { grid-template-columns:55px 1fr auto; padding:13px 12px; } }
@media(max-width:460px) { .agenda-week-strip { overflow-x:auto; grid-template-columns:repeat(7,minmax(45px,1fr)); }.agenda-row { grid-template-columns:54px 1fr; }.agenda-row>strong { grid-column:2; justify-self:start; }.agenda-row time { font-size:16px; } }

/* Interface inspirada nas referências do aplicativo */
:root{--ink:#32105a;--warm:#8a2be2;--paper:#f8f7fc;--muted:#756c82;--line:#e5dff0;--cream:#f2eafa}
.panel{grid-template-columns:260px 1fr;background:#f8f7fc}.sidebar{background:linear-gradient(180deg,#6716bd 0%,#8a22d4 48%,#481277 100%);padding:25px 18px}.sidebar .brand{font-family:"DM Sans",sans-serif;font-size:25px;letter-spacing:-1px}.sidebar .brand span{color:#fff}.company-chip{color:#f1dfff;margin:42px 10px 18px}.company-dot{background:#e8b8ff;box-shadow:0 0 0 4px #ffffff1c}.sidebar nav{gap:5px}.nav-item,.signout{color:#f1dfff;border-radius:8px;padding:11px 12px;font-size:14px}.nav-item.active,.nav-item:hover{background:#ffffff24;color:#fff;box-shadow:inset 3px 0 #fff}.nav-icon{display:inline-grid;place-items:center;width:24px;color:#fff;font-size:17px}.panel-content{background:#f8f7fc}.panel-header h1{color:#32105a}.link-button,.primary-button{background:#7b1fc7}.link-button:hover,.primary-button:hover{background:#4d147e}.hero-card{background:linear-gradient(120deg,#efdfff,#dfc6fa);border:1px solid #e6cff9}.hero-number{color:#7b1fc7;background:#fff}.revenue-card{background:#fff;border-color:#e7d9f1}.revenue-badge{background:#4c1777}.revenue-bar-fill{background:linear-gradient(180deg,#bf70ed,#7b1fc7);box-shadow:0 14px 30px #7b1fc740}.agenda-day.active{background:linear-gradient(160deg,#a440e5,#6716bd);border-color:#7b1fc7;box-shadow:0 8px 18px #7b1fc733}.agenda-row{border-left-color:#8a2be2}.section-heading h2{color:#32105a}.report-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:0 0 18px}.report-metrics article{display:grid;gap:8px;padding:22px;border-radius:15px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 25px #4c17770d}.report-metrics small{color:var(--muted);font-size:12px}.report-metrics strong{font:800 26px "Playfair Display",serif;color:#32105a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-metrics span{font-size:11px;color:var(--muted)}.report-card{padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff}.report-card h3{color:#32105a;margin:0 0 19px}.cashflow-table{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.cashflow-table>div{display:grid;gap:6px;text-align:center;padding:13px 5px;border-radius:10px;background:#faf7ff;border:1px solid #eee3f8}.cashflow-table b{font-size:11px;color:#8a2be2;text-transform:uppercase}.cashflow-table span{font-weight:700;color:#32105a}.cashflow-table strong{font-size:11px;color:#3b965c}.client-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.client-card{display:flex;align-items:center;gap:14px;padding:18px;border-radius:14px;background:#fff;border:1px solid var(--line)}.client-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#ead8fb;color:#7b1fc7;font-weight:800}.client-card h3{margin:0 0 3px;color:#32105a;font-size:16px}.client-card p,.client-card small{display:block;margin:0;color:var(--muted);font-size:12px}.client-card small{margin-top:5px}.service-report{display:grid;gap:15px}.service-report-row{display:grid;grid-template-columns:minmax(100px,1fr) 90px;gap:8px;align-items:center}.service-report-row span{font-size:13px;color:#32105a}.service-report-row b{text-align:right;color:#3b965c;font-size:13px}.service-report-row i{grid-column:1/-1;height:9px;background:#f0e8fa;border-radius:9px;overflow:hidden}.service-report-row em{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#b45be8,#7b1fc7)}
@media(max-width:800px){.report-metrics,.client-grid{grid-template-columns:1fr}.cashflow-table{overflow-x:auto;grid-template-columns:repeat(7,90px);padding-bottom:5px}.panel{background:#f8f7fc}.sidebar{background:linear-gradient(180deg,#6716bd,#8a22d4)} }

/* AgendaRn: painel inspirado no aplicativo roxo das referências. */
.panel{background:#f7f4fb}
.panel .sidebar{background:linear-gradient(180deg,#46118a 0%,#7417c7 55%,#9a35df 100%);}
.panel .sidebar .brand{font-family:"DM Sans",sans-serif;font-weight:800;letter-spacing:-1.2px}
.panel .sidebar .brand span{color:#fff}
.panel .nav-item{font-size:13px;min-height:42px}
.panel .nav-item .nav-soon{margin-left:auto;color:#e7c9ff;font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.panel .panel-content{background:linear-gradient(180deg,#faf8fd 0%,#f5f0fa 100%)}
.panel .panel-header h1,.panel h2,.panel h3{color:#32105a}
.panel .hero-card{background:linear-gradient(120deg,#f1dcff,#e1c8fa);border-color:#e3cdf4}
.panel .hero-number{color:#7b1fc7}
.panel .link-button,.panel .primary-button{background:#7b1fc7}
.panel .link-button:hover,.panel .primary-button:hover{background:#4d147e}
.report-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:16px}
.report-donut-card{display:grid;align-content:start}
.report-donut{width:180px;height:180px;border-radius:50%;margin:10px auto 20px;background:conic-gradient(#7b1fc7 0 55%,#c05be8 55% 78%,#26b7d2 78% 91%,#f4b83f 91% 100%);position:relative}
.report-donut:after{content:"";position:absolute;inset:38px;border-radius:50%;background:#fff}
.donut-legend{display:grid;gap:8px}
.donut-legend div{display:flex;align-items:center;gap:8px;color:#756c82;font-size:12px}
.donut-legend i{width:10px;height:10px;border-radius:3px;background:#7b1fc7}
.module-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.module-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px;box-shadow:0 8px 25px #4c17770d}
.module-card h3{margin:0 0 7px}
.module-card p{color:var(--muted);font-size:14px;margin:0}
.module-booking{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding:13px 0 0;margin-top:13px}
.module-booking strong{font-size:14px;color:#32105a}.module-booking small{color:var(--muted)}
@media(max-width:800px){
  .panel-content{padding:22px 14px 34px!important;overflow:hidden}
  .panel-header{gap:13px;margin-bottom:20px}
  .panel-header h1{font-size:34px!important;overflow-wrap:anywhere}
  .panel-header .link-button{width:100%;white-space:normal}
  .report-layout,.module-content{grid-template-columns:1fr}
  .report-donut{width:150px;height:150px}
}
@media(max-width:460px){.panel .sidebar .brand{font-size:22px}.panel .nav-item{min-height:40px}.panel .nav-item .nav-soon{font-size:8px}.report-card{padding:18px}.module-card{padding:17px}}

/* Navegação mobile: gaveta à esquerda, sem faixa fixa ocupando a tela. */
.sidebar-actions{display:flex;align-items:center;gap:8px}
.icon-button{width:38px;height:38px;border:1px solid #ffffff35;border-radius:10px;background:#ffffff16;color:#fff;font-size:20px;display:grid;place-items:center;cursor:pointer}
.mobile-menu-button,.sidebar-backdrop{display:none}
body.theme-dark .panel{--paper:#17121f;--ink:#f4ecff;--muted:#c4b5d2;--line:#3d2e4e;--cream:#2a1d38;background:#17121f}
body.theme-dark .panel .panel-content{background:linear-gradient(180deg,#1a1423,#24172f)}
body.theme-dark .panel .info-card,body.theme-dark .panel .form-card,body.theme-dark .panel .list-card,body.theme-dark .panel .hours-card,body.theme-dark .panel .settings-card,body.theme-dark .panel .report-card,body.theme-dark .panel .client-card,body.theme-dark .panel .module-card,body.theme-dark .panel .finance-card,body.theme-dark .panel .install-card{background:#21172b;border-color:#473459;color:#f4ecff}
body.theme-dark .panel h1,body.theme-dark .panel h2,body.theme-dark .panel h3,body.theme-dark .panel .panel-header h1,body.theme-dark .panel .section-heading h2{color:#f7efff}
body.theme-dark .panel input,body.theme-dark .panel select{background:#1b1425;border-color:#4a3858;color:#f7efff}
body.theme-dark .panel .hero-card{background:linear-gradient(120deg,#3c2156,#2b2449)}
body.theme-dark .panel .report-donut:after{background:#21172b}
@media(max-width:800px){
  .panel{position:relative;display:block;min-height:100vh}
  .panel .sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);height:100dvh;min-height:100dvh;padding:20px 16px!important;display:flex!important;transform:translateX(-105%);transition:transform .22s ease;z-index:40;overflow-y:auto;box-shadow:12px 0 35px #16052255}
  .panel .sidebar.sidebar-open{transform:translateX(0)}
  .panel .sidebar-top{width:100%;display:flex;align-items:center;justify-content:space-between}
  .panel .sidebar nav{display:grid!important;grid-template-columns:1fr;gap:5px;margin-top:22px;overflow:visible}
  .panel .sidebar:not(.sidebar-open) nav{display:none!important}
  .panel .sidebar .company-chip{margin:30px 10px 0!important}
  .panel .sidebar .signout{margin-top:auto}
  .panel .sidebar-toggle{display:grid!important;place-items:center;font-size:21px;width:38px;height:38px;padding:0;border-radius:10px}
  .mobile-menu-button{display:grid;place-items:center;position:fixed;left:14px;top:14px;width:42px;height:42px;border:1px solid #ffffff2e;border-radius:12px;background:#6716bd;color:#fff;font-size:22px;z-index:25;box-shadow:0 5px 18px #35105a44}
  .sidebar-backdrop{position:fixed;inset:0;background:#16051f88;z-index:35}
  .sidebar.sidebar-open~.sidebar-backdrop{display:block}
  .panel .panel-content{padding-top:76px!important}
}
@media(min-width:801px){.panel .sidebar{position:relative;transform:none}.panel .sidebar-actions .sidebar-toggle{display:none}}
.cancel-booking-button{grid-column:2 / -1;justify-self:start;border:1px solid #e7b6bd;background:#fff4f5;color:#b3291e;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:700}
.cancel-booking-button:hover{background:#ffe1e5}.cancel-booking-button:disabled{opacity:.55;cursor:wait}
body.theme-dark .panel .cancel-booking-button{background:#3a202c;border-color:#8e4052;color:#ffb9c5}
@media(max-width:460px){.cancel-booking-button{grid-column:1 / -1;width:100%;text-align:center}}

/* Contraste e dimensionamento do faturamento no tema escuro e em telas estreitas. */
body.theme-dark .panel .revenue-card{background:#21172b;border-color:#473459;color:#f4ecff}
body.theme-dark .panel .revenue-card h2,body.theme-dark .panel .revenue-card p,body.theme-dark .panel .revenue-card .revenue-bar-label strong{color:#f4ecff}
body.theme-dark .panel .revenue-card .revenue-bar-label span{color:#c4b5d2}
body.theme-dark .panel .revenue-chart{background:#1a1324;border-color:#4b385b}
body.theme-dark .panel .revenue-bar-track{background:linear-gradient(180deg,#30203d,#1d1528);border-color:#513c63}
body.theme-dark .panel .revenue-badge{background:linear-gradient(135deg,#7b1fc7,#4d147e);color:#fff;min-width:0}
.revenue-heading>div:first-child{min-width:0}
.revenue-heading h2,.revenue-heading p{overflow-wrap:anywhere}
.revenue-badge{max-width:100%;min-width:0}
@media(max-width:600px){
  .revenue-heading{display:grid!important;grid-template-columns:1fr;gap:16px;align-items:start!important}
  .revenue-badge{width:100%;justify-items:start!important;padding:13px 15px}
  .revenue-badge strong{font-size:clamp(21px,7vw,29px);white-space:normal;overflow-wrap:anywhere}
  .revenue-chart{overflow-x:auto;display:grid;grid-template-columns:repeat(7,minmax(62px,1fr));align-items:end;gap:8px}
  .revenue-bar{min-width:62px}
  .revenue-bar-label span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}

/* Componentes que ainda carregavam o fundo claro dentro do modo escuro. */
body.theme-dark .panel .report-metrics article,
body.theme-dark .panel .agenda-list,
body.theme-dark .panel .agenda-row,
body.theme-dark .panel .cashflow-table>div,
body.theme-dark .panel .agenda-day:not(.active){background:#21172b;border-color:#4a3858;color:#f4ecff}
body.theme-dark .panel .report-metrics small,
body.theme-dark .panel .report-metrics span,
body.theme-dark .panel .agenda-row p,
body.theme-dark .panel .agenda-day,
body.theme-dark .panel .agenda-day small,
body.theme-dark .panel .cashflow-table span{color:#cdbedb}
body.theme-dark .panel .report-metrics strong,
body.theme-dark .panel .agenda-row h3,
body.theme-dark .panel .agenda-day strong{color:#f7efff}
body.theme-dark .panel .service-report-row span{color:#eadfff}
body.theme-dark .panel .service-report-row b{color:#66d39a}
body.theme-dark .panel .service-report-row i{background:#382747}
body.theme-dark .panel .cashflow-table b{color:#d38aff}
body.theme-dark .panel .cashflow-table strong{color:#66d39a}
body.theme-dark .panel .agenda-row{box-shadow:0 8px 22px #00000030}
body.theme-dark .panel .agenda-status{background:#173e35;color:#75e1b3}
.color-control{display:flex;align-items:center;gap:10px}.color-control input[type=color]{width:54px;height:42px;padding:4px;border-radius:10px;cursor:pointer}.color-control span{font:700 12px ui-monospace,monospace;color:var(--muted)}
.color-swatches{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}.color-swatches button{width:30px;height:30px;border-radius:50%;border:3px solid #fff;background:var(--swatch);box-shadow:0 0 0 1px #d8ccdf;cursor:pointer}.color-swatches button.selected{box-shadow:0 0 0 2px var(--ink),0 0 0 4px var(--swatch)}
body.theme-dark .panel .color-swatches button{border-color:#21172b;box-shadow:0 0 0 1px #806698}.service-row .delete-button{white-space:nowrap}
.platform-help{display:inline-flex;align-items:center;gap:6px}.platform-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;font-size:15px;line-height:1}.android-icon{background:#3ddc84;color:#123b25}.apple-icon{background:#1b1326;color:#fff;font-size:17px}.install-card .platform-help{color:var(--ink)}
body.theme-dark .panel .install-card .platform-help{color:#f4ecff}
.auth-layout{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 12% 18%,#ffffff7a 0 1px,transparent 2px),radial-gradient(circle at 78% 22%,#7b1fc72b 0 1px,transparent 2px),linear-gradient(135deg,#f9e5d8 0%,#f8ded0 48%,#f7f5ff 100%);background-size:120px 120px,180px 180px,auto}
.auth-layout::before,.auth-layout::after{content:"";position:absolute;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(2px)}
.auth-layout::before{width:520px;height:520px;left:-210px;top:-180px;border:1px solid #ffffff88;box-shadow:0 0 0 34px #ffffff28,0 0 100px #7b1fc726}
.auth-layout::after{width:460px;height:460px;right:-210px;bottom:-220px;border:1px solid #7b1fc733;box-shadow:0 0 0 28px #7b1fc712,0 0 110px #7b1fc71c}
.brand-intro .brand{animation:brandFloat .8s ease both}
.brand-intro>div{animation:introRise .8s .12s ease both}
.intro-kicker{animation:trackingIn .9s .25s ease both}
.auth-card{position:relative;overflow:hidden;backdrop-filter:blur(14px);background:#ffffffeb;box-shadow:0 24px 80px #32105a1c,0 0 0 1px #ffffffaa;animation:cardRise .8s .18s ease both}
.auth-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#7b1fc7,#2c9a83,#7b1fc7);background-size:200% 100%;animation:gradientFlow 4s linear infinite}
.tab,.primary-button,.google-button,.text-button{transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.tab:hover,.google-button:hover,.text-button:hover{transform:translateY(-1px)}
.primary-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #7b1fc744}
.auth-proof{display:inline-flex;align-items:center;gap:9px;margin-top:22px;padding:9px 13px;border:1px solid #7b1fc72b;border-radius:999px;background:#ffffff7a;color:#5c4968;font-size:12px;animation:fadeIn .8s .5s ease both}
.proof-dot{width:8px;height:8px;border-radius:50%;background:#20b486;box-shadow:0 0 0 5px #20b48620,0 0 14px #20b48688;animation:pulseDot 2s ease-in-out infinite}
.human-check{display:flex;align-items:center;gap:10px;color:#5c4968;font-size:13px;font-weight:600;cursor:pointer;user-select:none}
.human-check input{position:absolute;opacity:0;width:1px;height:1px}
.human-check .checkmark{width:22px;height:22px;display:grid;place-items:center;border:1px solid #cbb9d8;border-radius:7px;background:#fff;transition:.2s ease}
.human-check input:focus-visible + .checkmark{outline:3px solid #7b1fc744;outline-offset:2px}
.human-check input:checked + .checkmark{border-color:#20a77d;background:linear-gradient(145deg,#2ac995,#168b69);box-shadow:0 4px 12px #20a77d44}
.human-check input:checked + .checkmark::after{content:"✓";color:#fff;font-weight:800;font-size:14px}
body.theme-dark .human-check{color:#eadfff}.auth-card .human-check{margin-top:-5px}
.auth-layout{background-image:linear-gradient(112deg,#f8e1d5ef 0%,#f8e1d5e8 50%,#fffaf4e8 100%),url('/assets/agenda-futurista-bg.png');background-size:cover;background-position:center;background-attachment:fixed}
.intro-subheadline{animation:subheadlineIn 1s .25s cubic-bezier(.2,.8,.2,1) both}
.captcha-box{display:grid;gap:10px;padding:12px 13px;border:1px solid #d9c9e6;border-radius:12px;background:#fff9ff;box-shadow:0 8px 18px #4c17770d}
.captcha-head{display:flex;align-items:center;gap:8px;color:#4d246c;font-size:12px;font-weight:800;letter-spacing:.02em}.captcha-status{margin-left:auto;color:#8a6b9d;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.captcha-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:linear-gradient(145deg,#2ac995,#168b69);color:#fff;font-size:13px}
.captcha-question{display:grid;grid-template-columns:1fr 100px;gap:9px;align-items:center;color:#32105a;font-size:14px;font-weight:700}.captcha-question input{padding:9px 10px;border-radius:8px;background:#fff}
@keyframes subheadlineIn{from{opacity:0;transform:translateY(14px);letter-spacing:.01em}to{opacity:1;transform:none;letter-spacing:normal}}
body.theme-dark .auth-layout{background-image:linear-gradient(112deg,#17121fe8 0%,#21172bd9 52%,#17121fe8 100%),url('/assets/agenda-futurista-bg.png')}
body:not(.theme-dark) .auth-layout{background-color:#0a0c14;background-image:linear-gradient(112deg,#0a0c14ee 0%,#111527e8 100%),url('/assets/agenda-futurista-bg.png');color:#f7f3ff}.auth-layout .brand{color:#fff}.auth-layout .brand span{color:#ff6eb4}.auth-layout h1{color:#fff}.auth-layout .intro-copy{color:#c1bfd0}.auth-layout .eyebrow{color:#ff71bd}.auth-layout .auth-proof{background:#ffffff0d;border-color:#ffffff1c;color:#c1bfd0}.auth-layout .auth-card{background:#fdfcff;border-color:#ffffff30}.auth-layout .captcha-box{background:#f8f5ff}
body.theme-dark .captcha-box{background:#261936;border-color:#5b4270;box-shadow:0 10px 24px #09050f55}.theme-dark .captcha-head,.theme-dark .captcha-question{color:#f4ecff}.theme-dark .captcha-status{color:#cdbedb}.theme-dark .captcha-question input{background:#1b1425;border-color:#5b4270;color:#f7efff}
@media(max-width:800px){.auth-layout{background-attachment:scroll;background-position:68% center}.brand-intro{min-height:330px}.brand-intro>div{margin:auto 0}.intro-copy{font-size:16px;line-height:1.55}.auth-card{width:min(470px,calc(100% - 28px));padding:23px 20px;border-radius:20px}.captcha-question{grid-template-columns:1fr 92px}}
.panel{--ink:#0a3254;--warm:#00a868;--muted:#64748b;--line:#e2e8f0;--cream:#e6f8f1;--paper:#f8fafc;background:#f8fafc}
.panel .sidebar{background:linear-gradient(180deg,#0a3254 0%,#0e5a8a 58%,#028090 100%)}
.panel .nav-item,.panel .signout{color:#c9e2ec}.panel .nav-item.active,.panel .nav-item:hover{background:#ffffff1c;box-shadow:inset 3px 0 #00a868}
.panel .company-dot{background:#00a868;box-shadow:0 0 0 4px #00a8682e}.panel .panel-content{background:linear-gradient(180deg,#f8fafc 0%,#eef8f5 100%)}
.panel .panel-header h1,.panel .section-heading h2,.panel .report-metrics strong,.panel .report-card h3,.panel .client-card h3{color:#0a3254}
.panel .link-button,.panel .primary-button{background:linear-gradient(135deg,#0a3254,#0e5a8a);box-shadow:0 8px 20px #0a325433}.panel .link-button:hover,.panel .primary-button:hover{background:#00a868}
.panel .hero-card{background:linear-gradient(120deg,#e6f8f1,#d9eef5);border-color:#b9e5d5}.panel .hero-number{color:#00a868;background:#fff}.panel .revenue-card{background:linear-gradient(180deg,#fff,#f4fbf8);border-color:#d4ebe3}.panel .revenue-badge{background:linear-gradient(135deg,#0a3254,#028090)}
.panel .revenue-bar-fill{background:linear-gradient(180deg,#00c77e,#028090);box-shadow:0 14px 30px #00a86840}.panel .agenda-day.active{background:linear-gradient(160deg,#00a868,#028090);border-color:#00a868;box-shadow:0 8px 18px #00a86833}.panel .agenda-row{border-left-color:#00a868}.panel .agenda-row time{color:#0e5a8a}
.panel .report-card,.panel .info-card,.panel .form-card,.panel .list-card,.panel .hours-card,.panel .settings-card,.panel .report-metrics article,.panel .client-card,.panel .module-card{border-color:#e2e8f0;background:#fff}
body.theme-dark .panel{--ink:#f2f8fb;--muted:#b7c9d0;--line:#294452;--cream:#12313c;--paper:#0c1b24;background:#0c1b24}.theme-dark .panel .sidebar{background:linear-gradient(180deg,#061b2e,#0a3254 58%,#075d68)}.theme-dark .panel .panel-content{background:linear-gradient(180deg,#0c1b24,#102833)}.theme-dark .panel .panel-header h1,.theme-dark .panel .section-heading h2,.theme-dark .panel .report-metrics strong,.theme-dark .panel .report-card h3,.theme-dark .panel .client-card h3{color:#f2f8fb}.theme-dark .panel .hero-card{background:linear-gradient(120deg,#123d49,#12314a);border-color:#2a6570}.theme-dark .panel .revenue-card,.theme-dark .panel .report-card,.theme-dark .panel .info-card,.theme-dark .panel .form-card,.theme-dark .panel .list-card,.theme-dark .panel .hours-card,.theme-dark .panel .settings-card,.theme-dark .panel .report-metrics article,.theme-dark .panel .client-card,.theme-dark .panel .module-card{background:#122b35;border-color:#294452;color:#f2f8fb}.theme-dark .panel .revenue-chart{background:#0d222b;border-color:#294452}.theme-dark .panel .revenue-bar-track{background:#15313a;border-color:#2b5960}.theme-dark .panel .agenda-day:not(.active),.theme-dark .panel .agenda-row{background:#122b35;border-color:#294452}.theme-dark .panel .agenda-row p,.theme-dark .panel .agenda-day,.theme-dark .panel .agenda-day small{color:#b7c9d0}.theme-dark .panel .agenda-row h3,.theme-dark .panel .agenda-day strong{color:#f2f8fb}.theme-dark .panel input,.theme-dark .panel select{background:#0d222b;border-color:#315661;color:#f2f8fb}
.auth-layout .brand span,.auth-layout .eyebrow{color:#00a868!important}.auth-layout .auth-form h2{color:#0a3254}.auth-layout .auth-form label{color:#0a3254}.auth-layout .primary-button,.auth-layout .link-button{background:linear-gradient(135deg,#0a3254,#0e5a8a)}.auth-layout .primary-button:hover,.auth-layout .link-button:hover{background:#00a868}.auth-layout .text-button{color:#0e5a8a}.auth-layout .captcha-question{color:#0a3254}.auth-layout .auth-proof{border-color:#00a86855}.auth-layout .auth-proof .proof-dot{background:#00a868}.auth-layout .human-check{color:#0a3254}.auth-layout .captcha-box{border-color:#b9e5d5;background:#f4fbf8}
@media(max-width:460px){.brand-intro{min-height:300px;padding:30px 20px}.brand-intro h1{font-size:clamp(33px,10vw,46px);line-height:1.02}.auth-card{width:calc(100% - 20px);padding:20px 16px}.captcha-box{padding:10px}.captcha-question{grid-template-columns:1fr 88px;font-size:13px}.captcha-question input{padding:9px 8px}.auth-proof{font-size:11px}}
.auth-layout{background-image:linear-gradient(112deg,#eef5f7f2 0%,#f5f8fbec 100%),url('/assets/agenda-futurista-bg.png');background-position:center;background-size:cover}
@media(max-width:800px){.auth-layout{background-image:linear-gradient(180deg,#eef5f7f4 0%,#f5f8fbf0 100%),url('/assets/agenda-futurista-bg.png');background-position:68% center}}
@keyframes introRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes cardRise{from{opacity:0;transform:translateY(26px) scale(.98)}to{opacity:1;transform:none}}
@keyframes brandFloat{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@keyframes trackingIn{from{opacity:0;letter-spacing:.32em}to{opacity:1;letter-spacing:.15em}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes pulseDot{50%{box-shadow:0 0 0 8px #20b48612,0 0 20px #20b486bb}}
@keyframes gradientFlow{to{background-position:200% 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.trial-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px;padding:12px 16px;border:1px solid #e0b9ff;border-radius:12px;background:#f7edff;color:#4c1777}.trial-banner strong{font-weight:800}.trial-banner span{color:var(--muted)}.trial-banner a{margin-left:auto;color:#7b1fc7;font-weight:800;text-decoration:none}.trial-expired-card{max-width:640px}.trial-expired-card p:not(.eyebrow){max-width:540px;line-height:1.65;color:var(--muted)}.trial-expired-actions{display:flex;align-items:center;gap:18px;margin-top:24px}.trial-checkout-link{display:inline-flex;text-decoration:none}.trial-expired-card .text-button{color:#7b1fc7}
body.theme-dark .trial-banner{background:#2b1938;border-color:#704092;color:#f7eaff}body.theme-dark .trial-banner span{color:#d7c4e4}body.theme-dark .trial-banner a{color:#d38aff}body.theme-dark .trial-expired-card p:not(.eyebrow){color:#d7c4e4}
body.theme-dark .auth-layout{background-image:linear-gradient(112deg,#17121fe8 0%,#21172bd9 52%,#17121fe8 100%),url('/assets/agenda-futurista-bg.png')}

/* Despesas, compartilhamento e personalização */
.panel{--business-color:#00a868;--business-soft:color-mix(in srgb,var(--business-color) 13%,#fff)}
.expenses-toolbar{max-width:900px;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:18px;text-align:center;margin:0 auto 24px}.expenses-toolbar h2{margin:3px 0 8px}.expenses-toolbar .eyebrow{margin:0}.expenses-toolbar strong{font:500 24px "Playfair Display",serif;color:var(--ink)}.expense-month-button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--business-color);font-size:34px;line-height:1;box-shadow:0 8px 24px #0a325410}.expense-total-card{max-width:900px;margin:0 auto 28px;padding:24px 26px;border-radius:20px;background:linear-gradient(135deg,var(--business-soft),color-mix(in srgb,var(--business-color) 6%,#eef6ff));border:1px solid color-mix(in srgb,var(--business-color) 20%,#dce8eb);display:flex;align-items:center;justify-content:space-between;gap:18px}.expense-total-card span{display:block;text-transform:uppercase;font-size:12px;letter-spacing:.07em;color:var(--muted);margin-bottom:5px}.expense-total-card strong{font-size:34px;color:var(--business-color)}.expense-wallet-icon{width:60px;height:60px;border-radius:17px;display:grid;place-items:center;background:color-mix(in srgb,var(--business-color) 14%,#fff);color:var(--business-color);font-size:25px}.expense-list-heading{max-width:900px;margin:0 auto 14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.expense-list-heading h3{margin:0;font:500 23px "Playfair Display",serif}.expense-list-heading h3 span{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;margin-left:6px;border-radius:20px;background:var(--business-color);color:#fff;font:700 13px "DM Sans",sans-serif}.expenses-list{max-width:900px;margin:0 auto;display:grid;gap:12px}.expense-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:15px;padding:17px 18px;border-radius:18px;border:1px solid color-mix(in srgb,var(--business-color) 16%,#dce8eb);background:linear-gradient(135deg,var(--business-soft),#fff);box-shadow:0 8px 24px #0a32540b}.expense-row-icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--business-color) 14%,#fff);color:var(--business-color);font-size:20px}.expense-row h3{font:700 17px "DM Sans",sans-serif!important;margin:0 0 5px!important;color:var(--ink)!important}.expense-row-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}.expense-category{background:#fff;border-radius:20px;padding:4px 9px;color:var(--ink);border:1px solid color-mix(in srgb,var(--business-color) 12%,#e2e8f0)}.expense-row-value{text-align:right}.expense-row-value strong{display:block;color:var(--business-color);font-size:20px;margin-bottom:9px}.expense-actions{display:flex;justify-content:flex-end;gap:7px}.expense-action{border:0;border-radius:10px;padding:9px 11px;background:color-mix(in srgb,var(--business-color) 12%,#fff);color:var(--business-color);font-weight:700}.expense-action.delete{background:#fff0f1;color:#db3b4b}.expense-empty{padding:34px 22px;text-align:center;border:1px dashed var(--line);border-radius:18px;color:var(--muted);background:#fff}.expense-form{max-width:900px;margin:18px auto 0;padding:24px;border-radius:20px;border:1px solid var(--line);background:#fff;box-shadow:0 20px 55px #0a325418}.expense-form-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.expense-form-heading h3{margin:0}.expense-close{border:0;background:transparent;color:var(--muted);font-size:30px;line-height:1}.expense-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.expense-notes{grid-column:1/-1}.booking-share-card{max-width:820px;margin:0 0 18px;padding:22px;border:1px solid color-mix(in srgb,var(--business-color) 22%,#dce8eb);border-radius:16px;background:linear-gradient(135deg,var(--business-soft),#fff);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,1.15fr);gap:20px;align-items:center}.booking-share-card h3{margin:2px 0 6px}.booking-share-card p{margin:0;color:var(--muted);font-size:13px}.booking-share-control{display:grid;grid-template-columns:1fr auto;gap:9px}.booking-share-control input{grid-column:1/-1;background:#fff!important}.booking-share-control .link-button,.booking-share-control .primary-button{padding:11px 14px}.booking-style-preview{height:115px;border-radius:13px;margin:0 0 13px;display:grid;place-items:center;background-image:linear-gradient(135deg,color-mix(in srgb,var(--business-color) 48%,transparent),color-mix(in srgb,var(--business-color) 12%,#fff)),var(--preview-background);background-size:cover;background-position:center;color:#fff;font-weight:800;text-shadow:0 2px 12px #0008;border:2px solid color-mix(in srgb,var(--business-color) 48%,#fff);transition:background .25s ease,border-color .25s ease}.save-toast{position:fixed;top:24px;right:24px;z-index:1000;padding:14px 18px;border-radius:14px;background:#0f8a59;color:#fff;font-weight:800;box-shadow:0 16px 45px #063c2b44;animation:toast-in .35s ease both}@keyframes toast-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
body.theme-dark .panel .expense-month-button,body.theme-dark .panel .expense-row,body.theme-dark .panel .expense-form,body.theme-dark .panel .expense-empty,body.theme-dark .panel .booking-share-card{background:#122b35;border-color:#294452;color:#f2f8fb}body.theme-dark .panel .expense-total-card{background:linear-gradient(135deg,color-mix(in srgb,var(--business-color) 20%,#122b35),#122b35);border-color:#315661}body.theme-dark .panel .expense-category{background:#0d222b;border-color:#315661;color:#f2f8fb}body.theme-dark .panel .expense-row h3,body.theme-dark .panel .expenses-toolbar strong{color:#f2f8fb!important}body.theme-dark .panel .expense-action{background:#193c47}body.theme-dark .panel .expense-action.delete{background:#42212a;color:#ffb6c1}
@media(max-width:800px){.expense-list-heading{align-items:stretch;flex-direction:column}.expense-list-heading .primary-button{width:100%}.expense-form-grid,.booking-share-card{grid-template-columns:1fr}.booking-share-control{grid-template-columns:1fr}.booking-share-control input,.booking-share-control .primary-button,.booking-share-control .link-button{grid-column:1;width:100%;text-align:center}.save-toast{top:76px;left:14px;right:14px;text-align:center}}
@media(max-width:520px){.expenses-toolbar{grid-template-columns:40px 1fr 40px;gap:9px}.expenses-toolbar strong{font-size:21px}.expense-month-button{width:40px;height:40px}.expense-total-card{padding:20px}.expense-total-card strong{font-size:29px}.expense-wallet-icon{width:52px;height:52px}.expense-row{grid-template-columns:46px minmax(0,1fr);padding:15px 13px}.expense-row-icon{width:44px;height:44px}.expense-row-value{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:left;border-top:1px solid color-mix(in srgb,var(--business-color) 13%,#dce8eb);padding-top:11px}.expense-row-value strong{margin:0}.expense-actions{margin-left:auto}.expense-form{padding:19px 15px}}

/* Ajustes compactos, contatos e ações da agenda */
.overview-grid{gap:13px}.overview-grid .info-card{display:flex;min-height:170px;padding:20px 16px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.overview-grid .info-card h3{margin:0 0 8px;font-size:18px}.overview-grid .info-card p{min-height:0;max-width:250px;margin:0 0 14px;font-size:13px;line-height:1.5}.overview-grid .info-card .text-button{font-size:14px}
.agenda-actions{grid-column:2 / -1;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.whatsapp-action,.client-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border-radius:10px;background:#16a765;color:#fff;text-decoration:none;font-size:12px;font-weight:800;box-shadow:0 7px 18px #16a76528}.whatsapp-action:hover,.client-whatsapp:hover{background:#0d8b51}.whatsapp-action>span:first-child,.client-whatsapp>span:first-child{display:grid;place-items:center;width:18px;height:18px;border:2px solid currentColor;border-radius:50%;font-size:0}.whatsapp-action>span:first-child::after,.client-whatsapp>span:first-child::after{content:'☎';font-size:11px;line-height:1;transform:rotate(-18deg)}
.cancel-booking-button{grid-column:auto;justify-self:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-height:38px;padding:8px 13px;white-space:nowrap}.client-card{position:relative}.client-details{flex:1;min-width:0}.client-whatsapp{margin-left:auto;flex:0 0 auto}.client-whatsapp>span:last-child{display:inline}
body.theme-dark .panel .whatsapp-action,body.theme-dark .panel .client-whatsapp{background:#18a967;color:#fff}
@media(max-width:800px){.overview-grid{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}.overview-grid .info-card{min-height:138px;padding:17px 15px}.client-whatsapp>span:last-child{display:none}.client-whatsapp{width:42px;height:42px;padding:0;border-radius:50%}}
@media(max-width:460px){.agenda-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr}.whatsapp-action,.cancel-booking-button{width:100%;min-height:42px}.client-card{padding:15px 13px;gap:11px}.client-avatar{width:38px;height:38px}.client-whatsapp{width:40px;height:40px}.overview-grid .info-card{min-height:126px;border-radius:14px}.overview-grid .info-card h3{font-size:17px}.overview-grid .info-card p{font-size:12.5px}}

/* Link público e contraste final da identidade verde */
.booking-toggle-card{max-width:820px;margin:0 0 18px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.booking-toggle-card strong{display:block;color:var(--ink);font-size:16px}.booking-toggle-card>div>span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.toggle-control{display:inline-flex;align-items:center;gap:9px;cursor:pointer;color:var(--business-color)}.toggle-control input{position:absolute;opacity:0;width:1px;height:1px}.toggle-track{position:relative;width:52px;height:30px;border-radius:999px;background:#b9c9ce;transition:.2s}.toggle-track::after{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 7px #0003;transition:.2s}.toggle-control input:checked + .toggle-track{background:var(--business-color)}.toggle-control input:checked + .toggle-track::after{transform:translateX(22px)}.toggle-control b{min-width:28px;font-size:12px;letter-spacing:.08em}.toggle-control b.off{color:#b44a55}
body.theme-dark .panel .booking-toggle-card{background:#122b35;border-color:#294452}.theme-dark .panel .booking-toggle-card strong{color:#f2f8fb}.theme-dark .panel .toggle-track{background:#38515a}
body.theme-dark .panel .sidebar{background:linear-gradient(180deg,#061b2e 0%,#0a3254 58%,#075d68 100%)!important}.theme-dark .panel .primary-button,.theme-dark .panel .link-button{background:linear-gradient(135deg,#0a3254,#075d68)!important;color:#f2f8fb}.theme-dark .panel .nav-item.active,.theme-dark .panel .nav-item:hover{background:#00a86826!important;box-shadow:inset 3px 0 #00a868!important}.theme-dark .panel .agenda-day.active{background:linear-gradient(160deg,#00a868,#075d68)!important;border-color:#00a868!important}.theme-dark .panel .revenue-bar-fill{background:linear-gradient(180deg,#00c77e,#028090)!important}.theme-dark .panel .eyebrow,.theme-dark .panel .text-button,.theme-dark .panel .section-heading .eyebrow,.theme-dark .panel .expense-list-heading h3 span{color:#55d6a0}.theme-dark .panel .expense-list-heading h3 span{background:#087c59}
body.theme-dark .auth-layout .captcha-head,body.theme-dark .auth-layout .captcha-question,body.theme-dark .auth-layout .human-check,body.theme-dark .auth-layout .captcha-status{color:#0a3254!important}body.theme-dark .auth-layout .captcha-question input{background:#fff;border-color:#b9e5d5;color:#0a3254!important}
body.theme-dark .auth-layout{background-image:linear-gradient(112deg,#061b2ef2 0%,#0a3254e8 52%,#075d68e8 100%),url('/assets/agenda-futurista-bg.png')}.theme-dark .trial-banner{background:#123d3a;border-color:#2a6570;color:#dffaf0}.theme-dark .trial-banner span{color:#b7d9d0}.theme-dark .trial-banner a{color:#55d6a0}.theme-dark .trial-expired-card .text-button{color:#55d6a0}
body.theme-dark .auth-layout .captcha-box{background:#0d3a3c!important;border-color:#00a868!important;box-shadow:0 10px 24px #00181288}.theme-dark .auth-layout .captcha-head,.theme-dark .auth-layout .captcha-question{color:#e8fff5!important}.theme-dark .auth-layout .captcha-status{color:#8eeac6!important}.theme-dark .auth-layout .captcha-question input{background:#f8fffc!important;border-color:#65d8ad!important;color:#0a3254!important}
.auth-layout .captcha-box{background:#0d3a3c!important;border-color:#00a868!important}.auth-layout .captcha-head,.auth-layout .captcha-question{color:#fff!important}.auth-layout .captcha-status{color:#9ff0cb!important}.auth-layout .captcha-question input{background:#fff!important;color:#0a3254!important;border-color:#65d8ad!important}
#loginCaptchaQuestion,#signupCaptchaQuestion,.auth-layout .captcha-head>span:nth-child(2){color:#fff!important}.auth-layout .captcha-status{color:#9ff0cb!important}
@media(max-width:520px){.booking-toggle-card{align-items:flex-start;flex-direction:column}.toggle-control{align-self:flex-end}}
.floating-whatsapp{position:fixed;right:22px;bottom:22px;z-index:1200;display:inline-flex;align-items:center;gap:9px;padding:13px 17px;border-radius:999px;background:#16a765;color:#fff;text-decoration:none;font:800 13px "DM Sans",sans-serif;box-shadow:0 12px 30px #063c2b55;animation:whatsappPulse 2.4s ease-in-out infinite}.floating-whatsapp svg{width:21px;height:21px;fill:currentColor}.floating-whatsapp:hover{background:#0d8b51;transform:translateY(-2px)}@keyframes whatsappPulse{0%,100%{box-shadow:0 12px 30px #063c2b55,0 0 0 0 #16a76555}50%{box-shadow:0 12px 30px #063c2b55,0 0 0 9px #16a76500}}body.theme-dark .floating-whatsapp{background:#00a868;color:#06251d;box-shadow:0 12px 30px #00181288}@media(max-width:520px){.floating-whatsapp{right:14px;bottom:14px;width:52px;height:52px;padding:0;justify-content:center}.floating-whatsapp span{display:none}.floating-whatsapp svg{width:25px;height:25px}}
