:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#f8fafc}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;background:radial-gradient(circle at top,rgba(56,189,248,.2),transparent 60%),#f8fafc}a{color:inherit;text-decoration:none}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.app-content{flex:1;padding:2rem}.card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 20px 40px -24px #0f172a73;border:1px solid rgba(15,23,42,.05)}.btn-primary{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;border:none;border-radius:12px;padding:.75rem 1.5rem;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 18px 24px -18px #0ea5e9cc}.input{width:100%;padding:.75rem 1rem;border-radius:12px;border:1px solid rgba(15,23,42,.1);background:#ffffffe6;margin-bottom:1rem}.grid{display:grid;gap:1.5rem}.grid-cols-2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.table{width:100%;border-collapse:collapse}.table thead{background:#0f172a;color:#fff}.table th,.table td{padding:.75rem 1rem;border-bottom:1px solid rgba(15,23,42,.1);text-align:left}.status-tag{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600}.status-tag.pago{background:#22c55e26;color:#166534}.status-tag.pendente{background:#facc1533;color:#854d0e}.status-tag.atrasado{background:#f8717133;color:#991b1b}.badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;background:#38bdf826;color:#0c4a6e;font-weight:500}@media (max-width: 768px){.app-content{padding:1rem}}.react-datepicker-wrapper{width:100%}.date-picker-wrapper .react-datepicker__input-container{position:relative}.date-picker-wrapper .react-datepicker__input-container input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border-radius:12px;border:1px solid rgba(15,23,42,.1);background:#ffffffe6;font-family:inherit;font-size:inherit;color:inherit;margin-bottom:0;cursor:pointer}.date-picker-wrapper .react-datepicker__input-container input:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf81a}.date-picker-error .react-datepicker__input-container input{border-color:#ef4444}.date-picker-error .react-datepicker__input-container input:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.react-datepicker{font-family:inherit;border-radius:12px;border:1px solid rgba(15,23,42,.1);box-shadow:0 20px 40px -24px #0f172a73;z-index:9999!important}.date-picker-popper,.react-datepicker-popper,.react-datepicker__portal{z-index:9999!important}.react-datepicker__header{background:linear-gradient(135deg,#38bdf8,#0ea5e9);border-bottom:none;border-radius:12px 12px 0 0;padding-top:.75rem}.react-datepicker__current-month{color:#fff;font-weight:600;padding-bottom:.5rem}.react-datepicker__day-name{color:#ffffffe6;font-weight:600}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background:linear-gradient(135deg,#38bdf8,#0ea5e9);border-radius:8px}.react-datepicker__day:hover{border-radius:8px;background:#38bdf833}.react-datepicker__day--today{font-weight:600;border:2px solid #38bdf8;border-radius:8px}.react-datepicker__navigation{top:1rem}.react-datepicker__navigation-icon:before{border-color:#fff}.react-datepicker__month-dropdown,.react-datepicker__year-dropdown{background:#fff;border-radius:8px;border:1px solid rgba(15,23,42,.1)}.react-datepicker__month-option:hover,.react-datepicker__year-option:hover{background:#38bdf81a}.app-shell aside nav a{text-decoration:none;padding:.5rem 1rem;border-radius:8px;transition:all .2s ease;display:block}.app-shell aside nav a:not(.active):hover{background-color:#38bdf826!important;color:#fff!important}.aluno-header nav a{text-decoration:none;padding:.5rem 1rem;border-radius:8px;transition:all .2s ease}.aluno-header nav a:not(.active):hover{background-color:#ffffff26!important;color:#fff!important}
