body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:system-ui,Segoe UI,Roboto,sans-serif}#root{flex-direction:column;min-height:100svh;display:flex}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (width>=600px){.modal-overlay{align-items:center;padding:24px}}.modal-box{color:#fff;background:#161616;border-radius:16px 16px 0 0;width:100%;max-height:90vh;padding:24px 20px;overflow-y:auto}@media (width>=600px){.modal-box{border-radius:16px;max-width:520px;max-height:85vh}}.admin-layout{background:var(--bg);color:#fff;min-height:100vh}.admin-sidebar{background:var(--card);z-index:200;border-right:1px solid #252525;flex-direction:column;width:240px;min-height:100vh;transition:transform .25s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.admin-content{box-sizing:border-box;width:calc(100% - 240px);margin-left:240px;padding:28px 32px}.admin-sidebar-logo{color:var(--ouro);letter-spacing:1px;border-bottom:1px solid #252525;align-items:center;gap:10px;padding:24px 20px 16px;font-size:1.4rem;font-weight:700;display:flex}.admin-sidebar-section{padding:16px 0 0}.admin-sidebar-link{color:#ccc;border-left:3px solid #0000;align-items:center;gap:10px;padding:10px 20px;font-size:.9rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.admin-sidebar-link:hover{color:#fff;background:#ffffff0a}.admin-sidebar-link.ativo{color:#0f0f0f;background:var(--ouro);border-left-color:#0000}.admin-sidebar-link.ativo:hover{background:var(--ouro-escuro);color:#0f0f0f}.admin-sidebar-grupo-titulo{color:#aaa;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:none;border-top:1px solid #252525;justify-content:space-between;align-items:center;width:100%;margin-top:8px;padding:10px 20px;font-size:.75rem;font-weight:700;display:flex}.admin-sidebar-grupo-titulo:hover{color:#ccc}.admin-sidebar-sublink{color:#bbb;border-left:3px solid #0000;align-items:center;gap:8px;padding:9px 20px 9px 32px;font-size:.875rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.admin-sidebar-sublink:hover{color:#fff;background:#ffffff0a}.admin-sidebar-sublink.ativo{color:#0f0f0f;background:var(--ouro);border-left-color:#0000}.admin-sidebar-sublink.ativo:hover{background:var(--ouro-escuro);color:#0f0f0f}.admin-sidebar-footer{border-top:1px solid #252525;flex-direction:column;gap:8px;margin-top:auto;padding:16px 20px;display:flex}.admin-sidebar-usuario{color:#888;font-size:.8rem;line-height:1.4}.admin-sidebar-sair{background:var(--ouro);color:#0f0f0f;cursor:pointer;border:none;border-radius:6px;width:100%;padding:8px 0;font-size:.85rem;font-weight:700;transition:background .15s}.admin-sidebar-sair:hover{background:var(--ouro-escuro)}.admin-hamburger{z-index:300;background:var(--ouro);cursor:pointer;color:#0f0f0f;border:none;border-radius:6px;padding:8px 12px;font-size:1.1rem;font-weight:700;line-height:1;display:none;position:fixed;top:12px;left:12px;box-shadow:0 2px 8px #0006}.admin-sidebar-close{color:#aaa;cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:12px 12px 0;font-size:1.2rem;line-height:1;display:none}.admin-overlay{display:none}@media (width<=768px){.admin-sidebar{transform:translate(-100%)}.admin-sidebar.aberta{transform:translate(0)}.admin-content{width:100%;margin-left:0;padding:72px 16px 24px}.admin-hamburger,.admin-sidebar-close{display:block}.admin-overlay{z-index:199;background:#0000008c;display:block;position:fixed;inset:0}}:root{--ouro:#d4af37;--ouro-escuro:#b8942e;--bg:#0f0f0f;--card:#1a1a1a;--input:#232323;--texto:#fff;--texto-suave:#a0a0a0;--erro:#f44336;--sucesso:#4caf50;--radius:10px;--radius-sm:8px}.c-page{background:var(--bg);min-height:100vh;color:var(--texto);max-width:480px;margin:0 auto;padding:24px 20px}.c-page--center{flex-direction:column;justify-content:center;min-height:100vh;display:flex}.c-logo{color:var(--ouro);text-align:center;margin-bottom:8px;font-size:2.5rem;font-weight:700}.c-subtitulo{color:var(--texto-suave);text-align:center;margin-bottom:32px;font-size:1rem}.c-card{background:var(--card);border-radius:var(--radius);margin-bottom:16px;padding:24px}.c-card__titulo{text-align:center;margin:0 0 20px;font-size:1.1rem;font-weight:700}.c-campo{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.c-label{color:var(--texto-suave);font-size:.9rem}.c-input{background:var(--input);color:var(--texto);border-radius:var(--radius-sm);appearance:none;border:none;outline:none;width:100%;padding:14px;font-size:1rem}.c-input:focus{outline:2px solid var(--ouro)}.c-input::placeholder{color:#666}.c-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;padding:15px;font-size:1rem;font-weight:700;transition:opacity .2s}.c-btn:disabled{opacity:.5;cursor:not-allowed}.c-btn--primary{background:var(--ouro);color:#111}.c-btn--secondary{background:var(--input);color:var(--texto)}.c-btn--danger{color:#fff;background:#b71c1c}.c-btn--ghost{color:var(--ouro);background:0 0;padding:10px}.c-link{color:var(--ouro);text-align:center;cursor:pointer;background:0 0;border:none;width:100%;padding:8px 0;font-size:.9rem;display:block}.c-link--suave{color:var(--texto-suave)}.c-divisor{color:var(--texto-suave);align-items:center;gap:12px;margin:16px 0;font-size:.85rem;display:flex}.c-divisor:before,.c-divisor:after{content:"";background:#333;flex:1;height:1px}.c-header{justify-content:space-between;align-items:center;margin-bottom:28px;padding-top:8px;display:flex}.c-header__nome{font-size:1.2rem;font-weight:700}.c-header__sub{color:var(--texto-suave);font-size:.85rem}.c-menu-item{background:var(--card);border-radius:var(--radius);cursor:pointer;width:100%;color:var(--texto);text-align:left;border:none;justify-content:space-between;align-items:center;margin-bottom:12px;padding:20px;font-size:1rem;display:flex}.c-menu-item__seta{color:var(--ouro);font-size:1.2rem}.c-etapa-titulo{color:var(--texto-suave);margin-bottom:16px;font-size:.95rem}.c-etapa-item{background:var(--card);border-radius:var(--radius);cursor:pointer;border:2px solid #0000;margin-bottom:10px;padding:16px}.c-etapa-item--selecionado{border-color:var(--ouro)}.c-etapa-item__titulo{margin-bottom:4px;font-size:1rem;font-weight:700}.c-etapa-item__sub{color:#b8b8b8;font-size:.9rem}.c-etapa-item__row{align-items:center;gap:12px;display:flex}.c-checkbox{border:2px solid var(--ouro);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.9rem;display:flex}.c-checkbox--marcado{background:var(--ouro);color:#111;font-weight:700}.c-dias-scroll{scrollbar-width:none;gap:8px;margin-bottom:20px;padding-bottom:8px;display:flex;overflow-x:auto}.c-dias-scroll::-webkit-scrollbar{display:none}.c-dia-card{background:var(--card);border-radius:var(--radius-sm);text-align:center;cursor:pointer;border:2px solid #0000;flex-shrink:0;min-width:62px;padding:12px}.c-dia-card--selecionado{border-color:var(--ouro)}.c-dia__semana{color:var(--texto-suave);font-size:.75rem}.c-dia__numero{font-size:1.4rem;font-weight:700}.c-dia__mes{color:var(--texto-suave);font-size:.75rem}.c-slots-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px;display:grid}.c-slot{background:var(--card);border-radius:var(--radius-sm);text-align:center;cursor:pointer;border:2px solid #0000;padding:12px 4px;font-size:.95rem}.c-slot--selecionado{border-color:var(--ouro);color:var(--ouro);font-weight:700}.c-resumo{color:var(--ouro);text-align:center;margin:8px 0 16px;font-size:.95rem;font-weight:700}.c-agendamento-card{background:var(--card);border-radius:var(--radius);margin-bottom:14px;padding:16px}.c-agendamento-card__header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.c-agendamento-card__data{color:var(--ouro);font-size:1rem;font-weight:700}.c-badge{color:#fff;border-radius:6px;padding:4px 10px;font-size:.82rem;font-weight:700}.c-agendamento-card__servico{color:#e8e8e8;margin-bottom:4px;font-size:1rem;font-weight:600}.c-agendamento-card__barbeiro{color:#b8b8b8;margin-bottom:8px;font-size:.9rem}.c-erro{color:var(--erro);text-align:center;margin:8px 0;font-size:.9rem}.c-sucesso{color:var(--sucesso);text-align:center;margin:8px 0;font-size:.9rem}.c-voltar{color:var(--ouro);cursor:pointer;background:0 0;border:none;padding:0 0 16px;font-size:1rem;display:block}.c-vazio{text-align:center;color:var(--texto-suave);padding:60px 0}.c-barbeiro-foto{object-fit:cover;border-radius:50%;width:48px;height:48px}.c-barbeiro-inicial{background:var(--input);width:48px;height:48px;color:var(--ouro);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;display:flex}@keyframes c-spin{to{transform:rotate(360deg)}}.c-spinner-ring{border:4px solid #d4af372e;border-top-color:#d4af37;border-radius:50%;flex-shrink:0;width:44px;height:44px;animation:.75s linear infinite c-spin}.c-spinner-ring--sm{border-width:3px;width:28px;height:28px}.c-loading{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 24px;display:flex}.admin-content input:focus,.admin-content select:focus,.admin-content textarea:focus{outline:2px solid var(--ouro);outline-offset:-1px}@media (width<=768px){body{font-size:14px}nav{flex-direction:column!important;gap:0!important;padding:0!important}nav>div:first-child{border-bottom:1px solid #333;flex-wrap:wrap!important;gap:4px!important;padding:12px!important;display:flex!important}nav a{background:#2a2a2a;border-radius:6px;padding:6px 10px!important;font-size:.8rem!important}nav>div:last-child{justify-content:space-between!important;padding:10px 12px!important}div[style*="padding: '0 24px'"],div[style*="padding: \"0 24px\""]{padding:0 12px!important}form[style*=flex]{flex-direction:column!important;gap:12px!important}input[style*=minWidth],select[style*=minWidth],div[style*="minWidth: '200px'"]{min-width:unset!important;width:100%!important}table{white-space:nowrap;-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}td div[style*=flex]{flex-direction:column!important;gap:4px!important}div[style*="minWidth: '180px'"]{min-width:unset!important;width:100%!important}h1{font-size:1.5rem!important}h2{font-size:1.1rem!important}}@media (width<=480px){nav a{padding:5px 8px!important;font-size:.75rem!important}h1{font-size:1.3rem!important}}
