/* CSS taken directly from user supplied Elpis Secondary source: SecondaryParent/top.php */

:root{--navy:#087bb6;--blue:#139cdb;--sky:#38bdf8;--ink:#172033;--muted:#667085;--line:#e6ebf2;--page:#f5f8fc}
*{box-sizing:border-box}body{margin:0;background:var(--page);font-family:'Segoe UI',Arial,sans-serif;color:var(--ink)}
a{text-decoration:none!important}.portal-shell{min-height:100vh}.portal-topbar{height:68px;background:#fff;border-bottom:1px solid #e8edf5;box-shadow:0 4px 18px rgba(23,43,77,.06);display:flex;align-items:center;position:sticky;top:0;z-index:1025}
.portal-topbar-inner{width:100%;max-width:1220px;margin:auto;padding:0 18px;display:flex;align-items:center;gap:13px}
.menu-trigger{width:42px;height:42px;border:1px solid #dce5f1;border-radius:11px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--navy);transition:.18s}.menu-trigger:hover{background:#edf4ff;border-color:#c8d9f3}
.menu-trigger svg,.portal-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.portal-wordmark{font-size:15px;font-weight:800;color:var(--navy);white-space:nowrap}.portal-role{font-size:11px;color:#8491a5;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.top-spacer{flex:1}.top-round-link{width:39px;height:39px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#41516d;position:relative}.top-round-link:hover{background:#f1f6fd;color:var(--blue)}
.top-badge{position:absolute;right:1px;top:0;min-width:17px;height:17px;border-radius:10px;background:#ef4444;color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px}
.top-profile{display:flex;align-items:center;gap:9px;margin-left:5px}.top-avatar{width:39px;height:39px;border-radius:50%;object-fit:cover;background:#e8f1ff;color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;border:2px solid #d9e7fb}.top-profile-name{font-size:12px;font-weight:800;color:#25344d;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-profile-id{font-size:10px;color:#8995a8}
.drawer-backdrop{position:fixed;inset:0;background:rgba(9,22,44,.44);z-index:1040;opacity:0;visibility:hidden;transition:.2s}.drawer-backdrop.open{opacity:1;visibility:visible}
.portal-drawer{position:fixed;top:0;left:0;width:292px;height:100vh;background:linear-gradient(180deg,#087bb6,#07689c);z-index:1041;transform:translateX(-102%);transition:.24s ease;box-shadow:20px 0 50px rgba(5,20,45,.24);overflow-y:auto}.portal-drawer.open{transform:none}
.drawer-head{padding:22px 19px 17px;border-bottom:1px solid rgba(255,255,255,.10);display:flex;align-items:center;gap:11px}.drawer-head img{width:43px;height:43px;border-radius:12px;background:#fff;padding:3px}.drawer-head strong{display:block;color:#fff;font-size:15px}.drawer-head small{color:#aecaef}
.drawer-profile{margin:15px 14px;padding:13px;border-radius:13px;background:rgba(255,255,255,.09);display:flex;align-items:center;gap:10px;color:#fff}.drawer-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#fff;color:#087bb6;display:flex;align-items:center;justify-content:center;font-weight:800}
.drawer-section{padding:13px 14px 4px;color:#7898c8;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.drawer-link{margin:3px 9px;padding:10px 11px;border-radius:10px;color:#dce9fb!important;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:650;transition:.16s}.drawer-link:hover,.drawer-link.active{background:rgba(255,255,255,.12);color:#fff!important}.drawer-link .portal-icon{width:19px;height:19px}.drawer-link .mini-count{margin-left:auto;background:#ef4444;color:#fff;border-radius:10px;padding:2px 6px;font-size:10px}
.portal-content{max-width:1180px;margin:0 auto;padding:24px 16px 40px}.page-card,.lms-card,.cardx,.card,.widget-area{border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:0 7px 24px rgba(23,43,77,.065)!important;background:#fff}
.form-control,.custom-select{min-height:44px;border-radius:10px!important;border-color:#d7e0ec!important}.btn{border-radius:9px;font-weight:700}.table thead th{background:#f7f9fc;color:#667085;font-size:12px;text-transform:uppercase;border-bottom:1px solid #e7edf5}.table td{border-color:#edf1f5}
.role-hero{background:#fff;border:1px solid #e6ebf2;border-radius:17px;padding:20px 22px;box-shadow:0 7px 24px rgba(23,43,77,.055);display:flex;align-items:center;justify-content:space-between;gap:15px}.role-hero h2{font-size:23px;font-weight:800;color:#172033;margin:0}.role-hero p{margin:5px 0 0;color:#77849a;font-size:13px}.role-chip{display:inline-flex;padding:5px 9px;border-radius:18px;background:#edf4ff;color:#36517d;font-size:11px;font-weight:750;margin:6px 5px 0 0}
.action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.action-tile{min-height:118px;border-radius:14px;padding:18px 16px;color:#fff!important;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;box-shadow:0 9px 22px rgba(23,43,77,.12);position:relative;overflow:hidden;transition:transform .17s,box-shadow .17s}.action-tile:after{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-35px;top:-38px;background:rgba(255,255,255,.13)}.action-tile:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(23,43,77,.18)}.action-tile .tile-icon{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center}.action-tile .tile-icon svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.action-tile strong{font-size:14px;z-index:1}.tile-blue{background:linear-gradient(135deg,#0ea5e9,#139cdb)}.tile-purple{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.tile-cyan{background:linear-gradient(135deg,#06b6d4,#0284c7)}.tile-orange{background:linear-gradient(135deg,#f97316,#ea580c)}.tile-green{background:linear-gradient(135deg,#10b981,#059669)}.tile-red{background:linear-gradient(135deg,#f43f5e,#dc2626)}
@media(max-width:760px){.action-grid{grid-template-columns:repeat(2,1fr)}.top-profile-name,.top-profile-id,.portal-role{display:none}.portal-topbar-inner{padding:0 10px}.portal-wordmark{font-size:13px}.role-hero{align-items:flex-start}.portal-content{padding:18px 12px 32px}}
@media(max-width:360px){.action-grid{gap:9px}.action-tile{min-height:104px;padding:14px 12px}}
.wrap{max-width:1180px;margin:0 auto;padding:24px 16px 40px}.cardx{padding:22px;margin-bottom:18px}
