.module-bar-inline{display:flex;align-items:center;gap:12px}.module-bar-standalone{display:flex;justify-content:center;padding:16px 24px;gap:20px}.module-item{display:flex;flex-direction:column;align-items:center;gap:8px}.module-item-inline{flex-direction:row;gap:0}.module-button{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:1px solid rgba(203,213,225,.6);background:transparent;color:#19173c;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background-color .3s ease,color .3s ease;cursor:pointer;box-shadow:0 2px 8px #0000004d;transform:scale(1) translateY(0);padding:0}.module-item-inline .module-button{width:48px;height:48px}.module-bar-standalone .module-button{width:56px;height:56px}.module-button .module-icon,.module-button :global(.anticon){font-size:26px;color:currentColor;display:flex;align-items:center;justify-content:center}.module-button:hover,.module-button:focus-visible{transform:scale(1.05) translateY(-2px);box-shadow:0 18px 36px #0f172a38;border-color:#2563eb73;background:#e2e8f08c}:root[data-theme=dark] .module-button{color:#e2e8f0;border-color:#94a3b859}:root[data-theme=dark] .module-button:hover,:root[data-theme=dark] .module-button:focus-visible{box-shadow:0 20px 40px #0f172a99;border-color:#94a3b88c;background:#3341558c}.module-button.active{background:var(--module-accent, #1677ff);border-color:transparent;color:#fff;box-shadow:0 20px 44px #1677ff59}.module-item-inline{gap:0}.module-bar-standalone .module-label{font-size:11px;letter-spacing:.4px;text-transform:uppercase}.theme-toggle-button{width:48px;height:48px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center}.login-card--dark .ant-input:-webkit-autofill,.login-card--dark .ant-input:-webkit-autofill:hover,.login-card--dark .ant-input:-webkit-autofill:focus,.login-card--dark .ant-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #141414 inset!important;box-shadow:0 0 0 1000px #141414 inset!important;-webkit-text-fill-color:rgba(255,255,255,.88)!important;caret-color:#ffffffe0;transition:background-color 5000s ease-in-out 0s}.login-card--dark .ant-input-password input:-webkit-autofill,.login-card--dark .ant-input-password input:-webkit-autofill:hover,.login-card--dark .ant-input-password input:-webkit-autofill:focus,.login-card--dark .ant-input-password input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #141414 inset!important;box-shadow:0 0 0 1000px #141414 inset!important;-webkit-text-fill-color:rgba(255,255,255,.88)!important;caret-color:#ffffffe0;transition:background-color 5000s ease-in-out 0s}.login-logo{width:120px;height:auto;display:block}.login-logo--dark{-webkit-filter:brightness(0) saturate(100%) invert(1) drop-shadow(0 0 0 #ffffff);filter:brightness(0) saturate(100%) invert(1) drop-shadow(0 0 0 #ffffff)}@media screen and (max-width: 480px){.login-logo{width:100px}.ant-card{border-radius:16px!important}.ant-form-item{margin-bottom:16px}}.ocupacao-maxima .ant-table-cell{background:#f4433614}.ocupacao-alta .ant-table-cell{background:#facc151f}.ocupacao-baixa .ant-table-cell{background:#10b9811a}.monthly-chart{display:flex;flex-direction:column;gap:16px}.monthly-chart .chart-body{display:flex;align-items:flex-end;gap:20px;min-height:200px;overflow-x:auto;padding:8px 0}.monthly-chart .chart-column{display:flex;flex-direction:column;align-items:center;min-width:48px;gap:12px}.monthly-chart .bar-wrapper{display:flex;align-items:flex-end;gap:6px;height:180px}.monthly-chart .bar{width:14px;border-radius:6px 6px 0 0;transition:height .3s ease;box-shadow:0 6px 12px #0f172a26}.monthly-chart .bar.emitted{background:linear-gradient(180deg,#60a5fa,#2563eb)}.monthly-chart .bar.paid{background:linear-gradient(180deg,#34d399,#059669)}.monthly-chart .month-label{font-size:13px;font-weight:600;color:#334155;text-transform:uppercase}.monthly-chart .chart-legend{display:flex;gap:24px;font-size:13px;color:#475569}.monthly-chart .chart-legend .legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block;margin-right:8px}.monthly-chart .chart-legend .legend-dot.emitted{background:linear-gradient(180deg,#60a5fa,#2563eb)}.monthly-chart .chart-legend .legend-dot.paid{background:linear-gradient(180deg,#34d399,#059669)}.finance-card{border:none;border-radius:18px;color:#0f172a;box-shadow:0 16px 40px #0f172a1f}.finance-card .ant-card-body{padding:24px}.finance-card.open{background:linear-gradient(135deg,#38bdf8,#2563eb);color:#f8fafc}.finance-card.liquidated{background:linear-gradient(135deg,#34d399,#059669);color:#ecfdf5}.finance-card.overdue{background:linear-gradient(135deg,#fb7185,#f97316);color:#fff7ed}.finance-card-title{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.8}.finance-card-value{font-size:28px;font-weight:700;line-height:1.1}.finance-card-secondary{font-size:14px;font-weight:500;opacity:.85}.professor-banner{width:100%;border-radius:16px;object-fit:cover;box-shadow:0 20px 45px #0e749040}.professor-stat-card{color:#fff;border:none;border-radius:16px;box-shadow:0 16px 40px #0f172a2e}.professor-stat-card .ant-statistic-title,.professor-stat-card .ant-statistic-content{color:inherit}.professor-stat-card.sky{background:linear-gradient(135deg,#38bdf8,#2563eb)}.professor-stat-card.sunset{background:linear-gradient(135deg,#f97316,#db2777)}.professor-stat-card.forest{background:linear-gradient(135deg,#34d399,#0f766e)}.professor-card{border:none;border-radius:18px;color:#0f172a;box-shadow:0 14px 36px #0f172a1f}.professor-card .ant-card-head{border-bottom:none;color:inherit}.professor-card.recados{background:linear-gradient(135deg,#ec48991f,#f9731629)}.professor-card.horarios{background:linear-gradient(135deg,#38bdf826,#0ea5e938)}.professor-card.planejamentos{background:linear-gradient(135deg,#a5b4fc2e,#818cf83d)}.professor-card.calendario{background:linear-gradient(135deg,#4ade8024,#22c55e2e)}.professor-card .ant-list-item{background:#ffffffa6;border-radius:12px;margin-bottom:12px;padding:12px 16px;box-shadow:0 6px 18px #0f172a14}.professor-card .ant-list-item:last-child{margin-bottom:0}.modulacao-header{position:sticky;top:0;z-index:10;padding:16px 0;background:var(--ant-color-bg-container, #fff);border-bottom:1px solid rgba(148,163,184,.2);margin-bottom:16px}.modulacao-row-deficit td{background:#ff4d4f14}.modulacao-row-apoio td{background:#1677ff0f}.modulacao-row-special td{background:#f59e0b14}.modulacao-row-fantasma td{background:#ff4d4f1f!important;border-left:3px solid #ff4d4f}.rh-dashboard-deficit-row td{background:#ff4d4f0f}.relatorio-modulacao{padding:24px;background:#fff;min-height:100vh}.relatorio-header{border:2px solid #1890ff;box-shadow:0 2px 8px #0000001a}@media print{.relatorio-modulacao{padding:0}.no-print,.ant-card-head-wrapper button,.ant-input,.ant-btn{display:none!important}.ant-card{border:1px solid #000;box-shadow:none;page-break-inside:avoid;margin-bottom:20px}.ant-card-head{background:#f0f0f0!important;border-bottom:2px solid #000;padding:8px 16px}.ant-card-head-title{font-weight:700;font-size:14px}.ant-card-body{padding:12px}.ant-table{font-size:10px}.ant-table-thead>tr>th{background:#e6e6e6!important;color:#000!important;border:1px solid #000;padding:6px 8px;font-weight:700}.ant-table-tbody>tr>td{border:1px solid #000;padding:4px 8px}.page-break{page-break-after:always}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.ant-col{page-break-inside:avoid}.ant-tag{border:1px solid #000;padding:2px 8px}h1,h2,h3,h4{page-break-after:avoid}.ant-statistic{page-break-inside:avoid}.ant-progress{display:none!important}.ant-input{display:block!important;border:1px solid #000;min-height:100px;padding:8px}}@media screen{.relatorio-modulacao{max-width:1400px;margin:0 auto}.relatorio-header{background:linear-gradient(135deg,#667eea,#764ba2)}.relatorio-header .ant-typography{color:#fff}.relatorio-header .ant-tag{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff}.ant-table-tbody>tr:hover>td{background:#f0f7ff!important}.relatorio-modulacao>.ant-card{animation:fadeInUp .4s ease-in-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.turno-matutino{background:#fff7e6;border-left:4px solid #fa8c16}.turno-vespertino{background:#e6f7ff;border-left:4px solid #1890ff}.turno-noturno{background:#f0f0f0;border-left:4px solid #595959}}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}.template-editor{width:100%}.template-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px 12px;border:1px solid #f0f0f0;border-bottom:none;border-radius:8px 8px 0 0;background:#fafafa}.template-editor-toolbar-group{display:flex;align-items:center;gap:2px}.template-editor-toolbar-group+.template-editor-toolbar-group{margin-left:8px;padding-left:8px;border-left:1px solid #e8e8e8}.template-editor-toolbar .ant-btn.is-active{background:#e6f4ff;color:#0958d9}.template-editor-toolbar .ant-select-sm{font-size:12px}.template-editor-content-wrap{border:1px solid #f0f0f0;border-radius:0 0 8px 8px;background:#fff}.template-editor .ProseMirror{min-height:280px;padding:16px;outline:none}.template-editor .ProseMirror:focus{outline:none}.template-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#bfbfbf;float:left;height:0;pointer-events:none}.template-editor .token,.ProseMirror span[data-token]{display:inline;padding:2px 6px;margin:0 1px;border:1px solid #1890ff;border-radius:4px;background:#e6f4ff;color:#0958d9;font-family:monospace;font-size:.9em;white-space:nowrap}.template-editor-suggestion-list{max-height:240px;overflow-y:auto;padding:4px 0;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;border:1px solid #e8e8e8}.template-editor-suggestion-list--empty{padding:12px 16px;color:#8c8c8c;font-size:13px}.template-editor-suggestion-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:none;text-align:left;cursor:pointer;font-size:13px}.template-editor-suggestion-item:hover,.template-editor-suggestion-item.is-selected{background:#f5f5f5}.template-editor-suggestion-item.is-selected{background:#e6f4ff}.template-editor-suggestion-item-key{font-family:monospace;color:#0958d9;flex-shrink:0}.template-editor-suggestion-item-label{color:#595959}.template-editor-page{background:#fff;min-height:70vh;padding:24px;box-shadow:0 1px 4px #00000014;border-radius:8px;border:1px solid #f0f0f0}.template-editor-page .template-editor .ProseMirror{min-height:400px}.declaracao-modal-editor-body{display:flex;flex-direction:column;max-height:85vh;overflow:hidden}.declaracao-modal-editor-body .declaracao-modal-topo{flex-shrink:0;background:#fff;padding-bottom:12px;border-bottom:1px solid #f0f0f0;margin-bottom:12px;z-index:1}.declaracao-modal-editor-body .declaracao-modal-editor-wrap{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.declaracao-modal-editor-body .declaracao-modal-editor-wrap .template-editor-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;margin-top:0}.declaracao-modal-editor-body .declaracao-modal-editor-wrap .template-editor-page .template-editor{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.declaracao-modal-editor-body .declaracao-modal-editor-wrap .template-editor-toolbar{flex-shrink:0}.declaracao-modal-editor-body .declaracao-modal-editor-wrap .template-editor-content-wrap{flex:1;min-height:0;overflow:auto;border-radius:0 0 8px 8px}.declaracao-modal-editor-body .declaracao-modal-editor-wrap .template-editor .ProseMirror{min-height:200px}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}:root{color:#0f172a;background-color:#f5f5f5}:root[data-theme=dark]{color:#f8fafc;background-color:#020617}[data-theme=dark] .ant-table-tbody>tr.ant-table-row:hover>td,[data-theme=dark] .ant-table-tbody>tr.ant-table-row:hover{background:#1e293b!important;color:#f8fafce0!important}[data-theme=dark] .ant-table-tbody>tr.ant-table-row:hover>td .ant-typography,[data-theme=dark] .ant-table-tbody>tr.ant-table-row:hover>td a{color:inherit!important}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:inherit;color:inherit;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh}.declaracao-impressao-conteudo{line-height:1.4}.declaracao-impressao-conteudo p{margin:0 0 .5em}.declaracao-impressao-conteudo p:empty{min-height:1.4em;margin:0 0 .5em}.declaracao-impressao-conteudo p:last-child{margin-bottom:0}.ant-checkbox-input{left:unset!important;top:unset!important}@media screen and (max-width: 768px){body{font-size:14px}.ant-layout-content{margin:8px!important;padding:12px!important}.ant-card{margin-bottom:12px}.ant-card-body{padding:16px!important}.ant-typography h1{font-size:24px!important}.ant-typography h2{font-size:20px!important}.ant-typography h3{font-size:18px!important}.ant-typography h4{font-size:16px!important}.ant-table{font-size:13px}.ant-table-thead>tr>th{padding:8px!important}.ant-table-tbody>tr>td{padding:8px!important}.ant-btn{font-size:14px}.ant-btn-lg{font-size:15px;padding:8px 16px;height:auto}.ant-modal{max-width:calc(100vw - 16px)!important;margin:8px auto}.ant-modal-body{padding:16px!important}.ant-form-item{margin-bottom:16px}.ant-space-item{margin-right:8px!important}}@media screen and (max-width: 480px){body{font-size:13px}.ant-layout-content{margin:4px!important;padding:8px!important;border-radius:8px!important}.ant-card{margin-bottom:8px;border-radius:8px}.ant-card-body{padding:12px!important}.ant-typography h1{font-size:20px!important}.ant-typography h2{font-size:18px!important}.ant-typography h3{font-size:16px!important}.ant-typography h4{font-size:14px!important}.ant-btn{font-size:13px;padding:4px 12px}.ant-btn-lg{font-size:14px;padding:6px 14px}.ant-space-horizontal{flex-direction:column}.ant-select,.ant-input,.ant-picker{width:100%!important}.ant-collapse-header{padding:8px 12px!important;font-size:14px}.ant-collapse-content-box{padding:8px!important}}@media screen and (max-height: 500px) and (orientation: landscape){.ant-layout-header{padding:0 12px!important;height:48px!important;line-height:48px!important}.ant-layout-content{padding:8px!important}}
