/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.table{display:table}.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,)}}:root{--navy-950:#061b2b;--navy-900:#0a2940;--navy-800:#0d3857;--blue-700:#075985;--blue-600:#0b72a8;--gold-600:#b98513;--gold-500:#d2a32c;--gold-300:#efd77c;--paper:#f4f1ea;--paper-2:#ebe6db;--ink:#17222b;--muted:#65727c;--line:#d9d5ca;--white:#fff;--red:#aa2b2b;--green:#20704a;--shadow:0 14px 40px #0b243517}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{background:radial-gradient(circle at 90% 0%, #d2a32c14, transparent 26rem), var(--paper);color:var(--ink);min-height:100vh;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.access-gate{background:radial-gradient(circle at 18% 18%, #d2a32c2e, transparent 24rem), radial-gradient(circle at 86% 80%, #0b72a833, transparent 28rem), var(--navy-950);justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex;position:relative;overflow:hidden}.access-gate:before{content:"";opacity:.035;background:url(/brasao-pmerj.png) 50%/contain no-repeat;width:min(72vw,760px);height:min(72vw,760px);position:absolute;top:4%;right:-10%}.access-card{z-index:1;background:#fffffffa;border:1px solid #efd77c8f;border-radius:22px;width:100%;max-width:520px;padding:38px 42px;position:relative;box-shadow:0 28px 80px #00000057}.access-card:before{background:linear-gradient(90deg, var(--gold-600), var(--gold-300), var(--gold-600));content:"";border-radius:22px 22px 0 0;height:4px;position:absolute;inset:0 0 auto}.access-brand{align-items:center;gap:12px;margin-bottom:30px;display:flex}.access-brand img{object-fit:contain;width:58px;height:58px}.access-brand div{flex-direction:column;display:flex}.access-brand span{color:var(--blue-700);letter-spacing:.16em;text-transform:uppercase;font-size:11px}.access-brand strong{color:var(--navy-950);letter-spacing:.09em;font-family:Georgia,serif;font-size:28px}.access-kicker{color:var(--gold-600);letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:800}.access-card h1{color:var(--navy-950);margin:8px 0 14px;font-family:Georgia,serif;font-size:clamp(31px,7vw,42px);font-weight:500;line-height:1.05}.access-description{color:var(--muted);margin:0 0 25px;font-size:14px;line-height:1.7}.access-form{gap:10px;display:grid}.access-form label{color:var(--navy-900);margin-top:2px;font-size:12px;font-weight:800}.access-form input{border:1px solid var(--line);color:var(--navy-950);background:#fbfaf7;border-radius:10px;outline:none;width:100%;padding:14px 15px;font-size:16px;transition:border-color .18s,box-shadow .18s}.access-form input:focus{border-color:var(--gold-500);box-shadow:0 0 0 3px #d2a32c26}.access-form input::placeholder{color:#99a1a7}.access-form .access-code{letter-spacing:.3em;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:24px;font-weight:800}.access-form button{background:var(--navy-900);border:1px solid var(--navy-900);color:#fff;cursor:pointer;border-radius:10px;margin-top:5px;padding:14px 17px;font-size:13px;font-weight:800;transition:background .18s,border-color .18s,transform .18s}.access-form button:hover:not(:disabled){background:var(--blue-700);border-color:var(--blue-700);transform:translateY(-1px)}.access-form button:disabled{cursor:wait;opacity:.55}.access-form .access-secondary{color:var(--blue-700);background:0 0;border-color:#0000;margin-top:0;padding:9px}.access-form .access-secondary:hover:not(:disabled){background:#f0ede6;border-color:#f0ede6;transform:none}.access-recipient{background:#eef6f1;border:1px solid #cfe2d5;border-radius:10px;flex-direction:column;margin-bottom:8px;padding:11px 13px;display:flex}.access-recipient span{color:var(--green);text-transform:uppercase;font-size:10px;font-weight:700}.access-recipient strong{color:var(--navy-900);margin-top:2px;font-size:14px}.access-error{color:var(--red);background:#fff0ee;border:1px solid #efc5c0;border-radius:9px;margin:15px 0 0;padding:11px 12px;font-size:12px;line-height:1.5}.access-help{color:#7c858b;margin-top:20px;font-size:10px;line-height:1.5;display:block}.portal-shell{min-height:100vh}.sidebar{background:linear-gradient(180deg, #ffffff08, transparent 24%), var(--navy-950);color:#fff;z-index:30;flex-direction:column;width:294px;padding:20px 18px 16px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar:after{background:linear-gradient(180deg, var(--gold-500), transparent 35%, var(--gold-600));content:"";opacity:.8;width:2px;position:absolute;inset:0 0 0 auto}.brand{align-items:center;gap:12px;padding:0 8px;display:flex}.brand img{object-fit:contain;width:60px;height:60px}.brand div{flex-direction:column;display:flex}.brand span{color:#a8c3d4;letter-spacing:.14em;text-transform:uppercase;font-size:11px}.brand strong{color:#fff;letter-spacing:.09em;font-family:Georgia,serif;font-size:27px}.sidebar-rule{background:linear-gradient(90deg, transparent, var(--gold-500), transparent);opacity:.62;height:1px;margin:14px 4px}.sidebar nav{scrollbar-width:none;flex-direction:column;flex:1;gap:4px;min-height:0;display:flex;overflow:hidden auto}.sidebar nav::-webkit-scrollbar{width:0;height:0;display:none}.nav-item{color:#c2d1db;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;padding:8px 12px;transition:all .18s;display:flex}.nav-item:hover{color:#fff;background:#ffffff0e;transform:translate(2px)}.nav-item--active{box-shadow:inset 3px 0 0 var(--gold-500);color:#fff;background:linear-gradient(90deg,#d2a32c38,#d2a32c0f);border-color:#efd77c3b}.nav-icon{background:#02070a;border:1px solid #efd77c47;border-radius:50%;min-width:38px;height:38px;transition:border-color .18s,box-shadow .18s,transform .18s;display:block;overflow:hidden;box-shadow:0 3px 10px #00000042}.nav-icon img{object-fit:cover;width:100%;height:100%;display:block}.nav-item:hover .nav-icon{border-color:#efd77c94;transform:scale(1.04)}.nav-item--active .nav-icon{border-color:var(--gold-300);box-shadow:0 0 0 2px #d2a32c2e,0 4px 12px #00000052}.nav-item>span:last-child{flex-direction:column;gap:2px;display:flex}.nav-item strong{letter-spacing:.02em;font-size:14px}.nav-item small{color:#7892a2;font-size:10px}.nav-item--active small{color:#c5d3dc}.sidebar-footer{background:#ffffff0b;border:1px solid #ffffff14;border-radius:12px;align-items:center;gap:10px;padding:10px 13px;display:flex}.sidebar-footer div{flex-direction:column;display:flex}.sidebar-footer strong{font-size:12px}.sidebar-footer small{color:#7795a7;font-size:10px}.live-dot{background:#45ce86;border:3px solid #45ce862e;border-radius:50%;width:11px;height:11px}.main-area{min-height:100vh;margin-left:294px}.topbar{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);z-index:20;background:#f4f1eae6;justify-content:space-between;align-items:center;height:96px;padding:0 46px;display:flex;position:sticky;top:0}.page-heading{flex-direction:column;display:flex}.page-heading span,.kicker{color:var(--gold-600);letter-spacing:.17em;text-transform:uppercase;font-size:11px;font-weight:800}.page-heading h1{margin:3px 0 0;font-family:Georgia,serif;font-size:29px;font-weight:600}.topbar-actions{align-items:center;gap:16px;display:flex}.sync-copy{border-right:1px solid var(--line);text-align:right;flex-direction:column;padding-right:16px;display:flex}.sync-copy span{color:var(--muted);text-transform:uppercase;font-size:10px}.sync-copy strong{margin-top:2px;font-size:13px}.refresh-button{border:1px solid var(--line);color:var(--navy-800);cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:6px;padding:11px 15px;font-size:13px;font-weight:700;display:flex}.refresh-button:hover{border-color:var(--gold-500)}.refresh-button:disabled{cursor:wait;opacity:.6}.refresh-button span{font-size:17px;line-height:1}.viewer-badge{background:var(--navy-900);border:2px solid var(--gold-500);color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-family:Georgia,serif;font-size:13px;display:flex}.viewer-badge:hover{background:var(--blue-700)}.menu-button{display:none}.content-area{max-width:1540px;margin:0 auto;padding:42px 46px 82px}.hero-panel{box-shadow:var(--shadow);color:#fff;background:linear-gradient(110deg,#061b2bfa,#0d3857f0),url(/brasao-pmerj.png) 110% 40%/310px no-repeat;border:1px solid #d2a32c47;border-radius:18px;justify-content:space-between;align-items:end;padding:38px 40px;display:flex;position:relative;overflow:hidden}.hero-panel:after{content:"";pointer-events:none;border:1px solid #efd77c33;border-radius:14px;position:absolute;inset:7px}.hero-panel h2,.content-heading h2{margin:9px 0 10px;font-family:Georgia,serif;font-size:clamp(34px,3.2vw,50px);font-weight:500}.hero-panel p,.content-heading p{color:#b7c9d4;margin:0;font-size:15px;line-height:1.6}.deadline-key{gap:9px;min-width:300px;display:grid}.deadline-key span{background:#ffffff12;border:1px solid #ffffff1a;border-radius:8px;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:grid}.deadline-key strong{color:var(--gold-300)}.key-dot{border-radius:50%;width:7px;height:7px}.key-dot--verbal{background:var(--gold-500)}.key-dot--one{background:#2e8fbd}.key-dot--two{background:#c54c4c}.stat-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0 38px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:13px;min-height:140px;padding:22px 24px;display:grid;position:relative;box-shadow:0 7px 24px #0b24350b}.stat-card:before{background:var(--card-tone);content:"";border-radius:3px;width:34px;height:4px;position:absolute;top:0;left:20px}.stat-card span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.stat-card strong{color:var(--card-tone);font-family:Georgia,serif;font-size:40px;line-height:1}.stat-card small{color:#88939a;font-size:12px}.stat-card--navy{--card-tone:var(--navy-800)}.stat-card--gold{--card-tone:var(--gold-600)}.stat-card--blue{--card-tone:var(--blue-600)}.stat-card--red{--card-tone:var(--red)}.stat-card--green{--card-tone:var(--green)}.promotion-period{border:1px solid var(--line);background:#f1eee5;border-radius:12px;justify-content:space-between;align-items:center;margin:22px 0 0;padding:16px 20px;display:flex}.promotion-period div{gap:3px;display:grid}.promotion-period span{color:var(--gold-600);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900}.promotion-period strong{color:var(--navy-900);font-size:15px}.promotion-period small{color:var(--muted);font-size:12px}.promotion-stat-grid{margin-bottom:22px}.promotion-layout{grid-template-columns:minmax(0,1.45fr) minmax(360px,.55fr);align-items:start;gap:22px;display:grid}.promotion-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;min-width:0;overflow:hidden}.promotion-card__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;padding:24px 26px 19px;display:flex}.promotion-card__header h3{color:var(--navy-900);margin:5px 0 0;font-family:Georgia,serif;font-size:27px;font-weight:500}.promotion-card__header>small{color:var(--muted);font-size:11px}.promotion-table-wrap{overflow-x:auto}.promotion-table{border-collapse:collapse;width:100%;min-width:760px}.promotion-table th{color:var(--muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;background:#f8f6f0;padding:12px 15px;font-size:10px}.promotion-table td{color:#46545d;vertical-align:middle;border-top:1px solid #eeeae1;padding:14px 15px;font-size:13px}.promotion-table tbody tr:hover{background:#fcfbf8}.promotion-reviewer{grid-template-columns:28px 40px minmax(180px,1fr);align-items:center;gap:10px;display:grid}.promotion-reviewer>span{color:var(--gold-600);font-family:Georgia,serif;font-size:14px}.promotion-reviewer img{object-fit:cover;border:2px solid #ece7dc;border-radius:50%;width:40px;height:40px}.promotion-reviewer div{gap:2px;display:grid}.promotion-reviewer strong{color:var(--navy-900);font-size:14px}.promotion-reviewer small{color:var(--muted);font-size:9px}.promotion-count{border-radius:999px;justify-content:center;min-width:34px;padding:6px 8px;font-size:13px;display:inline-flex}.promotion-count--approved{color:var(--green);background:#e2f1e8}.promotion-count--rejected{color:#962f2f;background:#f7dfdc}.promotion-total{color:var(--navy-900);font-size:16px}.approval-rate{grid-template-columns:minmax(70px,1fr) 37px;align-items:center;gap:9px;display:grid}.approval-rate>div{background:#ece8df;border-radius:999px;height:7px;overflow:hidden}.approval-rate>div span{background:var(--green);border-radius:inherit;height:100%;display:block}.approval-rate>strong{color:var(--navy-900);font-size:12px}.promotion-recent-list{gap:10px;max-height:780px;padding:14px;display:grid;overflow-y:auto}.promotion-decision{border:1px solid var(--line);border-left:4px solid var(--decision-tone);border-radius:10px;gap:10px;padding:15px;display:grid}.promotion-decision--approved{--decision-tone:var(--green)}.promotion-decision--rejected{--decision-tone:var(--red)}.promotion-decision__topline{justify-content:space-between;align-items:center;display:flex}.promotion-decision__topline span{background:var(--decision-tone)}@supports (color:color-mix(in lab, red, red)){.promotion-decision__topline span{background:color-mix(in srgb, var(--decision-tone) 12%, white)}}.promotion-decision__topline span{color:var(--decision-tone);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 7px;font-size:9px;font-weight:900}.promotion-decision__topline time{color:var(--muted);font-size:9px}.promotion-decision__reviewer{align-items:center;gap:9px;display:flex}.promotion-decision__reviewer img{object-fit:cover;border-radius:50%;width:34px;height:34px}.promotion-decision__reviewer div{gap:1px;display:grid}.promotion-decision__reviewer strong{color:var(--navy-900);font-size:13px}.promotion-decision__reviewer small{color:var(--muted);text-transform:uppercase;font-size:9px}.promotion-decision p{color:#4a5861;margin:0;font-size:12px;line-height:1.55}.promotion-decision__reason{color:#6f5531;background:#f5f1e8;border-radius:7px;padding:8px 9px;font-size:11px;line-height:1.45}.promotion-decision a{color:var(--blue-700);font-size:10px;font-weight:800;text-decoration:none}.promotion-decision a:hover{text-decoration:underline}.teaching-filter{border:1px solid var(--line);background:#f1eee5;border-radius:12px;justify-content:space-between;align-items:center;gap:28px;margin-top:22px;padding:18px 20px;display:flex}.teaching-filter__copy{gap:3px;display:grid}.teaching-filter__copy>span{color:var(--gold-600);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900}.teaching-filter__copy strong{color:var(--navy-900);font-size:15px}.teaching-filter__copy small{color:var(--muted);font-size:11px}.teaching-filter__fields{align-items:end;gap:10px;display:flex}.teaching-filter__fields label{gap:5px;display:grid}.teaching-filter__fields label>span{color:var(--navy-900);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.teaching-filter__fields input{border:1px solid var(--line);color:var(--navy-900);background:#fff;border-radius:8px;outline:none;padding:9px 10px;font-size:13px}.teaching-filter__fields input:focus{border-color:var(--gold-500);box-shadow:0 0 0 3px #d2a32c1f}.teaching-filter__fields button{background:var(--navy-900);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;min-height:39px;padding:9px 13px;font-size:11px;font-weight:800}.teaching-filter__fields button:disabled{cursor:default;opacity:.42}.teaching-range-error{color:#8a2929;background:#f8e3e0;border:1px solid #e8bbb5;border-radius:10px;margin-top:18px;padding:14px 16px;font-size:13px;font-weight:700}.absence-copy-card{border:1px solid var(--line);border-left:4px solid var(--gold-600);box-shadow:var(--shadow);background:#fff;border-radius:14px;margin:18px 0 24px;overflow:hidden}.absence-copy-card header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:22px 24px;display:flex}.absence-copy-card header>div{gap:4px;display:grid}.absence-copy-card h3{color:var(--navy-900);margin:0;font-family:Georgia,serif;font-size:26px;font-weight:500}.absence-copy-card small{color:var(--muted);font-size:11px}.absence-copy-card button{background:var(--navy-900);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:12px 15px;font-size:12px;font-weight:800}.absence-copy-card button:hover{background:var(--navy-800)}.absence-copy-card button:disabled{cursor:default;opacity:.42}.absence-copy-card pre{color:#33434e;white-space:pre-wrap;max-height:330px;margin:0;padding:20px 24px 24px;font-family:Cascadia Code,Consolas,monospace;font-size:14px;line-height:1.9;overflow:auto}.absence-copy-card>p{color:var(--muted);margin:0;padding:24px;font-size:13px}.absence-results-title{justify-content:space-between;align-items:center;margin:28px 0 13px;display:flex}.absence-results-title strong{color:var(--navy-900);font-size:13px}.teaching-stat-grid{margin-bottom:22px}.teaching-layout{grid-template-columns:minmax(0,1.35fr) minmax(390px,.65fr);align-items:start;gap:22px;display:grid}.teaching-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;min-width:0;overflow:hidden}.teaching-card__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;padding:24px 26px 19px;display:flex}.teaching-card__header h3{color:var(--navy-900);margin:5px 0 0;font-family:Georgia,serif;font-size:27px;font-weight:500}.teaching-card__header>small{color:var(--muted);font-size:11px}.teaching-card__empty{color:var(--muted);margin:0;padding:30px 26px;font-size:13px;line-height:1.6}.teaching-table-wrap{max-height:890px;overflow:auto}.teaching-table{border-collapse:collapse;width:100%;min-width:690px}.teaching-table th{color:var(--muted);letter-spacing:.07em;text-align:left;text-transform:uppercase;z-index:1;background:#f8f6f0;padding:12px 15px;font-size:10px;position:sticky;top:0}.teaching-table td{color:#46545d;vertical-align:middle;border-top:1px solid #eeeae1;padding:14px 15px;font-size:13px}.teaching-table tbody tr:hover{background:#fcfbf8}.teaching-person{grid-template-columns:28px 40px minmax(185px,1fr);align-items:center;gap:10px;display:grid}.teaching-position{color:var(--gold-600);font-family:Georgia,serif;font-size:14px}.teaching-person img,.teaching-avatar-fallback{object-fit:cover;border:2px solid #ece7dc;border-radius:50%;width:40px;height:40px}.teaching-avatar-fallback{background:var(--navy-900);color:var(--gold-300);justify-content:center;align-items:center;font-size:11px;font-weight:900;display:flex}.teaching-person strong{color:var(--navy-900);font-size:14px}.teaching-count{color:var(--blue-700);background:#e8f0f5;border-radius:999px;justify-content:center;min-width:34px;padding:6px 8px;font-size:13px;display:inline-flex}.teaching-total{color:var(--navy-900);font-size:16px}.teaching-rate{grid-template-columns:minmax(70px,1fr) 37px;align-items:center;gap:9px;display:grid}.teaching-rate>div{background:#ece8df;border-radius:999px;height:7px;overflow:hidden}.teaching-rate>div span{background:var(--gold-600);border-radius:inherit;height:100%;display:block}.teaching-rate>strong{color:var(--navy-900);font-size:12px}.teaching-report-list{gap:10px;max-height:890px;padding:14px;display:grid;overflow-y:auto}.teaching-report{border:1px solid var(--line);border-left:4px solid var(--gold-600);border-radius:10px;gap:12px;padding:15px;display:grid}.teaching-report__topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.teaching-report__topline strong{color:var(--navy-900);font-size:13px}.teaching-report__topline time{color:var(--muted);white-space:nowrap;font-size:9px}.teaching-report__metrics{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.teaching-report__metrics>span{background:#f7f5ef;border-radius:7px;gap:1px;padding:8px 9px;display:grid}.teaching-report__metrics small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:8px}.teaching-report__metrics strong{color:var(--navy-900);font-family:Georgia,serif;font-size:18px}.teaching-report__metrics .approved strong{color:var(--green)}.teaching-report__metrics .rejected strong{color:var(--red)}.teaching-report__instructors{gap:6px;display:grid}.teaching-report__instructors>small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800}.teaching-report__instructors>div{flex-wrap:wrap;gap:5px;display:flex}.teaching-report__instructors em{color:#8a949a;font-size:11px}.teaching-instructor-chip{color:var(--navy-900);background:#f1eee5;border:1px solid #e1dccf;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.teaching-instructor-chip img{object-fit:cover;border-radius:50%;width:20px;height:20px}.teaching-report>a{color:var(--blue-700);width:fit-content;font-size:10px;font-weight:800;text-decoration:none}.teaching-report>a:hover{text-decoration:underline}.course-stat-grid,.course-ranking-card{margin-bottom:22px}.course-table-wrap{max-height:900px;overflow:auto}.course-table{border-collapse:collapse;width:100%;min-width:1080px}.course-table th{color:var(--muted);letter-spacing:.07em;text-align:left;text-transform:uppercase;z-index:1;background:#f8f6f0;padding:12px 14px;font-size:10px;position:sticky;top:0}.course-table td{color:#46545d;vertical-align:middle;border-top:1px solid #eeeae1;padding:13px 14px;font-size:13px}.course-table tbody tr:hover{background:#fcfbf8}.course-person{grid-template-columns:28px 40px minmax(210px,1fr);align-items:center;gap:10px;display:grid}.course-person img,.course-person .teaching-avatar-fallback{object-fit:cover;border:2px solid #ece7dc;border-radius:50%;width:40px;height:40px}.course-person strong{color:var(--navy-900);font-size:14px}.course-count{border-radius:999px;justify-content:center;min-width:36px;padding:6px 9px;font-size:13px;display:inline-flex}.course-count--instructor{color:var(--blue-700);background:#dff0f8}.course-count--auxiliary{color:#80600c;background:#f6edcf}.course-count--total{background:var(--navy-900);color:#fff}.course-category-count{color:var(--navy-900);font-family:Georgia,serif;font-size:17px}.course-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.course-category-card{--course-tone:var(--navy-800);border:1px solid var(--line);border-top:4px solid var(--course-tone);background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 7px 24px #0b24350b}.course-category-card--basic{--course-tone:var(--navy-800)}.course-category-card--small{--course-tone:var(--green)}.course-category-card--medium{--course-tone:var(--gold-600)}.course-category-card--large{--course-tone:var(--red)}.course-category-card header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 18px 15px;display:flex}.course-category-card header>div{gap:3px;display:grid}.course-category-card header span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.course-category-card header h3{color:var(--navy-900);margin:0;font-family:Georgia,serif;font-size:20px;font-weight:500}.course-category-card header>strong{background:var(--course-tone);align-items:center}@supports (color:color-mix(in lab, red, red)){.course-category-card header>strong{background:color-mix(in srgb, var(--course-tone) 12%, white)}}.course-category-card header>strong{color:var(--course-tone);border-radius:50%;justify-content:center;min-width:43px;height:43px;font-family:Georgia,serif;font-size:18px;display:flex}.course-category-card ul{margin:0;padding:8px 16px 13px;list-style:none;display:grid}.course-category-card li{color:#4c5962;justify-content:space-between;align-items:center;gap:10px;padding:9px 2px;font-size:12px;line-height:1.4;display:flex}.course-category-card li+li{border-top:1px solid #eeeae1}.course-category-card li span{flex:1}.course-category-card li strong{color:var(--navy-900);background:#f1eee5;border-radius:999px;justify-content:center;align-items:center;min-width:30px;padding:5px 7px;font-size:11px;display:flex}.course-counting-note{color:var(--muted);margin:14px 3px 0;font-size:11px;line-height:1.55}.section-title-row{justify-content:space-between;align-items:end;margin-bottom:13px;display:flex}.section-title-row h3{margin:4px 0 0;font-family:Georgia,serif;font-size:28px}.expired-pill{color:#8d2929;background:#f7dfdc;border:1px solid #e9b9b2;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}.warning-list{gap:10px;display:grid}.warning-card{--warning-tone:var(--gold-600);border:1px solid var(--line);border-left:4px solid var(--warning-tone);background:#fff;border-radius:11px;grid-template-columns:minmax(220px,1.1fr) minmax(180px,.8fr) minmax(230px,1.2fr) minmax(150px,.8fr) auto;align-items:center;gap:20px;padding:20px 22px;display:grid}.warning-card--warning-1{--warning-tone:var(--blue-600)}.warning-card--warning-2{--warning-tone:var(--red)}.warning-person{align-items:center;gap:11px;min-width:0;display:flex}.warning-person>div{flex-direction:column;min-width:0;display:flex}.warning-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.warning-person span{color:var(--muted);font-size:11px}.avatar{background:var(--paper-2);border:1px solid var(--line);object-fit:cover;border-radius:50%;flex:none;width:52px;height:52px}.avatar--large{width:56px;height:56px}.warning-status{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.level-badge{color:#80600c;text-transform:uppercase;background:#f6edcf;border:1px solid #e7d295;border-radius:5px;padding:5px 7px;font-size:11px;font-weight:800}.level-badge--warning-1{color:#07577d;background:#dff0f8;border-color:#afd5e8}.level-badge--warning-2{color:#8b2929;background:#f7dfdf;border-color:#eab5b5}.countdown{color:var(--warning-tone);font-family:Georgia,serif;font-size:18px}.countdown--expired{color:var(--red)}.warning-progress>div{background:#e8e7e2;border-radius:999px;height:7px;overflow:hidden}.warning-progress>div span{background:var(--warning-tone);border-radius:inherit;height:100%;display:block}.warning-progress small{color:var(--muted);margin-top:7px;font-size:11px;display:block}.warning-reason-block{align-self:center;gap:4px;display:grid}.warning-issuer{color:#89949b;font-size:11px;line-height:1.35}.warning-issuer strong{color:#6f7b83;font-weight:700}.warning-reason{color:#53616a;margin:0;font-size:14px;line-height:1.55}.discord-link{color:var(--blue-700);white-space:nowrap;font-size:11px;font-weight:800;text-decoration:none}.discord-link:hover{text-decoration:underline}.removal-template{border-top:1px solid #e7e3d9;grid-column:1/-1;padding-top:13px}.removal-template summary{color:var(--navy-800);cursor:pointer;align-items:center;gap:12px;width:fit-content;list-style:none;display:flex}.removal-template summary::-webkit-details-marker{display:none}.removal-template summary:before{content:"+";background:#e8f0f5;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;font-size:16px;font-weight:900;transition:transform .2s;display:flex}.removal-template[open] summary:before{transform:rotate(45deg)}.removal-template summary span{font-size:12px;font-weight:800}.removal-template summary strong{color:var(--muted);font-size:11px;font-weight:700}.removal-template__body{background:#f7f5ef;border:1px solid #e1ddd2;border-radius:10px;grid-template-columns:1fr auto;align-items:end;gap:18px;margin-top:13px;padding:17px 18px;display:grid}.removal-template__body pre{color:#33434e;white-space:pre-wrap;margin:0;font-family:Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.75;overflow:auto}.removal-template__body button{background:var(--navy-900);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-size:12px;font-weight:800}.removal-template__body button:hover{background:var(--navy-800)}.content-heading{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:26px}.content-heading h2{color:var(--navy-900)}.content-heading p{color:var(--muted);max-width:850px}.feed-list{gap:16px;display:grid}.feed-card{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:flex-start;gap:18px;padding:24px;display:flex;box-shadow:0 7px 24px #0b24350a}.feed-card__body{flex:1;min-width:0}.feed-card__topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.feed-card__topline strong{color:var(--navy-900);font-size:16px}.feed-card__topline time{color:var(--muted);font-size:12px}.feed-card__aside{align-items:center;gap:12px;display:flex}.feed-status{text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.feed-status--active{color:var(--green);background:#e2f1e8;border-color:#b9ddc7}.feed-status--ended{color:#8d2929;background:#f7dfdc;border-color:#e9b9b2}.feed-card p{color:#47545d;white-space:pre-wrap;margin:12px 0 14px;font-size:15px;line-height:1.72}.feed-card__actions{gap:18px;display:flex}.feed-card__actions a{color:var(--blue-700);font-size:12px;font-weight:800;text-decoration:none}.feed-card__actions a:hover{text-decoration:underline}.empty-state{text-align:center;background:#ffffffa6;border:1px dashed #c8c3b6;border-radius:14px;flex-direction:column;align-items:center;padding:55px 20px;display:flex}.empty-state>span{color:var(--green);background:#dfeee4;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:12px;font-weight:900;display:flex}.empty-state strong{font-family:Georgia,serif;font-size:22px}.empty-state p{color:var(--muted);margin:7px 0 0;font-size:13px}.hierarchy-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;overflow:hidden}.hierarchy-panel__header{border-bottom:1px solid var(--line);background:linear-gradient(110deg,#f9f7f1,#f1ede3);grid-template-columns:72px 1fr auto;align-items:center;gap:20px;padding:27px 30px;display:grid}.hierarchy-panel__header img{object-fit:contain;width:68px;height:68px}.hierarchy-panel__header h3{color:var(--navy-900);margin:5px 0;font-family:Georgia,serif;font-size:30px;font-weight:500}.hierarchy-panel__header p{color:var(--muted);margin:0;font-size:14px}.hierarchy-panel__status{color:var(--green);text-transform:uppercase;background:#e2f1e8;border:1px solid #b9ddc7;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:800}.hierarchy-panel__entries{padding:0 30px}.hierarchy-entry{grid-template-columns:minmax(0,1fr);gap:14px;padding:29px 0;display:grid}.hierarchy-entry+.hierarchy-entry{border-top:1px solid var(--line)}.hierarchy-entry__content{color:#3e4d57;white-space:pre-wrap;margin:0;font-size:17px;line-height:2}.rank-mention{color:var(--navy-900);vertical-align:middle;white-space:nowrap;background:#f0ede4;border:1px solid #ddd6c5;border-radius:999px;align-items:center;gap:8px;margin:3px 4px;padding:4px 11px 4px 5px;font-weight:800;display:inline-flex}.rank-mention>img{object-fit:contain;border-radius:50%;width:30px;height:30px}.rank-mention__emoji,.rank-mention__fallback{background:var(--navy-900);border:1px solid var(--gold-500);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:inline-flex}.rank-mention__emoji{background:#fff;border-color:#d9d2c1;font-size:18px}.rank-token{vertical-align:middle;justify-content:center;align-items:center;width:34px;height:34px;margin:0 4px;display:inline-flex}.rank-token>img{object-fit:contain;width:32px;height:32px}.hierarchy-entry__actions{gap:18px;margin-top:3px;display:flex}.hierarchy-entry__actions a{color:var(--blue-700);font-size:13px;font-weight:800;text-decoration:none}.hierarchy-entry__actions a:hover{text-decoration:underline}.duties-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.duty-card{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.duty-card summary{cursor:pointer;grid-template-columns:46px 1fr auto;align-items:center;gap:15px;padding:22px;list-style:none;display:grid}.duty-card summary::-webkit-details-marker{display:none}.duty-card summary>span{color:var(--gold-600);font-family:Georgia,serif;font-size:22px}.duty-card summary strong{color:var(--navy-900);font-size:17px}.duty-card summary i{color:var(--gold-600);font-size:24px;font-style:normal;transition:transform .2s}.duty-card[open] summary i{transform:rotate(45deg)}.duty-card__content{border-top:1px solid var(--line);padding:24px 28px 30px 82px}.duty-card__content p{color:var(--muted);margin:0 0 20px;font-size:16px;line-height:1.8}.duty-card__content h4{color:var(--gold-600);margin:0 0 12px;font-family:Georgia,serif;font-size:18px}.duty-card__content ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.duty-card__content li{color:#46535c;padding-left:19px;font-size:16px;line-height:1.6;position:relative}.duty-card__content li:before{color:var(--gold-500);content:"›";font-weight:900;position:absolute;left:0}.movement-layout{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:24px;display:grid}.movement-form,.movement-preview{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:28px}.movement-toggle{background:var(--paper);border-radius:9px;grid-template-columns:1fr 1fr;margin-bottom:21px;padding:4px;display:grid}.movement-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:12px;font-size:13px;font-weight:800}.movement-toggle button.active{background:var(--navy-900);color:#fff;box-shadow:0 4px 12px #061b2b33}.movement-toggle button.active.danger{background:var(--red)}.form-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.form-grid label{flex-direction:column;gap:6px;display:flex}.form-grid label span{color:var(--navy-900);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:800}.form-grid input{border:1px solid var(--line);color:var(--ink);background:#fbfaf7;border-radius:8px;outline:none;width:100%;padding:13px 14px;font-size:15px}.form-grid input:focus{border-color:var(--gold-500);box-shadow:0 0 0 3px #d2a32c1f}.submit-button{background:var(--navy-900);color:#fff;cursor:pointer;border:0;border-radius:9px;width:100%;margin-top:22px;padding:15px 18px;font-size:14px;font-weight:800}.submit-button:hover{background:var(--navy-800)}.submit-button--danger{background:var(--red)}.submit-button:disabled{cursor:wait;opacity:.65}.form-message{border-radius:8px;margin:14px 0 0;padding:12px;font-size:13px}.form-message--error{color:#8a2929;background:#f8e3e0}.form-message--success{color:#1b6843;background:#e1f1e7}.form-message a{font-weight:800}.movement-preview{background:var(--navy-950);color:#fff;border-color:#d2a32c59}.movement-preview pre{color:#eaf0f3;white-space:pre-wrap;margin:24px 0;font-family:Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.9;overflow:auto}.movement-preview small{color:#7f9bad;text-transform:uppercase;font-size:11px}.error-banner{color:#792727;background:#fae7e4;border-bottom:1px solid #e8bbb5;align-items:center;gap:12px;padding:11px 38px;display:flex}.error-banner strong{font-size:13px}.error-banner span{flex:1;font-size:12px}.error-banner button{color:inherit;cursor:pointer;background:0 0;border:1px solid #c9776d;border-radius:6px;padding:6px 9px;font-size:11px;font-weight:800}.loading-list{gap:10px;display:grid}.loading-list span{background:linear-gradient(90deg,#e9e5dc,#f8f6f1,#e9e5dc) 0 0/200% 100%;border-radius:11px;height:100px;animation:1.5s ease-in-out infinite pulse}.loading-list span:nth-child(2){animation-delay:.12s}.loading-list span:nth-child(3){animation-delay:.24s}@keyframes pulse{50%{opacity:.5}}.backdrop{display:none}@media (width<=1180px){.warning-card{grid-template-columns:1fr 1fr 1.2fr}.warning-reason-block{grid-column:1/3}.discord-link{justify-self:end}.movement-layout,.promotion-layout{grid-template-columns:1fr}.promotion-recent-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.teaching-layout{grid-template-columns:1fr}.teaching-report-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.course-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.sidebar{transition:transform .22s;transform:translate(-105%);box-shadow:20px 0 60px #0000003d}.sidebar--open{transform:translate(0)}.backdrop{z-index:25;background:#04121c8f;border:0;display:block;position:fixed;inset:0}.main-area{margin-left:0}.menu-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:36px;height:36px;margin-right:12px;display:block}.topbar{padding:0 20px}.page-heading{margin-right:auto}.sync-copy{display:none}.content-area{padding:30px 24px 65px}.stat-grid{grid-template-columns:repeat(2,1fr)}.duties-grid,.hierarchy-entry{grid-template-columns:1fr}.hierarchy-entry__actions{grid-column:auto}}@media (width<=650px){.topbar{height:76px}.page-heading span{display:none}.page-heading h1{font-size:20px}.refresh-button{padding:8px;font-size:0}.refresh-button span{font-size:18px}.viewer-badge{display:none}.hero-panel{flex-direction:column;align-items:flex-start;gap:22px;padding:25px 22px}.deadline-key{width:100%;min-width:0}.stat-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:104px;padding:15px}.stat-card strong{font-size:28px}.promotion-period{flex-direction:column;align-items:flex-start;gap:8px}.promotion-recent-list{grid-template-columns:1fr}.promotion-card__header{flex-direction:column;align-items:flex-start;gap:6px;padding:20px}.teaching-filter{flex-direction:column;align-items:stretch}.teaching-filter__fields{grid-template-columns:1fr 1fr;align-items:stretch;display:grid}.teaching-filter__fields input{width:100%}.teaching-filter__fields button{grid-column:1/-1}.absence-copy-card header{flex-direction:column;align-items:stretch;gap:14px}.absence-copy-card button{width:100%}.absence-results-title{flex-direction:column;align-items:flex-start;gap:5px}.teaching-report-list{grid-template-columns:1fr}.teaching-card__header{flex-direction:column;align-items:flex-start;gap:6px;padding:20px}.course-category-grid{grid-template-columns:1fr}.warning-card{grid-template-columns:1fr;gap:13px}.warning-reason-block,.discord-link{grid-column:auto;justify-self:start}.removal-template__body{grid-template-columns:1fr;align-items:stretch}.removal-template__body button{width:100%}.section-title-row{flex-direction:column;align-items:flex-start;gap:9px}.feed-card{padding:14px}.feed-card__topline{flex-direction:column;align-items:flex-start;gap:3px}.feed-card__aside{justify-content:space-between;width:100%;margin-top:5px}.hierarchy-panel__header{grid-template-columns:52px 1fr;gap:14px;padding:21px 20px}.hierarchy-panel__header img{width:50px;height:50px}.hierarchy-panel__header h3{font-size:24px}.hierarchy-panel__status{grid-column:2;justify-self:start}.hierarchy-panel__entries{padding:0 20px}.hierarchy-entry{padding:23px 0}.form-grid{grid-template-columns:1fr}.movement-form,.movement-preview{padding:17px}.duty-card__content{padding-left:20px}.error-banner{flex-direction:column;align-items:flex-start;padding:11px 20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.loading-list span{animation:none}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
