:root{--primary-blue:#7040d4;--dark-blue:#382061;--navy:#291d48;--orange:#8250e8;--background:#f5f5fc;--card:#fff;--text:#30294b;--muted:#746f8c;--border:#e5e2f1;--radius:14px;--shadow:0 4px 22px #30205b06;accent-color:#7c3aed}
body{background:#f5f5fc;color:var(--text)}
a{color:#6d3ac9}a:hover{color:#492094}
:focus-visible{outline-color:#22b8de}
.window-bar{background:linear-gradient(110deg,#512294,#4d3aaa 65%,#285b9f);color:#f5f0ff}
.window-bar svg{color:#7de4f8}
.sidebar{background:linear-gradient(165deg,#301950 0%,#39215f 52%,#203d68 100%);box-shadow:4px 0 30px #25134210}
.main-nav{gap:7px;padding-left:12px;padding-right:12px}
.main-nav a{color:#e4dcf4;border:1px solid transparent;border-radius:12px;transition:background .18s,box-shadow .18s}
.main-nav a:hover{background:#ffffff0c;color:white;border-color:#ffffff14}
.main-nav a.active{background:linear-gradient(115deg,#8b4de9,#6952d7);box-shadow:0 6px 22px #120a382b;border-color:#c4a2ff38;color:#fff}
.main-nav a.active svg{color:#fff}.main-nav a:not(.active) svg{color:#c1b4dd}
.sidebar-version{background:#1c143733;color:#c2bfda;border-top:1px solid #ffffff12}
.heart-line{stroke:#b899ff}.heart-line .wave{stroke:#43c8e9;opacity:.65}.sidebar-bottom:before{background:#7862b9;opacity:.2}
.sidebar-slogan svg{stroke:#75dbed}.sidebar-bottom p{color:#e7e1f5}
.workspace{background:radial-gradient(ellipse at 100% 0,#eee8fc80,transparent 52%),#f5f5fc}
.header{background:transparent;border-color:var(--border)}.page-heading h1,h1,h2,h3{color:#2c2049}.page-heading p,.muted,.hint,.live-clock{color:#77718e}
.header-slogan{color:#706784}.header-slogan span{color:#8450d2}.header-slogan svg{stroke:#4aaed4}
.card{border-color:var(--border);border-radius:14px;box-shadow:0 4px 20px #30205b05}
.card-heading{border-color:var(--border)}.card-heading h2,.heading-with-icon>svg,.section-title svg{color:#6843a5}
.button{border-color:#ded9ed;background:#fff;color:#5b4979;border-radius:10px;transition:background .18s,box-shadow .18s,border-color .18s}
.button:hover{background:#f4effc;border-color:#c6b4e8;color:#513181;box-shadow:0 3px 12px #58348e0a}
.button.primary,.button.royal{background:linear-gradient(115deg,#8450e2,#6b3dc7);border-color:transparent;color:#fff;box-shadow:0 4px 12px #7040cf22}
.button.primary:hover,.button.royal:hover{background:linear-gradient(115deg,#7440d2,#5c2eb9);color:#fff;box-shadow:0 5px 17px #7040cf32}
.icon-button{color:#77678f}.icon-button:hover{background:#eee8fa;color:#6538ab}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-color:#dcd6eb;border-radius:9px;color:#3e3456;background-color:#fff}
input::placeholder,textarea::placeholder{color:#9a91ad}input:focus,select:focus,textarea:focus{border-color:#9c7ad8;box-shadow:0 0 0 3px #8b5cf610;outline:none}
label{color:#5a4c70}.required{color:#a14d88}.search-bar{border-color:#ddd6ee;background:#fff}.search-bar svg{color:#8b76a6}
.search-bar input,.header-client-search input{border:0!important;background:transparent!important;box-shadow:none!important}
.header-client-search{border-color:#ddd6ee;background:#ffffffb5}
table thead,thead th{background:#f1edfa;color:#5c477b;border-color:#e5def1}tbody td{border-color:#efecf6}tbody tr:hover{background:#faf8ff}
.table-scroll{border-color:var(--border);border-radius:10px}.pagination{border-color:#ebe5f3;color:#8b7b9d}
.pagination .button.primary{background:#7544cc;color:#fff}
.tabs{border-color:#e4ddef}.tabs button{color:#8d7c9c}.tabs button.active{color:#6e3dc2;border-color:#8a56dc;background:#f7f2ff}
.stat-card{border-color:#e5e0ef;background:#fff}.stat-card strong{color:#382357}.stat-card .stat-icon,.stat-icon.blue,.mini-stat.blue .mini-stat-icon{background:#edf0ff;border-color:#dbe2ff;color:#5870cc}
.stat-icon.orange,.mini-stat.orange .mini-stat-icon{background:#f1e9ff;border-color:#e4d4ff;color:#8550d4}.stat-icon.orange svg,.mini-stat.orange svg{color:#8550d4}
.stat-icon.purple{background:#f0e9ff;border-color:#e4d4ff;color:#8550d4}
.stat-icon.blue svg,.mini-stat.blue svg{color:#5870cc}
.avatar{background:#eae3f8;color:#7755a0}.account .avatar{background:#eee8f9;color:#7953a7}
.notification-bell{color:#77549f}.notification-bell b{background:#8250df;box-shadow:0 0 0 3px #f5f5fc}.notification-row.unread{background:#f7f2ff}
.user-dropdown{background:#fff;border-color:#e3d9f0;box-shadow:0 16px 45px #34205115}.user-menu summary>svg{color:#89759d}
.tag{background:#ede9fb;color:#74539c}.badge.agendado{background:#edf0ff;color:#5469b7}.badge.em_andamento{background:#e7f6fc;color:#277fa5}
.badge.concluido{background:#e8f6f0;color:#237c5b}.badge.cancelado{background:#fceef2;color:#ae506c}.badge.inactive{background:#f0edf4;color:#80708e}
.soft-orange,.important-note{background:#f5effe;color:#78589c;border-color:#e8daf9}.notice{border-color:#d8e2f7;background:#f1f6fe;color:#446794}
.settings-card .settings-arrow{color:#8b6ba9}.settings-card:hover{border-color:#bea5e8;box-shadow:0 7px 22px #5331800d}
.registration-heading:after{border-color:#e5dbf6}.registration-heading p,.personal-columns dd{color:#6e5e83}.registration-heading>span{color:#8b71a6}
.personal-card .section-title svg{background:#f0e8fc;color:#8151bf}.client-note{background:#f4effb;color:#746084}.profile-stats{border-color:#e6def1}
.profile-tags>span{background:#f2edfa;color:#7f649d}.profile-title h2{color:#38254f}
.client-dialog,.confirm-dialog,dialog{border-color:#e3d9f0;border-radius:18px;box-shadow:0 24px 80px #22113924}.client-dialog::backdrop,dialog::backdrop{background:#21133866;backdrop-filter:blur(3px)}
.modal-top{border-color:#e9e1f3}.modal-top h2{color:#493262}
.appointment-summary-item.selected{border-color:#9667dc;box-shadow:inset 0 0 0 1px #9667dc,0 4px 18px #65438c08}
.appointment-summary-item strong{color:#5f388f}.appointment-summary-item>svg{color:#885ab9}.appointment-summary-item:nth-child(2)>svg{color:#409bc4}.appointment-summary-item:nth-child(3)>svg{color:#588c99}.appointment-summary-item:nth-child(4)>svg{color:#a87aab}
.appointment-summary-item:focus-visible{outline-color:#35add7}.appointment-filters .hint{color:#8b7f9b}
.page-motto{color:#9284a1}.page-motto span{background:#e0d5ed}.footer{background:linear-gradient(105deg,#ece6f8,#e8effb);color:#8e7f9d}.online-dot{color:#658483}
.auth-body{background:radial-gradient(ellipse at 12% 12%,#e5d9fc,transparent 50%),radial-gradient(ellipse at 90% 90%,#dceefa,transparent 50%),#f6f5fb}
.auth-shell{border:1px solid #e8e0f2;border-radius:24px;overflow:hidden;box-shadow:0 20px 80px #38225b13}
.auth-story{background:linear-gradient(145deg,#f2eafb,#e9effa);color:#6c5683}.auth-story h1,.auth-story h1 em,.auth-story p{color:#5f407e}.auth-story .brand{color:#6c4199}.auth-heart{stroke:#9a75ce}.auth-foot{color:#9788a6}.auth-form{background:#fff}.auth-link{color:#8051b9}
.text-link,.auth-form .eyebrow,.breadcrumb a{color:#8356b0}
@media(prefers-reduced-motion:reduce){.button,.main-nav a{transition:none}}
/* A soft lavender sidebar gives the supplied purple logo enough contrast. */
.sidebar{background:linear-gradient(165deg,#f0e9fc 0%,#eee8fa 55%,#e5edf9 100%);color:#574276;border-right:1px solid #e1d6f0;box-shadow:4px 0 25px #44236506}
.main-nav a{color:#685481}.main-nav a:not(.active) svg{color:#886aa8}.main-nav a:hover{background:#e2d7f1;color:#563582;border-color:transparent}
.main-nav a.active{color:#fff}.main-nav a.active:hover{background:linear-gradient(115deg,#8b4de9,#6952d7);color:#fff}
.sidebar-version{background:#ded6ef66;color:#857197;border-top:1px solid #dcd1ec}.sidebar-bottom p{color:#7e6695}.sidebar-bottom:before{background:#b6c4eb;opacity:.3}.heart-line{stroke:#9972d4}.heart-line .wave{stroke:#5baed5}
.brand.brand-custom{height:135px;min-height:135px;margin:23px 16px 18px;overflow:hidden;justify-content:center;position:relative}
.sidebar .brand-custom .brand-logo{width:100%;height:145px;max-width:225px;max-height:none;object-fit:cover;object-position:center 66%;filter:none}
.auth-story .brand.brand-custom{height:175px;width:100%;margin:10px 0 18px}
.auth-story .brand-custom .brand-logo{width:100%;max-width:330px;height:190px;max-height:none;object-fit:cover;object-position:center 66%}
.auth-story:has(.brand-custom) h1{font-size:27px;margin-top:20px}.auth-story:has(.brand-custom) h1 em{font-size:26px}
@media(max-width:800px){.auth-story .brand.brand-custom{height:100px;margin:0}.auth-story .brand-custom .brand-logo{width:225px;height:130px}}
