/* Zeven Light 2026 — identidade visual principal */
:root{--bg:#f6f7fb;--sidebar:#fff;--panel:#fff;--panel-2:#fafaff;--line:#e8eaf2;--text:#172033;--muted:#687084;--purple:#6f4eff;--purple-2:#8871f8;--teal:#11ad9d;--gold:#dda139;--rose:#e55f83;--danger:#cc4969;--shadow:0 16px 42px rgba(36,39,64,.07);--shadow-hover:0 22px 55px rgba(70,55,150,.13);color-scheme:light}
body{background:radial-gradient(circle at 88% -10%,rgba(111,78,255,.08),transparent 30%),var(--bg);color:var(--text);font-family:Aptos,Inter,"Segoe UI Variable","Segoe UI",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.icon{width:19px;height:19px;display:inline-block;flex:none}.button .icon{width:17px;height:17px}.sidebar{background:rgba(255,255,255,.94);border-color:var(--line);box-shadow:8px 0 35px rgba(31,35,55,.035);backdrop-filter:blur(18px)}
.brand{color:#1e2433}.brand-mark{position:relative;overflow:hidden;background:linear-gradient(145deg,#8f78ff,#6240eb);color:#fff;box-shadow:0 10px 25px rgba(111,78,255,.3);transform:rotate(-3deg)}.brand-mark:after{content:"";position:absolute;inset:-50%;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.38),transparent 65%);animation:brandShine 5s ease-in-out infinite}.brand-mark b{position:relative;z-index:1}.brand>span:last-child strong{font-size:15px}.brand>span:last-child strong span{color:var(--purple)}.brand small{color:#98a0b2}
.nav-label,.eyebrow{color:#8c92a6}.nav-link{color:#646c80;position:relative;overflow:hidden}.nav-link .icon{color:#9097aa;transition:transform .22s ease,color .22s ease}.nav-link:hover{background:#f7f5ff;color:#30265f;transform:translateX(2px)}.nav-link:hover .icon{color:var(--purple);transform:scale(1.08)}.nav-link.active{background:linear-gradient(90deg,#f0edff,#f8f7ff);color:#4c35bb;box-shadow:none}.nav-link.active:before{content:"";position:absolute;inset:7px auto 7px 0;width:3px;border-radius:0 6px 6px 0;background:linear-gradient(var(--purple),#a28fff)}.nav-link.active .icon{color:var(--purple)}
.sidebar-foot{color:#5e6679}.sidebar-foot small{color:#9aa1b1}.online-dot{background:var(--teal);animation:statusPulse 2.4s ease-out infinite}.topbar{background:rgba(255,255,255,.82);border-color:rgba(226,229,238,.88);box-shadow:0 5px 24px rgba(45,48,70,.035)}.topbar strong{color:#272d3d}.icon-button,.calendar-toolbar button,.calendar-views button{background:#fff;border-color:var(--line);color:#747c90;box-shadow:0 4px 14px rgba(35,39,61,.04);transition:.2s ease}.icon-button:hover,.calendar-toolbar button:hover{color:var(--purple);border-color:#dcd5ff;background:#f8f6ff;transform:translateY(-1px)}.avatar{background:linear-gradient(145deg,#eeeaff,#ddd5ff);color:#5c3dd0;box-shadow:inset 0 0 0 1px #d7ceff}
.content>*{animation:revealUp .48s cubic-bezier(.2,.75,.25,1) both}.content>*:nth-child(2){animation-delay:.05s}.content>*:nth-child(3){animation-delay:.1s}.content>*:nth-child(4){animation-delay:.15s}.page-head h1{font-size:34px;color:#1d2332}.button{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.button:hover{transform:translateY(-2px)}.button.primary{background:linear-gradient(135deg,#7c5cff,#6542e7);box-shadow:0 10px 25px rgba(105,72,232,.23)}.button.primary:hover{box-shadow:0 15px 32px rgba(105,72,232,.31)}.button.ghost{background:#fff;border-color:var(--line);color:#50586c;box-shadow:0 5px 16px rgba(36,39,61,.035)}.button.ghost:hover{border-color:#d8d1ff;color:#5e42d1;background:#faf9ff}.button.danger{background:#fff0f3;border-color:#ffd8e1;color:#bc3d5c}
.metric,.panel,.professor-card,.calendar-shell,.form-panel,.report-filters{background:rgba(255,255,255,.96);border-color:var(--line);box-shadow:var(--shadow)}.metric,.panel,.professor-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.metric:hover,.panel:hover,.professor-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);border-color:#ded9f5}.metric{position:relative;overflow:hidden}.metric:after{content:"";position:absolute;width:90px;height:90px;right:-35px;bottom:-42px;border-radius:50%;background:rgba(111,78,255,.045)}.metric strong{color:#202637}.metric-icon{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.metric:hover .metric-icon{transform:scale(1.08) rotate(-3deg)}.metric-icon.purple{background:#eeeaff;color:#6f4eff}.metric-icon.teal{background:#e3f8f4;color:#0d9d8e}.metric-icon.gold{background:#fff5df;color:#c98615}.metric-icon.rose{background:#fff0f4;color:#d84e72}
.timeline-row{border-color:var(--line);border-radius:10px;transition:.2s ease}.timeline-row:hover{background:#faf9ff;transform:translateX(3px)}.load-list i{background:#eef0f5}.insight{background:linear-gradient(110deg,#f4f1ff 0,#fff 60%,#eafaf7);justify-content:flex-start}.insight-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:#fff;color:var(--purple);box-shadow:0 10px 25px rgba(99,67,222,.14)}.insight-icon .icon{width:25px;height:25px}.insight .button{margin-left:auto}
.professor-card>p,.page-head p,.insight p{color:var(--muted)}.large-avatar{background:color-mix(in srgb,var(--avatar-color),white 86%)}.professor-stats{border-color:var(--line)}
.form-grid input,.form-grid select,.form-grid textarea,.calendar-filters select,.report-filters input,.report-filters select{background:#fbfbfd;color:#202637;border-color:#e2e5ee}.form-grid input:hover,.form-grid select:hover,.form-grid textarea:hover,.calendar-filters select:hover,.report-filters input:hover,.report-filters select:hover{border-color:#cfc8f7}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{background:#fff;box-shadow:0 0 0 4px rgba(111,78,255,.1)}
.calendar-toolbar,.calendar-filters{border-color:var(--line)}.calendar-views button.active{background:linear-gradient(135deg,#7c5cff,#6542e7);border-color:transparent;color:#fff;box-shadow:0 8px 18px rgba(111,78,255,.2)}.cal-weekday{background:#fafaff;border-color:var(--line);color:#878fa3}.cal-day{background:#fff;border-color:var(--line)}.cal-day.muted-day{background:#fafbfc;color:#b2b7c3}.cal-day.today{box-shadow:inset 0 0 0 2px rgba(111,78,255,.55);background:#fbfaff}.cal-event{background:#f7f6fb;color:#313748;transition:.18s ease}.cal-event:hover{transform:translateY(-1px);background:#efecff;box-shadow:0 6px 14px rgba(73,58,139,.1)}.cal-week>div,.cal-list-row{border-color:var(--line)}.cal-list-row:hover{background:#faf9ff}
.report-filters{background:#fff}.chart .bar-group i{transform-origin:bottom;animation:barGrow .7s cubic-bezier(.2,.8,.2,1) both}.donut{filter:drop-shadow(0 10px 15px rgba(83,58,177,.12));animation:donutIn .65s cubic-bezier(.2,.8,.2,1) both}.donut:after{background:#fff}.table-scroll table tbody tr{transition:background .16s ease}.table-scroll table tbody tr:hover{background:#faf9ff}th,td{border-color:var(--line)}
.auth-body{background:#fff}.login-layout{background:#fff}.login-story{background:radial-gradient(circle at 12% 12%,#fff 0,#f5f2ff 42%,#ecf9f7 100%);color:#1d2332}.login-story:before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:9%;top:23%;border:1px solid rgba(111,78,255,.13);box-shadow:0 0 0 45px rgba(111,78,255,.025),0 0 0 90px rgba(17,173,157,.02);animation:orbFloat 7s ease-in-out infinite}.login-story:after{color:rgba(111,78,255,.035)}.login-story h1{color:#1d2332}.login-story h1 span{color:#6f4eff}.login-story p{color:#626b7e}.login-story>small{color:#9299aa}.security-note{color:#315e59}.login-panel{background:#fff}.login-card input{background:#fbfbfd}.demo-box{background:#f3f0ff;color:#5940bd}.toast{box-shadow:0 20px 50px rgba(30,34,54,.15)}
body.dark{--bg:#0d1019;--sidebar:#111521;--panel:#171b2a;--panel-2:#1d2233;--line:#292f43;--text:#f5f7fb;--muted:#939bb2;--shadow:0 22px 60px rgba(0,0,0,.22);--shadow-hover:0 26px 65px rgba(0,0,0,.3);color-scheme:dark;background:var(--bg)}body.dark .sidebar{background:#111521}body.dark .topbar{background:rgba(13,16,25,.86)}body.dark .topbar strong,body.dark .page-head h1,body.dark .metric strong{color:#f5f7fb}body.dark .nav-link:hover{background:#20253a;color:#fff}body.dark .nav-link.active{background:#25233b;color:#b7abff}body.dark .icon-button,body.dark .calendar-toolbar button,body.dark .button.ghost{background:#171b2a;color:#c8cede}body.dark .metric,body.dark .panel,body.dark .professor-card,body.dark .calendar-shell,body.dark .form-panel,body.dark .report-filters{background:#171b2a}body.dark .insight{background:linear-gradient(110deg,#292341,#171b2a 60%,#16302f)}body.dark .form-grid input,body.dark .form-grid select,body.dark .form-grid textarea,body.dark .calendar-filters select,body.dark .report-filters input,body.dark .report-filters select{background:#10131f;color:#fff}body.dark .cal-weekday{background:#151826}body.dark .cal-day{background:#151927}body.dark .cal-day.muted-day{background:#12151f}body.dark .cal-event{background:#202538;color:#f5f7fb}body.dark .donut:after{background:#171b2a}body.dark .table-scroll table tbody tr:hover{background:#1d2233}
@keyframes revealUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes brandShine{0%,65%{transform:translateX(-100%)}85%,100%{transform:translateX(100%)}}@keyframes statusPulse{0%{box-shadow:0 0 0 0 rgba(17,173,157,.35)}70%{box-shadow:0 0 0 7px rgba(17,173,157,0)}100%{box-shadow:0 0 0 0 rgba(17,173,157,0)}}@keyframes barGrow{from{transform:scaleY(0);opacity:.2}to{transform:scaleY(1);opacity:1}}@keyframes donutIn{from{transform:scale(.82) rotate(-25deg);opacity:0}to{transform:none;opacity:1}}@keyframes orbFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-14px) scale(1.02)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Refinamento premium — hierarquia, degradês e profundidade */
body{font-family:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;font-weight:450}.page-head h1,.panel-head h2,.metric strong,.professor-card h2,.login-card h2,.login-story h1,.topbar>div:first-of-type>strong{font-family:"Segoe UI Variable Display","Segoe UI",system-ui,sans-serif;font-variation-settings:"wght" 720,"opsz" 32;letter-spacing:-.045em}.eyebrow,.nav-label,th,.metric small{font-family:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;font-weight:750;letter-spacing:.145em}
.content{padding-top:30px}.page-head{position:relative;isolation:isolate;overflow:hidden;align-items:center;padding:27px 30px;border:1px solid rgba(225,221,244,.88);border-radius:24px;background:linear-gradient(118deg,rgba(255,255,255,.98),rgba(247,245,255,.96) 58%,rgba(239,251,248,.92));box-shadow:0 18px 52px rgba(54,47,102,.075)}.page-head:before{content:"";position:absolute;z-index:-1;width:240px;height:240px;right:-75px;top:-125px;border-radius:50%;background:radial-gradient(circle,rgba(111,78,255,.18),rgba(111,78,255,0) 70%);animation:heroOrb 8s ease-in-out infinite}.page-head:after{content:"";position:absolute;z-index:-1;width:150px;height:150px;right:12%;bottom:-120px;border:1px solid rgba(17,173,157,.13);border-radius:50%;box-shadow:0 0 0 28px rgba(17,173,157,.025),0 0 0 56px rgba(111,78,255,.018)}.page-head h1{font-size:clamp(30px,3vw,40px);line-height:1.06;margin-top:8px}.page-head p{font-size:14px;margin-top:8px}.page-head .eyebrow{color:#7266a5}
.topbar{min-height:74px}.topbar>div:first-of-type>strong{font-size:17px;letter-spacing:-.025em}.profile{padding:6px 10px 6px 7px;border:1px solid #eceaf5;border-radius:14px;background:rgba(255,255,255,.76);box-shadow:0 6px 18px rgba(42,44,68,.04)}
.metric-grid{gap:16px}.metric{min-height:136px;border-radius:20px;padding:22px 23px;isolation:isolate}.metric-grid>.metric:nth-child(1){background:linear-gradient(142deg,#fff 36%,#f1edff 100%);border-color:#e5defe}.metric-grid>.metric:nth-child(2){background:linear-gradient(142deg,#fff 36%,#e8faf6 100%);border-color:#d7f1eb}.metric-grid>.metric:nth-child(3){background:linear-gradient(142deg,#fff 36%,#fff5df 100%);border-color:#f6e8c6}.metric-grid>.metric:nth-child(4){background:linear-gradient(142deg,#fff 36%,#fff0f4 100%);border-color:#f7dfe6}.metric:before{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(115deg,rgba(255,255,255,.68),transparent 44%);pointer-events:none}.metric:after{width:130px;height:130px;right:-48px;bottom:-62px;background:radial-gradient(circle,rgba(111,78,255,.10),rgba(111,78,255,0) 70%)}.metric-icon{width:49px;height:49px;border-radius:15px;box-shadow:0 10px 22px rgba(67,56,126,.10)}.metric strong{font-size:32px;line-height:1}.metric p{font-size:11.5px;margin-top:6px}.metric:hover{transform:translateY(-5px) scale(1.008)}
.panel{border-radius:21px;padding:23px;background:linear-gradient(150deg,#fff 0,#fdfdff 72%,#f8f7ff 100%)}.panel:has(.timeline){background:linear-gradient(145deg,#fff 55%,#f8f6ff 100%)}.panel:has(.load-list){background:linear-gradient(150deg,#fff 52%,#eefaf7 100%)}.panel-head h2{font-size:20px;letter-spacing:-.035em}.panel-head a{padding:7px 10px;border-radius:9px;background:#f5f2ff;transition:.2s ease}.panel-head a:hover{background:#ebe6ff;transform:translateX(2px)}
.timeline-row{grid-template-columns:48px 4px 1fr auto;padding:14px 9px}.timeline-row time strong{font-size:21px;letter-spacing:-.03em}.timeline-row>i{height:42px;width:4px;box-shadow:0 0 13px color-mix(in srgb,var(--event-color),transparent 50%)}.timeline-row>div>strong{font-size:13.5px}.badge{border:1px solid rgba(255,255,255,.6);box-shadow:0 5px 12px rgba(38,41,61,.07)}
.load-list>div{padding:5px 0}.load-list i{height:8px}.load-list b{position:relative;overflow:hidden}.load-list b:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-100%);animation:progressShine 4.8s ease-in-out infinite}
.insight{min-height:124px;border-color:#e2dcfb;background:linear-gradient(110deg,#eee9ff 0,#fff 48%,#e5f9f4 100%)}.insight-icon{width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#fff,#f2efff);box-shadow:0 14px 32px rgba(99,67,222,.17)}
.professor-grid{gap:18px}.professor-card{position:relative;overflow:hidden;border-radius:21px;padding:24px;background:linear-gradient(145deg,#fff 58%,#f7f5ff 100%)}.professor-card:after{content:"";position:absolute;width:120px;height:120px;right:-55px;top:-60px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--purple),transparent 88%),transparent 70%)}.professor-card:hover .large-avatar{transform:translateY(-2px) rotate(-3deg)}.large-avatar{width:52px;height:52px;border-radius:16px;transition:.24s ease;box-shadow:0 10px 22px rgba(57,48,103,.10)}
.calendar-shell{border-radius:23px;background:linear-gradient(150deg,#fff,#fbfaff);box-shadow:0 24px 65px rgba(48,44,82,.085)}.calendar-toolbar{padding:20px 22px}.calendar-nav h2{font-family:"Segoe UI Variable Display","Segoe UI",sans-serif;font-size:21px;font-weight:720;letter-spacing:-.035em}.calendar-filters{padding:14px 22px;background:rgba(250,249,255,.72)}.cal-day{transition:background .18s ease,box-shadow .18s ease}.cal-day:hover{position:relative;z-index:1;background:#fbfaff;box-shadow:inset 0 0 0 1px #ddd6ff}.cal-event{border-radius:7px;padding-block:8px}
.report-filters{border-radius:18px;padding:19px;background:linear-gradient(145deg,#fff,#faf9ff)}.report-grid{gap:20px}.chart{background:linear-gradient(180deg,transparent,rgba(111,78,255,.025));border-radius:14px}.donut-wrap{background:radial-gradient(circle at 28% 50%,rgba(111,78,255,.07),transparent 42%);border-radius:16px}.table-scroll{border-radius:13px}tbody tr:last-child td{border-bottom:0}
.form-panel{border-radius:23px;overflow:hidden;background:linear-gradient(145deg,#fff,#fbfaff)}.form-section{padding:34px}.form-grid input,.form-grid select,.form-grid textarea{border-radius:11px;padding:13px 14px;transition:.18s ease}.step{display:inline-flex;padding:5px 8px;border-radius:8px;background:#efeaff;color:#6245d1}
.button{border-radius:12px;padding:12px 17px}.button.primary{position:relative;overflow:hidden;background:linear-gradient(120deg,#866aff,#6946ed 58%,#7355ff)}.button.primary:after{content:"";position:absolute;inset:-60% auto -60% -45%;width:35%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transition:transform .55s ease}.button.primary:hover:after{transform:translateX(410%) rotate(18deg)}
@keyframes heroOrb{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-16px,12px,0) scale(1.05)}}@keyframes progressShine{0%,60%{transform:translateX(-110%)}85%,100%{transform:translateX(110%)}}
@media(max-width:780px){.content{padding-top:18px}.page-head{padding:23px 20px;border-radius:20px}.page-head h1{font-size:32px}.metric{min-height:122px}.form-section{padding:24px}.profile{border:0;background:transparent;box-shadow:none;padding:0}}

/* Aplicação da marca oficial Zenite */
.brand{display:grid;justify-items:start;gap:7px;margin:0 10px 34px;padding:4px 0}.brand-logo{display:block;width:158px;height:auto;object-fit:contain}.brand-caption{padding-left:2px;color:#8b91a1!important;font-size:8px!important;font-weight:750;letter-spacing:.16em!important}.mobile-brand-logo,.print-logo{display:none}.story-brand{position:relative;z-index:2}.login-logo{display:block;width:170px;height:auto;filter:drop-shadow(0 12px 22px rgba(18,92,132,.10))}.login-panel-logo{display:none;width:145px;height:auto;margin:0 auto 28px}.topbar-copy{display:grid;gap:5px}
@media(max-width:780px){.mobile-brand-logo{display:block;width:76px;height:auto;margin:0 auto 0 10px}.topbar-copy{display:none!important}.topbar>div:first-of-type{margin:0}.brand-logo{width:150px}.login-panel-logo{display:block}}
.login-story:before,.login-story:after{display:none}.login-star{position:absolute;z-index:0;right:3%;top:17%;width:min(650px,62%);height:auto;opacity:.5;pointer-events:none;mix-blend-mode:multiply}.login-story h1 span{background:linear-gradient(110deg,#087eaa 0%,#11a8b5 48%,#25b895 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.login-story .story-brand,.login-story>div,.login-story>small{position:relative;z-index:1}
@media(max-width:780px){.login-star{width:92%;right:4%;top:16%;opacity:.42}}
@media print{.print-logo{display:block!important;width:145px;height:auto;margin:0 0 22px}.content>*{animation:none!important}}

/* Criação rápida a partir do calendário */
.cal-day.is-clickable,.cal-week-slot{cursor:pointer}.cal-day-head{display:flex;align-items:center;justify-content:space-between;min-height:22px;margin-bottom:5px}.cal-date{display:grid;place-items:center;min-width:25px;height:25px;padding:0 5px;border-radius:8px;color:inherit;text-decoration:none;font-size:11px;font-weight:700;transition:.18s ease}.cal-date:hover,.cal-day:hover .cal-date{background:#ebe6ff;color:#6042d1}.cal-add{display:inline-flex;align-items:center;gap:3px;padding:4px 7px;border-radius:8px;background:#f0ecff;color:#6849da;font-size:9px;font-weight:750;opacity:0;transform:translateY(3px);transition:opacity .18s ease,transform .18s ease}.cal-day:hover .cal-add{opacity:1;transform:none}.cal-day.is-clickable:active{background:#f5f2ff}.cal-week-slot{position:relative;transition:.18s ease}.cal-week-slot:hover{background:#f8f6ff}.cal-slot-add{position:absolute;right:5px;top:5px;z-index:2;display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:#ece7ff;color:#6242d1;text-decoration:none;font-weight:800;opacity:0;transform:scale(.85);transition:.18s ease}.cal-week-slot:hover .cal-slot-add,.cal-slot-add:focus{opacity:1;transform:scale(1)}
.cal-event{display:grid;gap:3px;line-height:1.2}.cal-event-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event-professor{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#737b91;font-size:9px;font-weight:650}.cal-event-professor:before{content:"";display:inline-block;width:5px;height:5px;margin:0 4px 1px 0;border-radius:50%;background:var(--color);box-shadow:0 0 0 2px color-mix(in srgb,var(--color),transparent 84%)}
@media(hover:none){.cal-add{opacity:1;transform:none;background:transparent;padding-right:2px}.cal-slot-add{opacity:.75;transform:scale(1)}}
.status-wrap{display:flex;align-items:center;gap:7px}.professor-status{font-size:10px;font-weight:750;color:#718097}.professor-status.active{color:#079382}.professor-status.inactive{color:#c34b68}.professor-status.on_leave{color:#bd811a}.professor-actions{display:flex;align-items:center;gap:9px}.professor-actions form{display:inline-flex}.text-action{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#6143ce;font-size:11px;font-weight:750;text-decoration:none;cursor:pointer;padding:5px;border-radius:7px;transition:.18s ease}.text-action .icon{width:14px;height:14px}.text-action:hover{background:#f1eeff}.text-action.block{color:#bc5067}.text-action.block:hover{background:#fff0f4}.text-action.unblock{color:#078b7d}.text-action.unblock:hover{background:#e9faf7}.professor-card footer{gap:7px;flex-wrap:wrap}
.settings-layout{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:20px;align-items:start}.settings-form{padding:24px}.settings-form-head{display:flex;align-items:center;gap:10px;margin-bottom:20px}.settings-form-head h2{margin:0;font-size:18px;color:#293248}.settings-form form{display:grid;gap:14px}.settings-form button{margin-top:8px}.settings-list{min-width:0}.settings-list .panel-head{margin-bottom:12px}.color-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--swatch);margin-right:8px;box-shadow:0 0 0 3px color-mix(in srgb,var(--swatch),transparent 82%)}.settings-list td code{color:#6a4cdb;font-size:11px}
@media(max-width:900px){.settings-layout{grid-template-columns:1fr}}

/* Identidade Zeven 2026 — azul e verde claro */
:root{--zeven-navy:#073b5c;--zeven-blue:#087eaa;--zeven-cyan:#11a8b5;--zeven-mint:#25b895;--zeven-ice:#e9f8fb;--zeven-leaf:#e9faf4;--purple:var(--zeven-blue);--purple-2:var(--zeven-cyan);--teal:var(--zeven-mint);--line:#dfecef;--shadow:0 16px 42px rgba(20,91,112,.075);--shadow-hover:0 24px 58px rgba(13,112,139,.15)}
body{background:radial-gradient(circle at 82% -8%,rgba(17,168,181,.10),transparent 30%),radial-gradient(circle at 24% 105%,rgba(37,184,149,.07),transparent 28%),#f5f9fa;font-family:Aptos,"Segoe UI Variable Text",Inter,"Segoe UI",system-ui,sans-serif;font-weight:450}
.page-head h1,.panel-head h2,.metric strong,.professor-card h2,.login-card h2,.login-story h1,.topbar>div:first-of-type>strong{font-family:"Aptos Display",Aptos,"Segoe UI Variable Display","Segoe UI",system-ui,sans-serif;font-variation-settings:"wght" 720,"opsz" 32;letter-spacing:-.042em}
.eyebrow,.nav-label,th,.metric small{font-family:Aptos,"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;font-weight:750;letter-spacing:.14em}
.page-head{border-color:rgba(203,231,235,.92);background:linear-gradient(120deg,rgba(255,255,255,.99),rgba(238,249,252,.97) 55%,rgba(233,250,244,.94));box-shadow:0 20px 56px rgba(14,93,115,.085)}
.page-head:before{background:radial-gradient(circle,rgba(17,168,181,.17),rgba(17,168,181,0) 70%)}
.page-head:after{border-color:rgba(37,184,149,.18);box-shadow:0 0 0 28px rgba(37,184,149,.03),0 0 0 56px rgba(8,126,170,.02)}
.page-head .eyebrow{color:#287d91}
.button.primary{background:linear-gradient(125deg,#087eaa 0%,#0ba3ae 52%,#24b792 100%);box-shadow:0 12px 28px rgba(8,126,170,.24)}
.button.primary:hover{box-shadow:0 17px 36px rgba(8,126,170,.31)}
.button.ghost{border-color:#dbeaec;color:#376475}.button.ghost:hover{border-color:#bfe0e3;color:#087eaa;background:#f1fbfc}
.nav-link:hover{background:linear-gradient(90deg,#edf9fb,#f4fcf9);color:#075976}.nav-link:hover .icon{color:#0a93a8}
.nav-link.active{background:linear-gradient(90deg,#e6f7fb,#effbf6);color:#086b8e}.nav-link.active:before{background:linear-gradient(#0788ad,#29bd93)}.nav-link.active .icon{color:#0a93a8}
.avatar{background:linear-gradient(145deg,#e3f6fa,#dcf7ed);color:#087eaa;box-shadow:inset 0 0 0 1px #cbeaec}

.metric-grid{gap:18px}.metric-grid>.metric{--card-accent:#087eaa;--card-soft:#e8f6fb;position:relative;min-height:148px;isolation:isolate;overflow:hidden;padding:24px;border:1px solid color-mix(in srgb,var(--card-accent),white 79%);border-radius:23px;background:linear-gradient(140deg,#fff 22%,color-mix(in srgb,var(--card-soft),white 22%) 100%);box-shadow:0 16px 36px color-mix(in srgb,var(--card-accent),transparent 91%),inset 0 1px 0 rgba(255,255,255,.92)}
.metric-grid>.metric:nth-child(1){--card-accent:#087eaa;--card-soft:#e4f5fb}.metric-grid>.metric:nth-child(2){--card-accent:#0aa1ae;--card-soft:#e2f8f7}.metric-grid>.metric:nth-child(3){--card-accent:#20ad91;--card-soft:#e7f9f1}.metric-grid>.metric:nth-child(4){--card-accent:#4abca2;--card-soft:#ecfaf5}
.metric-grid>.metric:nth-child(n){border-color:color-mix(in srgb,var(--card-accent),white 79%);background:linear-gradient(140deg,#fff 22%,color-mix(in srgb,var(--card-soft),white 22%) 100%)}
.metric-grid>.metric:before{content:"";position:absolute;z-index:-1;inset:0 0 auto;width:100%;height:4px;border-radius:23px 23px 0 0;background:linear-gradient(90deg,var(--card-accent),color-mix(in srgb,var(--card-accent),white 34%),transparent 92%)}
.metric-grid>.metric:after{content:"";position:absolute;z-index:-1;width:170px;height:170px;right:-72px;bottom:-88px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--card-accent),transparent 78%),transparent 69%);transition:transform .35s ease}
.metric-grid>.metric:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--card-accent),white 66%);box-shadow:0 25px 54px color-mix(in srgb,var(--card-accent),transparent 84%),inset 0 1px 0 rgba(255,255,255,.95)}
.metric-grid>.metric:hover:after{transform:translate(-8px,-6px) scale(1.08)}
.metric-grid>.metric .metric-icon{width:52px;height:52px;border:1px solid color-mix(in srgb,var(--card-accent),white 74%);border-radius:17px;background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--card-soft),white 4%));color:var(--card-accent);box-shadow:0 12px 26px color-mix(in srgb,var(--card-accent),transparent 86%)}
.metric-grid>.metric small{color:color-mix(in srgb,var(--card-accent),#536873 42%)}.metric-grid>.metric strong{color:#103449;font-size:34px}.metric-grid>.metric p{color:#637a84;font-size:12px}

.panel,.professor-card,.settings-form,.settings-list{border-color:#dfecee;background:linear-gradient(150deg,#fff 0,#fbfefe 68%,#f2fbf8 100%);box-shadow:0 18px 44px rgba(26,92,108,.075)}
.panel:hover,.professor-card:hover{border-color:#cbe5e7;box-shadow:0 25px 58px rgba(13,112,139,.13)}
.panel:has(.timeline){background:linear-gradient(145deg,#fff 48%,#f0f9fc 100%)}.panel:has(.load-list){background:linear-gradient(150deg,#fff 48%,#edf9f4 100%)}
.panel-head h2{color:#12384c}.panel-head a{color:#087eaa;background:#eaf7fa}.panel-head a:hover{background:#dff2f5;color:#086b8e}
.timeline-row:hover{background:linear-gradient(90deg,#f0fafc,#f4fcf9)}
.badge.online{background:#e7f4fb;color:#176d96;border-color:#cfe8f2}.badge.presential{background:#e6f8f2;color:#087a65;border-color:#caeee2}.badge.hybrid{background:#e8f7f6;color:#147b83;border-color:#ceeae8}
.load-list i{background:#e9f1f3}.load-list b{background:linear-gradient(90deg,#0a88aa,#25b895)!important}
.insight{border-color:#cce9e8;background:linear-gradient(112deg,#e4f6fb 0,#fff 47%,#e2f8ef 100%)}.insight-icon{background:linear-gradient(145deg,#fff,#e7f8f5);color:#0a91a5;box-shadow:0 14px 32px rgba(10,145,165,.16)}
.professor-card{background:linear-gradient(145deg,#fff 55%,#edf9f5 100%)}.professor-card:after{background:radial-gradient(circle,rgba(17,168,181,.12),transparent 70%)}
.large-avatar{border:1px solid color-mix(in srgb,var(--avatar-color),white 70%);box-shadow:0 11px 24px rgba(12,115,136,.12)}
.step{background:linear-gradient(135deg,#e5f6fa,#e4f8f0);color:#087eaa}.color-swatch{box-shadow:0 0 0 3px color-mix(in srgb,var(--swatch),transparent 84%),0 4px 10px rgba(11,126,148,.12)}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#54bfc3;box-shadow:0 0 0 4px rgba(17,168,181,.11)}
.bar-group i{background:linear-gradient(#20b9c1,#087eaa)}.bar-group i.alt{background:linear-gradient(#57d6b3,#20a98c)}.donut{filter:drop-shadow(0 12px 18px rgba(8,126,170,.16))}
@media(max-width:780px){.metric-grid{gap:13px}.metric-grid>.metric{min-height:128px;padding:20px;border-radius:19px}.metric-grid>.metric:before{border-radius:19px 19px 0 0}.metric-grid>.metric strong{font-size:31px}}

/* Feriados — formulário premium e importação CSV */
.holiday-head-actions .icon,.holiday-import .icon,.holiday-create-form .icon{width:18px;height:18px}.holiday-import{scroll-margin-top:94px;display:grid;grid-template-columns:minmax(280px,.85fr) minmax(520px,1.15fr);gap:28px;align-items:center;margin-bottom:20px;padding:25px 27px;border:1px solid #cde7e9;border-radius:22px;background:linear-gradient(118deg,#e8f7fb 0,#fff 52%,#e7faf2 100%);box-shadow:0 18px 46px rgba(11,113,137,.09);position:relative;overflow:hidden}.holiday-import:after{content:"";position:absolute;width:190px;height:190px;right:-90px;top:-105px;border-radius:50%;background:radial-gradient(circle,rgba(37,184,149,.18),transparent 70%);pointer-events:none}.holiday-import-copy{display:flex;gap:15px;align-items:flex-start;position:relative;z-index:1}.holiday-import-icon{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border:1px solid #c5e6e7;border-radius:15px;background:rgba(255,255,255,.82);color:#0789a7;box-shadow:0 10px 22px rgba(8,126,170,.12)}.holiday-import-copy h2{margin:6px 0 5px;color:#12384c;font:720 21px/1.15 "Aptos Display",Aptos,"Segoe UI",sans-serif;letter-spacing:-.03em}.holiday-import-copy p{margin:0;color:#607983;font-size:12px;line-height:1.55}.holiday-import-form{position:relative;z-index:1;display:grid;grid-template-columns:minmax(210px,1fr) 130px auto;gap:11px;align-items:end}.csv-drop{min-height:64px;display:flex;align-items:center;gap:12px;padding:10px 13px;border:1.5px dashed #8fcbd1;border-radius:14px;background:rgba(255,255,255,.8);cursor:pointer;transition:.2s ease}.csv-drop:hover{border-color:#0a99ac;background:#fff;transform:translateY(-1px);box-shadow:0 10px 24px rgba(8,126,170,.09)}.csv-drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.csv-drop-icon{flex:0 0 39px;width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#e4f5fa,#e5f8f1);color:#098ca4}.csv-drop>span:last-child{display:grid;min-width:0;gap:3px}.csv-drop strong{overflow:hidden;color:#174358;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.csv-drop small{color:#78909a;font-size:9px}.year-select{display:grid;gap:7px}.year-select>span{color:#50707d;font-size:10px;font-weight:750}.year-select select{height:44px;padding:0 12px;border:1px solid #cfe2e6;border-radius:11px;background:#fff;color:#164257;font-weight:700;outline:none}.holiday-import-form>.button{height:44px;white-space:nowrap}.settings-form{padding:26px}.settings-form-head{padding-bottom:17px;border-bottom:1px solid #e3eef0}.form-intro{margin:-3px 0 1px;color:#6c818a;font-size:12px}.holiday-create-form{gap:17px!important}.modern-field{display:grid;gap:8px;color:#43606d;font-size:11px;font-weight:750}.input-shell{display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #d5e6e9;border-radius:13px;background:linear-gradient(145deg,#fff,#f7fbfb);box-shadow:inset 0 1px 0 #fff;transition:.2s ease}.input-shell:focus-within{border-color:#4ebbc2;box-shadow:0 0 0 4px rgba(17,168,181,.10),0 8px 20px rgba(11,113,137,.06);background:#fff}.input-shell>.icon{flex:0 0 18px;color:#2799aa}.input-shell input{width:100%;height:48px;padding:0;border:0!important;outline:0;background:transparent!important;color:#15384a;font-weight:620;box-shadow:none!important}.input-shell input::placeholder{color:#9aabb2;font-weight:450}.toggle-field{display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center;padding:13px 14px;border:1px solid #d9e9e9;border-radius:13px;background:linear-gradient(120deg,#f7fcfd,#f5fcf9);cursor:pointer}.toggle-field input{position:absolute;opacity:0}.toggle-ui{position:relative;width:38px;height:22px;border-radius:20px;background:#cbdadd;box-shadow:inset 0 1px 3px rgba(23,62,73,.12);transition:.2s ease}.toggle-ui:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(29,65,75,.2);transition:.2s ease}.toggle-field input:checked+.toggle-ui{background:linear-gradient(90deg,#0789aa,#26b894)}.toggle-field input:checked+.toggle-ui:after{transform:translateX(16px)}.toggle-field>span:last-child{display:grid;gap:2px}.toggle-field strong{color:#244d5e;font-size:11px}.toggle-field small{color:#80939a;font-size:9px}.holiday-create-form>.button{width:100%;justify-content:space-between}.holiday-row-icon{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:9px;border:1px solid #d2e9ea;border-radius:9px;background:linear-gradient(145deg,#e9f7fb,#eaf9f4);color:#098ca4;vertical-align:middle}.holiday-row-icon .icon{width:14px;height:14px}.recurrence-badge{display:inline-flex;padding:6px 9px;border-radius:20px;font-size:9px;font-weight:800}.recurrence-badge.annual{background:#e4f8f1;color:#087d65}.recurrence-badge.single{background:#e8f5fa;color:#176e91}
.page-settings-holidays .settings-list table{min-width:100%}
@media(max-width:1150px){.holiday-import{grid-template-columns:1fr}.holiday-import-form{grid-template-columns:minmax(220px,1fr) 130px auto}}
@media(max-width:780px){.holiday-head-actions{width:100%;flex-wrap:wrap}.holiday-head-actions .button{flex:1}.holiday-import{padding:21px 18px;border-radius:19px}.holiday-import-form{grid-template-columns:1fr}.holiday-import-form>.button{width:100%}.settings-form{padding:21px}.holiday-row-icon{display:none}}

/* Campos modernos das configurações */
.settings-standard-form{gap:17px!important}.settings-standard-form>label{display:grid;gap:8px;color:#426170;font-size:11px;font-weight:760}.settings-standard-form>label>input:not([type=color]),.settings-standard-form>label>select{width:100%;height:49px;padding:0 14px;border:1px solid #d4e5e8;border-radius:13px;background:linear-gradient(145deg,#fff,#f7fbfb);color:#15384a;font-weight:610;outline:0;box-shadow:inset 0 1px 0 #fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.settings-standard-form>label>input:not([type=color]):hover,.settings-standard-form>label>select:hover{border-color:#add4d8}.settings-standard-form>label>input:not([type=color]):focus,.settings-standard-form>label>select:focus{border-color:#4ebbc2;background:#fff;box-shadow:0 0 0 4px rgba(17,168,181,.10),0 9px 22px rgba(11,113,137,.065)}.settings-standard-form input::placeholder{color:#9aabb2;font-weight:450}.settings-standard-form label>small{color:#82969e;font-size:9px;font-weight:500}.settings-standard-form>.button{width:100%;justify-content:space-between}.settings-standard-form>.button .icon{width:17px;height:17px}.color-field>span{display:grid;grid-template-columns:45px 1fr;grid-template-rows:auto auto;gap:2px 11px;align-items:center;min-height:59px;padding:8px 11px;border:1px solid #d4e5e8;border-radius:13px;background:linear-gradient(120deg,#f7fcfd,#f5fcf9);cursor:pointer}.color-field input[type=color]{grid-row:1/3;width:45px;height:43px;padding:3px;border:1px solid #c9e0e3;border-radius:11px;background:#fff;cursor:pointer}.color-field strong{align-self:end;color:#214b5d;font-size:11px}.color-field small{align-self:start;color:#80959d;font-size:9px}.type-acronym{display:inline-grid;place-items:center;min-width:34px;height:28px;padding:0 9px;border:1px solid #cae6e8;border-radius:9px;background:linear-gradient(145deg,#e8f7fb,#e7f9f2);color:#087d96;font-size:10px;font-weight:850;letter-spacing:.08em}.type-color{display:inline-flex;align-items:center;gap:7px}.type-color i{width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:var(--type-color);box-shadow:0 0 0 1px #d6e4e7,0 5px 10px color-mix(in srgb,var(--type-color),transparent 78%)}.type-color code{color:#57727d;font-size:10px}.mode-badge{display:inline-flex;padding:6px 9px;border-radius:20px;font-size:9px;font-weight:800}.mode-badge.presential{background:#e6f8f2;color:#087a65}.mode-badge.online{background:#e7f4fb;color:#176d96}.mode-badge.hybrid{background:#e8f7f6;color:#147b83}.page-settings-types .settings-list{min-width:0}.page-settings-types .settings-list table{min-width:760px}
