/* Wakko Serviços — Design System Premium 2026-09-25 */
:root{
  --ws-navy-950:#061529;
  --ws-navy-900:#081d36;
  --ws-navy-850:#0a2442;
  --ws-navy-800:#0d2d51;
  --ws-blue-700:#006be8;
  --ws-blue-600:#0877ff;
  --ws-blue-500:#1892ff;
  --ws-cyan-400:#35c4ff;
  --ws-surface:#ffffff;
  --ws-surface-2:#f8fbff;
  --ws-surface-3:#eef5fc;
  --ws-canvas:#edf4fb;
  --ws-text:#0b2340;
  --ws-muted:#63758b;
  --ws-border:#dce8f4;
  --ws-border-strong:#c6d9eb;
  --ws-success:#0b9c63;
  --ws-warning:#d68200;
  --ws-danger:#d8394b;
  --ws-shadow-xs:0 1px 2px rgba(8,35,64,.04);
  --ws-shadow-sm:0 8px 24px rgba(8,35,64,.07);
  --ws-shadow-md:0 18px 48px rgba(8,35,64,.10);
  --ws-shadow-lg:0 28px 90px rgba(3,22,43,.24);
  --ws-radius-sm:10px;
  --ws-radius-md:14px;
  --ws-radius-lg:18px;
  --ws-radius-xl:24px;
  --ws-focus:0 0 0 4px rgba(8,119,255,.14);
}

html{background:var(--ws-canvas)}
body.app-body{
  color:var(--ws-text);
  background:
    radial-gradient(circle at 78% -10%,rgba(67,160,255,.12),transparent 31rem),
    linear-gradient(180deg,#f6faff 0,#edf4fb 34rem,#edf4fb 100%);
  min-height:100dvh;
  overflow-x:hidden;
}
body.app-body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(8,119,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(8,119,255,.018) 1px,transparent 1px);
  background-size:32px 32px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 55%);
  z-index:-1;
}

