@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Outfit,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--font: "Outfit", system-ui, sans-serif;--mono: "JetBrains Mono", monospace;--bg-0: #0c0d12;--bg-1: #14151e;--bg-2: #1c1d2b;--bg-3: #252637;--border: #2a2b3d;--text-1: #e8e8ed;--text-2: #7c7d8a;--accent: #3b82f6;--green: #10b981;--yellow: #f59e0b;--red: #ef4444}*{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--bg-1)}::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:3px}.fade-in{animation:fadeIn .25s ease}.toast{position:fixed;top:16px;right:16px;padding:12px 20px;border-radius:10px;color:#fff;font:500 13px var(--font);z-index:9999;animation:toastIn .3s ease;box-shadow:0 8px 32px #0008}.nav-btn{display:flex;align-items:center;gap:7px;padding:8px 16px;border-radius:8px;border:none;background:transparent;color:var(--text-2);font:500 13px var(--font);cursor:pointer;transition:all .15s}.nav-btn:hover{background:var(--bg-2);color:var(--text-1)}.nav-btn.active{background:var(--accent);color:#fff}.day-btn{display:flex;flex-direction:column;align-items:center;padding:6px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-2);color:var(--text-2);font-family:var(--font);cursor:pointer;transition:all .15s;min-width:70px}.day-btn strong{font-size:13px}.day-btn small{font-size:10px;opacity:.7}.day-btn:hover{border-color:var(--accent)}.day-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.stat-pill{font:600 13px var(--mono);color:var(--text-1);background:var(--bg-2);padding:5px 12px;border-radius:8px}.stat-pill strong{color:var(--green)}.progress-bar{width:100px;height:5px;background:var(--bg-3);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--green),var(--accent));border-radius:3px;transition:width .4s ease}.stat-pct{font:600 12px var(--mono);color:var(--text-2)}.schedule-table{width:100%;border-collapse:collapse;table-layout:fixed}.th-time{text-align:left;padding:10px 2px 10px 6px;font:600 10px var(--font);color:var(--text-2);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--border);width:72px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.th-turma{text-align:center;padding:10px 1px;font:700 12px var(--font);color:var(--text-1);border-bottom:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-row{animation:fadeIn .3s ease both}.td-time{padding:4px 2px 4px 6px;vertical-align:middle;overflow:hidden}.slot-badge{font:600 10px var(--mono);color:var(--accent);background:#3b82f612;padding:2px 4px;border-radius:4px;margin-right:2px;display:inline-block}.slot-time{font:400 9px var(--mono);color:var(--text-2);display:block;margin-top:2px}.td-cell{padding:2px 0;vertical-align:middle;cursor:pointer;transition:background .15s;overflow:hidden}.td-cell:hover{background:#3b82f608}.cell-selected{background:#3b82f615!important}.turno-break{padding:8px;text-align:center}.turno-break span{font:600 10px var(--font);color:var(--text-2);letter-spacing:2px;padding:0 14px}.break-line{display:inline-block;width:60px;height:1px;background:var(--border);vertical-align:middle;margin:0 6px}.cell-filled{display:flex;align-items:flex-start;gap:2px;padding:4px 8px 4px 4px;border-radius:6px;border-left:3px solid;position:relative;transition:all .15s;min-height:34px;overflow:hidden}.cell-filled:hover .cell-remove{opacity:1}.cell-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0;margin-top:5px}.cell-content{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.cell-disciplina{font:600 10px var(--font);color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.2px}.cell-name{font:500 12px var(--font);color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cell-name2{font:400 11px var(--font);color:var(--text-2)}.cell-remove{position:absolute;right:2px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-2);cursor:pointer;opacity:0;transition:opacity .15s;padding:2px;border-radius:4px}.cell-remove:hover{color:var(--red)}.cell-empty{display:flex;align-items:center;justify-content:center;min-height:36px;border-radius:7px;border:1px dashed var(--border);transition:all .15s}.cell-empty:hover{border-color:var(--accent);background:#3b82f608}.summary-wrap{margin-top:20px;background:var(--bg-1);border-radius:14px;border:1px solid var(--border);padding:18px}.sc-bar{width:4px;height:24px;border-radius:2px;flex-shrink:0}.sc-over{color:var(--red)}.summary-grid-detail{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.summary-card-detail{background:var(--bg-2);border-radius:10px;padding:10px 12px;border:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.scd-head{display:flex;align-items:center;gap:8px}.scd-name{font:600 13px var(--font);color:var(--text-1);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scd-total{font:600 13px var(--mono);display:flex;align-items:center;gap:4px}.scd-num-dadas{color:var(--accent)}.sc-ok .scd-num-dadas{color:var(--green)}.sc-over .scd-num-dadas{color:var(--red)}.sc-under .scd-num-dadas{color:var(--yellow)}.sc-empty .scd-num-dadas{color:var(--text-2)}.scd-slash{color:var(--text-2);margin:0 1px}.scd-num-total{color:var(--text-2);font-weight:500}.scd-check{color:var(--green);margin-left:2px;font-weight:700}.scd-discs{display:flex;flex-direction:column;gap:6px;padding-left:12px;border-left:2px solid var(--border)}.scd-disc{display:flex;flex-direction:column;gap:4px}.scd-disc-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.scd-disc-name{font:500 12px var(--font);color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.scd-disc-count{font:600 11px var(--mono);display:flex;align-items:center;gap:3px;flex-shrink:0}.scd-turmas{display:flex;flex-wrap:wrap;gap:4px;margin-left:4px}.scd-turma{font:600 10px var(--font);padding:2px 7px;border-radius:6px;display:inline-flex;align-items:center;border:1px solid transparent}.ts-level-title{font:600 11px var(--font);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;border-bottom:1px solid var(--border);padding-bottom:4px}.summary-tabs{display:flex;gap:2px}.summary-tab{padding:8px 16px;border:none;background:transparent;color:var(--text-2);font:600 13px var(--font);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-5px;transition:color .15s,border-color .15s}.summary-tab:hover{color:var(--text-1)}.summary-tab-active{color:var(--text-1);border-bottom-color:var(--accent)}.summary-filter{display:inline-flex;align-items:center;padding:5px 11px;background:var(--bg-2);border:1px solid var(--border);border-radius:999px;color:var(--text-2);font:500 11px var(--font);cursor:pointer;transition:all .15s}.summary-filter:hover{color:var(--text-1)}.summary-filter-active{color:var(--accent);border-color:var(--accent);background:#3b82f615}.summary-empty{padding:28px 12px;text-align:center;color:var(--text-2);font:500 13px var(--font);background:var(--bg-2);border-radius:10px;border:1px dashed var(--border)}.btn-primary{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;border:none;background:var(--accent);color:#fff;font:600 13px var(--font);cursor:pointer;transition:all .15s}.btn-primary:hover{filter:brightness(1.15)}.btn-danger-solid{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;border:none;background:var(--red);color:#fff;font:600 13px var(--font);cursor:pointer;transition:all .15s;box-shadow:0 2px 8px #ef444433}.btn-danger-solid:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-danger-solid:focus{outline:2px solid var(--red);outline-offset:2px}.btn-ghost{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-2);font:500 12px var(--font);cursor:pointer;transition:all .15s}.btn-ghost:hover{background:var(--bg-2);color:var(--text-1)}.btn-sm{padding:5px 10px;font-size:11px}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-2);cursor:pointer;transition:all .15s}.btn-icon:hover{background:var(--bg-3);color:var(--text-1)}.btn-danger:hover{color:var(--red);border-color:#ef444440}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 20px 14px;border-bottom:1px solid var(--border)}.modal-title{font:700 16px var(--font);color:var(--text-1)}.modal-sub{font:400 12px var(--font);color:var(--text-2);margin-top:3px;display:flex;align-items:center;gap:6px}.modal-body{padding:16px 20px;overflow-y:auto}.modal-footer{padding:14px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.search-box{display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;height:36px}.search-input{background:none;border:none;outline:none;color:var(--text-1);font:400 13px var(--font);flex:1;width:100%}.search-input::-moz-placeholder{color:var(--text-2)}.search-input::placeholder{color:var(--text-2)}.picker-modal{max-width:480px}.picker-list{overflow-y:auto;padding:4px 10px 10px;max-height:400px}.picker-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;border:2px solid transparent;width:100%;background:transparent;cursor:pointer;transition:all .12s;text-align:left;font-family:var(--font)}.picker-item:hover:not(.picker-disabled){background:var(--bg-2)}.picker-current{background:var(--bg-2)!important}.picker-disabled{opacity:.35;cursor:not-allowed}.pi-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.pi-info{flex:1;display:flex;flex-direction:column;gap:2px}.pi-name{font:500 13px var(--font);color:var(--text-1)}.pi-meta{font:400 11px var(--font);color:var(--text-2)}.pi-reasons{display:flex;flex-direction:column;gap:2px;margin-top:4px}.pi-reason{display:inline-flex;align-items:center;gap:5px;font:500 11px var(--font);color:var(--red);background:#ef444412;border-radius:5px;padding:2px 7px;align-self:flex-start}.pi-reason-icon{font-size:12px;line-height:1}.picker-divider{display:flex;justify-content:center;align-items:center;padding:8px 14px 4px}.picker-divider span{font:600 9px var(--font);color:var(--text-2);text-transform:uppercase;letter-spacing:1.5px}.auto-stat{flex:1;min-width:80px;padding:8px 10px;background:var(--bg-2);border-radius:8px;text-align:center}.auto-stat-val{font:700 18px var(--mono);color:var(--text-1);line-height:1.1}.auto-stat-label{font:500 10px var(--font);color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;margin-top:2px}.auto-issue{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:6px;border-left:3px solid}.auto-issue-error{background:#ef444410;border-color:var(--red)}.profs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title{font:700 20px var(--font);color:var(--text-1)}.profs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.prof-card{background:var(--bg-1);border:1px solid var(--border);border-radius:10px;padding:10px 12px;animation:fadeIn .3s ease both;transition:border-color .2s,transform .15s;cursor:default}.prof-card:hover{border-color:var(--accent)}.pc-top{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.pc-color{width:4px;align-self:stretch;min-height:32px;border-radius:2px;flex-shrink:0}.pc-info{flex:1;min-width:0}.pc-name{font:600 13px var(--font);color:var(--text-1);margin:0;line-height:1.2}.pc-abbrev{font:400 11px var(--font);color:var(--text-2);font-weight:400}.pc-discs{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:4px}.pc-disciplina{font:500 10px var(--font);color:var(--accent);white-space:nowrap}.pc-disc-num{font:600 10px var(--mono);color:var(--text-2);margin-left:2px}.pc-summary{display:flex;align-items:baseline;gap:4px;padding:6px 10px;background:var(--bg-2);border-radius:6px;margin-bottom:8px}.pc-sum-main{font:700 16px var(--mono)}.pc-sum-sep{font:400 12px var(--mono);color:var(--text-2)}.pc-sum-total{font:600 14px var(--mono);color:var(--text-2)}.pc-sum-label{font:400 10px var(--font);color:var(--text-2);margin-left:2px;text-transform:uppercase;letter-spacing:.3px}.pc-sum-diff{font:700 12px var(--mono);margin-left:auto}.pc-sum-check{font:700 14px var(--font);margin-left:auto}.pc-actions{display:flex;gap:5px}.pc-edit-btn{flex:1;justify-content:center;padding:6px 10px!important}.form-label{display:block;font:600 10px var(--font);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;margin:14px 0 5px}.form-input{width:100%;padding:9px 13px;border-radius:8px;border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);font:400 13px var(--font);outline:none}.form-input:focus{border-color:var(--accent)}.color-grid{display:flex;flex-wrap:wrap;gap:6px}.color-btn{width:28px;height:28px;border-radius:7px;border:3px solid transparent;cursor:pointer;transition:all .15s}.color-btn:hover{transform:scale(1.1)}.color-active{border-color:#fff!important;transform:scale(1.15)}.avail-table{width:100%;border-collapse:collapse}.avail-table th{font:600 12px var(--font);color:var(--text-2);padding:8px;text-align:center}.av-th-day{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:6px;transition:all .12s}.av-th-day:hover{background:var(--bg-2);color:var(--text-1)}.av-slot{font:400 11px var(--mono);color:var(--text-2);padding:5px 8px;white-space:nowrap}.av-sid{font-weight:600;color:var(--accent);margin-right:4px}.av-slot-clickable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:6px;transition:all .12s}.av-slot-clickable:hover{background:var(--bg-2);color:var(--text-1)}.av-cell{text-align:center;padding:3px;cursor:pointer}.av-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:34px;border-radius:7px;font-size:16px;transition:all .12s}.av-ok{background:#10b98112}.av-no{background:#ef444412}.av-btn:hover{transform:scale(1.1)}.av-break{text-align:center;font:500 10px var(--font);color:var(--text-2);padding:6px;letter-spacing:2px}.av-legend{display:flex;gap:16px;justify-content:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);font:400 12px var(--font);color:var(--text-2)}.av-dot{display:inline-block;width:10px;height:10px;border-radius:3px}.conflict-modal{max-width:460px;border-left:4px solid var(--accent)}.conflict-modal.cm-block{border-left-color:var(--red)}.conflict-modal.cm-warn{border-left-color:var(--yellow)}.conflict-modal.cm-info{border-left-color:var(--accent)}.cm-header{display:flex;gap:12px;padding:18px 20px 14px;align-items:flex-start}.cm-icon{font-size:32px;line-height:1;flex-shrink:0}.cm-title{font:700 16px var(--font);color:var(--text-1);margin:0 0 4px}.cm-prof{display:flex;align-items:center;gap:6px;font:500 12px var(--font);color:var(--text-2)}.cm-prof-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.cm-body{padding:4px 20px 14px}.cm-reason{font:400 14px var(--font);color:var(--text-1);line-height:1.45;margin-bottom:10px}.cm-tip{font:400 12px var(--font);color:var(--text-2);padding:10px 12px;background:var(--bg-2);border-radius:8px;border-left:3px solid var(--accent);line-height:1.4}.cm-tip strong{color:var(--text-1)}.disc-chooser{margin:2px 0 6px 28px;padding:8px 10px;background:var(--bg-2);border-radius:8px;border-left:3px solid;animation:fadeIn .18s ease}.disc-chooser-title{font:600 11px var(--font);color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.disc-chooser-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-0);cursor:pointer;transition:all .12s;text-align:left;font-family:var(--font)}.disc-chooser-btn:hover:not(:disabled){background:var(--bg-1);border-color:var(--accent)}.disc-chooser-btn:disabled{opacity:.45;cursor:not-allowed}.pp-prof-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:8px;border:2px solid transparent;background:var(--bg-2);cursor:pointer;margin-bottom:4px;transition:all .12s}.pp-prof-btn:hover{background:var(--bg-3)}.pp-prof-active{background:var(--bg-3)!important}.pp-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.pp-share-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);font:600 12px var(--font);cursor:pointer;transition:all .15s;white-space:nowrap}.pp-share-btn:hover:not(:disabled){background:var(--bg-3);transform:translateY(-1px)}.pp-share-btn:active{transform:translateY(0)}.pp-share-btn:disabled{opacity:.5;cursor:not-allowed}.pp-share-sm{padding:6px 10px;font-size:14px;flex-shrink:0}.pp-export-all-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;border:1px solid var(--accent);background:#3b82f612;color:var(--accent);font:600 13px var(--font);cursor:pointer;transition:all .15s}.pp-export-all-btn:hover{background:var(--accent);color:#fff}.pp-export-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:var(--bg-2);margin-bottom:6px}.pp-export-row:hover{background:var(--bg-3)}.slot-row:hover .td-cell{background:#3b82f606}.slot-row:hover .td-time{background:var(--bg-2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.right-4{right:1rem}.top-1\/2{top:50%}.top-4{top:1rem}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.z-\[1001\]{z-index:1001}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.hidden{display:none}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[30px\]{height:30px}.h-px{height:1px}.h-screen{height:100vh}.\!max-h-\[85vh\]{max-height:85vh!important}.max-h-\[85vh\]{max-height:85vh}.min-h-screen{min-height:100vh}.w-2{width:.5rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-72{width:18rem}.w-8{width:2rem}.w-\[30px\]{width:30px}.w-\[92\%\]{width:92%}.w-full{width:100%}.min-w-\[8rem\]{min-width:8rem}.\!max-w-\[420px\]{max-width:420px!important}.\!max-w-\[520px\]{max-width:520px!important}.\!max-w-\[560px\]{max-width:560px!important}.\!max-w-\[640px\]{max-width:640px!important}.\!max-w-\[700px\]{max-width:700px!important}.\!max-w-\[720px\]{max-width:720px!important}.max-w-\[1000px\]{max-width:1000px}.max-w-\[1800px\]{max-width:1800px}.max-w-\[480px\]{max-width:480px}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-\[14px\]{border-radius:14px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-border{--tw-border-opacity: 1;border-color:rgb(42 43 61 / var(--tw-border-opacity, 1))}.bg-accent{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-bg-0{--tw-bg-opacity: 1;background-color:rgb(12 13 18 / var(--tw-bg-opacity, 1))}.bg-bg-1{--tw-bg-opacity: 1;background-color:rgb(20 21 30 / var(--tw-bg-opacity, 1))}.bg-bg-2{--tw-bg-opacity: 1;background-color:rgb(28 29 43 / var(--tw-bg-opacity, 1))}.bg-bg-3{--tw-bg-opacity: 1;background-color:rgb(37 38 55 / var(--tw-bg-opacity, 1))}.bg-black\/70{background-color:#000000b3}.bg-border{--tw-bg-opacity: 1;background-color:rgb(42 43 61 / var(--tw-bg-opacity, 1))}.bg-danger{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.fill-current{fill:currentColor}.p-0{padding:0}.p-1{padding:.25rem}.p-3{padding:.75rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-\[14px\]{padding-top:14px;padding-bottom:14px}.pb-\[14px\]{padding-bottom:14px}.pb-\[60px\]{padding-bottom:60px}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pt-4{padding-top:1rem}.pt-\[18px\]{padding-top:18px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-sans{font-family:Outfit,system-ui,sans-serif}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[40px\]{font-size:40px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-widest{letter-spacing:.1em}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-text-1{--tw-text-opacity: 1;color:rgb(232 232 237 / var(--tw-text-opacity, 1))}.text-text-2{--tw-text-opacity: 1;color:rgb(124 125 138 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.opacity-60{opacity:.6}.shadow-\[0_24px_64px_rgb\(0_0_0_\/_0\.6\)\]{--tw-shadow: 0 24px 64px rgb(0 0 0 / .6);--tw-shadow-colored: 0 24px 64px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_2px_8px_rgb\(239_68_68_\/_0\.2\)\]{--tw-shadow: 0 2px 8px rgb(239 68 68 / .2);--tw-shadow-colored: 0 2px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_24px_rgb\(0_0_0_\/_0\.4\)\]{--tw-shadow: 0 8px 24px rgb(0 0 0 / .4);--tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[4px\]{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.fade-in{--tw-enter-opacity: 0}.duration-150{animation-duration:.15s}.running{animation-play-state:running}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes toastIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@media (max-width: 720px){header{padding:10px 12px!important;flex-wrap:wrap;gap:8px}nav{padding:6px 10px!important;flex-wrap:wrap;gap:4px}.nav-btn{padding:6px 10px;font-size:12px}.nav-btn span{display:none}main{padding:12px 8px 40px!important}.day-btn{min-width:50px;padding:5px 8px}.day-btn small{display:none}.schedule-table{min-width:600px}.modal{width:96%;max-width:96%!important}.picker-list{max-height:50vh}.profs-grid{grid-template-columns:1fr!important}}@media print{body{background:#fff!important;color:#000!important}header,nav,.profs-header,.modal-overlay,.toast,.stat-pill,.progress-bar,.stat-pct,.day-btn,.cell-remove,.nav-btn,button{display:none!important}.schedule-table{min-width:auto!important;page-break-inside:avoid;font-size:11px}.schedule-table th,.schedule-table td{background:#fff!important;color:#000!important;border:1px solid #999!important}.cell-filled{background:#fff!important;border-left:3px solid #999!important}.cell-name,.cell-disciplina,.slot-time,.slot-badge{color:#000!important}.cell-empty{display:none}.gridWrap,.summary-wrap{background:#fff!important;border:1px solid #ccc!important}.summary-card{background:#fff!important;border:1px solid #ccc}.section-title{color:#000!important}@page{size:landscape;margin:1cm}}.last\:border-0:last-child{border-width:0px}.hover\:-translate-y-px:hover{--tw-translate-y: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-bg-2:hover{--tw-bg-opacity: 1;background-color:rgb(28 29 43 / var(--tw-bg-opacity, 1))}.hover\:bg-bg-3:hover{--tw-bg-opacity: 1;background-color:rgb(37 38 55 / var(--tw-bg-opacity, 1))}.hover\:text-text-1:hover{--tw-text-opacity: 1;color:rgb(232 232 237 / var(--tw-text-opacity, 1))}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:bg-bg-2:focus{--tw-bg-opacity: 1;background-color:rgb(28 29 43 / var(--tw-bg-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-accent:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-bg-0:focus-visible{--tw-ring-offset-color: #0c0d12}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group.toaster .group-\[\.toaster\]\:border-border{--tw-border-opacity: 1;border-color:rgb(42 43 61 / var(--tw-border-opacity, 1))}.group.toast .group-\[\.toast\]\:bg-accent{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.group.toast .group-\[\.toast\]\:bg-bg-2{--tw-bg-opacity: 1;background-color:rgb(28 29 43 / var(--tw-bg-opacity, 1))}.group.toaster .group-\[\.toaster\]\:bg-accent{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.group.toaster .group-\[\.toaster\]\:bg-bg-1{--tw-bg-opacity: 1;background-color:rgb(20 21 30 / var(--tw-bg-opacity, 1))}.group.toaster .group-\[\.toaster\]\:bg-danger{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.group.toaster .group-\[\.toaster\]\:bg-success{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.group.toaster .group-\[\.toaster\]\:bg-warning{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.group.toast .group-\[\.toast\]\:text-text-2{--tw-text-opacity: 1;color:rgb(124 125 138 / var(--tw-text-opacity, 1))}.group.toast .group-\[\.toast\]\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.group.toaster .group-\[\.toaster\]\:text-\[\#1a1a1a\]{--tw-text-opacity: 1;color:rgb(26 26 26 / var(--tw-text-opacity, 1))}.group.toaster .group-\[\.toaster\]\:text-text-1{--tw-text-opacity: 1;color:rgb(232 232 237 / var(--tw-text-opacity, 1))}.group.toaster .group-\[\.toaster\]\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.group.toaster .group-\[\.toaster\]\:shadow-\[0_8px_32px_rgb\(0_0_0_\/_0\.6\)\]{--tw-shadow: 0 8px 32px rgb(0 0 0 / .6);--tw-shadow-colored: 0 8px 32px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[state\=active\]\:bg-accent[data-state=active]{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.data-\[state\=open\]\:bg-bg-2[data-state=open]{--tw-bg-opacity: 1;background-color:rgb(28 29 43 / var(--tw-bg-opacity, 1))}.data-\[state\=active\]\:text-white[data-state=active]{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}
