:root{--bg:#050505;--panel:#0b0b0b;--white:#fff;--muted:#757575;--line:rgba(255,255,255,.11)}
*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:var(--bg);color:var(--white);font-family:Montserrat,sans-serif}button,input{font:inherit}.hidden{display:none!important}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.08),transparent 30%),#050505}
.login-card{width:min(100%,420px);padding:30px;border:1px solid var(--line);background:#090909}.login-logo{display:block;width:180px;height:100px;object-fit:contain;margin:0 auto 18px}.system-label{display:block;text-align:center;font:600 10px Oswald,sans-serif;letter-spacing:4px;color:#777}.login-card h1{margin-top:12px;text-align:center;font:600 30px Oswald,sans-serif}.login-card>p{text-align:center;margin-top:7px;color:#777;font-size:11px}
.login-form{display:grid;gap:14px;margin-top:26px}.login-form label{display:grid;gap:7px}.login-form label span{font-size:10px;color:#999}.login-form input{height:48px;padding:0 13px;border:1px solid var(--line);outline:0;background:#050505;color:#fff}.login-form button{height:50px;border:0;background:#fff;color:#050505;font:600 12px Oswald,sans-serif;letter-spacing:2px;cursor:pointer}.login-form .secondary-btn{border:1px solid var(--line);background:transparent;color:#fff}.first-note{margin-top:14px!important;font-size:9px!important;line-height:1.5}.message{min-height:18px!important;margin-top:12px!important;color:#ccc!important;font-size:10px!important}
.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px 15px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#080808}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 20px;border-bottom:1px solid var(--line)}.brand img{width:56px;height:42px;object-fit:contain}.brand strong{display:block;font:600 14px Oswald,sans-serif;letter-spacing:1.5px}.brand small{display:block;margin-top:2px;color:#666;font-size:8px}.sidebar nav{display:grid;gap:4px;margin-top:20px}.nav-item{height:42px;padding:0 12px;border:0;background:transparent;color:#777;text-align:left;font-size:11px;cursor:pointer}.nav-item:hover,.nav-item.active{background:#fff;color:#050505}.logout{margin-top:auto;height:42px;border:1px solid var(--line);background:transparent;color:#888;cursor:pointer}
.main-panel{min-width:0;padding:26px 28px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line)}.topbar>div:first-child>span{display:block;margin-bottom:6px;color:#646464;font:500 9px Oswald,sans-serif;letter-spacing:3px}.topbar h1{font:600 34px Oswald,sans-serif}.user-chip{text-align:right}.user-chip strong{display:block;font-size:11px}.user-chip small{display:block;margin-top:3px;color:#666;font-size:9px;text-transform:uppercase}
.section{display:none;padding-top:24px}.section.active{display:block}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stats article{min-height:150px;padding:17px;border:1px solid var(--line);background:linear-gradient(145deg,#101010,#080808)}.stats span{display:block;color:#888;font-size:10px}.stats strong{display:block;margin-top:22px;font:600 36px Oswald,sans-serif}.stats small{display:block;margin-top:10px;color:#555;font-size:8px}.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin-top:12px}.panel{min-height:260px;padding:18px;border:1px solid var(--line);background:#090909}.panel>span{color:#666;font:500 8px Oswald,sans-serif;letter-spacing:2px}.panel h2{margin-top:4px;font:600 22px Oswald,sans-serif}.panel p{margin-top:70px;color:#5d5d5d;font-size:10px;line-height:1.6}.placeholder{min-height:360px;display:grid;place-items:center;align-content:center;text-align:center;border:1px solid var(--line);background:#090909}.placeholder span{font:500 12px Oswald,sans-serif;letter-spacing:3px;color:#555}.placeholder h2{margin-top:8px;font:600 34px Oswald,sans-serif}.placeholder p{max-width:430px;margin-top:10px;color:#666;font-size:10px;line-height:1.6}
@media(max-width:900px){.app-shell{grid-template-columns:190px 1fr}.stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:640px){.app-shell{display:block}.sidebar{position:fixed;z-index:20;left:0;right:0;bottom:0;top:auto;height:68px;padding:7px 8px;border-right:0;border-top:1px solid var(--line);flex-direction:row}.brand,.logout{display:none}.sidebar nav{width:100%;margin:0;display:flex;gap:4px;overflow-x:auto}.nav-item{flex:0 0 auto;height:52px;padding:0 13px;font-size:9px}.main-panel{padding:18px 15px 90px}.topbar h1{font-size:28px}.stats{grid-template-columns:1fr 1fr;gap:9px}.stats article{min-height:132px;padding:14px}.stats strong{font-size:30px}}

/* AGENDA */
.agenda-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}
.agenda-date-nav,.agenda-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.agenda-date-nav button,.agenda-date-nav input,.agenda-actions select,.ghost-btn,.primary-btn{height:42px;border:1px solid var(--line);background:#090909;color:#fff;padding:0 12px}
.agenda-date-nav button,.ghost-btn,.primary-btn{cursor:pointer}
.primary-btn{background:#fff;color:#050505;border-color:#fff;font:600 11px Oswald,sans-serif;letter-spacing:1.4px}
.ghost-btn{font:600 10px Oswald,sans-serif;letter-spacing:1.2px}
.agenda-actions select{min-width:190px}
.agenda-summary{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-top:16px}
.agenda-summary>div{padding:14px;border:1px solid var(--line);background:#090909}
.agenda-summary span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:2px}
.agenda-summary strong{display:block;margin-top:7px;font:600 18px Oswald,sans-serif}
.agenda-list{display:grid;gap:10px;margin-top:16px}
.agenda-empty{min-height:180px;display:grid;place-items:center;border:1px dashed rgba(255,255,255,.09);color:#5d5d5d;font-size:10px}
.appointment-card{display:grid;grid-template-columns:84px 1fr auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);background:#090909}
.appointment-time strong{display:block;font:600 24px Oswald,sans-serif}.appointment-time small{display:block;margin-top:3px;color:#666;font-size:8px}
.appointment-info strong{display:block;font-size:12px}.appointment-info span{display:block;margin-top:5px;color:#777;font-size:9px;line-height:1.4}
.appointment-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.status-select{height:34px;border:1px solid var(--line);background:#050505;color:#fff;padding:0 8px;font-size:9px}
.amount-badge{font:600 15px Oswald,sans-serif;white-space:nowrap}
.source-badge{padding:6px 8px;border:1px solid var(--line);color:#777;font-size:8px;text-transform:uppercase}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(5px)}
.modal-card{position:relative;z-index:2;width:min(100%,680px);max-height:92vh;overflow:auto;border:1px solid var(--line);background:#090909;padding:22px}
.modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}
.modal-head span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:2px}.modal-head h2{margin-top:4px;font:600 28px Oswald,sans-serif}
.modal-close{border:0;background:transparent;color:#888;font-size:28px;cursor:pointer}
.appointment-form{display:grid;gap:14px;margin-top:18px}.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:1fr 1fr 1fr}
.appointment-form label{display:grid;gap:7px}.appointment-form label>span{color:#8b8b8b;font-size:9px}
.appointment-form input,.appointment-form select,.appointment-form textarea{width:100%;border:1px solid var(--line);outline:0;background:#050505;color:#fff;padding:0 12px}
.appointment-form input,.appointment-form select{height:44px}.appointment-form textarea{padding:12px;resize:vertical}
.appointment-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.appointment-preview>div{padding:12px;border:1px solid var(--line);background:#060606}
.appointment-preview span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}.appointment-preview strong{display:block;margin-top:6px;font:600 16px Oswald,sans-serif}
.form-message{min-height:18px;color:#c7c7c7;font-size:9px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}
@media(max-width:700px){.agenda-toolbar{align-items:stretch}.agenda-date-nav,.agenda-actions{width:100%}.agenda-actions select{flex:1;min-width:0}.primary-btn{flex:1}.agenda-summary{grid-template-columns:1fr 1fr}.agenda-summary>div:first-child{grid-column:1/-1}.appointment-card{grid-template-columns:68px 1fr}.appointment-meta{grid-column:1/-1;justify-content:flex-start}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.appointment-preview{grid-template-columns:1fr 1fr 1fr}}


/* AGENDA GRID VIEW */
.active-view{background:#fff!important;color:#050505!important}
.agenda-timeline{margin-top:16px;overflow:auto;border:1px solid var(--line);background:#080808}
.timeline-grid{display:grid;min-width:760px}
.timeline-head,.timeline-row{display:grid;grid-template-columns:72px repeat(var(--pro-count),minmax(180px,1fr))}
.timeline-head{position:sticky;top:0;z-index:4;background:#0b0b0b;border-bottom:1px solid var(--line)}
.timeline-head>div{min-height:58px;padding:12px;border-right:1px solid var(--line);display:flex;align-items:center}
.timeline-head .timeline-corner{color:#555;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
.timeline-head .pro-head{display:block}
.timeline-head .pro-head strong{display:block;font:600 13px Oswald,sans-serif}
.timeline-head .pro-head small{display:block;margin-top:4px;color:#666;font-size:8px}
.timeline-row{min-height:58px;border-bottom:1px solid rgba(255,255,255,.06)}
.timeline-time{padding:9px 10px;color:#666;font:500 10px Oswald,sans-serif;border-right:1px solid var(--line)}
.timeline-cell{position:relative;min-height:58px;padding:4px;border-right:1px solid rgba(255,255,255,.06)}
.timeline-cell.outside-hours{background:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 5px,transparent 5px 10px)}
.timeline-booking{height:100%;min-height:50px;padding:7px;border:1px solid rgba(255,255,255,.18);background:#151515;overflow:hidden}
.timeline-booking strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.timeline-booking span{display:block;margin-top:4px;color:#8b8b8b;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.timeline-block{height:100%;min-height:50px;padding:7px;border:1px dashed rgba(255,255,255,.20);background:#0d0d0d;color:#777}
.timeline-block strong{display:block;font:600 9px Oswald,sans-serif;letter-spacing:.8px}
.timeline-block span{display:block;margin-top:4px;font-size:8px}
.block-card{display:grid;grid-template-columns:84px 1fr auto;gap:16px;align-items:center;padding:14px 16px;border:1px dashed rgba(255,255,255,.16);background:#080808}
.block-card strong{display:block;font:600 13px Oswald,sans-serif}.block-card span{display:block;margin-top:4px;color:#6f6f6f;font-size:9px}
.block-delete{height:32px;padding:0 10px;border:1px solid var(--line);background:transparent;color:#777;font-size:9px;cursor:pointer}
.modal-small{width:min(100%,540px)}
@media(max-width:700px){
  .agenda-actions{align-items:stretch}
  .agenda-actions .ghost-btn,.agenda-actions .primary-btn{flex:1 1 auto}
  .block-card{grid-template-columns:68px 1fr}
  .block-delete{grid-column:1/-1;width:max-content}
}


/* CRM */
.crm-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.crm-search-wrap{flex:1;min-width:240px}.crm-search-wrap input{width:100%;height:44px;padding:0 13px;border:1px solid var(--line);background:#090909;color:#fff;outline:0}
.crm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.crm-stats article{padding:14px;border:1px solid var(--line);background:#090909}.crm-stats span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}.crm-stats strong{display:block;margin-top:8px;font:600 20px Oswald,sans-serif}
.customer-list{display:grid;gap:10px;margin-top:16px}.customer-card{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:14px;align-items:center;padding:15px;border:1px solid var(--line);background:#090909}.customer-card strong{display:block;font-size:12px}.customer-card span{display:block;margin-top:4px;color:#777;font-size:9px;line-height:1.35}.customer-metric strong{font:600 17px Oswald,sans-serif}.customer-metric small{display:block;margin-top:3px;color:#666;font-size:8px}.customer-open{height:34px;padding:0 10px;border:1px solid var(--line);background:transparent;color:#fff;font-size:9px;cursor:pointer}
.tag-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.tag-pill{padding:4px 6px;border:1px solid var(--line);color:#8a8a8a;font-size:7px;text-transform:uppercase}
.check-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important}.check-row input{width:16px!important;height:16px!important}.check-row span{font-size:9px!important}
.customer-history{margin-top:6px;border-top:1px solid var(--line);padding-top:16px}.customer-history-head span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}.customer-history-head h3{margin-top:3px;font:600 20px Oswald,sans-serif}.history-row{display:grid;grid-template-columns:100px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}.history-row strong{font-size:10px}.history-row span{display:block;margin-top:4px;color:#777;font-size:8px}.history-row .history-value{font:600 13px Oswald,sans-serif;white-space:nowrap}
.crm-dormant{color:#b0b0b0!important}.crm-next{color:#fff!important}
@media(max-width:800px){.crm-stats{grid-template-columns:1fr 1fr}.customer-card{grid-template-columns:1fr 1fr}.customer-open{grid-column:1/-1;width:max-content}.history-row{grid-template-columns:82px 1fr}.history-value{grid-column:2}}
@media(max-width:520px){.crm-stats{grid-template-columns:1fr 1fr}.customer-card{grid-template-columns:1fr}.customer-open{grid-column:auto}.history-row{grid-template-columns:1fr}.history-value{grid-column:auto}}


/* CAIXA */
.cash-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.eyebrow{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:2px}
.cash-toolbar h2{margin-top:5px;font:600 28px Oswald,sans-serif}
.cash-toolbar p{margin-top:5px;color:#696969;font-size:9px}
.cash-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.cash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.cash-stats article{padding:14px;border:1px solid var(--line);background:#090909}
.cash-stats span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
.cash-stats strong{display:block;margin-top:8px;font:600 21px Oswald,sans-serif}
.cash-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;margin-top:12px}
.cash-panel{min-height:300px;padding:16px;border:1px solid var(--line);background:#090909}
.cash-panel-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:13px;border-bottom:1px solid var(--line)}
.cash-panel-head span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
.cash-panel-head h3{margin-top:3px;font:600 21px Oswald,sans-serif}
.cash-transaction-list,.cash-pending-list{display:grid;gap:8px;margin-top:12px}
.cash-row,.pending-row{display:grid;grid-template-columns:92px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.07);background:#070707}
.cash-row-time strong,.pending-row-time strong{display:block;font:600 15px Oswald,sans-serif}
.cash-row-time small,.pending-row-time small{display:block;margin-top:3px;color:#666;font-size:8px}
.cash-row-main strong,.pending-row-main strong{display:block;font-size:10px}
.cash-row-main span,.pending-row-main span{display:block;margin-top:4px;color:#777;font-size:8px;line-height:1.35}
.cash-row-value{font:600 14px Oswald,sans-serif;white-space:nowrap}
.cash-row-value.out{color:#aaa}
.pending-receive{height:32px;padding:0 10px;border:1px solid var(--line);background:#fff;color:#050505;font:600 9px Oswald,sans-serif;letter-spacing:.8px;cursor:pointer}
.cash-method{display:inline-block;margin-top:5px;padding:4px 6px;border:1px solid var(--line);font-size:7px;color:#777;text-transform:uppercase}
.cash-empty{padding:24px 10px;text-align:center;color:#606060;font-size:9px}
@media(max-width:900px){.cash-stats{grid-template-columns:1fr 1fr}.cash-layout{grid-template-columns:1fr}}
@media(max-width:620px){.cash-actions{width:100%;justify-content:flex-start}.cash-actions button{flex:1 1 46%}.cash-row,.pending-row{grid-template-columns:72px 1fr}.cash-row-value,.pending-receive{grid-column:2}}


/* OPERACOES */
.ops-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}
.ops-toolbar h2{margin-top:5px;font:600 28px Oswald,sans-serif}
.ops-toolbar p{margin-top:5px;color:#6d6d6d;font-size:9px}
.ops-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.ops-stats article{padding:14px;border:1px solid var(--line);background:#090909}
.ops-stats span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
.ops-stats strong{display:block;margin-top:8px;font:600 22px Oswald,sans-serif}
.ops-board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;margin-top:12px;overflow:auto;padding-bottom:4px}
.ops-column{min-height:420px;border:1px solid var(--line);background:#080808}
.ops-column-head{padding:13px;border-bottom:1px solid var(--line)}
.ops-column-head span{display:block;color:#555;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
.ops-column-head h3{margin-top:3px;font:600 15px Oswald,sans-serif}
.ops-list{display:grid;gap:8px;padding:10px}
.ops-card{padding:12px;border:1px solid rgba(255,255,255,.08);background:#0d0d0d}
.ops-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.ops-card-head strong{font-size:10px}.ops-card-head span{font:600 13px Oswald,sans-serif}
.ops-card-meta{margin-top:7px;color:#777;font-size:8px;line-height:1.45}
.ops-card-actions{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.ops-card-actions button{height:30px;padding:0 8px;border:1px solid var(--line);background:transparent;color:#fff;font:600 8px Oswald,sans-serif;letter-spacing:.6px;cursor:pointer}
.ops-card-actions button.primary{background:#fff;color:#050505}
.ops-empty{padding:18px 8px;text-align:center;color:#555;font-size:8px}
@media(max-width:1000px){.ops-board{grid-template-columns:repeat(4,230px)}}
@media(max-width:640px){.ops-stats{grid-template-columns:1fr 1fr}}


/* CATALOGO ADMIN */
.catalog-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.catalog-toolbar h2{margin-top:5px;font:600 28px Oswald,sans-serif}
.catalog-toolbar p{margin-top:5px;color:#6d6d6d;font-size:9px}
.catalog-list{display:grid;gap:9px;margin-top:16px}
.catalog-row{display:grid;grid-template-columns:1.5fr .8fr .8fr auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);background:#090909}
.catalog-main strong{display:block;font-size:11px}.catalog-main span{display:block;margin-top:4px;color:#777;font-size:8px}
.catalog-meta strong{display:block;font:600 15px Oswald,sans-serif}.catalog-meta small{display:block;margin-top:3px;color:#666;font-size:8px}
.catalog-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.catalog-actions button{height:32px;padding:0 9px;border:1px solid var(--line);background:transparent;color:#fff;font:600 8px Oswald,sans-serif;letter-spacing:.6px;cursor:pointer}
.catalog-actions button.active-toggle.off{color:#777}
.product-admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
.product-admin-stats article{padding:14px;border:1px solid var(--line);background:#090909}
.product-admin-stats span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.4px}
.product-admin-stats strong{display:block;margin-top:8px;font:600 20px Oswald,sans-serif}
.stock-low{color:#bbb!important}
.stock-adjustment{margin-top:4px;padding:14px;border:1px solid var(--line);background:#060606}
.stock-adjustment>span{display:block;margin-bottom:10px;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
@media(max-width:760px){.catalog-row{grid-template-columns:1fr 1fr}.catalog-actions{grid-column:1/-1;justify-content:flex-start}.product-admin-stats{grid-template-columns:1fr 1fr}.product-admin-stats article:last-child{grid-column:1/-1}}


/* EQUIPE / CONFIGURACOES */
.team-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.team-admin-panel{padding:16px;border:1px solid var(--line);background:#090909}
.team-hours-toolbar{margin-top:14px;align-items:end}.team-hours-action{display:flex;align-items:end}.team-hours-action button{width:100%}
.working-hours-list,.access-list{display:grid;gap:8px;margin-top:12px}
.working-hour-row,.access-row{display:grid;grid-template-columns:1fr 110px 110px auto;gap:8px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.07);background:#070707}
.working-hour-row label{display:grid;gap:5px}.working-hour-row label span{font-size:8px;color:#777}
.working-hour-row input[type="time"]{height:36px;padding:0 8px;border:1px solid var(--line);background:#050505;color:#fff}
.day-toggle{display:flex;align-items:center;gap:8px;font-size:9px;color:#aaa}
.day-toggle input{width:15px;height:15px}
.access-row strong{display:block;font-size:10px}.access-row span{display:block;margin-top:4px;color:#777;font-size:8px}
.access-row button{height:30px;padding:0 8px;border:1px solid var(--line);background:transparent;color:#fff;font:600 8px Oswald,sans-serif;cursor:pointer}
.settings-card{max-width:760px;margin-top:16px;padding:18px;border:1px solid var(--line);background:#090909}
@media(max-width:900px){.team-admin-grid{grid-template-columns:1fr}}
@media(max-width:640px){.working-hour-row,.access-row{grid-template-columns:1fr 1fr}.working-hour-row>*:first-child,.access-row>*:first-child{grid-column:1/-1}}


/* RELATORIOS */
.report-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.report-toolbar h2{margin-top:5px;font:600 28px Oswald,sans-serif}
.report-toolbar p{margin-top:5px;color:#6d6d6d;font-size:9px}
.report-period{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.report-period input{height:42px;padding:0 10px;border:1px solid var(--line);background:#090909;color:#fff}
.report-period span{color:#666;font-size:9px}
.report-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.report-stats article{padding:14px;border:1px solid var(--line);background:#090909}
.report-stats span{display:block;color:#666;font:500 8px Oswald,sans-serif;letter-spacing:1.5px}
.report-stats strong{display:block;margin-top:8px;font:600 21px Oswald,sans-serif}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.report-panel{padding:16px;border:1px solid var(--line);background:#090909}
.report-list{display:grid;gap:8px;margin-top:12px}
.report-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.07);background:#070707}
.report-row strong{display:block;font-size:10px}.report-row span{display:block;margin-top:4px;color:#777;font-size:8px}
.report-row-value{font:600 14px Oswald,sans-serif;white-space:nowrap}
@media(max-width:820px){.report-stats{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:1fr}}


/* DASHBOARD REAL */
.dashboard-alerts{display:grid;gap:6px;margin-top:10px}
.dashboard-alert{padding:8px 10px;border:1px solid rgba(255,255,255,.07);background:#070707;color:#8a8a8a;font-size:8px;line-height:1.4}
.dashboard-alert strong{display:block;margin-bottom:3px;color:#fff;font-size:9px}


/* FINANCEIRO */
.finance-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.finance-list{display:grid;gap:8px;margin-top:12px}
.finance-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:11px;border:1px solid rgba(255,255,255,.07);background:#070707}
.finance-row strong{display:block;font-size:10px}
.finance-row span{display:block;margin-top:4px;color:#777;font-size:8px;line-height:1.4}
.finance-actions{display:flex;gap:6px;align-items:center}
.finance-actions button{height:30px;padding:0 8px;border:1px solid var(--line);background:transparent;color:#fff;font:600 8px Oswald,sans-serif;cursor:pointer}
.finance-value{font:600 14px Oswald,sans-serif;white-space:nowrap}
@media(max-width:900px){.finance-grid{grid-template-columns:1fr}}


/* =========================
   C7 SYSTEM — LIGHT PREMIUM UI
   ========================= */
:root{
  --bg:#f3f3f1;
  --panel:#ffffff;
  --white:#111111;
  --muted:#747474;
  --line:#ddddda;
  --surface:#ffffff;
  --surface-soft:#f8f8f6;
  --text:#161616;
  --text-soft:#6e6e6a;
  --black:#0b0b0b;
  --shadow:0 12px 30px rgba(0,0,0,.055);
}

body{background:var(--bg);color:var(--text)}
.app-shell{background:var(--bg)}
.sidebar{
  background:#0b0b0b;
  border-right:0;
  box-shadow:4px 0 22px rgba(0,0,0,.08)
}
.brand{border-color:rgba(255,255,255,.09)}
.brand strong{color:#fff}
.brand small{color:#8b8b8b}
.nav-item{color:#a9a9a9;border-radius:10px;transition:.18s ease}
.nav-item:hover{background:#191919;color:#fff}
.nav-item.active{background:#fff;color:#111;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.logout{border-color:rgba(255,255,255,.12);color:#aaa;border-radius:10px}
.logout:hover{color:#fff;background:#151515}

.main-panel{padding:28px 34px 42px}
.topbar{
  padding:4px 2px 22px;
  border-bottom:1px solid #dededb
}
.topbar>div:first-child>span{color:#8d8d88}
.topbar h1{color:#111;font-size:32px}
.user-chip{
  min-width:160px;
  padding:10px 14px;
  border:1px solid #dededb;
  border-radius:12px;
  background:#fff;
  box-shadow:0 5px 16px rgba(0,0,0,.035)
}
.user-chip strong{color:#111}
.user-chip small{color:#8a8a86}

.section{padding-top:26px}
.stats{gap:14px}
.stats article,
.agenda-summary>div,
.crm-stats article,
.cash-stats article,
.ops-stats article,
.product-admin-stats article,
.report-stats article,
.promo-overview article{
  border:1px solid #e1e1de;
  background:#fff;
  border-radius:14px;
  box-shadow:var(--shadow)
}
.stats article{min-height:138px}
.stats span,
.agenda-summary span,
.crm-stats span,
.cash-stats span,
.ops-stats span,
.product-admin-stats span,
.report-stats span,
.promo-overview span{color:#8a8a85}
.stats strong,
.agenda-summary strong,
.crm-stats strong,
.cash-stats strong,
.ops-stats strong,
.product-admin-stats strong,
.report-stats strong,
.promo-overview strong{color:#111}
.stats small{color:#8f8f8b}

.dashboard-grid{gap:14px}
.panel,
.cash-panel,
.team-admin-panel,
.report-panel,
.settings-card,
.promo-panel{
  background:#fff;
  border:1px solid #e1e1de;
  border-radius:14px;
  box-shadow:var(--shadow)
}
.panel>span,.panel p{color:#777771}
.panel h2{color:#111}
.panel p{margin-top:44px}

.agenda-date-nav button,
.agenda-date-nav input,
.agenda-actions select,
.ghost-btn,
.primary-btn,
.report-period input{
  border:1px solid #d9d9d5;
  border-radius:10px;
  background:#fff;
  color:#222;
  transition:.18s ease
}
.ghost-btn:hover{background:#f0f0ed;border-color:#c9c9c5}
.primary-btn{
  background:#111;
  color:#fff;
  border-color:#111;
  box-shadow:0 5px 13px rgba(0,0,0,.12)
}
.primary-btn:hover{background:#2a2a2a}
.active-view{background:#111!important;color:#fff!important;border-color:#111!important}

.agenda-empty,.cash-empty,.ops-empty{color:#8d8d88;border-color:#dcdcd8}
.appointment-card,
.block-card,
.catalog-row,
.report-row,
.finance-row,
.access-row,
.working-hour-row{
  background:#fff;
  border:1px solid #e1e1de;
  border-radius:12px;
  color:#161616;
  box-shadow:0 4px 12px rgba(0,0,0,.025)
}
.appointment-info span,
.appointment-time small,
.catalog-main span,
.catalog-meta small,
.report-row span,
.finance-row span,
.access-row span{color:#7f7f7a}

.status-select,
.working-hour-row input[type="time"]{
  border:1px solid #d8d8d4;
  border-radius:8px;
  background:#fff;
  color:#222
}
.source-badge{border-color:#dededa;color:#777;border-radius:8px}
.block-delete,.catalog-actions button,.finance-actions button,.access-row button{
  border:1px solid #d8d8d4;
  background:#fff;
  color:#222;
  border-radius:8px
}
.block-delete:hover,.catalog-actions button:hover,.finance-actions button:hover,.access-row button:hover{background:#f0f0ed}

.agenda-timeline{border-color:#e1e1de;background:#fff;border-radius:14px;box-shadow:var(--shadow)}
.timeline-head{background:#f7f7f5;border-color:#e1e1de}
.timeline-head>div,.timeline-time{border-color:#e1e1de}
.timeline-row{border-color:#ecece8}
.timeline-cell{border-color:#ecece8}
.timeline-cell.outside-hours{background:repeating-linear-gradient(135deg,#f4f4f1 0 5px,#fafaf8 5px 10px)}
.timeline-booking{background:#111;color:#fff;border-color:#111;border-radius:8px}
.timeline-booking span{color:#bbb}
.timeline-block{background:#f3f3f0;border-color:#c9c9c5;color:#666;border-radius:8px}

.modal-backdrop{background:rgba(0,0,0,.45);backdrop-filter:blur(6px)}
.modal-card{
  background:#fff;
  color:#171717;
  border:0;
  border-radius:18px;
  box-shadow:0 30px 80px rgba(0,0,0,.22)
}
.modal-head{border-color:#e2e2de}
.modal-head span{color:#8b8b86}
.modal-close{color:#555}
.appointment-form label>span{color:#777772}
.appointment-form input,
.appointment-form select,
.appointment-form textarea{
  border:1px solid #d9d9d5;
  border-radius:10px;
  background:#fafaf8;
  color:#181818
}
.appointment-form input:focus,
.appointment-form select:focus,
.appointment-form textarea:focus{
  border-color:#111;
  box-shadow:0 0 0 3px rgba(0,0,0,.05)
}
.appointment-preview>div{
  border:1px solid #dfdfdc;
  background:#f7f7f5;
  border-radius:10px
}
.appointment-preview span{color:#8a8a85}
.form-message{color:#666}
.check-row span{color:#555!important}

.ops-column{background:#fff;border:1px solid #e1e1de;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.ops-column-head{border-color:#e1e1de;background:#f8f8f6}
.ops-card{background:#fff;border:1px solid #e5e5e1;border-radius:10px;color:#161616}
.ops-card-meta{color:#777}
.ops-card-actions button{border:1px solid #dadad6;background:#fff;color:#222;border-radius:8px}
.ops-card-actions button.primary{background:#111;color:#fff;border-color:#111}

.stock-adjustment{background:#f8f8f5;border:1px solid #e1e1de;border-radius:12px}
.stock-adjustment>span{color:#777}
.settings-card{max-width:860px}

.dashboard-alert{
  background:#f7f7f4;
  border:1px solid #e1e1de;
  border-radius:10px;
  color:#71716d
}
.dashboard-alert strong{color:#111}

.promo-overview{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:16px
}
.promo-overview article{padding:16px}
.promo-overview span{display:block;font:500 8px Oswald,sans-serif;letter-spacing:1.4px}
.promo-overview strong{display:block;margin-top:8px;font:600 22px Oswald,sans-serif}
.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.promo-panel{padding:16px}
.promo-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.promo-panel-head span{display:block;color:#8a8a85;font:500 8px Oswald,sans-serif;letter-spacing:1.4px}
.promo-panel-head h3{margin-top:3px;font:600 18px Oswald,sans-serif;color:#111}
.promo-list{display:grid;gap:8px;margin-top:14px}
.promo-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  padding:12px;
  border:1px solid #e3e3df;
  border-radius:11px;
  background:#fafaf8
}
.promo-row strong{display:block;color:#151515;font-size:10px}
.promo-row span{display:block;margin-top:4px;color:#777;font-size:8px;line-height:1.45}
.promo-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.promo-row-actions button{
  height:30px;
  padding:0 8px;
  border:1px solid #d8d8d4;
  border-radius:8px;
  background:#fff;
  color:#222;
  font:600 8px Oswald,sans-serif;
  cursor:pointer
}
.promo-row-value{font:600 14px Oswald,sans-serif;color:#111;white-space:nowrap}
.promo-status{display:inline-block!important;width:max-content;margin-top:6px!important;padding:4px 7px;border-radius:999px;background:#ededeb;color:#555!important}
.inventory-history-panel{margin-top:14px}

@media(max-width:900px){
  .promo-overview{grid-template-columns:1fr 1fr}
  .promo-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .main-panel{padding:18px 15px 90px}
  .sidebar{background:#0b0b0b}
  .promo-overview{grid-template-columns:1fr 1fr}
  .user-chip{min-width:auto}
}

/* mantém o login institucional, mas com acabamento melhor */
.login-card{
  border-radius:18px;
  border-color:rgba(255,255,255,.10);
  box-shadow:0 30px 80px rgba(0,0,0,.35)
}
.login-form input,.login-form .secondary-btn{border-radius:10px}
.login-form button{border-radius:10px}


.coupon-apply-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.coupon-apply-row .ghost-btn{height:44px;align-self:end}


.login-card{color:#fff}
.login-card h1{color:#fff}
.login-card .login-form label span{color:#a8a8a8}
.login-card .message{color:#d0d0d0!important}


.timeline-checkout{
  margin-top:7px;
  height:28px;
  padding:0 9px;
  border:0;
  border-radius:7px;
  background:#fff;
  color:#111;
  font:600 8px Oswald,sans-serif;
  letter-spacing:.8px;
  cursor:pointer
}
.timeline-checkout:hover{background:#e9e9e6}


/* MULTISSERVIÇOS NO AGENDAMENTO */
.service-picker-field{display:grid;gap:7px}
.service-picker-field>span{color:#777772;font-size:9px}
.service-picker-field>small{color:#81817d;font-size:9px}
.appointment-service-list{
  max-height:220px;
  overflow:auto;
  display:grid;
  gap:7px;
  padding:8px;
  border:1px solid #d9d9d5;
  border-radius:12px;
  background:#fafaf8
}
.service-option{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:center;
  gap:10px!important;
  min-height:48px;
  padding:9px 10px;
  border:1px solid #e4e4e0;
  border-radius:10px;
  background:#fff;
  cursor:pointer;
  transition:.16s ease
}
.service-option:hover{border-color:#bfbfba;background:#f6f6f3}
.service-option:has(input:checked){border-color:#111;background:#f0f0ed}
.service-option input{
  width:17px!important;
  height:17px!important;
  padding:0!important;
  accent-color:#111;
  flex:0 0 auto
}
.service-option-main{min-width:0;display:block}
.service-option-main strong{display:block;color:#161616;font-size:10px}
.service-option-main small{display:block;margin-top:4px;color:#7b7b76;font-size:8px}
.appointment-save-actions{flex-wrap:wrap}
.appointment-save-actions #saveAndNewAppointmentBtn{margin-right:auto}

@media(max-width:700px){
  .appointment-service-list{max-height:180px}
  .appointment-save-actions{display:grid;grid-template-columns:1fr}
  .appointment-save-actions button{width:100%}
}


/* CENTRAL DE NOTIFICAÇÕES */
.topbar-actions{display:flex;align-items:center;gap:10px}
.notification-btn{
  position:relative;
  width:44px;height:44px;
  display:grid;place-items:center;
  border:1px solid #dededb;
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  box-shadow:0 5px 16px rgba(0,0,0,.035)
}
.notification-icon{font-size:17px;filter:grayscale(1)}
.notification-badge{
  position:absolute;
  top:-5px;right:-5px;
  min-width:20px;height:20px;
  padding:0 5px;
  display:grid;place-items:center;
  border-radius:999px;
  background:#111;
  color:#fff;
  border:2px solid #f3f3f1;
  font:700 8px Montserrat,sans-serif
}
.notification-drawer{
  position:fixed;
  z-index:250;
  top:0;right:0;
  width:min(520px,94vw);
  height:100vh;
  display:flex;
  flex-direction:column;
  background:#f7f7f5;
  color:#171717;
  border-left:1px solid #deded9;
  box-shadow:-24px 0 70px rgba(0,0,0,.18)
}
.notification-drawer-backdrop{
  position:fixed;
  z-index:240;
  inset:0;
  background:rgba(0,0,0,.30);
  backdrop-filter:blur(2px)
}
.notification-drawer-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding:26px 24px 20px;
  background:#fff;
  border-bottom:1px solid #e2e2de
}
.notification-drawer-head span{
  color:#8b8b86;
  font:500 8px Oswald,sans-serif;
  letter-spacing:2px
}
.notification-drawer-head h2{
  margin-top:4px;
  font:600 28px Oswald,sans-serif
}
.notification-close{
  border:0;
  background:transparent;
  color:#555;
  font-size:30px;
  cursor:pointer
}
.notification-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:12px 18px;
  background:#fff;
  border-bottom:1px solid #e4e4e0
}
.notification-filters{display:flex;gap:6px;flex-wrap:wrap}
.notification-filter,
.notification-archive-all{
  height:34px;
  padding:0 10px;
  border:1px solid #dadad6;
  border-radius:8px;
  background:#fff;
  color:#555;
  font:600 8px Oswald,sans-serif;
  letter-spacing:.8px;
  cursor:pointer
}
.notification-filter.active{
  background:#111;
  color:#fff;
  border-color:#111
}
.notification-archive-all{
  border:0;
  background:transparent;
  color:#777;
  white-space:nowrap
}
.notification-list{
  flex:1;
  overflow:auto;
  padding:14px
}
.notification-item{
  display:grid;
  grid-template-columns:10px 1fr;
  gap:12px;
  padding:16px 14px;
  margin-bottom:10px;
  border:1px solid #e1e1dd;
  border-radius:14px;
  background:#fff;
  box-shadow:0 6px 18px rgba(0,0,0,.035)
}
.notification-item.unread{border-color:#bdbdb8}
.notification-dot{
  width:8px;height:8px;
  margin-top:4px;
  border-radius:50%;
  background:#d7d7d2
}
.notification-item.unread .notification-dot{background:#111}
.notification-item-top{
  display:flex;
  justify-content:space-between;
  gap:12px
}
.notification-item-top strong{
  color:#222;
  font:700 10px Montserrat,sans-serif;
  text-transform:uppercase
}
.notification-item-top span{color:#999;font-size:8px}
.notification-content h3{
  margin-top:8px;
  color:#292929;
  font-size:13px
}
.notification-content p{
  margin-top:5px;
  color:#74746f;
  font-size:10px
}
.notification-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:12px
}
.notification-actions button{
  height:30px;
  padding:0 9px;
  border:1px solid #d9d9d5;
  border-radius:8px;
  background:#fafaf8;
  color:#444;
  font:600 7px Oswald,sans-serif;
  letter-spacing:.7px;
  cursor:pointer
}
.notification-actions button:hover{background:#efefec}
.notification-empty{
  min-height:160px;
  display:grid;
  place-items:center;
  color:#888;
  font-size:10px
}

@media(max-width:640px){
  .topbar-actions{gap:6px}
  .notification-btn{width:40px;height:40px}
  .user-chip{padding:9px 10px}
  .notification-toolbar{align-items:flex-start;flex-direction:column}
  .notification-drawer{width:100vw}
}
