@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Outfit:wght@400;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Outfit:wght@400;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Outfit:wght@400;600;700&display=swap";:root{--ui-bg:#0b1220;--ui-surface:#121d35c7;--ui-surface-strong:#0c1629eb;--ui-text:#ecf3ff;--ui-muted:#a9b8d0;--ui-border:#9db2d647;--ui-accent:#2ec4b6;--ui-accent-2:#ff9f1c;--ui-focus:#7cc6fe;--ui-shadow:0 18px 42px #030c1a52;--ui-radius:14px}html{scroll-behavior:smooth}body{color:var(--ui-text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(900px 500px at -10% -10%,#2ec4b62b,#0000 60%),radial-gradient(900px 500px at 110% -10%,#ff9f1c24,#0000 60%),radial-gradient(700px 700px at 50% 120%,#7cc6fe1a,#0000 70%);position:fixed;inset:0}::selection{color:#fff;background:#2ec4b659}.ui-skip-link{z-index:10000;color:#000;background:#00ff41;border-radius:10px;padding:10px 14px;font-size:.95rem;text-decoration:none;transition:top .2s;position:fixed;top:-42px;left:16px;box-shadow:0 0 15px #00ff4166}.ui-skip-link:focus{top:14px}header,.main-header{-webkit-backdrop-filter:blur(10px)}main{width:min(1200px,100% - 24px);margin-inline:auto}button,input,select,textarea,a{transition:transform .2s,box-shadow .2s,border-color .2s,background-color .2s,opacity .2s}button,input,select,textarea{border-radius:10px}button:hover{transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px;box-shadow:0 0 0 4px #7cc6fe2e}.card,.modal-content,.search-container,.container,#dashboard,.gallery-container,#crud-modal .modal-content,#series-detail-modal .modal-content{border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);border-radius:var(--ui-radius)}.modal,.modal-overlay{-webkit-backdrop-filter:blur(4px)}.modal,.modal-overlay,#annotation-popup{isolation:isolate}.modal.ui-modal-shell,.modal-overlay.ui-modal-shell,#annotation-popup.ui-modal-panel{animation:.22s ease-out uiModalFadeIn}.modal-content.ui-modal-panel,#annotation-popup.ui-modal-panel{animation:.24s ease-out uiModalRiseIn}.modal-overlay.ui-modal-shell,.modal.ui-modal-shell{background:linear-gradient(140deg,#030a18b3,#08142694)!important}.modal-content .close-btn,.modal .close-btn,.modal-overlay .close-btn,#annotation-popup .close-popup-btn,[id*=modal-close]{justify-content:center;align-items:center;width:36px;height:36px;color:#e9f2ff!important;background:#0b182dcc!important;border:1px solid #a5c2ee66!important;border-radius:999px!important;line-height:1!important;display:inline-flex!important}.modal-content .close-btn:hover,.modal .close-btn:hover,.modal-overlay .close-btn:hover,#annotation-popup .close-popup-btn:hover,[id*=modal-close]:hover{background:#213f6bf5!important}.swal2-popup{-webkit-backdrop-filter:blur(12px);border:1px solid #94afd947!important;border-radius:18px!important;box-shadow:0 24px 60px #040f2180!important}.swal2-actions .swal2-styled{border-radius:11px!important;font-weight:600!important}body.ui-modal-open{overflow:hidden}@keyframes uiModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes uiModalRiseIn{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.fab,#add-disciplina-btn,#add-series-btn,#add-movie-btn,#paraphraseBtn{box-shadow:0 10px 24px #00000047}.ui-top-btn{z-index:999;background:linear-gradient(145deg, var(--ui-accent), #23a89b);color:#042229;cursor:pointer;opacity:0;pointer-events:none;border:0;border-radius:999px;width:42px;height:42px;font-size:20px;font-weight:700;position:fixed;bottom:18px;right:18px;transform:translateY(10px);box-shadow:0 12px 28px #0c3e4873}.ui-top-btn[data-show=true]{opacity:1;pointer-events:auto;transform:translateY(0)}@media (width<=900px){main{width:min(100%,100% - 14px)}header,.main-header{padding-left:10px;padding-right:10px}#dashboard h2,h1{line-height:1.25}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.modal,.modal-overlay{-webkit-backdrop-filter:blur(12px)!important;background:#000c!important}.modal-content,.modal-content.ui-modal-panel,#annotation-popup.ui-modal-panel{color:#e8f5e9!important;background:linear-gradient(165deg,#0c1018fa 0%,#080c12 100%)!important;border:1px solid #00ff4140!important;border-radius:20px!important;flex-direction:column!important;max-width:min(980px,95vw)!important;max-height:94vh!important;padding:0!important;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .3s!important;display:flex!important;overflow:hidden!important;box-shadow:0 0 50px #00ff4114,0 32px 72px #000000e6!important}@media (width<=768px){.modal-content,.modal-content.ui-modal-panel{border-radius:12px!important;max-height:98vh!important}}.crud-modal .ui-modal-header,.modal-header,.ui-modal-header,.tasks-modal-header{background:#0a0f0cfa!important;border-bottom:1px solid #00ff4133!important;border-radius:20px 20px 0 0!important;flex-shrink:0!important;justify-content:space-between!important;align-items:center!important;gap:20px!important;padding:24px 32px!important;display:flex!important}@media (width<=768px){.crud-modal .ui-modal-header,.modal-header,.ui-modal-header,.tasks-modal-header{border-radius:12px 12px 0 0!important;padding:16px 20px!important}}.crud-modal .ui-modal-title,.ui-modal-title,.modal-header h3,.tasks-modal-title{color:#00ff41!important;letter-spacing:1.5px!important;text-shadow:0 0 15px #00ff414d!important;margin:0!important;font-family:JetBrains Mono,monospace!important;font-size:1.4rem!important;font-weight:700!important}.crud-modal .ui-modal-body,.modal-body,.ui-modal-body,.tasks-modal-body{color:#a5c7a8!important;background:0 0!important;flex-grow:1!important;padding:32px!important;line-height:1.7!important;overflow-y:auto!important}@media (width<=768px){.crud-modal .ui-modal-body,.modal-body,.ui-modal-body,.tasks-modal-body{padding:20px!important}}.modal-content .close-btn,.modal .close-btn,.modal-overlay .close-btn,[id*=modal-close]{color:#00ff41!important;cursor:pointer!important;background:#000000b3!important;border:1px solid #00ff414d!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:42px!important;height:42px!important;font-size:1.4rem!important;transition:all .25s!important;display:flex!important;box-shadow:0 4px 12px #0006!important}.modal-content .close-btn:hover,.modal .close-btn:hover,.modal-overlay .close-btn:hover{background:#00ff4126!important;transform:rotate(90deg)scale(1.1)!important;box-shadow:0 0 20px #00ff414d!important}.crud-modal form,.modal-body form{flex-direction:column!important;gap:24px!important;display:flex!important}.crud-modal input,.crud-modal select,.crud-modal textarea,.modal-body input,.modal-body select,.modal-body textarea,.ui-modal-body input,.ui-modal-body select,.ui-modal-body textarea{color:#e8f5e9!important;background:#00000080!important;border:1px solid #00ff4133!important;border-radius:12px!important;width:100%!important;padding:14px 18px!important;font-family:JetBrains Mono,monospace!important;font-size:1rem!important;transition:all .25s!important}.crud-modal input:focus,.crud-modal select:focus,.crud-modal textarea:focus{background:#00ff410d!important;border-color:#00ff41!important;outline:none!important;box-shadow:0 0 15px #00ff4133!important}.crud-modal .ui-btn,.modal-footer button,.ui-modal-footer button,.ui-modal-actions button{text-transform:uppercase!important;letter-spacing:1px!important;cursor:pointer!important;border-radius:12px!important;padding:14px 28px!important;font-family:JetBrains Mono,monospace!important;font-weight:700!important;transition:all .3s!important}.crud-modal .ui-btn:not(.ui-btn-danger):not(.ui-btn-neutral),button[type=submit][form=generic-modal-form],button[type=submit][form=react-crud-form],.modal-footer button[type=submit]{color:#000!important;background:linear-gradient(135deg,#00ff41 0%,#008f11 100%)!important;border:none!important;box-shadow:0 0 20px #00ff4133!important}.crud-modal .ui-btn:not(.ui-btn-danger):not(.ui-btn-neutral):hover,button[type=submit]:hover{filter:brightness(1.2)!important;transform:translateY(-2px)!important;box-shadow:0 0 30px #00ff4180!important}.modal-footer,.ui-modal-footer{background:#0a0f0cf2!important;border-top:1px solid #00ff4126!important;border-radius:0 0 20px 20px!important;flex-shrink:0!important;padding:24px 32px!important}@media (width<=768px){.modal-footer,.ui-modal-footer{border-radius:0 0 12px 12px!important;padding:16px 20px!important}}.tasks-table-wrap{background:#0003!important;border-radius:12px!important;width:100%!important;margin-top:16px!important}.tasks-crud-table{border-collapse:separate!important;border-spacing:0 10px!important;width:100%!important}@media (width<=768px){.tasks-table-wrap{background:0 0!important;overflow-x:visible!important}.tasks-crud-table,.tasks-crud-table thead,.tasks-crud-table tbody,.tasks-crud-table th,.tasks-crud-table td,.tasks-crud-table tr{width:100%!important;display:block!important}.tasks-crud-table thead tr{position:absolute!important;top:-9999px!important;left:-9999px!important}.tasks-crud-table tr{background:#0f141c99!important;border:1px solid #00ff4126!important;border-radius:16px!important;margin-bottom:20px!important;padding:16px!important;box-shadow:0 4px 12px #0000004d!important}.tasks-crud-table td{text-align:left!important;border:none!important;border-radius:0!important;align-items:center!important;min-height:40px!important;padding:10px 0 10px 40%!important;display:flex!important;position:relative!important}.tasks-crud-table td:before{content:attr(data-label);white-space:nowrap!important;color:#00ff41!important;text-transform:uppercase!important;opacity:.8!important;width:35%!important;font-family:JetBrains Mono,monospace!important;font-size:.8rem!important;font-weight:700!important;position:absolute!important;left:0!important}.tasks-crud-table td:first-child,.tasks-crud-table td:last-child{border:none!important;border-radius:0!important}.tasks-crud-table td.task-score-cell,.tasks-crud-table td.task-status{width:auto!important}.task-name-cell{width:100%!important}.tasks-actions-cell{border-top:1px solid #00ff411a!important;justify-content:flex-start!important;margin-top:5px!important;padding-top:15px!important}.task-title-text{font-size:1.1rem!important;display:block!important}}#go-to-index-btn span{justify-content:center;align-items:center;font-size:3.5em;line-height:1;display:flex}#add-disciplina-btn,#go-to-index-btn{color:#fff;background:linear-gradient(135deg,#1976d2 0%,#764ba2 100%);box-shadow:0 4px 16px #1976d22e}#add-disciplina-btn:hover,#go-to-index-btn:hover{color:#fff;background:linear-gradient(135deg,#1565c0 0%,#5a189a 100%);box-shadow:0 6px 20px #1976d240}#appointment-reminder{z-index:9999;background:linear-gradient(165deg,#080c0afa 0%,#050806fc 100%);border:1px solid #00ff4133;border-left:5px solid #ff9800;border-radius:12px;align-items:center;gap:15px;padding:20px;animation:.5s ease-out .5s forwards slideInReminder;display:flex;position:fixed;top:80px;right:20px;transform:translate(120%);box-shadow:0 5px 20px #0006}@keyframes slideInReminder{to{transform:translate(0)}}#appointment-reminder .reminder-bell-icon{color:#ff9800;font-size:2.5em;animation:.7s infinite alternate bell-ring}#appointment-reminder .reminder-text{color:#a5c7a8;max-width:300px;font-size:1em}#appointment-reminder .close-reminder-btn{cursor:pointer;color:#999;background:0 0;border:none;font-size:1.5em;transition:color .2s;position:absolute;top:5px;right:8px}#appointment-reminder .close-reminder-btn:hover{color:#333}@keyframes pulse-red{0%{background-color:#0000}50%{background-color:#f8101033}to{background-color:#0000}}.modal-agenda-content{flex-direction:column;width:100%;max-width:1000px;max-height:85vh;display:flex}body .modal-agenda-content{width:100%!important;max-width:1000px!important}.modal-agenda-content .modal-header{z-index:10;background:#040805fc;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.modal-agenda-content .modal-header h3{color:#00ff41;margin:0;font-size:1.4em}.modal-agenda-content .modal-body{flex-grow:1;padding:24px;overflow-y:auto}.modal-agenda-content .modal-footer{text-align:right;border-top:1px solid #e0e0e0;padding:16px 24px}.loading-agenda,.empty-message,.error-message{text-align:center;color:#666;padding:40px;font-size:1.1em}.error-message{color:#dc3545}.modal-agenda-content .crud-table{border-collapse:collapse;width:100%;font-size:.95em}.modal-agenda-content .crud-table th,.modal-agenda-content .crud-table td{text-align:left;border-bottom:1px solid #ddd;padding:12px 15px}.modal-agenda-content .crud-table th{color:#00ff41;background-color:#00ff411a;font-weight:600}.modal-agenda-content .crud-table tbody tr:hover{background-color:#00ff410d}.modal-agenda-content .crud-table .actions-cell{text-align:center}.modal-agenda-content .crud-btn{cursor:pointer;background:0 0;border:none;margin:0 4px;padding:5px;font-size:1.2em;transition:transform .2s}.modal-agenda-content .crud-btn:hover{transform:scale(1.2)}.status-badge{color:#fff;border-radius:12px;padding:4px 10px;font-size:.85em;font-weight:600}.status-pendente-agenda{color:#333;background-color:#ffc107}.status-concluido-agenda{background-color:#28a745}:root{--primary-color:#1976d2;--light-bg:#f0f4f8;--white:#fff;--dark-text:#222;--light-text:#555;--danger-color:#b00;--card-shadow:0 4px 12px #00000014;--border-radius:12px;--mobile-touch-target:44px;--mobile-spacing:16px;--mobile-border-radius:8px;--mobile-font-size:16px;--mobile-line-height:1.4;--mobile-transition:.2s ease}@media (width<=768px){:root{--card-shadow:0 2px 8px #0000001a;--border-radius:var(--mobile-border-radius)}input,textarea,select{border-radius:var(--mobile-border-radius);appearance:none;width:100%;max-height:44px;margin:0;padding:12px;font-size:16px!important}textarea{max-height:none!important}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;max-width:100%;height:100%;overflow-x:hidden}.keyboard-visible{min-height:100%;height:auto!important;position:relative!important}.keyboard-visible .modal-content{height:auto;min-height:100vh;position:absolute;top:0}*{-webkit-tap-highlight-color:transparent}.fab,.card-disciplina,.crud-btn{will-change:transform;transform:translateZ(0)}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--light-bg);color:var(--dark-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;box-sizing:border-box;width:100%;max-width:100%;font-family:Arial,sans-serif;overflow-x:hidden}@media (width<=768px){body{font-size:var(--mobile-font-size);line-height:var(--mobile-line-height)}}.hidden{display:none!important}.main-header{background:var(--primary-color);width:100%;color:var(--white);z-index:1000;min-height:var(--mobile-touch-target);justify-content:space-between;align-items:center;padding:16px 32px;font-size:1.2em;display:flex;position:fixed;top:0;left:0;box-shadow:0 2px 8px #00000012}@media (width<=768px){.main-header{padding:12px var(--mobile-spacing);flex-wrap:wrap;gap:8px;min-height:60px;font-size:1em;position:relative}.main-header span{text-overflow:ellipsis;white-space:nowrap;flex:1;order:1;min-width:0;overflow:hidden}}.main-header #hacker-btn{cursor:pointer;min-width:var(--mobile-touch-target);min-height:var(--mobile-touch-target);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;left:50%;transform:translate(-50%)}@media (width<=768px){.main-header #hacker-btn{z-index:10;flex-shrink:0;order:2;position:absolute;left:50%;transform:translate(-50%)}}.main-header #hacker-btn img{width:auto;max-width:100%;height:48px;max-height:100%}@media (width<=768px){.main-header #hacker-btn img{height:36px}}.main-header #logout-btn{color:#fff;cursor:pointer;min-width:var(--mobile-touch-target);background:#ffffff1a;border:1px solid #00ff414d;border-radius:6px;justify-content:center;align-items:center;min-height:32px;padding:8px 18px;font-size:.9em;transition:background .2s;display:flex}@media (width<=768px){.main-header #logout-btn{z-index:5;flex-shrink:0;order:3;padding:8px 16px;font-size:.85em;position:relative;overflow:hidden}.main-header #logout-btn:active{background:#00ff4133;transform:scale(.95)}}main{flex-direction:column;align-items:center;min-height:calc(100vh - 100px);padding-top:100px;padding-bottom:40px;display:flex}@media (width<=768px){main{box-sizing:border-box;width:100%;max-width:100%;min-height:calc(100vh - 80px);padding-top:80px;padding-bottom:120px}}#dashboard,#content-view{border-radius:var(--border-radius);background:0 0;border:1px solid #00ff411a;width:96vw;max-width:1200px;margin:0 auto;padding:24px;overflow-x:hidden}@media (width<=768px){#dashboard,#content-view{width:100%;max-width:100%;padding:var(--mobile-spacing);-webkit-overflow-scrolling:touch;box-sizing:border-box;border-radius:0;margin:0 auto;overflow-y:auto}}#content-view.videos-mode{padding-top:32px}@media (width<=768px){#content-view.videos-mode{padding-top:var(--mobile-spacing)}}#dashboard h2{color:var(--primary-color);text-align:center;width:100%;max-width:100%;margin-top:0;margin-bottom:24px;font-size:1.5em;font-weight:600}@media (width<=768px){#dashboard h2{margin-bottom:var(--mobile-spacing);font-size:1.3em;line-height:1.3}}#dashboard-disciplinas{-webkit-overflow-scrolling:touch;flex-wrap:wrap;justify-content:center;gap:18px 24px;margin-bottom:24px;display:flex;overflow-x:auto}@media (width<=768px){#dashboard-disciplinas{margin-bottom:var(--mobile-spacing);flex-direction:column;align-items:center;gap:12px;width:100%;max-width:100%}}.card-disciplina{background:var(--light-bg);cursor:pointer;border-radius:8px;flex:220px;min-width:180px;padding:18px 22px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 1px 4px #0000000f}@media (width<=768px){.card-disciplina{min-width:100%;padding:var(--mobile-spacing);transition:all var(--mobile-transition);border:1px solid #0000;flex:100%;margin-bottom:8px}.card-disciplina:active{border-color:var(--primary-color);background:#e8f0f8;transform:scale(.98)}}@media (width<=768px){.card-disciplina:hover{transform:none;box-shadow:0 2px 8px #0000001a}}.card-disciplina-title{color:var(--primary-color);margin-bottom:8px;font-size:1.15em;font-weight:700;line-height:1.3}@media (width<=768px){.card-disciplina-title{margin-bottom:6px;font-size:1.1em}}.card-disciplina-date,.card-disciplina-situation,.card-disciplina-type{color:var(--light-text);margin-bottom:4px;font-size:.95em;display:block}.card-disciplina-grade{color:#1f2937;margin-bottom:4px;font-size:.95em;font-weight:600;display:block}@media (width<=768px){.card-disciplina-date,.card-disciplina-situation,.card-disciplina-type,.card-disciplina-grade{margin-bottom:2px;font-size:.9em}}#dashboard-infos{color:#333;font-size:1.1em;line-height:var(--mobile-line-height)}@media (width<=768px){#dashboard-infos{padding:0 var(--mobile-spacing);font-size:1em}}#dashboard-infos b{color:var(--primary-color)}.registro{word-wrap:break-word;overflow-wrap:break-word;border-bottom:1px solid #eee;margin-bottom:1.5em;padding-bottom:1em;line-height:1.6;display:block}@media (width<=768px){.registro{line-height:var(--mobile-line-height);margin-bottom:1.2em;padding-bottom:.8em}}.registro:last-child{border-bottom:none}.registro-title{color:#111;margin-bottom:.3em;font-size:1.2em;font-weight:700;line-height:1.3;display:block}@media (width<=768px){.registro-title{margin-bottom:.2em;font-size:1.1em}}.registro-text{white-space:pre-line;word-wrap:break-word;line-height:var(--mobile-line-height)}@media (width<=768px){.registro-text{font-size:.95em}}.registro-img{border-radius:8px;max-width:100%;height:auto;margin:16px 0;display:block}@media (width<=768px){.registro-img{border-radius:var(--mobile-border-radius);margin:12px 0}}.registro a{color:var(--primary-color);word-break:break-all;margin-top:6px;padding:4px 0;text-decoration:none;display:inline-block}@media (width<=768px){.registro a{min-height:var(--mobile-touch-target);align-items:center;margin-top:4px;display:flex}}.link-fallback{background:var(--light-bg);min-height:var(--mobile-touch-target);border:1px solid #ddd;border-radius:6px;justify-content:center;align-items:center;padding:8px 12px;text-decoration:none;transition:all .2s;display:inline-flex}@media (width<=768px){.link-fallback{border-radius:var(--mobile-border-radius);padding:10px 16px;font-size:.9em}}.link-fallback:hover{background:var(--primary-color);border-color:var(--primary-color);color:var(--white)!important}@media (width<=768px){.link-fallback:active{background:#1565c0;transform:scale(.95)}}.image-responsive{text-align:center;width:100%;max-width:900px;margin:24px auto;position:relative;overflow:hidden}@media (width<=768px){.image-responsive{border-radius:var(--mobile-border-radius);margin:16px auto}}.registro-toolbar{z-index:2;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:4px;display:flex;position:relative}@media (width<=768px){.registro-toolbar{justify-content:flex-start;gap:6px;margin-bottom:8px}}.crud-btn{cursor:pointer;color:#888;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:2px 6px;font-size:1.2em;transition:background .2s,color .2s;display:flex}@media (width<=768px){.crud-btn{min-width:var(--mobile-touch-target);min-height:var(--mobile-touch-target);border-radius:var(--mobile-border-radius);padding:8px;font-size:1.3em;position:relative;overflow:hidden}.crud-btn:active{background:#0000001a;transform:scale(.9)}}.crud-btn:hover{color:#00ff41;background:#00ff411a}.crud-btn.delete{color:var(--danger-color)}.crud-btn.delete:hover{color:var(--white);background-color:var(--danger-color)}.fab{z-index:3000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#080c0ae6;border:1px solid #00ff414d;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .3s;display:flex;position:fixed;box-shadow:0 4px 15px #00ff4126}#go-to-index-btn{z-index:1000;position:fixed;bottom:220px;right:24px}#ai-writer-btn{background:linear-gradient(135deg, var(--primary-color), #0056b3);color:#fff;bottom:260px;right:24px;box-shadow:0 4px 12px #007bff4d}#ai-writer-btn:hover{background:linear-gradient(135deg,#0056b3,#003780);transform:translateY(-5px);box-shadow:0 6px 16px #007bff66}#ai-writer-btn:active{transform:translateY(-2px)}#ai-writer-btn svg{width:32px;height:32px;min-width:var(--mobile-touch-target);min-height:var(--mobile-touch-target);will-change:transform;transform:translateZ(0)}@media (width<=768px){.fab{border:2px solid #fffc;width:52px;height:52px;box-shadow:0 3px 12px #00000040}.fab:active{transform:scale(.9)translateZ(0);box-shadow:0 1px 6px #0000004d}}.fab:hover{box-shadow:0 4px 12px #00000038}.fab svg{width:32px;height:32px}.fab svg path,.fab svg circle,.fab svg line{fill:var(--primary-color);stroke:var(--primary-color)}#go-to-index-btn svg path{fill:#fff!important}#add-disciplina-btn{font-weight:700;font-size:2.5em!important}#edit-gear-btn{bottom:24px;right:24px}#extra-content-btn{bottom:90px;right:24px}#add-disciplina-btn{z-index:1000;position:fixed;bottom:156px;right:24px}#auto-scroll-btn{color:#ff3d3d;cursor:pointer;opacity:0;pointer-events:none;z-index:1000;background:#000c;border:2px solid #ff3d3d;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .2s;display:flex;position:fixed;bottom:220px;right:24px;transform:translateY(20px);box-shadow:0 2px 10px #0003}#auto-scroll-btn.show{opacity:1;pointer-events:auto;transform:translateY(0)}#auto-scroll-btn:hover{background:red;transform:scale(1.1)}#auto-scroll-btn:active{transform:scale(.95)}#auto-scroll-btn svg{width:24px;height:24px;transition:transform .2s}#auto-scroll-btn.scrolling-up svg{transform:rotate(180deg)}#auto-scroll-btn:hover svg path{stroke:#fff}body.edit-mode #edit-gear-btn{background-color:var(--primary-color)}body.edit-mode #edit-gear-btn svg path{fill:var(--white)}#extra-content-menu{z-index:3001;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#0d1117fa;border:1px solid #0000001a;border-radius:10px;flex-direction:column;min-width:150px;padding:6px 0;animation:.2s fadeInMenu;position:fixed;bottom:160px;right:24px;box-shadow:0 8px 32px #00000080}@media (width<=768px){#extra-content-menu{border-radius:var(--mobile-border-radius);border:none;min-width:140px;bottom:140px;right:16px;box-shadow:0 4px 16px #00000040}#auto-scroll-btn{border:2px solid red;width:45px;height:45px;bottom:200px;right:16px}#auto-scroll-btn:active{transform:scale(.9)}#auto-scroll-btn svg{width:20px;height:20px}}#extra-content-menu button{text-align:left;cursor:pointer;width:100%;min-height:var(--mobile-touch-target);background:0 0;border:none;align-items:center;gap:8px;padding:10px 18px;font-size:1.05em;transition:background .2s;display:flex}@media (width<=768px){#extra-content-menu button{padding:12px 16px;font-size:1em;position:relative;overflow:hidden}#extra-content-menu button:active{background:var(--light-bg);transform:scale(.98)}.btn-tasks{border-radius:8px;min-height:44px;margin-top:12px;padding:10px 16px;font-size:1em;box-shadow:0 3px 10px #667eea66}.btn-tasks:active{transform:scale(.95);box-shadow:0 2px 8px #667eea4d}}#extra-content-menu button:hover{background:var(--light-bg)}@keyframes fadeInMenu{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseTasks{0%{box-shadow:0 2px 8px #667eea4d}50%{box-shadow:0 4px 16px #667eea80}to{box-shadow:0 2px 8px #667eea4d}}.btn-tasks{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;width:100%;margin-top:8px;padding:8px 16px;font-size:.9em;font-weight:600;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 8px #667eea4d}.btn-tasks:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-tasks:hover:before{left:100%}.btn-tasks:hover{background:linear-gradient(135deg,#5a6fd8 0%,#6a4190 100%);transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-tasks:active{transform:translateY(0);box-shadow:0 2px 6px #667eea4d}.btn-tasks{animation:3s infinite pulseTasks}.btn-tasks.has-pending{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);animation:2s infinite pulseTasks;box-shadow:0 2px 8px #ff6b6b66}.btn-tasks.has-pending:hover{background:linear-gradient(135deg,#ff5252 0%,#e74c3c 100%);box-shadow:0 4px 12px #ff6b6b80}.optimized-animation{will-change:transform, opacity;backface-visibility:hidden;transform:translateZ(0)}@media (hover:none) and (pointer:coarse){a,button,.card-disciplina,.fab{min-height:var(--mobile-touch-target);margin:4px;padding:8px}.btn-tasks:active,.fab:active,.crud-btn:active,.card-disciplina:active{opacity:.8;transform:scale(.97)}}@media (width<=768px) and (orientation:landscape){.fab{position:fixed;right:8px}#edit-gear-btn{bottom:8px}#extra-content-btn{bottom:64px}#add-disciplina-btn{bottom:120px}#ai-writer-btn{bottom:176px}#auto-scroll-btn{bottom:232px}main{padding-top:60px;padding-bottom:80px}.modal-content{max-height:80vh}}@media (width<=480px){body{font-size:14px}.fab{width:48px;height:48px}.card-disciplina{margin:4px 0;padding:12px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.touch-device .button,.touch-device .fab,.touch-device .card-disciplina{cursor:default;-webkit-tap-highlight-color:transparent}#disciplina-modal .modal-content{border-radius:12px;flex-direction:column;width:90vw;max-width:800px;max-height:90vh;display:flex;position:relative;box-shadow:0 4px 20px #0003}#disciplina-modal .modal-header{z-index:10;border-bottom:1px solid #ffffff1a;border-radius:12px 12px 0 0;padding:16px;position:sticky;top:0}#disciplina-modal .header-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}#disciplina-modal h2{color:var(--dark-text);margin:0;font-size:1.5rem}#disciplina-modal #add-new-disciplina-modal{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;padding:8px 16px;font-weight:500;transition:background .2s;display:flex}#disciplina-modal .close-btn{color:var(--dark-text);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:4px;font-size:1.5em;transition:background .2s;display:flex;position:absolute;top:16px;right:16px}#disciplina-modal .modal-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;padding:16px;display:flex;overflow-y:auto}#pizza-container{flex-shrink:0;margin-bottom:24px}#registros-container{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:16px;min-height:0;display:flex;overflow-y:auto}.crud-table{border-collapse:collapse;white-space:nowrap;background:0 0;width:100%}.crud-table th,.crud-table td{text-align:left;border-bottom:1px solid #eee;padding:12px 8px}.crud-table th{color:#00ff41;z-index:1;background:#00ff411a;font-weight:600;position:sticky;top:0}@media (width<=768px){.crud-table{font-size:14px}.crud-table th,.crud-table td{padding:8px 4px}.crud-table td:last-child{padding-right:8px}.crud-table button{min-width:var(--mobile-touch-target);min-height:var(--mobile-touch-target);justify-content:center;align-items:center;margin:2px;padding:8px;display:inline-flex}#disciplina-modal .modal-content{border-radius:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;overflow:hidden}#disciplina-modal .modal-header{border-radius:0;flex-shrink:0;padding:12px}#disciplina-modal h2{font-size:1.2rem}#disciplina-modal #add-new-disciplina-modal{padding:6px 12px;font-size:.9rem}#disciplina-modal .close-btn{top:12px;right:12px}#disciplina-modal .modal-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;padding:12px;display:flex;overflow-y:auto}#pizza-container{flex-shrink:0;margin-bottom:16px}#registros-container{-webkit-overflow-scrolling:touch;flex:1;margin-bottom:16px;padding-bottom:80px;overflow-y:auto}.crud-table{border-collapse:collapse;width:100%;margin-bottom:8px}.crud-table th,.crud-table td{text-align:left;border-bottom:1px solid #eee;padding:8px;font-size:14px}.crud-table th{z-index:1;background:#00ff411a;position:sticky;top:0}.crud-table td:last-child{white-space:nowrap;padding:4px}.crud-table button{min-width:var(--mobile-touch-target);min-height:var(--mobile-touch-target);justify-content:center;align-items:center;margin:2px;display:inline-flex}}.modal-overlay{z-index:4000;width:100vw;height:100vh;padding:var(--mobile-spacing);box-sizing:border-box;z-index:4000;width:100vw;height:100vh;padding:var(--mobile-spacing);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}@media (width<=768px){.modal-overlay{-webkit-overflow-scrolling:touch;padding:8px;overflow-y:auto}}.modal-content{border-radius:var(--border-radius);width:90vw;max-width:500px;max-height:90vh;padding:32px 24px;position:relative;overflow-y:auto;box-shadow:0 4px 15px #0003}@media (width<=768px){.modal-content{border-radius:var(--mobile-border-radius);-webkit-overflow-scrolling:touch;width:100%;max-width:none;max-height:95vh;padding:24px 16px}}#disciplina-modal .modal-content{border-radius:var(--border-radius);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:32px 24px;display:flex;box-shadow:0 4px 15px #0003}#disciplina-modal h2{color:var(--primary-color);margin-bottom:16px;font-size:1.5em}.close-btn{color:var(--white);cursor:pointer;background:0 0;border:none;font-size:2.5em;line-height:1;position:absolute;top:-40px;right:0}#disciplina-modal .close-btn{color:var(--primary-color);font-size:1.5em;top:8px;right:12px}.crud-modal .close-btn{color:var(--light-text);font-size:1.5em;top:8px;right:12px}#pizza-container{flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:380px;height:auto;margin:0 auto;display:flex;position:relative}#pizza-container svg{width:100%;max-width:380px;height:auto;max-height:380px}#pizza-container svg path{cursor:pointer;transition:opacity .2s}#pizza-container svg path:hover{opacity:.85}#pizza-container text{pointer-events:none}.crud-modal h3{color:var(--primary-color);margin-top:0;margin-bottom:8px}.crud-modal input,.crud-modal textarea,.crud-modal select{box-sizing:border-box;border:1px solid #ccc;border-radius:6px;width:100%;padding:10px;font-size:1em}@media (width<=768px){.crud-modal input,.crud-modal textarea,.crud-modal select{font-size:var(--mobile-font-size);border-radius:var(--mobile-border-radius);min-height:var(--mobile-touch-target);padding:12px}}.crud-modal button[type=submit]{background:var(--primary-color);color:var(--white);cursor:pointer;min-height:var(--mobile-touch-target);border:none;border-radius:6px;padding:12px;font-size:1.1em;font-weight:600;transition:background .2s}@media (width<=768px){.crud-modal button[type=submit]{border-radius:var(--mobile-border-radius);padding:16px;font-size:1.1em;position:relative;overflow:hidden}.crud-modal button[type=submit]:active{background:#1565c0;transform:scale(.98)}}.crud-modal button[type=submit]:hover{background:#1565c0}.video-responsive{z-index:1;width:100%;max-width:900px;height:0;margin:24px auto;padding-bottom:56.25%;position:relative}.video-responsive iframe{background:#000;border:none;border-radius:8px;width:100%;height:100%;position:absolute;top:0;left:0}#dashboard-disciplinas table{border-collapse:collapse;white-space:nowrap;width:100%;min-width:600px}#dashboard-disciplinas table th,#dashboard-disciplinas table td{text-align:left;border-bottom:1px solid #eee;padding:12px 8px}#dashboard-disciplinas table th{background-color:var(--light-bg);color:var(--primary-color);font-weight:700}@media (width<=767px){#dashboard-disciplinas table{min-width:auto;font-size:.9em}#dashboard-disciplinas table th,#dashboard-disciplinas table td{padding:8px 4px}}@media (width<=480px){#dashboard-disciplinas table{font-size:.8em}#dashboard-disciplinas table th,#dashboard-disciplinas table td{padding:6px 2px}}.edit-dashboard-disciplina-btn{cursor:pointer;color:#1976d2;vertical-align:middle;background:0 0;border:none;margin-left:6px;font-size:1em}.edit-dashboard-disciplina-btn:hover{color:#b00}.crud-modal{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0;z-index:5000!important}.crud-table{border-collapse:collapse;white-space:nowrap;width:100%;margin-bottom:16px}.crud-table th,.crud-table td{text-align:left;border-bottom:1px solid #eee;padding:8px;font-size:.9em}.crud-table th{background-color:var(--light-bg);color:var(--primary-color);font-weight:700}.crud-table button{cursor:pointer;background:0 0;border:none;border-radius:4px;margin:0 2px;padding:4px;font-size:1em;transition:background .2s}.crud-table button:hover{background:var(--light-bg)}@media (width<=767px){.crud-table{font-size:.8em}.crud-table th,.crud-table td{padding:6px 4px}}@media (width<=480px){.crud-table{font-size:.75em}.crud-table th,.crud-table td{padding:4px 2px}}.progress-bar-bg{background:#00ff411a;border-radius:5px;width:100%;height:10px;margin:8px 0 2px;overflow:hidden}.progress-bar-fg{background:#4caf50;border-radius:5px 0 0 5px;height:100%;transition:width .3s}.progress-label{color:#555;text-align:right;font-size:.95em}.mobile-device{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}.input-feedback{animation:.2s ease-out inputPulse}@keyframes inputPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.mobile-loading{transition:opacity .3s}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid var(--primary-color);border-radius:50%;width:40px;height:40px;margin-bottom:16px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{color:var(--dark-text);font-size:16px;font-weight:500}.mobile-layout .fab{box-shadow:0 4px 16px #0000004d}.mobile-layout .card-disciplina{margin-bottom:12px}@media (width<=768px){button,a,input,select,textarea{min-height:var(--mobile-touch-target);min-width:var(--mobile-touch-target)}button:active,a:active,.card-disciplina:active{transition:transform .1s;transform:scale(.95)}.card-disciplina-title{color:var(--primary-color);font-weight:600}.registro-title{color:#000;font-weight:600}.card-disciplina{margin-bottom:12px}.registro{margin-bottom:20px;padding-bottom:16px}.crud-modal button[type=submit]{background:var(--primary-color);color:var(--white);padding:12px 16px;font-weight:600}.fab:active{transform:scale(.95)}.card-disciplina:active{transform:scale(.98)}#dashboard-disciplinas table{white-space:nowrap}}.crud-modal.modal-overlay{z-index:2147483647;background:#00000059;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.crud-modal .modal-content{z-index:2147483647;border-radius:8px;width:100%;max-width:400px;padding:32px 24px 24px;position:relative;box-shadow:0 8px 32px #00000040}.crud-modal .close-btn{color:#222;cursor:pointer;z-index:2147483647;background:0 0;border:none;font-size:1.5em;position:absolute;top:12px;right:16px}.status-pendente{color:#fff;background:#e53935;border-radius:6px;padding:2px 8px;font-weight:700;animation:1s steps(2,start) infinite blink-pendente}@keyframes blink-pendente{0%,to{opacity:1}50%{opacity:.2}}.status-andamento{color:#fff;background:#ff9800;border-radius:6px;padding:2px 8px;font-weight:700}.status-concluida{color:#fff;background:#43a047;border-radius:6px;padding:2px 8px;font-weight:700}.alert-bell{color:#ffeb3b;vertical-align:middle;filter:drop-shadow(0 0 2px #ff9800);margin-left:8px;font-size:1.3em;animation:.7s infinite alternate bell-ring,1s steps(2,start) infinite bell-blink}@keyframes bell-ring{0%{transform:rotate(-15deg)}20%{transform:rotate(10deg)}40%{transform:rotate(-8deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0)}}@keyframes bell-blink{0%,to{opacity:1}50%{opacity:.2}}.modal-overlay{z-index:10030;opacity:0;pointer-events:none;background:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}.modal-overlay.show{opacity:1;pointer-events:auto}.modal-content.modal-tasks-content{z-index:10031;border-radius:10px;min-width:320px;max-width:95vw;max-height:90vh;padding:32px 24px 24px;position:relative;overflow-y:auto;box-shadow:0 8px 32px #0000002e}.close-tasks-modal{color:#222;cursor:pointer;z-index:10032;background:0 0;border:none;font-size:2em;position:absolute;top:10px;right:16px}.tasks-modal-grade{color:#1f2937;margin-top:6px;font-weight:600}@media (width<=600px){.modal-content.modal-tasks-content{min-width:unset;padding:16px 4vw}}#disciplina-modal.modal-overlay{opacity:0;pointer-events:none;z-index:10020;transition:opacity .2s}#disciplina-modal.modal-overlay.show{opacity:1;pointer-events:auto;z-index:10020}.confirm-modal .modal-content{animation:.3s ease-out modalSlideIn}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.8)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-btn:hover{background:#c82333!important;transform:scale(1.05)!important;box-shadow:0 4px 12px #dc35454d!important}.cancel-btn:hover{background:#ffffff1a!important;border-color:#00ff414d!important;transform:scale(1.05)!important;box-shadow:0 4px 12px #0003!important}#ai-writer-modal.modal-overlay{z-index:2000;opacity:0;background:0 0;justify-content:center;align-items:center;width:100vw;height:100vh;transition:background-color .2s,opacity .2s;display:none;position:fixed;top:0;left:0}#ai-writer-modal.modal-overlay.show{opacity:1;background:#000000bf}#ai-writer-modal .modal-content{opacity:0;border-radius:12px;width:90vw;max-width:1200px;height:90vh;margin:20px auto;transition:transform .2s,opacity .2s;position:relative;overflow:hidden;transform:scale(.95)}#ai-writer-modal.show .modal-content{opacity:1;transform:scale(1)}#ai-writer-modal .close-btn{cursor:pointer;z-index:2001;color:#dc3545;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:2rem;transition:all .2s;display:flex;position:fixed;top:20px;right:40px;box-shadow:0 2px 8px #0003}#ai-writer-modal .close-btn:hover{color:#fff;background:#dc3545;transform:scale(1.1)}#ai-writer-modal .content-container{width:100%;height:100%;overflow:auto}#ai-writer-iframe{border:none;border-radius:12px;width:100%;height:100%}.crud-modal .modal-content{flex-direction:column;max-height:90vh;display:flex}.crud-modal .modal-header{z-index:10;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex;position:sticky;top:0;box-shadow:0 2px 4px #0000000d}.crud-modal .header-actions{align-items:center;gap:12px;display:flex}.crud-modal .add-new-button{background:var(--primary-color);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;align-items:center;gap:4px;padding:8px 16px;font-size:14px;transition:background .2s;display:flex}.crud-modal .add-new-button:hover{background:#1565c0}.crud-modal .modal-body{-webkit-overflow-scrolling:touch;flex:1;padding:24px;overflow:auto}.crud-modal form{flex-direction:column;gap:16px;display:flex}.crud-modal h3{color:#333;margin:0;font-size:1.5em}.crud-modal input,.crud-modal textarea,.crud-modal select{border:1px solid #ddd;border-radius:6px;width:100%;padding:12px;font-size:14px}.crud-modal textarea{resize:vertical;min-height:120px}.crud-modal .action-buttons{z-index:1;border-top:1px solid #eee;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex;position:sticky;bottom:0}.crud-modal button[type=submit],.crud-modal .add-button{color:#fff;cursor:pointer;background:#1976d2;border:none;border-radius:6px;padding:12px 24px;transition:background .2s}.crud-modal button[type=submit]:hover,.crud-modal .add-button:hover{background:#1565c0}@media (width<=768px){.crud-modal .modal-content{border-radius:0;height:100%;max-height:-webkit-fill-available;margin:0}.crud-modal input,.crud-modal textarea,.crud-modal select{border-radius:var(--mobile-border-radius);appearance:none;border:1px solid #ddd;margin-bottom:16px;padding:12px;font-size:16px}.crud-modal .modal-body{-webkit-overflow-scrolling:touch;flex:1;padding:16px;overflow-y:auto}.crud-modal .action-buttons{padding:12px;position:sticky;bottom:0;box-shadow:0 -2px 10px #0000001a}.crud-modal button[type=submit],.crud-modal .add-button{width:100%;min-height:44px;margin:0;padding:12px 20px}.keyboard-visible .modal-content{height:auto;min-height:100vh;position:absolute}#ai-writer-modal .modal-content{border-radius:0;width:100vw;height:100vh;margin:0}}#ai-writer-modal .modal-content{border-radius:12px;width:90vw;max-width:1200px;height:90vh;margin:20px;padding:0;position:relative}#annotation-popup{z-index:2147483647;color:#e8f5e9;-webkit-user-select:none;user-select:none;background:linear-gradient(165deg,#080c0afa 0%,#050806fc 100%);border:1px solid #00ff4138;border-radius:18px;flex-direction:column;width:90vw;max-width:900px;max-height:90vh;font-family:JetBrains Mono,monospace;display:flex;position:fixed;box-shadow:0 0 50px #00ff410f,0 24px 60px #000000e6}#annotation-popup.dragging{transition:none;box-shadow:0 12px 40px #0000004d}#annotation-popup .popup-header{cursor:move;background:#040805fc;border-bottom:1px solid #00ff412e;border-radius:18px 18px 0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}#annotation-popup .popup-header h3{color:#00ff41;margin:0;font-size:1.1em;font-weight:600}#annotation-popup .close-popup-btn{color:#666;cursor:pointer;background:0 0;border:none;font-size:1.5em}#annotation-popup .popup-body{flex-direction:row;flex-grow:1;gap:20px;padding:20px;display:flex;overflow-y:auto}#annotation-popup .ai-explanation{border-radius:8px;flex:2;min-width:250px;max-height:400px;padding:12px;font-size:.9em;line-height:1.5;overflow-y:auto;color:#e8f5e9!important;background:#0a0f0cb3!important;border:1px solid #00ff4133!important}#annotation-popup .annotation-controls{flex-direction:column;flex:1;gap:16px;min-width:250px;display:flex}#annotation-popup .annotation-section label{margin-bottom:8px;font-size:.9em;font-weight:500;display:block;color:#00ff41!important}#annotation-popup .annotation-section textarea,#annotation-popup .annotation-section input{box-sizing:border-box;border-radius:6px;width:100%;padding:12px;font-family:inherit;font-size:.9em;transition:all .2s;color:#e8f5e9!important;background:#0a0f0ccc!important;border:1px solid #00ff4133!important}#annotation-popup .annotation-section textarea:focus,#annotation-popup .annotation-section input:focus{outline:none;border-color:#00ff41!important;box-shadow:0 0 10px #00ff4133!important}#annotation-popup .quick-styles{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}#annotation-popup .quick-style-btn{color:#e8f5e9;cursor:pointer;text-align:center;background:#0006;border:1px solid #00ff4133;border-radius:6px;padding:8px 12px;font-size:.85em;transition:all .2s}#annotation-popup .quick-style-btn:hover{background:#00ff411a;border-color:#007bff;transform:translateY(-1px)}#annotation-popup .quick-style-btn.selected{color:#fff;background:#007bff;border-color:#007bff;transform:scale(1.05);box-shadow:0 2px 8px #007bff4d}#annotation-popup .popup-footer{background-color:#040805fc;border-top:1px solid #00ff4126;border-radius:0 0 12px 12px;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:16px 20px;display:flex}#annotation-popup .footer-right{gap:8px;display:flex}#annotation-popup .btn-cancel,#annotation-popup .btn-save,#annotation-popup .btn-remove{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:.9em;font-weight:500;transition:all .2s}#annotation-popup .btn-cancel{color:#666;background:#00ff411a;border:1px solid #ddd}#annotation-popup .btn-save{color:#fff;background:#007bff}#annotation-popup .btn-remove{color:#fff;background:#dc3545}.annotated-text{cursor:help;border-bottom:2px dotted #ff9800}.btn-ai-explain{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:.9em;font-weight:500;transition:all .2s;display:flex}.btn-ai-explain:hover{transform:translateY(-1px)}.ai-explanation.show{display:block}@media (width<=768px){#annotation-popup .popup-body{flex-direction:column}#annotation-popup .ai-explanation,#annotation-popup .annotation-controls{min-width:100%}#annotation-popup .ai-explanation{max-height:200px}}.task-score-cell{color:var(--accent-color,#4facfe);text-align:center;font-size:1.1rem}.score-max{opacity:.7;margin-left:2px;font-size:.8rem}.canvas-link-icon{opacity:.6;justify-content:center;align-items:center;margin-left:8px;font-size:.9rem;text-decoration:none;transition:opacity .2s,transform .2s;display:inline-flex}.canvas-link-icon:hover{opacity:1;transform:scale(1.2)}.task-name-cell{align-items:center;gap:5px;display:flex}.task-comment-preview{color:gold;cursor:help;opacity:.8;margin-top:4px;font-size:.75rem;font-style:italic}.task-card-comment{background:#ffffff0d;border-left:3px solid gold;border-radius:4px;padding:8px;font-size:.85rem;margin-top:10px!important}.task-dates-cell small{line-height:1.2;display:block}.task-type-badge{color:#666;text-transform:uppercase;background:#0000000d;border:1px solid #0000001a;border-radius:12px;align-items:center;margin-left:8px;padding:2px 8px;font-size:.65rem;font-weight:700;display:inline-flex}.status-entregue,.status-corrigida{color:#fff!important;background:#2d9d30!important}.status-revisao{color:#000!important;background:#ffeb3b!important}.status-lancada{color:#fff!important;background:#9c27b0!important}.disciplina-row-finished{opacity:.85;background-color:#2d9d301a!important}.disciplina-row-finished td{font-weight:500;color:#2d9d30!important}.disciplina-row-studying{background-color:#1d78f214!important}.disciplina-row-studying td{font-weight:500;color:#1d78f2!important}.disciplina-row-approved{background-color:#2ea0431f!important}.disciplina-row-approved td{font-weight:600;color:#2ea043!important}.disciplina-status-badge{border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 10px;font-size:.74rem;font-weight:700;line-height:1.1;display:inline-flex}.disciplina-status-studying{color:#1d78f2;background:#1d78f224;border-color:#1d78f259}.disciplina-status-approved{color:#2ea043;background:#2ea04329;border-color:#2ea04373}.task-title-text{font-weight:500}.modal-overlay,.modal{-webkit-backdrop-filter:blur(12px)!important;background:#000502d1!important}.modal-content{color:#e8f5e9!important;background:linear-gradient(165deg,#080c0afa 0%,#050806fc 100%)!important;border:1px solid #00ff4138!important;border-radius:18px!important;box-shadow:0 0 50px #00ff410f,0 24px 60px #000000e6!important}.modal-header,.ui-modal-header,.crud-modal .ui-modal-header,.tasks-modal-header{background:#040805fc!important;border-bottom:1px solid #00ff412e!important;border-radius:18px 18px 0 0!important}.modal-header h3,.ui-modal-title,.crud-modal .ui-modal-title,.tasks-modal-title{color:#00ff41!important;letter-spacing:1px!important;text-shadow:0 0 10px #00ff414d!important;font-family:JetBrains Mono,monospace!important}.crud-modal h3{color:#00ff41!important;font-family:JetBrains Mono,monospace!important}.modal-body,.ui-modal-body{color:#a5c7a8!important;background:0 0!important}.tasks-modal-body{background:#050806fc!important}.close-btn,.crud-modal .close-btn{color:#00ff41!important;cursor:pointer!important;background:#000000b3!important;border:1px solid #00ff414d!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:34px!important;height:34px!important;font-size:1.4em!important;transition:all .2s!important;display:flex!important;position:absolute!important;top:12px!important;right:14px!important}.close-btn:hover,.crud-modal .close-btn:hover{background:#00ff411f!important;box-shadow:0 0 14px #00ff4140!important}.crud-modal input,.crud-modal textarea,.crud-modal select,.modal-body input,.modal-body textarea,.modal-body select{color:#e8f5e9!important;box-sizing:border-box!important;background:#00050299!important;border:1px solid #00ff4133!important;border-radius:10px!important;width:100%!important;padding:10px 14px!important;font-family:JetBrains Mono,monospace!important}.crud-modal input:focus,.crud-modal textarea:focus,.crud-modal select:focus,.modal-body input:focus,.modal-body textarea:focus,.modal-body select:focus{border-color:#00ff41!important;outline:none!important;box-shadow:0 0 14px #00ff412e!important}.crud-modal input::placeholder,.crud-modal textarea::placeholder,.modal-body input::placeholder{color:#a5c7a866!important}.crud-modal button[type=submit]{color:#000!important;cursor:pointer!important;background:linear-gradient(135deg,#00ff41 0%,#008f11 100%)!important;border:none!important;border-radius:10px!important;padding:12px 20px!important;font-family:JetBrains Mono,monospace!important;font-weight:700!important;transition:all .25s!important}.crud-modal button[type=submit]:hover{filter:brightness(1.1)!important;transform:translateY(-1px)!important;box-shadow:0 0 20px #00ff4159!important}.crud-modal button[type=submit]:active{transform:scale(.98)!important}.modal-footer,.ui-modal-footer{background:#040805fc!important;border-top:1px solid #00ff411f!important;border-radius:0 0 18px 18px!important}.crud-table{background:0 0!important}.crud-table th{color:#00ff41!important;background:#00ff410f!important;border-bottom:1px solid #00ff4126!important;font-family:JetBrains Mono,monospace!important}.crud-table td{color:#a5c7a8!important;border-bottom:1px solid #00ff410f!important}.crud-table tbody tr:hover{background:#00ff410a!important}.modal-agenda-content .modal-header,.modal-agenda-content .modal-header{background:#040805fc!important;border-bottom:1px solid #00ff412e!important}.modal-agenda-content .modal-header h3{color:#00ff41!important;text-shadow:0 0 10px #00ff4140!important;font-family:JetBrains Mono,monospace!important}.modal-agenda-content .modal-body{color:#a5c7a8!important;background:0 0!important}.modal-agenda-content .modal-footer{background:#040805fc!important;border-top:1px solid #00ff411f!important}.modal-agenda-content .crud-table th{color:#00ff41!important;background:#00ff410d!important;border-bottom:1px solid #00ff4126!important;font-family:JetBrains Mono,monospace!important}.modal-agenda-content .crud-table td{color:#a5c7a8!important;border-bottom:1px solid #00ff410d!important}.modal-agenda-content .crud-table tbody tr:hover{background:#00ff410a!important}.today-appointment{font-weight:700!important;animation:2s ease-in-out infinite pulse-neon!important}@keyframes pulse-neon{0%{background-color:#0000}50%{background-color:#00ff4114}to{background-color:#0000}}.btn-save{color:#000!important;cursor:pointer!important;background:linear-gradient(135deg,#00ff41 0%,#008f11 100%)!important;border:none!important;border-radius:10px!important;padding:10px 20px!important;font-family:JetBrains Mono,monospace!important;font-weight:700!important;transition:all .25s!important}.btn-save:hover{filter:brightness(1.1)!important;box-shadow:0 0 18px #00ff4159!important}.loading-agenda,.empty-message,.error-message{color:#7a9e7e!important}.crud-modal label,.modal-body label,.ui-modal-body label{color:#a5c7a8!important;font-family:JetBrains Mono,monospace!important;font-size:.85rem!important}.crud-modal select option,.modal-body select option{color:#e8f5e9!important;background:#0a0f0c!important}.task-card,.task-item{color:#a5c7a8!important;background:#00050280!important;border:1px solid #00ff411a!important}.task-card:hover,.task-item:hover{background:#00ff410a!important;border-color:#00ff4140!important}.status-badge{border-radius:999px!important;font-family:JetBrains Mono,monospace!important;font-size:.75rem!important}.status-pendente-agenda{color:#ffe082!important;background:#ffc80026!important;border:1px solid #ffc80040!important}.status-concluido-agenda{color:#00ff41!important;background:#00ff411a!important;border:1px solid #00ff4133!important}.disciplina-status-active{color:#00ff41!important;background:#00ff4114!important;border-color:#00ff4140!important}.disciplina-status-finished{color:#69f0ae!important;background:#00c86414!important;border-color:#00c86440!important}.disciplina-status-other{color:#9e9e9e!important;background:#78787814!important;border-color:#78787833!important}.add-new-task-button,.tasks-cta-button{color:#000!important;cursor:pointer!important;white-space:nowrap!important;background:linear-gradient(135deg,#00ff41 0%,#008f11 100%)!important;border:none!important;border-radius:10px!important;padding:9px 16px!important;font-family:JetBrains Mono,monospace!important;font-size:.85rem!important;font-weight:700!important;transition:all .2s!important}.add-new-task-button:hover,.tasks-cta-button:hover{filter:brightness(1.1)!important;box-shadow:0 0 18px #00ff4159!important}.tasks-filter-count{color:#7a9e7e!important;margin-left:auto!important;font-family:JetBrains Mono,monospace!important;font-size:.8rem!important}.tasks-crud-table td,.ui-modal-table td{color:#a5c7a8!important;vertical-align:middle!important;border-bottom:1px solid #00ff410f!important}.tasks-crud-table tr:hover td,.ui-modal-table tr:hover td{background:#00ff4108!important}.task-name-cell{flex-direction:column!important;gap:4px!important;display:flex!important}.task-title-text{color:#e8f5e9!important;font-weight:500!important}.task-type-badge{color:#81d4fa!important;background:#00c8ff14!important;border:1px solid #00c8ff33!important;border-radius:999px!important;width:fit-content!important;padding:2px 8px!important;font-family:JetBrains Mono,monospace!important;font-size:.72rem!important}.canvas-link-icon{opacity:.7!important;font-size:.85rem!important;text-decoration:none!important;transition:opacity .2s!important}.canvas-link-icon:hover{opacity:1!important}.task-score-cell strong{color:#00ff41!important;font-family:JetBrains Mono,monospace!important}.score-max{color:#7a9e7e!important;font-family:JetBrains Mono,monospace!important;font-size:.85em!important}.task-dates-cell small{color:#7a9e7e!important;font-family:JetBrains Mono,monospace!important;font-size:.78rem!important;display:block!important}.task-deadline-badge{border-radius:999px!important;padding:1px 7px!important;font-family:JetBrains Mono,monospace!important;font-size:.7rem!important;font-weight:700!important}.task-deadline-badge.overdue{color:#ff9898!important;background:#ff4b4b1a!important;border:1px solid #ff4b4b33!important}.task-deadline-badge.due-today{color:#ffe082!important;background:#ffc8001a!important;border:1px solid #ffc80033!important}.task-deadline-badge.upcoming{color:#81d4fa!important;background:#00c8ff0f!important;border:1px solid #00c8ff26!important}.task-status{white-space:nowrap!important;font-family:JetBrains Mono,monospace!important;font-size:.8rem!important;font-weight:600!important}.task-status.status-em_andamento,.task-status.em_andamento{color:#ffe082!important}.task-status.status-concluida,.task-status.concluida{color:#00ff41!important}.task-status.status-overdue,.task-status.overdue{color:#ff9898!important}.tasks-action-btn{cursor:pointer!important;background:0 0!important;border:1px solid #00ff411a!important;border-radius:8px!important;margin:0 2px!important;padding:5px 8px!important;font-size:1rem!important;transition:all .2s!important}.tasks-action-btn:hover{background:#00ff410f!important;border-color:#00ff414d!important}.tasks-action-btn.danger:hover{background:#ff4b4b0f!important;border-color:#ff4b4b4d!important}.tasks-action-btn.disabled{opacity:.4!important;cursor:not-allowed!important}.tasks-table-wrap{overflow-x:auto!important}.tasks-table-wrap::-webkit-scrollbar{height:4px!important}.tasks-table-wrap::-webkit-scrollbar-track{background:#0003!important}.tasks-table-wrap::-webkit-scrollbar-thumb{background:#00ff414d!important;border-radius:4px!important}.modal-content,.modal-content p,.modal-content span,.modal-content div,.modal-content small,.modal-content td,.modal-content li{color:#d4ead6!important}.task-title-text,.modal-content strong,.modal-content b{color:#fff!important}.tasks-modal-subtitle,.tasks-modal-grade,.score-max,.tasks-filter-count,.task-dates-cell small,.tasks-fixed-order{color:#b2cfb4!important}.tasks-crud-table td,.ui-modal-table td,.crud-table td{color:#d4ead6!important}.tasks-crud-table th,.ui-modal-table th,.crud-table th{color:#00ff41!important}.card-disciplina-date,.card-disciplina-situation,.card-disciplina-type,.progress-label,.dashboard-reco-subtitle{color:#b2cfb4!important}.index-ux-chip{color:#00ff41!important}.task-status.status-pendente,.task-status.pendente{color:#90caf9!important}.tasks-search-input::placeholder,.index-ux-search::placeholder{color:#b4d2b980!important}.modal-body,.ui-modal-body{color:#d4ead6!important}.main-header{color:#fff;z-index:1000;-webkit-backdrop-filter:blur(20px);box-sizing:border-box;background:linear-gradient(120deg,#020d05 0%,#050f06 40%,#030a04 100%);border-bottom:1px solid #00ff4133;justify-content:space-between;align-items:center;width:100%;padding:14px 32px;font-family:Outfit,Segoe UI,sans-serif;display:flex;position:sticky;top:0;left:0;box-shadow:0 4px 24px #000000b3,0 0 80px #00ff410a}.main-header:after{content:"";opacity:.4;background:linear-gradient(90deg,#0000,#00ff41,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.user-greeting{color:#a5c7a8e6;letter-spacing:.5px;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:500;transition:opacity .2s,transform .2s}.user-greeting:hover{opacity:.8;transform:translate(4px)}.user-greeting:before{content:"> ";color:#00ff41;font-weight:700}#header-user-name{color:#00ff41;text-shadow:0 0 8px #00ff4166;font-weight:700}#hacker-btn{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),filter .2s;display:flex;position:absolute;left:50%;transform:translate(-50%)}#hacker-btn:hover{filter:drop-shadow(0 0 12px #00ff4199);transform:translate(-50%)scale(1.15)}#hacker-btn img{filter:drop-shadow(0 0 6px #00ff414d);width:auto;height:48px;transition:filter .2s}#logout-btn{color:#00ff41;letter-spacing:1px;cursor:pointer;text-transform:uppercase;background:0 0;border:1px solid #00ff4159;border-radius:999px;padding:9px 22px;font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:600;transition:all .25s}#logout-btn:hover{background:#00ff411a;border-color:#00ff41b3;transform:translateY(-1px);box-shadow:0 0 16px #00ff4133}#logout-btn:active{transform:translateY(0)}@media (width<=768px){.main-header{height:68px;padding:12px 16px}.user-greeting{white-space:nowrap;text-overflow:ellipsis;max-width:90px;font-size:.78rem;overflow:hidden}#hacker-btn img{height:38px}#logout-btn{padding:7px 14px;font-size:.75rem}}:root{--cyber-green:#00ff41;--cyber-green-dim:#00ff4133;--cyber-green-bright:#00ff85;--dark-bg:#0d1117;--glass-bg:#0d1117d9;--border-glow:#00ff4140}*{box-sizing:border-box}.login-page-body{color:#fff;background-color:#050505;justify-content:center;align-items:center;height:100dvh;margin:0;padding:0;font-family:Outfit,sans-serif;display:flex;position:relative;overflow:hidden}.login-page-body:before{content:" ";z-index:2;pointer-events:none;background:linear-gradient(#12101000 50%,#00000040 50%) 0 0/100% 4px,linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f) 0 0/3px 100%;display:block;position:absolute;inset:0}.login-page-body:after{content:"";opacity:.15;z-index:1;pointer-events:none;background:url(https://grainy-gradients.vercel.app/noise.svg);width:200%;height:200%;animation:.2s infinite noise;position:absolute;top:-50%;left:-50%}@keyframes noise{0%{transform:translate(0)}10%{transform:translate(-5%,-5%)}20%{transform:translate(-10%,5%)}30%{transform:translate(5%,-10%)}40%{transform:translate(-5%,15%)}50%{transform:translate(-10%,5%)}60%{transform:translate(15%)}70%{transform:translateY(10%)}80%{transform:translate(-15%)}90%{transform:translate(10%,5%)}to{transform:translate(5%)}}.main-wrapper{z-index:10;-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:center;align-items:flex-end;width:100%;height:100%;padding:40px 60px 40px 20px;display:flex;position:relative;overflow:hidden auto}.login-container{background:var(--glass-bg);border:1px solid var(--border-glow);-webkit-backdrop-filter:blur(25px);text-align:center;border-radius:20px;width:100%;max-width:380px;padding:40px 30px;animation:.8s cubic-bezier(.16,1,.3,1) containerEnter;position:relative;box-shadow:0 0 30px #00ff410d,inset 0 0 15px #00ff410d}@keyframes containerEnter{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.login-container img{max-width:120px;height:auto;filter:drop-shadow(0 0 10px var(--cyber-green-dim));margin-bottom:30px;animation:4s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(2deg)}}.form-group{text-align:left;margin-bottom:20px}.form-group label{color:var(--cyber-green);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:.85rem;display:block}.form-group input{color:#fff;box-sizing:border-box;background:#0006;border:1px solid #00ff4126;border-radius:10px;width:100%;padding:13px 16px;font-family:JetBrains Mono,monospace;font-size:1rem;transition:all .3s}.form-group input:focus{border-color:var(--cyber-green);background:#00ff410d;outline:none;box-shadow:0 0 15px #00ff4126}.login-button{color:#000;cursor:pointer;text-transform:uppercase;letter-spacing:2px;background:linear-gradient(135deg,#00ff41 0%,#008f11 100%);border:none;border-radius:10px;width:100%;margin-top:10px;padding:14px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.login-button:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 0 25px #00ff4166}.login-button:active{transform:translateY(0)}.status-message{border-radius:6px;min-height:1.2rem;margin-top:20px;padding:8px;font-family:JetBrains Mono,monospace;font-size:.8rem}.login-footer{color:#ffffff4d;text-align:center;z-index:10;letter-spacing:1px;width:100%;max-width:380px;margin-top:10px;padding:12px 0;font-family:JetBrains Mono,monospace;font-size:.65rem}@media (width<=480px){.main-wrapper{align-items:center;padding:40px 20px}.login-container{width:100%;margin-bottom:20px;padding:30px 20px}.login-container img{max-width:90px;margin-bottom:20px}.form-group label{font-size:.75rem}.form-group input{padding:11px 14px;font-size:.95rem}.login-button{padding:12px;font-size:.95rem}}@media (height<=650px){.login-container{padding:25px 20px}.login-container img{max-width:60px;margin-bottom:15px}.main-wrapper{padding:10px}.form-group{margin-bottom:12px}}:root{--idx-surface:linear-gradient(165deg, #0d1117f2, #0a0e14fa);--idx-card:linear-gradient(165deg, #0f141ce6 0%, #0a0f16f2 100%);--idx-border:#00ff4126;--idx-shadow:0 14px 34px #0009;--idx-accent:#00ff41;--idx-accent-2:#00c8ff;--idx-font-body:"Outfit", "Segoe UI", sans-serif;--idx-font-display:"Outfit", "Manrope", sans-serif;--idx-font-mono:"JetBrains Mono", monospace;--idx-space-1:8px;--idx-space-2:16px;--idx-space-3:24px;--idx-space-4:32px;--idx-text-strong:#c8e6c9;--idx-text-mid:#9ec4a0;--idx-text-soft:#6b9b6e;--idx-focus-ring:#00ff41;--page-bg:#050505}body{color:var(--idx-text-strong);background-color:var(--page-bg)!important}#dashboard{-webkit-backdrop-filter:blur(20px);background:var(--idx-surface)!important;border:1px solid var(--idx-border)!important;box-shadow:0 0 40px #00ff410a, var(--idx-shadow)!important}#dashboard h2{text-shadow:0 0 12px #00ff414d;letter-spacing:2px;color:var(--idx-accent)!important;font-family:var(--idx-font-mono)!important}.card-disciplina{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--idx-card)!important;border:1px solid #00ff411f!important;border-left:4px solid #00ff4180!important;transition:transform .18s,box-shadow .2s,border-color .2s!important;box-shadow:0 8px 24px #0006!important}.card-disciplina:hover{border-color:#00ff414d!important;transform:translateY(-4px)scale(1.01)!important;box-shadow:0 0 20px #00ff411f,0 20px 36px #00000080!important}.card-disciplina-title{color:#f0fff4!important;font-family:var(--idx-font-display)!important;font-size:1rem!important;font-weight:600!important}.card-disciplina-date,.card-disciplina-situation,.card-disciplina-type,.progress-label{color:var(--idx-text-soft)!important;font-size:.82rem!important}.progress-bar-bg{background:#00ff4114!important}.progress-bar-fg{box-shadow:0 0 8px #00ff4166;background:linear-gradient(90deg,#00ff41,#00c8ff)!important}.card-disciplina-pending-chip{color:var(--idx-text-mid)!important;background:#00ff410f!important;border:1px solid #00ff411a!important}.card-disciplina-pending-chip.has-pending{color:#ff9898!important;background:#ff4b4b1a!important;border-color:#ff4b4b33!important}.card-disciplina-progress-chip{color:var(--idx-text-mid)!important;background:#00c8ff0f!important;border:1px solid #00c8ff1f!important}.card-disciplina-progress-chip.has-progress{color:#ffe082!important;background:#ffc80014!important;border-color:#ffc80033!important}.btn-tasks{border-radius:10px;color:var(--idx-accent)!important;font-family:var(--idx-font-mono)!important;background:#0006!important;border:1px solid #00ff4133!important;font-size:.82rem!important;transition:all .2s!important}.btn-tasks.has-pending{color:#ff9898!important;border-color:#ff4b4b59!important}.index-ux-toolbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1117cc!important;border:1px solid #00ff411f!important}.index-ux-search{border-radius:10px;color:#fff!important;font-family:var(--idx-font-mono)!important;background:#00000080!important;border:1px solid #00ff4126!important}.index-ux-search:focus{border-color:var(--idx-accent)!important;outline:none!important;box-shadow:0 0 12px #00ff4126!important}.index-ux-chip{color:var(--idx-accent)!important;font-family:var(--idx-font-mono)!important;background:#00ff4114!important}.index-ux-clear{color:var(--idx-text-mid)!important;font-family:var(--idx-font-mono)!important;background:#0006!important;border:1px solid #00ff4126!important;transition:all .2s!important}.index-ux-clear:hover{color:var(--idx-accent)!important;border-color:#00ff414d!important}.dashboard-reco{background:#0d1117b3!important;border:1px solid #00ff411a!important}.dashboard-reco-title{color:var(--idx-text-strong)!important}.dashboard-reco-subtitle{color:var(--idx-text-mid)!important}.dashboard-reco-btn{color:#000!important;background:linear-gradient(135deg,#00ff41 0%,#008f11 100%)!important;border-radius:10px!important;font-weight:700!important}.today-pill{color:var(--idx-text-mid)!important;background:#0000004d!important;border:1px solid #00ff4126!important}#disciplinas-empty-state,.dashboard-empty-state{color:var(--idx-text-mid)!important;background:#0d1117b3!important;border:1px dashed #00ff4133!important}.app-toast.info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #00c8ff40;background:linear-gradient(140deg,#0050a0e6,#00326ef2)!important}.app-toast.success{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #00ff4140;background:linear-gradient(140deg,#006432e6,#00461ef2)!important}.app-toast.warning{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffc80040;color:#ffe082!important;background:linear-gradient(140deg,#785000e6,#503700f2)!important}.app-toast.error{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ff4b4b40;background:linear-gradient(140deg,#78141ee6,#500a14f2)!important}#add-disciplina-btn,#ai-writer-btn{color:#000!important;background:linear-gradient(135deg,#00ff41,#008f11)!important;transition:all .25s!important;box-shadow:0 0 20px #00ff414d,0 8px 20px #00000080!important}#add-disciplina-btn:hover,#ai-writer-btn:hover{transform:translateY(-2px)!important;box-shadow:0 0 30px #00ff4180,0 10px 24px #0009!important}#agenda-btn{background:#0d1117e6!important;border:1px solid #00ff4140!important;box-shadow:0 0 15px #00ff411a,0 8px 20px #00000080!important}#agenda-btn:hover{background:#00ff411a!important;box-shadow:0 0 25px #00ff4133!important}.skeleton-line,.skeleton-bar{background:linear-gradient(90deg,#00ff410a 25%,#00ff4114 40%,#00ff410a 70%) 0 0/200% 100%!important}body{font-family:var(--idx-font-body);letter-spacing:.01em;line-height:1.5}.main-header span,.main-header button{font-family:var(--idx-font-body)}.main-header{padding:var(--idx-space-2) var(--idx-space-3);background:linear-gradient(120deg,#020d05 0%,#050f06 40%,#030a04 100%)!important;border-bottom:1px solid #00ff4133!important;box-shadow:0 4px 24px #000000b3,0 0 80px #00ff410a!important}.main-header #logout-btn{border-radius:999px;font-weight:600}#dashboard{background:var(--idx-surface);border:1px solid var(--idx-border);box-shadow:var(--idx-shadow);padding:var(--idx-space-3);border-radius:18px}#dashboard h2{font-family:var(--idx-font-display);letter-spacing:.01em;margin-bottom:var(--idx-space-2);font-size:clamp(1.3rem,2vw,1.85rem)}.dashboard-reco{margin-top:var(--idx-space-1);margin-bottom:var(--idx-space-2);padding:var(--idx-space-2);background:#f1f8ffe6;border:1px solid #14488a29;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;display:flex}.dashboard-today-strip{gap:var(--idx-space-1);margin:0 0 var(--idx-space-2);flex-wrap:wrap;display:flex}.today-pill{cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;padding:6px 10px;font-size:.82rem;font-weight:700;transition:transform .16s,box-shadow .2s,filter .2s;display:inline-flex}.today-pill:hover,.today-pill:focus-visible{filter:brightness(.98);outline:none;transform:translateY(-1px);box-shadow:0 6px 14px #0b234326}.today-pill:active{transform:translateY(0)}.today-pill::-moz-focus-inner{border:0;padding:0}.today-pill[disabled]{cursor:not-allowed;opacity:.7}.today-pill.overdue{color:#7f1524;background:#d63a4a24;border-color:#b723333d}.today-pill.due-today{color:#8b2c00;background:#faa43533;border-color:#d977064d}.today-pill.pending{color:#1d4f89;background:#1f7ae02e;border-color:#175cac47}.today-pill.progress{color:#176258;background:#1cb7a629;border-color:#0e8f8147}.dashboard-reco.urgent{background:#fff1f3f2;border-color:#be2c3f3d}.dashboard-reco-title{color:var(--idx-text-strong);margin:0;font-weight:700}.dashboard-reco-subtitle{color:var(--idx-text-mid);margin:3px 0 0;font-size:.9rem}.dashboard-reco-btn{color:#fff;background:linear-gradient(140deg,#1f7ae0,#165fb8);border:none;border-radius:10px;padding:9px 12px;font-weight:700}.dashboard-sync-card{background:linear-gradient(#0a120ef5,#080e0ceb);border:1px solid #00ff4124;border-radius:18px;gap:14px;margin:0 0 18px;padding:14px 16px;display:grid;box-shadow:0 14px 30px #0000003d}.dashboard-sync-card.syncing{background:linear-gradient(#1c1506f5,#120e05eb);border-color:#ffc43d3d}.dashboard-sync-copy{min-width:0}.dashboard-sync-eyebrow{color:#d6ffdf94;letter-spacing:.12em;text-transform:uppercase;margin:0 0 3px;font-size:.72rem;font-weight:800}.dashboard-sync-title{color:var(--idx-text-strong);margin:0;font-size:clamp(1rem,1.6vw,1.18rem);font-weight:800}.dashboard-sync-subtitle{color:#d6ffdfb8;margin:4px 0 0;font-size:.92rem;line-height:1.5}.dashboard-sync-metrics{flex-wrap:wrap;gap:10px;display:flex}.dashboard-sync-pill{color:#b8ffc6ad;letter-spacing:.04em;text-transform:uppercase;background:#ffffff08;border:1px solid #00ff411f;border-radius:14px;flex-direction:column;gap:4px;min-width:108px;padding:10px 12px;font-size:.76rem;font-weight:700;display:flex}.dashboard-sync-card.syncing .dashboard-sync-pill{color:#ffdb80d1;background:#ffc43d0f;border-color:#ffc43d2e}.dashboard-sync-pill strong{color:var(--idx-text-strong);letter-spacing:0;text-transform:none;font-size:1.05rem;font-weight:800}.dashboard-empty-state{text-align:center;color:var(--idx-text-mid);background:#ffffffe0;border:1px dashed #164a8957;border-radius:12px;padding:18px}.dashboard-empty-state.error{color:#8b2735;border-color:#b1344466}.dashboard-empty-state button{color:#fff;background:linear-gradient(140deg,#1f7ae0,#165fb8);border:none;border-radius:10px;margin-top:10px;padding:9px 13px;font-weight:700}.skeleton-card{animation:1.2s ease-in-out infinite skeletonPulse}.skeleton-line,.skeleton-bar{background:linear-gradient(90deg,#e7eef9 25%,#dfe8f6 40%,#e7eef9 70%) 0 0/200% 100%;border-radius:8px;animation:1.3s linear infinite skeletonShimmer}.skeleton-line{height:12px;margin-bottom:8px}.skeleton-line.w-80{width:80%}.skeleton-line.w-70{width:70%}.skeleton-line.w-60{width:60%}.skeleton-line.w-55{width:55%}.skeleton-line.w-45{width:45%}.skeleton-bar{height:8px;margin-bottom:9px}.skeleton-reco{min-height:52px}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes skeletonPulse{0%,to{opacity:.9}50%{opacity:1}}.app-toast-root{z-index:11000;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:16px;right:14px}.app-toast{color:#fff;opacity:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;min-width:240px;max-width:min(92vw,420px);padding:10px 12px;font-weight:600;transition:opacity .22s,transform .22s;display:flex;transform:translateY(8px);box-shadow:0 12px 28px #09182f57}.app-toast.show{opacity:1;transform:translateY(0)}.app-toast.success{background:linear-gradient(140deg,#1f9f73,#157d5a)}.app-toast.error{background:linear-gradient(140deg,#c53f4f,#9b2234)}.app-toast.warning{color:#1a1305;background:linear-gradient(140deg,#df9b1f,#b87400)}.app-toast.info{background:linear-gradient(140deg,#1f7ae0,#135da8)}.app-toast-action{color:inherit;cursor:pointer;background:#ffffff38;border:1px solid #ffffff6b;border-radius:8px;padding:6px 10px;font-size:.82rem;font-weight:700}.app-toast.warning .app-toast-action{background:#ffffff52;border-color:#1a130559}.sr-only-live{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.index-ux-toolbar{gap:var(--idx-space-1);padding:var(--idx-space-2);margin-bottom:var(--idx-space-2);background:#ffffffbd;border:1px solid #1e519524;border-radius:12px;flex-wrap:wrap;align-items:center;display:flex}.index-ux-search{background:0 0;border:1px solid #1e519538;border-radius:10px;flex:260px;min-width:220px;padding:10px 12px}.index-ux-chip{color:var(--idx-text-strong);background:#1f7ae024;border-radius:999px;padding:8px 12px;font-size:.92rem;font-weight:600}.index-ux-clear{color:var(--idx-text-strong);background:0 0;border:1px solid #143a6f33;border-radius:10px;padding:9px 12px;font-weight:600}#disciplinas-empty-state{text-align:center;color:var(--idx-text-mid);background:#ffffffd6;border:1px dashed #12488b5c;border-radius:12px;margin-top:8px;padding:18px}#dashboard-disciplinas{gap:var(--idx-space-2);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:stretch;display:grid}.card-disciplina{background:var(--idx-card);border:1px solid var(--idx-border);padding:var(--idx-space-2);border-left:5px solid #1f7ae04d;border-radius:14px;min-width:0;transition:transform .16s,box-shadow .2s,border-color .2s;box-shadow:0 10px 24px #11386617}.card-disciplina:hover{transform:translateY(-3px)scale(1.01);box-shadow:0 18px 30px #0f356329}.card-disciplina.priority-overdue{border-left-color:#b72333db}.card-disciplina.priority-today{border-left-color:#d97706d1}.card-disciplina.priority-ok{border-left-color:#16629fb8}.card-disciplina-title{font-family:var(--idx-font-display);color:var(--idx-text-strong);letter-spacing:.01em;font-size:1.06rem}.card-disciplina-date,.card-disciplina-situation,.card-disciplina-type,.progress-label{color:var(--idx-text-soft)}.card-disciplina-grade{color:var(--idx-text-strong);font-weight:700}.card-disciplina-priority{border:1px solid #0000;border-radius:999px;width:fit-content;margin-top:8px;margin-bottom:8px;padding:4px 9px;font-size:.77rem;font-weight:700}.card-disciplina-priority.priority-overdue{color:#7f1524;background:#d63a4a24;border-color:#b723333d}.card-disciplina-priority.priority-today{color:#8b2c00;background:#faa43533;border-color:#d977064d}.card-disciplina-priority.priority-ok{color:#1d4f89;background:#1f7ae01f;border-color:#175cac33}.progress-bar-bg{background:#20529524;border-radius:999px;height:9px;margin:8px 0;overflow:hidden}.progress-bar-fg{background:linear-gradient(90deg, var(--idx-accent), var(--idx-accent-2))}.card-disciplina-actions{margin-top:10px}.card-disciplina-pending-row{flex-wrap:wrap;gap:6px;margin-top:6px;margin-bottom:4px;display:flex}.card-disciplina-pending-chip{color:#366596;background:#296db71f;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.card-disciplina-pending-chip.has-pending{color:#8b1f2d;background:#e0405229}.card-disciplina-progress-chip{color:#3a627d;background:#2373a01f;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.card-disciplina-progress-chip.has-progress{color:#7a4b00;background:#f1a21b38}.btn-tasks{color:var(--idx-text-strong);background:0 0;border:1px solid #135ba433;border-radius:10px;padding:9px 11px;font-weight:600}.btn-tasks:hover{background:#eaf3ff}.card-disciplina.ux-hidden{display:none!important}#agenda-btn{z-index:1000;border:none;border-radius:999px;width:56px;height:56px;position:fixed;bottom:330px;right:24px;box-shadow:0 10px 24px #0c264538}#english-flag-btn{border:2px solid #ffffffb8;border-radius:50%;box-shadow:0 10px 24px #0c264538}@media (width<=768px){#dashboard{padding:var(--idx-space-2);border-radius:12px}#dashboard-disciplinas{grid-template-columns:1fr;gap:10px}.index-ux-toolbar{padding:var(--idx-space-1);margin-bottom:var(--idx-space-1)}.index-ux-search{flex-basis:100%;min-width:100%}.dashboard-reco{flex-direction:column;align-items:stretch}.dashboard-sync-card{gap:12px;padding:14px}.dashboard-sync-metrics{gap:8px}.dashboard-sync-pill{flex:calc(50% - 8px);min-width:0}.dashboard-today-strip{gap:6px}.dashboard-reco-btn{width:100%}#agenda-btn{width:52px;height:52px;bottom:304px;right:16px}#add-disciplina-btn,#ai-writer-btn{right:16px}#english-flag-btn{right:16px!important}.app-toast-root{bottom:10px;left:10px;right:10px}.app-toast{min-width:100%}}.modal-overlay[data-modal=tasks],.modal-overlay[data-modal=dashboard-legend-tasks]{-webkit-backdrop-filter:blur(6px);background:linear-gradient(150deg,#030d1dc2,#08182ea8)!important}.modal-overlay[data-modal=tasks] .modal-content.modal-tasks-content,.modal-overlay[data-modal=dashboard-legend-tasks] .modal-content.modal-tasks-content{opacity:0;border:1px solid #14427e33;border-radius:16px;width:min(1120px,100vw - 24px);max-height:90vh;padding:0;transition:opacity .16s,transform .16s;overflow:hidden;transform:translateY(12px)scale(.985);box-shadow:0 24px 58px #081c3752}.modal-overlay.show[data-modal=tasks] .modal-content.modal-tasks-content,.modal-overlay.show[data-modal=dashboard-legend-tasks] .modal-content.modal-tasks-content{opacity:1;transform:translateY(0)scale(1)}.tasks-modal-header{z-index:4;padding:var(--idx-space-2);background:linear-gradient(#080c0afa,#00ff4126);border-bottom:1px solid #14427e24;align-items:flex-start;gap:10px;display:flex;position:sticky;top:0}.tasks-header-actions{flex-wrap:wrap;flex:auto;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.tasks-title-wrap{min-width:0}.tasks-modal-title{color:#173f71;font-family:var(--idx-font-display);letter-spacing:.01em;margin:0}.tasks-modal-subtitle{color:var(--idx-text-mid);margin:4px 0 0;font-size:.92rem}.tasks-modal-grade{color:var(--idx-text-strong);margin-top:6px;font-size:.92rem;font-weight:700}.tasks-modal-summary{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.tasks-summary-chip{border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 9px;font-size:.76rem;font-weight:700;display:inline-flex}.tasks-summary-chip.overdue{color:#7f1524;background:#d63a4a24;border-color:#b723333d}.tasks-summary-chip.due-today{color:#8b2c00;background:#faa43533;border-color:#d977064d}.tasks-summary-chip.pending{color:#1d4f89;background:#1f7ae02e;border-color:#175cac47}.tasks-summary-chip.progress{color:#176258;background:#1cb7a629;border-color:#0e8f8147}.tasks-modal-body{max-height:68vh;padding:var(--idx-space-2);overflow-y:auto}.tasks-tools-wrap{margin-bottom:var(--idx-space-2);padding:var(--idx-space-2);background:#f0f7ffb8;border:1px solid #14427e24;border-radius:12px}.tasks-search-wrap{grid-template-columns:1fr 190px auto;gap:8px;display:grid}.tasks-search-input,.tasks-sort-select{background:0 0;border:1px solid #16488942;border-radius:10px;padding:9px 10px}.tasks-fixed-order{color:#1d4f89;background:#eef5ff;border:1px solid #16488933;border-radius:10px;align-items:center;padding:9px 10px;font-size:.92rem;font-weight:600;display:inline-flex}.tasks-tools-clear{color:#1f4f88;background:0 0;border:1px solid #16488933;border-radius:10px;padding:9px 12px;font-weight:600}.tasks-filter-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.tasks-filter-btn{color:var(--idx-text-strong);cursor:pointer;background:0 0;border:1px solid #16488938;border-radius:999px;padding:7px 11px;font-weight:600}.tasks-filter-count{color:var(--idx-text-strong);background:#1f7ae029;border-radius:999px;margin-left:auto;padding:7px 10px;font-size:.9rem}.tasks-empty-state{text-align:center;color:var(--idx-text-mid);background:#fffc;border:1px dashed #1a488657;border-radius:12px;padding:16px}.tasks-loading-state{padding:var(--idx-space-2);background:#ffffffd6;border:1px solid #14427e29;border-radius:12px}.tasks-table-wrap{border:1px solid #14427e29;border-radius:12px;overflow:auto}.tasks-crud-table{border-collapse:collapse;width:max-content;min-width:900px}.tasks-crud-table.ui-modal-table{min-width:900px}.tasks-crud-table th{color:var(--idx-text-strong);background:#edf5ff}.tasks-crud-table td,.tasks-crud-table th{padding:12px 16px}.tasks-crud-table tbody tr:hover td{background:#f6faff}.tasks-actions-cell{white-space:nowrap}.tasks-action-btn{cursor:pointer;background:0 0;border:1px solid #194c8b2e;border-radius:8px;margin-right:4px;padding:6px 8px}.tasks-action-btn.danger{color:#ad2638}.task-deadline-badge{border:1px solid #0000;border-radius:999px;align-items:center;margin-left:6px;padding:2px 7px;font-size:.75rem;font-weight:700;display:inline-flex}.task-deadline-badge.deadline-overdue{color:#7f1524;background:#d63a4a29;border-color:#b7233347}.task-deadline-badge.deadline-today{color:#8b2c00;background:#faa4353d;border-color:#d977065c}.task-deadline-badge.deadline-soon{color:#6b4a03;background:#f6c74c42;border-color:#c28b0557}.task-deadline-badge.deadline-week{color:#194f7b;background:#50a1e133;border-color:#16629f47}.task-deadline-badge.deadline-normal{color:#3d5d7c;background:#809ab62e;border-color:#51709042}.tasks-cta-button{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(140deg,#1f7ae0,#165fb8);border:none;border-radius:10px;flex-shrink:0;min-height:44px;padding:10px 14px;font-weight:600}.tasks-footer-actions{justify-content:center;padding:12px 0 2px;display:flex}.tasks-cards-wrap{display:none}.task-card-mobile{padding:var(--idx-space-2);margin-bottom:var(--idx-space-2);background:0 0;border:1px solid #14427e29;border-radius:12px}.task-card-mobile h4{color:var(--idx-text-strong);margin:0 0 8px}.today-pill:focus-visible,.dashboard-reco-btn:focus-visible,.btn-tasks:focus-visible,.tasks-cta-button:focus-visible,.tasks-action-btn:focus-visible,.tasks-filter-btn:focus-visible,.tasks-tools-clear:focus-visible,.index-ux-clear:focus-visible,.index-ux-search:focus-visible,.tasks-search-input:focus-visible{outline-offset:2px;outline:3px solid #2d7fd7}.task-card-mobile p{margin:4px 0}.task-card-actions{gap:8px;margin-top:8px;display:flex}@media (width<=768px){.modal-overlay[data-modal=tasks] .modal-content.modal-tasks-content,.modal-overlay[data-modal=dashboard-legend-tasks] .modal-content.modal-tasks-content{border-radius:12px;width:calc(100vw - 10px);max-height:92vh}.tasks-header-actions{flex-direction:column;align-items:stretch}.tasks-modal-summary{gap:5px}.tasks-modal-body{max-height:72vh;padding:var(--idx-space-1)}.tasks-search-wrap{grid-template-columns:1fr}.tasks-filter-count{margin-left:0}.tasks-crud-table th,.tasks-crud-table td{padding:8px;font-size:.9rem}.tasks-table-wrap{display:none}.tasks-cards-wrap{display:block}.tasks-cta-button{min-height:42px}}#disciplina-modal.modal-overlay,#ai-writer-modal.modal-overlay,.modal-overlay[data-modal=agenda],.crud-modal.modal-overlay{-webkit-backdrop-filter:blur(6px);pointer-events:auto;background:linear-gradient(150deg,#030d1dbd,#0a1d38a8)!important}#disciplina-modal .modal-content,#ai-writer-modal .modal-content,.modal-overlay[data-modal=agenda] .modal-content,.crud-modal .modal-content{pointer-events:auto;color:#e8f5e9!important;background:linear-gradient(165deg,#0c1018fa 0%,#080c12 100%)!important;border:1px solid #00ff4140!important;border-radius:16px!important;box-shadow:0 0 50px #00ff4114,0 32px 72px #000000e6!important}#disciplina-modal .modal-header,.modal-overlay[data-modal=agenda] .modal-header,.crud-modal .modal-header{z-index:5;border-radius:16px 16px 0 0;align-items:flex-start;gap:10px;display:flex;position:sticky;top:0;background:#0a0f0cfa!important;border-bottom:1px solid #00ff4133!important}#disciplina-modal .header-actions,.modal-overlay[data-modal=agenda] .header-actions,.crud-modal .header-actions{flex-wrap:wrap;flex:auto;align-items:center;gap:10px;min-width:0;display:flex}#disciplina-modal .modal-body,.modal-overlay[data-modal=agenda] .modal-body,.crud-modal .modal-body{max-height:min(70vh,620px);padding:14px 16px 16px;overflow-y:auto}#disciplina-modal #add-new-disciplina-modal,.modal-overlay[data-modal=agenda] .btn-save,.crud-modal .add-new-button,.crud-modal button[type=submit]{white-space:nowrap;border-radius:10px;min-height:44px}.crud-modal .ui-modal-actions,.crud-modal .action-buttons{flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:8px;display:flex}.crud-modal .modal-content{flex-direction:column!important;max-height:min(92vh,760px)!important;display:flex!important;overflow:hidden!important}.crud-modal .modal-body{flex:auto;min-height:0;max-height:none!important;padding-bottom:14px!important;overflow:hidden auto!important}.crud-modal form{flex-direction:column;gap:12px;min-height:0;display:flex}.crud-modal .ui-modal-actions,.crud-modal .action-buttons{z-index:6;margin-top:6px;padding:10px 16px 12px;position:sticky;bottom:0;background:#0a0f0cf2!important;border-top:1px solid #00ff4126!important}.crud-modal button[type=submit],.crud-modal .add-button{min-height:44px}.crud-modal .ui-modal-footer,.crud-modal .modal-footer{z-index:7;padding:10px 16px 12px;position:sticky;bottom:0;background:#0a0f0cf2!important;border-top:1px solid #00ff4126!important}#disciplina-modal .close-btn,#ai-writer-modal .close-btn,.modal-overlay[data-modal=agenda] .close-btn,.crud-modal .close-btn,.modal-overlay[data-modal=tasks] .close-btn,.modal-overlay[data-modal=dashboard-legend-tasks] .close-btn{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;margin-left:auto;font-size:1.55rem;display:inline-flex;color:#00ff41!important;background:#000502d9!important;border:1px solid #00ff414d!important;transition:all .2s!important;position:static!important;top:auto!important;right:auto!important}#disciplina-modal .close-btn:hover,#ai-writer-modal .close-btn:hover,.modal-overlay[data-modal=agenda] .close-btn:hover,.crud-modal .close-btn:hover,.modal-overlay[data-modal=tasks] .close-btn:hover,.modal-overlay[data-modal=dashboard-legend-tasks] .close-btn:hover{background:#00ff4126!important;box-shadow:0 0 15px #00ff414d!important}#disciplina-modal .crud-table,.modal-overlay[data-modal=agenda] .crud-table{border-collapse:separate;border-spacing:0;border:1px solid #143f7a29;border-radius:12px;overflow:hidden}.modal-overlay[data-modal=agenda] .modal-content{width:min(1120px,100vw - 24px);max-width:min(1120px,100vw - 24px)}.modal-overlay[data-modal=agenda] .agenda-table-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow:auto visible}.modal-overlay[data-modal=agenda] .agenda-table-wrap .crud-table{width:max-content;min-width:980px}#disciplina-modal .crud-table th,.modal-overlay[data-modal=agenda] .crud-table th{color:#00ff41!important;background:#00ff411a!important;border-bottom:1px solid #00ff4133!important}#disciplina-modal .crud-table tr:hover td,.modal-overlay[data-modal=agenda] .crud-table tr:hover td{background:#00ff410d!important}#ai-writer-modal .modal-content{width:min(1180px,100vw - 24px);height:min(90vh,980px)}#ai-writer-modal .content-container{background:#0a0f0c}#ai-writer-iframe{border-radius:0 0 16px 16px}@media (width<=768px){#disciplina-modal .modal-content,#ai-writer-modal .modal-content,.modal-overlay[data-modal=agenda] .modal-content,.crud-modal .modal-content{border-radius:12px!important;width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;max-height:92vh!important}.tasks-crud-table,.tasks-crud-table.ui-modal-table{min-width:820px}.modal-overlay[data-modal=agenda] .agenda-table-wrap .crud-table{min-width:860px}#disciplina-modal .modal-header,.modal-overlay[data-modal=agenda] .modal-header,.crud-modal .modal-header{border-radius:12px 12px 0 0;padding:12px}#disciplina-modal .modal-body,.modal-overlay[data-modal=agenda] .modal-body,.crud-modal .modal-body{max-height:72vh;padding:10px 12px 12px}#disciplina-modal #add-new-disciplina-modal,.modal-overlay[data-modal=agenda] .btn-save,.crud-modal .add-new-button,.crud-modal button[type=\"submit\"]{white-space:normal;border-radius:10px;justify-content:center;width:100%;min-height:42px}.crud-modal .modal-content{max-height:92vh!important}.crud-modal .modal-body{padding-bottom:10px!important}.crud-modal .ui-modal-actions,.crud-modal .action-buttons{background:0 0;border-top:none;padding-top:4px;position:static}.crud-modal .ui-modal-footer,.crud-modal .modal-footer{background:0 0;border-top:none;padding:6px 0 0;position:static}#disciplina-modal .close-btn,#ai-writer-modal .close-btn,.modal-overlay[data-modal=agenda] .close-btn,.crud-modal .close-btn,.modal-overlay[data-modal=tasks] .close-btn,.modal-overlay[data-modal=dashboard-legend-tasks] .close-btn{width:40px;height:40px}}.modal-overlay .modal-content{overflow-x:hidden}.modal-overlay .modal-header{overflow:visible}.modal-overlay .modal-body{-webkit-overflow-scrolling:touch;overflow-x:auto}.modal-overlay .crud-btn,.modal-overlay .btn-save,.modal-overlay .add-new-button,.modal-overlay button[type=submit],.modal-overlay .ui-btn{text-overflow:ellipsis;max-width:100%;min-height:40px;line-height:1.2}.modal-overlay .crud-btn{justify-content:center;align-items:center;min-width:40px;display:inline-flex}.modal-overlay .action-buttons,.modal-overlay .ui-modal-actions,.modal-overlay .ui-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;width:100%;display:flex}.modal-overlay .action-buttons>*,.modal-overlay .ui-modal-actions>*,.modal-overlay .ui-confirm-actions>*{flex:0 auto;min-width:120px}.modal-overlay .crud-table td:last-child,.modal-overlay .crud-table th:last-child{white-space:nowrap}@media (width<=768px){.keyboard-visible .crud-modal .modal-content,.keyboard-visible .modal-overlay[data-modal=tasks] .modal-content.modal-tasks-content,.keyboard-visible .modal-overlay[data-modal=dashboard-legend-tasks] .modal-content.modal-tasks-content{height:auto!important;min-height:0!important;max-height:92vh!important;position:relative!important;top:auto!important}.modal-overlay .action-buttons>*,.modal-overlay .ui-modal-actions>*,.modal-overlay .ui-confirm-actions>*{flex:100%;min-width:0}.modal-overlay .crud-btn,.modal-overlay .btn-save,.modal-overlay .add-new-button,.modal-overlay button[type=submit],.modal-overlay .ui-btn{min-height:44px}}.crud-modal .modal-content{width:min(820px,100vw - 24px)!important;max-width:min(820px,100vw - 24px)!important}.crud-modal .ui-modal-title,.crud-modal .ui-confirm-text,.crud-modal input,.crud-modal textarea,.crud-modal select{overflow-wrap:anywhere}.crud-modal .modal-body{overflow-x:hidden!important}.crud-modal input,.crud-modal textarea,.crud-modal select{pointer-events:auto;line-height:1.35;color:#e8f5e9!important;background:#0a0f0ccc!important;border:1px solid #00ff4133!important;border-radius:8px!important;padding:10px!important}.crud-modal input:focus,.crud-modal textarea:focus,.crud-modal select:focus{border-color:#00ff41!important;outline:none!important;box-shadow:0 0 10px #00ff4133!important}.crud-modal select option{color:#e8f5e9!important;background:#0a0f0c!important}@media (width<=768px){.crud-modal .modal-content{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;max-height:92vh!important}}#disciplina-modal .modal-content{width:min(1180px,100vw - 24px)!important;max-width:min(1180px,100vw - 24px)!important;max-height:min(92vh,920px)!important}#disciplina-modal .modal-body{max-height:min(78vh,760px)!important}#disciplina-modal #pizza-container{-webkit-overflow-scrolling:touch;overflow:auto visible;width:100%!important;max-width:none!important}#disciplina-modal #pizza-container .crud-table{min-width:980px;width:max-content!important;margin-bottom:14px!important}#disciplina-modal #pizza-container .crud-table th,#disciplina-modal #pizza-container .crud-table td{white-space:nowrap}#disciplina-modal #voltar-pizza-btn,#disciplina-modal #add-disciplina-modal-btn{min-height:40px;margin-top:4px}@media (width<=768px){#disciplina-modal .modal-content{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important}#disciplina-modal #pizza-container .crud-table{min-width:860px}#disciplina-modal #voltar-pizza-btn,#disciplina-modal #add-disciplina-modal-btn{width:100%;margin-bottom:8px;margin-right:0!important}}.ui-modal-table-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow:auto visible}.ui-modal-table{width:max-content;min-width:980px;margin-bottom:14px}.ui-modal-actions-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ui-modal-actions-center{justify-content:center}.ui-modal-btn{cursor:pointer;border:none;border-radius:10px;min-height:40px;padding:8px 16px;font-weight:600}.ui-modal-btn-primary{color:#fff;background:#1976d2}.ui-modal-btn-secondary{color:#1d4f89;background:#eef3fb;border:1px solid #143f7a33}#disciplina-modal .disciplina-row-finished td{background:#d4edda}@media (width<=768px){.ui-modal-table{min-width:860px}.ui-modal-actions-row .ui-modal-btn{width:100%}}.ui-content-close{color:#222!important;top:12px!important;right:12px!important}.ui-content-empty{color:var(--danger-color);text-align:center;margin-bottom:16px}.ui-content-error{color:var(--danger-color);text-align:center}.ui-text-danger{color:#dc3545}.ui-center{text-align:center}.ui-mt-20{margin-top:20px}.ui-mt-10{margin-top:10px}.ui-loading-state{text-align:center;padding:40px}.ui-title-center{text-align:center}.ui-table-default{width:100%;margin-bottom:16px}.ui-flashcard-container{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:400px;display:flex}.ui-flashcard-card{text-align:center;cursor:pointer;background:#00ff411a;border:1px solid #ddd;border-radius:12px;justify-content:center;align-items:center;width:100%;max-width:500px;min-height:200px;padding:30px;font-size:1.5em;font-weight:700;transition:transform .3s,background .3s;display:flex;box-shadow:0 4px 12px #00000014}.ui-flashcard-controls,.ui-flashcard-edit-controls{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.ui-fc-btn{cursor:pointer;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:1em;transition:background .2s}.ui-fc-btn-primary{background:#007bff}.ui-fc-btn-success{background:#28a745}.ui-fc-btn-neutral{background:#6c757d}.ui-fc-btn-warning{color:#111;background:#ffc107}.ui-fc-btn-danger{background:#dc3545}.ui-btn-link-back{margin-bottom:15px}.ui-link-wrap{text-align:center;margin-top:8px}.registro-img-fluid{border-radius:8px;max-width:100%;height:auto}.registro-img-thumb{max-width:220px;max-height:120px;margin:8px auto;display:block}.ui-pizza-svg{width:100%;max-width:380px;height:auto;max-height:380px;overflow:visible}#annotation-popup .annotation-ai-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}#annotation-popup .ui-icon-btn{cursor:pointer;background:0 0;border:none;font-size:1.2em}.ui-toggle-container{background:#ffffff0d;border:1px solid #9db2d626;border-radius:14px;justify-content:center;align-items:center;gap:12px;margin-bottom:20px;padding:12px 20px;display:flex}.ui-toggle-label{color:var(--ui-muted);font-size:.95rem;font-weight:600;transition:all .3s}.ui-switch{width:50px;height:26px;display:inline-block;position:relative}.ui-switch input{opacity:0;width:0;height:0}.ui-slider{cursor:pointer;background-color:#9db2d633;border-radius:26px;transition:all .4s;position:absolute;inset:0}.ui-slider:before{content:"";background-color:#0000;border-radius:50%;width:18px;height:18px;transition:all .4s;position:absolute;bottom:4px;left:4px;box-shadow:0 2px 4px #0000004d}input:checked+.ui-slider{background-color:var(--ui-accent)}input:checked+.ui-slider:before{transform:translate(24px)}.ui-switch-active-label{text-shadow:0 0 10px #2ec4b64d;color:var(--ui-accent)!important}.tasks-search-input,.tasks-sort-select{color:#d4ead6!important;background:#000502b3!important;border:1px solid #00ff4133!important}.tasks-fixed-order{color:#b2cfb4!important;background:#00ff410d!important;border:1px solid #00ff412e!important}.tasks-tools-clear{color:#b2cfb4!important;background:#00050299!important;border:1px solid #00ff4126!important}.tasks-filter-btn{color:#b2cfb4!important;background:#00050299!important;border:1px solid #00ff411f!important}.tasks-filter-btn.active{color:#00ff41!important;background:#00ff411f!important;border-color:#00ff4166!important}.tasks-filter-btn:hover{color:#00ff41!important;background:#00ff4114!important;border-color:#00ff414d!important}.index-ux-search{color:#d4ead6!important;background:#000502b3!important;border:1px solid #00ff412e!important}.index-ux-clear{color:#b2cfb4!important;background:#00050299!important;border:1px solid #00ff4126!important}.tasks-modal-header{background:#040805fc!important;border-bottom:1px solid #00ff412e!important}.btn-tasks{color:#00ff41!important;background:#00050280!important;border:1px solid #00ff4133!important}.btn-tasks:hover{background:#00ff4114!important;box-shadow:0 0 12px #00ff412e!important}#gol-page{color:#e5e7eb;background-color:#111827;min-height:100vh;padding-bottom:3rem;font-family:Inter,sans-serif}.gol-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.gol-header{text-align:center;margin-bottom:3rem}.gol-header h1{color:#60a5fa;margin-bottom:1rem;font-size:3rem;font-weight:700}.gol-header p{color:#9ca3af;font-size:1.125rem}.search-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:40;background-color:#1f2937d9;border:1px solid #ffffff1a;border-radius:.5rem;max-width:700px;margin:0 auto 2rem;padding:1rem;position:sticky;top:20px;box-shadow:0 4px 12px #0006}.search-container label{color:#d1d5db;text-align:center;margin-bottom:.5rem;font-size:1.125rem;font-weight:500;display:block}.search-container input{color:#e5e7eb;background-color:#374151;border:1px solid #4b5563;border-radius:.5rem;width:100%;padding:.625rem}.search-container input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f680}.searchable-section{margin-bottom:2.5rem}.searchable-section h2{color:#93c5fd;border-bottom:2px solid #3b82f6;margin:2rem 0 1rem;padding-bottom:.5rem;font-size:1.5rem;font-weight:600}.searchable-section h3{color:#ddd6fe;align-items:center;margin:1.5rem 0 .5rem;font-size:1.25rem;font-weight:600;display:flex}.code-block{color:#d1d5db;white-space:pre-wrap;background-color:#1f2937;border-radius:.5rem;margin-top:.75rem;padding:1rem;font-family:Courier New,Courier,monospace;font-size:.875rem;overflow-x:auto}.code-block .comment{color:#6b7280}.code-block .keyword{color:#fb923c}.code-block .class-name{color:#60a5fa}.code-block .method-name{color:#a78bfa}.code-block .string{color:#a3e635}.action-btn{color:#fff;cursor:pointer;border:none;border-radius:.375rem;margin-left:1rem;padding:.25rem .75rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.explain-btn{background-color:#2563eb}.explain-btn:hover{background-color:#1d4ed8}.toggle-code-btn{background-color:#059669}.toggle-code-btn:hover{background-color:#047857}.highlight{color:#1f2937;background-color:#facc15;border-radius:.25rem;padding:0 2px}.modal-overlay{z-index:1000;background-color:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:#1f2937;border-radius:.5rem;width:90%;max-width:800px;max-height:90vh;padding:2rem;position:relative;overflow-y:auto}.modal-content h2{color:#93c5fd;margin-bottom:1.5rem}.modal-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;font-size:2rem;position:absolute;top:10px;right:20px}.line-explanation{border-bottom:1px solid #374151;grid-template-columns:auto 1fr;align-items:start;gap:1rem;margin-bottom:.75rem;padding-bottom:.75rem;display:grid}.line-explanation code{white-space:pre-wrap;color:#d1d5db;background-color:#374151;border-radius:.25rem;padding:.25rem .5rem;font-size:.8rem}.gol-footer{text-align:center;color:#6b7280;border-top:1px solid #374151;margin-top:3rem;padding-top:2rem}
