:root{--bg-color:#121212;--sidebar-bg:#1e1e1e;--card-bg:#2d2d2d;--text-primary:#f5f5f5;--text-secondary:#a0a0a0;--accent-color:#00d084;--accent-hover:#00e591;--danger-color:#ff4d4f;--border-color:#3f3f3f;--input-bg:#252525;--font-main:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-container{height:100vh;display:flex;overflow:hidden}.sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);flex-direction:column;width:250px;padding:2rem 1rem;display:flex}.sidebar h2{color:var(--accent-color);letter-spacing:-.5px;margin-bottom:2rem;padding-left:1rem;font-weight:700}.nav-item{cursor:pointer;color:var(--text-secondary);border-radius:8px;margin-bottom:.5rem;padding:.75rem 1rem;font-weight:500;transition:all .2s}.nav-item:hover{color:var(--text-primary);background-color:#ffffff0d}.nav-item.active{color:var(--accent-color);background-color:#00d0841a}.main-content{flex:1;padding:2rem;overflow-y:auto}.page-header{margin-bottom:2rem}.page-header h1{color:var(--text-primary);font-size:1.8rem;font-weight:600}.observacoes-container{flex-direction:column;gap:1.5rem;width:100%;display:flex}.observacoes-header{justify-content:flex-start;display:flex}.btn-add-note{background-color:var(--accent-color);color:#000;cursor:pointer;border:none;border-radius:8px;padding:.8rem 1.5rem;font-weight:600;transition:all .2s}.btn-add-note:hover{background-color:var(--accent-hover);transform:translateY(-2px)}.notes-list{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem;display:grid}.empty-state{color:var(--text-secondary);padding:2rem 0;font-style:italic}.note-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .3s;display:flex;position:relative;box-shadow:0 4px 6px #0000001a}.note-card.resolved{opacity:.6;border-color:#ffffff1a}.note-card.resolved:hover{opacity:1}.remove-note{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:1.5rem;transition:color .2s;position:absolute;top:8px;right:12px}.remove-note:hover{color:var(--danger-color)}.note-header-row{align-items:center;gap:1rem;margin-right:20px;display:flex}.note-input{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;outline:none;padding:.6rem;font-family:inherit;font-size:.9rem}.note-input:focus,.note-textarea:focus,.note-status:focus{border-color:var(--accent-color)}.student-name{flex:2;font-weight:600}.note-date{flex:1}.note-status{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:6px;outline:none;padding:.6rem;font-family:inherit;font-weight:600}.note-status option{background:var(--card-bg)}.note-textarea{background:var(--input-bg);border:1px solid var(--border-color);color:var(--text-primary);resize:vertical;border-radius:8px;outline:none;min-height:100px;padding:1rem;font-family:inherit;font-size:.95rem;line-height:1.5}.table-container{flex-direction:column;gap:1rem;width:100%;display:flex}.table-wrapper{border:1px solid var(--border-color);background-color:var(--card-bg);border-radius:8px;overflow-x:auto;box-shadow:0 4px 6px #0000001a}.excel-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.excel-table th{color:var(--text-secondary);border-bottom:2px solid var(--border-color);white-space:nowrap;background-color:#0003;padding:12px;font-weight:600}.excel-table td{border-bottom:1px solid var(--border-color);border-right:1px solid #ffffff0d;padding:0;position:relative}.excel-table td:last-child{border-right:none}.excel-table tbody tr:hover{background-color:#ffffff05}.disabled-cell{background-color:#0003}.disabled-cell .cell-input{color:var(--text-secondary);cursor:not-allowed;opacity:.5}.cell-input{width:100%;height:100%;color:var(--text-primary);background:0 0;border:none;outline:none;padding:12px;font-family:inherit;font-size:.9rem;transition:background-color .2s}.cell-input:focus{box-shadow:inset 0 0 0 2px var(--accent-color);background-color:#ffffff0d}.freq-select{width:100%;height:100%;color:var(--text-secondary);cursor:pointer;appearance:none;background:0 0;border:none;outline:none;padding:12px;font-family:inherit;font-size:.85rem;font-weight:500}.freq-select option{background-color:var(--card-bg);color:var(--text-primary)}.status-select{cursor:pointer;appearance:none;background:0 0;border:none;outline:none;width:100%;height:100%;padding:12px;font-family:inherit;font-size:.9rem;font-weight:600}.status-select.ativo{color:var(--accent-color)}.status-select.cobrar{color:#fbbf24}.status-select.inativo{color:var(--text-secondary)}.status-select.pendente{color:var(--danger-color)}.status-select:focus{box-shadow:inset 0 0 0 2px var(--accent-color)}.status-select option{background-color:var(--card-bg);color:var(--text-primary)}.action-col{width:70px;text-align:center!important}.action-buttons{justify-content:center;align-items:center;gap:4px;height:100%;padding:8px;display:flex}.btn-remove{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.5rem;transition:color .2s}.btn-remove:hover{color:var(--danger-color)}.btn-renew{cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.2rem;transition:transform .2s}.btn-renew:hover{transform:rotate(180deg)}.btn-add{background-color:var(--accent-color);color:#000;cursor:pointer;border:none;border-radius:6px;align-self:flex-start;padding:10px 16px;font-weight:600;transition:all .2s}.btn-add:hover{background-color:var(--accent-hover);transform:translateY(-1px)}.agenda-container{flex-direction:column;gap:2rem;width:100%;display:flex}.agenda-header{justify-content:flex-end;display:flex}.total-card{border:1px solid var(--accent-color);background:linear-gradient(135deg,#00d0841a,#00d0840d);border-radius:12px;flex-direction:column;align-items:flex-end;padding:1.5rem 2rem;display:flex;box-shadow:0 4px 12px #00d0841a}.total-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:.9rem;font-weight:600}.total-value{color:var(--accent-color);font-size:2.2rem;font-weight:700}.agenda-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:flex-start;gap:1rem;display:grid}.day-column{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.day-header{text-align:center;border-bottom:1px solid var(--border-color);color:var(--text-primary);background-color:#ffffff08;padding:1rem;font-weight:600}.day-cards{flex-direction:column;gap:1rem;padding:1rem;display:flex}.class-card{background-color:var(--input-bg);border:1px solid #ffffff0d;border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;transition:transform .2s;display:flex;position:relative;box-shadow:0 2px 4px #0003}.class-card:hover{border-color:#ffffff1a;transform:translateY(-2px)}.remove-card{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s;position:absolute;top:4px;right:8px}.remove-card:hover{color:var(--danger-color)}.card-input{border:none;border-bottom:1px solid var(--border-color);width:100%;color:var(--text-primary);background:0 0;outline:none;padding:4px 0;font-family:inherit;font-size:.9rem;transition:border-color .2s}.card-input:focus{border-bottom-color:var(--accent-color)}.time-input{color:var(--accent-color);width:80%;font-size:1.1rem;font-weight:700}.name-input{font-weight:500}.value-input{color:var(--text-secondary);font-size:.85rem}.add-card-btn{border:1px dashed var(--border-color);color:var(--text-secondary);cursor:pointer;background-color:#0000;border-radius:8px;padding:.8rem;font-weight:600;transition:all .2s}.add-card-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background-color:#00d0840d}.aim-english-container{flex-direction:column;gap:1.5rem;display:flex}.sub-tabs{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;gap:1rem;width:fit-content;padding:.5rem;display:flex}.sub-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1.5rem;font-weight:600;transition:all .2s}.sub-tab-btn:hover{color:var(--text-primary)}.sub-tab-btn.active{background-color:var(--accent-color);color:#000}.financas-container,.projetos-container{flex-direction:column;gap:1.5rem;display:flex}.dashboard-container{flex-direction:column;width:100%;display:flex}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.metric-card{border:1px solid var(--border-color);border-radius:12px;flex-direction:column;padding:2rem;transition:transform .2s;display:flex;box-shadow:0 4px 12px #00000026}.metric-card:hover{transform:translateY(-4px)}.fat-card{border-color:var(--accent-color);background:linear-gradient(135deg,#00d08426,#00d08405)}.div-card{border-color:var(--danger-color);background:linear-gradient(135deg,#ff4d4f26,#ff4d4f05)}.liq-card{background:linear-gradient(135deg,#3b82f626,#3b82f605);border-color:#3b82f6}.metric-title{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;margin-bottom:.5rem;font-size:.95rem;font-weight:700}.metric-value{color:#fff;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}.metric-desc{color:var(--text-secondary);font-size:.85rem;font-style:italic}.fat-card .metric-value{color:var(--accent-color)}.div-card .metric-value{color:var(--danger-color)}.login-container{background:var(--bg-color);justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex}.login-box{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:400px;padding:3rem;box-shadow:0 8px 24px #0003}.login-title{text-align:center;color:var(--text-primary);margin-bottom:.5rem;font-size:2rem}.login-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:2rem;font-size:.9rem}.login-form{flex-direction:column;gap:1.5rem;display:flex}.input-group{flex-direction:column;gap:.5rem;display:flex}.input-group label{color:var(--text-primary);font-size:.9rem;font-weight:500}.input-group input{border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-primary);border-radius:6px;padding:12px;font-size:1rem}.input-group input:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 2px #00d08433}.remember-me{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.remember-me input{accent-color:var(--accent-color);width:16px;height:16px}.btn-login{background:var(--accent-color);color:#000;cursor:pointer;border:none;border-radius:6px;margin-top:1rem;padding:12px;font-size:1rem;font-weight:700;transition:opacity .2s}.btn-login:hover{opacity:.9}.login-error{color:var(--danger-color);text-align:center;margin:0;font-size:.85rem}