/* shell */
.app-body .app-shell{grid-template-columns:264px minmax(0,1fr)}
.app-body .sidebar{
  width:264px;
  padding:20px 14px 16px;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 0%,rgba(30,147,255,.28),transparent 19rem),
    radial-gradient(circle at 110% 92%,rgba(0,115,255,.25),transparent 18rem),
    linear-gradient(180deg,var(--ws-navy-900),var(--ws-navy-950));
  border-right:1px solid rgba(111,190,255,.10);
  box-shadow:12px 0 42px rgba(5,24,45,.08);
}
.app-body .sidebar::after{
  content:"";
  position:absolute;
  right:-95px;
  bottom:22px;
  width:250px;
  height:250px;
  border-radius:48% 52% 66% 34%;
  border:1px solid rgba(55,164,255,.20);
  box-shadow:0 0 0 18px rgba(40,154,255,.035),0 0 0 42px rgba(40,154,255,.018);
  transform:rotate(-28deg);
  pointer-events:none;
}
.app-body .sidebar-brand{
  position:relative;
  z-index:1;
  padding:3px 10px 22px;
  font-size:1.32rem;
  letter-spacing:-.025em;
}
.app-body .sidebar-brand .brand-w{
  width:48px;
  height:48px;
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#eff7ff);
  box-shadow:0 10px 25px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.8);
}
.app-body .sidebar-brand small{color:#42bcff;font-size:.72rem;letter-spacing:.02em}
.app-body .sidebar nav{
  position:relative;
  z-index:2;
  gap:5px;
  padding:4px 2px 12px;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.18) transparent;
}
.app-body .nav-item{
  min-height:44px;
  padding:10px 12px;
  border:1px solid transparent;
  border-radius:12px;
  color:#cfdbE8;
  font-size:.875rem;
  font-weight:650;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.app-body .nav-item .nav-icon{
  width:25px;
  height:25px;
  border-radius:8px;
  display:grid;
  place-items:center;
  color:#cce5fa;
  background:rgba(255,255,255,.035);
  font-weight:900;
}
.app-body .nav-item:hover{
  color:#fff;
  border-color:rgba(94,180,255,.14);
  background:rgba(255,255,255,.065);
  transform:translateX(2px);
}
.app-body .nav-item.active{
  color:#fff;
  border:1px solid rgba(45,168,255,.42);
  border-left-color:rgba(45,168,255,.42);
  background:linear-gradient(90deg,rgba(0,119,255,.52),rgba(24,129,230,.23));
  box-shadow:0 9px 24px rgba(0,111,230,.18),inset 0 0 0 1px rgba(255,255,255,.025);
}
.app-body .nav-item.active .nav-icon{background:#0d80f3;color:#fff;box-shadow:0 6px 16px rgba(0,116,235,.30)}
.app-body .nav-badge{margin-left:auto!important;width:auto!important;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ff3d4e;color:#fff;font-size:.62rem;display:grid;place-items:center;box-shadow:0 0 0 3px rgba(255,61,78,.13)}
.app-body .sidebar-foot{
  position:relative;
  z-index:2;
  border:1px solid rgba(90,176,255,.15);
  border-radius:16px;
  padding:15px;
  background:linear-gradient(145deg,rgba(19,67,113,.88),rgba(8,39,70,.82));
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
}
.app-body .sidebar-foot strong{font-size:.9rem}
.app-body .sidebar-foot small{margin-top:2px;color:#a9c1d8;font-size:.68rem}
.app-body .sidebar-foot .developer-credit{color:#8eabc5;font-size:.61rem;text-decoration:none}
.app-body .install-pwa{border-radius:11px;border-color:rgba(112,189,255,.25);background:rgba(21,135,233,.16)}

.app-body .main-area{min-height:100dvh}
.app-body .topbar{
  height:76px;
  padding:0 clamp(18px,2.2vw,34px);
  border-bottom:1px solid rgba(190,211,231,.74);
  background:rgba(255,255,255,.83);
  backdrop-filter:blur(16px) saturate(1.18);
  box-shadow:0 3px 18px rgba(12,47,79,.035);
}
.app-body .search-box{
  width:min(520px,48vw);
  min-height:43px;
  border:1px solid #d7e5f2;
  border-radius:12px;
  background:#f7fbff;
  color:#6d8398;
  box-shadow:inset 0 1px 2px rgba(12,46,77,.025);
}
.app-body .search-box:focus-within{border-color:#9ccaff;box-shadow:var(--ws-focus);background:#fff}
.app-body .search-box input{height:41px;color:var(--ws-text)}
.app-body .icon-button{
  width:42px;height:42px;
  background:#f5f9fd;
  border:1px solid #e0eaf3;
  box-shadow:var(--ws-shadow-xs);
}
.app-body .user-chip{padding:6px 9px 6px 6px;border-radius:14px;transition:.18s}
.app-body .user-chip:hover{background:#f4f8fc}
.app-body .user-chip .avatar{width:40px;height:40px;background:linear-gradient(145deg,#dceeff,#c7e3ff);color:#0870d3;border:1px solid #c2ddf8}
.app-body .user-chip strong{font-size:.8rem}
.app-body .logout{padding:8px 10px;border-radius:9px}.app-body .logout:hover{background:#f1f6fb;color:#24425d}
.app-body .page-content{max-width:1540px;padding:30px clamp(18px,2.3vw,38px) 48px}

/* typography / headers */
.app-body .eyebrow{font-size:.67rem;letter-spacing:.105em;color:#0875e5;margin-bottom:.45rem}
.app-body .dash-hero,.app-body .module-head{margin-bottom:22px;align-items:center}
.app-body .dash-hero h1,.app-body .module-head h1{font-size:clamp(1.85rem,2.5vw,2.65rem);line-height:1.06;letter-spacing:-.035em;color:#091f39;margin-bottom:7px}
.app-body .dash-hero p:last-child,.app-body .module-head p:last-child{font-size:.88rem;color:#6c7e91}

/* buttons */
.app-body .btn{
  min-height:42px;
  border-radius:11px;
  padding:.72rem 1rem;
  font-size:.78rem;
  letter-spacing:-.005em;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease;
}
.app-body .btn:hover{transform:translateY(-1px)}
.app-body .btn:active{transform:translateY(0) scale(.99)}
.app-body .btn.primary{
  border-color:#0877ff;
  background:linear-gradient(135deg,#1689ff 0,#006de9 68%,#0561cb 100%);
  box-shadow:0 9px 20px rgba(4,111,235,.20),inset 0 1px rgba(255,255,255,.22);
}
.app-body .btn.primary:hover{box-shadow:0 12px 27px rgba(4,111,235,.28)}
.app-body .btn.outline,.app-body .btn.ghost{border-color:#bdd7f1;background:#fff;color:#0964bf;box-shadow:var(--ws-shadow-xs)}
.app-body .btn.outline:hover,.app-body .btn.ghost:hover{background:#f1f8ff;border-color:#8ec3f6}
.app-body .btn.whatsapp{background:linear-gradient(135deg,#16bb73,#08a65f);box-shadow:0 8px 18px rgba(8,166,95,.17)}

/* cards and panels */
.app-body .panel,.app-body .metric,.app-body .table-panel,.app-body .integration-card,.app-body .portfolio-admin-card{
  border-color:var(--ws-border);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(252,254,255,.98));
  box-shadow:var(--ws-shadow-sm);
}
.app-body .panel{border-radius:18px;padding:19px}
.app-body .panel-head{padding-bottom:13px;margin-bottom:4px;border-color:#e8f0f7}
.app-body .panel-head h2{font-size:.96rem;color:#0d2743}
.app-body .panel-head>a{font-weight:750}
.app-body .metrics-grid{gap:16px;margin-bottom:18px}
.app-body .metric{
  min-height:112px;
  border-radius:18px;
  padding:19px;
  position:relative;
  overflow:hidden;
  box-shadow:0 9px 26px rgba(9,50,87,.06);
}
.app-body .metric::after{content:"";position:absolute;right:-26px;top:-36px;width:105px;height:105px;border-radius:50%;background:rgba(22,137,255,.045)}
.app-body .metric-icon{width:46px;height:46px;border-radius:14px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.app-body .metric strong{font-size:1.28rem;letter-spacing:-.02em}
.app-body .metric small{font-weight:650;color:#4e647a}
.app-body .dashboard-grid{gap:17px}
.app-body .agenda-row,.app-body .alert-row,.app-body .stock-row,.app-body .list-line,.app-body .payment-progress-row{border-color:#eaf1f7}
.app-body .agenda-row:hover,.app-body .payment-progress-row:hover{background:#f7fbff}
.app-body .quick-grid a{border-radius:15px;background:linear-gradient(180deg,#fff,#f8fbfe);box-shadow:var(--ws-shadow-xs);transition:.16s}
.app-body .quick-grid a:hover{transform:translateY(-2px);border-color:#b9d9f7;box-shadow:var(--ws-shadow-sm)}

/* tables */
.app-body .table-panel{border-radius:18px;overflow:hidden}
.app-body .table-panel table{background:#fff}
.app-body .table-panel th{
  padding:14px 15px;
  background:linear-gradient(180deg,#f7fbff,#f2f7fc);
  color:#496078;
  font-size:.67rem;
  font-weight:850;
  letter-spacing:.055em;
}
.app-body .table-panel td{padding:14px 15px;border-color:#e9f0f6;color:#18334e}
.app-body .table-panel tbody tr{transition:background .14s ease,box-shadow .14s ease}
.app-body .table-panel tbody tr:hover{background:#f8fbff}
.app-body .finance-group-row:hover{background:#f3f9ff}

/* forms */
.app-body .stack-form{gap:15px}
.app-body .stack-form label,.app-body .grid-form label{color:#213d58;font-size:.76rem;font-weight:760}
.app-body .stack-form input,
.app-body .stack-form select,
.app-body .stack-form textarea,
.app-body .grid-form input,
.app-body .portfolio-edit-form input{
  min-height:43px;
  border:1px solid #ccdeed;
  border-radius:10px;
  padding:.72rem .8rem;
  background:#fff;
  box-shadow:inset 0 1px 2px rgba(11,44,74,.022);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.app-body .stack-form textarea{min-height:98px;resize:vertical}
.app-body .stack-form input:hover,.app-body .stack-form select:hover,.app-body .stack-form textarea:hover{border-color:#b4d0e9}
.app-body .stack-form input:focus,.app-body .stack-form select:focus,.app-body .stack-form textarea:focus,.app-body .grid-form input:focus{border-color:#78b8f7;box-shadow:var(--ws-focus);background:#fff}
.app-body .field-help{font-size:.66rem;color:#74869a}
.app-body .service-price-box,.app-body .payment-plan-fields{
  padding:15px;
  border:1px solid #d8e6f2;
  border-radius:14px;
  background:linear-gradient(180deg,#f8fbff,#f5f9fd);
}
.app-body .payment-plan-preview{background:linear-gradient(90deg,#e8f4ff,#f2f9ff);border:1px solid #d2e8fb}
.app-body details{background:#f9fcff}

/* dialogs */
.app-body dialog{color:var(--ws-text)}
.app-body .crud-dialog,.app-body .financial-flow-dialog,.app-body .receipt-issue-dialog,.app-body .payment-dialog,.app-body .financial-group-dialog{
  border:1px solid rgba(208,225,240,.88);
  border-radius:22px;
  box-shadow:var(--ws-shadow-lg);
  background:#fff;
  overflow:hidden;
}
.app-body .crud-dialog::backdrop,.app-body .financial-flow-dialog::backdrop,.app-body .receipt-issue-dialog::backdrop,.app-body .payment-dialog::backdrop,.app-body .financial-group-dialog::backdrop{
  background:rgba(5,20,36,.58);
  backdrop-filter:blur(5px) saturate(.85);
}
.app-body .crud-dialog form,.app-body .financial-flow-dialog .stack-form,.app-body .receipt-issue-dialog .stack-form,.app-body .payment-dialog>.stack-form{padding:22px 24px}
.app-body .dialog-head{position:sticky;top:-22px;z-index:5;margin:-2px -2px 4px;padding:9px 2px 14px;background:linear-gradient(180deg,#fff 82%,rgba(255,255,255,.92));border-bottom:1px solid #e9f0f6}
.app-body .dialog-head h2{font-size:1.23rem;letter-spacing:-.025em;color:#0a223e}
.app-body .dialog-head button{width:38px;height:38px;border-radius:10px!important;color:#597086!important;transition:.15s}
.app-body .dialog-head button:hover{background:#eff5fa!important;color:#173653!important}

/* premium order form — fixes overflow and follows approved mockup */
.app-body .crud-dialog-order{
  width:min(1180px,calc(100vw - 44px));
  max-width:1180px;
  max-height:calc(100dvh - 40px);
}
.app-body .crud-dialog-order #module-crud-form{max-height:calc(100dvh - 40px);overflow-y:auto;overflow-x:hidden;padding:0}
.app-body .crud-dialog-order .dialog-head{top:0;margin:0;padding:20px 24px 16px;box-shadow:0 5px 18px rgba(10,45,75,.035)}
.app-body .crud-dialog-order .os-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;padding:18px 20px 20px;background:linear-gradient(180deg,#f5f9fe,#eef5fb)}
.app-body .crud-dialog-order .os-form-main{display:grid;gap:15px;min-width:0}
.app-body .crud-dialog-order .os-section{
  min-width:0;
  padding:17px;
  border:1px solid #dbe8f4;
  border-radius:17px;
  background:rgba(255,255,255,.96);
  box-shadow:0 8px 24px rgba(8,42,72,.045);
}
.app-body .crud-dialog-order .os-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.app-body .crud-dialog-order .os-section-title{display:flex;align-items:center;gap:10px;min-width:0}
.app-body .crud-dialog-order .os-section-icon{width:34px;height:34px;border-radius:10px;background:#e8f4ff;color:#0877ff;display:grid;place-items:center;font-weight:900}
.app-body .crud-dialog-order .os-section-head h3{margin:0;font-size:.98rem;color:#0d2947}
.app-body .crud-dialog-order .os-section-head small{display:block;color:#718398;font-size:.68rem;margin-top:2px}
.app-body .crud-dialog-order .os-client-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.app-body .crud-dialog-order .os-client-grid>.wide{grid-column:1/-1}
.app-body .crud-dialog-order .service-price-box{margin-top:12px}
.app-body .crud-dialog-order .wo-cost-box{padding:0;border:0;background:transparent}
.app-body .crud-dialog-order .wo-cost-box>h3,.app-body .crud-dialog-order .wo-cost-box>p{display:none}
.app-body .crud-dialog-order .wo-materials{display:grid;gap:10px;min-width:0}
.app-body .crud-dialog-order .wo-material-row{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(130px,1.2fr) minmax(145px,1.35fr) 66px 78px minmax(92px,.8fr) minmax(104px,.9fr);
  gap:9px;
  align-items:end;
  padding:12px;
  border:1px solid #dce8f3;
  border-radius:14px;
  background:#f9fcff;
}
.app-body .crud-dialog-order .wo-material-row>*{min-width:0}
.app-body .crud-dialog-order .wo-material-row label{margin:0;font-size:.68rem}
.app-body .crud-dialog-order .wo-material-row input,.app-body .crud-dialog-order .wo-material-row select{width:100%;min-width:0;min-height:40px;padding:.6rem .62rem}
.app-body .crud-dialog-order .wo-material-row-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px;min-width:0;padding-top:10px;margin-top:1px;border-top:1px dashed #dbe7f1}
.app-body .crud-dialog-order .wo-material-subtotal{margin-right:auto;display:flex;align-items:baseline;gap:7px;color:#6d8195;font-size:.72rem;white-space:nowrap}
.app-body .crud-dialog-order .wo-material-subtotal b{font-size:.82rem;color:#173754}
.app-body .crud-dialog-order .wo-material-row .stock-check{display:flex;align-items:center;gap:7px;min-height:36px;padding:0;font-size:.68rem;line-height:1.18;white-space:nowrap}
.app-body .crud-dialog-order .wo-material-row .stock-check input{width:16px;min-height:0;height:16px;padding:0;flex:0 0 auto}
.app-body .crud-dialog-order .wo-material-remove{width:36px;height:36px;min-height:36px;padding:0;border-color:#f0c9cf;color:#c93345;background:#fff;flex:0 0 auto}
.app-body .crud-dialog-order .wo-material-actions{margin-top:11px;padding-top:11px;border-top:1px dashed #dbe7f1}
.app-body .crud-dialog-order .wo-material-help{font-size:.65rem}
.app-body .crud-dialog-order .wo-stock-meta{font-size:.61rem;line-height:1.25}
.app-body .crud-dialog-order .os-logistics-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.app-body .crud-dialog-order .os-logistics-grid>.wide{grid-column:1/-1}
.app-body .crud-dialog-order .address-fields{grid-column:1/-1}
.app-body .crud-dialog-order .os-summary-rail{display:grid;align-content:start;gap:12px;position:sticky;top:16px;min-width:0}
.app-body .crud-dialog-order .os-summary-card{
  padding:16px;
  border:1px solid #d7e5f2;
  border-radius:17px;
  background:#fff;
  box-shadow:0 9px 26px rgba(8,42,72,.055);
}
.app-body .crud-dialog-order .os-summary-card h3{margin:0 0 13px;font-size:.92rem;color:#0b2846}
.app-body .crud-dialog-order .os-summary-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;font-size:.75rem;color:#526a81}
.app-body .crud-dialog-order .os-summary-line strong{color:#102d4c;white-space:nowrap}
.app-body .crud-dialog-order .os-summary-line.total{margin:7px -7px 0;padding:12px 8px;border-radius:11px;background:linear-gradient(90deg,#e9f5ff,#f5faff);font-weight:850;color:#0871da}
.app-body .crud-dialog-order .os-summary-line.total strong{font-size:1.2rem;color:#0877ff}
.app-body .crud-dialog-order .os-summary-line.subtotal{margin-top:5px;padding-top:10px;border-top:1px solid #e4edf5;color:#365775}
.app-body .crud-dialog-order .os-summary-line.discount{margin:5px 0;padding:8px 9px;border-radius:10px;background:#edf9f3;color:#13744f}
.app-body .crud-dialog-order .os-summary-line.discount strong{color:#08794e}
.app-body .crud-dialog-order .os-discount-toggle{width:100%;margin:8px 0 4px;justify-content:center;border-style:dashed;background:#f7fbff}
.app-body .crud-dialog-order .os-discount-editor{margin:8px 0 10px;padding:10px;border:1px solid #cfe2f4;border-radius:12px;background:#f7fbff}
.app-body .crud-dialog-order .os-discount-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.app-body .crud-dialog-order .os-discount-editor label{margin:0;font-size:.74rem}
.app-body .crud-dialog-order .os-discount-editor input,.app-body .crud-dialog-order .os-discount-editor select{min-height:38px;padding:.55rem .6rem;font-size:.84rem}
.app-body .crud-dialog-order .os-discount-clear{margin-top:7px;padding:0;border:0;background:transparent;color:#b43a4a;font:inherit;font-size:.72rem;font-weight:750;cursor:pointer}
.app-body .crud-dialog-order .os-summary-profit.negative{background:linear-gradient(90deg,#fff0f1,#fff7f7);border-color:#f1cbd0}
.app-body .crud-dialog-order .os-summary-profit.negative small{color:#9b4b55}
.app-body .crud-dialog-order .os-summary-profit.negative strong{color:#bd3044}
.app-body .crud-dialog-order .os-summary-profit{margin-top:10px;padding:11px;border-radius:11px;background:linear-gradient(90deg,#eaf9f2,#f3fcf8);border:1px solid #ccecdf}
.app-body .crud-dialog-order .os-summary-profit small{display:block;color:#39705a;font-size:.64rem}
.app-body .crud-dialog-order .os-summary-profit strong{display:block;margin-top:2px;font-size:1.08rem;color:#087b50}
.app-body .crud-dialog-order .os-save-bar{position:sticky;bottom:0;z-index:6;display:flex;justify-content:flex-end;gap:10px;padding:13px 20px calc(13px + var(--safe-b));border-top:1px solid #dbe7f2;background:rgba(255,255,255,.93);backdrop-filter:blur(12px)}
.app-body .crud-dialog-order .os-save-bar .btn{min-width:180px}

/* misc financial polish */
.app-body .finance-group-intro{border:1px solid #dce8f3;border-radius:15px;background:linear-gradient(135deg,#fff,#f1f8ff);box-shadow:var(--ws-shadow-xs)}
.app-body .financial-group-entry,.app-body .finance-credit-card,.app-body .installment-item{border-radius:15px;box-shadow:var(--ws-shadow-xs)}
.app-body .financial-group-dialog .dialog-head{background:#fff}
.app-body .receipt-inline{border-radius:14px;background:#f7fbff}

/* settings / integrations / portfolio */
.app-body .integration-summary,.app-body .integrations-note{border-radius:18px}
.app-body .integration-card{border-radius:18px;transition:transform .16s ease,box-shadow .16s ease}
.app-body .integration-card:hover{transform:translateY(-2px);box-shadow:var(--ws-shadow-md)}
.app-body .settings-card,.app-body .portfolio-admin-panel{border-radius:18px}

/* statuses */
.app-body .status{padding:5px 9px;font-weight:750;border:1px solid transparent}
.app-body .status.pendente,.app-body .status.a_confirmar{background:#fff4e1;color:#a86100;border-color:#ffe0ad}
.app-body .status.parcial{background:#e9f4ff;color:#0864be;border-color:#cce4fb}
.app-body .status.pago,.app-body .status.confirmada,.app-body .status.concluida{background:#e4f8ee;color:#087249;border-color:#c7eadb}
.app-body .status.cancelado,.app-body .status.cancelada,.app-body .status.vencido{background:#fff0f2;color:#b52e40;border-color:#f5ccd2}

/* focus & accessibility */
.app-body a:focus-visible,.app-body button:focus-visible,.app-body input:focus-visible,.app-body select:focus-visible,.app-body textarea:focus-visible{outline:2px solid #1689ff;outline-offset:2px}
.app-body ::selection{background:#cce8ff;color:#08223e}
.app-body *{scrollbar-width:thin;scrollbar-color:#b8cada transparent}
.app-body ::-webkit-scrollbar{width:9px;height:9px}.app-body ::-webkit-scrollbar-thumb{background:#b8cada;border:2px solid transparent;background-clip:padding-box;border-radius:999px}

/* mobile */
@media(max-width:1100px){
  .app-body .crud-dialog-order{width:calc(100vw - 24px);max-width:none}
  .app-body .crud-dialog-order .os-form-layout{grid-template-columns:minmax(0,1fr) 245px}
  .app-body .crud-dialog-order .wo-material-row{grid-template-columns:1fr 1fr 78px;gap:8px}
  .app-body .crud-dialog-order .wo-material-row .wide{grid-column:auto}
  .app-body .crud-dialog-order .wo-material-row-actions{grid-column:1/-1}
}
@media(max-width:900px){
  .app-body .app-shell{display:block}
  .app-body .sidebar{
    width:min(326px,88vw);
    height:100dvh;
    max-height:100dvh;
    padding:calc(18px + var(--safe-t)) 12px calc(20px + var(--safe-b));
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .app-body .sidebar nav{overflow:visible;flex:0 0 auto}
  .app-body .sidebar-foot{margin-top:18px;flex:0 0 auto}
  .app-body .topbar{height:66px;padding:0 14px;background:linear-gradient(135deg,#09203a,#0d3a65);color:#fff;border:0;box-shadow:0 5px 20px rgba(5,26,48,.16)}
  .app-body .menu-button{width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff}
  .app-body .top-actions .icon-button{border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.08)}
  .app-body .user-chip{padding:3px}.app-body .user-chip span:last-child,.app-body .logout{display:none}
  .app-body .page-content{padding:18px 13px calc(94px + var(--safe-b))}
  .app-body .dash-hero,.app-body .module-head{align-items:flex-start;margin-bottom:17px;gap:12px}
  .app-body .module-head{flex-wrap:wrap}.app-body .module-head>div{min-width:0}
  .app-body .dash-hero h1,.app-body .module-head h1{font-size:1.75rem}
  .app-body .panel{padding:15px;border-radius:16px}
  .app-body .metrics-grid{grid-template-columns:1fr 1fr;gap:9px}.app-body .metric{min-height:105px;padding:14px;border-radius:15px}
  .app-body .table-panel{border-radius:15px}
  .app-body .mobile-bottom{height:calc(70px + var(--safe-b));padding:7px 10px var(--safe-b);border-top-color:#d6e4f1;box-shadow:0 -10px 32px rgba(7,38,67,.09)}
  .app-body .mobile-bottom .fab{background:linear-gradient(145deg,#168aff,#006ee8);box-shadow:0 12px 26px rgba(0,111,232,.34)}

  .app-body .crud-dialog-order{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:18px}
  .app-body .crud-dialog-order #module-crud-form{max-height:calc(100dvh - 12px)}
  .app-body .crud-dialog-order .dialog-head{padding:17px 16px 13px}
  .app-body .crud-dialog-order .os-form-layout{grid-template-columns:1fr;padding:12px;background:#f0f6fc}
  .app-body .crud-dialog-order .os-summary-rail{position:static;grid-row:auto}
  .app-body .crud-dialog-order .os-summary-card{box-shadow:none}
  .app-body .crud-dialog-order .wo-material-row{grid-template-columns:1fr 1fr;gap:9px;padding:11px}
  .app-body .crud-dialog-order .wo-material-row .wide{grid-column:1/-1}
  .app-body .crud-dialog-order .wo-material-row .stock-check{display:flex;min-height:36px}
  .app-body .crud-dialog-order .wo-material-row-actions{grid-column:1/-1;flex-wrap:wrap}
  .app-body .crud-dialog-order .wo-material-remove{width:36px}
  .app-body .crud-dialog-order .os-save-bar{padding:11px 12px calc(11px + var(--safe-b))}
  .app-body .crud-dialog-order .os-save-bar .btn{width:100%;min-width:0}
}
@media(max-width:600px){
  .app-body .metrics-grid{grid-template-columns:1fr}
  .app-body .metric{min-height:88px;display:grid;grid-template-columns:42px 1fr;align-items:center}
  .app-body .dashboard-grid{gap:11px}
  .app-body .panel{box-shadow:0 5px 18px rgba(8,42,72,.045)}
  .app-body .module-head-actions{width:100%;grid-template-columns:1fr 1fr}
  .app-body .module-head-actions .btn{width:100%}
  .app-body .crud-dialog{width:calc(100vw - 12px);border-radius:18px}
  .app-body .crud-dialog form,.app-body .financial-flow-dialog .stack-form,.app-body .receipt-issue-dialog .stack-form,.app-body .payment-dialog>.stack-form{padding:17px 15px}
  .app-body .address-fields{grid-template-columns:1fr}
  .app-body .address-fields .grow{grid-column:auto}
  .app-body .crud-dialog-order .os-section{padding:13px;border-radius:14px}
  .app-body .crud-dialog-order .os-client-grid,.app-body .crud-dialog-order .os-logistics-grid{grid-template-columns:1fr}
  .app-body .crud-dialog-order .os-client-grid>.wide,.app-body .crud-dialog-order .os-logistics-grid>.wide{grid-column:auto}
  .app-body .crud-dialog-order .wo-material-row{grid-template-columns:1fr}
  .app-body .crud-dialog-order .wo-material-row .wide{grid-column:auto}
  .app-body .crud-dialog-order .wo-material-row .stock-check{padding:5px 0}
  .app-body .crud-dialog-order .wo-material-row-actions{display:grid;grid-template-columns:1fr auto;gap:9px}
  .app-body .crud-dialog-order .wo-material-subtotal{grid-column:1/-1;margin-right:0}
  .app-body .crud-dialog-order .os-discount-fields{grid-template-columns:1fr}
  .app-body .crud-dialog-order .wo-cost-summary{grid-template-columns:1fr 1fr}
  .app-body .crud-dialog-order .os-summary-line.total strong{font-size:1.05rem}
  .app-body .crud-dialog-order .wo-material-actions{display:grid}.app-body .crud-dialog-order .wo-material-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .app-body *, .app-body *::before,.app-body *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

/* generic mobile records — no horizontal drag */
.app-body .module-card-list{display:none}
@media(max-width:900px){
  .app-body .module-table-desktop{display:none!important}
  .app-body .module-card-list{display:grid;gap:10px}
  .app-body .module-record-card{
    min-width:0;
    padding:14px;
    border:1px solid #dbe7f2;
    border-radius:16px;
    background:linear-gradient(180deg,#fff,#fbfdff);
    box-shadow:0 7px 22px rgba(8,42,72,.055);
  }
  .app-body .module-record-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
  .app-body .module-record-field{min-width:0;display:grid;gap:2px;padding:8px 9px;border-radius:10px;background:#f7faff}
  .app-body .module-record-field small{color:#718398;font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.035em}
  .app-body .module-record-field strong{color:#17344f;font-size:.78rem;overflow-wrap:anywhere}
  .app-body .module-record-field:first-child{grid-column:1/-1;background:#eef6ff}
  .app-body .module-record-field:first-child strong{font-size:.92rem;color:#0b5fae}
  .app-body .module-record-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid #e8f0f6}
  .app-body .module-record-actions .btn,.app-body .module-record-actions form,.app-body .module-record-actions form .btn{width:100%}
}
@media(max-width:420px){
  .app-body .module-record-fields{grid-template-columns:1fr}
  .app-body .module-record-field:first-child{grid-column:auto}
}

/* login / onboarding premium */
.auth-body{
  background:
    radial-gradient(circle at 18% 20%,rgba(19,138,255,.35),transparent 25rem),
    radial-gradient(circle at 92% 90%,rgba(19,138,255,.16),transparent 28rem),
    linear-gradient(145deg,#061426,#092844 58%,#071827);
}
.auth-body .auth-shell{border:1px solid rgba(255,255,255,.12);border-radius:30px;box-shadow:0 35px 110px rgba(0,0,0,.38)}
.auth-body .brand-panel{background:radial-gradient(circle at 18% 12%,rgba(24,137,255,.32),transparent 22rem),linear-gradient(160deg,#0a2a4b,#061527 76%);position:relative;overflow:hidden}
.auth-body .brand-panel::after{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(53,181,255,.18);border-radius:42% 58% 62% 38%;right:-130px;bottom:-110px;transform:rotate(-25deg);box-shadow:0 0 0 24px rgba(53,181,255,.035),0 0 0 60px rgba(53,181,255,.018)}
.auth-body .brand-panel>*{position:relative;z-index:1}
.auth-body .brand-panel .brand img{border-radius:15px;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.auth-body .brand-panel h1{letter-spacing:-.045em}.auth-body .brand-panel p{color:#bcd2e6}
.auth-body .login-card{background:linear-gradient(180deg,#fff,#f7fbff)}
.auth-body .login-inner h2{letter-spacing:-.035em;color:#0b223d}
.auth-body .login-inner>p{color:#6b7e92}
.auth-body .stack-form input,.auth-body .stack-form select,.auth-body .stack-form textarea{min-height:46px;border-radius:11px;border-color:#cbddeb;background:#fff}
.auth-body .stack-form input:focus,.auth-body .stack-form select:focus,.auth-body .stack-form textarea:focus{border-color:#79b9f7;box-shadow:0 0 0 4px rgba(8,119,255,.12)}
.auth-body .btn.primary{border-radius:12px;background:linear-gradient(135deg,#1689ff,#006de9);box-shadow:0 10px 24px rgba(0,108,229,.22)}

.plain-body{background:radial-gradient(circle at 80% 0,rgba(24,137,255,.10),transparent 28rem),linear-gradient(180deg,#f7fbff,#edf4fb)}
.plain-body .onboarding-card{border-color:#d9e7f3;border-radius:24px;box-shadow:0 20px 60px rgba(8,42,72,.09);background:linear-gradient(180deg,#fff,#fbfdff)}
.plain-body .grid-form input,.plain-body .grid-form select,.plain-body .grid-form textarea{border-radius:11px;border-color:#ccdeed}

@media(max-width:760px){
  .auth-body{padding:10px}.auth-body .auth-shell{min-height:calc(100dvh - 20px);grid-template-columns:1fr;border-radius:22px}
  .auth-body .brand-panel{display:none}.auth-body .login-card{padding:26px 20px}
}
@media(max-width:600px){
  .app-body .crud-dialog-order .os-section-head{align-items:flex-start;flex-wrap:wrap}
  .app-body .crud-dialog-order .os-section-head>.btn{width:100%}
}
.app-body .crud-dialog-order #module-crud-form{display:block}

/* ========================================================================== 
   Wakko Serviços — Comfort Typography + Badge Hygiene — 2026-09-25
   Padrão oficial: leitura confortável para uso prolongado, sem microtipografia.
   ========================================================================== */

/* Badges de contagem: zero/hidden nunca ocupa espaço visual. */
.app-body .nav-badge[hidden],
.app-body .top-notification-badge[hidden],
.app-body .mobile-nav-badge[hidden],
.app-body [data-mobile-total][hidden]{display:none!important}

/* Escala base mais confortável. */
body.app-body{font-size:16px;line-height:1.5}
.app-body .sidebar-brand{font-size:1.42rem}
.app-body .sidebar-brand small{font-size:.80rem}
.app-body .nav-item{min-height:48px;font-size:.96rem;line-height:1.25}
.app-body .nav-item .nav-icon{width:27px;height:27px;font-size:.96rem}
.app-body .nav-badge{min-width:21px;height:21px;font-size:.70rem;font-weight:850}
.app-body .sidebar-foot strong{font-size:1rem}
.app-body .sidebar-foot small{font-size:.78rem;line-height:1.45}
.app-body .sidebar-foot .developer-credit{font-size:.72rem}

.app-body .search-box input{font-size:.95rem}
.app-body .user-chip strong{font-size:.92rem}
.app-body .user-chip small{font-size:.78rem}
.app-body .logout{font-size:.9rem}

.app-body .eyebrow{font-size:.76rem;letter-spacing:.095em;font-weight:850}
.app-body .dash-hero h1,.app-body .module-head h1{font-size:clamp(2rem,2.55vw,2.75rem)}
.app-body .dash-hero p:last-child,.app-body .module-head p:last-child{font-size:1rem;line-height:1.5}

.app-body .btn{font-size:.90rem;font-weight:780}
.app-body .panel-head h2{font-size:1.08rem}
.app-body .panel-head>a{font-size:.88rem}
.app-body .metric small{font-size:.84rem}
.app-body .metric strong{font-size:1.42rem}
.app-body .quick-grid a{font-size:.92rem}

/* Tabelas: cabeçalho e células com leitura de trabalho, não de dashboard decorativo. */
.app-body .table-panel th{font-size:.78rem;letter-spacing:.04em;padding:15px 16px}
.app-body .table-panel td{font-size:.94rem;line-height:1.45;padding:15px 16px}
.app-body .table-panel td small{font-size:.78rem;line-height:1.4}

/* Formulários. */
.app-body .stack-form label,.app-body .grid-form label{font-size:.88rem;line-height:1.35}
.app-body .stack-form input,
.app-body .stack-form select,
.app-body .stack-form textarea,
.app-body .grid-form input,
.app-body .grid-form select,
.app-body .grid-form textarea,
.app-body .portfolio-edit-form input{font-size:.95rem;line-height:1.35}
.app-body .field-help{font-size:.78rem;line-height:1.45}
.app-body .payment-plan-preview{font-size:.88rem;line-height:1.45}
.app-body .dialog-head h2{font-size:1.36rem}
.app-body .dialog-head p,.app-body .dialog-head small{font-size:.84rem}
.app-body .status{font-size:.76rem;line-height:1.25}

/* OS premium: aumenta legibilidade sem reabrir o problema de largura. */
.app-body .crud-dialog-order .os-section-head h3{font-size:1.08rem}
.app-body .crud-dialog-order .os-section-head small{font-size:.78rem;line-height:1.42}
.app-body .crud-dialog-order .wo-material-row label{font-size:.78rem;line-height:1.28}
.app-body .crud-dialog-order .wo-material-row input,
.app-body .crud-dialog-order .wo-material-row select{font-size:.88rem}
.app-body .crud-dialog-order .wo-material-row .stock-check{font-size:.76rem}
.app-body .crud-dialog-order .wo-material-help{font-size:.76rem;line-height:1.45}
.app-body .crud-dialog-order .wo-stock-meta{font-size:.72rem;line-height:1.35}
.app-body .crud-dialog-order .os-summary-card h3{font-size:1.04rem}
.app-body .crud-dialog-order .os-summary-line{font-size:.86rem}
.app-body .crud-dialog-order .os-summary-profit small{font-size:.76rem}

/* Agenda: o calendário precisa ser consultável de relance. */
.app-body .agenda-services-panel .agenda-panel-head>div>span{font-size:.90rem;line-height:1.45}
.app-body .agenda-calendar-toolbar>strong{font-size:1.16rem}
.app-body .agenda-mini-control{font-size:.88rem}
.app-body .agenda-mini-control.today{font-size:.84rem}
.app-body .service-week-row span{font-size:.77rem}
.app-body .service-day-number{font-size:.96rem}
.app-body .service-calendar-tag{font-size:.64rem;line-height:1.2}
.app-body .agenda-services-legend span{font-size:.76rem}
.app-body .agenda-color-hint{font-size:.80rem;line-height:1.45}
.app-body .agenda-day-heading h3{font-size:1.18rem}
.app-body .agenda-entry-time{font-size:.96rem}
.app-body .agenda-entry-title strong{font-size:1rem}
.app-body .agenda-kind{font-size:.68rem}
.app-body .agenda-entry-main>b{font-size:.88rem}
.app-body .agenda-entry-meta,.app-body .agenda-entry-notes{font-size:.84rem;line-height:1.45}
.app-body .agenda-empty strong{font-size:1rem}
.app-body .agenda-empty span{font-size:.88rem;line-height:1.5}

/* Cards mobile genéricos. */
@media(max-width:900px){
  body.app-body{font-size:16px}
  .app-body .nav-item{font-size:.98rem;min-height:50px}
  .app-body .dash-hero h1,.app-body .module-head h1{font-size:1.95rem}
  .app-body .dash-hero p:last-child,.app-body .module-head p:last-child{font-size:.96rem}
  .app-body .module-record-field small{font-size:.72rem}
  .app-body .module-record-field strong{font-size:.90rem;line-height:1.42}
  .app-body .module-record-field:first-child strong{font-size:1.02rem}
  .app-body .mobile-bottom a,.app-body .mobile-bottom button{font-size:.9rem}
  .app-body .mobile-bottom small{font-size:.72rem}
}
@media(max-width:520px){
  .app-body .agenda-calendar-toolbar>strong{font-size:1.04rem}
  .app-body .agenda-mini-control{font-size:.82rem}
  .app-body .service-week-row span{font-size:.72rem}
  .app-body .service-day-number{font-size:.86rem}
  .app-body .service-calendar-tag{font-size:.58rem}
  .app-body .agenda-services-legend span{font-size:.72rem}
}

/* ========================================================================== 
   Wakko Serviços — Official W + Agenda Premium + Light/Dark Theme — 2026-09-25
   ========================================================================== */

/* Official Wakko W: transparent, integrated directly into the interface. */
.app-body .sidebar-brand{gap:10px;padding-top:1px}
.app-body .sidebar-brand .brand-w{
  width:58px;height:50px;border-radius:0;padding:0;background:transparent!important;
  box-shadow:none!important;overflow:visible;display:grid;place-items:center;
}
.app-body .sidebar-brand .brand-w img{
  width:58px;height:50px;object-fit:contain;display:block;
  filter:drop-shadow(0 8px 12px rgba(0,104,255,.24));
}
.auth-body .brand-panel .brand img,.auth-body .mobile-logo img,
.plain-body .brand img,.public-brand img{
  background:transparent!important;padding:0!important;border-radius:0!important;
  box-shadow:none!important;object-fit:contain;
}
.auth-body .brand-panel .brand img{filter:drop-shadow(0 10px 18px rgba(0,105,255,.22))}

/* Theme controls */
.theme-toggle{cursor:pointer;display:grid;place-items:center;font:inherit}
.app-body .theme-toggle span{font-size:1.12rem;line-height:1}
.auth-theme-toggle,.plain-theme-toggle{
  position:fixed;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:80;
  width:44px;height:44px;border:1px solid rgba(151,188,221,.35);border-radius:14px;
  color:#0c5fb3;background:rgba(255,255,255,.88);box-shadow:0 10px 28px rgba(4,31,58,.12);
  backdrop-filter:blur(12px);
}
.auth-theme-toggle:hover,.plain-theme-toggle:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(4,31,58,.16)}

/* Agenda approved premium composition */
.app-body .module-head.agenda-hero{
  min-height:126px;margin:-30px calc(clamp(18px,2.3vw,38px) * -1) 18px;
  padding:25px clamp(18px,2.3vw,38px) 21px;
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 70% 32%,rgba(65,158,255,.16),transparent 22rem),
    linear-gradient(118deg,rgba(255,255,255,.42),rgba(220,238,255,.58));
  border-bottom:1px solid rgba(181,211,239,.36);
}
.app-body .module-head.agenda-hero::before,
.app-body .module-head.agenda-hero::after{
  content:"";position:absolute;pointer-events:none;border-radius:50%;border:1px solid rgba(32,132,236,.16)
}
.app-body .module-head.agenda-hero::before{width:760px;height:185px;right:-45px;top:40px;transform:rotate(-8deg)}
.app-body .module-head.agenda-hero::after{width:560px;height:135px;right:160px;top:55px;transform:rotate(9deg)}
.app-body .module-head.agenda-hero>div:first-child{position:relative;z-index:2}
.app-body .agenda-hero-callout{
  position:relative;z-index:2;margin-left:auto;display:flex;align-items:center;gap:18px;padding-right:20px;color:#244d77
}
.app-body .agenda-hero-callout::before{content:"";height:58px;width:1px;background:#bcd7ef;order:2}
.app-body .agenda-hero-callout strong{order:3;font-size:.98rem;line-height:1.23;font-weight:650;letter-spacing:-.01em}
.app-body .agenda-hero-icon{
  order:1;width:58px;height:58px;border-radius:17px;display:grid;place-items:center;
  background:linear-gradient(145deg,#258fff,#066de9);color:#fff;font-size:1.45rem;
  box-shadow:0 12px 28px rgba(0,111,234,.23),inset 0 1px rgba(255,255,255,.28)
}
.app-body .agenda-services-panel{padding:21px;border-radius:22px;box-shadow:0 16px 45px rgba(8,42,72,.075)}
.app-body .agenda-panel-head{padding-bottom:16px}
.app-body .agenda-panel-title{display:flex!important;align-items:center;gap:14px}
.app-body .agenda-title-icon{
  width:50px;height:50px;border-radius:15px;background:linear-gradient(145deg,#e4f2ff,#d4eaff);color:#0877ff;
  display:grid;place-items:center;font-size:1.25rem;box-shadow:inset 0 0 0 1px #cfe5fa
}
.app-body .agenda-panel-title>div{display:grid;gap:2px}
.app-body .agenda-panel-title h2{font-size:1.32rem;margin:0}
.app-body .agenda-services-layout{gap:16px;grid-template-columns:minmax(480px,.98fr) minmax(0,1.18fr)}
.app-body .agenda-calendar-column{
  padding:16px;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f6faff);border-color:#dbe8f4;
  box-shadow:inset 0 1px rgba(255,255,255,.95)
}
.app-body .agenda-calendar-toolbar{margin-bottom:10px}
.app-body .agenda-calendar-toolbar>strong{font-size:1.35rem;letter-spacing:-.025em;color:#0b2440}
.app-body .agenda-mini-control{height:42px;min-width:42px;border-radius:12px;background:#fff;box-shadow:0 5px 14px rgba(9,52,90,.055)}
.app-body .agenda-services-legend{gap:8px;margin:0 0 14px;flex-wrap:wrap}
.app-body .agenda-services-legend span{
  min-height:31px;padding:5px 10px;border:1px solid #dce8f3;border-radius:999px;background:#fff;
  color:#385670;font-weight:750;box-shadow:0 3px 10px rgba(13,55,89,.025)
}
.app-body .service-week-row,.app-body .service-days-grid{gap:7px}
.app-body .service-week-row span{padding:6px 0;color:#526d87}
.app-body .service-day{
  min-height:78px;border-radius:13px;border-color:#dde8f2;background:#fff;
  box-shadow:0 3px 12px rgba(12,51,84,.035);padding:9px 8px
}
.app-body .service-day:hover{box-shadow:0 10px 22px rgba(14,58,95,.09);border-color:#a9cff2}
.app-body .service-day.selected{
  color:#fff!important;background:linear-gradient(145deg,#1388ff,#0669e4)!important;
  border-color:#0569e5!important;outline:2px solid #6bb6ff;outline-offset:2px;
  box-shadow:0 13px 25px rgba(0,106,225,.25)!important
}
.app-body .service-day.selected .service-day-number{color:#fff}
.app-body .service-day.selected .service-calendar-tag{background:rgba(255,255,255,.18)!important;color:#fff!important}
.app-body .agenda-day-panel{
  min-height:430px;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);border-color:#dbe8f4;padding:20px;
  box-shadow:inset 0 1px rgba(255,255,255,.95)
}
.app-body .agenda-day-heading{padding-bottom:14px;margin-bottom:12px}
.app-body .agenda-empty{min-height:315px;align-content:center}
.app-body .agenda-empty::before{
  content:"▣";width:104px;height:82px;border-radius:36% 48% 40% 52%;display:grid;place-items:center;
  margin-bottom:12px;font-size:2.55rem;color:#167fff;background:radial-gradient(circle at 45% 42%,#dff0ff,#eff7ff 64%,transparent 66%);
  text-shadow:0 8px 16px rgba(0,111,232,.16)
}
.app-body .agenda-empty strong{font-size:1.18rem;color:#0c2847}.app-body .agenda-empty span{font-size:.92rem}

/* Light theme is the default official theme. */
html[data-theme="light"]{color-scheme:light;background:#edf4fb}

/* Dark theme — same hierarchy, reduced glare, preserved status semantics. */
html[data-theme="dark"]{color-scheme:dark;background:#071524}
html[data-theme="dark"] body.app-body{
  --ws-surface:#0d2135;--ws-surface-2:#10283f;--ws-surface-3:#132f49;--ws-canvas:#071524;
  --ws-text:#eaf4ff;--ws-muted:#9db1c5;--ws-border:#203d56;--ws-border-strong:#2b506f;
  color:#eaf4ff;
  background:radial-gradient(circle at 78% -10%,rgba(0,119,255,.14),transparent 31rem),linear-gradient(180deg,#0a1c2e 0,#071524 34rem,#071524 100%);
}
html[data-theme="dark"] body.app-body::before{background-image:linear-gradient(rgba(111,184,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(111,184,255,.025) 1px,transparent 1px)}
html[data-theme="dark"] .app-body .topbar{background:rgba(8,24,39,.88);border-bottom-color:#17334d;color:#eaf4ff;box-shadow:0 4px 20px rgba(0,0,0,.16)}
html[data-theme="dark"] .app-body .search-box{background:#0c2237;border-color:#24445f;color:#95adc2}
html[data-theme="dark"] .app-body .search-box:focus-within{background:#102940;border-color:#3b83c3}
html[data-theme="dark"] .app-body .search-box input{color:#eaf4ff;background:transparent}
html[data-theme="dark"] .app-body .search-box input::placeholder{color:#7790a7}
html[data-theme="dark"] .app-body .icon-button{background:#0d263c;border-color:#24445f;color:#d9ecff}
html[data-theme="dark"] .app-body .user-chip:hover,html[data-theme="dark"] .app-body .logout:hover{background:#102940;color:#dceeff}
html[data-theme="dark"] .app-body .user-chip .avatar{background:linear-gradient(145deg,#163e61,#174c76);border-color:#24567e;color:#8fc9ff}
html[data-theme="dark"] .app-body .logout{color:#a8bed2}
html[data-theme="dark"] .app-body .page-content{color:#e7f2fc}
html[data-theme="dark"] .app-body .dash-hero h1,html[data-theme="dark"] .app-body .module-head h1{color:#f3f8fd}
html[data-theme="dark"] .app-body .dash-hero p:last-child,html[data-theme="dark"] .app-body .module-head p:last-child{color:#9bb0c4}
html[data-theme="dark"] .app-body .eyebrow{color:#63b5ff}
html[data-theme="dark"] .app-body .module-head.agenda-hero{background:radial-gradient(circle at 70% 32%,rgba(17,119,224,.16),transparent 22rem),linear-gradient(118deg,rgba(13,35,56,.46),rgba(11,39,65,.72));border-bottom-color:#183a58}
html[data-theme="dark"] .app-body .agenda-hero-callout{color:#afc7dc}
html[data-theme="dark"] .app-body .agenda-hero-callout::before{background:#2c587b}

html[data-theme="dark"] .app-body .panel,
html[data-theme="dark"] .app-body .metric,
html[data-theme="dark"] .app-body .table-panel,
html[data-theme="dark"] .app-body .integration-card,
html[data-theme="dark"] .app-body .portfolio-admin-card,
html[data-theme="dark"] .app-body .settings-card,
html[data-theme="dark"] .app-body .portfolio-admin-panel{
  background:linear-gradient(180deg,#0e2439,#0b1f32);border-color:#203d56;box-shadow:0 10px 30px rgba(0,0,0,.16)
}
html[data-theme="dark"] .app-body .panel-head{border-color:#1d3a54}
html[data-theme="dark"] .app-body .panel-head h2,html[data-theme="dark"] .app-body .metric strong{color:#e9f4ff}
html[data-theme="dark"] .app-body .metric small{color:#9cb1c5}
html[data-theme="dark"] .app-body .metric::after{background:rgba(43,146,255,.06)}
html[data-theme="dark"] .app-body .quick-grid a{background:linear-gradient(180deg,#10283f,#0c2135);border-color:#24435e;color:#e4f1fd}
html[data-theme="dark"] .app-body .quick-grid a:hover{background:#13304a;border-color:#376a93}

html[data-theme="dark"] .app-body .table-panel table{background:#0b1f32}
html[data-theme="dark"] .app-body .table-panel th{background:linear-gradient(180deg,#122b43,#0f273d);color:#aac0d4;border-color:#203d56}
html[data-theme="dark"] .app-body .table-panel td{color:#dceafa;border-color:#1b354e}
html[data-theme="dark"] .app-body .table-panel tbody tr:hover,html[data-theme="dark"] .app-body .finance-group-row:hover{background:#102b43}

html[data-theme="dark"] .app-body .stack-form label,html[data-theme="dark"] .app-body .grid-form label{color:#d5e6f5}
html[data-theme="dark"] .app-body .stack-form input,
html[data-theme="dark"] .app-body .stack-form select,
html[data-theme="dark"] .app-body .stack-form textarea,
html[data-theme="dark"] .app-body .grid-form input,
html[data-theme="dark"] .app-body .grid-form select,
html[data-theme="dark"] .app-body .grid-form textarea,
html[data-theme="dark"] .app-body .portfolio-edit-form input{
  color:#eaf4ff;background:#0d253a;border-color:#294963
}
html[data-theme="dark"] .app-body input::placeholder,html[data-theme="dark"] .app-body textarea::placeholder{color:#7890a5}
html[data-theme="dark"] .app-body .stack-form input:focus,html[data-theme="dark"] .app-body .stack-form select:focus,html[data-theme="dark"] .app-body .stack-form textarea:focus,html[data-theme="dark"] .app-body .grid-form input:focus{background:#102a42;border-color:#4189c7}
html[data-theme="dark"] .app-body .field-help,html[data-theme="dark"] .app-body .muted{color:#8fa7bb}
html[data-theme="dark"] .app-body .service-price-box,html[data-theme="dark"] .app-body .payment-plan-fields{background:linear-gradient(180deg,#102a42,#0d2439);border-color:#284760}
html[data-theme="dark"] .app-body .payment-plan-preview{background:linear-gradient(90deg,#102f4a,#112941);border-color:#285579;color:#bed7ed}
html[data-theme="dark"] .app-body details{background:#0d253a;border-color:#294963}

html[data-theme="dark"] .app-body .crud-dialog,
html[data-theme="dark"] .app-body .financial-flow-dialog,
html[data-theme="dark"] .app-body .receipt-issue-dialog,
html[data-theme="dark"] .app-body .payment-dialog,
html[data-theme="dark"] .app-body .financial-group-dialog{background:#0b1f32;border-color:#294861;color:#eaf4ff}
html[data-theme="dark"] .app-body .dialog-head{background:linear-gradient(180deg,#0b1f32 82%,rgba(11,31,50,.92));border-color:#1d3a54}
html[data-theme="dark"] .app-body .dialog-head h2{color:#eef7ff}
html[data-theme="dark"] .app-body .dialog-head button{color:#a9bfd3!important}
html[data-theme="dark"] .app-body .dialog-head button:hover{background:#12304a!important;color:#eaf4ff!important}
html[data-theme="dark"] .app-body .crud-dialog-order .os-form-layout{background:linear-gradient(180deg,#091d2f,#081827)}
html[data-theme="dark"] .app-body .crud-dialog-order .os-section{background:#0d2439;border-color:#23445e;box-shadow:0 8px 24px rgba(0,0,0,.10)}
html[data-theme="dark"] .app-body .crud-dialog-order .os-section-head h3,html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-card h3{color:#e8f4ff}
html[data-theme="dark"] .app-body .crud-dialog-order .os-section-head small{color:#8fa7bb}
html[data-theme="dark"] .app-body .crud-dialog-order .os-section-icon{background:#153a5b;color:#67b7ff}
html[data-theme="dark"] .app-body .crud-dialog-order .wo-material-row{background:#102940;border-color:#294963}
html[data-theme="dark"] .app-body .crud-dialog-order .wo-material-remove{background:#102940}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-card{background:#0e263c;border-color:#294963;box-shadow:0 9px 26px rgba(0,0,0,.13)}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-line{color:#9fb5c8}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-line strong{color:#e9f5ff}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-line.total{background:linear-gradient(90deg,#103657,#122d47);color:#6fbdff}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-profit{background:linear-gradient(90deg,#0f382e,#102d2b);border-color:#235846}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-profit small{color:#8cc8ad}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-profit strong{color:#5fd2a0}
html[data-theme="dark"] .app-body .crud-dialog-order .wo-material-row-actions{border-color:#294963}
html[data-theme="dark"] .app-body .crud-dialog-order .wo-material-subtotal{color:#9db4c8}
html[data-theme="dark"] .app-body .crud-dialog-order .wo-material-subtotal b{color:#e8f4ff}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-line.subtotal{border-color:#28465f;color:#a9bfd2}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-line.discount{background:#10392e;color:#86d8b4}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-line.discount strong{color:#66d2a3}
html[data-theme="dark"] .app-body .crud-dialog-order .os-discount-toggle{background:#102a42;border-color:#315b7c;color:#89c8ff}
html[data-theme="dark"] .app-body .crud-dialog-order .os-discount-editor{background:#102940;border-color:#31516a}
html[data-theme="dark"] .app-body .crud-dialog-order .os-discount-clear{color:#ff9aaa}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-profit.negative{background:linear-gradient(90deg,#3d1f27,#352027);border-color:#633541}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-profit.negative small{color:#e3a4ad}
html[data-theme="dark"] .app-body .crud-dialog-order .os-summary-profit.negative strong{color:#ff9aaa}
html[data-theme="dark"] .app-body .crud-dialog-order .os-save-bar{background:rgba(9,27,44,.94);border-color:#23425b}

html[data-theme="dark"] .app-body .finance-group-intro{background:linear-gradient(135deg,#0d2439,#102d47);border-color:#24465f}
html[data-theme="dark"] .app-body .financial-group-entry,
html[data-theme="dark"] .app-body .finance-credit-card,
html[data-theme="dark"] .app-body .installment-item,
html[data-theme="dark"] .app-body .receipt-inline{background:#0e263c!important;border-color:#274761!important;color:#e7f2fc}
html[data-theme="dark"] .app-body .financial-group-dialog .dialog-head{background:#0b1f32}

/* Agenda dark */
html[data-theme="dark"] .app-body .agenda-services-panel{background:linear-gradient(180deg,#0c2237,#091d30);border-color:#21415c}
html[data-theme="dark"] .app-body .agenda-title-icon{background:linear-gradient(145deg,#123a5d,#11304c);color:#6bb9ff;box-shadow:inset 0 0 0 1px #234d70}
html[data-theme="dark"] .app-body .agenda-panel-title h2{color:#edf6ff}
html[data-theme="dark"] .app-body .agenda-calendar-column{background:linear-gradient(180deg,#0e273e,#0b2237);border-color:#23445f}
html[data-theme="dark"] .app-body .agenda-calendar-toolbar>strong{color:#edf6ff}
html[data-theme="dark"] .app-body .agenda-mini-control{background:#102b43;border-color:#2a4b65;color:#cfe6f8;box-shadow:none}
html[data-theme="dark"] .app-body .agenda-mini-control:hover{background:#143552;border-color:#3f729a}
html[data-theme="dark"] .app-body .agenda-services-legend span{background:#10293f;border-color:#294963;color:#b9cee0;box-shadow:none}
html[data-theme="dark"] .app-body .service-week-row span{color:#94abc0}
html[data-theme="dark"] .app-body .service-day{background:#0d253a;border-color:#23435c;color:#dceafa;box-shadow:none}
html[data-theme="dark"] .app-body .service-day:hover{background:#112d46;border-color:#3a729d;box-shadow:0 8px 20px rgba(0,0,0,.16)}
html[data-theme="dark"] .app-body .service-day.has-os{background:#10362f;border-color:#24634f}
html[data-theme="dark"] .app-body .service-day.has-negotiation{background:#3a2e13;border-color:#695122}
html[data-theme="dark"] .app-body .service-day.has-attention{background:#3a2026;border-color:#6f3944}
html[data-theme="dark"] .app-body .service-day.has-os.has-negotiation,
html[data-theme="dark"] .app-body .service-day.has-os.has-attention,
html[data-theme="dark"] .app-body .service-day.has-negotiation.has-attention{background:#112a40;border-color:#31536d}
html[data-theme="dark"] .app-body .agenda-day-panel{background:linear-gradient(180deg,#0e273e,#0b2237);border-color:#23445f}
html[data-theme="dark"] .app-body .agenda-day-heading{border-color:#1f3c55}
html[data-theme="dark"] .app-body .agenda-day-heading h3,html[data-theme="dark"] .app-body .agenda-empty strong{color:#eaf5ff}
html[data-theme="dark"] .app-body .agenda-empty span{color:#93aabd}
html[data-theme="dark"] .app-body .agenda-empty::before{color:#67b8ff;background:radial-gradient(circle at 45% 42%,#143d61,#10283f 64%,transparent 66%)}
html[data-theme="dark"] .app-body .agenda-entry{background:#0f293f;border-color:#28475f;color:#e8f3fd}
html[data-theme="dark"] .app-body .agenda-entry-time{color:#cce4f7}
html[data-theme="dark"] .app-body .agenda-entry-main>b{color:#aec4d6}
html[data-theme="dark"] .app-body .agenda-kind{background:#153a5b;color:#7fc3ff}

/* Mobile and generic cards in dark mode */
html[data-theme="dark"] .app-body .module-record-card{background:linear-gradient(180deg,#0e263c,#0b2033);border-color:#27465f;box-shadow:0 8px 22px rgba(0,0,0,.15)}
html[data-theme="dark"] .app-body .module-record-field{background:#102a41}
html[data-theme="dark"] .app-body .module-record-field:first-child{background:#123552}
html[data-theme="dark"] .app-body .module-record-field small{color:#8fa7ba}
html[data-theme="dark"] .app-body .module-record-field strong{color:#e3f0fb}
html[data-theme="dark"] .app-body .module-record-field:first-child strong{color:#80c3ff}
html[data-theme="dark"] .app-body .module-record-actions{border-color:#203b53}
html[data-theme="dark"] .app-body .mobile-bottom{background:rgba(8,24,39,.96);border-color:#203b53;color:#d8e9f6;box-shadow:0 -10px 32px rgba(0,0,0,.22)}

/* Quick action sheet is created by JS after the CSS is loaded, so these need priority. */
html[data-theme="dark"] #quick-actions-dialog .quick-sheet{background:#0c2237!important;border-color:#294963!important;color:#eaf4ff!important}
html[data-theme="dark"] #quick-actions-dialog .quick-sheet-head small{color:#94abc0!important}
html[data-theme="dark"] #quick-actions-dialog .quick-close{background:#12304a!important;color:#d7eaff!important}
html[data-theme="dark"] #quick-actions-dialog .quick-sheet-grid a{background:#0f293f!important;border-color:#294963!important;color:#eaf4ff!important}
html[data-theme="dark"] #quick-actions-dialog .quick-sheet-grid a:hover{background:#143552!important;border-color:#3f729a!important}
html[data-theme="dark"] #quick-actions-dialog .quick-sheet-grid a b{color:#e4f1fc!important}
html[data-theme="dark"] #quick-actions-dialog .quick-sheet-grid a span{background:#143b5d!important;color:#72bdff!important}

/* Auth / onboarding dark */
html[data-theme="dark"] body.auth-body{background:radial-gradient(circle at 18% 20%,rgba(19,138,255,.20),transparent 25rem),linear-gradient(145deg,#040d17,#071827 58%,#040e19)}
html[data-theme="dark"] .auth-body .auth-shell{background:#0a1d2f;border-color:#173c5a}
html[data-theme="dark"] .auth-body .login-card{background:linear-gradient(180deg,#0e263c,#0a1d2f);color:#eaf4ff}
html[data-theme="dark"] .auth-body .login-inner h2{color:#eef7ff}
html[data-theme="dark"] .auth-body .login-inner>p{color:#9bb1c5}
html[data-theme="dark"] .auth-body .stack-form label{color:#d9e8f5}
html[data-theme="dark"] .auth-body .stack-form input,
html[data-theme="dark"] .auth-body .stack-form select,
html[data-theme="dark"] .auth-body .stack-form textarea{background:#10283e;border-color:#2a4a64;color:#eaf4ff}
html[data-theme="dark"] .auth-theme-toggle,html[data-theme="dark"] .plain-theme-toggle{background:rgba(11,32,50,.90);border-color:#2a4a64;color:#8ccaff;box-shadow:0 10px 28px rgba(0,0,0,.22)}
html[data-theme="dark"] body.plain-body{background:radial-gradient(circle at 80% 0,rgba(24,137,255,.10),transparent 28rem),linear-gradient(180deg,#0a1d2f,#071524);color:#eaf4ff}
html[data-theme="dark"] .plain-body .onboarding-card{background:linear-gradient(180deg,#0e263c,#0b2033);border-color:#27465f;box-shadow:0 20px 60px rgba(0,0,0,.22)}
html[data-theme="dark"] .plain-body .grid-form input,
html[data-theme="dark"] .plain-body .grid-form select,
html[data-theme="dark"] .plain-body .grid-form textarea{background:#10283e;border-color:#2a4a64;color:#eaf4ff}

@media(max-width:900px){
  .app-body .module-head.agenda-hero{min-height:auto;margin:-18px -13px 16px;padding:18px 15px 16px}
  .app-body .agenda-hero-callout{display:none}
  .app-body .agenda-services-panel{padding:14px}
  .app-body .agenda-panel-head{gap:12px;align-items:stretch}
  .app-body .agenda-panel-head>.btn{width:100%;justify-content:center}
  .app-body .agenda-services-layout{grid-template-columns:1fr;gap:12px}
  .app-body .agenda-day-panel{min-height:300px}
  .app-body .agenda-empty{min-height:240px}
  .app-body .sidebar-brand .brand-w,.app-body .sidebar-brand .brand-w img{width:54px;height:47px}
  html[data-theme="dark"] .app-body .topbar{background:linear-gradient(135deg,#071827,#0b2b48);border-bottom:1px solid #173b58}
}
@media(max-width:560px){
  .app-body .agenda-panel-title{align-items:flex-start}
  .app-body .agenda-title-icon{width:43px;height:43px;border-radius:13px}
  .app-body .agenda-calendar-column{padding:10px}
  .app-body .service-day{min-height:66px;padding:7px 6px}
  .app-body .agenda-services-legend span{font-size:.66rem;padding:4px 7px}
}

/* Dark overrides for financial inline styles rendered after the global stylesheet. */
html[data-theme="dark"] .app-body .financial-group-summary{background:#0e263c!important;border-color:#294963!important;color:#dceafa!important}
html[data-theme="dark"] .app-body .financial-group-summary>*{border-color:#27465f!important}
html[data-theme="dark"] .app-body .financial-group-entry{background:#0e263c!important;border-color:#294963!important}
html[data-theme="dark"] .app-body .financial-group-entry.is-cancelled{background:#0c2033!important;opacity:.72}
html[data-theme="dark"] .app-body .finance-credit-card{background:#0e263c!important;border-color:#294963!important}
html[data-theme="dark"] .app-body .finance-credit-value{color:#eaf4ff!important}
html[data-theme="dark"] .app-body .finance-credit-card small{color:#94abc0!important}
html[data-theme="dark"] .app-body .movement-context{background:#102a41!important;color:#bed3e5!important}
html[data-theme="dark"] .app-body .payment-history{border-color:#294963!important}
html[data-theme="dark"] .app-body .payment-history-item{background:#0d2439!important;border-color:#294963!important;color:#e5f1fb!important}
html[data-theme="dark"] .app-body .payment-history-item small{color:#8fa7bb!important}
html[data-theme="dark"] .app-body .receipt-inline{background:#0d2439!important;border-color:#294963!important}
html[data-theme="dark"] .app-body .cancelled-note{color:#879db0!important}

/* Common notices, empty states, settings and integrations. */
html[data-theme="dark"] .app-body .empty{color:#9eb4c6}
html[data-theme="dark"] .app-body .notice{background:#102940;border-color:#294963;color:#dceafa}
html[data-theme="dark"] .app-body .notice.success{background:#10362f;border-color:#24634f;color:#9de3c4}
html[data-theme="dark"] .app-body .notice.error{background:#3a2026;border-color:#6f3944;color:#ffbdc6}
html[data-theme="dark"] .app-body .integration-summary-stats span,
html[data-theme="dark"] .app-body .integration-action{background:#102940;border-color:#294963;color:#abc1d4}
html[data-theme="dark"] .app-body .integration-icon{background:#12304a}
html[data-theme="dark"] .app-body .integration-summary-copy p,
html[data-theme="dark"] .app-body .integration-detail{color:#92a9bd}

@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none!important}}
@media print{.plain-theme-toggle,.auth-theme-toggle,.theme-toggle{display:none!important}}

/* ========================================================================== 
   HOTFIX 2026-09-25 — Agenda aprovada + Branding W sem tile branco
   ========================================================================== */

/* Branding: W transparente com URL nova para furar cache antigo. */
body.app-body .sidebar .sidebar-brand{
  margin:0 2px 18px;
  padding:13px 12px 14px;
  gap:11px;
  border:1px solid rgba(38,156,255,.26);
  border-radius:19px;
  background:linear-gradient(135deg,rgba(15,65,109,.54),rgba(7,36,62,.28));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 12px 28px rgba(0,0,0,.10),0 0 26px rgba(0,119,255,.07);
}
body.app-body .sidebar .sidebar-brand .brand-w{
  width:59px!important;height:52px!important;min-width:59px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;
  background:none!important;background-color:transparent!important;box-shadow:none!important;overflow:visible!important;
}
body.app-body .sidebar .sidebar-brand .brand-w img{
  display:block!important;width:59px!important;height:52px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;
  background:none!important;background-color:transparent!important;object-fit:contain!important;
  filter:drop-shadow(0 7px 11px rgba(0,135,255,.28))!important;
}
body.app-body .sidebar .sidebar-brand>span:last-child{font-size:1.40rem;line-height:1.02;letter-spacing:-.025em}
body.app-body .sidebar .sidebar-brand small{margin-top:4px;font-size:.78rem;letter-spacing:.01em;color:#33baff}

/* Agenda: reproduzir a proporção e presença visual do mockup aprovado. */
body.app-body .agenda-services-panel{
  padding:22px 24px 24px!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,252,255,.97))!important;
  border:1px solid rgba(210,226,240,.92)!important;
  box-shadow:0 18px 48px rgba(10,52,88,.075)!important;
}
body.app-body .agenda-panel-head{padding-bottom:18px!important;margin-bottom:0!important;border-bottom:1px solid #e8f0f7!important}
body.app-body .agenda-panel-title h2{font-size:1.46rem!important;letter-spacing:-.025em}
body.app-body .agenda-panel-title>div>span{font-size:.94rem!important;color:#5f7891!important}
body.app-body .agenda-title-icon{
  width:54px!important;height:54px!important;border-radius:16px!important;font-size:0!important;position:relative;
  background:linear-gradient(145deg,#e7f4ff,#d7ecff)!important;
  box-shadow:inset 0 0 0 1px #cfe5fa,0 8px 20px rgba(18,114,218,.08)!important;
}
body.app-body .agenda-title-icon::before{
  content:"";width:25px;height:23px;border:3px solid #147cf3;border-radius:5px;position:absolute;left:50%;top:53%;transform:translate(-50%,-50%);
  background:linear-gradient(to bottom,#147cf3 0 5px,transparent 5px);
}
body.app-body .agenda-title-icon::after{
  content:"";width:15px;height:2px;border-top:2px solid #147cf3;border-bottom:2px solid #147cf3;position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);opacity:.82;
}

body.app-body .agenda-services-layout{
  display:grid!important;
  grid-template-columns:minmax(650px,1.14fr) minmax(420px,.86fr)!important;
  gap:20px!important;
  align-items:stretch!important;
  padding-top:18px;
}
body.app-body .agenda-calendar-column{
  min-width:0!important;padding:18px 18px 16px!important;border-radius:20px!important;
  background:linear-gradient(180deg,#fbfdff 0%,#f5faff 100%)!important;
  border:1px solid #d9e7f3!important;
  box-shadow:inset 0 1px rgba(255,255,255,.98),0 8px 24px rgba(20,66,105,.035)!important;
}
body.app-body .agenda-calendar-toolbar{margin-bottom:12px!important}
body.app-body .agenda-calendar-toolbar>strong{font-size:1.55rem!important;letter-spacing:-.035em!important}
body.app-body .agenda-mini-control{
  height:44px!important;min-width:44px!important;border-radius:13px!important;font-size:1rem!important;
  border-color:#d5e4f0!important;box-shadow:0 5px 14px rgba(10,54,92,.06)!important;
}
body.app-body .agenda-mini-control.today{padding:0 16px!important;font-size:.86rem!important}
body.app-body .agenda-services-legend{gap:8px!important;margin:0 0 15px!important}
body.app-body .agenda-services-legend span{
  padding:6px 11px!important;min-height:33px!important;font-size:.78rem!important;font-weight:800!important;
  box-shadow:0 3px 10px rgba(13,55,89,.025)!important;
}
body.app-body .service-week-row,body.app-body .service-days-grid{gap:8px!important}
body.app-body .service-week-row{margin-bottom:8px!important}
body.app-body .service-week-row span{font-size:.78rem!important;padding:7px 0!important;color:#526d87!important}
body.app-body .service-day{
  min-height:94px!important;padding:10px 9px!important;border-radius:15px!important;
  border:1px solid #dae6f0!important;background:linear-gradient(180deg,#fff,#fbfdff)!important;
  box-shadow:0 4px 14px rgba(12,51,84,.035)!important;
}
body.app-body .service-day:hover{transform:translateY(-2px)!important;border-color:#9bc9f0!important;box-shadow:0 12px 24px rgba(14,58,95,.10)!important}
body.app-body .service-day-number{font-size:.98rem!important;line-height:1!important;letter-spacing:-.02em}
body.app-body .service-day-today{
  position:absolute;right:8px;top:8px;font-size:.61rem;font-weight:850;color:#0a78ed;background:#e6f2ff;border-radius:999px;padding:3px 6px;
}
body.app-body .service-day.selected{
  color:#fff!important;background:linear-gradient(145deg,#148cff 0%,#0869e8 100%)!important;
  border-color:#0569e5!important;outline:2px solid #65b4ff!important;outline-offset:2px!important;
  box-shadow:0 15px 30px rgba(0,106,225,.28)!important;
}
body.app-body .service-day.selected .service-day-number,body.app-body .service-day.selected .service-day-today{color:#fff!important}
body.app-body .service-day.selected .service-day-today{background:rgba(255,255,255,.16)!important}
body.app-body .service-day-tags{gap:4px!important}
body.app-body .service-calendar-tag{
  padding:4px 7px!important;border-radius:999px!important;font-size:.66rem!important;line-height:1.15!important;font-weight:850!important;
}
body.app-body .service-calendar-tag.more{background:#e9f3ff!important;color:#1473d7!important}
body.app-body .service-day.selected .service-calendar-tag.more{background:rgba(255,255,255,.18)!important;color:#fff!important}

body.app-body .agenda-day-panel{
  min-height:575px!important;padding:22px!important;border-radius:20px!important;
  background:linear-gradient(180deg,#fff,#fbfdff)!important;border:1px solid #d9e7f3!important;
  box-shadow:inset 0 1px rgba(255,255,255,.98),0 8px 24px rgba(20,66,105,.03)!important;
}
body.app-body .agenda-day-heading{padding-bottom:17px!important;margin-bottom:14px!important}
body.app-body .agenda-day-heading h3{font-size:1.34rem!important;letter-spacing:-.025em!important}
body.app-body .agenda-empty{min-height:420px!important;justify-items:center!important;text-align:center!important}
body.app-body .agenda-empty::before{width:124px!important;height:98px!important;font-size:3rem!important;margin-bottom:18px!important}
body.app-body .agenda-empty strong{font-size:1.22rem!important}
body.app-body .agenda-empty span{font-size:.94rem!important;margin-top:5px!important}

/* Dark: mesmas proporções, sem clarões. */
html[data-theme="dark"] body.app-body .sidebar .sidebar-brand{
  background:linear-gradient(135deg,rgba(12,69,112,.62),rgba(6,31,53,.42))!important;
  border-color:rgba(50,160,255,.28)!important;
}
html[data-theme="dark"] body.app-body .agenda-services-panel{background:linear-gradient(180deg,#0c2237,#091d30)!important;border-color:#21415c!important}
html[data-theme="dark"] body.app-body .agenda-panel-head{border-color:#1f3d56!important}
html[data-theme="dark"] body.app-body .agenda-panel-title>div>span{color:#9eb5c9!important}
html[data-theme="dark"] body.app-body .agenda-calendar-column,html[data-theme="dark"] body.app-body .agenda-day-panel{background:linear-gradient(180deg,#0e273e,#0b2237)!important;border-color:#23445f!important}
html[data-theme="dark"] body.app-body .service-day{background:linear-gradient(180deg,#0e293f,#0c2439)!important;border-color:#24455f!important;color:#dceafa!important;box-shadow:none!important}
html[data-theme="dark"] body.app-body .service-day:hover{background:#12314b!important;border-color:#3975a2!important}
html[data-theme="dark"] body.app-body .service-day-today{background:#143b5e;color:#83c5ff}
html[data-theme="dark"] body.app-body .service-calendar-tag.more{background:#143b5d!important;color:#79c0ff!important}

/* Responsividade: manter presença sem criar scroll horizontal. */
@media(max-width:1320px){
  body.app-body .agenda-services-layout{grid-template-columns:minmax(540px,1.04fr) minmax(390px,.96fr)!important}
  body.app-body .service-day{min-height:86px!important}
  body.app-body .service-calendar-tag{font-size:.61rem!important;padding:3px 6px!important}
}
@media(max-width:1050px){
  body.app-body .agenda-services-layout{grid-template-columns:1fr!important}
  body.app-body .agenda-day-panel{min-height:360px!important}
  body.app-body .agenda-empty{min-height:270px!important}
}
@media(max-width:900px){
  body.app-body .sidebar .sidebar-brand{margin:0 6px 12px;padding:11px 10px;border-radius:16px}
  body.app-body .sidebar .sidebar-brand .brand-w,body.app-body .sidebar .sidebar-brand .brand-w img{width:54px!important;height:47px!important;min-width:54px!important}
  body.app-body .agenda-services-panel{padding:14px!important}
  body.app-body .agenda-services-layout{padding-top:12px!important}
  body.app-body .agenda-calendar-column{padding:12px!important}
  body.app-body .service-day{min-height:76px!important;padding:8px 7px!important}
  body.app-body .service-day-number{font-size:.86rem!important}
}
@media(max-width:560px){
  body.app-body .agenda-calendar-toolbar>strong{font-size:1.18rem!important}
  body.app-body .agenda-mini-control{height:38px!important;min-width:38px!important}
  body.app-body .agenda-mini-control.today{padding:0 11px!important}
  body.app-body .service-week-row,body.app-body .service-days-grid{gap:5px!important}
  body.app-body .service-day{min-height:69px!important;padding:7px 5px!important;border-radius:11px!important}
  body.app-body .service-calendar-tag{font-size:.52rem!important;padding:3px 4px!important}
  body.app-body .service-day-today{display:none}
}
