*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{min-height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f4f5f7;color:#111827}button,input,textarea,select{font:inherit;line-height:1.35;letter-spacing:normal}button,input,textarea,select,option{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.contract-modal__header h2,.student-modal__header h2,.class-modal__header h2,.customer-modal__header h2,.lesson-editor__header h2,.teacher-modal__header h2,.class-students-modal__header h2,.recurrence-modal__header h2{line-height:1.15;overflow-wrap:anywhere}.contract-modal__grid label,.contract-modal__section label,.student-modal__grid label,.student-modal__section label,.class-modal__form label,.customer-modal__grid label,.teacher-modal__form label,.lesson-editor__grid label,.lesson-editor__students-add label{min-width:0}.contract-modal__grid span,.contract-modal__section span,.student-modal__grid span,.student-modal__section span,.class-modal__form span,.customer-modal__grid span,.teacher-modal__form span,.lesson-editor__grid span,.lesson-editor__students-add span{line-height:1.35;overflow-wrap:anywhere}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px}.login-card{width:100%;max-width:440px;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.65);border-radius:24px;padding:40px 32px 28px;box-shadow:0 20px 50px #0f172a1a,0 8px 24px #0f172a0f}.login-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:32px}.login-logo{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#5856eb,#6a5cff);display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 12px 24px #5856eb47}.login-logo img{width:34px;height:34px;display:block;filter:brightness(0) invert(1)}.login-title{font-size:2.1rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#111827;margin-bottom:8px}.login-subtitle{font-size:.98rem;color:#6b7280;line-height:1.5;max-width:280px}.login-form{display:flex;flex-direction:column}.login-error{margin:4px 0 0;font-size:.9rem;color:#dc2626;font-weight:500}.login-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.form-group{margin-bottom:18px}.form-label{display:inline-block;margin-bottom:8px;font-size:.92rem;font-weight:600;color:#111827}.form-input{width:100%;height:48px;border:1px solid #d7dce5;border-radius:12px;padding:0 15px;font-size:.95rem;color:#111827;background:#f9fafb;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.form-input::placeholder{color:#9ca3af}.form-input:focus{background:#fff;border-color:#6763ff;box-shadow:0 0 0 4px #6763ff1f}.login-button{width:100%;height:50px;border:none;border-radius:12px;margin-top:6px;background:linear-gradient(180deg,#0b0b2d,#05051f);color:#fff;font-size:1rem;font-weight:700;letter-spacing:-.01em;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease;box-shadow:0 12px 22px #05051f38}.login-button:hover{transform:translateY(-1px);opacity:.98}.login-button:active{transform:translateY(0)}.login-helper{text-align:center;margin-top:18px}.login-helper-text{border:none;background:transparent;color:#4b5563;font-size:.92rem;font-weight:600;cursor:pointer}.login-helper-text:hover{color:#111827}@media(max-width:768px){.login-page{padding:24px 16px}.login-card{max-width:100%;padding:32px 24px 24px;border-radius:22px}.login-title{font-size:1.95rem}}@media(max-width:480px){body{background:#fff}.login-page{padding:20px 16px;align-items:center;justify-content:center}.login-card{max-width:100%;padding:20px 0 8px;border:none;border-radius:0;box-shadow:none;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.login-header{margin-bottom:28px}.login-logo{width:68px;height:68px;margin-bottom:16px;font-size:28px}.login-title{font-size:1.9rem}.login-subtitle{font-size:.96rem}.form-group{margin-bottom:16px}.form-input,.login-button{height:48px}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px}.auth-card{width:100%;max-width:440px;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.65);border-radius:24px;padding:40px 32px 28px;box-shadow:0 20px 50px #0f172a1a,0 8px 24px #0f172a0f}.auth-header{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:32px}.auth-logo{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#5856eb,#6a5cff);display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 12px 24px #5856eb47;font-size:30px}.auth-title{font-size:2.1rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#111827;margin-bottom:8px}.auth-subtitle{font-size:.98rem;color:#6b7280;line-height:1.5;max-width:300px}.auth-form{display:flex;flex-direction:column}.auth-button{width:100%;height:50px;border:none;border-radius:12px;margin-top:6px;background:linear-gradient(180deg,#0b0b2d,#05051f);color:#fff;font-size:1rem;font-weight:700;letter-spacing:-.01em;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease;box-shadow:0 12px 22px #05051f38}.auth-button:hover{transform:translateY(-1px);opacity:.98}.auth-button:active{transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.auth-error{margin:4px 0 12px;font-size:.9rem;color:#dc2626;font-weight:500}.auth-success{margin:4px 0 12px;font-size:.9rem;color:#15803d;font-weight:500}.auth-helper{text-align:center;margin-top:18px}.auth-helper-text{border:none;background:transparent;color:#4b5563;font-size:.92rem;font-weight:600;cursor:pointer}.auth-helper-text:hover{color:#111827}@media(max-width:768px){.auth-page{padding:24px 16px}.auth-card{max-width:100%;padding:32px 24px 24px;border-radius:22px}.auth-title{font-size:1.95rem}}@media(max-width:480px){.auth-page{padding:20px 16px;align-items:center;justify-content:center}.auth-card{max-width:100%;padding:20px 0 8px;border:none;border-radius:0;box-shadow:none;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.auth-header{margin-bottom:28px}.auth-logo{width:68px;height:68px;margin-bottom:16px;font-size:28px}.auth-title{font-size:1.9rem}.auth-subtitle{font-size:.96rem}.auth-button{height:48px}.form-group{margin-bottom:18px}.form-label{display:inline-block;margin-bottom:8px;font-size:.92rem;font-weight:600;color:#111827}.form-input{width:100%;height:48px;border:1px solid #d7dce5;border-radius:12px;padding:0 15px;font-size:.95rem;color:#111827;background:#f9fafb;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.form-input::placeholder{color:#9ca3af}.form-input:focus{background:#fff;border-color:#6763ff;box-shadow:0 0 0 4px #6763ff1f}}.gestao-shell{min-height:100vh;display:flex;background:#f4f5f7;color:#111827}.gestao-shell__sidebar{position:sticky;top:0;height:100vh;width:280px;flex-shrink:0;display:flex;flex-direction:column;background:#fff;border-right:1px solid #e5e7eb;transition:width .22s ease,transform .22s ease;z-index:20}.gestao-shell__sidebar.is-collapsed{width:88px}.gestao-shell__brand{display:flex;align-items:center;gap:14px;padding:22px 20px;border-bottom:1px solid #eef0f3}.gestao-shell__brand-badge{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#5b4dff,#4f46e5);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 20px #4f46e538}.gestao-shell__brand-badge img{width:24px;height:24px;filter:brightness(0) invert(1)}.gestao-shell__brand-text{display:flex;flex-direction:column;min-width:0}.gestao-shell__brand-text strong{font-size:1.05rem;font-weight:700;color:#111827}.gestao-shell__brand-text span{font-size:.92rem;color:#6b7280}.gestao-shell__menu{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:6px}.gestao-shell__bottom{padding:12px;border-top:1px solid #eef0f3}.gestao-shell__menu-item{width:100%;min-height:48px;border:0;border-radius:14px;background:transparent;display:flex;align-items:center;gap:14px;padding:0 14px;font-size:1rem;font-weight:600;color:#1f2937;cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .18s ease}.gestao-shell__menu-item:hover{background:#f3f4f6}.gestao-shell__menu-item.is-active{background:#ecebff;color:#4f46e5}.gestao-shell__menu-item--danger{color:#dc2626}.gestao-shell__menu-item img{width:22px;height:22px;flex-shrink:0}.gestao-shell__menu-item.is-disabled{opacity:.42;cursor:not-allowed;pointer-events:none}.gestao-shell__menu-item.is-disabled:hover{background:transparent}.gestao-shell__main{min-width:0;flex:1;display:flex;flex-direction:column}.gestao-shell__header{height:88px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;padding:0 28px}.gestao-shell__header-left{display:flex;align-items:center;gap:18px}.gestao-shell__header h1{font-size:2rem;font-weight:700;letter-spacing:-.03em}.gestao-shell__icon-button{width:44px;height:44px;border:0;border-radius:12px;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gestao-shell__icon-button:hover{background:#f3f4f6}.gestao-shell__icon-button img{width:24px;height:24px}.gestao-shell__icon-button--mobile{display:none}.gestao-shell__content{padding:28px}.gestao-shell__overlay{display:none}@media(max-width:992px){.gestao-shell__sidebar{position:fixed;left:0;transform:translate(-100%);width:280px;box-shadow:0 18px 36px #0f172a2e}.gestao-shell__sidebar.is-mobile-open{transform:translate(0)}.gestao-shell__icon-button--mobile{display:inline-flex}.gestao-shell__icon-button--desktop{display:none}.gestao-shell__overlay{display:block;position:fixed;inset:0;border:0;background:#11182759;z-index:10}}@media(max-width:768px){.gestao-shell__header{height:82px;padding:0 20px}.gestao-shell__header h1{font-size:1.8rem}.gestao-shell__content{padding:20px}}.stat-card{min-height:164px;background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:28px 28px 24px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 18px 40px #0f172a0a}.stat-card--blue{border-color:#dbe8ff}.stat-card--green{border-color:#d7f3de}.stat-card--red{border-color:#ffd7de}.stat-card--yellow{border-color:#f7e7b4}.stat-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.stat-card__top h2{font-size:1.1rem;font-weight:600;color:#111827}.stat-card__icon-badge{width:54px;height:54px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card__icon-badge img{width:24px;height:24px}.stat-card__icon-badge--blue{background:#dfe9ff}.stat-card__icon-badge--blue img{filter:invert(28%) sepia(96%) saturate(1168%) hue-rotate(211deg) brightness(94%) contrast(94%)}.stat-card__icon-badge--green{background:#dffbe8}.stat-card__icon-badge--green img{filter:invert(46%) sepia(57%) saturate(781%) hue-rotate(95deg) brightness(95%) contrast(89%)}.stat-card__icon-badge--red{background:#ffe0e4}.stat-card__icon-badge--red img{filter:invert(24%) sepia(84%) saturate(5070%) hue-rotate(339deg) brightness(100%) contrast(84%)}.stat-card__icon-badge--yellow{background:#fff1b8}.stat-card__icon-badge--yellow img{filter:invert(67%) sepia(99%) saturate(1164%) hue-rotate(360deg) brightness(100%) contrast(92%)}.stat-card__content{display:flex;flex-direction:column;gap:8px}.stat-card__content strong{font-size:3rem;line-height:1;font-weight:500;letter-spacing:-.04em;color:#111827}.stat-card__detail{font-size:.98rem;color:#667085}.stat-card__detail.is-positive{color:#16a34a}.stat-card__detail.is-negative{color:#dc2626}.stat-card__secondary-detail{font-size:.92rem;color:#64748b}.stat-card__action{margin-top:18px;align-self:flex-start;min-height:40px;border:1px solid #d7dfef;border-radius:999px;background:#fff;color:#111827;padding:0 14px;display:inline-flex;align-items:center;gap:8px;font-size:.92rem;font-weight:700;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}.stat-card__action img{width:16px;height:16px}.stat-card__action:hover{transform:translateY(-1px)}.stat-card__action--blue:hover{border-color:#bfd2ff;background:#f4f8ff}.stat-card__action--green:hover{border-color:#bfe6cb;background:#f2fcf5}.stat-card__action--red:hover{border-color:#ffc2cf;background:#fff5f7}.stat-card__action--yellow:hover{border-color:#efd57f;background:#fffbef}@media(max-width:768px){.stat-card{min-height:150px;padding:24px 22px 22px;border-radius:22px}.stat-card__content strong{font-size:2.6rem}}.gestao-home{display:flex;flex-direction:column;gap:24px}.gestao-home__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.gestao-home__chart-card,.gestao-home__details-card{background:#fff;border:1px solid #e8edf6;border-radius:24px;box-shadow:0 18px 40px #0f172a0a}.gestao-home__chart-card{padding:24px}.gestao-home__chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.gestao-home__chart-header h2,.gestao-home__details-header h2{margin:0;font-size:1.45rem;font-weight:700;color:#111827}.gestao-home__chart-header p{margin:8px 0 0;color:#60708f}.gestao-home__range-switcher{display:flex;flex-wrap:wrap;gap:10px}.gestao-home__range-switcher button{min-height:42px;padding:0 16px;border-radius:999px;border:1px solid #d7deeb;background:#fff;color:#111827;font-size:.92rem;font-weight:700;cursor:pointer;transition:all .2s ease}.gestao-home__range-switcher button.is-active{background:#050824;border-color:#050824;color:#fff}.gestao-home__chart-summary{margin-top:22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gestao-home__chart-summary-item{border:1px solid #eef2f7;border-radius:18px;background:#fbfcff;padding:16px 18px;display:flex;align-items:center;gap:14px}.gestao-home__chart-summary-item strong{display:block;font-size:1.75rem;line-height:1;color:#111827}.gestao-home__chart-summary-item p{margin:8px 0 0;color:#60708f}.gestao-home__legend-dot{width:14px;height:14px;border-radius:999px;flex-shrink:0}.gestao-home__legend-dot.is-blue{background:#3b82f6}.gestao-home__legend-dot.is-green{background:#22c55e}.gestao-home__legend-dot.is-red{background:#ef4444}.gestao-home__chart-area{margin-top:22px}.gestao-home__chart-grid{position:relative;height:320px;border-radius:22px;background:linear-gradient(180deg,#f3f7fff2,#fffffffa);border:1px solid #edf2fa;overflow:hidden}.gestao-home__chart-grid-line{position:absolute;left:0;right:0;height:1px;background:#e9eef8}.gestao-home__chart-grid-line:nth-child(1){top:20%}.gestao-home__chart-grid-line:nth-child(2){top:40%}.gestao-home__chart-grid-line:nth-child(3){top:60%}.gestao-home__chart-grid-line:nth-child(4){top:80%}.gestao-home__chart-svg{position:absolute;inset:24px 20px 28px;width:calc(100% - 40px);height:calc(100% - 52px)}.gestao-home__chart-points{position:absolute;inset:24px 20px 28px}.gestao-home__chart-point{position:absolute;width:12px;height:12px;border-radius:999px;border:2px solid #ffffff;box-shadow:0 0 0 1px #0f172a14;transform:translate(-50%,-50%);pointer-events:auto;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.gestao-home__chart-point--blue{background:#3b82f6}.gestao-home__chart-point--green{background:#22c55e}.gestao-home__chart-point--red{background:#ef4444}.gestao-home__chart-point:hover{transform:translate(-50%,-50%) scale(1.15);opacity:.9;box-shadow:0 0 0 4px #ffffff8c}.gestao-home__chart-tooltip{position:absolute;min-width:132px;padding:10px 12px;border-radius:14px;background:#050824f0;color:#fff;box-shadow:0 18px 32px #0f172a38;transform:translate(-50%,calc(-100% - 14px));pointer-events:none;z-index:3}.gestao-home__chart-tooltip[data-placement=bottom]{transform:translate(-50%,14px)}.gestao-home__chart-tooltip strong{display:block;font-size:.82rem;font-weight:700}.gestao-home__chart-tooltip span{display:block;margin-top:4px;font-size:1rem;font-weight:700}.gestao-home__chart-tooltip small{display:block;margin-top:4px;font-size:.78rem;color:#d6def2}.gestao-home__chart-labels{margin-top:14px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}.gestao-home__chart-labels span{text-align:center;color:#60708f;font-size:.9rem;font-weight:600}.gestao-home__chart-placeholder,.gestao-home__details-placeholder,.gestao-home__empty{color:#667085}.gestao-home__chart-placeholder{margin-top:22px;min-height:240px;display:flex;align-items:center;justify-content:center;border:1px dashed #d7deeb;border-radius:22px;background:#fbfcff}.gestao-home__details-card{padding:22px;min-height:420px}.gestao-home__details-header{margin-bottom:18px}.gestao-home__table-wrapper{overflow-x:auto}.gestao-home__table{width:100%;min-width:760px;border-collapse:collapse}.gestao-home__table thead th{text-align:left;padding:16px 10px;font-size:.98rem;font-weight:700;color:#111827;border-bottom:1px solid #e5e7eb}.gestao-home__table tbody td{padding:16px 10px;font-size:.98rem;color:#111827;border-bottom:1px solid #eef2f6}.gestao-home__open-groups{display:grid;gap:18px}.gestao-home__subtable-card{border:1px solid #e5e7eb;border-radius:20px;padding:18px;background:#f9fbff}.gestao-home__subtable-header{margin-bottom:14px}.gestao-home__subtable-header h3{font-size:1.12rem;font-weight:700;color:#111827}@media(max-width:1200px){.gestao-home__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gestao-home__chart-summary{grid-template-columns:1fr}}@media(max-width:768px){.gestao-home{gap:20px}.gestao-home__stats{grid-template-columns:1fr;gap:16px}.gestao-home__chart-card,.gestao-home__details-card{padding:20px}.gestao-home__chart-header{flex-direction:column}.gestao-home__chart-grid{height:260px}.gestao-home__chart-labels{grid-template-columns:repeat(2,minmax(0,1fr))}}.professor-modal__backdrop{position:fixed;inset:0;background:#1118276b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.professor-modal{width:100%;max-width:760px;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0f172a38}.professor-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.professor-modal__header h2{font-size:1.4rem;font-weight:700;color:#111827}.professor-modal__header button{border:0;background:transparent;font-size:1.8rem;line-height:1;cursor:pointer;color:#6b7280}.professor-modal__form{display:grid;gap:18px}.professor-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.professor-modal__form label{display:grid;gap:8px}.professor-modal__form span{font-size:.95rem;font-weight:600;color:#374151}.professor-modal__form label.is-invalid span{color:#b91c1c}.professor-modal__form input{height:48px;border:1px solid #d1d5db;border-radius:14px;padding:0 14px;font-size:1rem;outline:none;background:#fff}.professor-modal__form label.is-invalid input{border-color:#fca5a5;background:#fff5f5}.professor-modal__form input:focus{border-color:#4f46e5}.professor-modal__full{grid-column:1 / -1}.professor-modal__actions{display:flex;justify-content:flex-end;gap:12px}.professor-modal__button{height:46px;border-radius:14px;border:0;padding:0 18px;font-weight:700;cursor:pointer}.professor-modal__button--secondary{background:#eef2f7;color:#111827}.professor-modal__button--primary{background:#0b0f2f;color:#fff}.professor-modal__button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:640px){.professor-modal{padding:20px;border-radius:20px}.professor-modal__grid{grid-template-columns:1fr}}.gestao-professores{display:flex;flex-direction:column;gap:24px}.gestao-professores__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.gestao-professores__header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.gestao-professores__header h2{font-size:2rem;line-height:1.1;font-weight:700;color:#111827}.gestao-professores__header p{margin-top:6px;font-size:1.05rem;color:#667085}.gestao-professores__create-button{height:52px;border:0;border-radius:14px;background:#030722;color:#fff;padding:0 18px;display:inline-flex;align-items:center;gap:10px;font-weight:700;cursor:pointer}.gestao-professores__create-button span{font-size:1.1rem}.gestao-professores__create-button img{width:18px;height:18px}.gestao-professores__create-button--secondary{background:#fff;color:#111827;border:1px solid #d1d5db}.gestao-professores__create-button--ghost{background:#eef2f7;color:#111827;border:1px solid #d1d5db}.gestao-professores__search-card,.gestao-professores__table-card{background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:22px}.gestao-professores__search-card input{width:100%;height:58px;border:2px solid #d1d5db;border-radius:16px;padding:0 18px;font-size:1rem;outline:none}.gestao-professores__search-card input:focus{border-color:#4f46e5}.gestao-professores__table-header{margin-bottom:18px}.gestao-professores__table-header h3{font-size:1.5rem;font-weight:700;color:#111827}.gestao-professores__table-wrapper{overflow-x:auto}.gestao-professores__table{width:100%;border-collapse:collapse;min-width:980px}.gestao-professores__table thead th{text-align:left;padding:16px 10px;font-size:1rem;font-weight:700;color:#111827;border-bottom:1px solid #e5e7eb}.gestao-professores__table tbody td{padding:16px 10px;font-size:1rem;color:#111827;border-bottom:1px solid #eef2f6}.gestao-professores__classes{display:inline-flex;align-items:center;gap:8px}.gestao-professores__classes img{width:18px;height:18px;opacity:.75}.gestao-professores__status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;background:#030722;color:#fff;font-size:.9rem;font-weight:700;text-transform:lowercase}.gestao-professores__status.is-inactive{background:#eef2f7;color:#475569}.gestao-professores__actions{display:inline-flex;align-items:center;gap:12px}.gestao-professores__actions button{width:34px;height:34px;border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gestao-professores__actions button img{width:18px;height:18px}.gestao-professores__trash-icon{filter:brightness(0) saturate(100%) invert(22%) sepia(88%) saturate(2953%) hue-rotate(346deg) brightness(94%) contrast(100%)}.gestao-professores__actions button.is-danger img{filter:hue-rotate(320deg) saturate(4)}.gestao-professores__empty{text-align:center;padding:28px 12px;color:#667085}.gestao-professores__table--admins{min-width:820px}@media(max-width:992px){.gestao-professores__header{flex-direction:column;align-items:stretch}.gestao-professores__header-actions{width:100%}.gestao-professores__create-button{width:100%;justify-content:center}}.class-modal__backdrop{position:fixed;inset:0;background:#1118276b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.class-modal{width:100%;max-width:760px;max-height:calc(100vh - 40px);overflow-y:auto;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0f172a38}.class-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.class-modal__header h2{font-size:1.4rem;font-weight:700;color:#111827}.class-modal__header button{border:0;background:transparent;font-size:1.8rem;line-height:1;cursor:pointer;color:#6b7280}.class-modal__form{display:grid;gap:18px}.class-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.class-modal__form label{display:grid;gap:8px;min-width:0}.class-modal__form span{font-size:.95rem;font-weight:600;color:#374151;line-height:1.35}.class-modal__form label.is-invalid span,.class-modal__recurrence-card.is-invalid>.class-modal__recurrence-header span{color:#b91c1c}.class-modal__form input,.class-modal__form select{border:1px solid #d1d5db;border-radius:14px;padding:12px 14px;font-size:1rem;line-height:1.4;outline:none;background:#fff;min-width:0}.class-modal__form label.is-invalid input,.class-modal__form label.is-invalid select{border-color:#fca5a5;background:#fff5f5}.class-modal__form input,.class-modal__form select{min-height:48px}.class-modal__form select{padding-right:42px}.class-modal__form input:focus,.class-modal__form select:focus{border-color:#4f46e5}.class-modal__full{grid-column:1 / -1}.class-modal__recurrence-card{display:grid;gap:18px;border:1px solid #dbe3f1;border-radius:18px;padding:18px;background:#f8fafc}.class-modal__recurrence-card.is-invalid{border-color:#fca5a5;background:#fff7f7}.class-modal__recurrence-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.class-modal__recurrence-summary-wrap{margin-top:8px;min-height:30px;display:flex;align-items:flex-start}.class-modal__recurrence-summary{display:block;color:#475569;font-size:1rem;line-height:1.65;padding:3px 0 4px;overflow-wrap:anywhere;word-break:normal}.class-modal__recurrence-summary.is-placeholder{color:#64748b}.class-modal__recurrence-summary-segment,.class-modal__recurrence-summary-separator{display:inline}.class-modal__single-lesson-card{display:grid;gap:16px;border-top:1px solid #dbe3f1;padding-top:18px}.class-modal__single-lesson-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.class-modal__single-lesson-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.class-modal__single-lesson-feedback{margin:0;color:#475569;font-size:.95rem}.class-modal__lesson-list{display:grid;gap:10px}.class-modal__lesson-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid #dbe3f1;border-radius:14px;background:#fff}.class-modal__lesson-main{display:grid;gap:4px}.class-modal__lesson-main strong{color:#0f172a}.class-modal__lesson-main span{color:#64748b;font-size:.94rem}.class-modal__lesson-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.class-modal__lesson-status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;background:#dbeafe;color:#475569;font-size:.92rem;font-weight:700;text-transform:capitalize}.class-modal__lesson-status.is-pending{background:#dbeafe;color:#1d4ed8}.class-modal__lesson-status.is-completed{background:#dcfce7;color:#15803d}.class-modal__lesson-status.is-overdue,.class-modal__lesson-status.is-cancelled{background:#fee2e2;color:#dc2626}.class-modal__lesson-status.is-reschedule-pending{background:#fef3c7;color:#b45309}.class-modal__lesson-status.is-rescheduled{background:#bfdbfe;color:#1d4ed8}.class-modal__lesson-status.is-compensated{background:#fef9c3;color:#a16207}.class-modal__lesson-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dbe3f1;border-radius:12px;background:#fff;cursor:pointer}.class-modal__lesson-icon img{width:17px;height:17px}.class-modal__lesson-icon.is-danger{border-color:#fecaca;background:#fff5f5}.class-modal__lesson-editor{display:grid;gap:16px;border:1px solid #dbe3f1;border-radius:16px;padding:16px;background:#fff}.class-modal__lesson-editor-buttons{display:flex;align-items:center;justify-content:flex-end;gap:10px}.class-modal__weekday-list{display:flex;gap:8px;flex-wrap:wrap}.class-modal__weekday-list.is-invalid{padding:10px;border:1px solid #fca5a5;border-radius:16px;background:#fff5f5}.class-modal__weekday{width:38px;height:38px;border-radius:999px;border:0;background:#e5e7eb;color:#475569;font-weight:700;cursor:pointer}.class-modal__weekday.is-active{background:#0b0f2f;color:#fff}.class-modal__recurrence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.class-modal__error{color:#b91c1c;font-size:.95rem}.class-modal__actions{display:flex;justify-content:flex-end;gap:12px}.class-modal__button{height:46px;border-radius:14px;border:0;padding:0 18px;font-weight:700;cursor:pointer}.class-modal__button--secondary{background:#eef2f7;color:#111827}.class-modal__button--primary{background:#0b0f2f;color:#fff}.class-modal__button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:640px){.class-modal{padding:20px;border-radius:20px}.class-modal__grid,.class-modal__recurrence-grid{grid-template-columns:1fr}.class-modal__lesson-row{align-items:flex-start;flex-direction:column}.class-modal__lesson-side{width:100%;justify-content:flex-end}.class-modal__lesson-editor-buttons{width:100%;flex-direction:column}}.class-students-modal__backdrop{position:fixed;inset:0;background:#1118276b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.class-students-modal{width:100%;max-width:640px;max-height:min(760px,calc(100vh - 40px));overflow:hidden;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0f172a38;display:grid;gap:20px}.class-students-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.class-students-modal__header h2{font-size:1.35rem;color:#111827}.class-students-modal__header p{margin-top:8px;color:#64748b}.class-students-modal__header button{border:0;background:transparent;font-size:1.8rem;color:#6b7280;cursor:pointer}.class-students-modal__form{display:grid;gap:18px}.class-students-modal__search{display:grid;gap:8px}.class-students-modal__search span{font-size:.95rem;font-weight:600;color:#374151}.class-students-modal__search input{height:48px;border:1px solid #d1d5db;border-radius:14px;padding:0 14px;font-size:1rem;background:#fff}.class-students-modal__summary{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:10px 14px;border-radius:999px;background:#eef2ff;color:#312e81}.class-students-modal__list{min-height:240px;max-height:360px;overflow-y:auto;display:grid;gap:10px;padding-right:4px}.class-students-modal__list label{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;cursor:pointer}.class-students-modal__list label.is-selected{border-color:#c7d2fe;background:#eef2ff}.class-students-modal__list label div{display:grid;gap:4px}.class-students-modal__list label strong{color:#0f172a}.class-students-modal__list label span{color:#64748b;font-size:.92rem}.class-students-modal__list input{width:18px;height:18px;accent-color:#0b0f2f}.class-students-modal__empty{color:#64748b;padding:8px 2px}.class-students-modal__actions{display:flex;justify-content:flex-end;gap:12px}.class-students-modal__secondary,.class-students-modal__primary{height:46px;border-radius:14px;border:0;padding:0 18px;font-weight:700;cursor:pointer}.class-students-modal__secondary{background:#eef2f7;color:#111827}.class-students-modal__primary{background:#0b0f2f;color:#fff}@media(max-width:640px){.class-students-modal{padding:20px}.class-students-modal__actions{flex-direction:column-reverse}.class-students-modal__secondary,.class-students-modal__primary{width:100%}}.teacher-modal__backdrop{position:fixed;inset:0;background:#1118276b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.teacher-modal{width:100%;max-width:520px;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0f172a38}.teacher-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.teacher-modal__header h2{font-size:1.35rem;color:#111827}.teacher-modal__header button{border:0;background:transparent;font-size:1.8rem;color:#6b7280;cursor:pointer}.teacher-modal__subtitle{margin-top:8px;color:#64748b}.teacher-modal__form{display:grid;gap:18px;margin-top:22px}.teacher-modal__form label{display:grid;gap:8px}.teacher-modal__form span{font-size:.95rem;font-weight:600;color:#374151}.teacher-modal__form select{height:48px;border:1px solid #d1d5db;border-radius:14px;padding:0 14px;font-size:1rem;background:#fff}.teacher-modal__actions{display:flex;justify-content:flex-end;gap:12px}.teacher-modal__secondary,.teacher-modal__primary{height:46px;border-radius:14px;border:0;padding:0 18px;font-weight:700;cursor:pointer}.teacher-modal__secondary{background:#eef2f7;color:#111827}.teacher-modal__primary{background:#0b0f2f;color:#fff}.lesson-editor__backdrop{position:fixed;inset:0;background:#0f172a6b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1100}.lesson-editor{width:100%;max-width:860px;max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0f172a38}.lesson-editor__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.lesson-editor__header h2{font-size:1.4rem;font-weight:700;color:#111827}.lesson-editor__header button{border:0;background:transparent;font-size:1.8rem;color:#6b7280;cursor:pointer}.lesson-editor__form{display:grid;gap:18px}.lesson-editor__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lesson-editor__grid label,.lesson-editor__students-card{display:grid;gap:8px}.lesson-editor__grid span,.lesson-editor__students-card h3{font-size:.95rem;font-weight:700;color:#374151}.lesson-editor__students-card p{color:#64748b;font-size:.94rem}.lesson-editor__grid input,.lesson-editor__grid select,.lesson-editor__students-add select,.lesson-editor__grid textarea{border:1px solid #d1d5db;border-radius:14px;padding:12px 14px;font-size:1rem;outline:none;background:#fff;font-family:inherit}.lesson-editor__grid input,.lesson-editor__grid select,.lesson-editor__students-add select{height:48px}.lesson-editor__grid textarea{min-height:92px;resize:vertical}.lesson-editor__grid input:focus,.lesson-editor__grid select:focus,.lesson-editor__students-add select:focus,.lesson-editor__grid textarea:focus{border-color:#4f46e5}.lesson-editor__full{grid-column:1 / -1}.lesson-editor__students-card{border:1px solid #dbe3f1;border-radius:18px;padding:18px;background:#f8fafc}.lesson-editor__students-add{display:flex;align-items:center;gap:12px}.lesson-editor__students-add select{flex:1}.lesson-editor__students-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.lesson-editor__students-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dbe3f1;border-radius:14px;background:#fff}.lesson-editor__students-list li div{display:grid;gap:4px}.lesson-editor__students-list li span{color:#64748b;font-size:.92rem;text-transform:capitalize}.lesson-editor__student-remove{width:36px;height:36px;border:1px solid #fecaca;border-radius:12px;background:#fff5f5;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.lesson-editor__student-remove img{width:16px;height:16px}.lesson-editor__helper,.lesson-editor__feedback{margin:0;font-size:.94rem}.lesson-editor__helper{color:#64748b}.lesson-editor__feedback{font-weight:600}.lesson-editor__feedback.is-success{color:#15803d}.lesson-editor__feedback.is-error{color:#dc2626}.lesson-editor__actions{display:flex;justify-content:flex-end;gap:12px}.lesson-editor__button{height:46px;border-radius:14px;border:0;padding:0 18px;font-weight:700;cursor:pointer}.lesson-editor__button--secondary{background:#eef2f7;color:#111827}.lesson-editor__button--primary{background:#0b0f2f;color:#fff}.lesson-editor__button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:720px){.lesson-editor__grid{grid-template-columns:1fr}.lesson-editor__students-add,.lesson-editor__actions{flex-direction:column}.lesson-editor__button{width:100%}}.gestao-professores td button{width:34px;height:34px;border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gestao-professores td button img{width:18px;height:18px}.gestao-turmas__students-cell{display:inline-flex;align-items:center;gap:8px}.gestao-turmas__students-count{min-width:24px;font-size:.95rem;font-weight:700;color:#334155}.gestao-turmas__lesson-summary{display:grid;gap:2px}.gestao-turmas__lesson-summary strong{color:#0f172a;font-size:1rem}.gestao-turmas__lesson-summary span{color:#64748b;font-size:.88rem;white-space:nowrap}.gestao-turmas__feedback{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid #c7d2fe;border-radius:18px;background:#eef2ff;color:#312e81}.gestao-turmas__feedback p{font-weight:600}.gestao-turmas__feedback button{border:0;background:transparent;color:#312e81;font-size:1.4rem;cursor:pointer}.gestao-turmas__order-select{height:46px;border:1px solid #dbe4ee;border-radius:14px;padding:0 14px;background:#fff;color:#0f172a;font-size:.95rem}.gestao-turmas__row.is-expanded{background:#f8fbff}.gestao-turmas__details-row td{padding:0 0 20px;border-bottom:1px solid #eef2f6}.gestao-turmas__details-card{margin:0 12px;padding:20px;border:1px solid #dbe7f3;border-radius:20px;background:linear-gradient(180deg,#fbfdff,#f3f7fb);display:grid;gap:20px}.gestao-turmas__detail-block{display:grid;gap:10px}.gestao-turmas__detail-block h4{font-size:1rem;font-weight:700;color:#0f172a}.gestao-turmas__detail-block p{color:#64748b}.gestao-turmas__detail-block ul{list-style:none;padding:0;margin:0}.gestao-turmas__detail-list{display:grid;gap:10px}.gestao-turmas__detail-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #e2e8f0}.gestao-turmas__detail-list li span{color:#64748b;font-size:.94rem}.gestao-turmas__lesson-main{display:grid;gap:4px}.gestao-turmas__lesson-main strong{color:#0f172a}.gestao-turmas__lesson-main span{color:#64748b;font-size:.98rem}.gestao-turmas__lesson-side{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;justify-content:flex-end;flex-shrink:0;margin-left:auto;padding-left:16px}.gestao-turmas__status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.88rem;font-weight:700;text-transform:capitalize}.gestao-turmas__status-pill.is-pending{background:#dbeafe;color:#1d4ed8}.gestao-turmas__status-pill.is-completed{background:#dcfce7;color:#15803d}.gestao-turmas__status-pill.is-overdue,.gestao-turmas__status-pill.is-cancelled{background:#fee2e2;color:#dc2626}.gestao-turmas__status-pill.is-reschedule-pending{background:#fef3c7;color:#b45309}.gestao-turmas__status-pill.is-rescheduled{background:#bfdbfe;color:#1d4ed8}.gestao-turmas__status-pill.is-compensated{background:#fef9c3;color:#a16207}.gestao-turmas__lesson-action{width:36px;height:36px;border:1px solid #dbe3f1;border-radius:12px;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.gestao-turmas__lesson-action img{width:16px;height:16px}.gestao-turmas__lesson-action:hover{transform:translateY(-1px);border-color:#cbd5e1;box-shadow:0 10px 24px #0f172a14}.gestao-turmas__lesson-action.is-danger{border-color:#fecaca;background:#fff5f5}.gestao-turmas__lesson-action.is-danger:hover{border-color:#fca5a5;box-shadow:0 10px 24px #dc262614}.student-modal__backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;padding:24px}.student-modal{width:min(980px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:28px;padding:28px;box-shadow:0 28px 60px #0f172a33}.student-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.student-modal__header h2{margin:0;font-size:2rem;color:#111827}.student-modal__header button{border:none;background:transparent;font-size:2rem;color:#6b7280;cursor:pointer}.student-modal__tabs{display:inline-flex;align-items:center;gap:6px;background:#edf2fb;border-radius:999px;padding:6px;margin-top:20px}.student-modal__tabs button,.student-modal__mode-switch button{border:none;border-radius:999px;background:transparent;color:#42526b;font-size:.95rem;font-weight:700;padding:12px 18px;cursor:pointer}.student-modal__tabs button.is-active,.student-modal__mode-switch button.is-active{background:#fff;color:#111827;box-shadow:0 6px 18px #5067a42e}.student-modal__form{margin-top:22px}.student-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.student-modal__grid label,.student-modal__section label{display:flex;flex-direction:column;gap:8px;font-weight:600;color:#1f2937}.student-modal__grid span,.student-modal__section span{font-size:.95rem}.student-modal__grid label.is-invalid,.student-modal__section label.is-invalid{color:#b91c1c}.student-modal__grid input,.student-modal__grid select,.student-modal__section input,.student-modal__section select{width:100%;min-height:52px;border:1px solid #d7dfef;border-radius:16px;padding:0 16px;font-size:1rem;color:#111827;background:#f9fbff}.student-modal__grid label.is-invalid input,.student-modal__grid label.is-invalid select,.student-modal__section label.is-invalid input,.student-modal__section label.is-invalid select,.student-modal__grid input.is-invalid,.student-modal__section input.is-invalid{border-color:#fca5a5;background:#fff5f5}.student-modal__full{grid-column:1 / -1}.student-modal__section{display:flex;flex-direction:column;gap:18px}.student-modal__mode-switch{display:inline-flex;align-items:center;gap:6px;background:#edf2fb;border-radius:999px;padding:6px;align-self:flex-start}.student-modal__actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.student-modal__button{min-width:180px;min-height:52px;border-radius:16px;font-size:1rem;font-weight:700;cursor:pointer}.student-modal__button--secondary{border:1px solid #d3d9e6;background:#fff;color:#111827}.student-modal__button--primary{border:none;background:#050824;color:#fff}.student-modal__button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:720px){.student-modal{padding:20px;border-radius:22px}.student-modal__grid{grid-template-columns:1fr}.student-modal__actions{flex-direction:column-reverse}.student-modal__button{width:100%;min-width:0}}.gestao-alunos{display:flex;flex-direction:column;gap:24px}.gestao-alunos__name-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.gestao-alunos__sort-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #dbe4ee;border-radius:999px;background:#f8fbff;color:#1f2937;font-size:.95rem;cursor:pointer;transition:background .2s ease,border-color .2s ease}.gestao-alunos__sort-button:hover{background:#eef6ff;border-color:#bfd7f2}.gestao-alunos__row{cursor:pointer}.gestao-alunos__row.is-selected{background:#f8fbff}.gestao-alunos__contact-cell{display:grid;gap:6px}.gestao-alunos__count-cell{display:inline-flex;align-items:center;gap:10px}.gestao-alunos__icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #dbe4ee;border-radius:999px;background:#f8fbff;cursor:pointer}.gestao-alunos__icon-button img{width:18px;height:18px;opacity:.8}.gestao-alunos__status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;font-size:.9rem;font-weight:700;text-transform:lowercase}.gestao-alunos__status--ativo{background:#030722;color:#fff}.gestao-alunos__status--inativo{background:#f1f5f9;color:#475569}.gestao-alunos__date-cell{display:inline-flex;align-items:center;gap:8px}.gestao-alunos__date-cell img{width:18px;height:18px;opacity:.68}.gestao-alunos__panel-card{background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:22px}.gestao-alunos__collapse-header{width:100%;border:0;background:transparent;padding:0;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;text-align:left;cursor:pointer}.gestao-alunos__collapse-header h3{font-size:1.5rem;font-weight:700;color:#111827}.gestao-alunos__collapse-header p{margin-top:6px;color:#64748b}.gestao-alunos__collapse-header span{font-size:1.8rem;line-height:1;color:#475569}.gestao-alunos__placeholder-body{display:grid;gap:18px;margin-top:20px}.gestao-alunos__placeholder-body p{color:#64748b}.gestao-alunos__class-list{display:grid;gap:12px;margin-top:20px}.gestao-alunos__class-row{width:100%;border:1px solid #dbe7f3;border-radius:18px;background:#fbfdff;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;cursor:pointer}.gestao-alunos__class-row strong{display:block;color:#0f172a}.gestao-alunos__class-row span{display:block;margin-top:6px;color:#64748b}.gestao-alunos__class-meta{min-width:220px;text-align:right}.gestao-alunos__class-meta .is-active{color:#15803d;font-weight:700}.gestao-alunos__class-meta .is-inactive{color:#b91c1c;font-weight:700}.gestao-alunos__lesson-box{margin:0 8px;padding:18px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}.gestao-alunos__lesson-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.gestao-alunos__lesson-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0}.gestao-alunos__lesson-main{display:grid;gap:4px}.gestao-alunos__lesson-list li span{color:#64748b;font-size:.94rem}.gestao-alunos__lesson-side{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;justify-content:flex-end;flex-shrink:0;margin-left:auto;padding-left:16px}.gestao-alunos__lesson-action{width:36px;height:36px;border:1px solid #dbe3f1;border-radius:12px;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.gestao-alunos__lesson-action img{width:16px;height:16px}.gestao-alunos__lesson-action:hover{transform:translateY(-1px);border-color:#cbd5e1;box-shadow:0 10px 24px #0f172a14}.gestao-alunos__lesson-action.is-danger{border-color:#fecaca;background:#fff5f5}.gestao-alunos__lesson-action.is-danger:hover{border-color:#fca5a5;box-shadow:0 10px 24px #dc262614}@media(max-width:992px){.gestao-alunos__class-row{flex-direction:column;align-items:flex-start}.gestao-alunos__class-meta{min-width:0;text-align:left}.gestao-alunos__lesson-list li{align-items:flex-start;flex-direction:column}.gestao-alunos__lesson-side{width:100%;margin-left:0;padding-left:0;justify-content:flex-end}}.customer-modal__backdrop{position:fixed;inset:0;background:#1118276b;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.customer-modal{width:100%;max-width:760px;max-height:min(840px,calc(100vh - 40px));overflow-y:auto;background:#fff;border-radius:24px;padding:24px;box-shadow:0 20px 60px #0f172a38}.customer-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.customer-modal__header h2{font-size:1.35rem;color:#111827}.customer-modal__header button{border:0;background:transparent;font-size:1.8rem;color:#6b7280;cursor:pointer}.customer-modal__tabs{margin-top:18px;display:inline-flex;gap:10px;padding:6px;background:#eef2f7;border-radius:999px}.customer-modal__tabs button{border:0;background:transparent;padding:10px 18px;border-radius:999px;font-weight:700;color:#475569;cursor:pointer}.customer-modal__tabs button.is-active{background:#fff;color:#0f172a;box-shadow:0 4px 14px #0f172a14}.customer-modal__form{display:grid;gap:20px;margin-top:22px}.customer-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.customer-modal__grid label{display:grid;gap:8px}.customer-modal__grid span{font-size:.95rem;font-weight:600;color:#374151}.customer-modal__grid label.is-invalid span{color:#b91c1c}.customer-modal__grid input,.customer-modal__grid textarea{border:1px solid #d1d5db;border-radius:14px;padding:12px 14px;font-size:1rem;background:#fff}.customer-modal__grid label.is-invalid input,.customer-modal__grid label.is-invalid textarea{border-color:#fca5a5;background:#fff5f5}.customer-modal__grid input{height:48px}.customer-modal__input-with-indicator{position:relative}.customer-modal__input-with-indicator input{width:100%;padding-right:42px}.customer-modal__spinner{position:absolute;right:14px;top:50%;width:16px;height:16px;margin-top:-8px;border:2px solid #cbd5e1;border-top-color:#0b0f2f;border-radius:50%;animation:customer-modal-spin .8s linear infinite}.customer-modal__grid textarea{resize:vertical;min-height:96px}.customer-modal__full-width{grid-column:1 / -1}.customer-modal__students-tab{display:grid;gap:18px}.customer-modal__students-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.customer-modal__students-header h3{font-size:1.05rem;color:#111827}.customer-modal__students-header p{margin-top:6px;color:#64748b}.customer-modal__add-student{height:42px;border:1px solid #d1d5db;border-radius:14px;background:#fff;padding:0 16px;font-weight:700;color:#111827;cursor:pointer}.customer-modal__students-list{display:grid;gap:14px}.customer-modal__student-card{border:1px solid #e2e8f0;border-radius:18px;padding:18px;background:#f8fafc}.customer-modal__student-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.customer-modal__student-card-header strong{color:#0f172a}.customer-modal__student-card-header button{border:0;background:transparent;color:#dc2626;font-weight:700;cursor:pointer}.customer-modal__student-mode{display:inline-flex;gap:8px;margin-bottom:14px;padding:4px;background:#eef2f7;border-radius:999px}.customer-modal__student-mode button{border:0;background:transparent;padding:8px 12px;border-radius:999px;color:#475569;font-weight:700;cursor:pointer}.customer-modal__student-mode button.is-active{background:#fff;color:#0f172a;box-shadow:0 4px 14px #0f172a14}.customer-modal__students-empty{padding:18px;border:1px dashed #cbd5e1;border-radius:18px;color:#64748b;background:#f8fafc}.customer-modal__actions{display:flex;justify-content:flex-end;gap:12px}.customer-modal__secondary,.customer-modal__primary{height:46px;border-radius:14px;border:0;padding:0 18px;font-weight:700;cursor:pointer}.customer-modal__secondary{background:#eef2f7;color:#111827}.customer-modal__primary{background:#0b0f2f;color:#fff}@keyframes customer-modal-spin{to{transform:rotate(360deg)}}@media(max-width:720px){.customer-modal__grid{grid-template-columns:1fr}.customer-modal__students-header{flex-direction:column}.customer-modal__actions{flex-direction:column-reverse}.customer-modal__secondary,.customer-modal__primary,.customer-modal__add-student{width:100%}}.gestao-clientes{display:flex;flex-direction:column;gap:24px}.gestao-clientes__row.is-expanded{background:#f8fbff}.gestao-clientes__contact-cell{display:grid;gap:6px}.gestao-clientes__count-cell{display:inline-flex;align-items:center;gap:8px}.gestao-clientes__count-cell img{width:18px;height:18px;opacity:.72}.gestao-clientes__status{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:999px;font-size:.9rem;font-weight:700;text-transform:lowercase}.gestao-clientes__status--ativo{background:#030722;color:#fff}.gestao-clientes__status--inativo{background:#f1f5f9;color:#475569}.gestao-clientes__details-row td{padding:0 0 20px;border-bottom:1px solid #eef2f6}.gestao-clientes__details-card{margin:0 12px;padding:20px;border:1px solid #dbe7f3;border-radius:20px;background:linear-gradient(180deg,#fbfdff,#f3f7fb);display:grid;gap:20px}.gestao-clientes__detail-block{display:grid;gap:10px}.gestao-clientes__detail-block h4{font-size:1rem;font-weight:700;color:#0f172a}.gestao-clientes__detail-block p{color:#64748b}.gestao-clientes__address-list,.gestao-clientes__student-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.gestao-clientes__address-card,.gestao-clientes__student-list li{display:grid;gap:8px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #e2e8f0}.gestao-clientes__address-card{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 18px}.gestao-clientes__address-main,.gestao-clientes__address-meta{display:grid;gap:4px;min-width:0}.gestao-clientes__address-main strong,.gestao-clientes__address-main span,.gestao-clientes__address-meta span{overflow-wrap:anywhere}.gestao-clientes__address-main strong{color:#0f172a;font-size:.98rem}.gestao-clientes__address-main span,.gestao-clientes__address-meta span{color:#64748b;font-size:.93rem}.gestao-clientes__address-cep{display:inline-flex;align-items:center;justify-content:center;min-width:110px;padding:10px 14px;border-radius:999px;background:#eef6ff;border:1px solid #d9e9ff;color:#1d4ed8;font-size:.88rem;font-weight:700;letter-spacing:.04em}.gestao-clientes__student-list li{display:flex;align-items:center;justify-content:space-between;gap:16px}.gestao-clientes__student-list span{color:#64748b;font-size:.94rem}@media(max-width:900px){.gestao-clientes__address-card{grid-template-columns:1fr;align-items:flex-start}.gestao-clientes__address-cep{min-width:0}}.contract-modal__backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;padding:24px}.contract-modal{width:min(980px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:28px;padding:28px;box-shadow:0 28px 60px #0f172a33}.contract-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.contract-modal__header h2{margin:0;font-size:2rem;color:#111827}.contract-modal__header button{border:none;background:transparent;font-size:2rem;color:#6b7280;cursor:pointer}.contract-modal__tabs{display:inline-flex;align-items:center;gap:6px;background:#edf2fb;border-radius:999px;padding:6px;margin-top:20px}.contract-modal__tabs button,.contract-modal__mode-switch button{border:none;border-radius:999px;background:transparent;color:#42526b;font-size:.95rem;font-weight:700;padding:12px 18px;cursor:pointer}.contract-modal__tabs button.is-active,.contract-modal__mode-switch button.is-active{background:#fff;color:#111827;box-shadow:0 6px 18px #5067a42e}.contract-modal__form{margin-top:22px}.contract-modal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.contract-modal__grid label,.contract-modal__section label{display:flex;flex-direction:column;gap:8px;font-weight:600;color:#1f2937}.contract-modal__grid span,.contract-modal__section span{font-size:.95rem}.contract-modal__grid label.is-invalid,.contract-modal__section label.is-invalid{color:#b91c1c}.contract-modal__grid input,.contract-modal__grid select,.contract-modal__section input{width:100%;min-height:52px;border:1px solid #d7dfef;border-radius:16px;padding:0 16px;font-size:1rem;color:#111827;background:#f9fbff}.contract-modal__grid label.is-invalid input,.contract-modal__grid label.is-invalid select,.contract-modal__section label.is-invalid input,.contract-modal__section label.is-invalid select,.contract-modal__grid input.is-invalid,.contract-modal__section input.is-invalid{border-color:#fca5a5;background:#fff5f5}.contract-modal__full{grid-column:1 / -1}.contract-modal__section{display:flex;flex-direction:column;gap:18px}.contract-modal__mode-switch{display:inline-flex;align-items:center;gap:6px;background:#edf2fb;border-radius:999px;padding:6px;align-self:flex-start}.contract-modal__actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.contract-modal__button{min-width:180px;min-height:52px;border-radius:16px;font-size:1rem;font-weight:700;cursor:pointer}.contract-modal__button--secondary{border:1px solid #d3d9e6;background:#fff;color:#111827}.contract-modal__button--primary{border:none;background:#050824;color:#fff}.contract-modal__button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:720px){.contract-modal{padding:20px;border-radius:22px}.contract-modal__grid{grid-template-columns:1fr}.contract-modal__actions{flex-direction:column-reverse}.contract-modal__button{width:100%;min-width:0}}.gestao-contracts{display:flex;flex-direction:column;gap:22px}.gestao-contracts__feedback{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #c8d6fb;background:#f4f7ff;color:#22318f;border-radius:18px;padding:18px 20px}.gestao-contracts__feedback button{border:none;background:transparent;color:inherit;font-size:1.4rem;cursor:pointer}.gestao-contracts__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.gestao-contracts__header h2{margin:0;font-size:2.15rem;color:#111827}.gestao-contracts__header p{margin:8px 0 0;color:#60708f}.gestao-contracts__header-actions{display:flex;gap:12px}.gestao-contracts__primary-button,.gestao-contracts__secondary-button{min-height:52px;padding:0 20px;border-radius:14px;font-size:1rem;font-weight:700;cursor:pointer}.gestao-contracts__primary-button{border:none;background:#050824;color:#fff}.gestao-contracts__secondary-button{border:1px solid #d6dbe8;background:#fff;color:#111827}.gestao-contracts__secondary-button:disabled{opacity:.55;cursor:not-allowed}.gestao-contracts__search-card,.gestao-contracts__table-card,.gestao-contracts__summary-card{background:#fff;border:1px solid #e8edf6;border-radius:24px;box-shadow:0 18px 40px #0f172a0a}.gestao-contracts__search-card{padding:24px}.gestao-contracts__search-card input{width:100%;min-height:56px;border:1px solid #d9e1ef;border-radius:16px;padding:0 18px;font-size:1rem;background:#f9fbff}.gestao-contracts__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gestao-contracts__summary-card{padding:26px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.gestao-contracts__summary-card span{display:block;color:#60708f}.gestao-contracts__summary-card strong{display:block;margin-top:10px;font-size:2rem;color:#111827}.gestao-contracts__summary-icon{width:54px;height:54px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.gestao-contracts__summary-icon img{width:24px;height:24px}.gestao-contracts__summary-icon.is-active{background:#dffbe8}.gestao-contracts__summary-icon.is-active img{filter:invert(46%) sepia(57%) saturate(781%) hue-rotate(95deg) brightness(95%) contrast(89%)}.gestao-contracts__summary-icon.is-pending{background:#fff1b8}.gestao-contracts__summary-icon.is-pending img{filter:invert(67%) sepia(99%) saturate(1164%) hue-rotate(360deg) brightness(100%) contrast(92%)}.gestao-contracts__summary-icon.is-expired{background:#ffe0e4}.gestao-contracts__summary-icon.is-expired img{filter:invert(24%) sepia(84%) saturate(5070%) hue-rotate(339deg) brightness(100%) contrast(84%)}.gestao-contracts__table-card{padding:24px}.gestao-contracts__table-header h3{margin:0;font-size:1.55rem;color:#111827}.gestao-contracts__table-wrapper{overflow-x:auto;margin-top:20px}.gestao-contracts__table{width:100%;border-collapse:collapse;min-width:980px}.gestao-contracts__table th,.gestao-contracts__table td{padding:18px 10px;text-align:left;border-bottom:1px solid #edf1f7;vertical-align:middle}.gestao-contracts__table th{color:#111827;font-size:.96rem}.gestao-contracts__table td{color:#374151}.gestao-contracts__status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 12px;font-size:.88rem;font-weight:700}.gestao-contracts__status.is-active{background:#0b1029;color:#fff}.gestao-contracts__status.is-pending{background:#fff;color:#111827;border:1px solid #d5dae6}.gestao-contracts__status.is-expired{background:#e11d48;color:#fff}.gestao-contracts__status.is-warning{background:#fff3bf;color:#8a5a00}.gestao-contracts__actions{display:flex;align-items:center;gap:8px}.gestao-contracts__icon-button{width:38px;height:38px;border:1px solid #d7deeb;border-radius:12px;background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gestao-contracts__icon-button img{width:18px;height:18px}.gestao-contracts__icon-button:disabled{opacity:.4;cursor:not-allowed}.gestao-contracts__expanded-row td{padding:0;border-bottom:none}.gestao-contracts__expanded-card{margin:0 0 12px;padding:22px 20px;border:1px solid #e8edf6;border-radius:20px;background:#fbfcff}.gestao-contracts__expanded-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gestao-contracts__expanded-section{border:1px solid #edf1f7;border-radius:18px;background:#fff;padding:18px}.gestao-contracts__expanded-section h4{margin:0 0 14px;font-size:1.02rem;color:#111827}.gestao-contracts__expanded-section ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}.gestao-contracts__expanded-section li{color:#4b5563;line-height:1.4}.gestao-contracts__expanded-section strong{color:#111827}.gestao-contracts__expanded-placeholder{margin:0;color:#60708f}.gestao-contracts__expanded-fullwidth{margin-top:18px}.gestao-contracts__collapse-header{width:100%;border:1px solid #e8edf6;border-radius:18px;background:#f7faff;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;cursor:pointer}.gestao-contracts__collapse-header h4{margin:0;font-size:1.05rem;color:#111827}.gestao-contracts__collapse-header p{margin:6px 0 0;color:#60708f}.gestao-contracts__collapse-header span{font-size:1.5rem;color:#111827;flex-shrink:0}.gestao-contracts__linked-class-list{margin-top:16px;display:grid;gap:12px}.gestao-contracts__linked-class-row{width:100%;border:1px solid #e8edf6;border-radius:18px;background:#fff;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;cursor:pointer}.gestao-contracts__linked-class-row strong{display:block;color:#111827}.gestao-contracts__linked-class-row span{display:block;margin-top:6px;color:#60708f}.gestao-contracts__linked-class-meta{display:flex;align-items:center;gap:12px;flex-shrink:0}.gestao-contracts__linked-class-meta .is-active,.gestao-contracts__linked-class-meta .is-inactive{border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:700}.gestao-contracts__linked-class-meta .is-active{background:#ecfdf3;color:#027a48}.gestao-contracts__linked-class-meta .is-inactive{background:#f3f4f6;color:#667085}.gestao-contracts__linked-lesson-box{border:1px solid #edf1f7;border-radius:18px;background:#fff;padding:16px 18px}.gestao-contracts__linked-lesson-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.gestao-contracts__linked-lesson-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #edf1f7;border-radius:16px;padding:14px 16px}.gestao-contracts__linked-lesson-main strong{display:block;color:#111827}.gestao-contracts__linked-lesson-main span{display:block;margin-top:6px;color:#60708f}.gestao-contracts__lesson-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:700;flex-shrink:0}.gestao-contracts__lesson-status.is-success{background:#dcfce7;color:#15803d}.gestao-contracts__lesson-status.is-warning{background:#fef3c7;color:#a16207}.gestao-contracts__lesson-status.is-danger{background:#fee2e2;color:#dc2626}.gestao-contracts__lesson-status.is-info{background:#dbeafe;color:#1d4ed8}.gestao-contracts__lesson-status.is-neutral{background:#eff6ff;color:#64748b}.gestao-contracts__expanded-placeholder-wrap{margin-top:16px;border:1px dashed #d7deeb;border-radius:18px;padding:18px;background:#fff}.gestao-contracts__empty{padding:42px 20px;text-align:center;color:#60708f}@media(max-width:980px){.gestao-contracts__header{flex-direction:column}.gestao-contracts__header-actions{width:100%;flex-wrap:wrap}.gestao-contracts__summary,.gestao-contracts__expanded-grid{grid-template-columns:1fr}.gestao-contracts__linked-class-row,.gestao-contracts__linked-lesson-list li{flex-direction:column;align-items:flex-start}.gestao-contracts__linked-class-meta{width:100%;justify-content:space-between}}.gestao-presencas{display:flex;flex-direction:column;gap:24px}.gestao-presencas__hero,.gestao-presencas__panel{background:#fff;border:1px solid #e8edf6;border-radius:24px;box-shadow:0 18px 40px #0f172a0a}.gestao-presencas__hero{padding:26px 30px}.gestao-presencas__hero h2,.gestao-presencas__panel-header h3,.gestao-presencas__modal-header h3{margin:0;font-size:1.45rem;font-weight:700;color:#111827}.gestao-presencas__hero p,.gestao-presencas__panel-header p{margin:8px 0 0;max-width:760px;color:#60708f;line-height:1.6}.gestao-presencas__error{padding:14px 16px;border-radius:18px;border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;font-weight:600}.gestao-presencas__top-grid{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.52fr);gap:22px}.gestao-presencas__panel{padding:24px}.gestao-presencas__panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.gestao-presencas__calendar-shell{border:1px solid #edf2fa;border-radius:22px;padding:14px;background:#fff;max-width:470px}.gestao-presencas__calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.gestao-presencas__calendar-toolbar strong{font-size:.98rem;font-weight:700;text-transform:capitalize;color:#111827}.gestao-presencas__calendar-toolbar button{width:34px;height:34px;border:1px solid #dbe4f1;border-radius:12px;background:#fff;color:#475569;cursor:pointer}.gestao-presencas__weekday-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px}.gestao-presencas__weekday-row span{text-align:center;font-size:.8rem;font-weight:700;color:#60708f}.gestao-presencas__calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.gestao-presencas__calendar-day{min-height:50px;border:1px solid #e6ebf5;border-radius:12px;background:#fff;padding:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.gestao-presencas__calendar-day:hover{transform:translateY(-1px);border-color:#cfd8ea;box-shadow:0 10px 24px #0f172a0f}.gestao-presencas__calendar-day.is-outside{opacity:.55}.gestao-presencas__calendar-day.is-selected{border-color:#0f172a;background:#0f172a;box-shadow:none}.gestao-presencas__calendar-day.is-today .gestao-presencas__calendar-day-number{color:#0f172a}.gestao-presencas__calendar-day-number{font-size:.94rem;font-weight:800;color:#111827}.gestao-presencas__calendar-day.is-selected .gestao-presencas__calendar-day-number{color:#fff}.gestao-presencas__calendar-dots{display:inline-flex;align-items:center;gap:4px;margin-top:3px}.gestao-presencas__calendar-dots span{width:6px;height:6px;border-radius:999px}.gestao-presencas__calendar-dots .is-green{background:#16a34a}.gestao-presencas__calendar-dots .is-yellow{background:#f59e0b}.gestao-presencas__calendar-dots .is-red{background:#ef4444}.gestao-presencas__teacher-groups{display:flex;flex-direction:column;gap:18px}@media(min-width:901px){.gestao-presencas__panel--day .gestao-presencas__teacher-groups{max-height:640px;overflow-y:auto;padding-right:8px}.gestao-presencas__panel--day .gestao-presencas__teacher-groups::-webkit-scrollbar{width:10px}.gestao-presencas__panel--day .gestao-presencas__teacher-groups::-webkit-scrollbar-track{background:#f3f6fb;border-radius:999px}.gestao-presencas__panel--day .gestao-presencas__teacher-groups::-webkit-scrollbar-thumb{background:#cfd8e6;border-radius:999px;border:2px solid #f3f6fb}}.gestao-presencas__teacher-group{border:1px solid #edf2fa;border-radius:18px;background:#fbfcff;padding:12px}.gestao-presencas__teacher-header{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-bottom:10px}.gestao-presencas__teacher-header h4{margin:0;font-size:.92rem;font-weight:700;color:#111827}.gestao-presencas__lesson-list,.gestao-presencas__pending-list{display:flex;flex-direction:column;gap:12px}.gestao-presencas__lesson-card,.gestao-presencas__pending-card{border:1px solid #e9eef7;border-radius:16px;background:#fff;padding:10px 14px}.gestao-presencas__lesson-main,.gestao-presencas__pending-card{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.gestao-presencas__lesson-main{align-items:stretch}.gestao-presencas__lesson-copy{min-width:0;flex:1}.gestao-presencas__lesson-copy strong,.gestao-presencas__pending-title strong{display:block;font-size:.98rem;color:#111827}.gestao-presencas__lesson-copy p,.gestao-presencas__pending-title span,.gestao-presencas__modal-note{margin:6px 0 0;color:#60708f}.gestao-presencas__lesson-time{display:flex;align-items:center;gap:8px}.gestao-presencas__lesson-time img,.gestao-presencas__pending-title img{width:16px;height:16px}.gestao-presencas__lesson-copy p.is-muted{font-size:.88rem}.gestao-presencas__lesson-side{min-width:168px;display:flex;flex-direction:row;align-items:flex-end;justify-content:flex-end}.gestao-presencas__status{align-self:flex-start;border-radius:10px;padding:5px 8px;font-size:.74rem;font-weight:700;line-height:1;border:1px solid transparent;margin-top:29px}.gestao-presencas__status--pending{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.gestao-presencas__status--overdue{color:#b91c1c;background:#fff7f7;border-color:#f8d0d5}.gestao-presencas__status--completed{color:#166534;background:#eefcf3;border-color:#c9efd5}.gestao-presencas__status--cancelled{color:#b91c1c;background:#fff1f2;border-color:#fecdd3}.gestao-presencas__status--rescheduled{color:#3730a3;background:#eef2ff;border-color:#c7d2fe}.gestao-presencas__status--reschedule-pending{color:#92400e;background:#fffbeb;border-color:#fde68a}.gestao-presencas__status--compensated{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.gestao-presencas__lesson-actions,.gestao-presencas__pending-actions,.gestao-presencas__modal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gestao-presencas__lesson-actions{margin-top:0;margin-left:0;min-width:0;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px}.gestao-presencas__action,.gestao-presencas__modal-actions button,.gestao-presencas__modal-header button{min-height:40px;border-radius:12px;border:1px solid #d8e0ee;background:#fff;padding:0 14px;font-size:.9rem;font-weight:600;color:#1f2937;cursor:pointer}.gestao-presencas__lesson-actions .gestao-presencas__action{min-width:146px;min-height:36px;padding:0 12px}.gestao-presencas__action:disabled,.gestao-presencas__modal-actions button:disabled{opacity:.6;cursor:not-allowed}.gestao-presencas__action--success{border-color:#d7dfef;background:#fff;color:#18794e}.gestao-presencas__action--warning{border-color:#d7dfef;background:#fff;color:#a16207}.gestao-presencas__action--danger{border-color:#f8d0d5;background:#fff;color:#b91c1c}.gestao-presencas__action--ghost{background:#fff;color:#475569;border-color:#d8e0ee}.gestao-presencas__pending-title{display:flex;align-items:flex-start;gap:10px}.gestao-presencas__pending-title img{margin-top:2px}.gestao-presencas__pending-copy{flex:1}.gestao-presencas__pending-dates{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gestao-presencas__pending-dates div{padding:12px 14px;border-radius:14px;background:#f8faff;border:1px solid #ecf1f8}.gestao-presencas__pending-dates small{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#60708f;margin-bottom:6px}.gestao-presencas__pending-dates strong{color:#111827}.gestao-presencas__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gestao-presencas__pending-heading{display:flex;align-items:flex-start;gap:12px}.gestao-presencas__pending-heading img{width:40px;height:40px;margin-top:-2px}.gestao-presencas__empty-state{min-height:160px;border:1px dashed #d7dfef;border-radius:20px;background:#fafcff;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:#64748b;font-weight:600}.gestao-presencas__modal-backdrop{position:fixed;inset:0;background:#0f172a85;display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.gestao-presencas__modal{width:min(560px,100%);border-radius:26px;background:#fff;border:1px solid #e6ebf5;box-shadow:0 24px 64px #0f172a38;padding:24px}.gestao-presencas__modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.gestao-presencas__modal-header button{width:42px;padding:0;font-size:1.6rem;line-height:1}.gestao-presencas__modal-form{display:flex;flex-direction:column;gap:18px}.gestao-presencas__modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gestao-presencas__modal-grid label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:#111827}.gestao-presencas__modal-grid input{width:100%;min-height:48px;border-radius:16px;border:1px solid #d8e0ee;background:#fff;padding:0 14px;font:inherit;color:#111827}.gestao-presencas__modal-actions{justify-content:flex-end}.gestao-presencas__modal-actions .is-primary{border-color:#6a5cff;background:#6a5cff;color:#fff}@media(max-width:1180px){.gestao-presencas__top-grid{grid-template-columns:1fr}}@media(max-width:900px){.gestao-presencas__stats{grid-template-columns:1fr}.gestao-presencas__pending-card,.gestao-presencas__lesson-main{flex-direction:column}.gestao-presencas__lesson-side{min-width:0;width:100%;align-items:flex-start;justify-content:flex-start}.gestao-presencas__lesson-actions{width:auto;align-items:flex-start}}@media(max-width:640px){.gestao-presencas__hero,.gestao-presencas__panel,.gestao-presencas__modal{padding:20px;border-radius:22px}.gestao-presencas__calendar-grid{gap:6px}.gestao-presencas__calendar-day{min-height:46px;padding:5px}.gestao-presencas__pending-dates,.gestao-presencas__modal-grid{grid-template-columns:1fr}}
