.layout{min-height:100vh}.header{background:var(--color-field);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08)}.logo{font-size:1.5rem;font-weight:700;color:var(--color-button);text-decoration:none}.nav{display:flex;gap:1.5rem}.nav a{color:var(--color-text);text-decoration:none;font-weight:500;transition:color .2s}.nav a:hover{color:var(--color-button)}.main{padding:2rem;max-width:1200px;margin:0 auto}.home{padding:2rem 0}.hero{text-align:center;padding:3rem 2rem;margin-bottom:3rem}.hero h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--color-text)}.hero p{color:var(--color-text-muted);font-size:1.2rem;margin-bottom:2rem}.btn-hero{display:inline-block;background:var(--color-button);color:var(--color-bg);padding:1rem 2rem;font-size:1.1rem;font-weight:600;text-decoration:none;border-radius:8px;transition:background .2s,transform .1s}.btn-hero:hover{background:var(--color-button-hover);transform:translateY(-1px)}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.card{background:var(--color-field);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:2rem;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}.card:hover{border-color:var(--color-button);transform:translateY(-2px)}.card h2{font-size:1.25rem;margin-bottom:.5rem}.card p{color:var(--color-text-muted);font-size:.95rem}.quadras-page h1{margin-bottom:1rem}.demo-notice{background:#21e30326;color:var(--color-button);padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.quadras-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.quadra-card{background:var(--color-field);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem}.quadra-tipo{display:inline-block;background:#21e30333;color:var(--color-button);padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;margin-bottom:.75rem}.quadra-card h2{font-size:1.25rem;margin-bottom:.5rem}.quadra-card p{color:var(--color-text-muted);font-size:.95rem;margin-bottom:1rem}.quadra-preco{font-size:1.1rem;font-weight:600;color:var(--color-button)}.loading,.error{text-align:center;padding:2rem}.error{color:#e74c3c}.quadras-admin h1{margin-bottom:1.5rem}.quadras-list-top{margin-bottom:2rem}.quadra-horarios{font-size:.85rem;color:var(--color-text-muted);margin-bottom:.25rem}.quadra-card.editing{border-color:var(--color-button);box-shadow:0 0 0 1px var(--color-button)}.quadra-form{background:var(--color-field);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:2rem;margin-bottom:2rem;max-width:500px}.quadra-form h2{font-size:1.1rem;margin-bottom:1.25rem;color:var(--color-text-muted)}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-error{color:#e74c3c;font-size:.9rem;margin-top:.75rem;padding:.5rem;background:#e74c3c26;border-radius:6px}.form-actions{display:flex;gap:1rem;margin-top:1rem}.bloqueios-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08)}.bloqueios-section h3{font-size:1rem;margin-bottom:.75rem;color:var(--color-text-muted)}.bloqueio-add{display:flex;gap:.5rem;align-items:flex-end;margin-bottom:.75rem}.bloqueio-add input[type=date]{flex:1;padding:.5rem .75rem;background:var(--color-bg);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:inherit}.bloqueios-list{list-style:none;padding:0;margin:0}.bloqueios-list li{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.06)}.bloqueios-list li:last-child{border-bottom:none}.btn-link{background:none;border:none;color:var(--color-button);cursor:pointer;font-size:.85rem;text-decoration:underline}.btn-link:hover{opacity:.9}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto}.quadras-list h2{font-size:1.1rem;margin-bottom:1rem;color:var(--color-text-muted)}.quadras-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.quadra-card{background:var(--color-field);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.25rem}.quadra-card.inativa{opacity:.6}.quadra-card h3{font-size:1.1rem;margin-bottom:.25rem}.quadra-tipo{display:inline-block;font-size:.8rem;color:var(--color-button);margin-bottom:.5rem}.quadra-card p{font-size:.9rem;color:var(--color-text-muted);margin-bottom:.5rem}.quadra-valor{font-weight:600;color:var(--color-button);margin-bottom:.25rem}.quadra-status{font-size:.8rem;color:var(--color-text-muted);display:block;margin-bottom:.75rem}.btn-sm{padding:.5rem 1rem;font-size:.9rem}.loading{color:var(--color-text-muted)}.input-group{margin-bottom:1rem}.input-group label{display:block;margin-bottom:.4rem;font-weight:500;color:var(--color-text)}.input-group input,.input-group select,.input-group textarea{width:100%;padding:.75rem 1rem;background:var(--color-field);border:1px solid rgba(255,255,255,.12);border-radius:6px;color:var(--color-text);font-size:1rem}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{outline:none;border-color:var(--color-button);box-shadow:0 0 0 2px #21e30333}.input-group textarea{min-height:100px;resize:vertical}.btn{background:var(--color-button);color:var(--color-bg);border:none;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;border-radius:6px;transition:background .2s,transform .1s}.btn:hover{background:var(--color-button-hover)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-outline{background:transparent;color:var(--color-button);border:2px solid var(--color-button)}.btn-outline:hover{background:#21e3031a}.agendar-dashboard{display:grid;grid-template-columns:280px 1fr 320px;height:100vh;background:var(--color-bg);position:relative;overflow:hidden}.agendar-sidebar{background:var(--color-bg);padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;border-right:1px solid rgba(255,255,255,.06);overflow-y:auto}.menu-hamburger{width:40px;height:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:transparent;border:none;cursor:pointer;padding:0;text-decoration:none;color:inherit;transition:opacity .2s}.menu-hamburger:hover{opacity:.8}.menu-hamburger span{width:24px;height:3px;background:var(--color-button);border-radius:2px}.logo-agendar{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-decoration:none;transition:opacity .2s}.logo-agendar:hover{opacity:.9}.logo-img{width:64px;height:64px;object-fit:contain}.logo-text{font-size:.85rem;font-weight:700;letter-spacing:.1em;color:var(--color-accent-orange)}.facility-name{font-size:1rem;font-weight:600;color:var(--color-text);text-align:center}.calendar-widget{background:var(--color-field);border-radius:12px;overflow:hidden}.calendar-header{background:var(--color-accent-orange);color:#000;display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;font-weight:600;font-size:.95rem}.calendar-header button{background:#0003;border:none;color:inherit;width:28px;height:28px;border-radius:6px;cursor:pointer;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center}.calendar-header button:hover{background:#0000004d}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:.75rem}.calendar-dow{font-size:.7rem;color:var(--color-text-muted);text-align:center;padding:.25rem}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.85rem;background:transparent;border:none;color:var(--color-text);cursor:pointer;border-radius:8px;transition:all .2s}.calendar-day.empty{cursor:default;visibility:hidden}.calendar-day.weekend{color:var(--color-highlight)}.calendar-day.past{opacity:.4}.calendar-day:hover:not(.empty):not(.past){background:#ffffff14}.calendar-day.selected{background:var(--color-highlight);color:#000}.agendar-center{padding:1rem 1.5rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.agendar-form-compact{width:100%;max-width:520px}.form-top-row{display:flex;gap:1.5rem;align-items:flex-start}.time-side{flex-shrink:0;padding-top:.5rem}.jogos-label{display:block;font-size:.8rem;color:var(--color-text-muted);margin-bottom:.15rem}.time-display{font-size:2.8rem;font-weight:700;color:var(--color-text);letter-spacing:.05em;font-variant-numeric:tabular-nums}.form-fields{flex:1;min-width:0;display:flex;flex-direction:column;gap:.75rem}.espaco-section label,.tempo-section label,.hora-picker label{display:block;font-size:.75rem;color:var(--color-text-muted);margin-bottom:.35rem}.espaco-toggles{display:flex;gap:.5rem;flex-wrap:wrap}.espaco-toggle{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;background:var(--color-field);border:2px solid rgba(255,255,255,.1);border-radius:10px;color:var(--color-text);cursor:pointer;transition:all .2s}.espaco-toggle:hover{border-color:#21e30366}.espaco-toggle.active{background:var(--color-button);border-color:var(--color-button);color:#000}.espaco-dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d}.espaco-toggle.active .espaco-dot{background:#000}.espaco-label{font-size:.8rem;font-weight:500}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.tempo-toggles{display:flex;gap:.5rem;flex-wrap:wrap}.tempo-toggle{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;background:var(--color-field);border:2px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text);cursor:pointer;font-size:.85rem;transition:all .2s}.tempo-toggle:hover{border-color:#21e30366}.tempo-toggle.active{background:var(--color-button);border-color:var(--color-button);color:#000}.tempo-dot{width:8px;height:8px;border-radius:50%;background:#ffffff4d}.tempo-toggle.active .tempo-dot{background:#000}.hora-picker select{width:100%;padding:.5rem .75rem;background:var(--color-field);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--color-text);font-size:.9rem;cursor:pointer}.hora-picker select:focus{outline:none;border-color:var(--color-button)}.responsavel-field input{width:100%;padding:.5rem .75rem;background:var(--color-field);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--color-text);font-size:.9rem}.responsavel-field input:focus{outline:none;border-color:var(--color-button)}.responsavel-field input::placeholder{color:var(--color-text-muted)}.form-error{color:#e74c3c;font-size:.85rem}.form-warning{color:#f59e0b;font-size:.85rem}.form-empty-hint{color:var(--color-text-muted);font-size:.9rem;padding:.75rem 0}.form-empty-hint a{color:var(--color-button);text-decoration:underline}.form-empty-hint a:hover{opacity:.9}.btn-agendar{width:100%;padding:.65rem 1rem;background:var(--color-button);color:#000;border:none;border-radius:50px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s}.btn-agendar:hover:not(:disabled){background:var(--color-button-hover)}.btn-agendar:disabled{opacity:.6;cursor:not-allowed}.agendar-timeline{background:var(--color-field);padding:1.5rem;overflow-y:auto;overflow-x:hidden;max-height:100vh;border-left:1px solid rgba(255,255,255,.06)}.timeline-list{display:flex;flex-direction:column;gap:0}.timeline-slot{display:flex;align-items:flex-start;gap:1rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05);min-height:48px}.timeline-time{font-size:.9rem;font-weight:600;color:var(--color-text-muted);min-width:48px;font-variant-numeric:tabular-nums}.timeline-bookings{flex:1;font-size:.85rem}.timeline-items{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.timeline-sep{color:#fff3;margin:0 .25rem}.timeline-booking{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border-radius:6px;font-weight:600;font-size:.9rem}.timeline-booking-clickable{border:none;cursor:pointer;background:inherit;color:inherit;font:inherit;transition:opacity .2s,transform .15s}.timeline-booking-clickable:hover{opacity:.9;transform:scale(1.02)}.timeline-nome{font-weight:700}.timeline-espaco{font-size:.75rem;font-weight:500;opacity:.9}.timeline-booking.espaco-0{background:#22c55e40;color:#22c55e;border-left:3px solid #22c55e}.timeline-booking.espaco-1{background:#3b82f640;color:#3b82f6;border-left:3px solid #3b82f6}.timeline-booking.espaco-2{background:#a855f740;color:#a855f7;border-left:3px solid #a855f7}.timeline-booking.espaco-3{background:#f59e0b40;color:#f59e0b;border-left:3px solid #f59e0b}.agendar-timeline::-webkit-scrollbar{width:8px}.agendar-timeline::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.agendar-timeline::-webkit-scrollbar-thumb{background:#21e30366;border-radius:4px}.agendar-timeline::-webkit-scrollbar-thumb:hover{background:#21e30399}.agendar-success-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000405e6;display:flex;align-items:center;justify-content:center;z-index:100}.agendar-success-msg{background:var(--color-field);border:1px solid rgba(33,227,3,.3);border-radius:16px;padding:2.5rem;text-align:center;max-width:400px}.agendar-success-msg h2{color:var(--color-button);margin-bottom:.5rem}.agendar-success-msg p{color:var(--color-text-muted);margin-bottom:1.5rem}.detalhe-agendamento-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000405d9;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.detalhe-agendamento-modal{background:var(--color-field);border:1px solid rgba(33,227,3,.25);border-radius:16px;max-width:400px;width:100%;box-shadow:0 8px 32px #00000080}.detalhe-agendamento-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.08)}.detalhe-agendamento-header h3{margin:0;font-size:1.1rem;color:var(--color-text)}.detalhe-agendamento-fechar{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff14;border:none;border-radius:8px;color:var(--color-text);font-size:1.5rem;line-height:1;cursor:pointer;transition:background .2s}.detalhe-agendamento-fechar:hover{background:#ffffff26}.detalhe-agendamento-body{padding:1.25rem;display:flex;flex-direction:column;gap:.85rem}.detalhe-linha{display:flex;flex-direction:column;gap:.25rem}.detalhe-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.detalhe-valor{font-size:.95rem;font-weight:500;color:var(--color-text)}.detalhe-valor a{color:var(--color-button);text-decoration:none}.detalhe-valor a:hover{text-decoration:underline}@media (max-width: 1024px){.agendar-dashboard{grid-template-columns:1fr;grid-template-rows:auto auto 1fr;height:auto;min-height:100vh;overflow:auto}.agendar-sidebar{flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}.agendar-timeline{border-left:none;border-top:1px solid rgba(255,255,255,.06);max-height:50vh}}.meus-agendamentos h1{margin-bottom:1.5rem}.meus-agendamentos section{margin-bottom:2rem}.meus-agendamentos h2{font-size:1.1rem;color:var(--color-text-muted);margin-bottom:1rem}.agendamentos-list{display:flex;flex-direction:column;gap:1rem}.agendamento-card{background:var(--color-field);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.agendamento-card.cancelado{opacity:.6}.quadra-nome{font-weight:600;color:var(--color-button)}.agendamento-info p{color:var(--color-text-muted);font-size:.9rem;margin-top:.25rem}.data-hora{font-size:.85rem!important}.empty{color:var(--color-text-muted)}.dashboard-page{padding:0}.dashboard-page h1{margin-bottom:1.5rem}.dashboard-filtros{display:flex;gap:1.5rem;margin-bottom:2rem}.dashboard-filtros label{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted)}.dashboard-filtros input{padding:.5rem .75rem;background:var(--color-field);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--color-text)}.dashboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.dash-card{background:var(--color-field);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.25rem}.dash-card.highlight{border-color:var(--color-button);background:#21e3030d}.dash-label{display:block;font-size:.85rem;color:var(--color-text-muted);margin-bottom:.5rem}.dash-valor{font-size:1.5rem;font-weight:700;color:var(--color-text)}.dash-card.highlight .dash-valor{color:var(--color-button)}.dashboard-transacoes h2{font-size:1.1rem;margin-bottom:1rem;color:var(--color-text-muted)}.transacoes-table-wrap{overflow-x:auto;background:var(--color-field);border-radius:12px;border:1px solid rgba(255,255,255,.08)}.transacoes-table{width:100%;border-collapse:collapse;font-size:.9rem}.transacoes-table th,.transacoes-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06)}.transacoes-table th{color:var(--color-text-muted);font-weight:600}.transacoes-table tbody tr:last-child td{border-bottom:none}.transacoes-table tbody tr:hover{background:#ffffff05}.transacoes-table tbody tr.cancelado{opacity:.6}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:6px;font-size:.8rem}.status-badge.confirmado{background:#21e30333;color:var(--color-button)}.status-badge.cancelado{background:#e74c3c33;color:#e74c3c}.status-badge.cancelado.espaco-0{background:#22c55e40;color:#22c55e}.status-badge.cancelado.espaco-1{background:#3b82f640;color:#3b82f6}.status-badge.cancelado.espaco-2{background:#a855f740;color:#a855f7}.status-badge.cancelado.espaco-3{background:#f59e0b40;color:#f59e0b}.status-badge.concluido{background:#38bdf833;color:var(--color-highlight)}.transacoes-table .quadra-cell.espaco-0{color:#22c55e;font-weight:600}.transacoes-table .quadra-cell.espaco-1{color:#3b82f6;font-weight:600}.transacoes-table .quadra-cell.espaco-2{color:#a855f7;font-weight:600}.transacoes-table .quadra-cell.espaco-3{color:#f59e0b;font-weight:600}.loading{color:var(--color-text-muted);padding:2rem}:root{--color-bg: #000405;--color-field: #141414;--color-button: #21E303;--color-button-hover: #1bc702;--color-text: #f0f0f0;--color-text-muted: #888;--color-accent-orange: #f59e0b;--color-highlight: #38bdf8;--color-weekend: #38bdf8}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--color-bg);color:var(--color-text);min-height:100vh}input,select,textarea,button{font-family:inherit}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}
