@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--s:#3b82f6;--accent:#06d6a0;--ok:#10b981;--ng:#ef4444;--warn:#f59e0b;--text:#1e293b;--muted:#64748b;--bg:#f1f5f9;--card:#fff;--bdr:#e2e8f0;--sw:250px;--sh:0 1px 3px #0000000f;--ibg:#fff;--ib:#cbd5e1;--thbg:#f8fafc;--hov:#f1f5f9;--r:10px}body.dark-mode{--s:#60a5fa;--accent:#34d399;--ok:#34d399;--ng:#f87171;--warn:#fbbf24;--text:#e2e8f0;--muted:#94a3b8;--bg:#0f172a;--card:#1e293b;--bdr:#334155;--sh:0 1px 2px #0000004d;--ibg:#0f172a;--ib:#334155;--thbg:#1a2744;--hov:#1e3050}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:DM Sans,sans-serif;line-height:1.6;transition:background .3s,color .3s;display:flex;overflow-x:hidden}#app{width:100%;display:flex}#sidebar{width:var(--sw);color:#f8fafc;z-index:1000;background:linear-gradient(#0a1628,#0f1f3d);border-right:1px solid #ffffff0f;flex-direction:column;height:100%;display:flex;position:fixed;overflow-y:auto}.logo{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;padding:16px;display:flex}.logo-icon{background:linear-gradient(135deg,var(--s),var(--accent));color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;font-weight:800;display:flex}.logo .logo-name{color:#fff;white-space:nowrap;font-size:13px;font-weight:700}.logo .logo-sub{color:#ffffff4d;letter-spacing:1.5px;text-transform:uppercase;font-size:8px}#sidebar nav{flex-grow:1;padding:6px 0}#sidebar nav ul{list-style:none}#sidebar nav ul li a{color:#ffffff80;white-space:nowrap;border-radius:6px;align-items:center;margin:1px 5px;padding:8px 14px;font-size:12px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}#sidebar nav ul li a .icon{text-align:center;flex-shrink:0;width:20px;margin-right:10px;font-size:14px}#sidebar nav ul li a:hover{color:#fff;background:#ffffff0f}#sidebar nav ul li a.active{color:#fff;border-left:3px solid var(--accent);background:linear-gradient(135deg,#3b82f633,#06d6a01a);padding-left:11px}.sidebar-footer{color:#fff3;text-align:center;border-top:1px solid #ffffff14;padding:10px;font-size:9px}.nav-group-title{color:#ffffff4d;text-transform:uppercase;letter-spacing:1px;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:space-between;align-items:center;margin:2px 5px;padding:7px 14px;font-size:9px;font-weight:700;display:flex}.nav-group-title:hover{color:#ffffff80}.nav-group-title .arrow{font-size:9px;transition:transform .2s}.nav-group-title.collapsed .arrow{transform:rotate(-90deg)}.nav-group-items{max-height:600px;transition:max-height .3s;overflow:hidden}.nav-group-items.collapsed{max-height:0}.nav-divider{background:#ffffff0d;height:1px;margin:6px 14px}#main-content{margin-left:var(--sw);flex-direction:column;flex-grow:1;display:flex}#topbar{background:var(--card);height:56px;box-shadow:var(--sh);z-index:999;border-bottom:1px solid var(--bdr);justify-content:space-between;align-items:center;padding:0 18px;display:flex;position:sticky;top:0}#topbar .page-title{font-size:15px;font-weight:700}.topbar-right{align-items:center;gap:3px;display:flex}.icon-button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;font-size:15px}.icon-button:hover{background:var(--bg);color:var(--text)}.user-av{background:linear-gradient(135deg,var(--s),var(--accent));color:#fff;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:700;display:flex}#content-area{flex-grow:1;padding:16px}.content-view{animation:.2s fadeIn;display:none}.content-view.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.card-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.card{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--bdr);padding:14px;transition:all .15s}.card:hover{transform:translateY(-1px)}.card-title{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;align-items:center;margin-bottom:4px;font-size:10px;font-weight:600;display:flex}.card-title .icon{margin-right:5px;font-size:13px}.card-value{letter-spacing:-.5px;margin-bottom:2px;font-size:20px;font-weight:800}.card-footer{color:var(--muted);font-size:10px}.chart-container{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--bdr);margin-bottom:14px;padding:14px}.chart-container h3{margin-bottom:10px;font-size:12px;font-weight:700}.chart-wrapper{width:100%;height:240px;position:relative}.data-table-container{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--bdr);margin-bottom:14px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:11px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--bdr);padding:9px 12px}.data-table th{background:var(--thbg);color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:600}.data-table tbody tr:hover{background:var(--hov)}.filter-bar{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--bdr);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:14px;padding:12px;display:flex}.filter-bar h3{margin-right:auto;font-size:13px;font-weight:700}.filter-bar select,.filter-bar input{border:1px solid var(--ib);background:var(--ibg);color:var(--text);border-radius:6px;padding:6px 9px;font-family:DM Sans,sans-serif;font-size:11px}.btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;padding:7px 12px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:linear-gradient(135deg,var(--s),#2563eb);color:#fff}.btn-success{background:var(--ok);color:#fff}.btn-danger{background:var(--ng);color:#fff}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--bdr)}.btn-ghost{color:var(--muted);background:0 0}.btn-ghost:hover{background:var(--bg);color:var(--text)}.btn-sm{padding:3px 8px;font-size:10px}.modal{z-index:2000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.modal-content{background:var(--card);border-radius:var(--r);border:1px solid var(--bdr);width:92%;max-width:500px;max-height:90vh;padding:22px;position:relative;overflow-y:auto}.modal-content h3{margin-bottom:14px;font-size:14px;font-weight:700}.close-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:18px;position:absolute;top:12px;right:16px}.form-group{margin-bottom:12px}.form-group label{margin-bottom:3px;font-size:11px;font-weight:600;display:block}.form-group input,.form-group select{border:1px solid var(--ib);background:var(--ibg);width:100%;color:var(--text);border-radius:6px;padding:8px 10px;font-family:DM Sans,sans-serif;font-size:12px}.form-group input:focus,.form-group select:focus{border-color:var(--s);outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-row{grid-template-columns:1fr 1fr;gap:9px;display:grid}.badge{text-transform:uppercase;border-radius:14px;padding:2px 7px;font-size:9px;font-weight:700;display:inline-flex}.badge-ok{color:var(--ok);background:#10b9811a}.badge-quase{color:var(--warn);background:#f59e0b1a}.badge-estourado{color:var(--ng);background:#ef44441a}.badge-ativo{color:var(--ok);background:#10b9811a}.badge-pausado{color:var(--warn);background:#f59e0b1a}.badge-gira{color:#8b5cf6;background:#8b5cf61a}.badge-avaliacao{color:var(--warn);background:#f59e0b1a}.text-success{color:var(--ok)!important}.text-danger{color:var(--ng)!important}.text-warning{color:var(--warn)!important}.text-muted{color:var(--muted)!important}.mono{font-family:JetBrains Mono,monospace}#toast-container{z-index:3000;position:fixed;bottom:14px;right:14px}.toast{color:#fff;opacity:0;border-radius:8px;margin-bottom:5px;padding:9px 16px;font-size:11px;font-weight:600;animation:.3s forwards toastIn;transform:translate(30px)}@keyframes toastIn{to{opacity:1;transform:translate(0)}}.insights-panel{background:var(--card);border-radius:var(--r);border:1px solid var(--bdr);margin-bottom:14px;padding:14px}.insights-panel h3{margin-bottom:10px;font-size:12px;font-weight:700}.insight-item{border-bottom:1px solid var(--bdr);align-items:flex-start;gap:8px;padding:7px 0;font-size:11px;line-height:1.5;display:flex}.insight-item:last-child{border-bottom:none}.insight-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:flex}.insight-icon.tip{background:#3b82f614}.insight-icon.warn{background:#f59e0b14}.insight-icon.good{background:#10b98114}.insight-icon.alert{background:#ef444414}.report-result{background:var(--card);border-radius:var(--r);border:1px solid var(--bdr);margin-top:14px;padding:18px}.report-result h3{margin-bottom:12px;font-size:13px;font-weight:700}.report-row{border-bottom:1px solid var(--bdr);justify-content:space-between;padding:7px 0;font-size:12px;display:flex}.report-row:last-child{border-bottom:none}.report-row.total{border-top:2px solid var(--bdr);margin-top:4px;padding-top:10px;font-size:14px;font-weight:800}.report-row .pct{color:var(--muted);text-align:right;min-width:45px;font-size:10px}.report-section-title{color:var(--muted);text-transform:uppercase;background:var(--thbg);border-radius:5px;margin:12px 0 5px;padding:7px 10px;font-size:11px;font-weight:700}.sales-form{background:var(--card);border-radius:var(--r);border:1px solid var(--bdr);margin-bottom:14px;padding:18px}.sales-form h3{margin-bottom:12px;font-size:13px;font-weight:700}.payment-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:12px;display:grid}.payment-field{text-align:center}.payment-field label{color:var(--muted);text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:600;display:block}.payment-field input{border:1px solid var(--ib);text-align:center;background:var(--ibg);width:100%;color:var(--text);border-radius:7px;padding:9px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700}.payment-field input:focus{border-color:var(--s);outline:none;box-shadow:0 0 0 3px #3b82f61f}.payment-field.gira input{border-color:#8b5cf6}.sales-total{background:var(--thbg);text-align:center;border-radius:8px;flex-wrap:wrap;justify-content:space-around;gap:8px;padding:12px;display:flex}.sales-total-item .lbl{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:600}.sales-total-item .val{font-family:JetBrains Mono,monospace;font-size:18px;font-weight:800}.gira-card{color:#fff;border-radius:var(--r);background:linear-gradient(135deg,#7c3aed,#6d28d9);margin-bottom:14px;padding:18px}.gira-card h3{opacity:.8;margin-bottom:3px;font-size:12px}.gira-card .big{font-family:JetBrains Mono,monospace;font-size:26px;font-weight:800}.gira-card .sub{opacity:.7;margin-top:3px;font-size:10px}.calendar-container{background:var(--card);border-radius:var(--r);border:1px solid var(--bdr);margin-bottom:14px;overflow:hidden}.calendar-header{border-bottom:1px solid var(--bdr);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.calendar-header h3{font-size:14px;font-weight:700}.calendar-weekdays{background:var(--thbg);border-bottom:1px solid var(--bdr);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays span{text-align:center;color:var(--muted);text-transform:uppercase;padding:6px 0;font-size:9px;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-day{border-right:1px solid var(--bdr);border-bottom:1px solid var(--bdr);cursor:pointer;min-height:62px;padding:4px;transition:background .15s}.calendar-day:nth-child(7n){border-right:none}.calendar-day:hover{background:var(--hov)}.calendar-day.other-month{opacity:.25}.calendar-day.today{background:#3b82f60f}.calendar-day .day-num{margin-bottom:3px;font-size:11px;font-weight:700}.calendar-day.today .day-num{color:var(--s)}.calendar-day .day-dots{flex-wrap:wrap;gap:2px;display:flex}.day-dot{border-radius:50%;width:6px;height:6px}.day-dot.bill{background:var(--warn)}.day-dot.bill-overdue{background:var(--ng)}.day-dot.bill-paid{background:var(--ok)}.day-dot.event-meeting{background:#8b5cf6}.day-dot.event-promo{background:#ec4899}.day-dot.event-national{background:#f59e0b}.day-dot.event{background:var(--s)}.day-panel{background:var(--card);border-left:1px solid var(--bdr);z-index:1500;flex-direction:column;width:360px;height:100%;transition:right .3s;display:flex;position:fixed;top:0;right:-360px;box-shadow:-4px 0 20px #0000001a}.day-panel.open{right:0}.day-panel-header{border-bottom:1px solid var(--bdr);justify-content:space-between;align-items:center;padding:14px;display:flex}.day-panel-body{flex:1;padding:14px;overflow-y:auto}.day-panel-item{border:1px solid var(--bdr);background:var(--bg);border-radius:7px;margin-bottom:7px;padding:9px}.day-panel-item .item-title{font-size:12px;font-weight:700}.day-panel-item .item-sub{color:var(--muted);font-size:10px}.day-panel-item .item-value{margin-top:3px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:800}.day-panel-total{border-top:1px solid var(--bdr);justify-content:space-between;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.day-panel-overlay{z-index:1499;background:#0000004d;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.day-panel-overlay.open{display:block}.event-type-tag{text-transform:uppercase;border-radius:4px;padding:1px 5px;font-size:8px;font-weight:700;display:inline-block}.event-type-tag.reuniao{color:#8b5cf6;background:#8b5cf626}.event-type-tag.postagem{color:#ec4899;background:#ec489926}.event-type-tag.evento{color:#f59e0b;background:#f59e0b26}.event-type-tag.lembrete{color:#3b82f6;background:#3b82f626}.meta-bar{background:var(--bdr);border-radius:10px;width:100%;height:20px;position:relative;overflow:hidden}.meta-fill{background:linear-gradient(90deg,var(--ok),var(--s));border-radius:10px;height:100%;transition:width .6s}.meta-fill.behind{background:linear-gradient(90deg,var(--warn),var(--ng))}.meta-label{color:#fff;text-shadow:0 1px 2px #0000004d;font-size:10px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.check-item{border:1px solid var(--bdr);background:var(--card);cursor:pointer;border-radius:8px;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;display:flex}.check-item:hover{background:var(--hov)}.check-item.done{opacity:.5;text-decoration:line-through}.check-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--ok)}.check-item .check-text{flex:1;font-size:12px;font-weight:600}.caixa-status{border-radius:8px;align-items:center;gap:8px;margin-bottom:14px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.caixa-status.aberto{color:var(--ok);background:#10b9811a}.caixa-status.fechado{color:var(--ng);background:#ef44441a}.sim-slider{width:100%;accent-color:var(--s);margin:6px 0}.sim-result{background:var(--thbg);border-radius:8px;margin-top:14px;padding:14px}.sim-val{font-family:JetBrains Mono,monospace;font-size:22px;font-weight:800}@media (width<=900px){#sidebar{z-index:2000;transition:left .3s;position:fixed;left:-260px}#sidebar.open{left:0}#main-content{margin-left:0!important}.card-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}.payment-grid{grid-template-columns:1fr 1fr}#content-area{padding:12px}}@media (width<=520px){.card-grid{grid-template-columns:1fr}.modal-content{width:96%;padding:14px}.payment-grid{grid-template-columns:1fr}.sales-total{flex-direction:column}.filter-bar{flex-direction:column;align-items:stretch}.topbar-right>div:last-child{display:none}.day-panel{width:100%;right:-100%}.calendar-day{min-height:44px}}#sidebar-overlay{z-index:1999;background:#00000080;width:100%;height:100%;display:none;position:fixed;top:0;left:0}#sidebar-overlay.active{display:block}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--bdr);border-radius:2px}.loading-overlay{background:var(--bg);z-index:9999;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.loading-overlay.hide{opacity:0;pointer-events:none}.loading-spinner{text-align:center;color:var(--muted);font-size:13px}.loading-spinner .logo-icon{width:48px;height:48px;margin:0 auto 12px;font-size:22px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}#login-screen{z-index:10000;width:100%;height:100%;position:fixed;top:0;left:0}.login-container{background:linear-gradient(135deg,#0a1628 0%,#0f1f3d 40%,#162544 100%);justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:flex}.login-card{background:#fff;border-radius:16px;width:100%;max-width:400px;padding:40px 36px;box-shadow:0 20px 60px #0000004d}body.dark-mode .login-card{background:#1e293b;border:1px solid #334155}.login-header{text-align:center;margin-bottom:28px}.login-title{color:#1e293b;margin-bottom:2px;font-size:22px;font-weight:800}body.dark-mode .login-title{color:#e2e8f0}.login-sub{color:#64748b;letter-spacing:1px;text-transform:uppercase;font-size:11px}.login-error{color:#ef4444;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:12px;font-weight:600}.login-success{color:#10b981;background:#10b9811a;border:1px solid #10b98133;border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:12px;font-weight:600}#login-screen .form-group{margin-bottom:16px}#login-screen .form-group label{color:#1e293b;margin-bottom:5px;font-size:12px;font-weight:600;display:block}body.dark-mode #login-screen .form-group label{color:#e2e8f0}#login-screen .form-group input{color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;width:100%;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .2s,box-shadow .2s}body.dark-mode #login-screen .form-group input{color:#e2e8f0;background:#0f172a;border-color:#334155}#login-screen .form-group input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}#login-screen .form-group input::placeholder{color:#94a3b8}.login-toggle{text-align:center;color:#64748b;margin-top:18px;font-size:12px}.login-toggle a{color:#3b82f6;margin-left:4px;font-weight:600;text-decoration:none}.login-toggle a:hover{text-decoration:underline}#auth-submit:disabled{opacity:.6;cursor:not-allowed}@media (width<=520px){.login-card{margin:0 10px;padding:28px 22px}}
