@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap";:root{color:#17233a;font-synthesis:none;--navy:#071426;--navy-2:#0d213d;--blue:#2869f0;--cyan:#45d8e8;--muted:#68758b;--line:#dce5ef;--surface:#fff;--shadow:0 18px 50px #142a4e1c;background:#eef3f9;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand-lockup,.sidebar-brand{font-family:Sora,Manrope,sans-serif}.eyebrow{color:#65738b;letter-spacing:.14em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:800}.eyebrow.cyan{color:#4edfec}.muted{color:var(--muted)}.login-page{background:var(--navy);grid-template-columns:1.15fr .85fr;min-height:100vh;display:grid;position:relative;overflow:hidden}.login-brand,.login-panel{z-index:2;position:relative}.login-brand{color:#fff;background:radial-gradient(circle at 30% 65%,#256bee57,#0000 38%),linear-gradient(135deg,#071426,#0c2443);flex-direction:column;justify-content:space-between;padding:48px 7vw;display:flex}.brand-lockup,.sidebar-brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#5de5ed,#2869f0 65%,#8a5af5);border-radius:15px;place-items:center;width:46px;height:46px;font:800 15px Sora;display:grid;box-shadow:0 10px 28px #2d6fef59}.brand-lockup b,.sidebar-brand b{letter-spacing:.08em;font-size:15px;display:block}.brand-lockup small,.sidebar-brand small{color:#83dfe7;letter-spacing:.22em;margin-top:3px;font-size:8px;font-weight:800;display:block}.login-copy{max-width:700px;margin:80px 0}.login-copy h1{letter-spacing:-.055em;font-size:clamp(42px,5.2vw,76px);line-height:1.02}.login-copy h1 em{color:#58dfeb;font-style:normal}.login-copy>p:not(.eyebrow){color:#aebed2;max-width:600px;font-size:17px;line-height:1.75}.trust-row{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.trust-row span{color:#d7e4f2;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:99px;padding:10px 13px;font-size:11px;font-weight:700}.login-panel{background:#f4f7fb;place-items:center;padding:30px;display:grid}.login-card{background:#fffffff5;border:1px solid #e2e8f0;border-radius:30px;width:min(440px,100%);padding:44px;box-shadow:0 30px 80px #07142633}.login-icon{width:62px;height:62px;color:var(--blue);background:#eaf1ff;border-radius:20px;place-items:center;margin-bottom:25px;font-size:28px;display:grid}.login-card h2{margin-bottom:9px;font-size:30px}.login-card>.muted{margin-bottom:25px;font-size:13px;line-height:1.6}.login-button{width:100%;height:54px;margin-top:8px}.login-help{text-align:center;color:#8793a6;margin:20px 0 0;font-size:11px}.login-orb{filter:blur(6px);opacity:.5;border-radius:50%;position:absolute}.login-orb.one{background:#1f6df0;width:360px;height:360px;top:30%;left:-100px}.login-orb.two{background:#33d7df;width:260px;height:260px;bottom:-120px;left:45%}.form-field{gap:7px;margin-bottom:16px;display:grid}.form-field>span{color:#3e4a5e;font-size:12px;font-weight:800}.form-field input,.form-field textarea,.form-field select,.search-box input,.global-search input{color:#162139;background:#f9fbfd;border:1px solid #d9e2ed;border-radius:13px;outline:none;width:100%;transition:all .2s}.form-field input,.form-field select{height:47px;padding:0 14px}.form-field textarea{resize:vertical;padding:13px 14px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus,.search-box:focus-within,.global-search:focus-within{background:#fff;border-color:#5d8ff5;box-shadow:0 0 0 3px #2869f01c}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.button{border:0;border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:12px 17px;font-size:12px;font-weight:800;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button.primary{color:#fff;background:linear-gradient(135deg,#276bf1,#3154db);box-shadow:0 10px 22px #2869f03b}.button.ghost{border:1px solid var(--line);color:#26334a;background:#fff}.button.light{color:#15396f;background:#fff}.button.danger{color:#fff;background:#e33f4f}.button.wide{width:100%;min-height:49px}.alert{border-radius:12px;margin-bottom:16px;padding:12px 14px;font-size:12px}.alert.error{color:#a51e2b;background:#fff0f1;border:1px solid #ffd3d7}.admin-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{z-index:40;color:#fff;background:linear-gradient(#071426,#0a1d35);flex-direction:column;width:248px;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:12px 0 35px #0714261a}.sidebar-brand{border-bottom:1px solid #ffffff14;height:84px;padding:0 21px}.sidebar-brand .brand-mark{border-radius:13px;width:40px;height:40px}.sidebar-brand>button{color:#fff;background:0 0;border:0;margin-left:auto;font-size:23px;display:none}.sidebar nav{flex:1;padding:18px 10px;overflow:auto}.sidebar nav button{color:#8fa2b9;text-align:left;background:0 0;border:0;border-radius:12px;grid-template-columns:28px 1fr 12px;align-items:center;gap:9px;width:100%;padding:11px 12px;font-size:12px;font-weight:700;transition:all .18s;display:grid}.sidebar nav button>span{color:#6f88a6;font-size:17px}.sidebar nav button>b{opacity:0;font-size:18px}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#3670d42e}.sidebar nav button.active>span{color:var(--cyan)}.sidebar nav button.active>b{opacity:1}.sidebar-footer{border-top:1px solid #ffffff14;padding:14px}.admin-mini{align-items:center;gap:10px;padding:10px;display:flex}.admin-mini>span{color:#fff;background:#224a7d;border-radius:11px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.admin-mini b,.admin-mini small{text-overflow:ellipsis;max-width:145px;display:block;overflow:hidden}.admin-mini b{font-size:11px}.admin-mini small{color:#7990aa;margin-top:3px;font-size:8px}.logout{color:#899bb0;text-align:left;background:0 0;border:0;border-radius:10px;width:100%;padding:9px;font-size:10px;font-weight:700}.logout:hover{color:#fff;background:#ffffff0d}.main-area{grid-column:2;min-width:0}.topbar{z-index:30;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f7f9fce6;border-bottom:1px solid #dfe7f0;align-items:center;gap:22px;height:72px;padding:0 28px;display:flex;position:sticky;top:0}.menu-button{background:0 0;border:0;font-size:21px;display:none}.breadcrumb{white-space:nowrap;color:#8794a7;align-items:center;gap:8px;font-size:11px;display:flex}.breadcrumb strong{color:#243148}.global-search{background:#fff;border:1px solid #dde5ee;border-radius:13px;align-items:center;gap:8px;width:min(410px,45vw);margin-left:auto;padding:0 13px;display:flex;position:relative}.global-search input{background:0 0;border:0;height:40px;padding:0}.search-results{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:7px;position:absolute;top:48px;left:0;right:0}.search-results button{text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:9px;display:flex}.search-results button:hover{background:#f0f5fb}.search-results button>span{width:30px;height:30px;color:var(--blue);background:#eaf1ff;border-radius:9px;place-items:center;display:grid}.search-results b,.search-results small{display:block}.search-results b{font-size:11px}.search-results small{color:var(--muted);font-size:9px}.top-status,.security-chip{white-space:nowrap;color:#37634a;font-size:10px;font-weight:800}.top-status span,.security-chip{color:#22a763}.content-area{max-width:1700px;margin:0 auto;padding:30px}.app-loader{background:var(--navy);color:#c9d7e8;place-content:center;justify-items:center;gap:18px;min-height:100vh;display:grid}.app-loader .brand-mark{width:70px;height:70px}.spinner{border:3px solid #d7e3ef;border-top-color:var(--blue);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.welcome-head,.section-head{justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:25px;display:flex}.welcome-head h1,.section-head h1{letter-spacing:-.04em;margin-bottom:7px;font-size:clamp(25px,3vw,38px)}.welcome-head p,.section-head p{color:var(--muted);margin-bottom:0;font-size:13px}.head-actions{align-items:center;gap:9px;display:flex}.security-chip{background:#f2fff7;border:1px solid #cfe8db;border-radius:99px;padding:8px 11px}.icon-button{border:1px solid var(--line);color:#46556d;background:#fff;border-radius:12px;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.metric-card{background:#fff;border:1px solid #e1e8f1;border-radius:19px;align-items:center;gap:15px;padding:20px;display:flex;box-shadow:0 8px 28px #142a4e0f}.metric-glyph{width:44px;height:44px;color:var(--blue);background:#eaf2ff;border-radius:14px;place-items:center;font-size:20px;display:grid}.metric-card strong{font:800 25px Sora}.metric-card p{color:var(--muted);margin:4px 0 0;font-size:10px}.metric-card.cyan .metric-glyph{color:#079eac;background:#e5fbfc}.metric-card.violet .metric-glyph{color:#7a52dc;background:#f0ebff}.metric-card.amber .metric-glyph{color:#d28b00;background:#fff5df}.metric-card.red .metric-glyph{color:#df3f50;background:#ffebed}.metric-card.green .metric-glyph{color:#20a262;background:#e8f8ef}.overview-grid{grid-template-columns:1.25fr .75fr;gap:18px;margin-bottom:18px;display:grid}.spotlight-card{color:#fff;min-height:245px;box-shadow:var(--shadow);background:radial-gradient(circle at 80%,#49dbe83b,#0000 35%),linear-gradient(135deg,#0b213e,#123764);border-radius:23px;justify-content:space-between;padding:30px;display:flex;overflow:hidden}.spotlight-card>div{z-index:2;max-width:530px;position:relative}.spotlight-card h2{margin:13px 0;font-size:27px;line-height:1.15}.spotlight-card p{color:#a9bad0;font-size:12px;line-height:1.6}.spotlight-glyph{color:#50e1ec47;align-self:center;font-size:100px}.quick-card,.activity-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:22px;box-shadow:0 8px 28px #142a4e0f}.quick-card header,.activity-card header{justify-content:space-between;align-items:start;margin-bottom:15px;display:flex}.quick-card h3,.activity-card h3{margin:0;font-size:15px}.quick-card header span,.activity-card header p{color:var(--muted);margin:3px 0 0;font-size:9px}.quick-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.quick-grid button{text-align:left;background:#f9fbfd;border:1px solid #e6ecf3;border-radius:12px;grid-template-columns:30px 1fr 10px;align-items:center;gap:7px;padding:11px;font-size:9px;font-weight:800;display:grid}.quick-grid button>span{width:28px;height:28px;color:var(--blue);background:#eaf1ff;border-radius:8px;place-items:center;font-size:14px;display:grid}.lower{grid-template-columns:1fr 1fr}.activity-card header button{color:var(--blue);background:0 0;border:0;font-size:10px;font-weight:800}.activity-list{margin:0;padding:0;list-style:none}.activity-list li{border-top:1px solid #edf1f6;align-items:center;gap:11px;padding:10px 0;display:flex}.activity-list li>span{width:32px;height:32px;color:var(--blue);background:#edf3fc;border-radius:10px;place-items:center;font-weight:800;display:grid}.activity-list b,.activity-list small{display:block}.activity-list b{font-size:10px}.activity-list small{color:var(--muted);margin-top:3px;font-size:8px}.live-dot{background:#ffedf0;border-radius:6px;padding:5px 7px;font-weight:900;color:#d93649!important;font-size:8px!important}.empty-mini{text-align:center;color:#8794a6;padding:28px;font-size:11px}.empty-mini.positive{color:#298c58}.directory-hero{color:#fff;box-shadow:var(--shadow);background:linear-gradient(135deg,#0b213e,#174f89);border-radius:23px;align-items:center;gap:20px;padding:29px;display:flex}.directory-hero>span{width:70px;height:70px;color:var(--cyan);background:#50e0ea26;border-radius:21px;place-items:center;font-size:31px;display:grid}.directory-hero h1{margin:0 0 6px;font-size:31px}.directory-hero p:last-child{color:#aec0d4;margin:0;font-size:12px}.resource-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px;display:grid}.resource-grid>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:18px;grid-template-columns:45px 1fr 20px;align-items:center;gap:14px;padding:20px;transition:all .2s;display:grid}.resource-grid>button:hover{box-shadow:var(--shadow);border-color:#95b5f8;transform:translateY(-2px)}.resource-grid>button>span{width:43px;height:43px;color:var(--blue);background:#eaf1ff;border-radius:13px;place-items:center;font-size:18px;display:grid}.resource-grid h3{margin:0 0 5px;font-size:13px}.resource-grid p{color:var(--muted);margin:0;font-size:9px}.resource-grid>button>b{color:var(--blue)}.table-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:15px 0;display:flex}.search-box{border:1px solid var(--line);background:#fff;border-radius:13px;align-items:center;gap:8px;width:min(440px,100%);height:42px;padding:0 13px;display:flex}.search-box input{background:0 0;border:0;height:39px;padding:0}.data-card{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #142a4e0f}.table-scroll{overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%}th{color:#728097;letter-spacing:.05em;text-align:left;text-transform:uppercase;background:#f8fafc;border-bottom:1px solid #e7edf4;padding:12px 16px;font-size:9px}td{color:#354158;text-overflow:ellipsis;border-bottom:1px solid #eef2f6;max-width:270px;padding:13px 16px;font-size:10px;overflow:hidden}.cell-value{text-overflow:ellipsis;display:block;overflow:hidden}.status{color:#617087;text-transform:capitalize;background:#edf1f6;border-radius:99px;padding:5px 8px;font-size:8px;font-weight:900;display:inline-flex}.status.active,.status.admin,.status.published,.status.approved{color:#1c8f51;background:#e5f8ed}.status.pending,.status.lecturer{color:#bd7b00;background:#fff4dc}.status.suspended,.status.rejected,.status.deleted{color:#ce3043;background:#ffe9ec}.status.student{color:#2869f0;background:#e9f1ff}.row-actions{gap:9px;display:flex}.row-actions button{color:#356bd4;background:0 0;border:0;font-size:9px;font-weight:800}.row-actions .delete-link{color:#d3394a}.pagination{color:var(--muted);justify-content:space-between;align-items:center;padding:12px 16px;font-size:9px;display:flex}.pagination div{gap:6px;display:flex}.pagination button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;font-size:9px}.loading-state,.empty-state{min-height:330px;color:var(--muted);place-content:center;justify-items:center;gap:12px;font-size:11px;display:grid}.empty-state>span{color:#aac0df;font-size:40px}.empty-state h3,.empty-state p{margin:0}.people-summary{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.people-summary>div{border:1px solid var(--line);background:#fff;border-radius:16px;padding:17px}.people-summary strong,.people-summary span{display:block}.people-summary strong{font:800 23px Sora}.people-summary span{color:var(--muted);margin-top:5px;font-size:9px}.person-cell{align-items:center;gap:9px;display:flex}.person-cell>span{color:#225ccf;background:linear-gradient(135deg,#dff9fa,#e4edff);border-radius:10px;place-items:center;width:31px;height:31px;font-weight:900;display:grid}.person-cell b,.person-cell small{display:block}.person-cell b{font-size:10px}.person-cell small{color:var(--muted);margin-top:2px;font-size:8px}.drawer-backdrop,.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050f1d85;position:fixed;inset:0}.record-drawer{background:#fff;flex-direction:column;width:min(560px,100%);animation:.25s ease-out slide-in;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-25px 0 65px #050f1d3d}@keyframes slide-in{0%{opacity:0;transform:translate(40px)}}.record-drawer>header,.record-drawer>footer{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 23px;display:flex}.record-drawer>header h2{margin:0;font-size:21px}.record-drawer>footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end;gap:9px}.drawer-body{flex:1;padding:22px;overflow:auto}.raw-record{border:1px solid var(--line);background:#f7f9fc;border-radius:13px;margin-bottom:20px}.raw-record summary{cursor:pointer;padding:11px 13px;font-size:10px;font-weight:800}.raw-record pre{border-top:1px solid var(--line);max-height:260px;margin:0;padding:12px;font-size:9px;overflow:auto}.toggle-field{border-bottom:1px solid #edf1f5;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.toggle-field b,.toggle-field small{display:block}.toggle-field b{font-size:11px}.toggle-field small{color:var(--muted);margin-top:3px;font-size:9px}.toggle-field input{width:38px;height:20px}.modal-backdrop{place-items:center;padding:20px;display:grid}.dialog{text-align:center;background:#fff;border-radius:22px;width:min(420px,100%);padding:27px;box-shadow:0 35px 90px #050f1d4d}.dialog-icon{width:50px;height:50px;color:var(--blue);background:#e9f4ff;border-radius:16px;place-items:center;margin:0 auto 17px;font-weight:900;display:grid}.dialog-icon.danger{color:#d53144;background:#ffebed}.dialog h2{font-size:20px}.dialog p{color:var(--muted);font-size:11px;line-height:1.6}.dialog-actions{justify-content:center;gap:9px;margin-top:20px;display:flex}.communication-grid{grid-template-columns:1fr .85fr;gap:18px;display:grid}.compose-card,.takeover-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:23px;overflow:hidden}.compose-card{padding:25px}.compose-head{gap:14px;margin-bottom:22px;display:flex}.compose-head>span{width:46px;height:46px;color:var(--blue);background:#e8f0ff;border-radius:14px;place-items:center;font-size:21px;display:grid}.compose-head h2{margin:2px 0 5px;font-size:18px}.compose-head p{color:var(--muted);margin:0;font-size:10px}.preview-notification{background:#f7fafe;border:1px solid #dce5f0;border-radius:14px;grid-template-columns:36px 1fr auto;align-items:start;gap:10px;margin:20px 0;padding:13px;display:grid}.preview-notification>span{color:#fff;background:linear-gradient(135deg,#43dce7,#2869f0);border-radius:10px;place-items:center;width:34px;height:34px;font-size:9px;font-weight:900;display:grid}.preview-notification b,.preview-notification p{display:block}.preview-notification b{font-size:10px}.preview-notification p{color:var(--muted);margin:3px 0 0;font-size:9px;line-height:1.4}.preview-notification small{color:#91a0b4;font-size:8px}.takeover-card{flex-direction:column;display:flex}.takeover-visual{color:#fff;background:radial-gradient(circle at 75% 25%,#3edae53b,#0000 30%),linear-gradient(145deg,#071426,#123963);min-height:270px;padding:34px}.takeover-visual>span{letter-spacing:.17em;color:var(--cyan);font-size:9px;font-weight:900}.takeover-visual>b{margin:42px 0 13px;font:800 25px/1.2 Sora;display:block}.takeover-visual p{color:#adc0d5;font-size:11px;line-height:1.6}.takeover-actions{padding:25px}.takeover-actions h3{font-size:15px}.takeover-actions ul{margin:17px 0;padding:0;list-style:none}.takeover-actions li{border-top:1px solid #edf1f5;align-items:center;gap:11px;padding:10px 0;display:flex}.takeover-actions li>span{background:#eef4fc;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.takeover-actions b,.takeover-actions small{display:block}.takeover-actions b{font-size:10px}.takeover-actions small{color:var(--muted);margin-top:3px;font-size:8px}.takeover-actions .button.light{background:var(--navy);color:#fff}.toast{z-index:150;max-width:390px;box-shadow:var(--shadow);background:#f4fff8;border:1px solid #cde9da;border-radius:14px;align-items:center;gap:10px;padding:13px;display:flex;position:fixed;bottom:22px;right:22px}.toast>span{color:#1a9a58;background:#dff6e9;border-radius:9px;place-items:center;width:28px;height:28px;display:grid}.toast p{margin:0;font-size:10px;font-weight:700}.toast button{color:#708096;background:0 0;border:0}.toast.error{background:#fff5f6;border-color:#f5cbd0}.toast.error>span{color:#d33245;background:#ffe1e5}@media (max-width:1100px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.overview-grid,.communication-grid{grid-template-columns:1fr}.resource-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.admin-shell{display:block}.sidebar{transition:all .25s;transform:translate(-102%)}.sidebar.open{transform:translate(0)}.sidebar-brand>button{display:block}.sidebar-scrim{z-index:35;background:#050f1d73;border:0;position:fixed;inset:0}.main-area{grid-column:auto}.menu-button{display:block}.topbar{gap:11px;padding:0 14px}.breadcrumb,.top-status{display:none}.global-search{flex:1;width:auto}.content-area{padding:20px 14px}.welcome-head,.section-head{flex-direction:column;align-items:flex-start}.metrics-grid,.people-summary{grid-template-columns:1fr 1fr}.lower,.resource-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr}.login-brand{min-height:380px;padding:28px}.login-copy{margin:55px 0 15px}.login-copy h1{font-size:43px}.login-panel{padding:20px}.login-card{padding:28px}.form-row{grid-template-columns:1fr}.table-toolbar{flex-direction:column;align-items:stretch}.security-chip{align-self:flex-start}.spotlight-card{padding:24px}.spotlight-glyph{display:none}}@media (max-width:450px){.metrics-grid,.people-summary,.quick-grid{grid-template-columns:1fr}.metric-card{padding:16px}.content-area{padding:16px 10px}.login-copy h1{font-size:36px}.trust-row span{font-size:9px}.resource-grid>button{padding:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.form-field small{color:var(--muted);margin-top:-2px;font-size:9px}.choice-field{background:#f9fbfd;border:1px solid #e1e8f1;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:14px 15px;display:flex}.choice-field span,.choice-field b,.choice-field small{display:block}.choice-field b{font-size:11px}.choice-field small{color:var(--muted);margin-top:4px;font-size:9px}.choice-field select{color:#17233a;background:#fff;border:1px solid #d8e2ed;border-radius:11px;min-width:190px;height:42px;padding:0 12px;font-weight:700}.upload-field{cursor:pointer;background:linear-gradient(135deg,#f5f9ff,#f2fcfd);border:1px dashed #8baef3;border-radius:16px;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;margin:16px 0;padding:15px;display:grid;position:relative}.upload-field input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-icon{width:42px;height:42px;color:var(--blue);background:#dfeaff;border-radius:13px;place-items:center;font-size:21px;font-weight:800;display:grid}.upload-field b,.upload-field small{display:block}.upload-field b{font-size:11px}.upload-field small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.4}.upload-field em{color:var(--blue);font-size:9px;font-style:normal;font-weight:900}.readable-record{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.readable-record>div{background:#f9fbfd;border:1px solid #e3eaf2;border-radius:13px;min-width:0;padding:13px}.readable-record dt{color:#77859a;letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:8px;font-weight:900}.readable-record dd{color:#26344b;overflow-wrap:anywhere;margin:0;font-size:11px;line-height:1.5}.table-thumb{object-fit:cover;border-radius:11px;width:42px;height:42px}.status.inactive,.status.archived,.status.cancelled,.status.withdrawn{color:#69768a;background:#edf1f6}.status.open,.status.reviewing,.status.live,.status.scheduled{color:#2869f0;background:#e9f1ff}.status.resolved,.status.content_removed,.status.completed,.status.graded,.status.accepted{color:#18884b;background:#e4f8ec}.access-explainer{background:#f3f8ff;border:1px solid #cfe0fa;border-radius:16px;align-items:center;gap:13px;margin:15px 0;padding:15px;display:flex}.access-explainer>span{height:38px;color:var(--blue);background:#dce9ff;border-radius:12px;flex:0 0 38px;place-items:center;font-size:18px;display:grid}.access-explainer b{font-size:11px;display:block}.access-explainer p{color:var(--muted);margin:4px 0 0;font-size:9px;line-height:1.5}.person-cell>img{object-fit:cover;border-radius:11px;width:34px;height:34px}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.report-card{border:1px solid var(--line);background:#fff;border-radius:21px;overflow:hidden;box-shadow:0 10px 30px #142a4e12}.report-card>header,.report-card>footer{justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.report-card>header{border-bottom:1px solid #edf1f6}.report-card>footer{border-top:1px solid #edf1f6}.report-type{align-items:center;gap:10px;display:flex}.report-type>span{color:#d42f43;background:#ffe9ec;border-radius:11px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.report-type b,.report-type small{display:block}.report-type b{font-size:11px}.report-type small{color:var(--muted);margin-top:3px;font-size:8px}.report-people{background:#f8fafc;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:15px 18px;display:grid}.report-people>span{color:#91a0b4}.report-person{align-items:center;gap:9px;min-width:0;display:flex}.report-person>img,.report-person>span{object-fit:cover;border-radius:11px;flex:0 0 35px;width:35px;height:35px}.report-person>span{color:#2869f0;background:#e5eefc;place-items:center;font-weight:900;display:grid}.report-person small,.report-person b,.report-person em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.report-person small{color:var(--muted);text-transform:uppercase;font-size:7px}.report-person b{font-size:10px}.report-person em{color:#7a879b;margin-top:2px;font-size:7px;font-style:normal}.reported-content{gap:13px;padding:17px 18px;display:flex}.reported-content>img{object-fit:cover;border-radius:13px;flex:0 0 92px;width:92px;height:78px}.reported-content small{color:var(--muted);font-size:8px}.reported-content p{color:#28354c;white-space:pre-line;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:7px 0 0;font-size:11px;line-height:1.55;display:-webkit-box;overflow:hidden}.report-reason{background:#fff5f6;border-left:3px solid #ef4b5d;border-radius:0 11px 11px 0;margin:0 18px 17px;padding:13px}.report-reason span,.report-reason b{display:block}.report-reason span{color:#9b6370;text-transform:uppercase;font-size:7px;font-weight:900}.report-reason b{margin-top:4px;font-size:10px}.report-reason p{color:#7d5961;margin:5px 0 0;font-size:9px;line-height:1.5}.report-card>footer .button{flex:1}.report-empty{border:1px solid var(--line);background:#fff;border-radius:20px}.notice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.notice-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:18px;box-shadow:0 8px 25px #142a4e0f}.notice-card.live{border-color:#9fc0fa;box-shadow:0 10px 32px #2869f01f}.notice-card-top{grid-template-columns:42px 1fr auto;align-items:start;gap:10px;display:grid}.notice-symbol{background:#eaf1ff;border-radius:13px;place-items:center;width:40px;height:40px;display:grid}.notice-card-top small{color:var(--blue);text-transform:uppercase;font-size:7px;font-weight:900;display:block}.notice-card h3{margin:4px 0 0;font-size:13px}.notice-card>p{min-height:52px;color:var(--muted);margin:15px 0;font-size:9px;line-height:1.55}.notice-card dl{margin:0 0 14px}.notice-card dl>div{border-top:1px solid #edf1f5;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.notice-card dt{color:var(--muted);font-size:8px}.notice-card dd{text-align:right;margin:0;font-size:8px;font-weight:800}.segmented-field{margin-bottom:17px}.segmented-field>span{color:#3e4a5e;margin-bottom:8px;font-size:12px;font-weight:800;display:block}.segmented-field>div{grid-template-columns:1fr 1fr;gap:7px;display:grid}.segmented-field button{color:#536177;background:#f8fafc;border:1px solid #dbe4ee;border-radius:12px;min-height:45px;padding:9px;font-size:9px;font-weight:800}.segmented-field button.selected{color:#215acb;background:#eaf1ff;border-color:#5b8cf0;box-shadow:0 0 0 2px #2869f014}.segmented-field button.danger-choice.selected{color:#c82d3f;background:#ffebed;border-color:#ed7b88}.notice-preview{color:#fff;text-align:center;background:linear-gradient(135deg,#0c2442,#174c82);border-radius:18px;margin-top:20px;padding:22px}.notice-preview.blocking{background:linear-gradient(135deg,#26101a,#7d2634)}.notice-preview small,.notice-preview b{display:block}.notice-preview small{color:#63dfe9;letter-spacing:.14em;font-size:7px;font-weight:900}.notice-preview b{margin:11px 0 7px;font:800 16px Sora}.notice-preview p{color:#c4d1df;margin:0;font-size:9px;line-height:1.55}.admin-access-grid{grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:17px;display:grid}.admin-roster{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;box-shadow:0 8px 28px #142a4e0f}.admin-roster>header{justify-content:space-between;align-items:start;margin-bottom:12px;display:flex}.admin-roster h2{margin:0;font-size:16px}.admin-roster header p{color:var(--muted);margin:4px 0 0;font-size:9px}.admin-account{border-top:1px solid #edf1f5;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:12px 0;display:grid}.admin-account>img,.admin-account>span{object-fit:cover;border-radius:12px;width:37px;height:37px}.admin-account>span{color:var(--blue);background:#e7efff;place-items:center;font-weight:900;display:grid}.admin-account b,.admin-account small{display:block}.admin-account b{font-size:10px}.admin-account small{color:var(--muted);margin-top:3px;font-size:8px}.admin-account em{font-style:normal}.security-note{color:#fff;background:linear-gradient(145deg,#0a1d35,#12416f)}.security-note>span{width:48px;height:48px;color:var(--cyan);background:#4bdeea24;border-radius:15px;place-items:center;font-size:24px;display:grid}.security-note h2{margin:24px 0 9px}.security-note p{color:#abc0d6;margin:0;font-size:10px;line-height:1.7}.subsection-head{border-bottom:1px solid var(--line);padding:18px}.subsection-head h2{margin:0;font-size:15px}.subsection-head p{color:var(--muted);margin:4px 0 0;font-size:8px}.device-cell{white-space:normal;line-height:1.4}@media (max-width:1100px){.report-grid,.notice-grid{grid-template-columns:1fr 1fr}.admin-access-grid{grid-template-columns:1fr}}@media (max-width:760px){.report-grid,.notice-grid{grid-template-columns:1fr}.choice-field{flex-direction:column;align-items:stretch}.choice-field select{width:100%}.readable-record{grid-template-columns:1fr}.report-card>footer{flex-direction:column;align-items:stretch}.report-card>footer .button{width:100%}.notice-card-top{grid-template-columns:42px 1fr}.notice-card-top>.status{grid-column:2}.segmented-field>div{grid-template-columns:1fr}}
