
:root{--bg:#09070b;--card:#121017;--purple:#a53cff;--soft:#ddb0ff;--text:#f5eef7;--muted:#ad9db1;--line:#382042}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0,#25102f,transparent 28%),var(--bg);color:var(--text);font-family:Arial,sans-serif}
header{position:sticky;top:0;z-index:5;background:#0a080ddd;border-bottom:1px solid var(--line);backdrop-filter:blur(12px);padding:18px 4vw;display:flex;justify-content:space-between;align-items:center}
h1{margin:0;font-family:Georgia,serif;color:var(--soft)}header p{margin:4px 0 0;color:var(--muted)}header a{color:#fff;border:1px solid var(--purple);padding:10px 16px;border-radius:8px;text-decoration:none}
main{max-width:1000px;margin:25px auto 70px;padding:0 18px}.card{background:linear-gradient(145deg,#141119,#0d0b10);border:1px solid #4f285c;border-radius:12px;padding:22px;margin-bottom:15px}
h2{font-family:Georgia,serif;color:#ead4f2;margin-top:0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
label{display:block;color:#dccfe0;margin:10px 0}input,textarea{width:100%;background:#1a1720;border:1px solid #403248;color:#fff;border-radius:7px;padding:12px;margin-top:6px}textarea{min-height:90px;resize:vertical}
.faq-row{display:grid;grid-template-columns:1fr 1.4fr auto;gap:8px;align-items:start;margin:9px 0}.faq-row button{height:42px;margin-top:6px}
button,.import{border:1px solid #68407a;background:#1c1522;color:#fff;border-radius:8px;padding:11px 16px;cursor:pointer}.primary{background:linear-gradient(#942bcd,#4d176c);border-color:#b453e6}.danger{border-color:#793047;color:#ffb3c5}.ghost{margin-top:10px}.actions{display:flex;gap:10px;flex-wrap:wrap;padding:14px 0}.import input{display:none}.hint,#status{color:var(--muted)}#status{padding:12px 0}
@media(max-width:700px){.grid,.image-grid{grid-template-columns:1fr}.faq-row{grid-template-columns:1fr}.actions{flex-direction:column}}

.hidden{display:none!important}
.header-actions{display:flex;gap:10px;align-items:center}
.login-card{max-width:520px;margin:70px auto}
.login-card form{display:grid;gap:10px}
.login-card .primary{margin-top:8px}
.online-ok{border-color:#5b2f6a;background:linear-gradient(145deg,#17101d,#0d0b10)}
.online-ok h2{color:#e6b9ff}
.status{min-height:24px;margin-top:8px;color:#cbbbd0}
.status.bad{color:#ff9fb5}

.bookings-card{border-color:#683878}
.bookings-head{display:flex;justify-content:space-between;gap:16px;align-items:center}
.booking-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}
.stat{background:#19131f;border:1px solid #41254d;border-radius:10px;padding:14px;text-align:center}
.stat strong{display:block;color:#e8b9ff;font:700 26px Georgia,serif}
.stat span{font-size:12px;color:#bbaec0}
.bookings-list{display:grid;gap:14px}
.booking-item{background:#0e0b12;border:1px solid #3f2449;border-radius:10px;padding:18px}
.booking-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid #2c1c33;padding-bottom:12px;margin-bottom:12px}
.booking-top h3{margin:0;color:#f0d4fb;font:700 23px Georgia,serif}
.booking-top p{margin:5px 0 0;color:#9f93a3;font-size:12px}
.booking-top select{width:auto;min-width:170px;margin:0}
.booking-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.booking-grid>div{background:#16121b;border:1px solid #302038;border-radius:8px;padding:10px}
.booking-grid b,.booking-block b{display:block;color:#cf84ef;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.booking-grid span{color:#e8dee9;font-size:13px}
.booking-block{margin:10px 0;padding:12px;background:#131017;border-left:3px solid #7d309e;border-radius:6px}
.booking-block p{margin:0;color:#d0c3d3;line-height:1.5;white-space:pre-wrap}
.booking-actions{display:flex;justify-content:flex-end;margin-top:10px}
.empty-bookings{padding:25px;text-align:center;border:1px dashed #4e3159;border-radius:8px;color:#a99bab}
.empty-bookings.error{color:#ff9fb5}
@media(max-width:800px){
  .booking-stats{grid-template-columns:repeat(2,1fr)}
  .booking-grid{grid-template-columns:1fr 1fr}
  .booking-top{flex-direction:column}
  .booking-top select{width:100%}
}

.booking-toolbar{display:grid;grid-template-columns:1.5fr .8fr .8fr auto;gap:10px;margin:16px 0 18px}
.booking-toolbar input,.booking-toolbar select{margin:0}
.booking-person{display:flex;gap:10px;align-items:flex-start}
.status-dot{width:10px;height:10px;border-radius:50%;background:#b34cff;margin-top:8px;box-shadow:0 0 12px #b34cff}
.status-confirmado .status-dot{background:#65d49a;box-shadow:0 0 12px #65d49a}
.status-concluido .status-dot{background:#7fb2ff;box-shadow:0 0 12px #7fb2ff}
.status-cancelado .status-dot{background:#ff6f91;box-shadow:0 0 12px #ff6f91}
.appointment-highlight{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
.appointment-highlight>div{display:flex;gap:12px;align-items:center;padding:14px;background:linear-gradient(145deg,#201126,#130e18);border:1px solid #613172;border-radius:9px}
.appointment-icon{font-size:24px;color:#dc87ff}
.appointment-highlight b{display:block;color:#a88daf;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.appointment-highlight strong{display:block;margin-top:3px;color:#f2ddfa;font:700 19px Georgia,serif}
.booking-details{margin:10px 0}
.booking-details summary{cursor:pointer;color:#d59be9;padding:10px 0;font-weight:600}
.booking-details[open] summary{margin-bottom:5px}
.booking-top-actions{min-width:180px}
.booking-top-actions select{width:100%}
@media(max-width:900px){
  .booking-toolbar{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .booking-toolbar{grid-template-columns:1fr}
  .appointment-highlight{grid-template-columns:1fr}
}

.schedule-admin-card{border-color:#714083}
.block-form{display:grid;grid-template-columns:1fr 1fr .8fr .8fr 1.4fr auto;gap:10px;align-items:end}
.block-form label{margin:0}
.block-form button{height:43px;margin-bottom:0}
.schedule-blocks-list{display:grid;gap:8px;margin-top:16px}
.schedule-block-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#141018;border:1px solid #3f2748;border-radius:8px;padding:12px 14px}
.schedule-block-row strong{color:#e2a6fb;margin-right:14px}
.schedule-block-row span{color:#eee}
.schedule-block-row small{display:block;color:#998b9e;margin-top:5px}
.booking-block-control{margin:14px 0;padding:15px;border:1px solid #573065;border-radius:9px;background:#131018}
.block-control-head{display:flex;justify-content:space-between;margin-bottom:10px}
.block-control-head b{color:#e1a2f9}
.long-session-hint{display:block;color:#f1b5ff;font-size:12px;margin-top:5px}
.block-control-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:10px}
.block-help{font-size:11px;color:#8f8295;margin:7px 0 0}
.danger{border-color:#7b3147!important;color:#ffb2c4!important}
@media(max-width:1050px){.block-form{grid-template-columns:1fr 1fr 1fr}.block-control-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.block-form,.block-control-grid{grid-template-columns:1fr}.schedule-block-row{align-items:flex-start;flex-direction:column}}

.visual-calendar-card{border-color:#673477}
.calendar-panel-head{display:flex;justify-content:space-between;gap:16px;align-items:center}
.calendar-panel-head h2{margin-bottom:3px}
.calendar-nav{display:flex;gap:7px}
.calendar-nav button{min-width:46px}
.calendar-summary-row{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:18px 0 10px}
.calendar-summary-row h3{margin:0;color:#edcef8;font:700 24px Georgia,serif}
.calendar-legend{display:flex;gap:13px;flex-wrap:wrap;color:#b7a9ba;font-size:12px}
.calendar-legend span{display:flex;align-items:center;gap:5px}
.calendar-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}
.legend-free{background:#393140}
.legend-partial{background:#a544d0}
.legend-full{background:#9b3f5d}
.legend-confirmed{background:#52ba82}
.month-calendar{overflow:hidden}
.weekday{display:inline-flex;width:calc(100% / 7);justify-content:center;padding:8px 3px;color:#8f8194;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}
.calendar-cell{min-height:112px;padding:10px;text-align:left;background:#120f16;border:1px solid #312038;border-radius:9px;color:#eee;display:flex;flex-direction:column;gap:7px}
.calendar-cell:hover{border-color:#815094;background:#17111d}
.calendar-cell-empty{visibility:hidden}
.calendar-cell.is-selected{outline:2px solid #bc5ee7;border-color:#bc5ee7}
.cal-day-top{display:flex;align-items:center;justify-content:space-between}
.cal-day-top strong{font:700 18px Georgia,serif;color:#ead5f1}
.today-pill{font-size:9px;border:1px solid #78418c;border-radius:99px;padding:2px 6px;color:#dfa7f4}
.cal-day-status{font-size:11px;color:#96889b}
.cal-day-badges{display:flex;gap:4px;flex-wrap:wrap;margin-top:auto}
.cal-badge{font-size:9px;padding:3px 5px;border-radius:5px}
.cal-badge.confirmed{background:#163525;color:#8be4b0;border:1px solid #2f7650}
.cal-badge.requests{background:#2b1633;color:#e3a7fa;border:1px solid #67377a}
.day-free{border-top:3px solid #393140}
.day-partial{border-top:3px solid #a544d0}
.day-full{border-top:3px solid #9b3f5d;background:#170e13}
.day-full .cal-day-status{color:#e394aa}
.calendar-day-details{margin-top:16px;border:1px solid #44274e;border-radius:10px;background:#0f0c12;padding:17px}
.calendar-empty-detail{text-align:center;color:#897d8d;padding:25px}
.day-detail-head{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #2b1d32;padding-bottom:12px;margin-bottom:14px}
.day-detail-head p{margin:0;color:#998b9e;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.day-detail-head h3{margin:3px 0 0;color:#f0d8fa;font:700 25px Georgia,serif}
.day-detail-state{font-size:11px;border-radius:99px;padding:6px 9px;border:1px solid}
.day-detail-state.free{color:#c7bacc;border-color:#514658}
.day-detail-state.partial{color:#e5a5ff;border-color:#7f379c;background:#281230}
.day-detail-state.full{color:#ffadc1;border-color:#8c3b52;background:#2b1119}
.calendar-slots{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}
.calendar-slot{border:1px solid #34243b;border-radius:7px;padding:9px;text-align:center;background:#151119}
.calendar-slot strong{display:block;color:#eee}
.calendar-slot span{display:block;font-size:9px;margin-top:3px;color:#8d8191}
.slot-blocked{background:#26131a;border-color:#663245}
.slot-blocked strong,.slot-blocked span{color:#dc879f}
.slot-confirmed{background:#11271c;border-color:#347651}
.slot-confirmed strong{color:#93deb1}
.slot-confirmed span{color:#72b68d}
.day-detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.day-bookings-title{display:flex;align-items:center;gap:8px;margin-top:18px}
.day-bookings-title h4{margin:0;color:#dcb5eb;font:700 18px Georgia,serif}
.day-bookings-title span{background:#32153e;color:#e4a6fb;border-radius:99px;padding:2px 7px;font-size:11px}
.calendar-requests{display:grid;gap:7px;margin-top:10px}
.calendar-request-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#151119;border:1px solid #33213a;border-radius:8px;padding:10px 12px}
.calendar-request-row strong{display:block;color:#ecd6f4}
.calendar-request-row span{display:block;color:#988a9c;font-size:11px;margin-top:3px}
.jump-request{padding:7px 9px;font-size:11px}
.calendar-no-requests{color:#8f8295;padding:12px 0}
.flash-request{animation:flashRequest 1.8s ease}
@keyframes flashRequest{0%,100%{box-shadow:none}25%,65%{box-shadow:0 0 0 2px #bc5ee7,0 0 25px rgba(188,94,231,.35)}}
@media(max-width:1000px){
  .calendar-grid{gap:4px}
  .calendar-cell{min-height:95px;padding:7px}
  .calendar-slots{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:700px){
  .calendar-panel-head,.calendar-summary-row,.day-detail-head{align-items:flex-start;flex-direction:column}
  .weekday{font-size:9px}
  .calendar-grid{gap:3px}
  .calendar-cell{min-height:82px;padding:5px}
  .cal-day-status{display:none}
  .cal-badge{font-size:8px}
  .calendar-slots{grid-template-columns:repeat(3,1fr)}
}

.calendar-weekdays{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:7px;
  margin-bottom:6px;
}
.calendar-weekdays .weekday{
  width:auto;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:8px 3px;
}
@media(max-width:1000px){
  .calendar-weekdays{gap:4px}
}
@media(max-width:700px){
  .calendar-weekdays{gap:3px}
}

.booking-actions{
  display:flex;
  justify-content:flex-end;
  gap:9px;
  flex-wrap:wrap;
}
.confirm-whatsapp{
  background:linear-gradient(180deg,#2d8b5d,#17623e);
  border-color:#4bb981!important;
  color:#fff;
  box-shadow:0 0 14px rgba(50,170,105,.18);
}
.confirm-whatsapp:hover{
  background:linear-gradient(180deg,#36a66d,#1b7148);
}
@media(max-width:650px){
  .booking-actions button{width:100%}
}

.status-tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:4px 0 12px;
  margin-top:14px;
  scrollbar-width:thin;
}
.status-tab{
  flex:0 0 auto;
  border:1px solid #4d2c58;
  background:#151019;
  color:#cdbdd1;
  border-radius:999px;
  padding:9px 13px;
  font-size:12px;
  white-space:nowrap;
}
.status-tab span{
  display:inline-grid;
  place-items:center;
  min-width:20px;
  height:20px;
  margin-left:5px;
  padding:0 5px;
  border-radius:99px;
  background:#28132f;
  color:#e7b1fb;
}
.status-tab.active{
  border-color:#b64fdf;
  background:linear-gradient(180deg,#672284,#361145);
  color:#fff;
  box-shadow:0 0 15px rgba(172,73,215,.2);
}
.status-tab.active span{background:#a344ca;color:#fff}

.manual-appointment-editor{
  margin:14px 0;
  padding:15px;
  border:1px solid #593066;
  border-radius:9px;
  background:linear-gradient(145deg,#17111d,#110d15);
}
.manual-appointment-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.manual-appointment-head b{color:#e2a7f9}
.manual-appointment-head span{color:#998b9e;font-size:11px}
.manual-appointment-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.manual-appointment-grid input,
.manual-appointment-grid select{margin-top:6px}

@media(max-width:650px){
  .manual-appointment-head{align-items:flex-start;flex-direction:column}
  .manual-appointment-grid{grid-template-columns:1fr}
}

.reference-section{
  margin:14px 0;
  padding:14px;
  border:1px solid #583266;
  border-radius:9px;
  background:linear-gradient(145deg,#17111d,#100c14);
}
.reference-section-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:10px;
}
.reference-section-head b{
  color:#e5adf8;
  font-family:Georgia,serif;
  font-size:17px;
}
.reference-section-head span{
  color:#938599;
  font-size:11px;
}
.reference-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}
.reference-thumb{
  display:block;
  border:1px solid #42264d;
  border-radius:8px;
  overflow:hidden;
  background:#0d0b10;
  text-decoration:none;
}
.reference-thumb img{
  width:100%;
  height:145px;
  object-fit:cover;
  display:block;
}
.reference-thumb span{
  display:block;
  padding:7px 9px;
  color:#d8a7eb;
  font-size:10px;
  text-align:center;
}
.reference-thumb:hover{
  border-color:#a849cd;
  box-shadow:0 0 18px rgba(169,73,205,.18);
}
@media(max-width:900px){
  .reference-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .reference-gallery{grid-template-columns:1fr}
  .reference-thumb img{height:210px}
}

.archive-tab{
  border-color:#55465c;
}
.archive-tab.active{
  background:linear-gradient(180deg,#4a3b50,#2c2430);
  border-color:#817087;
  box-shadow:0 0 15px rgba(130,110,140,.16);
}
.archive-tab.active span{
  background:#706076;
}
.status-concluido,
.status-cancelado{
  opacity:.92;
}
.status-concluido .booking-top,
.status-cancelado .booking-top{
  border-bottom-color:#3a3340;
}

.quick-whatsapp-actions{
  margin:14px 0;
  padding:13px;
  border:1px solid #493052;
  border-radius:9px;
  background:#120e16;
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  align-items:center;
}
.quick-whatsapp-actions>span{
  width:100%;
  color:#9e8ca4;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:2px;
}
.qa-btn{
  padding:8px 10px;
  font-size:11px;
  border-color:#5f386d;
  background:#201526;
}
.qa-btn:hover{
  border-color:#a54ac8;
  background:#30183a;
}
.qa-confirm{
  border-color:#347c57;
  background:#153422;
}
.qa-confirm:hover{background:#1d4b31;border-color:#50ac7b}
.qa-cancel{
  border-color:#75364a;
  background:#30131d;
}
.qa-cancel:hover{background:#451a28;border-color:#a44d66}

.toast-container{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:99999;
  display:flex;
  flex-direction:column;
  gap:10px;
  width:min(370px,calc(100vw - 36px));
  pointer-events:none;
}
.sbc-toast{
  pointer-events:auto;
  display:grid;
  grid-template-columns:42px 1fr 28px;
  gap:10px;
  align-items:center;
  background:linear-gradient(145deg,#19121f,#0e0b12);
  border:1px solid #6f3b7e;
  border-left:4px solid #b34cff;
  border-radius:12px;
  padding:12px 10px;
  box-shadow:0 16px 45px rgba(0,0,0,.45),0 0 24px rgba(153,66,190,.15);
  opacity:0;
  transform:translateY(16px) scale(.98);
  transition:.22s ease;
}
.sbc-toast.show{
  opacity:1;
  transform:translateY(0) scale(1);
}
.toast-cat{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#291432;
  color:#e4a2ff;
  font-size:20px;
  box-shadow:0 0 12px rgba(193,89,231,.18);
}
.toast-copy strong{
  display:block;
  color:#efd9f7;
  font:700 15px Georgia,serif;
}
.toast-copy span{
  display:block;
  color:#b8a9bd;
  font-size:11px;
  line-height:1.4;
  margin-top:3px;
}
.toast-close{
  border:0!important;
  background:none!important;
  color:#9b8a9f;
  padding:3px!important;
  font-size:18px;
  min-width:0!important;
}
.toast-success{border-left-color:#54ba83}
.toast-new{
  border-left-color:#d46aff;
  box-shadow:0 16px 45px rgba(0,0,0,.5),0 0 28px rgba(196,82,235,.28);
}
.toast-new .toast-cat::before{
  content:"🐈";
  font-size:20px;
}
.toast-new .toast-cat{
  font-size:0;
}
.toast-error{border-left-color:#d95a78}
@media(max-width:650px){
  .toast-container{right:10px;bottom:10px;width:calc(100vw - 20px)}
}

.sound-toggle{
  border-color:#71417f!important;
  background:#1b1120!important;
  color:#e5c4f0!important;
  white-space:nowrap;
}
.sound-toggle:hover{
  border-color:#b653d8!important;
  background:#2b1533!important;
}
.sound-toggle.sound-on{
  border-color:#438c66!important;
  background:#153523!important;
  color:#b9efd0!important;
  box-shadow:0 0 14px rgba(70,170,110,.15);
}
@media(max-width:650px){
  .header-actions{flex-wrap:wrap}
  .sound-toggle{width:100%}
}

/* A notificação agora usa um som gótico discreto em vez de miado. */
.toast-new .toast-cat::before{content:"✦"!important;font-size:20px!important}
.toast-new .toast-cat{font-size:0}

.archived-delete-zone{
  margin:14px 0;
  padding:13px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid #633342;
  border-radius:9px;
  background:linear-gradient(145deg,#1c1015,#120c10);
}
.archived-delete-zone b{
  display:block;
  margin-bottom:3px;
  color:#e9bac7;
  font-size:12px;
}
.archived-delete-zone span{
  display:block;
  color:#9e8990;
  font-size:10px;
  line-height:1.45;
}
.delete-archived-booking{
  flex:0 0 auto;
  border-color:#8e3c53!important;
  background:#35141f!important;
  color:#f2c3cf!important;
}
.delete-archived-booking:hover{
  border-color:#c35470!important;
  background:#4a1a29!important;
}
.delete-archived-booking:disabled{
  opacity:.55;
  cursor:wait;
}
@media(max-width:650px){
  .archived-delete-zone{
    align-items:stretch;
    flex-direction:column;
  }
  .delete-archived-booking{
    width:100%;
  }
}

/* Exclusão em Arquivados — destaque intencional */
.is-archived .archived-delete-zone{
  display:flex!important;
}
.delete-archived-booking{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:42px;
  font-weight:700;
  border:1px solid #a84460!important;
  background:linear-gradient(180deg,#481827,#2d1019)!important;
  color:#ffdbe4!important;
  box-shadow:0 0 14px rgba(168,68,96,.13);
}
.delete-archived-booking:hover{
  background:linear-gradient(180deg,#5a1d30,#3b1421)!important;
  border-color:#d35e7e!important;
}


/* AGENDA DE HOJE */
.today-agenda-card{
  border-color:#51305d;
  background:
    radial-gradient(circle at 85% 0%,rgba(138,55,165,.11),transparent 32%),
    #0e0b11;
}
.today-agenda-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:16px;
}
.panel-kicker{
  margin:0 0 4px;
  color:#ca6ee1;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
}
.today-summary{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.today-summary>div{
  min-width:92px;
  padding:9px 11px;
  border:1px solid #43294c;
  border-radius:9px;
  background:#151019;
  text-align:center;
}
.today-summary strong{display:block;color:#edcef5;font-size:15px}
.today-summary span{display:block;margin-top:2px;color:#928497;font-size:9px}
.today-agenda-list{display:flex;flex-direction:column;gap:8px}
.today-client{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) auto auto;
  gap:14px;
  align-items:center;
  padding:12px 14px;
  border:1px solid #39263f;
  border-left:3px solid #7e428f;
  border-radius:10px;
  background:#120e15;
}
.today-client.signal-ok{border-left-color:#4ca574}
.today-client.signal-wait{border-left-color:#b87b42}
.today-time{color:#e4b3ef;font:700 22px Georgia,serif}
.today-client-main strong{display:block;color:#eee4f1;font-size:14px}
.today-client-main span{display:block;margin-top:3px;color:#9f91a4;font-size:10px}
.today-finance{min-width:110px;text-align:right}
.today-signal{display:block;font-size:10px;font-weight:700}
.today-signal.paid{color:#83d1a4}
.today-signal.pending{color:#d7a66d}
.today-finance small{display:block;margin-top:3px;color:#9e909f;font-size:9px}
.today-open-request{white-space:nowrap;padding:8px 10px!important;font-size:10px!important}
.today-empty{
  padding:18px;
  border:1px dashed #45304d;
  border-radius:10px;
  color:#9b8ca0;
  text-align:center;
}

/* FINANCEIRO */
.finance-panel{
  margin:14px 0;
  padding:15px;
  border:1px solid #4f3259;
  border-radius:10px;
  background:
    radial-gradient(circle at 100% 0%,rgba(112,46,132,.12),transparent 30%),
    #120e16;
}
.finance-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.finance-head b{display:block;color:#e3b1f1}
.finance-head>div>span{display:block;margin-top:3px;color:#8f8193;font-size:10px}
.signal-badge{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}
.signal-badge.paid{border:1px solid #397b57;background:#122b1d;color:#81d1a3}
.signal-badge.pending{border:1px solid #79532e;background:#281b10;color:#d8a66b}
.finance-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1.15fr .85fr;
  gap:9px;
  align-items:end;
}
.money-input-wrap{
  display:flex;
  align-items:center;
  margin-top:6px;
  border:1px solid #3b3040;
  border-radius:7px;
  background:#19151c;
  overflow:hidden;
}
.money-input-wrap span{padding-left:10px;color:#8e8192;font-size:11px}
.money-input-wrap input{border:0!important;margin:0!important;min-width:0;background:transparent!important}
.finance-balance-box{
  min-height:56px;
  padding:8px 10px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid #593368;
  border-radius:7px;
  background:#1d1122;
}
.finance-balance-box span{
  color:#95859a;
  font-size:9px;
  text-transform:uppercase;
}
.finance-balance-box strong{margin-top:3px;color:#efcdf7;font-size:15px}
.finance-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:11px}
.finance-actions small{color:#8e8192;font-size:9px}
.signal-paid-button{
  border-color:#43875f!important;
  background:linear-gradient(180deg,#1c5034,#153623)!important;
  color:#d7f6e4!important;
}
.signal-paid-button.is-paid{opacity:1!important;cursor:default!important}
.undo-signal-button{
  border-color:#57435d!important;
  background:#19131d!important;
  color:#bbaabd!important;
  font-size:10px!important;
}
.cal-badge.signal{
  border-color:#3f7656;
  background:#13291d;
  color:#84d2a5;
}

@media(max-width:900px){
  .finance-grid{grid-template-columns:1fr 1fr}
  .today-client{grid-template-columns:64px 1fr auto}
  .today-finance{grid-column:2}
  .today-open-request{grid-column:3;grid-row:1/3}
}
@media(max-width:650px){
  .today-agenda-head{flex-direction:column}
  .today-summary{justify-content:flex-start}
  .finance-grid{grid-template-columns:1fr}
  .finance-head{flex-direction:column}
  .today-client{grid-template-columns:58px 1fr}
  .today-finance{grid-column:2;text-align:left}
  .today-open-request{grid-column:1/3;grid-row:auto;width:100%}
}
