/* Shared legacy design: synchronized between Cloudflare Pages and Apps Script.
 * New layout rules belong in src/future-2060.css, not in generated assets.
 * Global scrollbars are no longer hidden. 
 */
:root{--v54-navy:#10283c;--v54-blue:#17435a;--v54-mint:#24bda9;--v54-gold:#edbc73;--v54-ring:#36b7b1;--v54-surface:#ffffff;--v54-page:#f5f8fa;--v54-stroke:#e3eaf0;--v54-shadow:0 22px 60px rgba(25,54,78,.075)}
html{scroll-padding-top:130px}
body.v52{--bg:var(--v54-page);--panel:var(--v54-surface);--panel2:#f7fafb;--ink:#152f42;--muted:#617587;--border:var(--v54-stroke);--primary:#087e87;--secondary:#13a99b;--soft:#e7f6f3;--v52-card:var(--v54-surface);--v52-ink:#152f42;--v52-muted:#617587;--v52-border:var(--v54-stroke);--v52-brand:#087e87;--v52-soft:#e7f6f3;background:radial-gradient(ellipse at 3% 4%,#d8f4eb80,transparent 32%),radial-gradient(ellipse at 98% 60%,#e8eefb88,transparent 35%),var(--bg);font-size:13px;line-height:1.85;text-rendering:optimizeLegibility}
body.v52.dark{--bg:#0a1926;--panel:#122638;--panel2:#182f42;--ink:#e8f5fa;--muted:#abc0ca;--border:#284251;--primary:#72dfcb;--secondary:#60cad0;--soft:#1b4549;--v52-card:#122638;--v52-ink:#e8f5fa;--v52-muted:#abc0ca;--v52-border:#284251;--v52-brand:#72dfcb;--v52-soft:#1b4549;--v54-page:#0a1926;--v54-surface:#122638;--v54-stroke:#284251;--v54-shadow:0 20px 60px #0004}
body.v52 .layout{background:transparent}
body.v52 .topbar{background:color-mix(in srgb,var(--panel) 93%,transparent);border-bottom:1px solid var(--border);min-height:76px;backdrop-filter:blur(22px);box-shadow:0 2px 25px #12384a06;padding-inline:clamp(16px,3vw,52px)}
body.v52 .portal-header-mark{background:linear-gradient(143deg,#0e6571,#08a69e);color:white;border:1px solid #ffffff27;box-shadow:0 7px 22px #109c9a36;width:48px;height:48px;border-radius:15px}
body.v52 .portal-header-copy strong{font-size:15px;line-height:1.75;color:var(--ink);font-weight:900}
body.v52 .portal-header-copy small{font:700 9px/1.5 Manrope,Arial,sans-serif;color:var(--muted);letter-spacing:.13em}
body.v52 .topnav{padding:8px clamp(14px,3vw,52px);background:color-mix(in srgb,var(--panel) 98%,transparent);border-bottom:1px solid var(--border);min-height:59px;box-shadow:0 10px 24px #0c2f4109}
body.v52 .topnav .nav,body.v52 .v52-menubutton{font-size:12px;min-height:39px;border-radius:10px;padding:9px 14px;color:var(--muted);transition:background .17s,color .17s}
body.v52 .topnav .nav.active,body.v52 .v52-drop[open]>summary,body.v52 .topnav .nav:hover,body.v52 .v52-menubutton:hover{color:var(--primary);background:var(--soft)}
body.v52 .v52-megamenu{min-width:340px;max-width:min(620px,95vw);background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:0 28px 75px #0e2b3e32;padding:13px;gap:7px;animation:v54-drop .17s ease both}
@keyframes v54-drop{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
body.v52 .v52-megamenu button{font-size:12px;min-height:48px;padding:11px;border-radius:11px;white-space:normal}
body.v52 .v52-megamenu button .v51-i{color:var(--primary)}
body.v52 .v52-actions-menu{background:var(--panel);border-color:var(--border);border-radius:17px}
body.v52 .v51-tool{border-radius:12px;min-width:40px;min-height:40px}
body.v52 .v51-tool:hover{background:var(--soft);border-color:var(--primary)}
body.v52 .main{max-width:1500px;padding:clamp(18px,2.6vw,42px) clamp(16px,3vw,48px) 75px}
body.v52 .btn{border-radius:11px;font-weight:750;font-size:12px;transition:transform .17s,background .17s,box-shadow .17s}
body.v52 .btn.primary,body.v52 .v52-owner-tabs button.active{background:linear-gradient(120deg,#077c89,#0ba68f);color:#fff;box-shadow:0 6px 18px #038d9226}
body.v52 .btn.primary:hover{background:linear-gradient(120deg,#096774,#068c7d);transform:translateY(-1px)}
body.v52 .surface,body.v52 .v52-pane,body.v52 .v52-tile,body.v52 .metric,body.v52 .item{background:var(--panel);border:1px solid var(--border);border-radius:19px;box-shadow:var(--v54-shadow)}
body.v52 .v52-home-hero{min-height:460px;background:radial-gradient(circle at 11% 12%,#2ba6a44c,transparent 33%),radial-gradient(circle at 78% 95%,#588aaa3d,transparent 33%),linear-gradient(112deg,#0c253c 2%,#123b50 54%,#0c6c70 100%);border:1px solid #ffffff1f;box-shadow:0 24px 55px #0a354333;border-radius:27px;position:relative;isolation:isolate}
body.v52 .v52-home-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,#000)}
body.v52 .v52-home-hero:after{content:"";position:absolute;inset-inline-end:-110px;bottom:-215px;width:520px;height:520px;border-radius:50%;border:1px solid #ffffff16;box-shadow:0 0 0 64px #ffffff08,0 0 0 125px #ffffff04;z-index:-1}
body.v52 .v52-home-hero h1{font-size:clamp(29px,3.2vw,48px);font-weight:900;letter-spacing:-.4px;line-height:1.8;max-width:680px}
body.v52 .v52-home-hero p{font-size:13px;line-height:2.15;color:#d6edf0;max-width:580px}
body.v52 .v52-eyebrow{color:#96eddb;font:800 10px/1.7 Manrope,"Noto Kufi Arabic",sans-serif;letter-spacing:.16em}
body.v52 .v52-home-search{border:1px solid #ffffffa8;border-radius:15px;box-shadow:0 14px 36px #061d2e4d;color:#436170;min-height:63px;background:white;font-size:12px;padding-inline:20px}
body.v52 .v52-home-search:focus-visible{outline:3px solid #b2fff1;outline-offset:4px}
body.v52 .v52-book-emblem{border-radius:52px;background:linear-gradient(150deg,#ffffff24,#53cab520);color:#e4fff9;box-shadow:0 30px 90px #0318297a}
body.v52 .v52-orbit{border-color:#aaf9eb4d}
body.v52 .v52-floating-label{border:1px solid #ffffffae;border-radius:12px;color:#23465b}
body.v52 .v52-metric-row{gap:15px;margin:24px 0 34px}
body.v52 .v52-metric-row>div{padding:19px;border:1px solid var(--border);background:var(--panel);border-radius:17px;box-shadow:0 10px 25px #0e34450a}
body.v52 .v52-metric-row strong{font:850 clamp(22px,2vw,30px)/1.5 Manrope,"Noto Kufi Arabic",sans-serif;color:var(--ink)}
body.v52 .v52-metric-row small{font-size:10px;color:var(--muted)}
body.v52 .v52-metric-icon{color:#0b8d8e;background:var(--soft);border-radius:12px}
body.v52 .v52-section-title{margin:38px 0 18px}
body.v52 .v52-section-title h2{font-size:20px;font-weight:900;letter-spacing:0}
body.v52 .v52-cardgrid{gap:17px}
body.v52 .v52-tile{padding:23px;border-radius:18px;box-shadow:0 12px 28px #1b43500d;transition:transform .19s,box-shadow .19s,border-color .19s}
body.v52 .v52-tile:hover{transform:translateY(-4px);box-shadow:0 21px 48px #1a44531d;border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}
body.v52 .v52-tile h3{font-size:15px;font-weight:850;line-height:1.8}
body.v52 .v52-tile p{font-size:12px;color:var(--muted)}
body.v52 .v52-tile .v52-tile-ico{width:56px;height:56px;background:var(--soft);color:var(--primary);border-radius:16px}
body.v52 .v52-tile .v52-tile-ico svg{width:27px;height:27px}
body.v52 .v52-story-cover{height:156px;background:linear-gradient(132deg,#dff6f2,#d7e8f5);color:#087c83}
body.v52.dark .v52-story-cover{background:linear-gradient(132deg,#184451,#254e60)}
body.v52 .v52-tags span{color:var(--muted);background:var(--panel2);border-color:var(--border);border-radius:8px}
body.v52 .v52-home-shortcuts{gap:13px}
body.v52 .v52-home-shortcuts button{background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:20px;min-height:78px;color:var(--ink);font-size:12px;box-shadow:0 7px 24px #143e5008;transition:transform .16s,border-color .16s,background .16s}
body.v52 .v52-home-shortcuts button:hover{transform:translateY(-2px);background:var(--soft);border-color:var(--primary)}
body.v52 .v52-home-shortcuts button .v51-i{color:var(--primary);width:23px;height:23px}
body.v52 .v52-community-cta{background:linear-gradient(110deg,#0e3145,#145961);border:1px solid #ffffff22;border-radius:19px;color:#fff;padding:34px}
body.v52 .v52-community-cta h2,body.v52 .v52-community-cta p{color:#e6f3f4}
body.v52 .v52-community-cta .btn{background:#e4fff7;color:#0c5f5d}
body.v52 .v52-hero{background:radial-gradient(circle at 78% 12%,#41bdb748,transparent 39%),linear-gradient(110deg,#112c42,#11646b);box-shadow:0 16px 43px #0d395227;border-radius:22px}
body.v52 .v52-hero .v52-eyebrow{color:#b2fae5}
body.v52 .v52-hero p{color:#d8f0ed}
body.v52 .v52-team-tree .v52-person{border:1px solid var(--border);border-radius:17px;box-shadow:0 9px 28px #183b4e11}
body.v52 .v52-avatar{background:var(--soft);color:var(--primary)}
body.v52 .v52-owner-tabs{background:var(--panel2);border:1px solid var(--border);border-radius:14px;padding:7px}
body.v52 .v52-owner-tabs button{border-radius:9px;font-size:11px;font-weight:800;min-height:37px}
body.v52 .footer{color:var(--muted);border-top:1px solid var(--border);background:var(--panel)}
body.v52 :is(button,a,summary,input,select,textarea):focus-visible{outline:3px solid var(--v54-ring);outline-offset:3px}
body.v52 .v54-neterror{display:grid;place-items:center;gap:12px;text-align:center;max-width:740px;margin:28px auto;padding:clamp(24px,5vw,60px);background:var(--panel);border:1px solid var(--border);box-shadow:var(--v54-shadow);border-radius:22px}
body.v52 .v54-neterror-icon{width:66px;height:66px;display:grid;place-items:center;color:var(--primary);border-radius:18px;background:var(--soft)}
body.v52 .v54-neterror h2{font-size:22px;margin:0}
body.v52 .v54-neterror p{color:var(--muted);font-size:13px;margin:0;line-height:2}
body.v52 .v54-neterror .v54-error-detail{max-width:100%;overflow-wrap:anywhere;font-size:11px}
body.v52 .v54-skip{position:fixed;z-index:999;top:-100px;inset-inline-start:12px;background:var(--panel);padding:10px 20px;border-radius:12px}.v54-skip:focus{top:10px}
body.v52 .v54-route-status{position:fixed;inset-inline-end:14px;bottom:95px;z-index:100;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:7px 11px;color:var(--muted);font-size:11px;box-shadow:0 10px 28px #0b2f3d15}
body.v52 .v54-route-status[hidden]{display:none}
/* Keep scrollbars on scrollable descendants visible for wheel and keyboard users. */
@media(max-width:1000px){body.v52 .v52-home-hero{min-height:380px}body.v52 .v52-metric-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){body.v52 .main{padding:15px 15px 105px}body.v52 .topbar{min-height:64px;padding-inline:13px}body.v52 .portal-header-mark{width:40px;height:40px}body.v52 .portal-header-copy strong{font-size:12px}body.v52 .v52-home-hero{min-height:0;padding:30px 22px;border-radius:20px}body.v52 .v52-home-hero h1{font-size:clamp(24px,5.6vw,31px)}body.v52 .v52-home-hero p{font-size:12px}body.v52 .v52-home-search{min-height:54px;padding:10px 12px}body.v52 .v52-cardgrid{grid-template-columns:1fr}body.v52 .v52-metric-row{gap:10px}body.v52 .v52-metric-row>div{padding:14px}body.v52 .v52-section-title h2{font-size:17px}body.v52 .campus-mobile-dock{border-radius:17px;bottom:calc(env(safe-area-inset-bottom) + 7px);box-shadow:0 8px 32px #143d4b33}body.v52 .v52-home-shortcuts button{min-height:63px;padding:12px;font-size:10px}body.v52 .v52-community-cta{padding:24px}body.v52 .v52-tile{padding:19px}}
@media(prefers-reduced-motion:reduce){body.v52 .v52-tile,body.v52 .v52-home-shortcuts button{transition:none!important;animation:none!important}}
@media print{body.v52{background:white!important;color:#111!important}body.v52 .v52-tile,body.v52 .v52-pane{box-shadow:none!important;break-inside:avoid}body.v52 .topbar,body.v52 .topnav,body.v52 .campus-mobile-dock,body.v52 .v52-actions-menu{display:none!important}}
:root{--bg:#f5f8fb;--panel:#fff;--panel2:#f8fafc;--ink:#172b3f;--muted:#64758a;--border:#e3eaf1;--primary:#126e8e;--secondary:#18aa97;--soft:#e6f5f5;--nav:#102438;--nav2:#143951;--shadow:0 16px 50px rgba(19,48,77,.055);--v100-radius:20px}
body.dark{--bg:#0c1421;--panel:#172337;--panel2:#202f42;--ink:#e9f4fa;--muted:#acbdcd;--border:#2d4458;--primary:#74d7e6;--secondary:#60dac4;--soft:#203f4b;--shadow:0 16px 55px rgba(0,0,0,.16)}
body.v52{background:radial-gradient(ellipse at 78% 0%,#20a7bd0d,transparent 42%),var(--bg);font-family:"Noto Kufi Arabic",sans-serif;line-height:1.85}
body.v52 .topbar{background:color-mix(in srgb,var(--panel) 96%,transparent);border-bottom:1px solid var(--border);box-shadow:none}
body.v52 .topnav{background:var(--panel);border-bottom:1px solid var(--border);box-shadow:0 8px 25px #183c5009;overflow:visible!important;gap:6px;display:flex;align-items:center;flex-wrap:wrap;}
body.v52 .topnav .nav,body.v52 .v52-menubutton{border-radius:12px;min-height:42px;font-weight:700;padding:10px 14px;border:1px solid transparent}
body.v52 .topnav .nav:hover,body.v52 .v52-drop[open]>summary,body.v52 .topnav .nav.active{background:var(--soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 15%,transparent)}
body.v52 .v52-drop{position:relative;isolation:isolate;flex:none}
body.v52 .v52-drop>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;user-select:none;outline-offset:3px}
body.v52 .v52-drop>summary::-webkit-details-marker{display:none}
body.v52 .v52-drop[open] .v52-megamenu{display:grid!important;position:absolute;inset-block-start:calc(100% + 9px);inset-inline-start:0;z-index:85;background:var(--panel);padding:13px;min-width:min(340px,90vw);max-height:min(70vh,560px);overflow:auto;border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 65px #102f4930;grid-template-columns:1fr;gap:5px}
body.v52 .v52-megamenu button{min-height:40px;border:0;background:transparent;border-radius:10px;color:var(--ink);text-align:start;display:flex;align-items:center;gap:10px;font-weight:650}
body.v52 .v52-megamenu button:hover,body.v52 .v52-megamenu button:focus-visible{background:var(--soft);color:var(--primary)}
body.v52 .v52-hero,body.v52 .v52-home-hero{border-radius:27px;background:radial-gradient(circle at 88% 10%,#1abfac30,transparent 30%),linear-gradient(125deg,#101f39,#164666 55%,#126e75);box-shadow:0 22px 58px #0b395026}
body.v52 .v52-tile,body.v52 .v52-pane,body.v52 .v52-person{border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--v100-radius)}
body.v52 .portal-header-mark{background:linear-gradient(145deg,#137d93,#17b5a0);border-radius:15px}
.v100-shell{max-width:1540px;margin-inline:auto}
.v100-intro{position:relative;overflow:hidden;border-radius:30px;background:linear-gradient(125deg,#0d243a 0%,#154864 52%,#117d7d 100%);color:#fff;padding:clamp(24px,5vw,60px);margin-bottom:23px;box-shadow:0 18px 55px #0a425033}
.v100-intro:after{content:"";position:absolute;inset-inline-start:-85px;inset-block-end:-125px;width:420px;height:420px;border:1px solid #ffffff25;border-radius:50%;box-shadow:0 0 0 65px #ffffff0b,0 0 0 135px #ffffff08;pointer-events:none}
.v100-eyebrow{font:700 11px/1.7 Inter,sans-serif;color:#96f1e2;letter-spacing:.18em}
.v100-intro h1{color:white;font-size:clamp(25px,3.5vw,43px);line-height:1.6;max-width:780px;margin:15px 0}
.v100-intro p{color:#d2eaf1;max-width:750px;font-size:12.5px}
.v100-controls{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin:18px 0}
.v100-search{flex:2 1 260px;min-height:48px;padding:12px 17px;background:var(--panel);color:var(--ink);border:1px solid var(--border);border-radius:14px;outline-offset:3px}
.v100-controls select{flex:1 1 180px;min-height:48px;padding:9px 13px;background:var(--panel);color:var(--ink);border:1px solid var(--border);border-radius:14px}
.v100-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.v100-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;color:#e9ffff;border:1px solid #ffffff44;border-radius:999px;background:#ffffff0c;font-size:10px}
.v100-org{display:grid;justify-items:center;gap:0;padding:15px 0 25px;overflow-x:auto}
.v100-person{position:relative;display:flex;align-items:center;gap:16px;text-align:start;background:var(--panel);border:1px solid var(--border);color:var(--ink);border-radius:19px;padding:17px;width:100%;max-width:420px;box-shadow:var(--shadow);transition:transform .17s,border-color .17s;cursor:pointer}
.v100-person:hover{transform:translateY(-3px);border-color:var(--primary)}
.v100-person:focus-visible{outline:3px solid var(--secondary);outline-offset:3px}
.v100-person strong{display:block;font-size:12.5px;line-height:1.9}
.v100-person small{display:block;font-size:10px;color:var(--muted)}
.v100-person .v100-tag{display:block;color:var(--primary);font-size:10px;font-weight:750}
.v100-avatar{width:70px;height:70px;display:grid;place-items:center;flex:none;border-radius:18px;background:linear-gradient(130deg,#daeff5,#eaf6f1);color:#196b81;border:1px solid #cbe5e9;overflow:hidden}
.v100-avatar img{width:100%;height:100%;object-fit:cover}
.v100-avatar svg{width:35px;height:35px;stroke-width:1.4}
.v100-person.dean{max-width:520px;padding:20px;border:1px solid #4bb6b3}
.v100-person.dean .v100-avatar{width:95px;height:95px;border-radius:24px}
.v100-stem{height:37px;width:2px;background:linear-gradient(var(--primary),#8cbdca)}
.v100-unit-grid{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;position:relative}
.v100-unit-grid:before{content:"";position:absolute;top:-16px;inset-inline:12% 12%;height:2px;background:var(--border)}
.v100-unit{background:var(--panel);border:1px solid var(--border);border-radius:22px;padding:17px;min-width:0;box-shadow:var(--shadow)}
.v100-unit-title{margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid var(--border);color:var(--ink);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:6px}
.v100-count{font:700 12px Inter,sans-serif;color:var(--primary);background:var(--soft);padding:3px 10px;border-radius:999px}
.v100-unit .v100-person{padding:11px;border-radius:14px;margin:8px 0;gap:9px;box-shadow:none}
.v100-unit .v100-avatar{width:48px;height:48px;border-radius:13px}.v100-unit .v100-avatar svg{width:25px}
.v100-unit .v100-person strong{font-size:11px}.v100-unit .v100-person small{font-size:9.5px}
.v100-cardgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.v100-cardgrid .v100-person{min-height:115px;max-width:none}
.v100-section{margin:25px 0}.v100-section>h2{font-size:19px;margin-bottom:16px}
.v100-meta{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}
.v100-profile-head{display:flex;gap:19px;align-items:center;flex-wrap:wrap;padding:14px;background:var(--panel2);border:1px solid var(--border);border-radius:17px}
.v100-profile-head .v100-avatar{width:95px;height:95px}.v100-profile-head h2{font-size:19px;margin:0}
.v100-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v100-detail dt{font-size:10px;color:var(--muted)}.v100-detail dd{margin:0;font-size:12px;overflow-wrap:anywhere}
.v100-source{display:block;margin-top:16px;color:var(--muted);font-size:10px}
.v100-owner-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-bottom:16px}
.v100-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.v100-edit-grid label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:10px}.v100-edit-grid input,.v100-edit-grid select,.v100-edit-grid textarea{min-height:39px;border:1px solid var(--border);background:var(--panel2);color:var(--ink);border-radius:10px;padding:8px 10px;width:100%;font:inherit}
.v100-edit-grid textarea{min-height:90px}.v100-edit-grid .wide{grid-column:1/-1}
.v100-manage-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.v100-manage-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:14px;background:var(--panel);padding:12px}
.v100-manage-row strong{font-size:11px}.v100-manage-row small{display:block;color:var(--muted);font-size:9.5px}
.v100-manage-row .btn{min-height:34px}
.v100-hint{font-size:10.5px;color:var(--muted)}
@media(max-width:1300px){.v100-unit-grid,.v100-cardgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.v100-unit-grid,.v100-cardgrid,.v100-manage-list{grid-template-columns:1fr}.v100-intro{border-radius:20px;padding:27px 19px}.v100-unit-grid:before{display:none}.v100-detail dl,.v100-edit-grid{grid-template-columns:1fr}.v100-org{overflow:visible}.v100-person.dean{max-width:100%}body.v52 .topnav{flex-wrap:nowrap;overflow-x:auto!important;}body.v52 .v52-drop[open] .v52-megamenu{position:fixed;inset-inline:10px;inset-block-start:116px;width:auto;min-width:0;max-height:calc(100dvh - 190px)}.v100-unit{padding:13px}}
@media(max-width:430px){body.v52 .v52-drop[open] .v52-megamenu{inset-block-start:105px}.v100-avatar{width:58px;height:58px}.v100-person{padding:12px;gap:11px}.v100-profile-head .v100-avatar{width:77px;height:77px}}
@media(prefers-reduced-motion:reduce){.v100-person{transition:none}.v100-person:hover{transform:none}}
@media print{.v100-controls,.v100-owner-actions{display:none!important}.v100-unit{break-inside:avoid}.v100-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.v100-home-link{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:21px 25px;border:1px solid var(--border);border-radius:20px;background:var(--panel);box-shadow:var(--shadow);margin:15px 0 22px}
.v100-home-link strong{display:flex;align-items:center;gap:11px;font-size:14px}.v100-home-link .v100-avatar{width:38px;height:38px;border-radius:11px}.v100-home-link .v100-avatar svg{width:20px}.v100-home-link p{font-size:10.5px;color:var(--muted);margin:3px 0 0}
:root{--v101-navy:#122637;--v101-ink:#183246;--v101-turquoise:#087e83;--v101-jade:#0e9b84;--v101-gold:#c59d62;--v101-paper:#f6f8f8;--v101-line:#dce6e7;--bg:#f6f8f8;--panel:#fff;--panel2:#f8faf9;--ink:#183246;--muted:#627583;--border:#dce6e7;--primary:#097b81;--secondary:#0e9b84;--soft:#e7f4f1;--nav:#122637;--nav2:#1a4250;--shadow:0 12px 32px rgba(17,48,58,.065);color-scheme:light}
body.dark{--bg:#0d1b26;--panel:#142633;--panel2:#1a3040;--ink:#f0f7f8;--muted:#b2c3cd;--border:#2a4856;--primary:#75d7cb;--secondary:#43bea5;--soft:#1a3e42;--nav:#091924;--nav2:#123342;--shadow:0 14px 38px rgba(0,0,0,.23);color-scheme:dark}
html{scroll-padding-top:138px}body.v52{font-size:13px;line-height:1.85;background:var(--bg);color:var(--ink)}
body.v52 .topbar{background:color-mix(in srgb,var(--panel) 97%,transparent);border-bottom:1px solid var(--border);box-shadow:0 4px 24px rgba(8,39,55,.04);min-height:72px;height:auto;padding-block:12px}
body.v52 .portal-header-brand{gap:10px}body.v52 .portal-header-mark{background:var(--v101-navy);color:#f1fcf8;border-radius:15px;box-shadow:0 8px 22px #143f5030}
body.v52 .portal-header-copy strong{font-weight:900;letter-spacing:-.02em;color:var(--ink)}body.v52 .portal-header-copy small{color:var(--muted);letter-spacing:.08em}
body.v52 .topnav{background:var(--panel);border-color:var(--border);box-shadow:0 10px 25px rgba(14,40,55,.035);padding-block:8px;gap:5px;z-index:78}
body.v52 .topnav .nav,body.v52 .v52-menubutton{min-height:43px;font-size:11.5px;border-radius:12px;padding:9px 14px;transition:background .16s,border-color .16s,color .16s}
body.v52 .topnav .nav:hover,body.v52 .v52-drop[open]>.v52-menubutton,body.v52 .topnav .nav.active{background:var(--soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 16%,var(--border))}
body.v52 .v52-drop{isolation:auto}body.v52 .v52-drop[open]>.v52-megamenu{display:grid;z-index:100;inset-block-start:calc(100% + 5px);min-width:min(360px,92vw);border:1px solid var(--border);box-shadow:0 23px 65px rgba(6,34,52,.2);background:var(--panel);border-radius:17px;padding:9px;gap:3px;overscroll-behavior:contain}
body.v52 .v52-drop[open]>.v52-megamenu:before{content:"";position:absolute;inset-block-start:-8px;inset-inline:0;height:9px}
body.v52 .v52-megamenu button{font-size:11.5px;border-radius:11px;min-height:43px;padding-inline:13px}
body.v52 .v52-home-hero{background:linear-gradient(119deg,#122638 0%,#17516a 60%,#0d746f 100%);border:1px solid #ffffff19;border-radius:26px;box-shadow:0 20px 55px rgba(5,64,74,.2)}
body.v52 .v52-hero,body.v52 .v100-intro{background:linear-gradient(125deg,#122839,#1a5365 68%,#16776e);border-radius:26px;box-shadow:0 14px 42px rgba(11,50,63,.13)}
body.v52 .v52-tile,body.v52 .v52-pane,body.v52 .v52-person,body.v52 .surface,body.v52 .item,body.v52 .metric{border-color:var(--border);background:var(--panel);box-shadow:var(--shadow);border-radius:18px}
body.v52 .v52-tile:hover,body.v52 .v100-person:hover{border-color:color-mix(in srgb,var(--primary) 37%,var(--border));box-shadow:0 15px 36px color-mix(in srgb,var(--primary) 10%,transparent)}
body.v52 .btn.primary{background:var(--v101-turquoise);color:white;border-color:var(--v101-turquoise);box-shadow:0 7px 18px rgba(6,115,120,.17)}body.dark .btn.primary{background:#167c81;border-color:#167c81;color:#fff}
body.v52 .btn,body.v52 .iconbtn,body.v52 .v51-tool{border-radius:11px;min-height:42px}
body.v52 .v52-metric-row>div,body.v52 .v52-cardgrid>*,body.v52 .v100-unit{min-width:0}
body.v52 .v100-person{border-radius:16px}body.v52 .v100-avatar{border-radius:18px;background:var(--soft);color:var(--primary)}
body.v52 .v51-footer-brand{letter-spacing:0}body.v52 :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #21a9a2;outline-offset:3px}
body.v52 .v52-actions-menu{z-index:140}body.v52 .v52-actions-menu[hidden]{display:none!important}
body.v52 :is(.topnav,.v52-megamenu){}
.v101-status{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.v101-status i{width:7px;height:7px;border-radius:50%;background:#16a084;flex:none}
.v101-structure-title{font-size:12px;font-weight:900;letter-spacing:.01em}
@media(max-width:1000px){body.v52 .topbar{min-height:65px;padding-block:8px}body.v52 .topnav{flex-wrap:nowrap!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-inline:14px}body.v52 .topnav .nav,body.v52 .v52-drop{scroll-snap-align:start;flex:none}}
@media(max-width:780px){body.v52 .topbar{padding-inline:12px}body.v52 .v52-drop[open]>.v52-megamenu{position:fixed;inset-inline:12px;inset-block-start:117px;min-width:0;max-height:min(62dvh,550px);width:auto;overflow:auto}body.v52 .main{padding-inline:13px}body.v52 .v52-home-hero,body.v52 .v100-intro{border-radius:20px}body.v52 .v100-unit-grid{gap:11px}}
@media(max-width:430px){body.v52 .v52-drop[open]>.v52-megamenu{inset-block-start:105px}body.v52 .top-right{gap:3px}body.v52 .topbar .iconbtn{min-width:35px}body.v52 .v100-controls{gap:8px}body.v52 .v100-controls select{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:after,*:before{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{body.v52 .topbar,body.v52 .topnav,body.v52 .campus-mobile-dock{display:none!important}body.v52 .v52-tile,body.v52 .v100-unit{box-shadow:none!important;break-inside:avoid}}
/* V103 design shell: unified controls, source-backed content, no duplicated toolbars. */
:root{--v103-blue:#113950;--v103-teal:#008f87;--v103-blue-light:#e8f4f5;--v103-outline:#d9e6e9;--v103-shadow:0 20px 48px rgba(17,50,68,.13)}
body.v103{--v103-panel:var(--panel,#fff);--v103-ink:var(--ink,#183443);--v103-muted:var(--muted,#607581);--v103-border:var(--border,#dbe7e9)}
body.v103.dark{--v103-panel:var(--panel,#142c3b);--v103-ink:var(--ink,#f1f8fa);--v103-muted:var(--muted,#afc6cb);--v103-border:var(--border,#36505a)}
body.v103 .topbar,body.v103 .quick-access,body.v103 .bottomnav{display:none!important}
body.v103 .v103-appbar{height:77px;min-height:77px;display:flex;gap:22px;align-items:center;justify-content:space-between;padding:0 clamp(16px,2.2vw,38px);position:sticky;top:0;z-index:84;background:color-mix(in srgb,var(--v103-panel) 97%,transparent);border-bottom:1px solid var(--v103-border);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);color:var(--v103-ink)}
.v103-start,.v103-end{display:flex;align-items:center;gap:9px;min-width:0}.v103-start{flex:1}.v103-end{flex:0 1 auto}
.v103-logo{display:flex;gap:11px;align-items:center;padding:3px;border:0;background:transparent;text-align:start;cursor:pointer;color:inherit;max-width:340px;flex-shrink:0}.v103-logo-symbol{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#133c54,#087d79);color:white;box-shadow:0 8px 22px rgba(0,127,120,.16)}.v103-logo-symbol svg{width:28px;height:28px}.v103-logo-type{display:flex;flex-direction:column;line-height:1.5;white-space:nowrap}.v103-logo-type strong{font-size:14px;font-weight:900}.v103-logo-type small{font-size:9px;font-weight:650;color:var(--v103-muted)}
.v103-header-divider{height:36px;border-inline-start:1px solid var(--v103-border);margin-inline:7px}.v103-context{display:flex;flex-direction:column;line-height:1.6;min-width:0}.v103-context small{font-size:9px;color:var(--v103-muted)}.v103-context strong{font-size:12px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:215px}
.v103-icon,.v103-avatar{border:1px solid transparent;background:transparent;color:var(--v103-ink);cursor:pointer;min-width:39px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:11px;padding:0 8px;flex-shrink:0}.v103-icon:hover,.v103-avatar:hover,.v103-icon[aria-expanded=true],.v103-avatar[aria-expanded=true]{background:var(--soft,#eaf6f5);border-color:var(--v103-border)}.v103-avatar{border-color:var(--v103-border);background:var(--v103-panel);padding:0 10px}.v103-avatar span{font-size:10px;font-weight:800}.v103-lang span{font-size:9px;font-weight:800}.v103-mobile-menu{display:none}
.v103-search{background:var(--panel2,#f7fafb);border:1px solid var(--v103-border);height:41px;width:clamp(180px,18vw,315px);border-radius:12px;display:flex;align-items:center;gap:10px;color:var(--v103-muted);cursor:pointer;padding:0 12px;text-align:start}.v103-search:hover{border-color:var(--primary,#078d83)}.v103-search span{font-size:10px;white-space:nowrap;flex:1;overflow:hidden;text-overflow:ellipsis}.v103-search kbd{font-family:Manrope,monospace;white-space:nowrap;border:1px solid var(--v103-border);padding:2px 5px;border-radius:6px;font-size:9px}
body.v103 .topnav.v103-topnav{top:77px!important;min-height:58px;height:auto;position:sticky;z-index:77;display:flex;gap:4px;align-items:center;padding:6px clamp(16px,2.2vw,38px);flex-wrap:nowrap;overflow:visible!important;background:color-mix(in srgb,var(--v103-panel) 98%,transparent)!important;border-bottom:1px solid var(--v103-border);box-shadow:0 9px 22px rgba(15,48,62,.045);width:100%;max-width:none}
.v103-topnav .v103-toplink,.v103-topnav .v103-menu>summary{white-space:nowrap;display:inline-flex;gap:7px;align-items:center;justify-content:center;height:40px;padding:0 12px;border-radius:10px;background:transparent;border:1px solid transparent;font-size:10px;font-weight:800;color:var(--v103-ink);cursor:pointer;list-style:none;font-family:inherit}
.v103-topnav .v103-menu>summary::-webkit-details-marker{display:none}.v103-topnav .v103-toplink svg,.v103-topnav .v103-menu>summary svg{flex-shrink:0}
.v103-topnav .v103-toplink:hover,.v103-topnav .v103-menu>summary:hover,.v103-topnav .is-active>summary,.v103-topnav .v103-toplink.is-active{background:var(--soft,#e7f5f1);color:var(--primary,#087d79);border-color:color-mix(in srgb,var(--primary,#087d79) 20%,transparent)}
.v103-menu{position:relative;flex-shrink:0}.v103-menu[open]>summary{background:var(--soft,#e7f5f1);color:var(--primary,#087d79)}.v103-menu>summary svg:last-child{opacity:.64;transition:transform .2s}.v103-menu[open]>summary svg:last-child{transform:rotate(180deg)}
.v103-megamenu{position:absolute;z-index:105;inset-inline-start:0;top:calc(100% + 8px);width:min(550px,calc(100vw - 42px));max-height:min(580px,75vh);overflow-y:auto;padding:17px;background:var(--v103-panel);border-radius:17px;border:1px solid var(--v103-border);box-shadow:var(--v103-shadow);color:var(--v103-ink)}.v103-menu:nth-last-child(-n/**/+3) .v103-megamenu{inset-inline-start:auto;inset-inline-end:0}
.v103-mega-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 4px 13px;border-bottom:1px solid var(--v103-border)}.v103-mega-head strong{font-size:12px}.v103-mega-head span{font-size:9px;color:var(--v103-muted)}.v103-mega-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}
.v103-route{border:1px solid transparent;text-align:start;background:transparent;color:var(--v103-ink);padding:11px;border-radius:11px;display:flex;align-items:center;gap:10px;width:100%;min-width:0;font-family:inherit;cursor:pointer}.v103-route:hover,.v103-route:focus-visible,.v103-route.is-active{background:var(--soft,#eaf6f4);border-color:var(--v103-border)}.v103-route svg{flex-shrink:0;color:var(--primary,#078d83)}.v103-route span{display:flex;flex-direction:column;gap:2px;min-width:0}.v103-route strong{font-size:10px;font-weight:850}.v103-route small{font-size:9px;line-height:1.6;color:var(--v103-muted);font-weight:450}
body.v103 .side{background:linear-gradient(168deg,#0b2839,#113d51 70%,#0d4c56);border-inline-end:1px solid #ffffff1c;padding:0!important}
body.v103 .side>*:not(.v103-sidebar-panel){display:none!important}
.v103-sidebar-panel{display:flex;flex-direction:column;min-height:100%;height:100%;color:#eaf9ff}.v103-side-heading{display:flex;align-items:center;gap:10px;padding:25px 18px 17px;border-bottom:1px solid #ffffff17}.v103-side-mark{border:1px solid #fff3;background:#ffffff18;color:#c1fff0;border-radius:13px;padding:9px;display:grid;place-items:center}.v103-side-heading strong{font-size:12px;display:block}.v103-side-heading small{font-size:8px;opacity:.63;white-space:nowrap}.v103-side-scroller{overflow:auto;flex:1;padding:13px 10px;}.v103-side-section{padding:8px 0;border-top:1px solid #ffffff12;margin-top:9px}.v103-side-section h2{display:flex;gap:9px;align-items:center;font-size:10px;color:#abd6de;font-weight:800;padding:10px 13px;margin:0}.v103-sidebar-panel .v103-route{color:#d7ebf0;padding:11px 12px;margin-bottom:2px;border-radius:11px}.v103-sidebar-panel .v103-route svg{color:#a0dce0}.v103-sidebar-panel .v103-route strong{font-size:10px}.v103-sidebar-panel .v103-route:hover,.v103-sidebar-panel .v103-route.is-active{background:#ffffff1c;border-color:#ffffff17;color:white}.v103-side-status{padding:15px;border-top:1px solid #ffffff27;font-size:9px;display:flex;align-items:center;gap:10px;background:#00172524}.v103-connect-dot{background:#48d6ad;height:8px;width:8px;border-radius:50%;box-shadow:0 0 0 4px #49d6ad25}.v103-offline .v103-connect-dot{background:#eeb464;box-shadow:0 0 0 4px #eeb46420}.v103-close-side{display:none;margin-inline-start:auto;color:inherit;background:transparent;border:0;font-size:25px;cursor:pointer}
.v103-popover{position:absolute;inset-inline-end:25px;top:calc(100% - 5px);z-index:150;background:var(--v103-panel);box-shadow:var(--v103-shadow);border:1px solid var(--v103-border);border-radius:15px;padding:11px;width:min(320px,calc(100vw - 24px));max-height:min(70vh,600px);overflow-y:auto}.v103-popover[hidden]{display:none!important}.v103-popover button{background:transparent;border:0;padding:12px;display:flex;align-items:center;gap:10px;width:100%;text-align:start;border-radius:9px;color:var(--v103-ink);font-size:10px;font-weight:700;cursor:pointer;font-family:inherit}.v103-popover button:hover{background:var(--soft,#eaf6f5)}.v103-pop-heading{font-size:10px;font-weight:900;color:var(--v103-muted);padding:9px 11px 7px}.v103-account-info{display:flex;gap:11px;padding:11px;border:1px solid var(--v103-border);border-radius:10px;margin:5px 0}.v103-account-info strong,.v103-account-info small{display:block;overflow-wrap:anywhere}.v103-account-info strong{font-size:10px}.v103-account-info small{font-size:9px;color:var(--v103-muted)}
.v103-command{max-width:720px}.v103-command-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px}.v103-command-heading>span{background:var(--soft,#dceee9);color:var(--primary);padding:14px;border-radius:14px}.v103-command h2{font-size:17px;margin:0}.v103-command p{margin:0;color:var(--v103-muted);font-size:10px}.v103-command>input{width:100%;height:53px;font-size:13px!important}.v103-command-results{padding:12px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:350px;overflow:auto}.v103-command-entry{background:transparent;border:1px solid var(--v103-border);border-radius:11px;display:flex;text-align:start;align-items:center;gap:10px;color:var(--v103-ink);padding:10px;font-family:inherit;cursor:pointer}.v103-command-entry.selected,.v103-command-entry:hover{background:var(--soft,#e7f4f1);border-color:var(--primary,#008d83)}.v103-command-entry svg{color:var(--primary);flex-shrink:0}.v103-command-entry>span{display:flex;flex:1;flex-direction:column;min-width:0}.v103-command-entry strong{font-size:10px}.v103-command-entry small{color:var(--v103-muted);font-size:9px}.v103-command-entry kbd{font-size:10px;color:var(--v103-muted)}.v103-command-footer{border-top:1px solid var(--v103-border);padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:9px;color:var(--v103-muted)}.v103-no-results{grid-column:1/-1;padding:23px;color:var(--v103-muted);text-align:center}.v103-sr-only{position:absolute;left:-9999px}
body.v103 .campus-mobile-dock{display:none!important}
body.v103 :is(.v103-appbar,.v103-topnav,.v103-sidebar-panel) :is(button,summary):focus-visible{outline:3px solid #d4a446;outline-offset:2px}
@media(max-width:1380px){.v103-context,.v103-header-divider{display:none}.v103-search{width:220px}.v103-topnav .v103-toplink,.v103-topnav .v103-menu>summary{padding-inline:8px}}
@media(max-width:1150px){body.v103 .v103-topnav{overflow-x:auto!important;}.v103-search{width:190px}.v103-search kbd{display:none}.v103-help{display:none}}
@media(max-width:900px){body.v103 .v103-appbar{height:67px;min-height:67px;padding:0 14px}.v103-mobile-menu{display:inline-flex}.v103-logo-type strong{font-size:12px}.v103-logo-symbol{width:40px;height:40px}.v103-search{width:42px;justify-content:center;padding:0}.v103-search span,.v103-search kbd{display:none}.v103-avatar span,.v103-avatar svg:last-child{display:none}.v103-avatar{min-width:40px;width:40px}.v103-side-heading{padding-top:18px}.v103-close-side{display:block}body.v103 .side{display:flex!important;z-index:130}body.v103 .v103-topnav{top:67px!important;max-width:100%;overflow-x:auto!important;overflow-y:hidden!important}.v103-menu .v103-megamenu{position:fixed;top:122px;inset-inline:10px!important;width:calc(100vw - 20px);max-height:55vh}body.v103 .campus-mobile-dock{display:flex!important;position:fixed;bottom:calc(env(safe-area-inset-bottom) + 8px);inset-inline:8px;z-index:102;height:65px;justify-content:space-around;border:1px solid var(--v103-border);border-radius:18px;background:var(--v103-panel);box-shadow:0 14px 30px rgba(15,48,62,.2);backdrop-filter:blur(18px)}body.v103 .campus-mobile-dock button{flex:1;border:0;background:transparent;color:var(--v103-muted);font-family:inherit;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;font-size:9px;padding:4px;border-radius:12px}body.v103 .campus-mobile-dock button.active{color:var(--primary,#008d83);background:var(--soft,#e8f4ef)}body.v103 .main{padding-bottom:110px!important}}
@media(max-width:550px){.v103-logo-type small{font-size:7px}.v103-logo-type strong{max-width:125px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v103-appbar .v103-end{gap:0}.v103-lang span{display:none}.v103-icon{min-width:33px;width:33px;padding:0}.v103-avatar{width:36px;min-width:36px}.v103-topnav .v103-menu>summary{font-size:9px}.v103-mega-grid{grid-template-columns:1fr}.v103-menu .v103-megamenu{max-height:65vh}.v103-command-results{grid-template-columns:1fr}.v103-command-footer{flex-wrap:wrap}.v103-logo-symbol{width:35px;height:35px}}
@media(prefers-reduced-motion:reduce){body.v103 *,body.v103 *::before,body.v103 *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{body.v103 .v103-appbar,body.v103 .v103-topnav,body.v103 .side,body.v103 .campus-mobile-dock{display:none!important}}

@media (min-width:901px) and (max-width:1150px){body.v103 .v103-topnav .v103-megamenu{position:fixed;top:137px;inset-inline-start:clamp(12px,14vw,200px)!important;inset-inline-end:auto!important;max-height:65vh}}

/* Respect the Design Studio navigation preference: hybrid sidebar on wide displays, top-only when chosen. */
@media(min-width:1151px){
body.v103[data-nav=side] .layout{display:grid!important;grid-template-columns:255px minmax(0,1fr)!important}
body.v103[data-nav=side] .side{display:flex!important;position:sticky;top:0;height:100dvh;transform:none!important}
body.v103[data-nav=top] .layout,body.v103[data-nav=bottom] .layout{display:block!important}
body.v103[data-nav=top] .side,body.v103[data-nav=bottom] .side{display:none!important}
}
@media(max-width:1150px){
body.v103 .layout{display:block!important;grid-template-columns:1fr!important}
body.v103 .side{display:flex!important;position:fixed!important;inset-block:0;inset-inline-start:0;width:min(315px,88vw);transform:translateX(108%);transition:transform .2s;z-index:145;height:100dvh}
html[dir=ltr] body.v103 .side{transform:translateX(-108%)}
body.v103 .side.open,html[dir=ltr] body.v103 .side.open{transform:translateX(0)}
body.v103 .v103-mobile-menu,body.v103 .v103-close-side{display:inline-flex!important}
body.v103 .v103-topnav{top:77px!important}
}
/* V104: visible default top navigation, settings hub and responsive dropdown repairs. */
@media(min-width:1151px){
  body.v103[data-nav=top] .v103-mobile-menu{display:inline-flex!important}
  body.v103[data-nav=top] .side{display:flex!important;position:fixed!important;inset-block:0;inset-inline-start:0;width:min(325px,88vw);height:100dvh;z-index:146;transform:translateX(110%);transition:transform .18s}
  html[dir=ltr] body.v103[data-nav=top] .side{transform:translateX(-110%)}
  body.v103[data-nav=top] .side.open,html[dir=ltr] body.v103[data-nav=top] .side.open{transform:translateX(0)}
}
@media(max-width:1150px){
 body.v103 .v103-topnav{flex-wrap:wrap!important;overflow:visible!important;white-space:normal!important;gap:3px!important}
 body.v103 .v103-topnav .v103-menu>summary,body.v103 .v103-topnav .v103-toplink{height:34px!important;font-size:10px!important}
 body.v103 .v103-topnav .v103-megamenu{position:absolute!important;top:calc(100% + 4px)!important;inset-inline-start:0!important;inset-inline-end:auto!important;width:min(550px,calc(100vw - 24px))!important}
 body.v103 .v103-topnav .v103-menu:nth-last-child(-n/**/+3) .v103-megamenu{inset-inline-start:auto!important;inset-inline-end:0!important}
}
@media(max-width:650px){
 body.v103 .v103-topnav{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;min-height:46px!important;overscroll-behavior-inline:contain;}
 body.v103 .v103-topnav:has(.v103-menu[open]){overflow:visible!important}
 body.v103 .v103-topnav .v103-megamenu{position:fixed!important;top:calc(67px + 46px)!important;inset-inline:8px!important;width:calc(100vw - 16px)!important;max-height:65dvh!important}
 body.v103 .v103-help{display:none!important}
}
.v104-settings-trigger{border:1px solid var(--v103-border)!important}
.v104-settings{width:min(850px,100%);color:var(--v103-ink,var(--ink))}
.v104-settings-head{display:flex;gap:13px;align-items:center;margin-bottom:16px}
.v104-settings-head h2{margin:0;font-size:20px}.v104-settings-head p{font-size:11px;color:var(--v103-muted);margin:3px 0}
.v104-settings-mark{background:var(--soft,#e7f2f1);border-radius:14px;padding:12px;display:flex;color:var(--primary)}
.v104-settings-tabs{display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--v103-border);flex-wrap:wrap;margin-bottom:19px;padding-bottom:10px}
.v104-settings-tabs button{display:flex;align-items:center;gap:7px;border:1px solid transparent;background:transparent;color:var(--v103-ink);border-radius:10px;padding:10px 13px;font-size:11px;font-family:inherit;cursor:pointer}
.v104-settings-tabs button[aria-current=page]{background:var(--soft,#e7f2f1);border-color:var(--v103-border);font-weight:850;color:var(--primary,#087f78)}
.v104-intro{background:var(--panel2,#f7fafb);border:1px solid var(--v103-border);border-radius:13px;padding:14px 17px;margin-bottom:15px}
.v104-intro strong{font-size:13px}.v104-intro p{font-size:11px;margin:6px 0;color:var(--v103-muted);line-height:1.9}
.v104-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.v104-option{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:11px;min-width:0}
.v104-option select{width:100%;min-height:45px;background:var(--panel,#fff);color:var(--v103-ink);font-size:12px}
.v104-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:19px}
.v104-settings-bottom{border-top:1px solid var(--v103-border);display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:23px;padding-top:13px}
.v104-settings-bottom small{font-size:10px;color:var(--v103-muted);line-height:1.6}
.v104-sec-status{padding:10px 0;font-size:12px}.v104-security-stats{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.v104-security-stats>div{padding:13px;border:1px solid var(--v103-border);border-radius:10px;overflow-wrap:anywhere}.v104-security-stats dt{font-size:10px;color:var(--v103-muted)}.v104-security-stats dd{font-size:12px;font-weight:800;margin:5px 0 0}
.v104-security-hint{border:1px solid var(--v103-border);border-radius:10px;padding:13px;display:flex;gap:10px;font-size:11px}
.v104-owner-sec{border-top:1px solid var(--v103-border);margin-top:20px;padding-top:15px}.v104-owner-sec h3{font-size:13px;margin:5px 0 11px}.v104-account-row{border-bottom:1px solid var(--v103-border);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0}.v104-account-row strong,.v104-account-row small{display:block;overflow-wrap:anywhere;font-size:10px}.v104-account-row small{color:var(--v103-muted)}
body.v103 .v103-topnav .v103-menu[open] .v103-megamenu{visibility:visible}
@media(max-width:680px){.v104-settings-head h2{font-size:16px}.v104-settings-grid,.v104-security-stats{grid-template-columns:1fr}.v104-settings-tabs button{flex:1;justify-content:center;font-size:10px;padding:9px 5px}.v104-settings-bottom{align-items:flex-start;flex-direction:column}}
/* Compact mobile tool hierarchy: retain one obvious settings action; move language and theme to More. */
@media(max-width:550px){
 body.v103 .v103-appbar{padding-inline:9px!important;gap:3px!important;justify-content:space-between!important}
 body.v103 .v103-start{gap:3px!important;flex:1 1 auto;min-width:0}
 body.v103 .v103-end{gap:1px!important;flex:0 0 auto}
 body.v103 .v103-mobile-menu{width:32px!important;min-width:32px!important;height:38px!important}
 body.v103 .v103-logo{flex:1 1 auto!important;min-width:0!important;gap:5px!important;padding:0!important;overflow:hidden}
 body.v103 .v103-logo-symbol{flex:0 0 35px!important;width:35px!important;height:35px!important}
 body.v103 .v103-logo-type{flex:1 1 auto!important;min-width:0!important;max-width:none!important;overflow:hidden}
 body.v103 .v103-logo-type strong{max-width:none!important;display:block!important;text-overflow:ellipsis;overflow:hidden;font-size:10px!important}
 body.v103 .v103-logo-type small{display:none!important}
 body.v103 .v103-context,body.v103 .v103-help,body.v103 .v103-lang,body.v103 [data-v103-action=theme]{display:none!important}
 body.v103 .v103-end>.v103-search,body.v103 .v103-end>.v103-icon,body.v103 .v103-end>.v103-avatar{flex:0 0 32px!important;width:32px!important;min-width:32px!important;height:37px!important;padding:0!important}
 body.v103 .v103-end>.v103-search{justify-content:center!important}
 body.v103 .v103-end>.v103-avatar svg:last-child{display:none!important}
}
/* Prevent off-canvas drawers and decorative content from creating page-level horizontal scrolling. */
html:has(body.v103),body.v103{overflow-x:clip}
/* V105: responsive quick-access workspace, accessible focus and stable shell. */
.v105-quick{width:min(810px,100%);color:var(--v103-ink)}
.v105-hero{display:flex;align-items:center;gap:16px;padding:18px;border-radius:18px;background:linear-gradient(115deg,var(--soft,#e6f2f1),var(--panel,#fff));border:1px solid var(--v103-border);margin-bottom:18px}
.v105-star{height:52px;width:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:15px;background:var(--primary,#008f87);color:#fff;font-size:25px}
.v105-hero h2{font-size:19px;margin:0 0 4px}.v105-hero p{font-size:11px;color:var(--v103-muted);margin:0;line-height:1.9}
.v105-quick-search{display:grid;gap:8px;margin-bottom:10px}.v105-quick-search label{font-size:11px;font-weight:800}.v105-quick-search input{width:100%;min-height:44px}
.v105-quick-body{overflow-y:auto;max-height:min(52dvh,520px);padding-inline-end:3px}
.v105-section{margin:12px 0 18px}.v105-section h3{font-size:12px;margin:0 0 9px;color:var(--v103-muted)}.v105-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.v105-entry{display:flex;align-items:center;min-width:0;border:1px solid var(--v103-border);border-radius:13px;background:var(--v103-panel);overflow:hidden;transition:border-color .15s,background .15s}
.v105-entry:hover,.v105-entry:focus-within{border-color:var(--primary,#008f87);background:var(--soft,#e6f2f1)}
.v105-entry-open{min-width:0;flex:1;display:flex;align-items:center;text-align:start;gap:10px;cursor:pointer;border:0;background:transparent;color:var(--v103-ink);padding:12px;font-family:inherit}.v105-entry-open svg{color:var(--primary,#008f87);flex:0 0 auto}.v105-entry-open span{min-width:0;display:grid;gap:3px}.v105-entry-open strong{font-size:11px}.v105-entry-open small{font-size:9px;color:var(--v103-muted)}
.v105-pin{flex:0 0 40px;min-height:42px;border:0;background:transparent;color:var(--primary,#008f87);font-size:20px;cursor:pointer}
.v105-empty{grid-column:1/-1;padding:12px;font-size:11px;color:var(--v103-muted);margin:0}.v105-footer{display:flex;gap:15px;align-items:center;justify-content:space-between;border-top:1px solid var(--v103-border);padding-top:15px;margin-top:15px}.v105-footer small{color:var(--v103-muted);font-size:10px;line-height:1.8}
body.v103 .v105-quick-trigger{border:1px solid var(--v103-border)}
body.v103 :is(.v105-quick,.v104-settings) :is(button,input,select):focus-visible{outline:3px solid #bf953f;outline-offset:2px}
/* Respect browser high contrast rather than forcing gradients/translucency. */
@media(forced-colors:active){.v105-entry,.v105-hero{border:1px solid CanvasText}.v105-pin{color:LinkText}}
@media(max-width:650px){.v105-entries{grid-template-columns:1fr}.v105-hero{padding:12px}.v105-star{height:43px;width:43px;flex-basis:43px}.v105-hero h2{font-size:15px}.v105-footer{flex-direction:column;align-items:stretch}.v105-quick-trigger{display:none!important}}
@media(prefers-reduced-motion:reduce){.v105-entry{transition:none}}

.v105-privacy{margin-top:20px;padding:17px;border:1px solid var(--v103-border);border-radius:15px;background:var(--panel2,#f5faf9)}.v105-privacy h3{font-size:13px;margin:0 0 10px}.v105-privacy p{font-size:10px;color:var(--v103-muted);line-height:1.9;margin:8px 0}.v105-privacy-check{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;cursor:pointer}.v105-privacy-check input{width:19px;height:19px;accent-color:var(--primary)}
/* Legibility pass for dense historical interfaces; never override user-chosen text scale. */
@media(min-width:1151px){
 body.v103 .v103-topnav .v103-toplink,body.v103 .v103-topnav .v103-menu>summary{font-size:clamp(11px,.84vw,13px)}
 body.v103 .v103-route strong{font-size:12px}
 body.v103 .v103-route small{font-size:11px}
 body.v103 .v103-logo-type strong{font-size:15px}
}
body.v103 .v51-result strong{font-size:14px;line-height:1.75}
body.v103 .v51-result small{font-size:11px;line-height:1.65}
body.v103 .v51-result .v51-kind{font-size:10px}
body.v103 .v51-search-controls .field{font-size:13px;min-height:44px}
body.v103 :is(.v51-search-controls,.v51-facets) button{min-height:39px}
@media(min-width:651px) and (max-width:1150px){body.v103 .v103-topnav .v103-menu>summary,body.v103 .v103-topnav .v103-toplink{font-size:11px!important}}
@media(max-width:650px){body.v103 .v103-topnav .v103-menu>summary,body.v103 .v103-topnav .v103-toplink{font-size:10.5px!important}}
/* V150 · all navigation belongs to one semantic header, not a second sticky element. */
body.v150{--v150-primary:#086b73;--v150-deep:#123343;--v150-soft:color-mix(in srgb,var(--primary,#087f79) 9%,var(--v103-panel,#fff));--v150-stroke:var(--v103-border,#d9e3e7)}
body.v150 #v103Header.v150-integrated-header{position:sticky!important;top:0!important;z-index:110!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;width:100%;height:auto!important;min-height:0!important;padding:0!important;border-bottom:1px solid var(--v150-stroke)!important;background:color-mix(in srgb,var(--v103-panel,#fff) 98%,transparent);box-shadow:0 12px 32px rgba(10,39,55,.07);isolation:isolate}
body.v150 #v103Header .v150-toolbar{min-height:79px;display:flex;gap:20px;align-items:center;justify-content:space-between;width:100%;padding:0 clamp(18px,2.65vw,44px);border-bottom:1px solid var(--v150-stroke)}
body.v150 #v103Header .v103-topnav{position:relative!important;top:auto!important;z-index:auto!important;display:flex!important;min-height:55px!important;height:auto!important;width:100%!important;margin:0!important;padding:6px clamp(18px,2.65vw,44px)!important;border:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}
body.v150 #v103Header .v103-topnav .v103-toplink,body.v150 #v103Header .v103-topnav .v103-menu>summary{font-size:clamp(11px,.84vw,13px);border-radius:10px;height:42px}
body.v150 #v103Header .v103-megamenu{top:calc(100% + 7px)!important;z-index:120!important;box-shadow:0 25px 70px #071f3040;max-height:min(68vh,650px)}
body.v150 #v103Header .v103-popover{z-index:160!important;top:74px!important}
body.v150 #v103Header .v103-logo-type strong{font-size:15px;letter-spacing:-.4px}
body.v150 .v52-home-hero{border-radius:26px;box-shadow:0 22px 58px #113b4b24}
body.v150 .v52-tile,body.v150 .v52-pane{border-radius:18px}
body.v150 :is(.v150-person-card,.v150-team-controls button,.v150-manage-entry button):focus-visible{outline:3px solid #be9637;outline-offset:3px}
/* V18 team hierarchy: cards retain their server-supplied parent-child relationships. */
.v150-team-page .v150-org-scroll.v18-team-chart{background:radial-gradient(ellipse at 50% 0%,#e9f7f9,var(--v103-panel,#fff) 76%);max-height:78vh;overscroll-behavior:contain;}
.v18-team-chart .v150-org-roots,.v18-team-chart .v150-org-children{gap:clamp(12px,2.3vw,29px)}
.v18-team-chart .v150-org-children{margin-top:50px}
.v18-team-chart .v150-org-children::before{border-color:#84a9ba;top:-26px}
.v18-team-chart .v150-org-children>.v150-org-node::before{height:26px;top:-26px;background:#84a9ba}
.v18-team-chart .v150-org-node:has(.v150-org-children)>.v150-person-card::after{height:51px;bottom:-51px;background:#84a9ba}
.v18-team-card.v150-person-card{width:clamp(182px,18vw,256px);min-height:180px;display:flex;flex-direction:column;align-items:stretch;gap:8px;border-radius:17px;border-block-start:4px solid #128a9a;text-align:center;padding:15px 12px 10px;box-shadow:0 14px 31px #0c39531a;transition:transform .16s ease,box-shadow .16s ease}
.v18-team-card.v150-person-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px #103f5a25}
.v18-team-card[data-v18-depth="0"]{border-block-start-color:#087a89;min-height:195px}
.v18-team-chart .v150-org-children>.v150-org-node:nth-child(4n/**/+1)>.v18-team-card{border-block-start-color:#7355bf}
.v18-team-chart .v150-org-children>.v150-org-node:nth-child(4n/**/+2)>.v18-team-card{border-block-start-color:#1685d1}
.v18-team-chart .v150-org-children>.v150-org-node:nth-child(4n/**/+3)>.v18-team-card{border-block-start-color:#259d78}
.v18-team-chart .v150-org-children>.v150-org-node:nth-child(4n/**/+4)>.v18-team-card{border-block-start-color:#ef9037}
.v18-team-card .v150-person-image{border-radius:50%;width:60px;height:60px;flex:0 0 60px;align-self:center;background:#e3f5f7;color:#176578}
.v18-team-card .v150-person-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:56px}
.v18-team-card .v150-person-copy strong{font-size:13px;font-weight:850;line-height:1.5;overflow-wrap:break-word}
.v18-team-card .v150-person-copy small{font-size:11px;line-height:1.5}
.v18-team-card .v18-team-more{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:10px;background:#e9f5f7;padding:8px;color:#08566a;font-weight:800;font-size:11px;min-height:34px}
.v150-team-list .v18-team-card{width:100%;max-width:none}
@media(max-width:650px){.v150-team-page .v150-org-scroll.v18-team-chart{max-height:none;overflow:visible;padding:18px 7px}.v18-team-chart .v150-org-roots,.v18-team-chart .v150-org-children{min-width:0;width:100%;display:grid;grid-template-columns:1fr;justify-items:center;gap:19px}.v18-team-chart .v150-org-children{margin-top:32px;border-inline-start:2px solid #bed4dc;padding-inline-start:13px}.v18-team-chart .v150-org-children::before,.v18-team-chart .v150-org-children>.v150-org-node::before,.v18-team-chart .v150-org-node:has(.v150-org-children)>.v150-person-card::after{display:none}.v18-team-chart .v150-org-node{max-width:100%;width:100%}.v18-team-card.v150-person-card{width:min(100%,340px);min-height:148px;padding:12px}.v18-team-card .v150-person-image{width:48px;height:48px;flex-basis:48px}.v150-team-page .v150-team-controls{gap:8px}.v150-team-page .v150-filter{flex-basis:100%;max-width:none}}
@media(prefers-reduced-motion:reduce){.v18-team-card.v150-person-card{transition:none}.v18-team-card.v150-person-card:hover{transform:none}}
/* The published team graph uses only relationships and biographies from the database. */
.v150-team-page{width:100%;margin:0 auto;padding-bottom:35px}.v150-team-banner{margin:16px 0 19px;border:1px solid var(--v150-stroke);background:var(--v150-soft);border-radius:16px;padding:15px 19px;display:flex;gap:13px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:12px;color:var(--v103-muted)}.v150-source-label{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--primary,#067a78)}
.v150-team-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:18px 0;padding:10px;background:var(--v103-panel,#fff);border:1px solid var(--v150-stroke);border-radius:16px}.v150-switch{display:inline-flex;background:var(--v150-soft);padding:4px;border-radius:12px;gap:3px}.v150-switch button{border:0;background:transparent;color:var(--v103-ink);font-family:inherit;font-weight:750;display:inline-flex;gap:6px;align-items:center;padding:9px 11px;border-radius:9px;cursor:pointer}.v150-switch button[aria-pressed=true]{background:var(--primary,#067a78);color:white}.v150-filter{flex:1 1 160px;max-width:360px}.v150-filter .field{min-height:43px;width:100%}
.v150-org-scroll{overflow:auto;padding:28px 20px;max-height:min(75vh,870px);border:1px solid var(--v150-stroke);border-radius:22px;background:linear-gradient(155deg,var(--v103-panel,#fff),var(--v150-soft))}.v150-org-roots,.v150-org-children{list-style:none;display:flex;justify-content:center;gap:22px;padding:0;margin:0;min-width:max-content}.v150-org-children{margin-top:37px;position:relative}.v150-org-children::before{content:"";position:absolute;inset-inline:0;top:-22px;border-top:2px solid var(--v150-stroke)}.v150-org-node{position:relative;display:flex;align-items:center;flex-direction:column}.v150-org-children>.v150-org-node::before{content:"";position:absolute;top:-22px;height:22px;width:2px;background:var(--v150-stroke)}.v150-org-node:has(.v150-org-children)>.v150-person-card::after{content:"";position:absolute;bottom:-38px;width:2px;height:38px;background:var(--v150-stroke);left:50%}
.v150-person-card{position:relative;display:flex;align-items:center;gap:12px;text-align:start;width:clamp(205px,19vw,275px);min-height:108px;border:1px solid var(--v150-stroke);border-radius:16px;padding:14px;background:var(--v103-panel,#fff);color:var(--v103-ink);font-family:inherit;box-shadow:0 10px 25px #102f4212;cursor:pointer;transition:box-shadow .15s,border-color .15s}.v150-person-card:hover{box-shadow:0 17px 32px #102f4226;border-color:var(--primary,#087f79)}.v150-person-image{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:13px;overflow:hidden;background:var(--v150-soft);color:var(--primary,#087f79)}.v150-person-image img{width:100%;height:100%;object-fit:cover}.v150-person-copy{display:grid;min-width:0;gap:4px;flex:1}.v150-person-copy strong{font-size:12px;line-height:1.7;overflow-wrap:anywhere}.v150-person-copy small{font-size:11px;color:var(--v103-muted)}.v150-person-role{font-size:9px;font-weight:750;color:var(--primary,#087f79)}
.v150-team-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.v150-team-list .v150-person-card{width:100%}.v150-empty{display:grid;justify-items:center;text-align:center;gap:14px;padding:48px 25px;border:1px dashed var(--v150-stroke);border-radius:22px;background:var(--v103-panel,#fff);color:var(--v103-muted)}.v150-empty strong{font-size:15px;color:var(--v103-ink)}.v150-empty p{font-size:12px;max-width:550px;line-height:2;margin:0}.v150-team-foot{display:flex;align-items:start;gap:12px;font-size:11px;color:var(--v103-muted);margin-top:18px;line-height:2}
.v150-person-dialog h2,.v150-drive h2{font-size:24px;margin:18px 0 5px}.v150-person-dialog p,.v150-drive p{line-height:2;overflow-wrap:anywhere}.v150-bio{white-space:pre-wrap}.v150-drive-url{padding:12px;border:1px solid var(--v150-stroke);border-radius:10px;font-size:11px;word-break:break-all;direction:ltr;text-align:left}
.v150-manage-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:20px}.v150-manage-head h3{font-size:18px;margin:0}.v150-manage-head p{font-size:11px;color:var(--v103-muted);line-height:2;margin:5px 0}.v150-manage-list{display:grid;gap:9px;margin-top:15px}.v150-manage-entry{padding:14px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--v150-stroke);border-radius:13px}.v150-manage-entry>span{display:flex;align-items:center;gap:10px}.v150-manage-entry strong,.v150-manage-entry small{display:block}.v150-manage-entry strong{font-size:12px}.v150-manage-entry small{font-size:10px;color:var(--v103-muted);line-height:1.8}
.v150-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v150-institution h3{font-size:14px;margin:24px 0 12px}.v150-flags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v150-flag{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--v150-stroke);border-radius:11px;font-size:11px;font-weight:800}.v150-flag input{width:17px;height:17px;accent-color:var(--primary,#087f79)}.v150-note{font-size:11px;line-height:2;color:var(--v103-muted)}
@media(max-width:1150px){body.v150 #v103Header .v150-toolbar{min-height:68px;padding-inline:12px}body.v150 #v103Header .v103-topnav{overflow-x:auto!important;overflow-y:hidden!important;min-height:47px!important;padding:4px 9px!important;}body.v150 #v103Header .v103-topnav:has(.v103-menu[open]){overflow:visible!important}body.v150 #v103Header .v103-megamenu{position:fixed!important;top:var(--v150-head-bottom,118px)!important;inset-inline:10px!important;width:calc(100vw - 20px)!important;max-height:65vh}.v150-flags{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){body.v150 #v103Header .v150-toolbar{min-height:65px!important;padding:0 10px;gap:3px}body.v150 #v103Header .v103-topnav{min-height:45px!important}body.v150 #v103Header .v103-topnav .v103-menu>summary,body.v150 #v103Header .v103-topnav .v103-toplink{font-size:10px!important}body.v150 #v103Header .v103-popover{top:60px!important;inset-inline:8px!important}body.v150 #v103Header .v103-megamenu{top:var(--v150-head-bottom,110px)!important}.v150-manage-head,.v150-manage-entry{flex-direction:column;align-items:stretch}.v150-form-grid,.v150-flags{grid-template-columns:1fr}.v150-org-scroll{padding:22px 10px}.v150-team-banner{align-items:flex-start;flex-direction:column}.v150-person-card{width:230px}}
@media(prefers-reduced-motion:reduce){.v150-person-card{transition:none}}
/* V200 — unified academic design language. CSS is deliberately layered over the maintained V150 UI. */
body.v200{
 --v200-navy:#092e40;--v200-ink:#12334a;--v200-teal:#087d83;--v200-gold:#d6ab63;
 --v200-line:color-mix(in srgb,var(--v103-ink,#1a3546) 14%,transparent);
 --v200-surface:var(--v103-panel,#fff);
 --v200-quiet:color-mix(in srgb,var(--primary,#087d83) 5%,var(--v103-panel,#fff));
 --v200-radius:20px;
}
body.v200 #v103Header.v150-integrated-header{background:color-mix(in srgb,var(--v200-surface) 97%,transparent)!important;box-shadow:0 8px 35px #09283a10!important;border-color:var(--v200-line)!important;backdrop-filter:blur(18px)}
body.v200 #v103Header .v150-toolbar{min-height:79px;border-bottom:1px solid var(--v200-line);gap:9px}
body.v200 #v103Header .v103-logo-symbol{background:linear-gradient(145deg,#073e53,#0b8c8a);border-radius:16px;box-shadow:0 6px 20px #077e8c25}
body.v200 #v103Header .v103-logo-type strong{font-size:clamp(12px,1.2vw,16px);font-weight:900;letter-spacing:-.4px}
body.v200 #v103Header .v103-logo-type small{font-size:10px;color:var(--v103-muted);letter-spacing:.1px}
body.v200 #v103Header .v103-search{border-radius:14px;border:1px solid var(--v200-line);background:var(--v200-quiet);box-shadow:none;min-height:43px}
body.v200 #v103Header .v103-end{gap:6px;min-width:0}
body.v200 #v103Header .v103-icon,body.v200 #v103Header .v103-avatar{border-radius:12px;transition:background .16s ease,transform .16s ease}
body.v200 #v103Header .v103-icon:hover,body.v200 #v103Header .v103-avatar:hover{background:var(--v200-quiet);transform:translateY(-1px)}
body.v200 #v103Header .v103-topnav{min-height:58px!important;gap:6px!important;justify-content:flex-start;}
body.v200 #v103Header .v103-topnav .v103-toplink,body.v200 #v103Header .v103-topnav .v103-menu>summary{border-radius:12px;height:44px;font-weight:800;transition:background .15s ease,color .15s ease}
body.v200 #v103Header .v103-topnav .v103-menu>summary:hover,body.v200 #v103Header .v103-topnav .v103-menu.is-active>summary,body.v200 #v103Header .v103-topnav .v103-menu[open]>summary{background:color-mix(in srgb,var(--primary,#087d83) 11%,transparent);color:var(--primary,#087d83)}
body.v200 #v103Header .v103-megamenu{border-radius:20px;border:1px solid var(--v200-line);box-shadow:0 30px 72px #052d4332}
body.v200 .main{max-width:1600px;width:100%;margin-inline:auto}
body.v200 .v52-home-hero{position:relative;overflow:hidden;border-radius:28px;box-shadow:0 28px 70px #103c5226}
body.v200 .v52-home-hero::before{content:"";pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at 9% 95%,#28a6b322,transparent 55%);mix-blend-mode:screen}
body.v200 .v52-tile,body.v200 .v52-pane,body.v200 .campus-block,body.v200 .surface{border-radius:var(--v200-radius);border-color:var(--v200-line)}
body.v200 .v52-tile:hover{transform:translateY(-2px);box-shadow:0 14px 30px #09384c13}
body.v200 :is(.v103-icon,.v103-toplink,.v103-route,.v200-choice,.v200-smart-entry,.v200-layout-trigger,.campus-mobile-dock button):focus-visible{outline:3px solid #d6a246;outline-offset:3px}
/* Accessible layout selector: a single anchor inside the same header toolbar. */
body.v200 .v200-layout-wrap{position:relative;flex:0 0 auto}
body.v200 .v200-layout-details>summary{list-style:none;cursor:pointer}
body.v200 .v200-layout-details>summary::-webkit-details-marker{display:none}
body.v200 .v200-layout-trigger{display:inline-flex;gap:6px;align-items:center;justify-content:center;min-height:42px;padding:0 11px;border:1px solid var(--v200-line);border-radius:12px;background:var(--v200-quiet);font-weight:800;color:var(--v103-ink);font-size:11px;white-space:nowrap}
body.v200 .v200-layout-details[open] .v200-layout-trigger{border-color:var(--primary,#087d83);background:color-mix(in srgb,var(--primary,#087d83) 12%,var(--v200-surface))}
body.v200 .v200-layout-panel{position:absolute;z-index:500;inset-inline-end:0;top:calc(100% + 13px);width:300px;max-width:calc(100vw - 20px);padding:14px;border-radius:20px;border:1px solid var(--v200-line);background:var(--v200-surface);box-shadow:0 24px 70px #06263b30;text-align:start}
body.v200 .v200-panel-title{font-size:12px;font-weight:900;margin:4px 6px 10px;color:var(--v103-ink)}
body.v200 .v200-choice{display:flex;align-items:center;gap:11px;width:100%;min-height:48px;border:1px solid transparent;border-radius:12px;padding:10px 12px;background:transparent;color:var(--v103-ink);font-family:inherit;font-size:12px;font-weight:800;text-align:start;cursor:pointer}
body.v200 .v200-choice span{flex:1}
body.v200 .v200-choice.selected,body.v200 .v200-choice:hover{background:var(--v200-quiet);border-color:color-mix(in srgb,var(--primary,#087d83) 25%,transparent);color:var(--primary,#087d83)}
body.v200 .v200-restore{margin-top:12px;padding:10px 12px;width:100%;border:1px solid var(--v200-line);border-radius:11px;background:transparent;color:var(--v103-ink);font-family:inherit;font-size:11px;font-weight:750;cursor:pointer}
body.v200 .v200-layout-panel small{display:block;font-size:10px;line-height:1.9;color:var(--v103-muted);padding:9px 6px 2px}
body.v200 .v200-smart-trigger{background:linear-gradient(135deg,color-mix(in srgb,var(--primary,#087d83) 13%,var(--v200-surface)),var(--v200-surface))!important;color:var(--primary,#087d83)}
body.v200 .v200-setting-layouts{border:1px solid var(--v200-line);border-radius:17px;padding:17px;margin-bottom:18px;background:var(--v200-quiet)}
body.v200 .v200-setting-layouts h3{font-size:16px;margin:0 0 8px}
body.v200 .v200-setting-layouts p{font-size:11px;line-height:1.9;margin:0 0 12px;color:var(--v103-muted)}
body.v200 .v200-layout-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body.v200 .v200-layout-cards .v200-choice{flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid var(--v200-line);min-height:100px;gap:8px}
/* Selected navigation really determines visible navigation, not merely its active color. */
body.v200[data-v200-layout="side"] #v103Header .v103-topnav,
body.v200[data-v200-layout="bottom"] #v103Header .v103-topnav{display:none!important}
body.v200[data-v200-layout="top"] .campus-mobile-dock,
body.v200[data-v200-layout="side"] .campus-mobile-dock{display:none!important}
body.v200[data-v200-layout="bottom"] .campus-mobile-dock{display:flex!important;position:fixed!important;inset-inline:clamp(10px,13vw,260px)!important;bottom:calc(env(safe-area-inset-bottom) + 12px)!important;width:auto!important;max-width:720px;margin-inline:auto;z-index:155!important;min-height:72px;height:auto!important;padding:7px!important;border:1px solid var(--v200-line);background:color-mix(in srgb,var(--v200-surface) 97%,transparent);border-radius:22px;box-shadow:0 18px 60px #07283e30;backdrop-filter:blur(18px);justify-content:space-around}
body.v200[data-v200-layout="bottom"] .campus-mobile-dock button{display:flex;gap:4px;flex:1;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:55px;border:0;border-radius:13px;background:transparent;color:var(--v103-muted);font-family:inherit;font-size:10px;font-weight:750;cursor:pointer}
body.v200[data-v200-layout="bottom"] .campus-mobile-dock button.active{color:var(--primary,#087d83);background:var(--v200-quiet)}
body.v200[data-v200-layout="bottom"] .main{padding-bottom:116px!important}
body.v200[data-v200-layout="side"] .v103-mobile-menu{display:inline-flex!important}
body.v200[data-v200-layout="side"] #sidebar{border-inline-end:1px solid var(--v200-line)}
/* Smart explorer: search index limited to published internal navigation and loaded courses. */
.v200-smart{max-width:860px;margin:auto}
.v200-smart-heading{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.v200-smart-badge{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;border-radius:19px;color:#fff;background:linear-gradient(135deg,#0d6577,#0c9895);box-shadow:0 12px 25px #0d6d7c32}
.v200-smart-heading h2{font-size:clamp(18px,3vw,25px);margin:0 0 6px;color:var(--v103-ink)}
.v200-smart-heading p{font-size:12px;margin:0;line-height:1.8;color:var(--v103-muted)}
.v200-smart-query{width:100%;height:55px!important;font-size:14px!important;border-radius:14px!important;padding-inline:18px!important}
.v200-smart-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:17px 0;max-height:55vh;overflow:auto}
.v200-smart-entry{display:flex;align-items:center;gap:12px;text-align:start;min-height:81px;border:1px solid var(--v200-line);border-radius:15px;padding:13px;background:var(--v200-surface);color:var(--v103-ink);font-family:inherit;cursor:pointer}
.v200-smart-entry>span{display:grid;flex:1;gap:5px;min-width:0}.v200-smart-entry strong{font-size:12px}.v200-smart-entry small{font-size:10px;line-height:1.7;color:var(--v103-muted)}
.v200-smart-entry.selected,.v200-smart-entry:hover{border-color:var(--primary,#087d83);background:var(--v200-quiet)}
.v200-smart-empty{grid-column:1/-1;padding:26px;font-size:12px;color:var(--v103-muted);text-align:center}
.v200-smart-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid var(--v200-line);padding-top:16px}
.v200-smart-foot small{max-width:430px;font-size:10px;line-height:1.8;color:var(--v103-muted)}
@media(max-width:1130px){body.v200 #v103Header .v103-search{width:48px;padding-inline:0;justify-content:center}body.v200 #v103Header .v103-search span,body.v200 #v103Header .v103-search kbd{display:none}}
@media(max-width:750px){body.v200 #v103Header .v150-toolbar{min-height:64px!important;padding:5px 10px!important;gap:3px!important}body.v200 #v103Header .v103-logo-type small{display:none}body.v200 #v103Header .v103-logo-type strong{font-size:11px;max-width:144px}body.v200 .v200-layout-trigger{padding:0;min-width:37px;width:37px;height:37px;min-height:37px}body.v200 .v200-layout-trigger span,body.v200 .v200-layout-trigger svg:last-child{display:none}body.v200 #v103Header .v103-end{gap:0}body.v200 .v200-smart-results{grid-template-columns:1fr}body.v200[data-v200-layout="bottom"] .campus-mobile-dock{inset-inline:9px!important;max-width:none;height:67px!important;min-height:67px}body.v200 #v103Header .v103-topnav{padding-inline:8px!important}body.v200 .v200-layout-panel{inset-inline-end:-74px}body.v200 .v200-layout-cards{grid-template-columns:1fr}body.v200 .v200-layout-cards .v200-choice{min-height:52px;flex-direction:row}body.v200 #v103Header .v103-megamenu{top:var(--v150-head-bottom,112px)!important}}
@media(max-width:410px){body.v200 #v103Header .v103-logo-type strong{max-width:118px}body.v200 .v200-smart-trigger{display:none!important}body.v200 #v103Header .v103-end{flex-shrink:0}body.v200 #v103Header .v103-avatar{width:34px;min-width:34px}}
@media(prefers-reduced-motion:reduce){body.v200 *{scroll-behavior:auto!important}body.v200 .v103-icon,body.v200 .v52-tile{transition:none!important}}
@media print{body.v200 .v200-layout-wrap,body.v200 .v200-smart-trigger,body.v200 .campus-mobile-dock{display:none!important}}

/* De-duplicate toolbar controls. Less-used tools remain in the working “More” menu. */
body.v200 #v103Header .v103-help,
body.v200 #v103Header .v103-lang,
body.v200 #v103Header [data-v103-action="theme"],
body.v200 #v103Header .v105-quick-trigger{display:none!important}
/* V300 visual system: a coherent design and native, fully functional invisible scrollbars. */
:root{--v300-teal:#087e82;--v300-deep:#092a41;--v300-azure:#3e86b7;--v300-ambient:rgba(11,83,104,.12);--v300-glass:rgba(255,255,255,.9);--v300-hairline:rgba(52,92,113,.16);--v300-soft-shadow:0 16px 46px rgba(7,44,66,.10);--v300-xl:26px}
/* Do not use overflow:hidden on scroll containers: it disables user scrolling. */
/* Keep native root scrollbars. V300 formerly hid every document scroller. */
html{scroll-behavior:smooth;scroll-padding-top:130px}
body.v300{--v200-surface:var(--surface,#fff);--v200-radius:20px;background:radial-gradient(ellipse at 3% 2%,rgba(38,144,159,.08),transparent 39%),linear-gradient(180deg,#f4f8fd 0%,#f8fafc 75%);letter-spacing:.003em}
body.v300.dark{--v300-glass:rgba(13,32,49,.93);--v300-hairline:rgba(190,213,226,.18);--v300-soft-shadow:0 18px 60px rgba(0,0,0,.18);background:linear-gradient(135deg,#101c2a,#0a1b27)}
body.v300 .v103-appbar{border-bottom:1px solid var(--v300-hairline)!important;background:var(--v300-glass)!important;backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);box-shadow:0 6px 30px rgba(13,59,84,.07)}
body.v300 #v103Header .v150-toolbar{padding-inline:clamp(12px,2vw,35px)!important;min-height:70px!important}
body.v300 #v103Header .v103-logo-symbol{border-radius:18px!important;box-shadow:0 7px 18px rgba(10,106,118,.21);background:linear-gradient(145deg,#0b8190,#0b5268)!important}
body.v300 #v103Header .v103-logo-type strong{font-weight:900!important;letter-spacing:-.025em}
body.v300 #v103Header .v103-end{gap:7px!important}
body.v300 #v103Header .v103-end :is(button,summary){transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
body.v300 #v103Header .v103-end :is(button,summary):hover{transform:translateY(-1px)}
body.v300 #v103Header .v103-topnav{border-top:1px solid var(--v300-hairline);min-height:58px!important;padding-block:4px!important;background:transparent!important}
body.v300 #v103Header .v103-toplink,body.v300 #v103Header .v103-menu>summary{border:1px solid transparent!important;border-radius:13px!important;letter-spacing:0!important;font-size:12px}
body.v300 #v103Header .v103-toplink.is-active,body.v300 #v103Header .v103-menu.is-active>summary{background:color-mix(in srgb,var(--primary,#087e82) 11%,transparent)!important;border-color:color-mix(in srgb,var(--primary,#087e82) 23%,transparent)!important}
body.v300 #v103Header .v103-megamenu{border:1px solid var(--v300-hairline);border-radius:22px;box-shadow:0 32px 86px rgba(7,34,51,.19);overflow:auto;overscroll-behavior:contain}
body.v300 .main{max-width:1570px!important;min-width:0;padding-inline:clamp(10px,2.3vw,40px)!important}
body.v300 .v52-home-hero{border-radius:30px!important;box-shadow:0 30px 74px rgba(7,44,66,.20);isolation:isolate}
body.v300 .v52-home-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 78% 15%,rgba(18,181,177,.13),transparent 52%)}
body.v300 :is(.v52-tile,.v52-pane,.campus-block,.surface,.card){border-radius:19px;box-shadow:0 5px 22px rgba(6,43,67,.035);border-color:var(--v300-hairline)}
body.v300 :is(.v52-tile,.campus-block){transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
body.v300 :is(.v52-tile,.campus-block):hover{transform:translateY(-3px);box-shadow:var(--v300-soft-shadow);border-color:color-mix(in srgb,var(--primary,#087e82) 28%,var(--v300-hairline))}
body.v300 button svg,body.v300 a svg{flex-shrink:0;stroke-width:1.8;overflow:visible}
body.v300 .nav svg,body.v300 .campus-mobile-dock button svg{vertical-align:middle;margin-inline-end:4px}
body.v300 .v300-hub-button{border:1px solid color-mix(in srgb,var(--primary,#087e82) 28%,transparent)!important;background:linear-gradient(135deg,rgba(15,148,143,.11),rgba(61,121,176,.07))!important;color:var(--primary,#087e82)}
body.v300 :is(.v300-hub-button,.v300-context button,.v300-command-item):focus-visible{outline:3px solid #e7a73b;outline-offset:3px}
/* Contextual next step cards contain only routes which have passed visibility checks. */
body.v300 .v300-context{display:flex;align-items:center;gap:22px;justify-content:space-between;margin:16px 0 22px;padding:17px 19px;border:1px solid var(--v300-hairline);border-radius:21px;background:var(--v300-glass);box-shadow:0 11px 30px rgba(10,50,75,.05)}
body.v300 .v300-context-heading{display:flex;align-items:center;gap:11px;min-width:225px}
body.v300 .v300-context-heading>div{display:grid;gap:5px}
body.v300 .v300-context-heading strong{font-size:13px;color:var(--v103-ink)}
body.v300 .v300-context-heading small{font-size:10px;color:var(--v103-muted);line-height:1.6}
body.v300 .v300-context-symbol,body.v300 .v300-command-symbol{width:40px;height:40px;display:grid;place-items:center;color:#fff;border-radius:13px;background:linear-gradient(145deg,#0d7a84,#14486b)}
body.v300 .v300-context-links{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
body.v300 .v300-context-links button{display:flex;gap:9px;align-items:center;min-height:52px;border:1px solid var(--v300-hairline);border-radius:14px;background:var(--v200-surface,#fff);color:var(--v103-ink);text-align:start;font-family:inherit;cursor:pointer;padding:7px 11px;transition:.18s ease}
body.v300 .v300-context-links button:hover{background:color-mix(in srgb,var(--primary,#087e82) 8%,var(--v200-surface,#fff));border-color:var(--primary,#087e82);transform:translateY(-2px)}
body.v300 .v300-context-links button span{display:grid;gap:3px}
body.v300 .v300-context-links button strong{font-size:11px;white-space:nowrap}
body.v300 .v300-context-links button small{font-size:9px;color:var(--v103-muted);max-width:155px}
/* Native scrollbar remains hidden in every dialog, table, slider, sidebar, and nested content. */
body.v300 :is(.v103-megamenu,.v200-smart-results,.v300-command-results,.modal,.modal-body,#sidebar,#v103Sidebar,.main,.v103-topnav){overscroll-behavior:contain}
body.v300 .v300-command{width:min(690px,100%);margin:auto}
body.v300 .v300-command-head{display:flex;align-items:center;gap:15px;margin-bottom:20px}
body.v300 .v300-command-symbol{width:53px;height:53px;border-radius:16px}
body.v300 .v300-command-head h2{font-size:clamp(18px,3vw,25px);margin:0 0 4px;color:var(--v103-ink)}
body.v300 .v300-command-head p{font-size:11px;color:var(--v103-muted);margin:0;line-height:1.6}
body.v300 .v300-command-input{font-size:14px!important;min-height:52px!important;border-radius:14px!important;padding-inline:16px!important}
body.v300 .v300-command-results{display:grid;gap:8px;max-height:min(52vh,410px);overflow:auto;overscroll-behavior:contain;margin:15px 0}
body.v300 .v300-command-item{display:flex;align-items:center;gap:11px;padding:11px 14px;min-height:66px;text-align:start;font-family:inherit;background:var(--v200-surface,#fff);border:1px solid var(--v300-hairline);border-radius:14px;cursor:pointer;color:var(--v103-ink)}
body.v300 .v300-command-item span{flex:1;display:grid;gap:4px;min-width:0}
body.v300 .v300-command-item strong{font-size:12px}
body.v300 .v300-command-item small{font-size:10px;color:var(--v103-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.v300 .v300-command-item:hover,body.v300 .v300-command-item.selected{border-color:var(--primary,#087e82);background:color-mix(in srgb,var(--primary,#087e82) 8%,var(--v200-surface,#fff))}
body.v300 .v300-command-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--v300-hairline);padding-top:12px}
body.v300 .v300-command-footer small{font-size:10px;color:var(--v103-muted);line-height:1.6}
body.v300 .v300-command-footer kbd{white-space:nowrap;color:var(--v103-muted);font-size:10px}
body.v300 .v300-command-empty{display:grid;gap:12px;padding:19px;text-align:center;font-size:12px;color:var(--v103-muted)}
@media(max-width:1020px){body.v300 .v300-context{flex-direction:column;align-items:stretch}body.v300 .v300-context-links{justify-content:stretch}body.v300 .v300-context-links button{flex:1;min-width:180px}}
@media(max-width:750px){body.v300 #v103Header .v150-toolbar{min-height:64px!important}body.v300 #v103Header .v103-end{gap:3px!important}body.v300 .v300-context{margin:12px 0 18px;padding:12px}body.v300 .v300-context-links{display:grid;grid-template-columns:1fr 1fr}body.v300 .v300-context-links button{min-width:0}body.v300 .v300-context-links button svg:last-child{display:none}body.v300 .v300-context-links button small{display:none}body.v300 .v300-context-links button strong{font-size:10px;white-space:normal}body.v300 #v103Header .v103-megamenu{max-height:calc(100dvh - 120px);overflow-y:auto}}
@media(max-width:395px){body.v300 .v300-context-links{grid-template-columns:1fr}body.v300 #v103Header .v300-hub-button{min-width:34px;width:34px}body.v300 .v300-command-footer kbd{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.v300 *,body.v300 *::before,body.v300 *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{body.v300 .v300-hub-button,body.v300 .v300-context{display:none!important}}

/* Single primary command affordance; the legacy smart explorer remains in More. */
body.v300 #v103Header [data-v200-action="smart"]{display:none!important}
body.v300 .v300-presets{margin:0 0 18px;padding:17px;border-radius:18px;border:1px solid var(--v300-hairline);background:color-mix(in srgb,var(--primary,#087e82) 5%,var(--v200-surface,#fff))}
body.v300 .v300-presets>strong{font-size:14px;color:var(--v103-ink)}
body.v300 .v300-presets>p{font-size:11px;line-height:1.8;color:var(--v103-muted);margin:7px 0 12px}
body.v300 .v300-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
body.v300 .v300-preset-grid button{display:flex;align-items:center;gap:11px;text-align:start;border:1px solid var(--v300-hairline);border-radius:13px;padding:11px;min-width:0;min-height:69px;background:var(--v200-surface,#fff);color:var(--v103-ink);font-family:inherit;cursor:pointer}
body.v300 .v300-preset-grid button:hover,body.v300 .v300-preset-grid button:focus-visible{border-color:var(--primary,#087e82);background:color-mix(in srgb,var(--primary,#087e82) 8%,var(--v200-surface,#fff))}
body.v300 .v300-preset-grid button span{display:grid;gap:4px}
body.v300 .v300-preset-grid button strong{font-size:11px}
body.v300 .v300-preset-grid button small{font-size:10px;line-height:1.6;color:var(--v103-muted)}
@media(max-width:650px){body.v300 .v300-preset-grid{grid-template-columns:1fr}}
/* V350 — integrated design, non-obstructing sidebar, privacy-aware owner controls. */
body.v350{--v350-ink:#123c4a;--v350-accent:#008e93;--v350-line:color-mix(in srgb,var(--v103-ink,#14384a) 12%,transparent);--v350-surface:var(--v103-panel,#fff)}
body.v350 #v103Header{border-radius:0 0 21px 21px!important;box-shadow:0 15px 40px #0b3b4b17!important}
body.v350 #v103Header .v150-toolbar{background:linear-gradient(145deg,color-mix(in srgb,var(--v350-surface) 99%,transparent),color-mix(in srgb,var(--primary,#087d83) 4%,var(--v350-surface)))}
body.v350 #v103Header .v103-logo-symbol{border-radius:17px;background:linear-gradient(145deg,#075b72,#11a699);box-shadow:0 9px 26px #05657622}
/* The toolbar contains just a navigation icon. Descriptions appear within the opened menu. */
body.v350 #v200HeaderLayout,body.v350 .v200-layout-trigger{width:43px!important;min-width:43px!important;min-height:43px!important;gap:0!important;padding:0!important;border-radius:14px!important}
body.v350 .v200-layout-trigger span,body.v350 .v200-layout-trigger svg:last-child{display:none!important}
body.v350 #v103Header .v103-topnav{overflow-x:auto!important;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;}

body.v350 #v103Header .v103-topnav .v103-menu{scroll-snap-align:start}
body.v350 #v103Header .v103-megamenu{max-height:min(70dvh,600px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 26px 80px #061f3430;border-radius:19px}
body.v350 .v103-megamenu :is(button,a):focus-visible{outline:3px solid #cea458;outline-offset:2px}
/* Desktop side mode uses a genuine document-grid column, not a drawer overlay. */
@media(min-width:1151px){
 body.v350[data-v200-layout="side"] .layout{display:grid!important;grid-template-columns:minmax(244px,275px) minmax(0,1fr)!important;align-items:start;gap:0}
 body.v350[data-v200-layout="side"] #sidebar{display:block!important;position:sticky!important;inset:auto!important;top:0!important;height:100dvh!important;max-height:100dvh;transform:none!important;opacity:1!important;visibility:visible!important;width:auto!important;overflow-y:auto;z-index:30!important;box-shadow:none!important}
 body.v350[data-v200-layout="side"] .workspace{min-width:0!important;width:auto!important;grid-column:auto;overflow:clip}
 body.v350[data-v200-layout="side"] #scrim{display:none!important}
 body.v350[data-v200-layout="side"] .v103-mobile-menu{display:none!important}
 body.v350:not([data-v200-layout="side"]) #sidebar:not(.open){display:none!important}
 body.v350:not([data-v200-layout="side"]) .layout{display:block!important}
}
@media(max-width:1150px){
 body.v350 #sidebar{max-width:min(84vw,340px)!important;z-index:1200!important;box-shadow:0 0 56px #05263833!important}
 body.v350 #sidebar:not(.open){pointer-events:none}
 body.v350 #sidebar.open{visibility:visible!important}
 body.v350 .workspace{min-width:0!important}
 body.v350[data-v200-layout="side"] .v103-mobile-menu{display:inline-flex!important}
}
body.v350 :is(.v52-tile,.surface,.v52-pane,.campus-block){border:1px solid var(--v350-line);box-shadow:0 10px 42px #11384b0a;transition:box-shadow .16s ease,transform .16s ease}
body.v350 .v52-tile:hover{box-shadow:0 20px 55px #0c40501a;transform:translateY(-3px)}
.v350-storage{max-width:1330px;margin:28px auto;display:grid;gap:20px}
.v350-storage-hero{padding:26px;border-radius:25px;background:linear-gradient(115deg,#073d55,#076b73 85%,#08918a);color:white;display:flex;align-items:center;gap:18px}
.v350-storage-hero .v350-storage-icon{padding:16px;border-radius:19px;background:#ffffff24;flex:none}.v350-storage-hero>div{flex:1;min-width:0}.v350-storage-hero h2{font-size:clamp(19px,2.6vw,29px);margin:3px 0 8px}.v350-storage-hero p{margin:0;opacity:.86;font-size:12px;line-height:1.8}.v350-storage-hero small{font-size:10px;letter-spacing:1px}.v350-storage-hero .btn{border:1px solid #ffffff65;background:#ffffff16;color:white}
.v350-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.v350-stats article{display:grid;gap:6px;padding:21px;border:1px solid var(--v350-line);border-radius:19px;background:var(--v350-surface)}.v350-stats article strong{font-size:25px;color:var(--primary,#087d83)}.v350-stats article span{font-size:11px;opacity:.75}
.v350-panel{padding:24px;border:1px solid var(--v350-line);border-radius:23px;background:var(--v350-surface);box-shadow:0 15px 40px #07324b08}.v350-panel-head{margin-bottom:19px}.v350-panel h3{font-size:17px;margin:0 0 9px;display:flex;align-items:center;gap:8px}.v350-panel p{font-size:12px;line-height:1.85;opacity:.85}
.v350-inline-form,.v350-grid-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:13px 0 20px}.v350-inline-form label,.v350-grid-form label{display:grid;gap:5px;font-size:11px;font-weight:700}.v350-grid-form .v350-switch{display:flex;align-items:center;gap:8px}.v350-grid-form .v350-switch input{width:18px;height:18px}.v350-inline-form .btn,.v350-grid-form>.btn{align-self:end;min-height:45px}
.v350-account-list,.v350-table-list{display:grid;gap:9px}.v350-account-list article,.v350-table-list article{display:flex;align-items:center;gap:12px;min-width:0;padding:13px;border:1px solid var(--v350-line);border-radius:16px}.v350-account-list article>div:nth-child(2){flex:1;min-width:0;display:grid;gap:5px}.v350-account-list small,.v350-table-list small{opacity:.75;overflow-wrap:anywhere;font-size:11px}.v350-account-actions{display:flex;gap:6px;flex-wrap:wrap}.v350-provider{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:12px;background:color-mix(in srgb,var(--primary,#087d83) 10%,transparent)}.v350-table-list article>span{flex:1;overflow-wrap:anywhere}.v350-empty{padding:16px;background:color-mix(in srgb,var(--primary,#087d83) 6%,transparent);border-radius:13px;font-size:12px}.v350-foot,.v350-safety{font-size:11px;line-height:1.9}.v350-safety{display:flex;gap:10px;padding:18px;border:1px solid var(--v350-line);border-radius:15px}.v350-settings-entry{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:17px;border-radius:16px;border:1px solid var(--v350-line);background:color-mix(in srgb,var(--primary,#087d83) 5%,transparent);margin-bottom:12px}.v350-settings-entry strong{font-size:13px}.v350-settings-entry p{font-size:11px;line-height:1.7;margin:4px 0 0}
.v350-cloud-upload{display:flex!important;align-items:center;gap:10px;font-size:12px}.v350-cloud-upload input{min-width:18px;min-height:18px}.v350-news-interests{border:0;padding:7px 0;margin:7px 0}.v350-news-interests legend{font-size:12px}.v350-news-interests label{display:inline-flex;align-items:center;gap:5px;font-size:10px;margin-inline-end:9px}.v350-news-interests label input{width:15px;height:15px}.v350-news-disclosure{font-size:10px;line-height:1.7;opacity:.8}
body.v350 .portal-status,body.v350 .v103-status{display:none!important}body.v350.is-owner .portal-status:not([hidden]){display:inline-flex!important}
@media(max-width:840px){.v350-inline-form,.v350-grid-form{grid-template-columns:repeat(2,minmax(0,1fr))}.v350-stats{gap:7px}.v350-storage-hero{padding:18px}.v350-storage-hero .btn{font-size:11px}}
@media(max-width:540px){.v350-inline-form,.v350-grid-form{grid-template-columns:1fr}.v350-storage-hero{flex-wrap:wrap}.v350-storage-hero .v350-storage-icon{display:none}.v350-storage-hero .btn{width:100%}.v350-panel{padding:15px}.v350-stats article{padding:12px}.v350-account-list article{flex-wrap:wrap}.v350-account-actions{width:100%}.v350-stats article strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){body.v350 :is(.v52-tile,.surface,.v52-pane,.campus-block){transition:none!important}}
@media print{.v350-storage,.v350-settings-entry,.v350-news-interests{display:none!important}}

/* Hide generic site-data exports for visitors; actual private export APIs remain owner-verified on the server. */
body.v350:not(.is-owner) :is(button[onclick^="v51Export"],button[onclick^="v52Export"],button[onclick^="downloadRIS"],button[onclick="window.print()"]){display:none!important}

.v350-home-explore{margin:22px 0 34px;padding:clamp(18px,3vw,30px);border:1px solid var(--v350-line);background:var(--v350-surface);border-radius:26px;box-shadow:0 18px 48px #0b3e4a0c}.v350-home-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.v350-home-heading small{font-size:10px;letter-spacing:1.5px;font-weight:850;color:var(--primary,#087d83)}.v350-home-heading h2{font-size:clamp(19px,2.3vw,28px);margin:5px 0 6px}.v350-home-heading p{font-size:12px;line-height:1.8;opacity:.75;margin:0}.v350-home-medallion{display:grid;place-items:center;width:54px;height:54px;flex:none;border-radius:17px;background:color-mix(in srgb,var(--primary,#087d83) 11%,transparent)}.v350-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.v350-home-link{display:flex;align-items:center;gap:11px;min-width:0;min-height:86px;text-align:start;font-family:inherit;background:color-mix(in srgb,var(--primary,#087d83) 3%,var(--v350-surface));border:1px solid var(--v350-line);color:var(--v103-ink);border-radius:17px;padding:14px;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}.v350-home-link:hover{background:color-mix(in srgb,var(--primary,#087d83) 8%,var(--v350-surface));box-shadow:0 12px 26px #00374610}.v350-home-number{align-self:start;font-size:10px;font-weight:800;opacity:.45}.v350-home-glyph{display:grid;place-items:center;color:var(--primary,#087d83);width:38px;height:38px;border-radius:13px;background:color-mix(in srgb,var(--primary,#087d83) 10%,transparent);flex:none}.v350-home-link>span:nth-last-child(2){flex:1;display:grid;gap:5px;min-width:0}.v350-home-link strong{font-size:12px}.v350-home-link small{font-size:10px;opacity:.7;line-height:1.6}
body.v350 .v52-story{overflow:hidden;border-radius:20px;position:relative}body.v350 .v52-story-cover{aspect-ratio:1.95;min-height:155px}body.v350 .v52-story-cover img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}body.v350 .v52-story:hover img{transform:scale(1.025)}
body.v350 #v103Header .v103-logo-symbol svg{width:32px;height:32px;color:#fff}
@media(max-width:880px){.v350-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:510px){.v350-home-grid{grid-template-columns:1fr}.v350-home-link{min-height:74px}.v350-home-medallion{display:none}}

.v350-student-auth{display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:100%;padding:12px;border:1px solid var(--border,#d8e4e9);border-radius:14px}.v350-student-auth span{font-size:.85rem}.v350-student-auth .v350-gis{max-width:100%}
/* V500: structural refinement and accessible route continuity. */
body.v500{--v500-ink:var(--v103-ink,#163245);--v500-brand:var(--primary,#087e8c);--v500-border:color-mix(in srgb,var(--v500-brand) 17%,var(--v200-line,#dbe6eb));--v500-wash:color-mix(in srgb,var(--v500-brand) 6%,var(--v200-surface,#fff));}
body.v500 #v103Header.v150-integrated-header{border-radius:0 0 20px 20px!important;border-bottom:1px solid var(--v500-border)!important;background:color-mix(in srgb,var(--v200-surface,#fff) 96%,var(--v500-wash))!important;box-shadow:0 12px 34px #092c3d13!important}
body.v500 #v103Header .v150-toolbar{border-bottom:1px solid var(--v500-border)!important}
body.v500 #v103Header .v103-toplink,body.v500 #v103Header .v103-menu>summary{transition:background .16s ease,box-shadow .16s ease,transform .16s ease;border-radius:14px!important}
body.v500 #v103Header .v103-toplink:hover,body.v500 #v103Header .v103-menu>summary:hover{box-shadow:inset 0 0 0 1px var(--v500-border);transform:translateY(-1px)}
body.v500 #app{min-width:0;scroll-margin-top:calc(var(--v150-head-bottom,130px) + 8px)}
body.v500 .v500-page-guide{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 24px;padding:13px 16px;border-radius:18px;border:1px solid var(--v500-border);background:var(--v500-wash);box-shadow:0 7px 24px #092f3c0b}
body.v500 .v500-page-path{display:flex;align-items:center;gap:11px;min-width:0;flex:1}
body.v500 .v500-page-path small{display:block;font-size:10px;opacity:.68;margin:0 0 4px}
body.v500 .v500-page-path strong{display:block;font-size:13px;font-weight:850;color:var(--v500-ink);overflow-wrap:anywhere}
body.v500 .v500-page-emblem{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;color:var(--v500-brand);border-radius:13px;background:var(--v200-surface,#fff);border:1px solid var(--v500-border)}
body.v500 .v500-page-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
body.v500 .v500-page-actions button{display:inline-flex;gap:7px;align-items:center;justify-content:center;padding:10px 12px;min-height:40px;border:1px solid var(--v500-border);border-radius:12px;background:var(--v200-surface,#fff);color:var(--v500-ink);font-family:inherit;font-weight:800;font-size:11px;cursor:pointer;transition:background .15s ease,transform .15s ease}
body.v500 .v500-page-actions button:hover{background:var(--v500-wash);transform:translateY(-1px)}
body.v500 .v500-page-actions .v500-home{background:var(--v500-brand);color:white}
body.v500 .v500-page-actions button:focus-visible{outline:3px solid #d9a64c;outline-offset:2px}
body.v500 .v52-home-hero{border-radius:28px;box-shadow:0 30px 66px #042c3a27!important}
body.v500 .v350-home-link,body.v500 .v52-tile,body.v500 .portal-course,body.v500 .v103-route{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
body.v500 .v350-home-link:hover,body.v500 .v52-tile:hover{transform:translateY(-3px);box-shadow:0 20px 50px #10354a20}
body.v500[data-v200-layout="side"] .workspace{min-width:0}
body.v500 #topNavigation,body.v500 #v103Header .v103-topnav{}

@media(max-width:660px){body.v500 .v500-page-guide{padding:11px;margin-bottom:17px;gap:10px}body.v500 .v500-page-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}body.v500 .v500-page-actions button{min-width:0;padding:9px 5px}body.v500 .v500-page-path strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){body.v500 .v500-page-actions button,body.v500 #v103Header .v103-toplink{transition:none!important;transform:none!important}}
@media print{body.v500 .v500-page-guide{display:none!important}}

body.v500 .v500-resume{display:flex;align-items:center;gap:16px;padding:18px 20px;margin:0 0 24px;border-radius:20px;border:1px solid var(--v500-border);background:linear-gradient(110deg,var(--v500-wash),var(--v200-surface,#fff));box-shadow:0 12px 30px #092d4010}body.v500 .v500-resume-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--v500-brand);color:#fff;flex-shrink:0}body.v500 .v500-resume>div:nth-child(2){flex:1;min-width:0}body.v500 .v500-resume small{font-size:10px;font-weight:750;color:var(--v500-brand)}body.v500 .v500-resume h2{font-size:16px;margin:5px 0;color:var(--v500-ink)}body.v500 .v500-resume p{font-size:11px;color:var(--v103-muted);margin:0}body.v500 .v500-resume button{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;font-family:inherit;background:var(--v500-brand);border:0;color:#fff;font-weight:850;border-radius:12px;padding:13px 17px;cursor:pointer}body.v500 .v500-resume button:focus-visible{outline:3px solid #d9a64c;outline-offset:3px}@media(max-width:550px){body.v500 .v500-resume{flex-wrap:wrap;gap:12px;padding:14px}body.v500 .v500-resume button{width:100%}}
/* V600 | coherent icon navigation, top-layer dropdowns, and responsive grid-safe rail */
body.v600{--v600-line:color-mix(in srgb,var(--primary) 22%,var(--border));--v600-elev:0 18px 50px rgba(5,34,51,.14);--v600-radius:17px}
body.v600 #v103Header.v150-integrated-header{border-radius:0 0 23px 23px!important;box-shadow:0 12px 32px #072d4316!important;isolation:visible}
body.v600 #v103Header .v103-topnav{align-items:center;gap:6px;padding-block:7px;overscroll-behavior-x:contain;scroll-padding-inline:8px;}

body.v600 #v103Header .v103-toplink,body.v600 #v103Header .v103-menu>summary{width:46px;min-width:46px;height:44px;padding:0!important;display:inline-flex;justify-content:center;align-items:center;gap:0;background:transparent;border:1px solid transparent;border-radius:13px;transition:background .15s,border-color .15s,transform .15s;color:var(--v103-ink);touch-action:manipulation}
body.v600 #v103Header .v103-menu>summary>span,body.v600 #v103Header .v103-toplink>span,body.v600 #v103Header .v103-menu>summary>svg:last-child{display:none!important}
body.v600 #v103Header .v103-menu>summary svg:first-child,body.v600 #v103Header .v103-toplink svg:first-child{width:22px;height:22px;stroke-width:1.8;flex:none}
body.v600 #v103Header .v103-menu>summary:hover,body.v600 #v103Header .v103-toplink:hover,body.v600 #v103Header .v103-menu[open]>summary,body.v600 #v103Header .is-active>summary,body.v600 #v103Header .v103-toplink.is-active{background:var(--soft);border-color:var(--v600-line);color:var(--primary);transform:none}
body.v600 #v103Header .v103-topnav :is(button,summary):focus-visible{outline:3px solid #d9aa54;outline-offset:2px}
/* popover is in the browser top layer; it can never be clipped by a horizontally scrolling navbar */
body.v600 .v103-megamenu[popover]{position:fixed!important;inset:auto;box-sizing:border-box;min-width:0!important;margin:0!important;z-index:9999!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;max-height:min(590px,calc(100dvh - 18px));border-radius:20px!important;background:var(--v103-panel,var(--panel))!important;border:1px solid var(--v600-line)!important;box-shadow:var(--v600-elev)!important;padding:15px!important;animation:v600-drop-in .14s ease-out;}
body.v600 .v103-megamenu[popover]:not(:popover-open){display:none!important}

body.v600 .v103-megamenu .v103-mega-head{padding:4px 5px 12px;margin-bottom:7px;border-bottom:1px solid var(--v600-line)}
body.v600 .v103-megamenu .v103-route{min-height:57px;border-radius:13px;transition:background .15s,border-color .15s}
body.v600 .v103-megamenu .v103-route:hover,body.v600 .v103-megamenu .v103-route:focus-visible{background:var(--soft);color:var(--primary)}
@keyframes v600-drop-in{from{opacity:.65;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
/* Rail expands inside layout, never on top of the desktop content. */
@media(min-width:1051px){
 body.v600[data-v200-layout=side] .layout{grid-template-columns:82px minmax(0,1fr)!important;transition:grid-template-columns .2s ease}
 body.v600[data-v200-layout=side][data-v600-rail=expanded] .layout{grid-template-columns:272px minmax(0,1fr)!important}
 body.v600[data-v200-layout=side] .side{width:auto!important;max-width:none!important;min-width:0!important;overflow:hidden}
 body.v600[data-v200-layout=side] #v103Sidebar .v103-side-heading{padding:16px 9px;justify-content:center;flex-wrap:wrap}
 body.v600[data-v200-layout=side] #v103Sidebar .v103-side-heading>div,body.v600[data-v200-layout=side] #v103Sidebar .v103-side-section>h2,body.v600[data-v200-layout=side] #v103Sidebar .v103-route>span,body.v600[data-v200-layout=side] #v103Sidebar .v103-side-status{display:none!important}
 body.v600[data-v200-layout=side] #v103Sidebar .v103-route{display:flex;justify-content:center;align-items:center;padding:12px 8px;min-height:48px;margin-inline:auto;width:54px}
 body.v600[data-v200-layout=side] #v103Sidebar .v103-route>svg{width:22px;height:22px;flex-shrink:0}
 body.v600[data-v200-layout=side][data-v600-rail=expanded] #v103Sidebar .v103-side-heading{justify-content:space-between;flex-wrap:nowrap;padding:20px 13px}
 body.v600[data-v200-layout=side][data-v600-rail=expanded] #v103Sidebar .v103-side-heading>div,body.v600[data-v200-layout=side][data-v600-rail=expanded] #v103Sidebar .v103-side-section>h2,body.v600[data-v200-layout=side][data-v600-rail=expanded] #v103Sidebar .v103-route>span{display:flex!important}
 body.v600[data-v200-layout=side][data-v600-rail=expanded] #v103Sidebar .v103-route{width:100%;justify-content:flex-start;gap:10px;padding:10px 12px}
 body.v600[data-v200-layout=side][data-v600-rail=expanded] #v103Sidebar .v103-side-section>h2{align-items:center}
}
body.v600 #v103Sidebar .v600-rail-toggle{display:flex;align-items:center;justify-content:center;width:39px;height:39px;flex:none;color:#e6fffc;border:1px solid #ffffff46;background:#ffffff16;border-radius:12px;cursor:pointer}
body.v600 #v103Sidebar .v600-rail-toggle:hover{background:#ffffff35}
body.v600[data-v200-layout=top] #v103Sidebar .v600-rail-toggle,body.v600[data-v200-layout=bottom] #v103Sidebar .v600-rail-toggle{display:none}
@media(max-width:1050px){body.v600 #v103Sidebar .v600-rail-toggle{display:none}body.v600 #v103Header .v103-topnav{overflow-x:auto!important;overflow-y:hidden!important;justify-content:flex-start}}
@media(max-width:600px){body.v600 #v103Header .v103-toplink,body.v600 #v103Header .v103-menu>summary{width:43px;min-width:43px;height:42px}body.v600 .v103-megamenu[popover]{border-radius:15px!important;padding:12px!important}}
/* Information architecture: meaningful shortcuts powered exclusively by published in-system routes. */
body.v600 .v600-shortcuts{margin:19px 0 26px;padding:24px;border:1px solid var(--v600-line);border-radius:25px;background:var(--panel);box-shadow:0 11px 36px #092e4220}
body.v600 .v600-shortcuts>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;color:var(--primary)}
body.v600 .v600-shortcuts h2{color:var(--ink);font-size:clamp(18px,2vw,25px);margin:3px 0 0}
body.v600 .v600-shortcuts small{font-size:10px;letter-spacing:.1em;font-weight:850;color:var(--primary)}
body.v600 .v600-shortcut-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.v600 .v600-shortcut-grid button{border:1px solid var(--border);border-radius:16px;background:var(--panel2);display:flex;align-items:center;text-align:start;gap:13px;padding:17px;min-height:68px;font-family:inherit;font-weight:800;color:var(--ink);transition:border-color .18s,transform .18s,background .18s}
body.v600 .v600-shortcut-grid button svg:first-child{color:var(--primary);flex-shrink:0}
body.v600 .v600-shortcut-grid button svg:last-child{margin-inline-start:auto;transform:rotate(90deg);opacity:.55}
body.v600 .v600-shortcut-grid button:hover{background:var(--soft);border-color:var(--v600-line);transform:translateY(-2px)}
@media(max-width:950px){body.v600 .v600-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){body.v600 .v600-shortcuts{padding:15px;border-radius:19px}body.v600 .v600-shortcut-grid{grid-template-columns:1fr;gap:8px}body.v600 .v600-shortcut-grid button{min-height:55px;padding:12px}}
@media(prefers-reduced-motion:reduce){body.v600 .v103-megamenu[popover]{animation:none!important}body.v600 .v600-shortcut-grid button{transition:none!important;transform:none!important}}
@media print{body.v600 .v600-shortcuts{display:none!important}}

/* Mobile dock follows the same icon-only rule, with accessible labels in its DOM. */
body.v600 .campus-mobile-dock button>span{display:none!important}
body.v600 .campus-mobile-dock button{min-width:42px;justify-content:center;gap:0}
body.v600 .campus-mobile-dock button>svg{height:23px;width:23px}
/* Connection telemetry belongs to authenticated staff, not public navigation. */
body.v600:not(.v53-staff) #v103Sidebar .v103-side-status{display:none!important}
/* V1000 | A coherent academic design language. Original content components remain functional. */
body.v1000{--v1000-navy:#102c3f;--v1000-indigo:#234d64;--v1000-teal:#168c87;--v1000-mint:#d3f0e9;--v1000-gold:#cba96d;--v1000-shadow:0 18px 48px rgba(19,52,72,.08);--v1000-line:color-mix(in srgb,var(--border) 76%,#7babb1 24%);--v1000-surface:var(--panel);--v1000-soft:var(--panel2);font-feature-settings:"kern" 1}
body.v1000:where(:not(.dark)){--v1000-canvas:#f2f7f8}
body.v1000 :where(button,input,select,textarea,a){-webkit-tap-highlight-color:transparent}
body.v1000 :where(button,a,input,textarea,select,summary):focus-visible{outline:3px solid #39a9a5!important;outline-offset:3px!important}
body.v1000 :where(.main,.workspace,.layout){min-width:0}
body.v1000 :where(.main){scroll-margin-top:110px}
body.v1000 .workspace{background:linear-gradient(130deg,#e8f5f43d 0,transparent 43%),var(--bg)}
body.v1000 #v103Header.v1000-header{background:var(--panel)!important;border:0!important;border-bottom:1px solid var(--v1000-line)!important;border-radius:0!important;box-shadow:0 8px 28px rgba(17,51,71,.055)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
body.v1000 #v103Header .v103-logo-symbol{background:linear-gradient(145deg,#0c5865,#147e83)!important;border-radius:14px!important;color:#fff!important;box-shadow:0 7px 19px #168c8740!important;width:43px!important;height:43px!important}
body.v1000 #v103Header .v103-logo-symbol svg{stroke-width:1.6}
body.v1000 #v103Header .v103-logo-type strong{letter-spacing:-.035em;font-weight:900}
body.v1000 #v103Header .v103-search{background:var(--panel2)!important;border:1px solid var(--v1000-line)!important;border-radius:14px!important;box-shadow:inset 0 1px 2px #00000006;transition:background .2s,border .2s}
body.v1000 #v103Header .v103-search:hover{background:var(--soft)!important;border-color:var(--primary)!important}
body.v1000 #v103Header .v103-icon,body.v1000 #v103Header .v103-avatar{border-radius:12px!important;transition:background .18s,border .18s,transform .18s}
body.v1000 #v103Header .v103-icon:hover,body.v1000 #v103Header .v103-avatar:hover{transform:translateY(-1px);background:var(--soft)!important}
body.v1000 #v103Header #topNavigation{border-top:1px solid var(--v1000-line);margin-top:5px;gap:6px;}

body.v1000 #v103Header .v103-menu>summary,body.v1000 #v103Header .v103-toplink{width:47px!important;min-width:47px!important;height:46px!important;border-radius:13px!important;color:var(--ink)!important}
body.v1000 #v103Header .v103-menu[open]>summary,body.v1000 #v103Header .v103-menu.is-active>summary,body.v1000 #v103Header .v103-toplink.is-active{background:color-mix(in srgb,var(--primary) 11%,var(--panel))!important;border-color:color-mix(in srgb,var(--primary) 26%,transparent)!important;color:var(--primary)!important}
body.v1000 .v103-megamenu[popover]{border-radius:21px!important;border:1px solid var(--v1000-line)!important;box-shadow:0 24px 74px rgba(12,46,64,.19)!important;padding:16px!important;background:var(--panel)!important;}

body.v1000 .v103-megamenu .v103-mega-grid{gap:7px}
body.v1000 .v103-megamenu .v103-route{background:transparent!important;border:1px solid transparent!important;border-radius:13px!important;min-height:64px!important}
body.v1000 .v103-megamenu .v103-route:hover,body.v1000 .v103-megamenu .v103-route:focus-visible{background:var(--soft)!important;border-color:var(--v1000-line)!important;transform:none!important}
body.v1000 .v103-megamenu .v103-mega-head strong{font-size:17px}
body.v1000 .v103-megamenu .v103-mega-head span{color:var(--muted)}
body.v1000 #v103Sidebar{background:var(--panel);border-color:var(--v1000-line)}
body.v1000 #v103Sidebar .v103-side-heading{background:linear-gradient(135deg,#11374a,#146c72)!important;color:#fff;border-radius:0 0 18px 18px}
body.v1000 #v103Sidebar .v103-side-mark{background:#ffffff21;color:#fff;border-radius:14px}
body.v1000 #v103Sidebar .v103-route{border-radius:13px!important;transition:background .2s,color .2s}
body.v1000 #v103Sidebar .v103-route.is-active{background:color-mix(in srgb,var(--primary) 12%,var(--panel))!important;color:var(--primary)!important}
/* Home landing uses only published sections and existing public news; legacy home remains below it. */
body.v1000 #v1000Landing{margin:0 0 28px;direction:inherit}
body.v1000 .v1000-feature{display:grid;grid-template-columns:minmax(0,1.27fr) minmax(250px,.73fr);gap:18px;min-height:318px;align-items:stretch;overflow:hidden;border-radius:27px;background:linear-gradient(126deg,#0c3446 0%,#0f5964 53%,#178981 100%);box-shadow:0 19px 47px #073e4c2b;color:#fff;position:relative}
body.v1000 .v1000-feature:after{content:"";pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at 88% 0%,#a2eee429,transparent 48%)}
body.v1000 .v1000-feature-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(25px,4vw,46px)}
body.v1000 .v1000-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.045em;font-weight:750;color:#e5fffa}
body.v1000 .v1000-eyebrow>span{margin-inline-start:8px;font-size:10px;font-weight:900;letter-spacing:.1em;background:#ffffff1f;padding:5px 9px;border:1px solid #ffffff35;border-radius:30px}
body.v1000 .v1000-feature h1{font-size:clamp(25px,3.3vw,46px);line-height:1.45;letter-spacing:-.055em;max-width:660px;margin:18px 0 10px;color:white;font-weight:900}
body.v1000 .v1000-feature p{font-size:clamp(12px,1.05vw,15px);line-height:2;max-width:640px;color:#e1f9f5;margin:0}
body.v1000 .v1000-feature-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
body.v1000 :is(.v1000-main-cta,.v1000-second-cta){font-family:inherit;font-weight:850;font-size:13px;min-height:45px;padding:9px 17px;border-radius:12px;display:inline-flex;gap:9px;align-items:center;cursor:pointer;transition:transform .17s,background .17s}
body.v1000 .v1000-main-cta{background:#e5fff5;color:#0a4c50;border:1px solid #e8fff4}
body.v1000 .v1000-second-cta{background:#ffffff14;color:white;border:1px solid #ffffff6b}
body.v1000 .v1000-feature-actions button:hover{transform:translateY(-2px)}
body.v1000 .v1000-feature-art{position:relative;min-height:285px;overflow:hidden;isolation:isolate}
body.v1000 .v1000-orbit{position:absolute;border:1px solid #d0fff644;border-radius:50%;aspect-ratio:1;top:50%;left:50%;transform:translate(-50%,-50%)}
body.v1000 .v1000-orbit-one{width:240px}body.v1000 .v1000-orbit-two{width:370px}
body.v1000 .v1000-art-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:155px;height:155px;display:grid;place-items:center;border-radius:35px;background:linear-gradient(140deg,#ffffff35,#ffffff0d);border:1px solid #ffffff49;box-shadow:0 18px 43px #052e3c2d;color:#f9fffd}
body.v1000 .v1000-art-node{position:absolute;display:grid;place-items:center;width:54px;height:54px;background:#ddfff2;color:#0e6670;border-radius:17px;box-shadow:0 10px 26px #052e3c3c}
body.v1000 .v1000-art-node.a{top:18%;left:13%}body.v1000 .v1000-art-node.b{bottom:18%;right:13%}body.v1000 .v1000-art-node.c{top:12%;right:14%}
body.v1000 .v1000-section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0 16px}
body.v1000 .v1000-section-head small{font-size:10px;letter-spacing:.12em;font-weight:900;color:var(--primary)}
body.v1000 .v1000-section-head h2{font-size:clamp(20px,2.1vw,28px);margin:5px 0 4px;line-height:1.5;font-weight:900;color:var(--ink)}
body.v1000 .v1000-section-head p{font-size:12px;margin:0;color:var(--muted)}
body.v1000 .v1000-small-action{font-family:inherit;display:inline-flex;align-items:center;gap:8px;background:var(--panel);color:var(--primary);padding:11px 14px;border:1px solid var(--v1000-line);border-radius:12px;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}
body.v1000 .v1000-portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.v1000 .v1000-portal-card{font-family:inherit;background:var(--panel);color:var(--ink);border:1px solid var(--v1000-line);border-radius:19px;min-width:0;padding:19px 16px;display:flex;align-items:center;text-align:start;gap:12px;min-height:110px;cursor:pointer;box-shadow:0 7px 23px #163e4d08;transition:transform .18s,box-shadow .18s,border-color .18s}
body.v1000 .v1000-portal-card:hover{transform:translateY(-3px);box-shadow:var(--v1000-shadow);border-color:color-mix(in srgb,var(--primary) 42%,var(--border))}
body.v1000 .v1000-portal-icon{width:49px;height:49px;flex:0 0 49px;display:grid;place-items:center;color:#147b7e;background:color-mix(in srgb,var(--primary) 9%,var(--panel));border-radius:15px}
body.v1000 .v1000-portal-copy{display:grid;gap:5px;min-width:0}
body.v1000 .v1000-portal-copy strong{font-size:14px;font-weight:850;line-height:1.5}
body.v1000 .v1000-portal-copy small{color:var(--muted);font-size:11px;line-height:1.7;font-weight:550}
body.v1000 .v1000-portal-arrow{margin-inline-start:auto;opacity:.55;color:var(--primary)}
body.v1000 .v1000-now{margin:18px 0 0;padding:17px 21px;border-radius:18px;border:1px solid var(--v1000-line);background:var(--panel)}
body.v1000 .v1000-now>div{display:flex;gap:8px;align-items:center;color:var(--ink);font-size:14px}
body.v1000 .v1000-now p{font-size:12px;line-height:1.7;color:var(--muted);padding-inline-start:13px;border-inline-start:3px solid var(--primary);margin:11px 0}
body.v1000 .v1000-now>button{display:flex;gap:5px;align-items:center;font-weight:800;font-family:inherit;color:var(--primary);border:0;background:transparent;cursor:pointer}
/* Avoid two separate quick-launch decks; V600 shortcuts stay in the DOM for compatibility. */
body.v1000 #v600Shortcuts{display:none!important}
body.v1000 :where(.card,.portal-card,.v52-card,.v150-team-person,.v103-route){transition:background .15s,border-color .15s,box-shadow .15s}
body.v1000 .modal{border-radius:22px;box-shadow:0 25px 85px #0a2a3970}
body.v1000 .v1000-hub header{display:flex;align-items:center;justify-content:space-between;gap:12px}
body.v1000 .v1000-hub header small{font-size:11px;color:var(--primary);font-weight:900;letter-spacing:.09em}
body.v1000 .v1000-hub header h2{margin:7px 0;font-size:24px;color:var(--ink)}
body.v1000 .v1000-hub header p{font-size:12px;color:var(--muted);line-height:1.8}
body.v1000 .v1000-hub header>span{width:55px;height:55px;display:grid;place-items:center;background:var(--soft);color:var(--primary);border-radius:18px}
body.v1000 .v1000-hub-search{background:var(--primary);color:#fff;border:0;border-radius:14px;padding:14px 18px;margin:15px 0;width:100%;text-align:start;display:flex;align-items:center;gap:12px;font-family:inherit;font-weight:900;cursor:pointer}
body.v1000 .v1000-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.v1000 .v1000-hub-grid button{min-width:0;display:flex;align-items:center;text-align:start;gap:12px;border:1px solid var(--border);border-radius:14px;padding:15px 12px;background:var(--panel2);color:var(--ink);font-family:inherit;cursor:pointer}
body.v1000 .v1000-hub-grid button>svg:first-child{flex-shrink:0;color:var(--primary)}
body.v1000 .v1000-hub-grid button span{min-width:0;display:grid;gap:4px;flex:1}
body.v1000 .v1000-hub-grid button strong{font-size:13px}
body.v1000 .v1000-hub-grid button small{font-size:11px;line-height:1.6;color:var(--muted)}
body.v1000 .v1000-hub-grid button:hover{background:var(--soft);border-color:var(--primary)}
body.v1000 .v1000-hub-close{margin-top:14px;padding:9px 16px;background:transparent;border:1px solid var(--border);border-radius:11px;font-family:inherit;color:var(--ink);cursor:pointer}
body.v1000 :where(.v103-topnav){}

@media(max-width:1050px){body.v1000 .v1000-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.v1000 .v1000-feature{grid-template-columns:minmax(0,1.2fr) minmax(190px,.8fr)}}
@media(max-width:720px){body.v1000 .v1000-feature{grid-template-columns:1fr;min-height:0}body.v1000 .v1000-feature-art{display:none}body.v1000 .v1000-feature-copy{padding:26px 22px 27px}body.v1000 .v1000-feature h1{font-size:27px;line-height:1.45;margin:14px 0 8px}body.v1000 .v1000-feature p{font-size:12px}body.v1000 .v1000-portal-grid{grid-template-columns:1fr}body.v1000 .v1000-section-head{align-items:flex-start}body.v1000 .v1000-small-action{width:45px;overflow:hidden;font-size:0;padding:10px}body.v1000 .v1000-section-head h2{font-size:20px}body.v1000 .v1000-portal-card{min-height:82px;padding:12px 14px}body.v1000 .v1000-hub-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.v1000 .v1000-portal-card,body.v1000 .v1000-feature-actions button,body.v1000 #v103Header .v103-icon{transition:none!important;transform:none!important}}
@media print{body.v1000 .v1000-feature-actions,body.v1000 .v1000-hub,body.v1000 #v1000Actions{display:none!important}body.v1000 .v1000-feature{color:black;background:white;border:1px solid #888;box-shadow:none}}
/* Shared content language: faculty, catalog, editorial content and owner workspaces. */
body.v1000 :where(.v52-tile,.v52-pane,.v52-story,.v52-course-row,.v150-person-card,.v150-manage-entry,.v350-panel,.v350-settings-entry,.v350-account-list,.news-feed-row){border-radius:17px!important;border-color:var(--v1000-line)!important;box-shadow:0 5px 18px rgba(12,41,54,.045)!important}
body.v1000 :where(.v52-tile,.v52-story,.v150-person-card,.v350-home-link):hover{box-shadow:0 14px 33px rgba(12,41,54,.09)!important;border-color:color-mix(in srgb,var(--primary) 37%,var(--border))!important}
body.v1000 :where(.v52-section-title,.v350-home-heading,.v104-settings-head){letter-spacing:-.035em}
body.v1000 :where(.v52-story-cover,.v150-person-card img){border-radius:14px;object-fit:cover}
body.v1000 :where(.v52-owner-tabs,.v104-settings-tabs){overscroll-behavior-inline:contain;}

body.v1000 :where(.v52-owner-tabs button,.v104-settings-tabs button,.v150-toolbar button){font-family:inherit;border-radius:11px;min-height:38px}
body.v1000 :where(.v52-form-grid,.v350-grid-form) :where(input,textarea,select){background:var(--panel);border-radius:12px;min-height:42px;max-width:100%;border:1px solid var(--v1000-line)}
body.v1000 :where(.v52-form-grid,.v350-grid-form) :where(input,textarea,select):focus{border-color:var(--primary);outline-offset:2px}
body.v1000 .toastbox{z-index:10030}
body.v1000 .skeleton{border-radius:18px;animation:v1000-shimmer 1.8s linear infinite;background:linear-gradient(105deg,var(--panel2) 16%,color-mix(in srgb,var(--panel) 63%,var(--primary) 4%) 41%,var(--panel2) 65%);background-size:200% 100%}
@keyframes v1000-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
body.v1000 .notice.error{border-inline-start:4px solid #c44942;border-radius:12px;padding:16px;background:color-mix(in srgb,#c44942 9%,var(--panel));color:var(--ink)}
body.v1000 .notice.success{border-inline-start:4px solid #168c87;border-radius:12px;padding:16px;background:color-mix(in srgb,#168c87 8%,var(--panel));color:var(--ink)}
@media(max-width:720px){body.v1000 :where(.v52-pane,.v350-panel,.v104-settings-head){padding-inline:14px!important}body.v1000 :where(.v350-grid-form,.v52-form-grid){grid-template-columns:minmax(0,1fr)!important}}
@media(prefers-reduced-motion:reduce){body.v1000 .skeleton{animation:none}}
/* V1200: legible desktop IA, native mobile app shell and an independent new academic palette. */
body.v1200:not(.dark){
 --bg:#f4f6fc;--panel:#fff;--panel2:#f2f5ff;--ink:#162740;--muted:#5d6f85;
 --primary:#3159bd;--secondary:#0b8b93;--soft:#e8efff;--border:#dbe3f1;
 --v1200-accent:#ec7c63;--v1200-ink:#162740;
 --shadow:0 12px 35px rgba(21,43,91,.08)
}
body.v1200.dark{
 --bg:#0c1527;--panel:#15233b;--panel2:#1a2e4d;--ink:#edf2ff;--muted:#b3c1d9;
 --primary:#9ab9ff;--secondary:#69d7d7;--soft:#273a5d;--border:#374763;
 --v1200-accent:#ffa087;--v1200-ink:#edf2ff
}
body.v1200 .workspace{background:radial-gradient(circle at 90% 0%,#94b8fa17,transparent 38%),var(--bg)!important}
body.v1200 #v103Header.v1000-header{border-bottom:1px solid var(--border)!important;box-shadow:0 10px 30px #152b5914!important}
body.v1200 #v103Header .v103-logo-symbol{background:linear-gradient(135deg,#203d82,#386fe1)!important;border-radius:15px!important;box-shadow:0 8px 23px #3159bd36!important}
body.v1200 .v1000-feature{background:linear-gradient(122deg,#182f60 0%,#2752a1 52%,#0e7a86 100%)!important;border-radius:27px!important}
body.v1200 .v1000-feature .v1000-feature-copy{color:#fff}
body.v1200 :where(.v1000-portal-card,.v52-tile,.v52-pane,.v350-panel){border-radius:19px!important}
body.v1200 :where(.v1000-portal-card,.v52-tile):hover{border-color:color-mix(in srgb,var(--primary) 34%,var(--border))!important}
/* Desktop: distinguish destination names; leave only tools (search/theme/language) icon-only. */
@media (min-width:901px){
 body.v1200[data-v200-layout="top"] #v103Header .v103-topnav{gap:5px!important;min-height:66px!important;padding:7px clamp(13px,2vw,38px)!important;overflow-x:auto!important;overflow-y:hidden!important;}
 
 body.v1200[data-v200-layout="top"] #v103Header :is(.v103-toplink,.v103-menu>summary){width:auto!important;min-width:unset!important;height:45px!important;padding-inline:14px!important;gap:8px!important;white-space:nowrap!important;border-radius:13px!important;font-size:12px!important;font-weight:800!important;flex:none}
 body.v1200[data-v200-layout="top"] #v103Header :is(.v103-toplink,.v103-menu>summary)>span{display:inline!important;visibility:visible!important;opacity:1!important}
 body.v1200[data-v200-layout="top"] #v103Header .v103-menu>summary>svg:last-child{display:inline!important;width:13px!important;height:13px!important;opacity:.7}
 body.v1200[data-v200-layout="top"] #v103Header .v103-menu>summary>svg:first-child{width:19px;height:19px}
 body.v1200 .campus-mobile-dock{display:none!important}
}
/* Mobile app: one consistent bottom bar independently of desktop layout selection.
   Owner's/visitor's stored desktop layout is preserved and takes effect on wider viewports. */
@media (max-width:900px){
 body.v1200 .layout{display:block!important;grid-template-columns:1fr!important}
 body.v1200 #v103Header .v103-topnav,body.v1200 #topNavigation,body.v1200 .topnav,body.v1200 #bottomNavigation{display:none!important}
 body.v1200 .side:not(.open){display:none!important}
 body.v1200 .side.open{display:block!important;position:fixed!important;inset-block:0!important;inset-inline-start:0!important;width:min(350px,88vw)!important;z-index:200!important}
 body.v1200 #v103Header{height:64px!important;min-height:64px!important;padding:0 12px!important;gap:9px!important;z-index:120!important}
 body.v1200 #v103Header .v103-start{min-width:0;flex:1}
 body.v1200 #v103Header .v103-logo-symbol{width:39px!important;height:39px!important}
 body.v1200 #v103Header .v103-logo-type strong{font-size:12px!important;max-width:170px!important}
 body.v1200 #v103Header .v103-end{gap:2px!important}
 body.v1200 #v103Header :is(.v103-help,.v200-layout-wrap,.v103-avatar,#v1000Actions){display:none!important}
 body.v1200 #v103Header .v103-mobile-menu{display:none!important}
 body.v1200 .main{padding-bottom:calc(115px + env(safe-area-inset-bottom))!important}
 /* R25: reserve mobile-dock clearance inside .main only. Padding on .workspace is after its footer and created a blank strip below the footer on tall mobile pages. */
 body.v1200 .workspace{padding-bottom:0!important}
 body.v1200 .campus-mobile-dock,body.v1200[data-v200-layout="top"] .campus-mobile-dock,body.v1200[data-v200-layout="side"] .campus-mobile-dock,body.v1200[data-v200-layout="bottom"] .campus-mobile-dock{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;position:fixed!important;inset-inline:0!important;bottom:0!important;top:auto!important;max-width:none!important;width:100%!important;height:calc(72px + env(safe-area-inset-bottom))!important;min-height:72px!important;border-radius:22px 22px 0 0!important;padding:7px 7px calc(7px + env(safe-area-inset-bottom))!important;margin:0!important;background:color-mix(in srgb,var(--panel) 96%,transparent)!important;border:1px solid var(--border)!important;border-bottom:0!important;box-shadow:0 -13px 42px #132c5730!important;backdrop-filter:blur(20px);z-index:250!important;overflow:visible!important;gap:3px!important;direction:inherit}
 body.v1200 .campus-mobile-dock .v1200-dock-entry{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;min-width:0!important;width:100%!important;min-height:56px!important;padding:5px 2px!important;cursor:pointer;border:0!important;border-radius:14px!important;background:transparent!important;color:var(--muted)!important;font-family:inherit!important}
 body.v1200 .campus-mobile-dock .v1200-dock-entry>svg{display:block!important;width:22px!important;height:22px!important;flex:none}
 body.v1200 .campus-mobile-dock .v1200-dock-entry>span{display:block!important;font-size:10px!important;font-weight:800!important;line-height:1.4!important;white-space:nowrap!important}
 body.v1200 .campus-mobile-dock .v1200-dock-entry.active{background:var(--soft)!important;color:var(--primary)!important}
 body.v1200 .campus-mobile-dock .v1200-dock-entry:focus-visible{outline:3px solid var(--secondary)!important;outline-offset:0!important}
 body.v1200 #v103Header :is(.v103-search,.v103-icon){min-width:37px!important;min-height:39px!important}
 body.v1200 .quick-access,body.v1200 .jump-top{bottom:calc(90px + env(safe-area-inset-bottom))!important}
 body.v1200 .v1000-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:380px){body.v1200 #v103Header .v103-logo-type strong{max-width:125px!important}body.v1200 .campus-mobile-dock .v1200-dock-entry>span{font-size:9px!important}}
/* More: true bottom-sheet on phones, roomy dialog on tablets/desktop. */
.v1200-more{color:var(--ink);max-height:min(72vh,700px);display:flex;flex-direction:column;min-height:0}
.v1200-more-head{display:flex;align-items:center;gap:13px;padding:0 2px 14px;border-bottom:1px solid var(--border)}
.v1200-more-head h2{font-size:20px;margin:0 0 4px}.v1200-more-head p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}
.v1200-more-ornament{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--soft);color:var(--primary);flex-shrink:0}
.v1200-more-scroll{overflow-y:auto;overscroll-behavior:contain;padding:10px 0 4px;}

.v1200-more-group{padding:10px 0;border-bottom:1px solid var(--border)}
.v1200-more-group h3{font-size:13px;display:flex;align-items:center;gap:9px;color:var(--primary);margin:5px 0 8px}
.v1200-more-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.v1200-more-links .v103-route{min-width:0!important;padding:11px!important;min-height:60px!important;background:var(--panel2)!important;border:1px solid var(--border)!important;border-radius:14px!important}
.v1200-more-links .v103-route span{min-width:0}.v1200-more-links .v103-route strong{font-size:11px}
@media(max-width:900px){
 body.v1200 .v1200-sheet-backdrop{display:flex!important;align-items:flex-end!important;justify-content:center!important;padding:0!important;z-index:550!important}
 body.v1200 .v1200-sheet-backdrop>.modal{width:100%!important;max-width:100%!important;max-height:calc(90dvh - env(safe-area-inset-top))!important;border-radius:26px 26px 0 0!important;margin:0!important;overflow:hidden!important;padding:15px 18px calc(19px + env(safe-area-inset-bottom))!important;background:var(--panel)!important;box-shadow:0 -18px 85px #111f3b55!important}
 body.v1200 .v1200-more{max-height:calc(80dvh - env(safe-area-inset-bottom))}
 body.v1200 .v1200-more-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){body.v1200 :where(.v1200-dock-entry,.v1200-more-links button){transition:none!important;animation:none!important}}
@media print{body.v1200 .campus-mobile-dock,body.v1200 .v1200-sheet-backdrop{display:none!important}}
/* V1300 – institutional editorial design and genuine linked organization tree. */
body.v1300:not(.dark){--bg:#edf5f4;--panel:#ffffff;--panel2:#f3f8f8;--ink:#142b30;--muted:#577177;--primary:#08767a;--secondary:#4965ce;--soft:#dff3f0;--border:#d6e5e3;--shadow:0 18px 42px #163f4220}
body.v1300.dark{--bg:#0c1b20;--panel:#172d33;--panel2:#1e373b;--ink:#f1faf9;--muted:#afcdca;--primary:#73d9d0;--secondary:#a7baff;--soft:#26484a;--border:#35565b}
body.v1300 .workspace{background:radial-gradient(ellipse 60% 32% at 20% 0%,#2bbeb315,transparent),var(--bg)!important}
body.v1300 :is(.v1000-feature,.v52-home-hero){background:linear-gradient(125deg,#09353f,#07535d 55%,#2d538e)!important;border-radius:30px!important;box-shadow:0 21px 55px #07535d24!important}
body.v1300 .v1000-portal-card{border:1px solid var(--border)!important;border-radius:22px!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
body.v1300 .v1000-portal-card:is(:hover,:focus-visible){transform:translateY(-3px);border-color:var(--primary)!important;box-shadow:0 16px 30px #004d4716}
body.v1300 .v1000-portal-icon{background:color-mix(in srgb,var(--primary) 13%,var(--panel))!important;color:var(--primary)!important;border-radius:17px!important}
body.v1300 .v1000-eyebrow>span{letter-spacing:1px}
body.v1300 #v103Header .v103-logo-symbol{background:linear-gradient(145deg,#055a64,#2b7b93)!important}
body.v1300 .v52-home-hero,body.v1300 #app>.v52-metric-row{display:none!important}
.v1300-stat-section,.v1300-recent,.v1300-feed{margin:30px 0 32px}
.v1300-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:16px}
.v1300-section-heading small{font-size:10px;color:var(--secondary);font-weight:900;letter-spacing:1.7px}
.v1300-section-heading h2{font-size:clamp(22px,2.6vw,30px);margin:5px 0;color:var(--ink)}
.v1300-section-heading p{margin:2px 0;font-size:12px;color:var(--muted)}
.v1300-section-heading>button,.v1300-chart-actions button,.v1300-owner-toolbar button,.v1300-recent-list button{border:1px solid var(--border);color:var(--ink);background:var(--panel);border-radius:12px;padding:10px 14px;cursor:pointer;font:inherit;font-weight:700}
.v1300-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.v1300-stat{background:var(--panel);border:1px solid var(--border);padding:19px;border-radius:23px;min-width:0;position:relative;overflow:hidden;display:grid;grid-template-columns:50px 1fr;gap:1px 12px;align-items:center}
.v1300-stat:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--primary),var(--secondary))}
.v1300-stat-icon{grid-row:1/3;display:grid;place-items:center;width:48px;height:48px;border-radius:17px;color:var(--primary);background:var(--soft)}
.v1300-stat strong{font-size:clamp(25px,3vw,39px);font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.18}
.v1300-stat>span:last-child{color:var(--muted);font-size:12px;font-weight:650}
.v1300-recent-list{display:flex;gap:8px;flex-wrap:wrap}.v1300-recent-list button{display:flex;align-items:center;gap:10px;border-radius:14px}.v1300-recent-list button>svg:first-child{color:var(--primary)}
.v1300-feed{border:1px solid var(--border);border-radius:26px;padding:21px;background:var(--panel)}
.v1300-news-item{display:grid;grid-template-columns:45px minmax(0,1fr) 45px;align-items:center;gap:14px;padding:18px 0;border-top:1px solid var(--border)}
.v1300-news-index{font-size:24px;font-weight:850;color:var(--primary);opacity:.65}.v1300-news-item h3{font-size:16px;margin:3px 0}.v1300-news-item small{font-size:11px;color:var(--secondary)}
.v1300-news-item p,.v1300-empty{color:var(--muted);font-size:12px;line-height:1.75;margin:0}.v1300-news-item button{border:1px solid var(--border);background:var(--soft);border-radius:50%;color:var(--primary);width:42px;height:42px;cursor:pointer}
/* Hierarchical organization visualization: connector lines are part of the tree rather than decorative cards. */
.v1300-chart-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;border:1px solid var(--border);background:var(--panel);border-radius:22px 22px 0 0}
.v1300-chart-head strong{font-size:17px;color:var(--ink)}.v1300-chart-head p{margin:5px 0 0;font-size:12px;color:var(--muted)}.v1300-chart-actions{display:flex;gap:8px;flex-wrap:wrap}
.v1300-tree-scroll{overflow:auto;border:1px solid var(--border);border-top:0;border-radius:0 0 22px 22px;background:var(--panel2);padding:30px 24px 40px;min-height:260px;overscroll-behavior:contain;}

.v1300-tree-roots,.v1300-tree-children{list-style:none;margin:0;padding:0;display:flex;justify-content:center;align-items:flex-start;gap:24px;min-width:max-content}
.v1300-tree-node{position:relative;flex:none;text-align:center;padding:0 3px}
.v1300-tree-children{padding-top:38px;position:relative;margin-top:14px}
.v1300-tree-children:before{content:"";height:24px;width:2px;background:var(--secondary);position:absolute;top:0;left:50%;transform:translateX(-50%)}
.v1300-tree-children>.v1300-tree-node:before{content:"";position:absolute;height:22px;top:-22px;left:50%;border-left:2px solid var(--secondary)}
.v1300-tree-children>.v1300-tree-node:after{content:"";position:absolute;top:-22px;left:0;right:0;height:2px;background:var(--secondary)}
.v1300-tree-children>.v1300-tree-node:first-child:after{left:50%}.v1300-tree-children>.v1300-tree-node:last-child:after{right:50%}.v1300-tree-children>.v1300-tree-node:only-child:after{display:none}
.v1300-tree-person{width:255px;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px}
.v1300-tree-person>.v150-person-card{width:100%;min-height:92px;box-shadow:0 6px 22px #12333914!important;border:1px solid var(--border)!important;background:var(--panel)!important;border-radius:20px!important;text-align:start}
.v1300-tree-toggle{border:1px solid var(--border);border-radius:40px;min-width:68px;padding:5px 10px;background:var(--panel);color:var(--primary);font:inherit;font-size:11px;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}
.v1300-tree-toggle[aria-expanded=false]{background:var(--soft)}
.v1300-owner-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:11px;background:var(--soft);padding:12px 17px;border:1px solid var(--border);border-radius:17px;margin-bottom:18px}
.v1300-owner-toolbar>span{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--primary)}.v1300-owner-toolbar button{display:inline-flex;align-items:center;gap:7px}
.v1300-edit-policy label{display:block;font-weight:750;margin:14px 0 7px}.v1300-edit-policy textarea{width:100%;resize:vertical;font:inherit;line-height:1.8;padding:14px;border-radius:12px;background:var(--panel);color:var(--ink);border:1px solid var(--border)}
.v1300-dialog-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:flex-end;padding-top:14px}.v1300-dialog-actions button{font:inherit;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--ink);padding:9px 13px;cursor:pointer}
.v1300-audit-list{max-height:53vh;overflow:auto;}.v1300-audit-row{display:grid;grid-template-columns:155px 155px 1fr;gap:6px;border-top:1px solid var(--border);padding:10px 2px;font-size:12px;overflow-wrap:anywhere}.v1300-audit-row span{grid-column:2/4;color:var(--muted)}
@media(max-width:1000px){.v1300-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:660px){.v1300-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v1300-stat{padding:12px 9px;grid-template-columns:36px 1fr;gap:2px 8px;border-radius:17px}.v1300-stat-icon{width:35px;height:35px;border-radius:11px}.v1300-stat-icon>svg{width:20px;height:20px}.v1300-stat strong{font-size:24px}.v1300-stat>span:last-child{font-size:10px}.v1300-section-heading{align-items:start}.v1300-feed{padding:14px}.v1300-chart-head{display:block}.v1300-chart-actions{margin-top:10px}.v1300-tree-scroll{padding:20px 14px}.v1300-audit-row{display:block}.v1300-audit-row>*{display:block;margin:4px 0}}
@media(prefers-reduced-motion:reduce){body.v1300 .v1000-portal-card{transition:none!important;transform:none!important}}

.v1300-edit-policy input[type=number],.v1300-edit-policy input[type=text],.v1300-edit-policy input:not([type]){width:100%;font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--ink);border-radius:12px;padding:11px 12px}.v1300-edit-policy .v1300-check{display:flex;gap:9px;align-items:center}.v1300-edit-policy .v1300-check input{width:auto}

/* Unit connectors form an actual hierarchical academic directory. */
.v1300-faculty-hero{background:linear-gradient(120deg,#09353f,#1c6679 68%,#355cb0);color:white;border-radius:26px;padding:clamp(22px,4vw,42px);margin-bottom:21px}
.v1300-faculty-hero small{font-size:10px;color:#c5fff0;letter-spacing:2px;font-weight:900}.v1300-faculty-hero h1{font-size:clamp(25px,4vw,42px);margin:11px 0}.v1300-faculty-hero p{max-width:670px;font-size:14px;line-height:1.8;color:#e0f7f6}
.v1300-faculty-pills{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.v1300-faculty-pills span{border:1px solid #ffffff65;border-radius:30px;background:#ffffff20;padding:7px 15px;font-size:12px}
.v1300-faculty-scroll{background:var(--panel2);border:1px solid var(--border);border-top:0;border-radius:0 0 22px 22px;padding:25px;overflow:auto;}
.v1300-faculty-roots,.v1300-faculty-children,.v1300-faculty-members{list-style:none;margin:0;padding:0}.v1300-faculty-roots{display:flex;justify-content:center;min-width:max-content;gap:24px;align-items:flex-start}.v1300-faculty-branch{position:relative;min-width:250px;max-width:940px;display:flex;flex-direction:column;align-items:center}
.v1300-faculty-unit{display:flex;align-items:center;gap:11px;min-width:245px;max-width:280px;text-align:start;border-radius:19px;padding:15px;background:var(--panel);border:2px solid var(--primary);box-shadow:0 10px 30px #113d4414}
.v1300-faculty-unit-icon{width:43px;height:43px;border-radius:12px;background:var(--soft);color:var(--primary);display:grid;place-items:center;flex-shrink:0}.v1300-faculty-unit strong{display:block;font-size:14px;color:var(--ink)}.v1300-faculty-unit small{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.v1300-faculty-children{display:flex;gap:26px;justify-content:center;padding-top:35px;margin-top:13px;position:relative}.v1300-faculty-children:before{content:"";position:absolute;top:0;left:50%;height:24px;width:2px;background:var(--secondary)}
.v1300-faculty-children>.v1300-faculty-branch:before{content:"";position:absolute;height:20px;width:2px;background:var(--secondary);top:-20px;left:50%}.v1300-faculty-children>.v1300-faculty-branch:after{content:"";position:absolute;top:-20px;left:0;right:0;height:2px;background:var(--secondary)}.v1300-faculty-children>.v1300-faculty-branch:first-child:after{left:50%}.v1300-faculty-children>.v1300-faculty-branch:last-child:after{right:50%}
.v1300-faculty-members{display:grid;grid-template-columns:repeat(auto-fit,minmax(208px,1fr));gap:9px;width:min(100%,760px);min-width:240px;margin:21px auto 10px;padding:12px;border:1px dashed var(--secondary);background:var(--panel);border-radius:18px;position:relative}
.v1300-faculty-members:before{content:"";position:absolute;top:-22px;left:50%;height:21px;width:2px;background:var(--secondary)}.v1300-faculty-members .v100-person{min-width:0}
.v1300-faculty-foot{font-size:12px;color:var(--muted);margin:15px 0}
/* Owner-specific governance UI — no public control surfaces. */
.v1400-governance-trigger{display:inline-flex;align-items:center;gap:.6rem;padding:.65rem 1rem;border:1px solid var(--line,#bad4da);border-radius:14px;background:var(--card,#fff);color:inherit;font:inherit;font-weight:750;cursor:pointer}
.v1400-governance-trigger:hover,.v1400-governance-trigger:focus-visible{outline:2px solid #198b93;outline-offset:2px}
.v1400-governance{max-height:min(79dvh,850px);overflow:auto;padding:.25rem;}
.v1400-governance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.v1400-governance-head small{font-size:.72rem;letter-spacing:.1em;color:#12818d}.v1400-governance-head h2{margin:.25rem 0;font-size:clamp(1.3rem,3vw,1.8rem)}.v1400-governance-head p{max-width:66ch;line-height:1.8}.v1400-revision{background:#d9f3f3;color:#135963;padding:.5rem .8rem;border-radius:12px;font-weight:800}
.v1400-policy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:.9rem}.v1400-policy-card{min-width:0;border:1px solid #aecdd5;border-radius:17px;padding:.85rem;background:var(--card,#f8fafa);color:inherit}.v1400-policy-card legend{font-weight:800;padding:0 .5rem}.v1400-policy-status{min-height:3rem}.v1400-policy-status label{display:flex;gap:.55rem;align-items:center;cursor:pointer}.v1400-policy-status input{width:20px;height:20px;accent-color:#0b8992}.v1400-owner-only{display:inline-flex;gap:.4rem;align-items:center;opacity:.82;font-size:.88rem}.v1400-policy-card summary{cursor:pointer;font-size:.88rem;font-weight:700;padding:.6rem 0}.v1400-action-list{display:flex;gap:.3rem;flex-wrap:wrap}.v1400-action-list code{font-size:.67rem;padding:.2rem .35rem;background:rgba(80,135,148,.13);border-radius:5px;max-width:100%;overflow-wrap:anywhere}.v1400-scope-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:.5rem}.v1400-scope-controls label{display:grid;gap:.35rem;font-size:.78rem}.v1400-scope-controls select{width:100%;min-width:0;border:1px solid #9dbdc6;border-radius:9px;padding:.45rem;background:var(--card,#fff);color:inherit}.v1400-savebar{position:sticky;bottom:0;padding:1rem 0 .3rem;background:var(--card,#fff);display:flex;gap:.65rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.v1400-savebar small{flex:1;min-width:180px;line-height:1.65}
@media(max-width:600px){.v1400-governance{max-height:77dvh}.v1400-policy-grid{grid-template-columns:1fr}.v1400-governance-head{flex-wrap:wrap}}
/* Institutional interface — single authoritative shell. Legacy content modules retain their own styles. */
body.nv1500{--bg:#edf3fc;--panel:#fff;--panel2:#f7faff;--ink:#142541;--muted:#60738e;--border:#dce5f3;--primary:#355fda;--secondary:#087f9d;--soft:#eaf1ff;--nav:#111d3a;--nav2:#1b3767;--shadow:0 10px 30px rgba(17,48,96,.045);background:linear-gradient(170deg,#edf3fc 0%,#f6f9ff 52%,#ecf5fb 100%);color:var(--ink);font-family:"Noto Kufi Arabic",Inter,Arial,sans-serif;font-size:13px;line-height:1.75}
body.nv1500.dark{--bg:#0d1628;--panel:#15223b;--panel2:#1c2c49;--ink:#f1f6ff;--muted:#a6b9d3;--border:#344460;--primary:#87a8ff;--secondary:#7ed8e8;--soft:#203d63;--nav:#080f1d;background:#0d1628}
body.nv1500 :is(button,input,select,textarea){font-family:inherit}body.nv1500 :lang(en){font-family:Inter,"Noto Kufi Arabic",sans-serif}
body.nv1500 .layout{display:block!important;grid-template-columns:none!important;min-height:100vh}
body.nv1500 .workspace{width:100%;min-width:0;margin:0!important;max-width:none!important}
body.nv1500 .topbar,body.nv1500 .bottomnav,body.nv1500 .campus-mobile-dock{display:none!important}
body.nv1500 .main{max-width:1500px!important;margin:0 auto;width:100%;padding:32px clamp(18px,3vw,48px) 70px!important;min-height:55vh}
body.nv1500 #v103Header.nv-header{height:80px!important;min-height:80px!important;position:sticky!important;top:0!important;z-index:102!important;display:flex!important;align-items:center;justify-content:space-between;gap:22px;padding:0 clamp(18px,3vw,48px)!important;background:var(--panel)!important;border:0!important;border-bottom:1px solid var(--border)!important;box-shadow:none!important;color:var(--ink)!important;max-width:none;width:100%}
.nv-header-left,.nv-header-tools{display:flex;align-items:center;gap:13px;min-width:0}.nv-header-tools{margin-inline-start:auto}.nv-brand{display:flex;align-items:center;gap:13px;padding:0;border:0;background:none;text-align:start;color:var(--ink);cursor:pointer;min-width:0}.nv-brand>span:last-child{min-width:0}.nv-brand strong{display:block;font-size:17px;line-height:1.4;letter-spacing:-.03em;font-weight:900;white-space:nowrap}.nv-brand small{display:block;color:var(--muted);font:700 10px/1.7 Inter,sans-serif;letter-spacing:.1em}.nv-symbol{display:grid;place-items:center;flex:0 0 49px;width:49px;height:49px;background:linear-gradient(140deg,#477ce8,#31b6bd);color:#fff;border-radius:15px;box-shadow:0 8px 22px #15477b2d}
.nv-hbutton{width:43px;height:43px;min-width:43px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:var(--ink);background:var(--panel2);border:1px solid var(--border);border-radius:12px;cursor:pointer}.nv-hbutton span{font:800 10px Inter,sans-serif}.nv-hbutton:hover,.nv-hbutton:focus-visible{background:var(--soft);color:var(--primary)}.nv-trigger{display:none}
.nv-search{display:flex;align-items:center;justify-content:space-between;gap:13px;min-width:300px;width:clamp(300px,26vw,410px);height:44px;padding:0 15px;background:var(--panel2);border:1px solid var(--border);border-radius:12px;color:var(--muted);cursor:pointer;text-align:start;font-size:12px}.nv-search kbd{font:600 10px Inter,Arial,sans-serif;color:var(--muted);border:1px solid var(--border);background:var(--panel);border-radius:6px;padding:3px 6px;white-space:nowrap}
body.nv1500 #topNavigation.nv-topnav{display:block!important;position:sticky!important;top:80px!important;z-index:100!important;background:var(--panel)!important;padding:0 clamp(18px,3vw,48px)!important;min-height:59px!important;height:auto!important;width:100%;max-width:none!important;border:0!important;border-bottom:1px solid var(--border)!important;box-shadow:0 11px 24px #2342700a!important;overflow:visible!important;transform:none!important}
.nv-nav-inner{display:flex;align-items:center;gap:3px;min-height:59px;max-width:1700px;width:100%;margin:auto;position:relative}
.nv-link,.nv-drop>summary{height:43px;min-width:max-content;border-radius:11px;padding:0 clamp(9px,1vw,15px);display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;background:transparent;color:var(--ink);font-weight:800;font-size:11.5px;line-height:1.5;cursor:pointer;white-space:nowrap;list-style:none;transition:background .16s,color .16s,border-color .16s}
.nv-drop>summary::-webkit-details-marker{display:none}.nv-drop>summary svg:last-child{color:var(--muted);transition:transform .16s}.nv-drop[open]>summary svg:last-child{transform:rotate(180deg)}
.nv-link:hover,.nv-drop>summary:hover,.nv-drop[open]>summary,.nv-parent-active>summary,.nv-link.nv-active{background:var(--soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 12%,var(--border))}
.nv-drop{position:relative;flex:none}.nv-drop.nv-more{margin-inline-start:auto}
.nv-popover{display:block;position:fixed;top:0;left:0;inset-inline:auto;width:min(468px,calc(100vw - 24px));max-height:min(560px,calc(100dvh - 165px));overflow:auto;border:1px solid var(--border);border-radius:19px;background:var(--panel);box-shadow:0 18px 50px rgba(13,36,72,.17);padding:10px;z-index:180;color:var(--ink);}
.nv-drop:not([open])>.nv-popover{display:none}.nv-more>.nv-popover{width:min(678px,calc(100vw - 24px))}
.nv-popover-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border);padding:4px 6px 10px;margin-bottom:9px}.nv-caption{display:inline-block;color:var(--secondary);font:800 10px/1.5 Inter,"Noto Kufi Arabic",sans-serif;letter-spacing:.11em}.nv-popover-head h2{font-size:15px;font-weight:900;margin:3px 0 1px;color:var(--ink);line-height:1.55}.nv-popover-head p{font-size:10px;color:var(--muted);margin:0}.nv-total{display:grid;place-items:center;background:var(--soft);border-radius:11px;min-width:30px;min-height:30px;color:var(--primary);font:800 15px Inter,sans-serif}
.nv-cardgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.nv-more .nv-cardgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.nv-card{min-height:59px;border:1px solid var(--border);border-radius:11px;background:var(--panel2);text-align:start;padding:7px 9px;display:flex;align-items:center;gap:8px;color:var(--ink);cursor:pointer;min-width:0;transition:border-color .15s,background .15s,transform .15s}.nv-card:hover,.nv-card:focus-visible,.nv-card.nv-active{border-color:var(--primary);background:var(--soft);transform:translateY(-1px)}.nv-card-icon{flex:0 0 32px;width:32px;height:32px;border-radius:9px;background:var(--panel);border:1px solid var(--border);display:grid;place-items:center;color:var(--primary)}.nv-card-copy{display:block;flex:1;min-width:0}.nv-card-copy strong{font-size:11px;font-weight:850;display:block;line-height:1.55}.nv-card-copy small{font-size:9px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;margin-top:2px}.nv-card-arrow{font:700 15px Inter,sans-serif;color:var(--muted)}.nv-filter-label{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.nv-filter{display:block;width:100%;height:37px;border-radius:9px;border:1px solid var(--border);background:var(--panel2);color:var(--ink);padding:6px 10px;margin-bottom:9px;font-size:11px}.nv-no-results{color:var(--muted);padding:20px;text-align:center;font-size:12px}.nv-card[hidden],.nv-no-results[hidden]{display:none!important}
body.nv1500 #sidebar.nv-sidebar{position:fixed!important;top:0!important;bottom:0!important;inset-inline-start:0!important;inset-inline-end:auto!important;width:min(355px,90vw)!important;max-width:355px!important;height:100dvh!important;z-index:220!important;display:flex!important;flex-direction:column!important;padding:0!important;background:var(--panel)!important;color:var(--ink)!important;box-shadow:0 30px 80px #061b3845!important;border-inline-end:1px solid var(--border);transform:translateX(110%)!important;transition:transform .2s ease;visibility:hidden;overflow:hidden!important}
html[dir=ltr] body.nv1500 #sidebar.nv-sidebar{inset-inline-start:0!important;inset-inline-end:auto!important;transform:translateX(-110%)!important}
body.nv1500 #sidebar.nv-sidebar.open{transform:translateX(0)!important;visibility:visible}
body.nv1500 .scrim.show{display:block!important;z-index:215!important;background:#07152d99}
.nv-sidehead{padding:21px 19px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border)}.nv-side-logo{width:43px;height:43px;border-radius:12px;background:#163866;color:#fff;display:grid;place-items:center}.nv-sidehead strong{font-size:16px;display:block;line-height:1.4}.nv-sidehead small{font:700 10px Inter,sans-serif;color:var(--muted)}.nv-side-close{margin-inline-start:auto;background:var(--soft);color:var(--primary);border:0;border-radius:11px;min-width:39px;height:39px;cursor:pointer}.nv-side-scroll{overflow-y:auto;flex:1;padding:13px 14px 36px;}.nv-side-group{border-bottom:1px solid var(--border);padding:10px 0}.nv-side-group h3{font-size:11px;letter-spacing:0;font-weight:850;color:var(--muted);margin:9px 14px}.nv-side-link{width:100%;display:flex;gap:13px;align-items:center;padding:11px 13px;margin:3px 0;border-radius:10px;background:none;border:0;color:var(--ink);text-align:start;cursor:pointer;font-weight:750;font-size:12px}.nv-side-link:hover,.nv-side-link.nv-active{background:var(--soft);color:var(--primary)}
body.nv1500 .nv-footer{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;min-height:100px;background:var(--panel);color:var(--muted);border-top:1px solid var(--border);padding:24px clamp(18px,3vw,48px);font-size:11px}.nv-footer-brand{display:flex;align-items:center;gap:12px;color:var(--ink)}.nv-footer-brand>svg{color:var(--primary)}.nv-footer-brand strong{font-size:12px;display:block}.nv-footer-brand small{font:700 9px Inter,sans-serif;color:var(--muted)}.nv-footer-links{display:flex;gap:8px}.nv-footer-links button{border:0;background:transparent;color:var(--muted);padding:8px;cursor:pointer;font-size:11px}.nv-footer-links button:hover{color:var(--primary)}
.nv-home,.nv-dashboard{max-width:1430px;margin:0 auto}.nv-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.75fr);min-height:375px;position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(125deg,#14254b 5%,#244178 61%,#075d7b 110%);color:#fff;box-shadow:0 22px 58px #1b396324}.nv-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to left,black,transparent 65%)}.nv-hero-main{padding:clamp(30px,4vw,65px);z-index:1;align-self:center}.nv-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;color:#99e8f6;font-weight:850}.nv-hero h1{font-weight:900;font-size:clamp(29px,3.4vw,48px);line-height:1.65;margin:12px 0;color:#fff}.nv-hero h1 em{font-style:normal;color:#9fe8f8}.nv-hero p{font-size:12.5px;line-height:2;color:#d3e4f6;max-width:640px;margin:0 0 24px}.nv-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.nv-primary,.nv-secondary{min-height:46px;padding:11px 20px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;font-weight:850;font-size:11.5px}.nv-primary{border:1px solid #76d8f1;background:#7adbef;color:#0a2e4e}.nv-secondary{border:1px solid var(--border);background:var(--panel);color:var(--primary)}.nv-hero .nv-secondary{background:#ffffff14;color:#fff;border-color:#ffffff65}.nv-primary:hover{background:#b9f0f9}.nv-hero-art{position:relative;min-height:300px;display:grid;place-items:center}.nv-art-ring{position:absolute;border:1px solid #9acdfa4a;border-radius:50%;width:270px;height:270px}.nv-art-ring.r2{width:355px;height:355px;opacity:.55}.nv-art-core{width:147px;height:147px;border-radius:42px;background:linear-gradient(145deg,#72d9ef,#248cc6);box-shadow:0 24px 65px #0002;display:grid;place-items:center;color:#fff;transform:rotate(-8deg)}.nv-art-core svg{transform:rotate(8deg)}.nv-art-bubble{position:absolute;display:grid;place-items:center;width:58px;height:58px;background:#eef9ff;color:#23659e;border-radius:18px;box-shadow:0 15px 35px #041a3155}.nv-art-bubble.b1{top:12%;inset-inline-end:15%}.nv-art-bubble.b2{bottom:14%;inset-inline-start:12%}
.nv-sectiontitle{margin:37px 0 20px;display:flex;align-items:end;justify-content:space-between;gap:20px}.nv-sectiontitle h2{font-size:23px;font-weight:900;margin:6px 0 5px;color:var(--ink)}.nv-sectiontitle p{font-size:12px;margin:0;color:var(--muted)}.nv-textlink{background:transparent;border:none;color:var(--primary);font-size:12px;font-weight:800;cursor:pointer}.nv-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.nv-stat{min-width:0;min-height:139px;display:flex;align-items:flex-start;flex-direction:column;gap:11px;position:relative;padding:17px 18px;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:0 7px 25px #27446b08}.nv-stat-icon{display:grid;place-items:center;width:37px;height:37px;background:var(--soft);color:var(--primary);border-radius:11px}.nv-stat strong{display:block;font:800 clamp(23px,2vw,30px)/1.25 Inter,"Noto Kufi Arabic",sans-serif;color:var(--ink);font-variant-numeric:tabular-nums}.nv-stat span:not(.nv-stat-icon){font-size:10.5px;color:var(--muted);font-weight:700}.nv-stat small{font-size:9px;color:var(--muted)}.nv-stat-source{position:absolute;top:17px;inset-inline-end:15px;width:7px;height:7px;border-radius:100%;background:#39b9a8}
.nv-quickgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.nv-quick{min-height:112px;display:flex;align-items:center;gap:16px;padding:19px;border-radius:15px;border:1px solid var(--border);background:var(--panel);color:var(--ink);cursor:pointer;text-align:start}.nv-quick>span{width:50px;height:50px;border-radius:13px;background:var(--soft);display:grid;place-items:center;color:var(--primary)}.nv-quick strong{font-size:12px;flex:1}.nv-quick small{font:700 15px Inter;color:var(--muted)}.nv-quick:hover{border-color:var(--primary);background:var(--panel2)}
.nv-home-tail{margin:29px 0 0;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid var(--border);background:var(--panel);border-radius:20px}.nv-home-tail h2{font-size:19px;font-weight:900;margin:9px 0}.nv-home-tail p{max-width:630px;color:var(--muted);font-size:12px;margin:0}.nv-dashboard-banner{padding:34px;border-radius:20px;background:linear-gradient(120deg,#14294c,#1d5687);color:white;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.nv-dashboard-banner h1{font-size:30px;color:#fff;margin:6px 0}.nv-dashboard-banner p{color:#dae8fb;margin:0;font-size:12px}.nv-refresh{border:1px solid #ffffff77;color:#fff;background:#ffffff16;border-radius:10px;padding:11px 16px;display:inline-flex;gap:9px;align-items:center;cursor:pointer}.nv-dash-guide{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px;margin-top:26px;border:1px solid var(--border);background:var(--panel);border-radius:17px}.nv-dash-guide h2{font-size:17px;margin:0 0 6px}.nv-dash-guide p{color:var(--muted);font-size:12px;margin:0;max-width:850px}
body.nv1500 .item,body.nv1500 .surface,body.nv1500 .v52-tile{border-color:var(--border);box-shadow:var(--shadow)}body.nv1500 .pagehead h1{font-size:clamp(22px,2.5vw,32px);color:var(--ink)}
body.nv1500 :is(button,a,input,summary):focus-visible{outline:3px solid #48b3df!important;outline-offset:3px}
@media(max-width:1390px){.nv-link,.nv-drop>summary{font-size:10px;padding-inline:8px;gap:5px}.nv-brand strong{font-size:14px}.nv-search{width:290px;min-width:200px}.nv-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){.nv-trigger{display:inline-flex}.nv-brand strong{font-size:13px}.nv-search{min-width:43px;width:43px;justify-content:center}.nv-search span,.nv-search kbd{display:none}.nv-drop:not(.nv-more){display:none}.nv-more{margin-inline-start:0!important}.nv-nav-inner{justify-content:space-between}.nv-link,.nv-drop>summary{font-size:11.5px;padding-inline:16px}.nv-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.nv-hero{grid-template-columns:minmax(0,1fr) 250px}.nv-art-ring.r2{width:245px;height:245px}}
@media(max-width:700px){body.nv1500 #v103Header.nv-header{height:66px!important;min-height:66px!important;padding-inline:13px!important}body.nv1500 #topNavigation.nv-topnav{top:66px!important;padding-inline:12px!important;min-height:55px!important}.nv-nav-inner{min-height:55px}.nv-hbutton{width:37px;height:37px;min-width:37px}.nv-header-left,.nv-header-tools{gap:7px}.nv-brand{gap:7px}.nv-brand strong{font-size:11.5px;max-width:185px;overflow:hidden;text-overflow:ellipsis}.nv-brand small{font-size:8px;letter-spacing:.015em}.nv-symbol{height:36px;width:36px;flex-basis:36px;border-radius:10px}.nv-symbol svg{width:23px}.nv-desktop-only{display:none}.nv-search{min-width:37px;width:37px;height:37px}.nv-link,.nv-drop>summary{padding-inline:8px;font-size:10px;gap:6px}.nv-popover{position:fixed;width:calc(100vw - 20px)!important;max-height:calc(100dvh - 135px);padding:9px}.nv-cardgrid,.nv-more .nv-cardgrid{grid-template-columns:1fr}.nv-card{min-height:56px;padding:7px 9px}.nv-popover-head h2{font-size:16px}.nv-popover-head{margin-bottom:10px}.nv-card-copy strong{font-size:11px}.nv-card-copy small{font-size:9px}body.nv1500 .main{padding:19px 14px 48px!important}.nv-hero{display:block;min-height:auto}.nv-hero-main{padding:33px 23px}.nv-hero-art{display:none}.nv-hero h1{font-size:29px;line-height:1.6}.nv-hero p{font-size:12px}.nv-hero-actions{gap:8px}.nv-primary,.nv-secondary{padding:9px 12px;font-size:10px}.nv-sectiontitle{margin-top:30px;align-items:start}.nv-sectiontitle h2{font-size:19px}.nv-sectiontitle p{font-size:10px}.nv-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.nv-stat{padding:13px;min-height:121px}.nv-stat strong{font-size:25px}.nv-stat span:not(.nv-stat-icon){font-size:9.5px}.nv-quickgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.nv-quick{padding:11px;min-height:88px;gap:10px}.nv-quick>span{width:37px;height:37px}.nv-quick>span svg{width:19px}.nv-quick strong{font-size:10px}.nv-home-tail,.nv-dashboard-banner,.nv-dash-guide{flex-direction:column;align-items:flex-start;padding:21px;gap:15px}.nv-dashboard-banner h1{font-size:23px}body.nv1500 .nv-footer{padding:23px 16px;justify-content:flex-start}}
@media(max-width:380px){.nv-brand small{display:none}.nv-brand strong{max-width:142px;font-size:11px}.nv-header-tools{gap:3px}.nv-quickgrid{grid-template-columns:1fr}.nv-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{body.nv1500 #v103Header,body.nv1500 #topNavigation,body.nv1500 #sidebar,body.nv1500 .nv-footer{display:none!important}body.nv1500 .nv-hero{background:#172948!important;color:#fff!important}body.nv1500 .nv-stat{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.nv-card,.nv-drop>summary,.nv-sidebar{transition:none!important}}
/* Fit labels without off-screen menus; the All Sections directory exposes every route. */
@media(max-width:1600px) and (min-width:1051px){.nv-nav-inner [data-nv-menu="student"],.nv-nav-inner [data-nv-menu="support"]{display:none}}
@media(max-width:1250px) and (min-width:1051px){.nv-nav-inner [data-nv-menu="guides"],.nv-nav-inner [data-nv-menu="training"]{display:none}}
/* Keep the persistent top bar entirely in view on 320px devices. Dashboard remains in All Sections. */
@media(max-width:350px){.nv-nav-inner>.nv-link[data-nv-route="dashboard"]{display:none}.nv-nav-inner>.nv-link[data-nv-route="home"]{padding-inline:6px}.nv-nav-inner>.nv-more>summary{padding-inline:7px}}

/* Analytics 2041: grouped, accessible, source-aware counters using existing design tokens. */
.nv-metric-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 17px;align-items:center}.nv-metric-filters button{min-height:44px;padding:9px 17px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--muted);font-size:12px;font-weight:700;cursor:pointer}.nv-metric-filters button.is-selected,.nv-metric-filters button[aria-pressed="true"]{background:var(--primary);color:#fff;border-color:var(--primary)}.nv-metric-filters button:focus-visible,.nv-stat-drill:focus-visible{outline:3px solid #25a6dc;outline-offset:3px}.nv-stat{overflow:hidden;isolation:isolate}.nv-stat::before{content:"";position:absolute;inset-block-start:0;inset-inline:0;height:3px;background:linear-gradient(90deg,#31b4d2,#76dbde);opacity:.58}.nv-stat:hover{border-color:color-mix(in srgb,var(--primary) 32%,var(--border))}.nv-stat-drill{position:absolute;inset-inline-end:7px;inset-block-end:7px;display:grid;place-items:center;width:39px;height:39px;border:0;border-radius:11px;background:transparent;color:var(--primary);cursor:pointer}.nv-stat-drill:hover{background:var(--soft)}.nv-stat-drill svg{width:17px;height:17px}.nv-stat-unavailable{max-width:100%;white-space:normal}.nv-freshness{display:block;margin:13px 2px 0;font-size:10.5px;color:var(--muted)}@media(max-width:700px){.nv-metric-filters{flex-wrap:nowrap;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity;}.nv-metric-filters button{flex:none;scroll-snap-align:start}.nv-stat{padding-block-end:40px!important}.nv-stat-drill{inset-block-end:3px}}@media(prefers-reduced-motion:reduce){.nv-stat{transition:none}}

.nv-breakdowns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.nv-breakdown{border:1px solid var(--border);border-radius:19px;padding:22px 23px;background:var(--panel);min-width:0}.nv-breakdown h2{font-size:17px;font-weight:850;color:var(--ink);margin:0 0 6px}.nv-breakdown p{color:var(--muted);margin:0 0 20px;font-size:11px}.nv-breakdown-row{margin:0 0 15px}.nv-breakdown-row>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 8px;font-size:11px;color:var(--ink)}.nv-breakdown-row strong{font:800 13px Inter,"Noto Kufi Arabic",sans-serif}.nv-meter{height:9px;background:var(--soft);border-radius:999px;overflow:hidden}.nv-meter i{height:100%;display:block;border-radius:999px;transition:width .25s ease}.nv-breakdown>small{font-size:10px;color:var(--muted)}@media(max-width:700px){.nv-breakdowns{grid-template-columns:1fr;gap:10px}.nv-breakdown{padding:18px}}@media(prefers-reduced-motion:reduce){.nv-meter i{transition:none}}
/* Navigation interaction & accessibility — canonical component rules. */
.nv-drop[open]::after{content:"";position:absolute;inset-inline:0;top:100%;height:14px;z-index:179;pointer-events:auto}
.nv-drop[open][data-nv-pinned="true"]>summary{background:var(--soft);border-color:var(--primary);color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}
.nv-drop .nv-popover{border-radius:14px;box-shadow:0 20px 48px rgba(17,34,71,.18);outline:1px solid rgba(255,255,255,.5)}
.nv-cardgrid{gap:6px}.nv-card{border-radius:11px;min-height:59px;gap:8px;align-items:center}.nv-card-icon{width:32px;height:32px;flex-basis:32px;border-radius:9px;background:var(--panel)}
.nv-card-copy strong{font-size:11px;line-height:1.55}.nv-card-copy small{font-size:9px}.nv-card-arrow{transition:transform .16s}.nv-card:hover .nv-card-arrow{transform:translate(-3px,-3px)}
.nv-popover-head{background:linear-gradient(105deg,color-mix(in srgb,var(--soft) 65%,var(--panel)),var(--panel));border-radius:10px;padding:9px 11px}
.nv-popover-head h2{font-size:15px}.nv-popover-head p{font-size:10px}
.nv-side-link svg,.nv-link svg,.nv-drop svg,.nv-hbutton svg,.nv-card-icon svg{flex-shrink:0}
.nv-drop>summary:focus-visible,.nv-card:focus-visible,.nv-side-link:focus-visible{outline:3px solid #4e9aff;outline-offset:3px}
@media(max-width:700px){.nv-drop .nv-popover{border-radius:13px}.nv-card{min-height:56px}.nv-card-copy strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){.nv-card,.nv-card-arrow,.nv-link,.nv-drop>summary{transition:none!important}.nv-card:hover{transform:none!important}}
@media(max-width:700px){body.nv1500 #sidebar.nv-sidebar{bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;height:calc(100dvh - 72px - env(safe-area-inset-bottom,0px))!important;box-shadow:0 12px 35px #081c3740!important;border-end-end-radius:18px;border-end-start-radius:18px}.nv-side-scroll{padding-bottom:28px}}

/* Horizon 2050 home entry: shared with the canonical home renderer. */
.h2050-home-knowledge{margin:30px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:17px;border-radius:20px;padding:28px 33px;background:linear-gradient(120deg,#102b46,#0b1730);color:#fff}.h2050-home-knowledge h2{color:#fff;font-size:21px;margin:7px 0}.h2050-home-knowledge p{color:#c9deed;font-size:11px}.h2050-home-knowledge .h2050-overline{color:#6fd8e9}.h2050-home-knowledge button{background:#fff;color:#102b46;border:0;border-radius:12px;padding:12px 16px;display:inline-flex;gap:9px;align-items:center;font-size:11px;font-weight:900;min-height:44px;cursor:pointer}


@media(min-width:701px) and (max-width:1050px){.nv-more .nv-cardgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Horizon 2030 isolated component styles. Existing feature pages retain their own layouts. */
body.nv1500 .nv-smart-link,body.nv1500 .nv-hub-trigger{color:#187495;background:rgba(24,125,174,.08);border-radius:12px}
.h30-shell{max-width:1340px;margin:0 auto;padding-bottom:45px;color:var(--ink)}
.h30-lead{position:relative;isolation:isolate;overflow:hidden;border-radius:24px;padding:clamp(24px,4vw,55px);background:linear-gradient(115deg,#121e3c 5%,#1e396c 70%,#0c6984);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 18px 44px rgba(21,54,97,.13)}
.h30-lead::after{content:"";position:absolute;inset:auto -75px -140px auto;width:370px;height:370px;border-radius:50%;border:75px solid rgba(108,223,251,.08);pointer-events:none}.h30-lead-content{position:relative;z-index:1;max-width:720px}.h30-overline{display:block;font:700 10px Inter,Arial,sans-serif;letter-spacing:.18em;color:#46d5ec;text-transform:uppercase;margin-bottom:9px}.h30-lead h1{font-size:clamp(25px,3.3vw,42px);line-height:1.45;margin:0 0 11px;font-weight:800}.h30-lead p{font-size:13px;color:#e0ebfb;max-width:720px;line-height:2;margin:0}.h30-orbit{width:130px;height:130px;border-radius:32px;display:grid;place-items:center;background:linear-gradient(150deg,#477de4,#1c9db3);flex:none;transform:rotate(-7deg);box-shadow:0 18px 50px rgba(0,0,0,.1)}.h30-lead-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.h30-lead-link{min-height:43px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:#17385e;border:1px solid #e5f5ff;border-radius:12px;padding:9px 15px;font-size:13px;font-weight:800;cursor:pointer}.h30-lead-link+button{background:transparent;color:#fff;border-color:#9dbfda}
.h30-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.85fr);gap:18px;margin-top:20px}.h30-search-panel,.h30-widget,.h30-quality{background:var(--panel);border:1px solid var(--border);box-shadow:0 10px 30px rgba(25,60,103,.04);border-radius:20px;padding:24px}.h30-panel-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.h30-panel-heading h2,.h30-quality-heading h2{font-size:19px;margin:0 0 3px;line-height:1.55}.h30-panel-heading p,.h30-quality-heading p{font-size:13px;color:var(--muted);margin:0 0 18px}.h30-live{white-space:nowrap;border-radius:30px;padding:4px 10px;background:#e9f8f9;color:#116b75;font-size:12px;font-weight:800}.h30-search-panel label{display:block;font-size:13px;font-weight:800;margin-bottom:9px}.h30-input-wrap{display:flex;align-items:center;gap:10px;border:1.5px solid #adc4e2;background:var(--panel2);border-radius:14px;padding:0 15px;min-height:55px;color:#4274c5}.h30-input-wrap:focus-within{outline:3px solid #94d9f17a;border-color:#377ad5}.h30-input-wrap input{flex:1;width:100%;min-width:0;background:transparent;border:0;outline:0;color:var(--ink);font:600 12px "Noto Kufi Arabic",Inter,sans-serif}.h30-chips{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 24px}.h30-chips button{border-radius:8px;border:1px solid var(--border);color:var(--ink);background:var(--panel2);padding:6px 13px;font:600 13px "Noto Kufi Arabic",Inter,sans-serif;cursor:pointer}.h30-result-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--border);gap:12px}.h30-result-head strong{font-size:14px}.h30-result-head span{font-size:12px;color:var(--muted)}.h30-results{min-height:145px;max-height:440px;overflow-y:auto}.h30-empty{padding:32px 8px;text-align:center;color:var(--muted);font-size:14px;line-height:2}.h30-result{display:flex;width:100%;text-align:start;align-items:center;gap:12px;padding:14px 8px;background:none;border:0;border-bottom:1px solid var(--border);color:var(--ink);cursor:pointer;font-family:inherit}.h30-result:hover,.h30-result:focus-visible{background:var(--soft)}.h30-result>span:nth-child(2){flex:1;min-width:0}.h30-result strong{display:block;font-size:13px}.h30-result small{display:block;font-size:12px;color:var(--muted)}.h30-result-icon{display:grid;place-items:center;flex:none;width:39px;height:39px;background:var(--soft);border-radius:12px;color:var(--primary)}.h30-fullsearch{display:flex;align-items:center;gap:8px;margin-top:14px;padding:10px 0;background:none;border:0;color:var(--primary);font-size:13px;font-weight:800;cursor:pointer;font-family:inherit}
.h30-aside{display:grid;align-content:start;gap:18px}.h30-widget-title{display:flex;align-items:center;gap:10px;color:var(--primary);margin-bottom:18px}.h30-widget-title h2{font-size:14px;color:var(--ink);margin:0}.h30-history{display:grid;gap:7px}.h30-history-link{width:100%;text-align:start;display:flex;gap:11px;align-items:center;padding:10px 12px;background:var(--panel2);border:1px solid var(--border);border-radius:12px;color:var(--ink);font:700 13px "Noto Kufi Arabic",Inter,sans-serif;cursor:pointer}.h30-history-link svg{color:var(--primary)}.h30-clear,.h30-plainlink{background:none;border:0;padding:12px 0 0;font:700 12px "Noto Kufi Arabic",Inter,sans-serif;color:var(--primary);cursor:pointer}.h30-muted,.h30-data-widget p{color:var(--muted);font-size:13px;line-height:2}.h30-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.h30-mini-stats span{display:grid;background:var(--panel2);border-radius:10px;padding:12px;font-size:12px;color:var(--muted)}.h30-mini-stats strong{font:800 23px Inter,"Noto Kufi Arabic",sans-serif;color:var(--ink)}
.h30-quality{margin-top:20px}.h30-quality-heading{display:flex;align-items:start;gap:12px}.h30-mark{width:43px;height:43px;border-radius:12px;background:var(--soft);color:var(--primary);display:grid;place-items:center;flex:none}.h30-note-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.h30-note{display:flex;gap:11px;padding:14px;border:1px solid var(--border);background:var(--panel2);border-radius:12px}.h30-note-dot{flex:none;width:7px;height:7px;border-radius:50%;background:#3ca9c0;margin-top:8px}.h30-note strong{display:block;font-size:13px}.h30-note small{font-size:12px;line-height:1.7;color:var(--muted);display:block}.h30-disclaimer{margin:18px 0;font-size:12px;color:var(--muted)}
.h30-spotlight{display:flex;gap:17px;align-items:center;padding:21px 23px;border-radius:18px;border:1px solid #bddbeb;background:linear-gradient(115deg,#eaf6fc,#eff0ff);margin:24px 0;color:#173354}.h30-spotlight-icon{display:grid;place-items:center;flex:none;width:55px;height:55px;background:#d8edfa;color:#19598f;border-radius:14px}.h30-spotlight>div:nth-child(2){flex:1}.h30-spotlight h2{margin:0;font-size:16px}.h30-spotlight p{margin:4px 0 0;color:#4d6680;font-size:12px;line-height:2}.h30-open{flex:none;border:0;border-radius:11px;background:#244f9e;color:#fff;font:800 13px "Noto Kufi Arabic",Inter,sans-serif;padding:11px 18px;cursor:pointer}
.h30-result:focus-visible,.h30-history-link:focus-visible,.h30-chips button:focus-visible,.h30-lead-link:focus-visible,.h30-open:focus-visible,.h30-fullsearch:focus-visible{outline:3px solid #21b9d5;outline-offset:3px}
@media(max-width:1020px){.h30-columns{grid-template-columns:1fr}.h30-aside{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:670px){.h30-lead{border-radius:18px}.h30-orbit{display:none}.h30-aside{grid-template-columns:1fr}.h30-spotlight{flex-wrap:wrap;gap:12px}.h30-spotlight .h30-open{width:100%}.h30-search-panel,.h30-widget,.h30-quality{padding:18px}.h30-live{display:none}.h30-lead h1{font-size:25px}.h30-lead-link{width:100%;justify-content:center}}@media(max-width:1220px){body.nv1500 .nv-smart-link{display:none}}@media print{.h30-search-panel input,.h30-chips,.h30-fullsearch,.h30-lead-actions,.h30-clear{display:none!important}}
@media(prefers-reduced-motion:reduce){.h30-shell *{scroll-behavior:auto!important;transition:none!important}}
/* Horizon 2040 — purposeful, self-contained responsive components. */
body.nv1500{--h40-ink:#12263a;--h40-cool:#075c88;--h40-electric:#28a7c9;--h40-soft:#eaf7fc;--h40-outline:#d7e8f0}
body.nv1500 #v103Header.nv-header{box-shadow:0 5px 24px #092c5020;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
body.nv1500 #topNavigation.nv-topnav{box-shadow:0 5px 16px #092c5010}
body.nv1500 .nv-hero{background:linear-gradient(112deg,#092f52 0%,#075980 64%,#127e9b 100%);box-shadow:0 22px 55px #083e5a20}
body.nv1500 .nv-primary{background:#8febf2;color:#093955;border-color:transparent}
body.nv1500 .nv-quick:hover,body.nv1500 .nv-card:hover{transform:translateY(-2px);box-shadow:0 13px 24px #11385612}
body.nv1500 .nv-footer{border-top:1px solid var(--border)}
.h40-academics{margin:0 auto;max-width:1420px;color:var(--ink)}
.h40-head{position:relative;padding:39px 43px 45px;border-radius:26px;overflow:hidden;background:linear-gradient(118deg,#083451 0%,#07587d 68%,#1586a0);color:#fff;box-shadow:0 24px 50px #0a496b1f}
.h40-head:before{position:absolute;content:"";inset:0;pointer-events:none;background-image:radial-gradient(#ffffff25 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent 35%,black)}
.h40-overline{font:800 11px Inter,"Noto Kufi Arabic",sans-serif;letter-spacing:.09em;color:#28bfdc}.h40-head .h40-overline{color:#a1eef7}
.h40-head h1{position:relative;font-size:clamp(23px,3vw,36px);font-weight:900;line-height:1.7;color:#fff;margin:10px 0}
.h40-head p{position:relative;color:#d3edf5;line-height:2;max-width:720px;margin:0;font-size:13px}
.h40-head-orbit{position:absolute;inset-inline-end:7%;top:20%;opacity:.11;transform:scale(2.6)}
.h40-section-label{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:29px 0 15px}.h40-section-label h2{font-size:15px;margin:0;font-weight:900;color:var(--ink)}.h40-section-label>span{font-size:11px;color:var(--muted)}
.h40-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.h40-program{position:relative;display:flex;align-items:center;gap:15px;text-align:start;min-height:126px;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:18px;cursor:pointer;color:var(--ink);box-shadow:0 6px 22px #0d3d5107;transition:transform .18s,border-color .18s,box-shadow .18s}
.h40-program.selected{border:2px solid #219fbd;background:linear-gradient(135deg,var(--panel),var(--h40-soft));box-shadow:0 12px 28px #118db01e}.h40-program:hover{transform:translateY(-2px);border-color:#36a7c1}
.h40-program-icon{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;color:#0c7596;background:#e7f6fb;border-radius:16px}
.h40-program-content{flex:1;min-width:0;display:grid;gap:9px}.h40-program-content strong{font-size:13px;line-height:1.7;font-weight:850}.h40-program-content small{font-size:10px;color:var(--muted);line-height:1.9}.h40-program-tail{position:absolute;top:11px;inset-inline-end:13px;color:#147aa0;font:750 9px Inter,"Noto Kufi Arabic",sans-serif}
.h40-academic-body{display:grid;grid-template-columns:minmax(205px,285px) minmax(0,1fr);gap:20px;align-items:start;margin-top:20px}
.h40-year-panel,.h40-term-panel{border:1px solid var(--border);border-radius:19px;background:var(--panel);padding:22px;min-width:0}.h40-year-panel .h40-section-label{margin:0 0 17px}
.h40-years{display:grid;gap:7px}.h40-year{border:1px solid transparent;display:flex;align-items:center;gap:13px;min-height:55px;padding:10px 12px;background:transparent;color:var(--ink);border-radius:12px;cursor:pointer;text-align:start;font-size:12px}.h40-year>span{color:#0b87a6;font:900 17px Inter,sans-serif}.h40-year strong{flex:1}.h40-year.selected{border-color:#bde1ed;background:#e7f7fb}.h40-year:hover{background:var(--soft)}
.h40-academic-shortcuts{margin-top:22px;padding-top:16px;border-top:1px solid var(--border);display:grid;gap:7px}.h40-academic-shortcuts button{min-height:42px;border:0;border-radius:10px;text-align:start;display:flex;align-items:center;gap:10px;background:transparent;color:var(--primary);cursor:pointer;font-size:11px;font-weight:800}.h40-academic-shortcuts button:hover{background:var(--soft)}
.h40-term-heading{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:9px 16px}.h40-term-heading h2{margin:6px 0;font-size:19px}.h40-filter-label{font-size:11px;color:var(--muted);margin-inline-start:auto}.h40-term-heading input{width:min(250px,100%);min-height:42px;border:1px solid var(--border);background:var(--panel2);border-radius:11px;padding:9px 13px;color:var(--ink)}
.h40-term-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding:19px 0 14px}.h40-term-tabs button{border:1px solid var(--border);background:var(--panel2);color:var(--ink);border-radius:10px;min-height:42px;padding:9px 14px;cursor:pointer;font-size:11px;font-weight:800}.h40-term-tabs button.selected{background:#0b668b;color:white;border-color:#0b668b}
.h40-results-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:22px 0 14px;font-size:12px}.h40-results-bar span{color:var(--muted);font-size:10px}
.h40-courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.h40-course{padding:17px;border:1px solid var(--border);border-radius:13px;background:var(--panel2)}.h40-course-top,.h40-course-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.h40-course-code{font:750 10px Inter,sans-serif;color:#197b9c;overflow-wrap:anywhere}.h40-credit{font-size:10px;color:var(--muted)}.h40-course h3{font-size:12.5px;margin:12px 0 5px;line-height:1.9}.h40-course p{font:500 11px/1.8 Inter,"Noto Kufi Arabic",sans-serif;color:var(--muted);margin:0 0 18px}.h40-course-footer{padding-top:10px;border-top:1px solid var(--border)}.h40-course-footer small{font-size:9px;color:var(--muted)}.h40-course-open{border:1px solid var(--border);border-radius:10px;min-height:36px;background:var(--panel);color:var(--primary);display:flex;align-items:center;gap:7px;padding:7px 11px;cursor:pointer;font-size:10px;font-weight:800}
.h40-empty,.h40-loading{padding:30px 15px;text-align:center;color:var(--muted);font-size:12px;line-height:2}.h40-loading{display:flex;align-items:center;justify-content:center;gap:10px}.h40-data-source{font-size:10px;color:var(--muted);margin-top:22px;line-height:2}.h40-error button{margin-inline-start:9px;padding:6px 12px;border-radius:8px}
.h40-unknown{font-size:11px;line-height:2;color:var(--muted)}.h40-assistant-note{display:flex;align-items:start;gap:14px;border:1px solid #9cdee8;background:#e6f8fa;color:#074d6e;border-radius:14px;padding:16px;margin-bottom:20px}.h40-assistant-note strong{font-size:12px}.h40-assistant-note p{font-size:11px;line-height:2;margin:6px 0 0}.h40-assistant-groups{display:grid;gap:9px}.h40-assistant-group{border:1px solid var(--border);border-radius:12px;overflow:hidden}.h40-assistant-group summary{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 15px;cursor:pointer;font-weight:800;font-size:12px}.h40-assistant-group summary>span{flex:1}.h40-assistant-group summary small{font-size:10px;color:var(--muted)}.h40-assistant-list{border-top:1px solid var(--border);padding:4px 12px}.h40-assistant-course{display:flex;align-items:center;gap:12px;padding:11px 3px;border-bottom:1px solid var(--border)}.h40-assistant-course:last-child{border-bottom:0}.h40-assistant-course b{font:700 10px Inter;color:#187b9e}.h40-assistant-course span{flex:1;display:grid;gap:4px}.h40-assistant-course strong{font-size:11px}.h40-assistant-course small{font-size:9px;color:var(--muted)}.h40-assistant-course em{font-style:normal;color:var(--muted);font-size:10px}.h40-assistant-actions{margin-top:18px}.h40-action{min-height:42px;border:0;border-radius:10px;background:#0b668b;color:white;display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:11px;font-weight:800;cursor:pointer}
/* The only mobile dock. Never present it on desktop, and always reserve the safe area. */
body.nv1500 #h40MobileDock{display:none!important}
@media(max-width:1250px){.h40-program-grid{gap:10px}.h40-program{padding:13px;min-height:138px;align-items:flex-start;flex-direction:column}.h40-program-tail{top:9px}}
@media(max-width:800px){.h40-academic-body{grid-template-columns:1fr}.h40-year-panel{padding:14px}.h40-years{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.h40-year{flex-direction:column;gap:4px;justify-content:center;padding:8px 3px}.h40-year svg{display:none}.h40-year strong{font-size:10px}.h40-academic-shortcuts{display:flex;gap:14px}.h40-program-grid{grid-template-columns:1fr}.h40-program{align-items:center;flex-direction:row;min-height:104px;padding:14px 16px}.h40-program-tail{top:7px}.h40-courses{grid-template-columns:1fr}}
@media(max-width:700px){
 body.nv1500 #topNavigation.nv-topnav{display:none!important}
 body.nv1500 #v103Header.nv-header{position:sticky!important;top:0!important}
 body.nv1500 .main{padding-bottom:calc(109px + env(safe-area-inset-bottom,0px))!important}
 body.nv1500 #h40MobileDock{display:none}
 .h40-dock-inner{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;max-width:550px;margin:auto}
 .h40-dock-button{position:relative;display:grid;justify-items:center;align-content:center;gap:5px;min-width:0;min-height:58px;border:0;background:transparent;color:var(--muted);border-radius:13px;cursor:pointer;padding:5px 3px}
 .h40-dock-button.active{color:#09688c;background:#ddf6fb}
 .h40-dock-button.active:before{content:"";position:absolute;top:2px;left:36%;right:36%;height:3px;border-radius:10px;background:#009cc4}
 .h40-dock-icon{display:grid;place-items:center;width:24px;height:24px}.h40-dock-label{font-size:10px;line-height:1.5;font-weight:850;white-space:nowrap}
 body.nv1500 #sidebar.nv-sidebar{z-index:960}
 body.nv1500 .nv-hero{border-radius:19px}
 .h40-head{border-radius:19px;padding:29px 23px}.h40-head h1{font-size:24px}.h40-head p{font-size:11px}.h40-head-orbit{display:none}
 .h40-section-label{margin-top:24px}.h40-program-content strong{font-size:11px}.h40-program-content small{font-size:9px}.h40-program-icon{width:44px;height:44px;flex-basis:44px}
 .h40-term-panel{padding:15px}.h40-year-panel{padding:15px}.h40-term-heading input{width:100%}.h40-filter-label{margin-inline-start:0}.h40-term-heading h2{font-size:17px}
 .h40-assistant-note{padding:11px}.h40-assistant-course b{font-size:9px}
 body.nv1500 .nv-footer{padding-bottom:calc(114px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:360px){.h40-dock-label{font-size:9px}.h40-dock-button{gap:4px}.h40-years{gap:1px}.h40-year strong{font-size:9px}}
@media(prefers-reduced-motion:reduce){.h40-program,.h40-course-open{transition:none!important}}
@media print{body.nv1500 #h40MobileDock{display:none!important}}
.h40-owner-security{margin:24px auto 0;padding:27px;border-radius:18px;background:var(--panel);border:1px solid var(--border);max-width:1420px}.h40-owner-security h2{font-size:18px;margin:7px 0}.h40-owner-security p{font-size:11px;color:var(--muted);line-height:2}.h40-security-data{display:grid;grid-template-columns:1fr 2fr;gap:12px;margin:15px 0}.h40-security-data>span{background:var(--soft);border-radius:12px;padding:18px;display:grid;gap:9px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.h40-security-data strong{color:var(--ink);font-size:17px}.h40-security-actions{display:flex;gap:10px;flex-wrap:wrap}.h40-security-actions button{border:1px solid var(--border);background:var(--panel2);color:var(--primary);padding:11px 14px;min-height:43px;border-radius:10px;display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:750;font-size:11px}
@media(max-width:700px){.h40-security-data{grid-template-columns:1fr}.h40-owner-security{padding:19px}}
.h40-home-programs{margin-top:26px;padding:24px;border:1px solid var(--border);background:var(--panel);border-radius:19px}.h40-home-program-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.h40-home-program-head h2{margin:6px 0;font-size:20px;font-weight:900}.h40-home-program-head p{font-size:11px;color:var(--muted);line-height:2;margin:0}.h40-home-program-head>button{display:flex;align-items:center;gap:8px;flex-shrink:0;border:1px solid var(--border);border-radius:10px;padding:11px 13px;background:var(--panel2);color:var(--primary);cursor:pointer;font-size:11px;font-weight:800}.h40-home-program-grid{margin-top:21px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.h40-home-program-grid>button{min-height:118px;display:grid;grid-template-columns:41px 1fr 16px;align-items:center;gap:4px 10px;text-align:start;border:1px solid var(--border);background:var(--panel2);color:var(--ink);border-radius:13px;padding:13px;cursor:pointer}.h40-home-program-grid>button>span{width:40px;height:40px;border-radius:12px;background:#e0f4fa;color:#0b779a;grid-row:span 2;display:grid;place-items:center}.h40-home-program-grid>button>strong{font-size:12px}.h40-home-program-grid>button>small{font-size:10px;color:var(--muted);grid-column:2}.h40-home-program-grid>button>svg{grid-column:3;grid-row:1}.h40-home-program-grid>button:hover{border-color:#39a2bd;box-shadow:0 7px 19px #23597712}
@media(max-width:850px){.h40-home-program-grid{grid-template-columns:1fr}.h40-home-program-grid>button{min-height:79px}.h40-home-programs{padding:16px}.h40-home-program-head{align-items:start;flex-direction:column}.h40-home-program-head h2{font-size:17px}}

/* Operational readiness — scoped to the owner's existing administrative overview. */
.h40-owner-health{margin:18px auto 0;max-width:1420px;padding:26px;background:var(--panel);border:1px solid var(--border);border-radius:18px;color:var(--ink)}
.h40-owner-health h2{font-size:19px;margin:7px 0}.h40-owner-health p{font-size:11px;color:var(--muted);line-height:2;margin-bottom:0}
.h40-health-heading{display:flex;align-items:start;justify-content:space-between;gap:22px}
.h40-health-refresh{min-height:44px;border:1px solid var(--border);border-radius:12px;background:var(--panel2);color:var(--primary);padding:9px 14px;display:flex;align-items:center;gap:9px;font-size:11px;font-weight:800;cursor:pointer;flex:none}
.h40-health-refresh:disabled{opacity:.55;cursor:wait}
.h40-health-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.h40-health-totals>span{border:1px solid var(--border);border-radius:13px;background:var(--panel2);padding:16px;display:grid;gap:5px;font-size:11px;color:var(--muted)}
.h40-health-totals strong{font:800 27px Inter,Arial,sans-serif;color:var(--ink)}
.h40-health-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.h40-health-check{display:flex;gap:11px;align-items:center;padding:14px;border:1px solid var(--border);background:var(--panel2);border-radius:12px;min-width:0}
.h40-health-check>div{flex:1;min-width:0}.h40-health-check strong{font-size:11px;line-height:1.8;display:block}.h40-health-check small{font-size:10px;color:var(--muted);display:block;line-height:1.75;overflow-wrap:anywhere}
.h40-health-indicator{width:29px;height:29px;flex:none;border-radius:50%;display:grid;place-items:center;font:800 17px Inter,Arial;background:#e1f4ef;color:#08745b}
.h40-health-check.warn .h40-health-indicator{background:#fff1d8;color:#925b09}.h40-health-check.fail .h40-health-indicator{background:#fce5e6;color:#ad2939}
.h40-health-status{font-size:10px;font-weight:800;color:var(--muted);white-space:nowrap}.h40-health-limit{margin:17px 0 7px!important;border-top:1px solid var(--border);padding-top:12px}.h40-health-date{color:var(--muted);font-size:10px}
@media(max-width:760px){.h40-owner-health{padding:17px}.h40-health-heading{flex-direction:column;gap:12px}.h40-health-checks{grid-template-columns:1fr}.h40-health-totals>span{padding:10px}.h40-health-totals strong{font-size:23px}}
@media(max-width:360px){.h40-health-check{flex-wrap:wrap}.h40-health-status{margin-inline-start:auto}}
/* 2043 academic content coverage. Local scope; no legacy global overrides. */
.c43-panel{margin:22px auto 0;max-width:1420px;padding:clamp(18px,2.5vw,32px);border:1px solid var(--border);border-radius:20px;background:var(--panel);color:var(--ink);box-shadow:0 12px 32px rgba(13,39,74,.045)}
.c43-head{display:flex;justify-content:space-between;align-items:start;gap:20px;flex-wrap:wrap}.c43-head h2{font-size:clamp(19px,2vw,25px);line-height:1.5;margin:6px 0}.c43-head p{color:var(--muted);line-height:1.9;margin:0;max-width:720px;font-size:13px}.c43-actions{display:flex;gap:9px}.c43-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--border);background:var(--panel);color:var(--ink);border-radius:11px;padding:9px 13px;font:inherit;font-size:12px;cursor:pointer}.c43-actions button:hover{border-color:var(--primary)}.c43-actions button:disabled{opacity:.5;cursor:not-allowed}
.c43-body{margin-top:22px}.c43-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.c43-stats>div{padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;gap:7px}.c43-stats small{font-size:11px;color:var(--muted);line-height:1.5}.c43-stats strong{font-size:clamp(23px,2.6vw,33px);font-weight:750;line-height:1.2;font-variant-numeric:tabular-nums}.c43-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.c43-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650}.c43-filters select,.c43-filters input{min-width:0;width:100%;min-height:44px;background:var(--panel);color:var(--ink);border:1px solid var(--border);border-radius:10px;padding:9px 11px;font:inherit;font-weight:400}.c43-filters select:focus-visible,.c43-filters input:focus-visible,.c43-actions button:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.c43-results{border:1px solid var(--border);border-radius:14px;overflow:hidden}.c43-results-heading{padding:14px 18px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--bg);font-size:13px}.c43-results-heading span{font-size:11px;color:var(--muted)}.c43-table-wrap{max-height:440px;overflow:auto}.c43-table{width:100%;border-collapse:collapse;font-size:12px;min-width:530px}.c43-table th,.c43-table td{padding:11px 14px;text-align:start;border-top:1px solid var(--border);vertical-align:middle}.c43-table th{position:sticky;top:0;background:var(--panel);font-size:11px;z-index:1}.c43-table td:first-child{max-width:270px}.c43-table td:first-child strong{display:block;font-size:12px}.c43-table td small{display:block;color:var(--muted);margin-top:4px;overflow:hidden;text-overflow:ellipsis}.c43-chip{border-radius:40px;padding:5px 9px;display:inline-block;white-space:nowrap;font-size:11px;background:#e6f5f3;color:#11665e}.c43-chip.uncovered{background:#f3f0e7;color:#7b612c}.c43-note{margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.95}.c43-empty{text-align:center;color:var(--muted);padding:25px!important}
@media(max-width:980px){.c43-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.c43-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.c43-panel{padding:16px;border-radius:16px}.c43-head{flex-direction:column}.c43-actions{width:100%}.c43-actions button{flex:1}.c43-stats{gap:8px}.c43-stats>div{padding:12px}.c43-filters{gap:10px}.c43-results-heading{flex-direction:column}.c43-table-wrap{max-width:100%}}@media(prefers-reduced-motion:reduce){.c43-panel *{scroll-behavior:auto!important}}
@media(max-width:760px){.c43-panel{margin-bottom:calc(110px + env(safe-area-inset-bottom,0px))}.c43-table-wrap{overscroll-behavior:contain}}
/* People 2044: one fluid, accessible hierarchy across mobile and desktop */
.p44-tree-section,.p44-feed{--p44-ink:var(--text,#203454);--p44-line:#cbd9e8;--p44-border:#dce7f3;--p44-blue:#1a5e98;--p44-bg:var(--surface,#fff);margin-block:24px 36px;min-width:0;color:var(--p44-ink)}
.p44-tree-tools,.p44-feed-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px;flex-wrap:wrap}.p44-tree-tools h2,.p44-feed h2{font-size:clamp(19px,2.1vw,29px);line-height:1.55;margin:4px 0 5px;letter-spacing:-.02em}.p44-tree-tools p,.p44-feed-header p{font-size:13px;line-height:1.9;max-width:700px;color:var(--muted,#66768b);margin:0}.p44-kicker{display:inline-block;color:#3683a8;font-size:10px;letter-spacing:.12em;font-weight:900}.p44-tool-buttons,.p44-buttons{display:flex;gap:8px;flex-wrap:wrap}.p44-tool-buttons button,.p44-team-heading button,.p44-buttons button,.p44-dialog-actions button,.p44-link{min-height:43px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--p44-bg,#fff);border:1px solid var(--p44-border,#dae6ee);color:var(--p44-ink);border-radius:12px;cursor:pointer;font:inherit;font-size:12px;font-weight:800;text-decoration:none}.p44-primary,.p44-tool-buttons .p44-primary,.p44-buttons .p44-primary,.p44-dialog-actions .p44-primary{background:#145d90;color:#fff;border-color:#145d90}.p44-tree-region{border:1px solid var(--p44-border);background:linear-gradient(150deg,#f5f9fe,#fff);border-radius:24px;padding:clamp(12px,2vw,30px);max-width:100%;min-width:0;overflow:visible;box-shadow:0 16px 36px #1739600a}.p44-roots,.p44-children{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:22px;min-width:0}.p44-roots>.p44-branch{margin:0 auto;width:100%;max-width:1160px}.p44-branch{min-width:0;position:relative}.p44-branch-body{padding-top:14px}.p44-children{margin-top:15px;padding-inline-start:clamp(10px,2.2vw,30px);border-inline-start:2px solid var(--p44-line)}.p44-children>.p44-branch:before{content:"";position:absolute;inset-inline-start:calc(-1 * clamp(10px,2.2vw,30px));top:26px;height:2px;width:clamp(10px,2.2vw,30px);background:var(--p44-line)}.p44-unit-head{display:flex;align-items:center;gap:8px;min-width:0}.p44-unit{display:flex;align-items:center;gap:16px;background:var(--p44-bg);padding:17px 18px;border:1px solid var(--p44-border);border-radius:17px;flex:1;min-width:0;box-shadow:0 6px 18px #1d3f6010}.p44-unit-ico,.p44-entry-ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:#e5f3fb;color:#24648e}.p44-unit-copy{display:grid;min-width:0;gap:3px}.p44-unit-copy strong{font-weight:850;font-size:clamp(13px,1.4vw,17px);overflow-wrap:anywhere}.p44-unit-copy small{font-size:11px;color:#55708c}.p44-unit-copy em{font-style:normal;font-size:11px;color:#66768b}.p44-toggle{flex:none;display:grid;place-items:center;width:44px;height:44px;background:var(--p44-bg);color:var(--p44-ink);border:1px solid var(--p44-border);border-radius:14px;cursor:pointer}.p44-toggle[aria-expanded="false"] svg{transform:rotate(90deg)}.p44-people{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:12px;min-width:0}.p44-person{display:flex;align-items:center;gap:12px;min-width:0;min-height:98px;padding:13px;cursor:pointer;text-align:start;color:var(--p44-ink);background:var(--p44-bg);border:1px solid var(--p44-border);border-radius:15px;box-shadow:0 3px 11px #1d3f6008;transition:border-color .15s,transform .15s,box-shadow .15s;font:inherit}.p44-person:hover{border-color:#6ba6c4;box-shadow:0 12px 25px #1d3f6019;transform:translateY(-2px)}.p44-person>svg:last-child{color:#7596aa;flex:none}.p44-avatar{width:51px;height:51px;border-radius:15px;background:linear-gradient(145deg,#e0f0fb,#e2e7f9);color:#236c9c;flex:none;display:grid;place-items:center;overflow:hidden}.p44-avatar img{width:100%;height:100%;object-fit:cover}.p44-person-info{display:grid;gap:3px;flex:1;min-width:0}.p44-person-info strong{font-size:12px;font-weight:850;line-height:1.7;overflow-wrap:anywhere}.p44-person-info small{font-size:10px;color:#647c91;line-height:1.55;overflow-wrap:anywhere}.p44-person-tag{display:inline-flex;width:max-content;max-width:100%;padding:3px 7px;border-radius:7px;background:#edf6ff;color:#165887;font-size:10px;overflow-wrap:anywhere}.p44-person-count{display:flex;align-items:center;gap:4px}.p44-legend{display:flex;flex-wrap:wrap;gap:15px;margin-top:15px;font-size:11px;color:#628096}.p44-legend span{display:flex;align-items:center;gap:5px}.p44-empty,.p44-muted{font-size:13px;color:#73849a;line-height:2}.p44-empty{padding:20px;text-align:center}.p44-team-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0 12px;font-size:13px;font-weight:800}.p44-team-heading>span{display:flex;align-items:center;gap:7px}.p44-team-heading>div{display:flex;gap:8px}.p44-team-region .p44-roots{gap:15px}.p44-team-branch>.p44-unit-head .p44-person{flex:1}.p44-team-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:12px}.p44-feed{margin-top:38px;padding:24px;border:1px solid var(--p44-border);border-radius:22px;background:var(--p44-bg)}.p44-feed-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}.p44-story{border:1px solid var(--p44-border);border-radius:15px;background:var(--p44-bg);padding:10px}.p44-story>small{display:flex;align-items:center;gap:5px;color:#68819a;font-size:11px;padding:5px 8px}.p44-entry{display:flex;gap:12px;padding:13px;min-width:0;background:var(--p44-bg);border:1px solid var(--p44-border);border-radius:13px}.p44-entry-ico{width:37px;height:37px}.p44-entry>div:last-child{min-width:0}.p44-entry h4{font-size:13px;margin:4px 0;line-height:1.6;overflow-wrap:anywhere}.p44-entry small{color:#67819a;font-size:10px}.p44-entry p{font-size:11px;line-height:1.9;color:#526a80;white-space:pre-wrap;overflow-wrap:anywhere}.p44-entry a{display:inline-flex;gap:6px;align-items:center;color:#176a9a;font-size:11px}.p44-dialog{min-width:0;width:min(100%,900px);color:var(--p44-ink,#203454)}.p44-dialog-top{display:flex;gap:20px;align-items:center;padding:22px;background:linear-gradient(125deg,#e8f5ff,#f5f8ff);border:1px solid #d8e8f3;border-radius:18px}.p44-dialog-top .p44-avatar{width:92px;height:92px;border-radius:22px}.p44-dialog-top h2{margin:4px 0;font-size:clamp(19px,2.2vw,29px);line-height:1.5}.p44-dialog-top p{margin:3px 0 10px;color:#526f8b}.p44-pill{display:inline-flex;gap:5px;align-items:center;color:#195f87;background:#d8ebf8;border-radius:10px;padding:7px 10px;font-size:11px}.p44-dialog-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:16px}.p44-panel{min-width:0;padding:17px;border:1px solid var(--p44-border);border-radius:15px;background:var(--p44-bg)}.p44-panel-wide{grid-column:1/-1}.p44-panel h3{font-size:14px;display:flex;gap:7px;align-items:center;margin:0 0 12px}.p44-panel h4{font-size:12px}.p44-panel dl{display:grid;gap:10px}.p44-fact dt{color:#617c98;font-size:10px}.p44-fact dd{margin:3px 0 0;font-size:12px;overflow-wrap:anywhere}.p44-readable{white-space:pre-wrap;line-height:2.05;color:#536a82;font-size:12px;overflow-wrap:anywhere}.p44-panel-title{display:flex;justify-content:space-between;align-items:center}.p44-panel-title span{font-size:11px;border-radius:9px;background:#eaf5fc;padding:6px 9px}.p44-entry-grid{display:grid;gap:10px}.p44-dialog-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:18px}.p44-admin{min-width:0}.p44-admin-heading h2{font-size:21px;margin:6px 0}.p44-admin-heading p{font-size:12px;line-height:2;color:#67819a}.p44-admin-heading .p44-buttons{margin:15px 0}.p44-owner-list{display:grid;gap:9px}.p44-owner-row{display:flex;gap:14px;justify-content:space-between;align-items:center;border:1px solid #dae5f2;border-radius:12px;padding:12px}.p44-owner-row>div:first-child{min-width:0}.p44-owner-row strong,.p44-owner-row small{display:block;overflow-wrap:anywhere}.p44-owner-row small{font-size:10px;color:#687f99}.p44-owner-row>div:last-child{display:flex;gap:6px}.p44-owner-row button{width:40px;height:40px;border:1px solid #dae5f2;border-radius:11px;background:#fff;color:#315777;cursor:pointer}.p44-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p44-form label{display:grid;gap:5px;font-size:11px;color:#55708a;font-weight:800}.p44-form input,.p44-form textarea,.p44-form select{font:inherit;color:#1c3852;min-width:0;border:1px solid #cedde9;border-radius:10px;padding:11px;background:#fff}.p44-form textarea{min-height:90px;resize:vertical}.p44-form .p44-checkbox{display:flex;align-items:center}.p44-form .p44-buttons{grid-column:1/-1}.p44-team-admin{margin-top:22px;padding:18px;border:1px solid #dae6f0;border-radius:17px}.p44-team-admin p{font-size:12px;color:#667e92}.p44-team-admin h3{margin:0 0 12px}button:focus-visible,.p44-person:focus-visible,.p44-toggle:focus-visible{outline:3px solid #5baad4;outline-offset:3px}
@media(min-width:1250px){.p44-children{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,370px),1fr));gap:18px}.p44-branch .p44-children .p44-children{grid-template-columns:1fr}.p44-tree-region{padding:25px 29px}}
@media(max-width:760px){.p44-tree-region{border-radius:16px;padding:12px}.p44-unit{gap:10px;padding:12px}.p44-unit-ico{width:36px;height:36px}.p44-children{padding-inline-start:13px;gap:14px}.p44-children>.p44-branch:before{inset-inline-start:-13px;width:13px}.p44-people{grid-template-columns:1fr}.p44-person{width:100%;min-height:82px}.p44-tree-tools,.p44-feed-header{gap:14px}.p44-tool-buttons{width:100%}.p44-tool-buttons button{flex:1}.p44-dialog-top{padding:14px;gap:12px}.p44-dialog-top .p44-avatar{width:67px;height:67px}.p44-dialog-body,.p44-form{grid-template-columns:1fr}.p44-feed{padding:14px}.p44-dialog-actions{justify-content:stretch}.p44-dialog-actions>*{flex:1}.p44-legend{gap:10px}.p44-entry-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.p44-person{transition:none}.p44-person:hover{transform:none}}
@media print{.p44-tool-buttons,.p44-toggle,.p44-dialog-actions,.p44-team-heading button{display:none!important}.p44-tree-region{overflow:visible;break-inside:avoid}.p44-person{break-inside:avoid}}
/* Modal must remain above the fixed mobile-only dock, including at 320px. */
#modalRoot .modal-backdrop:has(.p44-dialog),#modalRoot .modal-backdrop:has(.p44-admin){z-index:1900}
/* Connected organization chart: org-level anchors on desktop, nested accessible lists on mobile. */
.p44-tree-section{--p44-ink:var(--ink,#1a3451);--p44-line:#b6d0e3;--p44-border:var(--border,#dce7f3);--p44-bg:var(--panel,#fff)}
.p44-tree-tools,.p44-feed-header{background:linear-gradient(115deg,#0d2441,#134f72);color:#fff;padding:clamp(18px,2.4vw,29px);border-radius:22px;box-shadow:0 16px 36px #092a4b22}
.p44-tree-tools h2,.p44-feed-header h2{color:#fff}.p44-tree-tools p,.p44-feed-header p{color:#d0e8f6}
.p44-tree-tools .p44-kicker,.p44-feed-header .p44-kicker{color:#a8eff3}
.p44-tree-tools .p44-tool-buttons button,.p44-feed-header .p44-primary{background:#ffffff16;border-color:#ffffff35;color:#fff}
.p44-tree-tools .p44-tool-buttons button:hover,.p44-tree-tools .p44-tool-buttons button[aria-pressed="true"]{background:#e2f4ff;color:#0d3555}
.p44-tree-region{background:radial-gradient(circle at 18% 0%,#e9f7ff 0%,transparent 35%),linear-gradient(150deg,#f8fbff,#f0f5fb);border-color:#cddfee;min-height:145px}
.p44-unit{background:linear-gradient(140deg,#fff,#f7faff);border-color:#bfd4e7;box-shadow:0 8px 23px #0e36500e}
.p44-unit-ico{background:linear-gradient(145deg,#d9edfb,#eaf0fc);color:#164e7b}
.p44-unit-copy strong{font-size:clamp(13px,1.2vw,16px)}
.p44-unit-copy small{font-size:11px;color:#47749a}
.p44-person{border-color:#d5e4ef;background:#fff;box-shadow:0 6px 20px #0b37610c}
.p44-person:focus-visible,.p44-toggle:focus-visible{outline:3px solid #268bb8;outline-offset:3px}
.p44-person-tag{background:#e7f3f8;color:#125a75;border:1px solid #d2e8f0;border-radius:50px}
.p44-compact .p44-people{grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:8px}
.p44-compact .p44-person{min-height:66px;padding:8px}.p44-compact .p44-avatar{width:39px;height:39px;border-radius:11px}
.p44-compact .p44-person-info small{display:none}.p44-compact .p44-person-info strong{font-size:11px}
@media(min-width:1050px){
 .p44-tree-region{padding:32px clamp(18px,3vw,50px) 46px}
 .p44-roots{gap:40px}
 .p44-roots>.p44-branch{max-width:1380px}
 .p44-roots>.p44-branch>.p44-unit-head{width:min(100%,490px);margin-inline:auto;position:relative}
 .p44-roots>.p44-branch>.p44-unit-head .p44-unit{border:2px solid #1c6289;background:linear-gradient(130deg,#123650,#235a7a);color:white;box-shadow:0 14px 30px #0d3b5b30}
 .p44-roots>.p44-branch>.p44-unit-head .p44-unit small,.p44-roots>.p44-branch>.p44-unit-head .p44-unit em{color:#d2e9f4}
 .p44-roots>.p44-branch>.p44-unit-head .p44-unit-ico{background:#ffffff22;color:#fff}
 .p44-roots>.p44-branch>.p44-branch-body{position:relative;padding-top:39px}
 .p44-roots>.p44-branch>.p44-branch-body::before{content:"";position:absolute;top:0;left:50%;height:39px;border-left:2px solid var(--p44-line)}
 .p44-roots>.p44-branch>.p44-branch-body>.p44-children{position:relative;border:0;padding:24px 0 0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px;align-items:start}
 .p44-roots>.p44-branch>.p44-branch-body>.p44-children::before{content:"";position:absolute;top:0;inset-inline:9% 9%;border-top:2px solid var(--p44-line)}
 .p44-roots>.p44-branch>.p44-branch-body>.p44-children>.p44-branch::before{top:-24px;inset-inline-start:50%;width:0;height:24px;border-inline-start:2px solid var(--p44-line);background:none}
 .p44-children .p44-children{display:grid;grid-template-columns:1fr;gap:13px;border-color:#c6d9e8}
 .p44-team-region .p44-roots>.p44-branch>.p44-unit-head .p44-person{background:linear-gradient(125deg,#0e3659,#215f7c);color:#fff;border-color:#236889}
 .p44-team-region .p44-roots>.p44-branch>.p44-unit-head .p44-person small,.p44-team-region .p44-roots>.p44-branch>.p44-unit-head .p44-person-tag{color:#dceef9}
 .p44-team-region .p44-roots>.p44-branch>.p44-branch-body>.p44-children,.p44-team-region .p44-roots>.p44-branch>.p44-children{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:25px;margin-top:28px;padding:25px 0 0;border:0}
 .p44-team-region .p44-roots>.p44-branch>.p44-children::before{content:"";position:absolute;top:0;inset-inline:12% 12%;border-top:2px solid var(--p44-line)}
 .p44-team-region .p44-roots>.p44-branch>.p44-children>.p44-branch::before{top:-25px;inset-inline-start:50%;width:0;height:25px;border-inline-start:2px solid var(--p44-line);background:none}
}
@media(max-width:1049px){
 .p44-tree-region{padding:18px 14px;overflow-x:visible}
 .p44-roots,.p44-children{grid-template-columns:minmax(0,1fr)}
 .p44-children{padding-inline-start:18px;border-inline-start:2px solid #c3d9e9}
 .p44-children>.p44-branch::before{inset-inline-start:-18px;width:18px}
 .p44-tree-tools{padding:18px}
}
@media(max-width:440px){.p44-tree-tools .p44-tool-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.p44-tree-tools .p44-tool-buttons button{font-size:11px;padding:8px 9px}.p44-tree-region{padding:12px 8px}.p44-children{padding-inline-start:12px}.p44-children>.p44-branch::before{inset-inline-start:-12px;width:12px}.p44-unit-head{gap:5px}.p44-unit{padding:10px;gap:8px}.p44-unit-copy small{font-size:10px}.p44-toggle{width:36px;height:40px}.p44-person{padding:10px}}
@media print{.p44-tree-tools,.p44-feed-header{background:#fff;color:#000;box-shadow:none}.p44-tree-tools h2,.p44-tree-tools p{color:#000}.p44-tree-region{background:#fff;border:1px solid #bbb}.p44-person,.p44-unit{box-shadow:none}}

/* A consistent accessible, nested organizational diagram; horizontal level lines on desktop, vertical lineage on mobile. */
.p44-tree-section .p44-tree-region{position:relative;overflow:auto;overscroll-behavior:contain;min-width:0;border:1px solid #d3e1eb;background:linear-gradient(180deg,#f7fafc,#eaf1f7);border-radius:20px}.p44-tree-section .p44-roots{list-style:none;margin:0 auto;padding:0}.p44-tree-section .p44-branch{list-style:none;min-width:0;position:relative}.p44-tree-section .p44-unit{min-height:64px}.p44-tree-section .p44-unit-head{position:relative}.p44-tree-section .p44-children{list-style:none}.p44-tree-section .p44-people{min-width:0}.p44-tree-section .p44-person{max-width:100%;min-width:0}.p44-tree-section .p44-branch-body{min-width:0}.p44-tree-section .p44-tree-region:focus-visible{outline:3px solid #11a9be;outline-offset:2px}.p44-tree-section .p44-toggle[aria-expanded="false"] svg{transform:rotate(0)}
.p44-team-region .p44-person-info small{line-height:1.6}.p44-team-region .p44-team-person{min-height:76px;align-items:center}.p44-team-region .p44-person{width:100%}
@media(min-width:1050px){.p44-tree-section .p44-roots>.p44-branch{min-width:0}.p44-tree-section .p44-roots>.p44-branch>.p44-branch-body>.p44-children{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));align-items:start;gap:24px}.p44-tree-section .p44-roots>.p44-branch>.p44-branch-body>.p44-children:has(>.p44-branch:only-child)::before{display:none}}
.p44-chartbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 4px 12px;color:#25546e}.p44-chartbar button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:42px;min-height:40px;padding:8px 10px;background:#fff;color:#205672;border:1px solid #cbdfe9;border-radius:10px;cursor:pointer;font:700 11px inherit}.p44-chartbar button:focus-visible{outline:3px solid #06b6d4;outline-offset:2px}.p44-chartbar output{min-width:42px;text-align:center;font:700 12px Inter,sans-serif}.p44-tree-region .p44-roots{transform-origin:center top}.p44-team-region .p44-roots>.p44-branch{max-width:100%}@media(max-width:760px){.p44-chartbar button{min-height:40px}.p44-chartbar button[data-p44-zoom="in"],.p44-chartbar button[data-p44-zoom="out"]{display:none}.p44-tree-region .p44-roots{zoom:1!important}}
/* Multiple verified top-level team records are peers, not a fabricated reporting chain. */
@media (min-width:1050px){
 .p44-team-region .p44-roots:has(>.p44-branch:nth-child(2)){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:20px;align-items:start}
 .p44-team-region .p44-roots:has(>.p44-branch:nth-child(2))>.p44-branch{max-width:none;width:100%;margin:0}
 .p44-team-region .p44-roots:has(>.p44-branch:nth-child(2))>.p44-branch>.p44-person{width:100%;max-width:none}
}
/* Ensure the pale badge remains readable on the darker top-level team cards. */
.p44-team-region .p44-roots>.p44-branch .p44-person-tag{background:#def2ff;color:#174e6c;border-color:#b5dbee}
/* V18 final team renderer: P44 is the active graph, not the older V150 template. */
.p44-team-region .p44-roots>.p44-branch{max-width:100%;}
.p44-team-region .p44-children{border-inline-start:2px solid #b4cfda;}
.p44-team-region .p44-person.v18-live-team-card{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;min-height:163px;gap:8px;text-align:center;padding:13px 11px 10px;border-block-start:4px solid #087e8e;border-radius:16px;background:var(--p44-bg,#fff);box-shadow:0 9px 28px #174b6520;max-width:100%;}
.p44-team-region .p44-team-branch[data-p44-depth="0"]>.p44-unit-head>.v18-live-team-card{border-block-start-color:#087c8a;min-height:175px;}
.p44-team-region .p44-team-branch[data-p44-depth="1"]:nth-child(4n/**/+1)>.p44-unit-head>.v18-live-team-card{border-block-start-color:#7d53c7;}
.p44-team-region .p44-team-branch[data-p44-depth="1"]:nth-child(4n/**/+2)>.p44-unit-head>.v18-live-team-card{border-block-start-color:#1683c7;}
.p44-team-region .p44-team-branch[data-p44-depth="1"]:nth-child(4n/**/+3)>.p44-unit-head>.v18-live-team-card{border-block-start-color:#269f74;}
.p44-team-region .p44-team-branch[data-p44-depth="1"]:nth-child(4n/**/+4)>.p44-unit-head>.v18-live-team-card{border-block-start-color:#ef8c3b;}
.p44-team-region .v18-live-team-card .p44-avatar{width:58px;height:58px;border-radius:50%;flex:0 0 58px;background:#e2f2f5;color:#12697a;}
.p44-team-region .v18-live-team-card .p44-person-info{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;flex:1;}
.p44-team-region .v18-live-team-card .p44-person-info strong{font-size:12.5px;font-weight:850;line-height:1.55;}
.p44-team-region .v18-live-team-card .p44-person-info small{font-size:10.5px;line-height:1.6;}
.p44-team-region .v18-live-team-card .v18-live-team-more{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:auto;padding:7px 10px;border-radius:9px;color:#075e6b;background:#e3f3f6;font-size:10.5px;font-weight:800;}
.p44-team-region .v18-live-team-card>svg:last-child{display:none}
.p44-team-region .p44-unit-head{align-items:stretch;}
.p44-team-region .p44-unit-head>.p44-toggle{align-self:flex-start;margin-top:7px;}
@media(min-width:1050px){.p44-team-region .p44-roots>.p44-branch:only-child>.p44-unit-head{max-width:350px;margin:0 auto;justify-content:center}.p44-team-region .p44-roots>.p44-branch:only-child>.p44-children{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(9px,1.3vw,19px);padding-inline:0;border:0;}.p44-team-region .p44-roots>.p44-branch:only-child>.p44-children>.p44-branch:before{display:none}.p44-team-region .p44-roots>.p44-branch:only-child>.p44-children>.p44-branch>.p44-children{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;padding-inline-start:0;border:0}.p44-team-region .p44-roots>.p44-branch:only-child>.p44-children>.p44-branch>.p44-children>.p44-branch:before{display:none}.p44-team-region .p44-roots>.p44-branch:only-child>.p44-children>.p44-branch>.p44-children .v18-live-team-card{min-height:133px;padding:10px 7px}.p44-team-region .p44-roots>.p44-branch:only-child>.p44-children>.p44-branch>.p44-children .v18-live-team-card .p44-avatar{width:40px;height:40px;flex-basis:40px}}
@media(max-width:760px){.p44-team-region .p44-roots>.p44-branch{max-width:100%}.p44-team-region .p44-person.v18-live-team-card{min-height:125px;padding:9px;width:100%}.p44-team-region .v18-live-team-card .p44-avatar{width:45px;height:45px;flex-basis:45px}.p44-team-region .v18-live-team-card .v18-live-team-more{min-height:33px}}
/* Horizon 2050 independent knowledge-view component; existing app design tokens remain authoritative. */
.h2050-view{--h2050-navy:#0b1730;--h2050-blue:#2563eb;--h2050-cyan:#06b6d4;color:var(--ink);max-width:1450px;margin:auto}
.h2050-banner{background:linear-gradient(118deg,#0b1730,#102b46 67%,#15516a);color:#fff;position:relative;overflow:hidden;border-radius:25px;padding:clamp(25px,5vw,65px);display:flex;align-items:center;justify-content:space-between;min-height:275px;gap:12px}
.h2050-banner-copy{position:relative;z-index:2;max-width:775px}.h2050-eyebrow{display:inline-flex;align-items:center;gap:12px;letter-spacing:.17em;font:700 11px Inter,sans-serif;color:#8adce8}.h2050-eyebrow i{height:5px;width:5px;border-radius:50%;background:#5eead4}
.h2050-banner h1{color:white;font-size:clamp(26px,3.5vw,44px);margin:17px 0 6px;line-height:1.55;letter-spacing:-.035em}.h2050-banner p{color:#d4e9fa;line-height:2;max-width:680px;font-size:13px}.h2050-brandline{color:#a5c4e4;font:500 11px/1.7 Inter,sans-serif;margin-top:22px}
.h2050-art{width:270px;max-width:28%;color:#31b6c9;opacity:.85;flex:none}.h2050-art svg{width:100%;height:auto;fill:none}.h2050-art circle{fill:#102b46;stroke:#7ad5e3;stroke-width:2}
.h2050-toolbar{display:flex;flex-wrap:wrap;gap:22px;justify-content:space-between;align-items:end;padding:24px 0 16px}.h2050-toolbar fieldset{border:0;padding:0;margin:0;min-width:0}.h2050-toolbar legend,.h2050-searchlabel{color:var(--ink);font-size:11px;font-weight:800;margin-bottom:10px}.h2050-programs{display:flex;flex-wrap:wrap;gap:8px}.h2050-programs button,.h2050-filters button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:45px;background:var(--panel);color:var(--ink);border:1px solid var(--border);border-radius:12px;padding:9px 14px;font-size:11px;font-weight:800;cursor:pointer}.h2050-programs button.selected,.h2050-filters button.selected{background:#102b46;color:#fff;border-color:#102b46}.h2050-searchlabel{display:grid;gap:6px;min-width:min(250px,100%)}.h2050-searchlabel input{border:1px solid var(--border);background:var(--panel);color:var(--ink);border-radius:11px;padding:12px 15px;min-height:45px;width:100%}
.h2050-data-note{display:flex;gap:10px;align-items:flex-start;padding:14px 18px;border:1px solid var(--border);border-radius:13px;background:var(--panel2);color:var(--muted);font-size:11px;line-height:2}.h2050-data-note svg{flex:none;margin-top:4px;color:var(--primary)}
.h2050-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:17px 0 25px}.h2050-summary>div{background:var(--panel);border-radius:16px;border:1px solid var(--border);padding:21px;display:flex;flex-direction:column;gap:4px}.h2050-summary strong{font:800 31px/1.5 Inter,"Noto Kufi Arabic",sans-serif;color:var(--ink)}.h2050-summary span{font-size:11px;color:var(--muted)}
.h2050-graph{display:grid;grid-template-columns:245px minmax(0,1fr);gap:20px;align-items:start}.h2050-track{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:17px;min-width:0}.h2050-tree-root{display:flex;align-items:center;gap:9px;color:var(--ink);font-weight:900;padding:13px;background:var(--soft);border-radius:12px;font-size:12px;line-height:1.6}.h2050-tree-root svg{color:var(--primary);flex:none}.h2050-yearlist{margin-inline-start:16px;padding:12px 15px 0 0;border-inline-start:2px solid var(--border);display:flex;flex-direction:column;gap:7px}.h2050-yearlist button{position:relative;text-align:start;min-height:45px;background:transparent;border:1px solid transparent;border-radius:11px;padding:8px 11px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--ink);font-size:11px;cursor:pointer;font-weight:700}.h2050-yearlist button:before{content:"";position:absolute;width:13px;inset-inline-start:-15px;top:50%;border-top:2px solid var(--border)}.h2050-yearlist button.selected{background:var(--soft);color:var(--primary);border-color:var(--border)}.h2050-yearlist small{font:700 12px Inter,sans-serif;color:var(--muted)}
.h2050-branch{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:23px;min-width:0}.h2050-branch-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;border-bottom:1px solid var(--border);padding-bottom:20px}.h2050-overline{font:800 10px/1.8 Inter,sans-serif;letter-spacing:.12em;color:var(--primary)}.h2050-branch-head h2{font-size:20px;margin:3px 0;color:var(--ink)}.h2050-filters{display:flex;flex-wrap:wrap;gap:6px}.h2050-filters button{min-height:39px;padding:6px 12px}.h2050-semester{margin-top:22px}.h2050-semester h3{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--ink);margin:0 0 14px}.h2050-semester h3 span{border-radius:7px;padding:3px 9px;background:var(--soft);font:800 11px Inter,sans-serif;color:var(--primary)}.h2050-coursegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.h2050-course{border:1px solid var(--border);border-radius:14px;background:var(--panel2);padding:17px;min-width:0;display:flex;flex-direction:column;gap:8px}.h2050-course-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px}.h2050-code{font:800 10px Inter,sans-serif;color:var(--muted)}.h2050-coverage{font-size:9px;color:#0c795f;background:#e5f7ef;border-radius:6px;padding:4px 8px}.h2050-coverage.empty{color:#956007;background:#fff3d5}.h2050-coverage.unknown{color:var(--muted);background:var(--soft)}.h2050-course h4{font-size:12px;line-height:2;margin:0;color:var(--ink)}.h2050-course>small{font-size:10px;color:var(--muted)}.h2050-course>button,.h2050-empty button{margin-top:auto;align-self:flex-start;display:inline-flex;gap:7px;align-items:center;border:1px solid var(--border);border-radius:9px;padding:9px 12px;background:var(--panel);color:var(--primary);font-size:10px;cursor:pointer;font-weight:800;min-height:40px}.h2050-empty,.h2050-loading{padding:29px;border:1px dashed var(--border);border-radius:14px;background:var(--panel);color:var(--muted);font-size:13px;line-height:2}.h2050-footnote{font-size:11px;color:var(--muted);margin:20px 0 30px}.h2050-view :is(button,input):focus-visible,.h2050-home-knowledge button:focus-visible{outline:3px solid #06b6d4;outline-offset:3px}
@media(max-width:980px){.h2050-graph{grid-template-columns:205px minmax(0,1fr)}.h2050-coursegrid{grid-template-columns:1fr}.h2050-art{max-width:22%}}
@media(max-width:700px){.h2050-banner{min-height:0;border-radius:17px;padding:26px 20px}.h2050-banner h1{font-size:26px}.h2050-banner p{font-size:11px}.h2050-art{display:none}.h2050-toolbar{display:block}.h2050-searchlabel{margin-top:18px}.h2050-programs button{flex:1 1 140px}.h2050-summary{gap:7px}.h2050-summary>div{padding:11px}.h2050-summary strong{font-size:22px}.h2050-summary span{font-size:9px}.h2050-graph{grid-template-columns:1fr;gap:11px}.h2050-track{padding:13px}.h2050-yearlist{display:flex;flex-direction:row;overflow-x:auto;margin:0;border:0;padding:10px 2px 2px}.h2050-yearlist button{white-space:nowrap;border-color:var(--border);min-width:110px}.h2050-yearlist button:before{display:none}.h2050-branch{padding:15px}.h2050-branch-head h2{font-size:17px}.h2050-home-knowledge{padding:22px}}
@media(prefers-reduced-motion:reduce){.h2050-view *, .h2050-home-knowledge *{scroll-behavior:auto!important;transition:none!important}}
/* 2050.1 academic intelligence and accessible local progress */
.h2051-sectionhead,.h2051-plannerintro{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}
.h2051-sectionhead h2,.h2051-planner h2{font-size:19px;line-height:1.7;margin:3px 0;color:var(--ink)}
.h2051-sectionhead p,.h2051-plannerintro p{margin:0;font-size:11px;line-height:1.9;color:var(--muted);max-width:750px}
.h2051-heatmap{margin:4px 0 25px;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:21px}
.h2051-export,.h2051-viewtabs button{border:1px solid var(--border);background:var(--panel);color:var(--ink);padding:10px 15px;min-height:44px;border-radius:11px;font-size:11px;font-weight:800;display:inline-flex;gap:8px;align-items:center;justify-content:center;cursor:pointer}
.h2051-heatgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:19px}
.h2051-heatcard{background:var(--panel2);border:1px solid var(--border);border-radius:13px;padding:14px;text-align:start;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:8px;cursor:pointer;color:var(--ink)}
.h2051-heatcard:hover{border-color:#06b6d4}.h2051-heatyear{font-size:12px;font-weight:800}.h2051-heatvalue{font:800 25px/1.25 Inter,"Noto Kufi Arabic",sans-serif;color:var(--primary)}
.h2051-heatbar,.h2051-progressbar{width:100%;height:8px;overflow:hidden;border-radius:30px;background:var(--soft);display:block}
.h2051-heatbar i,.h2051-progressbar i{display:block;height:100%;border-radius:30px;background:linear-gradient(90deg,#2563eb,#06b6d4)}
.h2051-heatcard small{font-size:10px;line-height:1.7;color:var(--muted)}
.h2051-termchips{display:flex;flex-wrap:wrap;gap:4px}.h2051-termchips span{font-size:9px;border-radius:6px;background:var(--soft);padding:3px 5px;color:var(--muted)}
.h2051-viewtabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}.h2051-viewtabs button.selected{color:#fff;background:#102b46;border-color:#102b46}.h2051-viewtabs small{font:800 11px Inter,sans-serif;opacity:.8}
.h2051-searchcount{font-size:11px;color:var(--muted);margin:12px 0 0;line-height:1.8}
.h2051-planner{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:clamp(16px,3vw,26px);min-width:0}
.h2051-progress{padding:12px 19px;background:var(--panel2);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;align-items:center;min-width:115px}.h2051-progress strong{font:800 21px/1.5 Inter,sans-serif}.h2051-progress span{font-size:10px;color:var(--muted)}
.h2051-progressbar{margin:17px 0;height:10px}.h2051-privacy{display:flex;gap:8px;align-items:start;color:var(--muted);background:var(--panel2);font-size:11px;border:1px dashed var(--border);border-radius:10px;padding:13px;line-height:2}.h2051-privacy svg{color:var(--primary);flex:none;margin-top:3px}
.h2051-planlist{display:grid;gap:21px;margin-top:22px}.h2051-plan-year h3{color:var(--ink);font-size:15px;margin:0 0 11px;padding-inline-start:12px;border-inline-start:3px solid #06b6d4}
.h2051-planterms{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}.h2051-planterm{background:var(--panel2);border:1px solid var(--border);border-radius:12px;padding:13px;display:flex;flex-direction:column;gap:7px;min-width:0}.h2051-planterm-head{display:flex;gap:5px;flex-wrap:wrap;justify-content:space-between;align-items:start;padding:4px 2px 9px;border-bottom:1px solid var(--border)}.h2051-planterm-head strong{font-size:12px}.h2051-planterm-head span{font-size:10px;color:var(--muted)}
.h2051-planitem{display:flex;align-items:center;gap:12px;border:1px solid transparent;border-radius:9px;background:var(--panel);color:var(--ink);padding:10px;text-align:start;cursor:pointer;min-height:48px;width:100%}.h2051-planitem:hover{border-color:#06b6d4}.h2051-planitem.done{border-color:#87cdbd;background:color-mix(in srgb,var(--panel) 86%,#a7f3d0)}.h2051-checkicon{flex:none;width:22px;height:22px;border:2px solid #94a3b8;border-radius:7px;display:grid;place-items:center;font:900 14px sans-serif}.h2051-planitem.done .h2051-checkicon{background:#059669;border-color:#059669;color:white}.h2051-planitem span:last-child{min-width:0;display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere}.h2051-planitem strong{font-size:11px;line-height:1.7;font-weight:700}.h2051-planitem small{font:600 9px/1.5 Inter,sans-serif;color:var(--muted);align-self:flex-start}
.h2050-view :is(.h2051-heatcard,.h2051-planitem,.h2051-viewtabs button,.h2051-export):focus-visible{outline:3px solid #06b6d4;outline-offset:3px}
@media(max-width:700px){.h2051-heatmap{padding:13px}.h2051-heatgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.h2051-heatcard{padding:10px}.h2051-heatvalue{font-size:20px}.h2051-plannerintro{align-items:start}.h2051-progress{min-width:100px}.h2051-viewtabs>*{flex:1 1 140px}}
@media(max-width:340px){.h2051-heatgrid{grid-template-columns:1fr}}
/* Horizon 2050.2 — compact, accessible evidence lab and private workspace */
.h2052-lab,.h2052-workspace{background:var(--panel);border:1px solid var(--border);border-radius:19px;padding:clamp(15px,2.5vw,26px);min-width:0}
.h2052-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;margin-bottom:20px}.h2052-head h2{font-size:clamp(19px,2.5vw,24px);margin:4px 0 6px;color:var(--ink);line-height:1.6}.h2052-head p,.h2052-compare-head p,.h2052-issuehead p{font-size:11px;line-height:1.95;color:var(--muted);margin:0;max-width:690px}.h2052-local-tag{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:20px;padding:7px 11px;background:var(--soft);font-size:10px;color:var(--primary)}
.h2052-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:19px 0 25px}.h2052-stats>div{background:var(--panel2);border:1px solid var(--border);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:5px}.h2052-stats strong{color:var(--ink);font:800 clamp(17px,2vw,25px)/1.45 Inter,sans-serif}.h2052-stats span{font-size:10px;color:var(--muted)}
.h2052-compare{border:1px solid var(--border);border-radius:15px;padding:18px;background:var(--panel2)}.h2052-compare-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}.h2052-compare-head h3,.h2052-issuehead h3{font-size:15px;color:var(--ink);margin:0 0 5px}.h2052-selects{display:flex;gap:10px;flex-wrap:wrap}.h2052-selects label{font-size:10px;color:var(--muted);display:flex;flex-direction:column;gap:5px}.h2052-selects select{font:700 11px "Noto Kufi Arabic",sans-serif;color:var(--ink);background:var(--panel);border:1px solid var(--border);padding:8px 10px;min-height:43px;border-radius:9px;min-width:126px}.h2052-tablewrap{overflow:auto;margin-top:17px;border:1px solid var(--border);border-radius:11px}.h2052-table{border-collapse:collapse;width:100%;font-size:11px;color:var(--ink);min-width:400px}.h2052-table th,.h2052-table td{text-align:start;padding:12px 11px;border-bottom:1px solid var(--border)}.h2052-table td{font:750 12px Inter,"Noto Kufi Arabic",sans-serif}.h2052-table tr:last-child td,.h2052-table tr:last-child th{border-bottom:0}.h2052-table thead{background:var(--soft)}.h2052-source{font-size:10px;line-height:1.9;color:var(--muted);margin:11px 0 0}
.h2052-issues{margin-top:20px}.h2052-issuehead{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:12px}.h2052-issuehead>strong{font:800 18px Inter,sans-serif;background:var(--soft);border-radius:10px;padding:8px 13px;color:var(--primary)}.h2052-issuelist{display:grid;gap:8px;max-height:520px;overflow:auto;}.h2052-issuelist>button{width:100%;min-height:64px;border:1px solid var(--border);border-radius:12px;padding:11px;background:var(--panel2);display:flex;gap:11px;align-items:center;text-align:start;color:var(--ink);cursor:pointer}.h2052-issuelist>button>span:first-child{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.h2052-issuelist b{font-size:11px;line-height:1.8;overflow-wrap:anywhere}.h2052-issuelist small{font-size:10px;color:var(--muted)}.h2052-issuelist svg{flex:none;color:var(--primary)}.h2052-issuechips{display:flex;flex-wrap:wrap;gap:4px;max-width:56%}.h2052-issuechips em{font-style:normal;border-radius:7px;padding:5px 7px;background:var(--soft);color:var(--muted);font-size:9px}.h2052-clear{padding:15px;background:var(--soft);border-radius:10px;color:var(--muted);font-size:12px}
.h2052-mini-summary{padding:10px 17px;background:var(--panel2);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;text-align:center}.h2052-mini-summary strong{font:800 24px Inter,sans-serif;color:var(--primary)}.h2052-mini-summary span{font-size:10px;color:var(--muted)}.h2052-privacy{display:flex;align-items:flex-start;gap:10px;padding:13px 15px;background:var(--soft);border:1px solid var(--border);border-radius:11px;color:var(--muted);font-size:11px;line-height:2}.h2052-privacy svg{flex:none;color:var(--primary);margin-top:3px}.h2052-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.h2052-actions button,.h2052-savedcourse button,.h2052-bookmark{min-height:42px;background:var(--panel);border:1px solid var(--border);border-radius:9px;color:var(--primary);cursor:pointer;font-size:11px;font-weight:800;padding:9px 13px;display:inline-flex;align-items:center;gap:7px}.h2052-actions .h2052-danger{color:#b91c1c}.h2052-savedgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:11px;margin-top:20px}.h2052-savedcourse{padding:15px;background:var(--panel2);border:1px solid var(--border);border-radius:13px;display:flex;flex-direction:column;gap:10px;min-width:0}.h2052-savedcourse h3{margin:0;font-size:13px;color:var(--ink);line-height:1.9}.h2052-savedcourse small{font-size:10px;color:var(--muted)}.h2052-savedcourse>div{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.h2052-bookmark[aria-pressed=true]{color:#0b8371;background:#e8f9f4;border-color:#85d9c8}.h2052-bookmark{margin-top:4px;align-self:flex-start}
.h2050-view :is(.h2052-actions button,.h2052-savedcourse button,.h2052-issuelist button,.h2052-selects select,.h2052-bookmark):focus-visible{outline:3px solid #06b6d4;outline-offset:3px}
@media(max-width:700px){.h2052-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.h2052-stats>div{padding:11px}.h2052-issuechips{max-width:none}.h2052-issuelist>button{flex-wrap:wrap}.h2052-issuelist>button>span:first-child{flex-basis:100%}.h2052-compare{padding:11px}.h2052-selects{width:100%}.h2052-selects label{flex:1;min-width:0}.h2052-selects select{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){.h2052-lab *, .h2052-workspace *{scroll-behavior:auto!important;transition:none!important}}
/* Shared compact shell and footer; atlas/editorial layout loads on demand. */
.nv-header{background:rgba(255,255,255,.96);box-shadow:0 7px 22px #0b173014;border-bottom:1px solid #e1eaf1}.nv-header .nv-brand{min-width:0}.nv-header .nv-symbol{background:linear-gradient(135deg,#112f51,#166b8a);color:#fff;border-radius:14px}.h54-preview-control{display:inline-flex;align-items:center;gap:7px;background:#eaf4fa;border:1px solid #cbdfea;border-radius:9px;color:#165c7a;padding:10px;font:700 10px inherit;cursor:pointer}.nv-footer{background:linear-gradient(145deg,#09192d,#103750)!important;color:#d8e7f2!important;padding:0!important}.h54-footer-shell{display:grid;grid-template-columns:minmax(270px,1.6fr) repeat(3,minmax(130px,1fr));gap:clamp(15px,2.8vw,38px);padding:clamp(27px,4vw,54px);max-width:1500px;margin:auto}.h54-footer-brand{display:flex;gap:15px}.h54-footer-brand strong{display:block;font-size:clamp(13px,1.2vw,17px);color:#fff;line-height:1.8}.h54-footer-brand p{font-size:11px;line-height:2;color:#bdcfdd}.h54-footer-brand small{font:600 10px Inter,sans-serif;letter-spacing:.08em;color:#76d1dc}.h54-footer-mark{display:grid;place-items:center;width:49px;height:49px;flex:none;background:#ffffff16;border-radius:13px;color:#8ae5ee}.h54-footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.h54-footer-col h3{color:white;font-size:13px;margin:0 0 8px}.h54-footer-col button{background:none;border:0;cursor:pointer;text-align:start;padding:5px 0;color:#c7d9e7;font:500 11px/1.7 inherit}.h54-footer-col button:hover{text-decoration:underline;color:white}.h54-footer-bottom{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:14px clamp(23px,4vw,54px);border-top:1px solid #ffffff1e;max-width:1500px;margin:auto;color:#bacdda;font-size:10px}.h54-to-top{display:flex;align-items:center;gap:7px;border:0;background:none;color:#95e5ed;cursor:pointer;font:700 11px inherit}
@media(max-width:1100px){.h54-footer-shell{grid-template-columns:repeat(3,minmax(0,1fr))}.h54-footer-brand{grid-column:1/-1}}
@media(max-width:760px){.h54-intro-art{display:none}.h54-programs{grid-template-columns:1fr}.h54-programs button{padding:13px}.h54-editorial-heading{align-items:flex-start;flex-direction:column}.h54-editorial-grid,.h54-policy-grid{grid-template-columns:1fr}.h54-footer-shell{grid-template-columns:repeat(2,minmax(0,1fr));padding:27px 20px}.h54-demo-layout{grid-template-columns:1fr}.h54-demo-tabs{display:flex;overflow:auto}.h54-demo-tabs button{white-space:nowrap;flex:none}.h54-filters{display:grid;grid-template-columns:1fr}.h54-header-cta{display:none!important}.h54-course-grid{grid-template-columns:1fr}.h54-atlas-stats small{margin:0}.p44-tree-section .p44-roots,.p44-team-region .p44-roots{display:grid;grid-template-columns:1fr;gap:16px}.p44-tree-section .p44-children{display:grid;grid-template-columns:1fr;gap:12px;border-inline-start:2px solid #9ccbdc;margin-inline-start:10px;padding-inline-start:18px}.p44-tree-section .p44-branch>.p44-children>.p44-branch::before,.p44-tree-section .p44-branch-body>.p44-children>.p44-branch::before{content:"";position:absolute;inset-inline-start:-18px;top:32px;width:18px;height:0;border-top:2px solid #9ccbdc}.h54-preview-control{font-size:0;padding:10px}.h54-preview-control svg{width:18px;height:18px}}
@media(max-width:420px){.h54-demo-linkgrid,.h54-footer-shell{grid-template-columns:1fr}.h54-footer-brand{grid-column:auto}.h54-page{margin-top:8px}.h54-intro{padding:22px 17px;border-radius:16px}.h54-filters{padding:12px}.h54-programs button small{display:none}.h54-footer-bottom{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}
.h54-page :is(button,input,select):focus-visible,.h54-editorial button:focus-visible,.nv-footer button:focus-visible{outline:3px solid #06b6d4;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.h54-programs button,.h54-page button{transition:none!important}}
@media print{.h54-filters,.h54-header-cta,.h54-footer-bottom button{display:none!important}.h54-page{max-width:none}.h54-course{break-inside:avoid}}
/* Horizon 2050.4: responsive academic atlas, editorial content and improved information architecture. */
.h54-page,.h54-editorial{font-family:inherit;color:var(--text,#183452);max-width:1320px;margin:16px auto 46px;min-width:0}
.h54-page *, .h54-editorial *{box-sizing:border-box}
.h54-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:clamp(24px,3vw,43px);border:1px solid #2c5578;border-radius:24px;background:radial-gradient(circle at 90% -40%,#266e8d 0,transparent 42%),linear-gradient(135deg,#0b1730,#143b5a);color:white;overflow:hidden}
.h54-intro h1{color:white;font-size:clamp(24px,3.2vw,42px);line-height:1.45;margin:7px 0 8px;letter-spacing:-.025em}.h54-intro p{color:#d6e8f3;max-width:760px;line-height:1.9;font-size:clamp(12px,1vw,14px);margin:0}
.h54-overline{color:#48d7e0;font:700 11px Inter,sans-serif;letter-spacing:.12em}.h54-intro-art{opacity:.85;display:flex;border-radius:30px;border:1px solid #ffffff22;background:#ffffff0a;padding:28px}
.h54-programs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:23px 0 18px}.h54-programs button{display:flex;align-items:center;gap:12px;text-align:start;padding:17px 20px;border:1px solid #d6e3ed;background:#fff;color:#183a58;border-radius:16px;min-width:0;cursor:pointer;transition:border-color .2s,box-shadow .2s}.h54-programs button strong{flex:1;line-height:1.65;font-size:clamp(12px,1.1vw,15px)}.h54-programs button small{color:#647b90;white-space:nowrap}.h54-programs button[aria-pressed="true"]{border-color:#06a9c0;background:#edfbfe;box-shadow:inset 0 0 0 1px #06a9c0}
.h54-filters{display:flex;align-items:end;gap:13px;flex-wrap:wrap;background:#f1f6fb;border:1px solid #dfebf2;border-radius:16px;padding:16px;margin-bottom:16px}.h54-filters label{display:grid;gap:7px;flex:1 1 180px;color:#284d69;font-size:12px;font-weight:700}.h54-filters input,.h54-filters select{height:45px;width:100%;background:#fff;border:1px solid #d2e1eb;border-radius:11px;padding:0 12px;color:#163956;font:inherit}.h54-filters>button,.h54-guide-cta button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#0d537c;color:#fff;border:0;border-radius:11px;min-height:45px;padding:10px 16px;cursor:pointer;font:inherit;font-size:12px}.h54-filters>button:disabled{opacity:.5;cursor:not-allowed}
.h54-atlas-stats{display:flex;align-items:center;gap:12px;margin:14px 0 19px;flex-wrap:wrap}.h54-atlas-stats strong{font:800 27px Inter,sans-serif;color:#145d85}.h54-atlas-stats span{font-weight:700;font-size:13px}.h54-atlas-stats small{margin-inline-start:auto;color:#657e8d;font-size:11px}
.h54-term-block{margin:17px 0 25px}.h54-term-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px;padding-inline:3px;border-bottom:1px solid #dbe6f0;padding-bottom:10px}.h54-term-title h2{font-size:clamp(15px,1.4vw,19px);margin:0;color:#153e60}.h54-term-title span{color:#41688a;background:#eaf3f8;padding:5px 10px;border-radius:30px;font-size:11px;white-space:nowrap}.h54-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:12px}.h54-course{display:flex;flex-direction:column;gap:7px;min-width:0;padding:17px;border:1px solid #dbe5ee;border-radius:15px;background:var(--panel,#fff);box-shadow:0 4px 15px #112c4910}.h54-course>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.h54-course h3{margin:4px 0 0;font-size:13px;line-height:1.8;color:#153f60}.h54-course p{margin:0;color:#627c90;font:12px/1.8 Inter,"Noto Kufi Arabic",sans-serif}.h54-course footer{margin-top:auto;padding-top:9px;border-top:1px solid #e6eef3;color:#49708a;font-size:11px}.h54-id{direction:ltr;font:700 11px Inter,monospace;letter-spacing:.025em;color:#175b83;background:#ecf6fb;border-radius:7px;padding:5px 8px}.h54-tag{font-size:10px;color:#697f8d}.h54-source{font-size:12px;line-height:1.95;color:#526f85;background:#edf5fa;border-inline-start:3px solid #10a6ba;padding:14px;border-radius:9px}.h54-state{padding:35px;text-align:center;background:#f0f6fa;border-radius:15px;color:#526f85}
.h54-editorial{margin:30px auto}.h54-editorial-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.h54-editorial-heading h2{font-size:clamp(18px,2vw,27px);margin:5px 0}.h54-editorial-heading p{font-size:12px;color:#647f90}.h54-editorial-heading>button{display:flex;align-items:center;gap:6px;background:transparent;border:0;color:#18729a;cursor:pointer;font:700 12px inherit}.h54-editorial-grid,.h54-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.h54-editorial-grid article,.h54-policy-grid article{border:1px solid #dce7f0;background:var(--panel,#fff);border-radius:18px;padding:clamp(17px,2vw,25px);min-width:0;box-shadow:0 5px 18px #16426808}.h54-editorial-icon,.h54-policy-grid article>span{display:inline-flex;padding:11px;background:#e8f5fa;color:#11688e;border-radius:12px;margin-bottom:14px}.h54-editorial-grid article small{display:block;color:#167b9e;font-size:11px}.h54-editorial-grid h3,.h54-policy-grid h2{font-size:15px;line-height:1.8;color:#193d5d;margin:8px 0}.h54-editorial-grid p,.h54-policy-grid p{line-height:2;font-size:12px;color:#627988}.h54-editorial-grid article button{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:#176788;cursor:pointer;padding:8px 0;font:700 12px inherit}.h54-policy-grid{margin:20px 0;grid-template-columns:repeat(2,minmax(0,1fr))}.h54-guide-cta{border-radius:16px;background:#eaf7fa;padding:24px;display:flex;flex-wrap:wrap;align-items:center;gap:15px}.h54-guide-cta strong{color:#104d6b}.h54-guide-cta p{flex:1 1 270px;font-size:12px;line-height:1.9}
.h54-preview-note{display:flex;align-items:center;gap:12px;background:#eaf4fa;border:1px solid #bfdcea;color:#245878;border-radius:12px;padding:13px 17px;margin:19px 0;font-size:12px;line-height:1.9}.h54-role-switch{display:flex;gap:9px;margin:15px 0 22px;flex-wrap:wrap}.h54-role-switch button{border:1px solid #cbdde7;background:#fff;color:#255372;border-radius:10px;padding:11px 20px;cursor:pointer}.h54-role-switch button[aria-pressed="true"]{background:#0e4b71;border-color:#0e4b71;color:#fff}.h54-demo-layout{display:grid;grid-template-columns:minmax(210px,.28fr) 1fr;gap:20px}.h54-demo-tabs{background:#eaf2f8;padding:10px;border-radius:16px;display:grid;align-content:start;gap:5px}.h54-demo-tabs button{display:flex;text-align:start;gap:9px;align-items:center;background:transparent;color:#27516d;border:0;border-radius:9px;padding:12px;cursor:pointer}.h54-demo-tabs button[aria-current="page"]{background:white;box-shadow:0 2px 9px #193e5617;font-weight:800}.h54-demo-panels{display:grid;gap:15px;align-content:start}.h54-demo-panels article{padding:22px;background:#fff;border:1px solid #dbe6ee;border-radius:16px}.h54-demo-panels article h2{font-size:16px;color:#1d4b69}.h54-demo-panels article p{font-size:12px;line-height:2;color:#5e798e}.h54-readonly{display:inline-flex;align-items:center;gap:6px;color:#667e90;font-size:11px}.h54-demo-linkgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0}.h54-demo-linkgrid button{display:flex;align-items:center;gap:9px;cursor:pointer;border:1px solid #d9e5ef;background:white;border-radius:13px;padding:17px;color:#194a6c;font:700 12px inherit}

/* Verified source-driven academic plan presentation. */
.h2091-plan{padding:clamp(16px,3vw,26px);margin:16px 0 24px;border:1px solid #cddfed;border-radius:22px;background:#f8fbff;color:#18364c}
.h2091-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:12px}
.h2091-plan-label{display:inline-flex;align-items:center;background:#fff0cd;color:#7a4a13;padding:4px 11px;border-radius:999px;font-size:11px;font-weight:800}
.h2091-plan-head h2{font-size:clamp(17px,2vw,22px);margin:11px 0 7px;line-height:1.55;color:#132f4a}
.h2091-plan-head p{font-size:12px;line-height:1.9;max-width:730px;margin:0;color:#49677d}
.h2091-credits{border-radius:15px;background:#e8f4fe;min-width:135px;padding:13px;text-align:center}
.h2091-credits strong{display:block;font:800 23px/1.4 Inter,sans-serif;color:#134d78}.h2091-credits span{display:block;font-size:10px}
.h2091-plan-difference{border-inline-start:3px solid #ce9148;padding:10px 15px;background:#fff7e9;border-radius:6px 12px 12px 6px;color:#704b17;font-size:11px;margin:12px 0 18px;line-height:1.8}
.h2091-term-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.h2091-term{background:#fff;border:1px solid #dce8f0;border-radius:16px;overflow:hidden;min-width:0;box-shadow:0 6px 15px #0d3d5d09}
.h2091-term>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 15px;background:#e9f3fb}
.h2091-term h3{font-size:12px;font-weight:800;margin:0;color:#153b59}.h2091-term>header>span{font-size:11px;font-weight:700;color:#286083;white-space:nowrap}
.h2091-term ol{padding:5px 13px;margin:0;list-style:none}.h2091-term li{display:grid;grid-template-columns:65px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 4px;border-bottom:1px solid #eef2f6}.h2091-term li:last-child{border:0}
.h2091-course-code{font:700 12px Inter,sans-serif;color:#24577b;background:#eef5fb;padding:6px 4px;border-radius:8px;text-align:center}
.h2091-term li strong{display:block;font-size:11px;line-height:1.65;color:#13354c}.h2091-term li small{display:block;font-size:10px;color:#5c7689;line-height:1.7}.h2091-term li em{font-size:10px;color:#47687b;font-style:normal;white-space:nowrap}
.h2091-elective{font-size:11px;line-height:1.9;color:#405f75;margin:15px 0 0}.h2091-original-heading{font-size:16px;color:var(--ink);margin:24px 0 12px}
.h2091-year-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:9px;margin:0 0 18px}
.h2091-year-summary>div{background:#edf5fc;border:1px solid #d3e6f6;border-radius:13px;padding:10px 14px;display:grid;gap:3px;color:#183c58}
.h2091-year-summary strong{font-size:12px}.h2091-year-summary span{font-size:11px}.h2091-year-summary small{font-size:10px;color:#466882}
/* Newsletter: explicit opt-in, scope selection, disclosure and keyboard-friendly labels. */
.h2090-news-form .h2091-news-preferences{border:1px solid #ffffff3b;display:flex;flex-wrap:wrap;gap:9px 16px;border-radius:10px;padding:9px 11px;grid-column:1/-1;margin:0}
.h2090-news-form .h2091-news-preferences legend{font-size:11px;padding-inline:6px}
.h2090-news-form .h2091-news-preferences label{font-size:10.5px;display:flex;align-items:center;gap:7px;cursor:pointer;line-height:1.6}
.h2090-news-form .h2091-news-consent{gap:8px;align-items:flex-start}.h2091-news-policy{border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:800}
.h2090-news-form .h2091-news-disclosure{grid-column:1/-1;font-size:10.5px;opacity:.83;line-height:1.8;margin:0}.h2090-news-form input[type=checkbox]{width:16px;height:16px;accent-color:#74dddc;flex-shrink:0}
.h2090-news-form button[type=submit]:disabled{opacity:.58;cursor:wait}.h2090-news-form [role=status]{min-height:20px}
.nv1500 .nv-symbol,.h54-footer-mark{background:linear-gradient(150deg,#0a4667,#1c86a2);color:#f5ffff;border-radius:14px}
.nv1500 .nv-hbutton svg,.h54-footer-shell svg{stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:800px){.h2091-term-grid{grid-template-columns:1fr}.h2091-plan-head{flex-wrap:wrap}.h2091-credits{min-width:125px}.h2091-term li{grid-template-columns:60px minmax(0,1fr) auto;gap:8px}}
body.dark .h2091-plan{background:#102c3e;border-color:#2c5970;color:#eaf4fa}body.dark .h2091-term{background:#173648;border-color:#325568}body.dark .h2091-term>header,body.dark .h2091-year-summary>div{background:#20445a;color:#eef9fc}body.dark .h2091-term li strong,body.dark .h2091-term h3,body.dark .h2091-plan-head h2{color:#eef9fc}
/* All explicitly dark course-plan surfaces must retain readable labels. */
body.dark .h2091-plan-head p,body.dark .h2091-elective{color:#c3d8e5}
body.dark .h2091-credits{background:#1b4158;color:#eaf7ff}
body.dark .h2091-credits strong{color:#b8e4ff}
body.dark .h2091-plan-difference{background:#46341f;color:#ffe5ac;border-inline-start-color:#e8ad5b}
body.dark .h2091-term>header>span{color:#c5e4f5}
body.dark .h2091-course-code{background:#274b60;color:#e0f3ff}
body.dark .h2091-term li{border-bottom-color:#36566a}
body.dark .h2091-term li :is(small,em),body.dark .h2091-year-summary small{color:#c2d8e5}

/* Unified progressive visual refinement; all build targets share this source. */
:root{--a2090-accent:#1877c6;--a2090-ink:#112d46;--a2090-line:#dbe7f1;--a2090-radius:16px}
.nv1500 .nv-header{background:linear-gradient(105deg,#091b33 0%,#123757 72%,#11405a 100%);box-shadow:0 5px 22px #071b3021}
.nv1500 .nv-header .nv-brand{min-width:0}.nv1500 .nv-header .nv-brand strong{letter-spacing:-.25px;line-height:1.5}
.nv1500 .nv-header .nv-brand small{letter-spacing:1.1px;opacity:.84}
.nv1500 .nv-popover{border:1px solid var(--a2090-line);border-radius:var(--a2090-radius);box-shadow:0 24px 60px #09294b26;overscroll-behavior:contain}
.nv1500 .nv-cardgrid{align-content:start;gap:9px;grid-auto-rows:minmax(0,auto)}
.nv1500 .nv-card{min-height:54px;height:auto;padding:10px 12px;border-radius:12px;gap:9px;border:1px solid #e1eaf2;background:#fff;transition:background-color .15s,border-color .15s,box-shadow .15s}
.nv1500 .nv-card:hover,.nv1500 .nv-card:focus-visible{background:#f0f8ff;border-color:#96c7ec;box-shadow:0 4px 12px #092b4913;outline-offset:2px}
.nv1500 .nv-card-icon{width:33px;height:33px;min-width:33px;border-radius:10px}
.nv1500 .nv-card-copy strong{font-size:12px;line-height:1.6}
.nv1500 .nv-card-copy small{font-size:10px;line-height:1.5;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nv1500 .nv-popover-head{padding-block:12px}
.nv1500 .nv-popover-head h2{font-size:18px}
.nv1500 .nv-footer,.h54-footer-shell{border-top:1px solid var(--a2090-line)}
.h54-footer-shell{gap:24px}.h54-footer-col button{padding:6px 1px;min-height:34px}
.h54-atlas .h54-course,.h2050-coursegrid>article,.h55-dashboard .h55-pane{box-shadow:0 3px 18px #0d2d4b0b;border-radius:var(--a2090-radius)}
.nv-quick,.h54-editorial-grid>article{border-radius:var(--a2090-radius)}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #10a7d3;outline-offset:3px}
.nv1500 .nv-popover,.h54-page{scroll-margin-top:115px}
@media(max-width:900px){.nv1500 .nv-header{min-height:66px}.nv1500 .nv-side-link{min-height:43px}.h54-footer-shell{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:600px){.h54-footer-shell{grid-template-columns:1fr}.nv1500 .nv-cardgrid{grid-template-columns:minmax(0,1fr)}.nv1500 .nv-card{min-height:48px}.h54-atlas .h54-course{padding:13px}.h55-dashboard{min-width:0}.nv-quick{min-height:75px}}
@media(prefers-reduced-motion:reduce){.nv1500 .nv-card{transition:none}html:focus-within{scroll-behavior:auto}}

.h2090-news-section{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,.9fr) minmax(280px,1.8fr);gap:22px;align-items:center;border-top:1px solid #ffffff23;padding:24px 0 10px}
.h2090-news-copy{display:flex;align-items:flex-start;gap:13px}.h2090-news-copy>span{width:44px;height:44px;flex:0 0 44px;border-radius:12px;background:#ffffff16;display:grid;place-items:center}.h2090-news-copy h3{font-size:15px;margin:0 0 5px}.h2090-news-copy p{opacity:.75;font-size:11px;margin:0}
.h2090-news-form{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(170px,1fr) auto;gap:9px;align-items:center}
.h2090-news-form>input:not(.h2090-news-trap){min-width:0;border:1px solid #aac6dd4b;background:#ffffff14;color:inherit;border-radius:10px;padding:12px;min-height:42px}
.h2090-news-form input::placeholder{color:inherit;opacity:.65}
.h2090-news-form>label{grid-column:1/-1;display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.7}
.h2090-news-form>button{border:0;border-radius:10px;background:#d8eef9;color:#102b46;font-weight:800;padding:11px;min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px}
.h2090-news-form>span{grid-column:1/-1;font-size:11px}.h2090-news-trap{position:absolute!important;inset-inline-start:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:1100px){.h2090-news-section{grid-template-columns:1fr}.h2090-news-form{max-width:100%}}
@media(max-width:650px){.h2090-news-form{grid-template-columns:1fr}.h2090-news-form>label,.h2090-news-form>span{grid-column:1}}
/* V9: prevent Arabic words in newsletter preferences from being broken on compact viewports. */
.h2090-news-form .h2091-news-preferences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px;row-gap:8px;min-width:0;max-width:100%;width:100%;box-sizing:border-box;align-items:start}
.h2090-news-form .h2091-news-preferences legend{max-width:100%;white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.8;font-size:clamp(12px,2.5vw,14px);font-weight:750}
.h2090-news-form .h2091-news-preferences label{min-width:0;max-width:100%;display:flex;align-items:flex-start;justify-content:flex-start;gap:8px;line-height:1.85;font-size:clamp(12px,2.9vw,13px);white-space:normal;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
.h2090-news-form .h2091-news-preferences label input[type=checkbox]{width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;flex:0 0 18px;margin-block-start:3px;padding:0}
.h2090-news-form .h2091-news-consent{min-width:0;overflow-wrap:break-word;word-break:normal;white-space:normal;font-size:clamp(12px,2.8vw,13px);line-height:1.9}
.h2090-news-form .h2091-news-consent input[type=checkbox]{width:18px;min-width:18px;max-width:18px;min-height:18px;flex:0 0 18px;margin-block-start:4px}
@media(max-width:630px){.h2090-news-form .h2091-news-preferences{grid-template-columns:repeat(2,minmax(0,1fr))}.h2090-news-form .h2091-news-preferences label{padding:4px 0}}
@media(max-width:370px){.h2090-news-form .h2091-news-preferences{grid-template-columns:minmax(0,1fr)}.h2090-news-form .h2091-news-preferences label{font-size:13px}}

/* V10 structural footer newsletter: legible single-column fields on a phone. */
.h54-footer-shell{min-width:0}
.h2090-news-section{min-width:0;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(18px,2.8vw,32px)}
.h2090-news-copy,.h2090-news-copy>div,.h2090-news-form,.h2090-news-form>*{min-width:0;box-sizing:border-box}
.h2090-news-copy :is(h3,p),.h2090-news-form :is(legend,label,p,span,button){word-break:normal;overflow-wrap:break-word;hyphens:none;text-wrap:pretty;line-height:1.9}
.h2090-news-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}
.h2090-news-form>input:not(.h2090-news-trap){font-size:16px;min-height:48px;width:100%}
.h2090-news-form>.h2091-news-preferences{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:1px solid #ffffff2c;border-radius:14px;margin:4px 0;padding:14px 16px}
.h2090-news-form>.h2091-news-preferences legend{float:none;display:block;padding:0 7px;font-size:13px;font-weight:800;white-space:normal;word-break:keep-all;overflow-wrap:normal;max-width:100%}
.h2090-news-form>.h2091-news-preferences label{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:10px;min-width:0;line-height:1.85;white-space:normal;word-break:keep-all;overflow-wrap:normal;font-size:13px}
.h2090-news-form>.h2091-news-preferences label input{flex:0 0 19px;inline-size:19px;block-size:19px;margin-block-start:4px}
.h2090-news-form>.h2091-news-consent{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px;align-items:flex-start;padding:4px 0;white-space:normal;word-break:keep-all;overflow-wrap:normal}
.h2090-news-form>.h2091-news-consent input{flex:0 0 19px}
.h2090-news-form>.h2091-news-disclosure{grid-column:1/-1;font-size:12px;line-height:1.9}
.h2090-news-form>button[type=submit]{grid-column:1/-1;width:100%;min-height:48px}
.h2090-news-form>span[role=status]{grid-column:1/-1}
@media(max-width:900px){.h2090-news-section{grid-template-columns:minmax(0,1fr)}.h2090-news-form{width:100%;max-width:640px}}
@media(max-width:620px){.h2090-news-section{padding:20px 0;gap:18px}.h2090-news-form{grid-template-columns:minmax(0,1fr);gap:12px}.h2090-news-form>.h2091-news-preferences{grid-template-columns:minmax(0,1fr);gap:4px;padding:14px}.h2090-news-form>.h2091-news-preferences label{padding:6px 0;min-height:36px;align-items:center}.h2090-news-copy h3{font-size:clamp(16px,4.1vw,20px);line-height:1.65}.h2090-news-copy p{font-size:13px;line-height:2}}

.member-layout{max-width:1280px;margin:0 auto;display:grid;gap:18px;padding-bottom:40px}.member-head{padding:30px clamp(18px,3vw,36px);border-radius:22px;background:linear-gradient(115deg,#0b1730,#14466a);color:#fff}.member-head h1{font-size:clamp(22px,2.6vw,34px);margin:12px 0 7px}.member-head p{opacity:.9;line-height:1.9}.member-kicker{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:700}.member-grid{display:grid;grid-template-columns:minmax(270px,.8fr) minmax(320px,1.2fr);gap:16px}.member-panel{border:1px solid #dce7f1;background:#fff;border-radius:20px;padding:22px;box-shadow:0 12px 30px #1436500b;color:#172b46;min-width:0}.member-panel h2{display:flex;align-items:center;gap:9px;font-size:19px;margin:0 0 19px}.member-panel label{display:block;font-weight:600;font-size:13px;margin:12px 0 6px}.member-panel .field{width:100%;margin:5px 0 10px}.member-panel button{margin-top:8px}.member-panel p{line-height:1.9}.member-consent{display:flex!important;align-items:start;gap:10px;line-height:1.9;font-weight:400!important}.member-consent input{margin-top:7px}.member-profile{padding:12px 15px;background:#f1f7fc;border-radius:14px;display:grid;gap:5px;margin-bottom:14px;overflow-wrap:anywhere}.member-status{width:max-content;background:#dbeafe;border-radius:999px;padding:5px 10px;font-size:12px}.member-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.member-tile{display:flex;align-items:center;gap:10px;border:1px solid #e0e8f2;padding:13px;border-radius:13px;min-width:0}.member-tile div{flex:1;min-width:0}.member-tile strong,.member-tile small{display:block}.member-tile small{font-size:11px;color:#587084;line-height:1.7}.member-tile-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#edf5fa;color:#15628b;flex-shrink:0}.member-tile button{font-size:12px}.member-result{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4ebf3;padding:12px 0;gap:10px}.member-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.member-panel table{width:100%;border-collapse:collapse}.member-panel th,.member-panel td{text-align:start;padding:10px;border-bottom:1px solid #e6edf4;font-size:12px}.member-panel .tablewrap{overflow-x:auto}.member-panel input:focus-visible,.member-panel select:focus-visible,.member-panel button:focus-visible{outline:3px solid #0ea5e9;outline-offset:2px}@media(max-width:900px){.member-grid{grid-template-columns:1fr}.member-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.member-tiles,.member-policy-grid{grid-template-columns:1fr}.member-panel{padding:15px}.member-tile{flex-wrap:wrap}.member-head{border-radius:16px;padding:20px}.member-layout{gap:12px;padding-bottom:98px}}

/* PROJECT 2060.14 — explicit theme choice, independent of the operating-system theme.
   Keep the membership layout and all user data intact across both platforms. */
body.dark .member-panel{background:var(--panel,#112b3e);color:var(--ink,#ecf5ff);border-color:var(--border,#345367);box-shadow:0 15px 38px #0003}
body.dark .member-panel :is(h2,label,p,strong){color:inherit}
body.dark .member-profile{background:#1b394e;color:#ecf5ff}
body.dark .member-tile{border-color:#385569;background:#173448;color:#ecf5ff}
body.dark .member-tile small{color:#b8d0df}
body.dark .member-tile-icon{background:#214a60;color:#a7e6ed}
body.dark .member-result,body.dark .member-panel :is(th,td){border-color:#365064}
body.dark .member-status{background:#254960;color:#e8f7ff}
body.dark .member-panel :is(input,select,textarea){background:#102b3e;color:#f0f8ff;border-color:#476477}
body.dark .member-panel :is(input,select,textarea)::placeholder{color:#b3c7d5;opacity:1}

/* UI interaction: prevent accidental drag-highlighting of controls only.
   Academic content remains selectable, searchable and accessible. */
body :is(button,[role="button"],[role="tab"],summary,.nv-card,.nv-link,.nv-side-link,.v500-page-guide,.campus-mobile-dock,.nv-nav-inner) {
  -webkit-user-select:none;
  user-select:none;
  -webkit-touch-callout:none;
}
body :is(button,[role="button"],summary,.nv-header,.nv-topnav,.nv-sidebar) :is(svg,img) {
  -webkit-user-drag:none;
  user-select:none;
}
body :is(input,textarea,select,[contenteditable="true"],article p,article h1,article h2,article h3,table,pre,code,.resource-content,.academic-content,.v51-result-description) {
  -webkit-user-select:text;
  user-select:text;
}
/* Keep the actual light/dark toggle reachable on small screens; the smart
   discovery hub remains available from the navigation, not duplicated here. */
@media (max-width:700px) {
  body.nv1500 #v103Header [data-nv-action="theme"].nv-desktop-only {display:inline-flex}
  body.nv1500 #v103Header .nv-hub-trigger {display:none}
}

/* Dark-mode contrast of the page-history guide: avoid pale panel + pale ink. */
body.dark.v500 .v500-page-guide {
  --v500-ink:#e9f3fb;
  --v500-wash:#142b3f;
  --v500-border:#36536b;
  color:var(--v500-ink);
  background:var(--v500-wash);
}
body.dark.v500 .v500-page-guide .v500-page-emblem,
body.dark.v500 .v500-page-guide .v500-page-actions button:not(.v500-home) {
  background:#1d374e;
  color:#e9f3fb;
  border-color:#3a5a75;
}
body.dark.v500 .v500-page-guide .v500-home {background:#28567f;color:#fff}

/* Unified vector glyphs for the boot shell; resolved from H54_ICONS at build-time. */
.ui-static-icon{display:inline-block;width:1.3em;height:1.3em;vertical-align:-.2em;flex:0 0 auto;pointer-events:none}
.brand-icon>.ui-static-icon,.portal-header-mark>.ui-static-icon{width:30px;height:30px}
.campus-mobile-dock button .ui-static-icon{width:21px;height:21px}
.jump-top .ui-static-icon{width:20px;height:20px}
.nav,.year-card{user-select:none;-webkit-user-select:none}
/* Preserve text selection for learning content, text controls and screen-reader text. */
:where(main,article,.resource-content,.academic-content) :is(p,h1,h2,h3,h4,li,blockquote,pre,code,td,th){user-select:text;-webkit-user-select:text}
:where(input,textarea,select,[contenteditable="true"]){user-select:text;-webkit-user-select:text}

/* Fine-grained polish on existing controls; no changes to brand tokens, layout or hierarchy. */
body :is(.btn,.iconbtn,.nv-card,.nv-link,.nav,.s283-action) {
  transition-property:transform,box-shadow,border-color,background-color,opacity;
  transition-duration:160ms;
  transition-timing-function:ease-out;
}
@media (hover:hover) and (pointer:fine) {
  body :is(.btn,.iconbtn,.s283-action):not(:disabled):hover {transform:translateY(-1px)}
  body :is(.nv-card,.nv-link):hover {box-shadow:0 12px 30px #071e3916}
}
body :is(button,a,input,select,textarea,summary,[role="button"]):focus-visible {
  outline:2px solid var(--focus-ring,var(--accent,#0c92a1));
  outline-offset:3px;
}
body button:disabled,body [aria-busy="true"] {cursor:progress}
body .ppu-palette-popover {max-height:calc(100dvh - 20px);overflow-y:auto;overscroll-behavior:contain}
body .ppu-brand-dialog #ppu-brand-status[data-state="error"] {color:var(--danger,#b13a45)}
body .ppu-brand-dialog #ppu-brand-status[data-state="success"] {color:var(--success,#187258)}
body .jump-top:focus-visible {outline-offset:4px}
@media (prefers-reduced-motion:reduce) {
  body :is(.btn,.iconbtn,.nv-card,.nv-link,.nav,.s283-action,.jump-top,.ppu-palette-popover) {
    transition-duration:0.01ms!important;animation-duration:0.01ms!important;
  }
  html:focus-within {scroll-behavior:auto}
}

/* V4 feedback component: same design layer in GAS and Cloudflare Pages. */
/* Consistent low-obstruction feedback sheet for responsive RTL/LTR layouts. */
#dl-feedback-widget{font:inherit}#dl-feedback-launch{position:fixed;inset-inline-end:clamp(12px,3vw,30px);bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:8000;display:inline-flex;align-items:center;gap:7px;padding:12px 18px;min-height:48px;border:1px solid #62c9d1;border-radius:999px;background:#0b6074;color:white;box-shadow:0 6px 28px #122f3e3d;font:700 13px/1.4 system-ui;cursor:pointer;max-width:calc(100vw - 24px)}#dl-feedback-launch:hover,#dl-feedback-launch:focus-visible{background:#12465c;outline:3px solid #8ddde0;outline-offset:2px}.dl-feedback-backdrop{position:fixed;inset:0;z-index:9000;background:#071e2aba}#dl-feedback-dialog{position:fixed;z-index:9001;inset-inline:0;bottom:0;box-sizing:border-box;margin-inline:auto;width:min(100%,610px);max-height:min(90dvh,840px);overflow:auto;overscroll-behavior:contain;padding:clamp(16px,4vw,30px);padding-bottom:max(22px,env(safe-area-inset-bottom,0px));border:1px solid #d0e2ea;border-radius:22px 22px 0 0;background:#fff;color:#143c4b;text-align:start;font:400 15px/1.65 system-ui;box-shadow:0 -9px 44px #071e2a77}#dl-feedback-dialog[hidden],.dl-feedback-backdrop[hidden],#dl-feedback-owner[hidden]{display:none}.dl-feedback-open{overflow:hidden}.dl-feedback-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.dl-feedback-head h2{font-size:clamp(19px,4vw,25px);margin:0}#dl-feedback-close{min-width:44px;min-height:44px;border:0;border-radius:12px;background:#eaf3f6;color:#173f50;cursor:pointer}#dl-feedback-intro{margin:8px 0 17px;color:#476875}.dl-feedback-label{display:grid;gap:6px;margin:14px 0;font-weight:700}.dl-feedback-label :is(select,textarea){width:100%;box-sizing:border-box;background:#fff;color:#12384b;border:1px solid #9dbfc9;border-radius:11px;padding:11px 13px;font:inherit;min-height:48px}.dl-feedback-label textarea{resize:vertical;min-height:96px}.dl-feedback-rating{border:0;padding:0;margin:0}.dl-feedback-rating legend{font-weight:700;margin-bottom:8px}#dl-feedback-stars{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}#dl-feedback-stars label{position:relative;display:grid;justify-items:center;gap:2px;padding:11px 0;border:1px solid #c6dce4;border-radius:12px;cursor:pointer;min-width:0;font-weight:800;color:#126277}#dl-feedback-stars label:has(input:checked){background:#dcf5f1;border-color:#168a80}#dl-feedback-stars input{accent-color:#08687b;margin:0}.dl-feedback-consent{display:flex;gap:9px;align-items:start;margin:12px 0}.dl-feedback-consent input{width:19px;height:19px;flex:none;accent-color:#096c7e}.dl-feedback-trap{position:absolute;inset-inline-start:-5000px;opacity:0;width:1px;height:1px}#dl-feedback-submit{background:#08687d;color:#fff;font:700 15px system-ui;border:0;border-radius:11px;min-height:48px;padding:12px 24px;margin-top:12px;cursor:pointer}#dl-feedback-submit:disabled{opacity:.55;cursor:not-allowed}#dl-feedback-status{min-height:26px;font-weight:700;color:#136456}#dl-feedback-status[data-error="true"]{color:#ac2929}.dl-feedback-review{border:1px solid #dde7ec;border-radius:12px;padding:10px;margin-block:8px}.dl-feedback-review button{padding:7px 15px;margin:3px;cursor:pointer;border-radius:7px;border:1px solid #bed9df;background:#e8f6f8;color:#12475b}#dl-feedback-widget :focus-visible{outline:3px solid #0ca4ac;outline-offset:2px}@media(max-width:410px){#dl-feedback-launch{padding:10px 13px;font-size:12px;bottom:max(10px,env(safe-area-inset-bottom,0px))}#dl-feedback-dialog{max-height:94dvh;border-radius:16px 16px 0 0}#dl-feedback-stars label{padding:9px 0;font-size:12px}}@media(prefers-reduced-motion:reduce){#dl-feedback-widget *{scroll-behavior:auto;animation:none;transition:none}}

#dl-feedback-public-summary:not([hidden]){border-radius:12px;border:1px solid #b8dcd8;background:#edfaf7;color:#165f59;font-weight:700;padding:10px 13px;margin:10px 0 16px;}

/* Main SPA shares V10 footer placement without introducing an eighth CSS layer. */
/* V10: feedback is a footer content card, never a floating call-to-action. */
#dl-feedback-widget{position:relative;inset:auto;z-index:auto;box-sizing:border-box;width:100%;min-width:0;grid-column:1/-1;margin:clamp(14px,2.8vw,28px) 0 0;padding:clamp(15px,2.5vw,25px);border:1px solid rgba(141,216,225,.3);border-radius:18px;background:linear-gradient(120deg,rgba(17,113,133,.25),rgba(24,76,111,.12));color:inherit}
#dl-feedback-launch{position:static;inset:auto;bottom:auto;z-index:auto;display:flex;justify-content:center;min-height:48px;max-width:100%;padding:11px 19px;box-shadow:none;border:1px solid #71cbd8;border-radius:12px;background:#0c6375;color:white;white-space:normal;overflow-wrap:normal;word-break:normal}
#dl-feedback-launch::after{content:"";inline-size:6px;block-size:6px;background:currentColor;border-radius:50%;opacity:.7}
#dl-feedback-widget::before{content:"★  ·  ★  ·  ★";display:block;font-size:11px;letter-spacing:.16em;color:#92e8eb;margin-bottom:8px}
#dl-feedback-widget #dl-feedback-dialog{color:#143c4b}
@media(max-width:480px){#dl-feedback-widget{padding:16px 14px;border-radius:14px}#dl-feedback-launch{width:100%;min-height:48px;font-size:13px}}

body #dl-feedback-widget #dl-feedback-launch{position:static;inset:auto;bottom:auto;z-index:auto;box-shadow:none}
body #dl-feedback-widget[hidden]{display:none}

/* Accessible owner editorial tools, durable admin navigation and responsive academic folders. */
.login-support{margin:22px auto 0;padding:14px 16px;max-width:460px;border:1px solid var(--border,#c8d8e3);border-radius:14px;background:var(--panel,#f6fafc);color:var(--ink,#17394b);text-align:start;line-height:1.7}
.login-support p{margin:5px 0 0;overflow-wrap:anywhere}.login-support a{font-weight:750;color:var(--primary,#087b91);text-decoration:underline;text-underline-offset:3px}
.admin-history-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;margin:0 0 10px}.admin-history-tools .btn{min-height:38px}.admin-history-tools .btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.admin-feedback-list{display:grid;gap:12px}.admin-feedback-item{min-width:0;padding:14px;border:1px solid var(--border,#d4e1e9);border-radius:14px;background:var(--panel,#fff);color:var(--ink,#17394b)}.admin-feedback-item p{margin:10px 0;white-space:pre-wrap;overflow-wrap:anywhere}.admin-feedback-meta{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.admin-feedback-meta time{margin-inline-start:auto;color:var(--muted,#66808f);font-size:.82rem}
.portal-selected-course{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:16px;border:1px solid var(--border,#cddfe7);border-radius:16px;background:var(--panel,#fff);color:var(--ink,#14394e)}.portal-selected-course h3{margin:4px 0;font-size:clamp(1.05rem,2vw,1.35rem)}.portal-selected-course p{margin:5px 0;color:var(--muted,#607b8b);overflow-wrap:anywhere}
.dl-rich-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:9px;border:1px solid var(--border,#c8d9e2);border-radius:12px 12px 0 0;background:var(--surface-muted,#edf4f7);color:var(--ink,#17394b)}.dl-rich-toolbar button{display:inline-flex;align-items:center;justify-content:center;min-width:37px;min-height:36px;padding:5px 8px;border:1px solid var(--border,#c5d6df);border-radius:8px;background:var(--panel,#fff);color:inherit;font:inherit;cursor:pointer}.dl-rich-toolbar button:hover{border-color:var(--primary,#16869a);background:var(--surface-muted,#e5f1f5)}.dl-rich-toolbar label{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700}.dl-rich-toolbar select{max-width:150px;min-height:36px;padding:5px 8px;border:1px solid var(--border,#c5d6df);border-radius:8px;background:var(--panel,#fff);color:var(--ink,#17394b);font:inherit}.dl-rich-toolbar input[type=color]{width:38px;height:36px;padding:3px;border:1px solid var(--border,#c5d6df);border-radius:8px;background:var(--panel,#fff);cursor:pointer}
.dl-rich-editor{box-sizing:border-box;width:100%;min-height:250px;padding:16px;border:1px solid var(--border,#c8d9e2);border-top:0;border-radius:0 0 12px 12px;background:var(--panel,#fff);color:var(--ink,#17394b);font:400 16px/1.7 inherit;line-height:1.7;overflow-wrap:anywhere;white-space:normal;outline:none}.dl-rich-editor:focus-visible{outline:2px solid var(--focus-ring,var(--primary,#16869a));outline-offset:2px}.dl-rich-editor p{margin:.45em 0}.dl-rich-editor h1{font-size:1.85em;line-height:1.3;margin:.65em 0}.dl-rich-editor h2{font-size:1.55em;line-height:1.35;margin:.6em 0}.dl-rich-editor h3{font-size:1.25em;line-height:1.4;margin:.55em 0}.dl-rich-editor blockquote,.dl-post-reading blockquote{margin:1em 0;padding:.65em 1em;border-inline-start:4px solid var(--primary,#16869a);background:var(--surface-muted,#edf4f7);border-radius:8px}.dl-rich-editor a,.dl-post-reading a{color:var(--primary,#087b91);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.dl-rich-editor ul,.dl-rich-editor ol,.dl-post-reading ul,.dl-post-reading ol{padding-inline-start:1.75em}.dl-post-reading{color:var(--ink,#17394b);line-height:1.8;overflow-wrap:anywhere}.dl-post-reading :is(h1,h2,h3){line-height:1.4;color:inherit}.dl-post-reading img,.dl-rich-editor img{max-width:100%;height:auto}
body.dark .login-support,body.dark .admin-feedback-item,body.dark .portal-selected-course{background:var(--panel,#122b3e);border-color:var(--border,#355469);color:var(--ink,#edf6ff)}body.dark .login-support a,body.dark .dl-rich-editor a,body.dark .dl-post-reading a{color:var(--accent,#8bdde6)}body.dark .dl-rich-toolbar{background:var(--surface-muted,#172f43);border-color:var(--border,#355469);color:var(--ink,#edf6ff)}body.dark .dl-rich-toolbar :is(button,select,input[type=color]){background:var(--panel,#122b3e);border-color:var(--border,#355469);color:var(--ink,#edf6ff)}body.dark .dl-rich-editor{background:var(--panel,#122b3e);border-color:var(--border,#355469);color:var(--ink,#edf6ff)}body.dark .dl-rich-editor blockquote,body.dark .dl-post-reading blockquote{background:var(--surface-muted,#172f43);border-color:var(--accent,#58c7d4)}body.dark .portal-selected-course p,body.dark .admin-feedback-meta time{color:var(--muted,#b1c5d4)}
body.dark #dl-feedback-widget #dl-feedback-dialog{background:#102738;color:#e9f4fb;border-color:#355569}body.dark #dl-feedback-widget #dl-feedback-close{background:#24475b;color:#f0f8ff}body.dark #dl-feedback-widget #dl-feedback-intro{color:#bbd0df}body.dark #dl-feedback-widget .dl-feedback-label :is(select,textarea){background:#142f42;color:#eff7ff;border-color:#466779}body.dark #dl-feedback-widget #dl-feedback-stars label{background:#19384d;border-color:#3b5c70;color:#d8f2f6}body.dark #dl-feedback-widget #dl-feedback-stars label:has(input:checked){background:#1d544f;border-color:#3bbba8}
@media(max-width:640px){.admin-history-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-history-tools .btn{white-space:normal;padding-inline:6px;font-size:.82rem}.portal-selected-course{align-items:stretch;flex-direction:column;padding:13px}.portal-selected-course .btn{width:100%}.dl-rich-toolbar{gap:5px;padding:7px}.dl-rich-toolbar button{min-width:34px;min-height:38px;padding:5px 7px}.dl-rich-toolbar label{flex:1 1 125px;justify-content:space-between}.dl-rich-toolbar select{max-width:calc(100% - 40px);min-width:76px}.dl-rich-editor{min-height:220px;padding:12px}.admin-feedback-meta time{width:100%;margin-inline-start:0}}
@media(prefers-reduced-motion:reduce){.admin-history-tools,.dl-rich-toolbar,.dl-rich-editor{scroll-behavior:auto;transition:none}}
.login-remember{display:flex;align-items:flex-start;gap:9px;margin-top:12px;font-size:.9rem;line-height:1.6;color:var(--muted,#5e7888)}.login-remember input{flex:none;width:18px;height:18px;margin-top:3px;accent-color:var(--primary,#087b91)}.session-policy-box{padding:14px;border:1px solid var(--border,#c8d9e2);border-radius:12px;background:var(--surface-muted,#eef5f7)}.session-policy-box h3{margin-top:0}body.dark .session-policy-box{background:var(--panel,#122b3e);border-color:var(--border,#355469);color:var(--ink,#edf6ff)}

/* V10 owner-only public profile editor, in line with the system design tokens. */
.ppu-profile-editor{width:min(790px,calc(100vw - 22px));max-height:92dvh;overflow:auto;box-sizing:border-box;border-radius:23px;border:1px solid var(--border,#cadddf);background:var(--panel,#fff);color:var(--ink,#153648);padding:clamp(17px,3.5vw,29px);box-shadow:0 25px 80px #09253675;font:inherit;line-height:1.75}
.ppu-profile-editor::backdrop{background:#092333b6;backdrop-filter:blur(3px)}
.ppu-profile-editor .ppu-profile-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.ppu-profile-editor .ppu-profile-top h2{margin:0;font-size:clamp(21px,3vw,28px)}
.ppu-profile-editor .ppu-profile-top button{min-width:44px;min-height:44px;cursor:pointer;border-radius:12px;border:1px solid var(--border,#cadddf);background:var(--panel2,#edf5f7);color:inherit}
.ppu-profile-editor .ppu-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.ppu-profile-editor .ppu-profile-grid label{display:grid;gap:6px;font-weight:700;font-size:12px;min-width:0}
.ppu-profile-editor .ppu-profile-grid .full{grid-column:1/-1}
.ppu-profile-editor :is(input:not([type=checkbox]),textarea){min-height:44px;width:100%;box-sizing:border-box;min-width:0;border:1px solid var(--border,#a6bfc7);border-radius:11px;background:var(--panel,#fff);color:var(--ink,#123);padding:10px 12px;font:inherit}
.ppu-profile-editor textarea{resize:vertical;min-height:90px}
.ppu-profile-editor .ppu-profile-visible{display:flex;gap:10px;align-items:center;padding:12px 0;font-weight:800}
.ppu-profile-editor .ppu-profile-visible input{inline-size:20px;block-size:20px}
.ppu-profile-editor .ppu-profile-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.ppu-profile-editor .ppu-profile-actions button{min-height:44px;border-radius:11px;padding:9px 18px;border:1px solid #afd0dc;cursor:pointer;font:inherit;font-weight:800;color:inherit}
.ppu-profile-editor .ppu-profile-actions button[type=submit]{background:#087b89;color:white}
.ppu-profile-editor #ppu-profile-result{font-size:12px;min-height:24px}
@media(max-width:590px){.ppu-profile-editor .ppu-profile-grid{grid-template-columns:minmax(0,1fr)}.ppu-profile-editor{padding:16px}}

/* V13 — accessible, consistent mobile touch surfaces and balanced academic cards. */
body.v103 #v103Header :is(.v103-search,.v103-icon,.v103-avatar,.v103-mobile-menu){min-inline-size:44px;min-block-size:44px;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation}
body.v103 #v103Header .v103-search svg,body.v103 #v103Header .v103-icon svg{inline-size:22px;block-size:22px;flex:none}
body.v103 #v103Header .v103-lang{min-inline-size:44px;max-inline-size:48px}
body.v103 #v103Header .v103-end{flex-wrap:nowrap;gap:clamp(1px,.5vw,8px);min-width:0}
body.v103 #v103Header .v103-logo{min-width:0}
body.v103 #v103Header .v103-logo-type{min-width:0;overflow:hidden}
.v13-language-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}
.v13-language-options button{border:1px solid var(--border);background:var(--panel2);color:var(--ink);border-radius:12px;min-height:48px;font:inherit;font-weight:750;cursor:pointer}
.v13-language-options button[aria-pressed="true"]{border-color:var(--primary);background:var(--soft);color:var(--primary)}
.portal-view-switch .portal-layout-toggle{display:inline-grid;place-items:center;inline-size:45px;block-size:45px;min-width:45px;padding:0;border-radius:13px;transition:background .18s ease,transform .18s ease}
.portal-layout-toggle:active .portal-layout-symbol{transform:rotate(90deg) scale(.9)}
.portal-layout-symbol{font:700 23px/1 system-ui;display:block;transition:transform .25s ease}
.portal-program-grid>.portal-program{box-sizing:border-box;min-width:0;overflow:hidden;position:relative;isolation:isolate}
.portal-program-grid>.portal-program>*{max-inline-size:100%;min-width:0;overflow-wrap:anywhere}
.portal-program-grid>.portal-program>span:last-child{display:inline-flex;align-items:center;max-inline-size:100%;min-height:32px;line-height:1.5;padding:5px 11px;border-radius:999px;background:var(--soft);color:var(--primary);font-size:12px;font-weight:750;margin-block-start:auto}
.p44-tree-actions{position:relative;max-width:100%;min-width:min(220px,100%)}
.p44-tree-actions>summary{display:flex;align-items:center;justify-content:center;gap:8px;list-style:none;cursor:pointer;padding:10px 14px;min-height:44px;border:1px solid var(--border);border-radius:13px;background:var(--panel);color:var(--ink);font-weight:750;white-space:normal}
.p44-tree-actions>summary::-webkit-details-marker{display:none}
.p44-tree-action-menu{position:relative;display:grid;grid-template-columns:1fr;gap:6px;min-width:0;margin-top:7px;padding:9px;border:1px solid var(--border);border-radius:13px;background:var(--panel);box-shadow:0 7px 18px #0b2e3c10;z-index:3}
.p44-tree-action-menu button{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:42px;width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel2);color:var(--ink);font:inherit;cursor:pointer;text-align:start}
.p44-tree-actions:not([open]) .p44-tree-action-menu{display:none}
.p44-tree-section .p44-tree-region,.p44-team-region{overflow:auto;overscroll-behavior:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;}
.p44-tree-region .p44-person{touch-action:pan-y;min-width:0}
body.v1200 .v1200-more-scroll{overscroll-behavior:contain;}


@media(max-width:900px){body.v103 #v103Header .v103-end>.v103-search,body.v103 #v103Header .v103-end>.v103-icon{min-width:44px;min-height:44px;width:44px;height:44px;padding:0}body.v103 #v103Header .v103-search svg{width:23px;height:23px}}
@media(max-width:430px){body.v103 #v103Header .v103-logo-type strong{max-width:105px;white-space:normal;line-height:1.4}body.v103 #v103Header .v103-end{gap:1px}body.v103 #v103Header .v103-end>.v103-search,body.v103 #v103Header .v103-end>.v103-icon{min-width:44px;width:44px}}
@media(prefers-reduced-motion:reduce){.portal-layout-toggle,.portal-layout-symbol{transition:none;animation:none}}

.portal-layout-symbol svg{width:24px;height:24px;display:block;animation:v13-layout-change .26s cubic-bezier(.2,.7,.25,1)}
@keyframes v13-layout-change{from{opacity:.35;transform:scale(.7) rotate(-35deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:440px){.p44-tree-tools .p44-tool-buttons{display:flex;flex-wrap:wrap;max-width:100%}.p44-tree-tools .p44-tree-actions{width:100%;min-width:0}body.v1200 .v1200-more-links{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.portal-layout-symbol svg{animation:none}}

/* V13: year/degree chips belong to each program card, not an absolute overlay. */
.h40-program-grid>.h40-program{display:grid;grid-template-columns:54px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:8px 13px;box-sizing:border-box;min-width:0;overflow:hidden;padding:16px;min-height:128px}
.h40-program-grid .h40-program-icon{grid-column:1;grid-row:1/span 2;width:54px;height:54px;min-width:0}
.h40-program-grid .h40-program-content{grid-column:2;grid-row:1;min-width:0;align-self:end}
.h40-program-grid .h40-program-tail{position:static;inset:auto;grid-column:2;grid-row:2;justify-self:start;align-self:start;max-width:100%;min-width:0;min-height:27px;display:inline-flex;align-items:center;overflow-wrap:anywhere;white-space:normal;padding:5px 11px;background:var(--soft);color:var(--primary);font-size:11px;font-weight:750;line-height:1.6;border-radius:999px}
@media(max-width:480px){.h40-program-grid>.h40-program{grid-template-columns:46px minmax(0,1fr);gap:7px 11px;padding:12px 14px}.h40-program-grid .h40-program-icon{width:46px;height:46px}}

/* University organization: responsive, accessible, nested parent-child chart. */
#college-org-root{--org-line:#a9c9d5;--org-ink:#133a4b;--org-accent:#128ca0;color:var(--org-ink);margin-block:clamp(16px,3vw,32px);font-family:inherit;min-width:0}
#college-org-root *{box-sizing:border-box}
.dorg-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-block:0 14px}
.dorg-heading{margin:0;font-size:clamp(1.1rem,2.5vw,1.55rem);line-height:1.5}
.dorg-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.dorg-button,.dorg-primary{font:inherit;font-weight:700;cursor:pointer;border-radius:12px;min-width:44px;min-height:44px;padding:9px 15px;border:1px solid #b9d5dc;background:#fff;color:#174859}
.dorg-primary{background:#006f87;color:white;border-color:#006f87}
.dorg-button:focus-visible,.dorg-primary:focus-visible,.dorg-viewport:focus-visible,.dorg-editor input:focus-visible,.dorg-editor select:focus-visible{outline:3px solid #009ec0;outline-offset:2px}
.dorg-viewport{width:100%;max-height:min(70vh,720px);overflow:auto;overscroll-behavior:contain;border:1px solid #d3e4e9;border-radius:20px;background:linear-gradient(155deg,#f5fbfd,#eaf5f8);padding:22px 12px;touch-action:pan-x pan-y;direction:rtl;}
.dorg-canvas{width:max-content;min-width:100%;margin-inline:auto;transform-origin:top center}
.dorg-tree,.dorg-tree ul{list-style:none;display:flex;justify-content:center;align-items:flex-start;margin:0;padding:0;gap:12px}
.dorg-tree>li{width:max-content}
.dorg-tree .dorg-nested{position:relative;padding-top:30px;flex-wrap:nowrap}
.dorg-nested::before{content:"";position:absolute;top:0;left:50%;height:30px;border-inline-start:2px solid var(--org-line)}
.dorg-entry{display:flex;flex-direction:column;align-items:center;position:relative;min-width:220px;width:max-content;flex:0 0 auto}
.dorg-nested>.dorg-entry::before{content:"";position:absolute;top:-15px;height:15px;border-inline-start:2px solid var(--org-line)}
.dorg-nested>.dorg-entry:not(:only-child)::after{content:"";position:absolute;inset-inline:0;top:-15px;border-top:2px solid var(--org-line)}
.dorg-nested>.dorg-entry:first-child::after{inset-inline-end:50%}
.dorg-nested>.dorg-entry:last-child::after{inset-inline-start:50%}
.dorg-card{background:white;border:1px solid #cfe4e9;box-shadow:0 10px 26px #10384915;border-radius:18px;width:clamp(200px,19vw,260px);max-width:100%;min-height:142px;text-align:center;padding:16px;display:flex;align-items:center;flex-direction:column;gap:8px;overflow-wrap:anywhere;transition:transform .2s,box-shadow .2s}
.dorg-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px #0c3a5226}
.dorg-dean{border:2px solid #16a3b9;min-height:205px;background:linear-gradient(#fff,#effcfd)}
.dorg-portrait{width:52px;height:52px;border-radius:50%;background:#e5f4f8;display:grid;place-items:center;overflow:hidden;color:#087e94;font-size:28px}
.dorg-dean .dorg-portrait{width:84px;height:84px}
.dorg-portrait img{width:100%;height:100%;object-fit:cover}
.dorg-card-body{display:grid;gap:5px;line-height:1.65}
.dorg-type{color:#00738d;font-size:.8rem;font-weight:700}
.dorg-name{font-size:1rem}
.dorg-role,.dorg-office{font-size:.77rem;color:#486979}
.dorg-description{font-size:.77rem;max-width:28ch;margin:0;color:#416172}
.dorg-hint{margin-block:8px 0;font-size:.8rem;color:#617886}
.dorg-empty,.dorg-loading{background:#f3fafc;border:1px solid #cfe5eb;border-radius:12px;padding:18px}
.dorg-manager-list{display:grid;gap:8px}
.dorg-manager-row{border:1px solid #d3e4e9;border-radius:12px;padding:12px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.dorg-manager-row small{display:block;color:#586f7c;margin-top:3px}
.dorg-editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;border:1px solid #bfd9e1;padding:18px;border-radius:14px;margin-block:10px 22px}
.dorg-field{display:grid;gap:5px;font-size:.86rem;font-weight:700;min-width:0}
.dorg-field input,.dorg-field textarea,.dorg-field select{padding:10px;border-radius:9px;border:1px solid #b6d1d9;max-width:100%;min-height:44px;font:inherit;background:white;color:#153d4d}
.dorg-check{display:flex;align-items:center;gap:8px}.dorg-check input{width:18px;height:18px}
.dorg-editor-actions{display:flex;gap:10px;align-items:end}
@media(max-width:640px){.dorg-viewport{max-height:65svh;padding:14px 6px;border-radius:14px}.dorg-entry{min-width:185px}.dorg-card{width:185px;padding:12px}.dorg-nested{gap:8px}.dorg-manager-row{align-items:start}}
@media(prefers-reduced-motion:reduce){.dorg-card{transition:none}.dorg-card:hover{transform:none}}
@media print{.dorg-viewport{overflow:visible;max-height:none}.dorg-actions{display:none}}

/* Maintain readable organizational records on narrow screens and both directions. */
.dorg-card-body,.dorg-card-body>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
.dorg-office{direction:auto;unicode-bidi:plaintext}
.dorg-editor .dorg-field textarea{min-height:76px;resize:vertical}
.dorg-tree{min-width:max-content}
.dorg-manager-row{overflow-wrap:anywhere}
.dorg-viewport{scroll-padding-inline:20px}
@media (max-width:420px){.dorg-viewport{padding:12px 8px}.dorg-button,.dorg-primary{min-height:44px}.dorg-heading{max-width:100%}}

/* Integrated organization card and accessible details layer. */
#college-org-root .dorg-toolbar{display:grid;grid-template-columns:1fr;align-items:start;gap:12px}
#college-org-root .dorg-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--surface,#fff);border:1px solid #d7e7ec;border-radius:16px;padding:clamp(8px,2vw,13px)}
#college-org-root .dorg-actions :is(.dorg-search,.dorg-view-select){font:inherit;color:#173e50;min-height:44px;border-radius:10px;border:1px solid #bbd5dd;background:#fff;padding:8px 12px;min-width:0}
#college-org-root .dorg-search{flex:2 1 195px}
#college-org-root .dorg-view-select{flex:1 1 155px;max-width:240px}
#college-org-root .dorg-percent{font-size:.82rem;font-weight:750;min-width:42px;text-align:center;font-variant-numeric:tabular-nums}
#college-org-root .dorg-entry[hidden]{display:none}
#college-org-root[data-view=compact]:not(.dorg-has-search) .dorg-tree>li>.dorg-nested>.dorg-entry>.dorg-nested{display:none}
#college-org-root[data-view=collapsed]:not(.dorg-has-search) .dorg-tree>li>.dorg-nested{display:none}
#college-org-root .dorg-card{border-top:4px solid #1698a8;gap:10px;padding:clamp(12px,2vw,20px)}
#college-org-root .dorg-dean{border-color:#99c5da;border-top-color:#0b8a9d;min-height:180px}
#college-org-root .dorg-portrait{flex:none;background:linear-gradient(135deg,#e5f6fa,#daeaf7);color:#266781}
#college-org-root .dorg-placeholder{width:100%;height:100%;display:grid;place-items:center}
#college-org-root .dorg-placeholder svg{width:56%;height:56%}
#college-org-root .dorg-more{border:0;border-radius:10px;padding:10px 18px;min-height:44px;background:#e4f2f5;color:#09556b;cursor:pointer;font-weight:700;font-size:.83rem;line-height:1.4;font-family:inherit}
#college-org-root .dorg-more:hover{background:#cdeaf0}
#college-org-root .dorg-viewport{max-height:75vh;min-height:190px;}
.dorg-person-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(520px,calc(100vw - 24px));max-height:min(88dvh,730px);margin:auto;padding:clamp(16px,3vw,24px);border:1px solid #b9d9e3;border-radius:20px;background:#fff;color:#143a4b;box-shadow:0 24px 80px #0926335c;overflow-y:auto;font:inherit;direction:inherit}
.dorg-person-dialog::backdrop{background:#071e2aab;backdrop-filter:blur(3px)}
.dorg-detail-head{display:flex;align-items:center;gap:15px;position:relative;padding-inline-end:44px;padding-block-end:16px;border-bottom:1px solid #e3eef2}
.dorg-detail-head .dorg-portrait{width:64px;height:64px;flex:none;border-radius:50%;background:#e5f4f8;color:#0b7088;display:grid;place-items:center;overflow:hidden}
.dorg-detail-head .dorg-portrait img{width:100%;height:100%;object-fit:cover}
.dorg-detail-head .dorg-placeholder{display:grid;place-items:center;width:100%;height:100%}
.dorg-detail-head .dorg-placeholder svg{width:38px;height:38px}
.dorg-detail-head h2{font-size:1.14rem;margin:0;line-height:1.55}
.dorg-detail-head p{margin:5px 0 0;color:#597483}
.dorg-dialog-close{position:absolute;inset-inline-end:0;top:0;border:0;border-radius:11px;width:44px;height:44px;background:#eaf4f7;color:#164454;cursor:pointer;font-weight:700;font-size:1.5rem;line-height:1;font-family:inherit}
.dorg-detail-list{display:grid;gap:10px;margin:18px 0 0;padding:0}
.dorg-detail-row{border:1px solid #e0eaee;border-radius:12px;padding:12px 14px;background:#f8fcfd;overflow-wrap:anywhere}
.dorg-detail-row dt{font-size:.8rem;color:#526d7c;font-weight:700;margin-bottom:5px}
.dorg-detail-row dd{margin:0;font-weight:750;white-space:pre-wrap;unicode-bidi:plaintext}
@media(max-width:480px){#college-org-root .dorg-actions{gap:6px}#college-org-root .dorg-actions .dorg-button{padding:8px 12px}#college-org-root .dorg-viewport{max-height:65dvh}.dorg-person-dialog{margin:auto 12px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){#college-org-root .dorg-card{animation:none;transition:none}}

/* Approved organizational layouts: same published records, no duplicated data store. */
#college-org-root .dorg-actions .dorg-layout-select{font:inherit;min-height:44px;max-width:255px;min-width:165px;border:1px solid #bbd5dd;border-radius:10px;padding:8px;background:#fff;color:#173e50}
#college-org-root .dorg-viewport[hidden],#college-org-root .dorg-alternate[hidden],#college-org-root .dorg-actions [hidden]{display:none!important}
#college-org-root[data-layout=chart] .dorg-card{border-radius:10px;box-shadow:0 5px 15px #10384920}
#college-org-root[data-layout=network] .dorg-tree>li>.dorg-nested{flex-wrap:wrap;max-width:1000px;margin-inline:auto}
#college-org-root[data-layout=network] .dorg-card{border-radius:25px;min-height:145px}
.dorg-flat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr));gap:15px;padding:8px}
.dorg-flat-card{width:100%;max-width:none;min-height:220px}.dorg-lineage{margin:0;font-size:.78rem;color:#526f80;line-height:1.7;overflow-wrap:anywhere}
.dorg-alternate{width:100%;max-height:min(75dvh,760px);overflow:auto;border:1px solid #d3e4e9;border-radius:18px;padding:clamp(10px,2vw,22px);background:#f6fbfd}
.dorg-list,.dorg-outline-roots,.dorg-outline ul{list-style:none;padding:0;margin:0}.dorg-list{display:grid;gap:9px}.dorg-list-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;background:white;border:1px solid #cfdee6;border-radius:13px;padding:8px 13px}.dorg-list-item small{color:#526f80;overflow-wrap:anywhere}.dorg-list-action{display:grid;gap:4px;text-align:start;border:0;background:transparent;font:inherit;color:#174859;cursor:pointer;padding:8px;min-height:44px}.dorg-list-action span{color:#526f80;font-size:.8rem}
.dorg-outline-roots{display:grid;gap:9px}.dorg-outline{background:white;border:1px solid #cfdee6;border-radius:13px;padding:12px}.dorg-outline summary{cursor:pointer;min-height:35px}.dorg-outline summary>*{margin-inline:7px}.dorg-outline summary small{color:#526f80}.dorg-outline ul{padding-inline-start:22px;margin-top:12px;display:grid;gap:8px}
.dorg-view-owner{display:flex;gap:12px;flex-wrap:wrap;align-items:end;padding:18px;border:1px solid #bcd9e3;border-radius:14px;background:#f6fbfd;margin-block:16px}.dorg-view-owner label{display:grid;gap:7px;flex:1 1 200px;font-weight:700}.dorg-view-owner select{font:inherit;min-height:44px;border:1px solid #a9c6d2;border-radius:9px;background:#fff;padding:8px}.dorg-view-owner .dorg-feedback{flex-basis:100%;margin:0}.dorg-alternate :is(button,summary):focus-visible,.dorg-layout-select:focus-visible{outline:3px solid #009ec0;outline-offset:2px}
@media print{.dorg-alternate{max-height:none;overflow:visible}}

.dorg-owner-preview{margin-block:14px 25px;border-top:1px solid #bcd9e3;padding-top:14px}.dorg-owner-preview .dorg-viewport{max-height:55vh}

/* Unified dark appearance: every organization surface follows the active theme. */
body.dark #college-org-root{--org-line:#35566a;--org-ink:#e3eff8;--org-accent:#65d8df;color:var(--org-ink)}
body.dark #college-org-root .dorg-viewport{background:linear-gradient(155deg,#12283a,#172f43);border-color:#35566a}
body.dark #college-org-root .dorg-card,
body.dark #college-org-root .dorg-actions,
body.dark #college-org-root .dorg-alternate,
body.dark #college-org-root .dorg-list-item,
body.dark #college-org-root .dorg-outline,
body.dark #college-org-root .dorg-view-owner,
body.dark #college-org-root .dorg-editor,
body.dark #college-org-root .dorg-manager-row,
body.dark .dorg-person-dialog,
body.dark .dorg-detail-row{background:#14283a;color:#e3eff8;border-color:#35566a}
body.dark #college-org-root .dorg-dean{background:linear-gradient(#18354a,#14283a);border-color:#3d7f91}
body.dark #college-org-root .dorg-type{color:#72d7e3}
body.dark #college-org-root .dorg-role,
body.dark #college-org-root .dorg-office,
body.dark #college-org-root .dorg-description,
body.dark #college-org-root .dorg-hint,
body.dark #college-org-root .dorg-manager-row small,
body.dark #college-org-root .dorg-lineage,
body.dark .dorg-detail-row dt,
body.dark .dorg-detail-head p{color:#b1c6d8}
body.dark #college-org-root .dorg-field input,
body.dark #college-org-root .dorg-field textarea,
body.dark #college-org-root .dorg-field select,
body.dark #college-org-root .dorg-actions :is(.dorg-search,.dorg-view-select),
body.dark #college-org-root .dorg-view-owner select{background:#0b1b2b;color:#e3eff8;border-color:#46657b}
body.dark #college-org-root .dorg-button{background:#1b3549;color:#e3eff8;border-color:#46657b}
body.dark #college-org-root .dorg-more,
body.dark .dorg-dialog-close{background:#204454;color:#c8f4f4}
body.dark #college-org-root .dorg-empty,
body.dark #college-org-root .dorg-loading{background:#14283a;color:#e3eff8;border-color:#35566a}
body.dark .dorg-detail-head{border-color:#35566a}
body.dark .dorg-detail-row dd{color:#e3eff8}


/* Owner notification badge: count is server-derived and present only for the owner role. */
body.nv1500 .nv-notice-button{position:relative;isolation:isolate;overflow:visible}
body.nv1500 .nv-notice-symbol{display:grid;place-items:center}
body.nv1500 .nv-notice-count{position:absolute;inset-block-start:-5px;inset-inline-end:-5px;min-width:18px;height:18px;padding:0 4px;border:2px solid var(--card,var(--panel));border-radius:999px;background:#c83d52;color:#fff;font:800 9px/14px system-ui,sans-serif;text-align:center;box-shadow:0 2px 6px #0002;z-index:2}
body.nv1500 .nv-notice-count[hidden]{display:none}
body.nv1500 .nv-notice-button:focus-visible{outline:3px solid var(--focus,#6cc6e8);outline-offset:3px}

a.v103-route{text-decoration:none;color:var(--v103-ink)}a.nv-card{text-decoration:none;font:inherit;color:var(--ink)}a.nv-card:visited{color:var(--ink)}a.nv-side-link{text-decoration:none;font-family:inherit}
