:root{--umi-blue:#1456a0;--umi-blue-dark:#0b315f;--umi-light:#f3f6fa;--umi-border:#dce4ed;--umi-text:#19324d}
*{box-sizing:border-box}body{color:var(--umi-text);font-family:Inter,"Segoe UI",sans-serif}.brand-mark{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#fff;color:var(--umi-blue);font-weight:800;letter-spacing:-.04em;box-shadow:0 5px 18px rgba(0,0,0,.12)}
.login-body{margin:0;background:#fff}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,44%) 1fr}.login-intro{padding:48px clamp(36px,6vw,88px);color:#fff;background:linear-gradient(145deg,rgba(11,49,95,.96),rgba(20,86,160,.91)),radial-gradient(circle at top right,#3c8fe8,transparent 55%);display:flex;flex-direction:column;justify-content:space-between}.login-brand,.mobile-brand,.alumni-brand{display:flex;align-items:center;gap:13px;font-weight:700}.login-intro h1{max-width:650px;font-size:clamp(2.3rem,4vw,4.5rem);line-height:1.05;letter-spacing:-.045em;margin:.5rem 0 1.5rem}.login-lead{font-size:1.1rem;max-width:540px;color:rgba(255,255,255,.75)}.login-panel{display:grid;place-items:center;padding:32px}.login-card{width:min(100%,430px)}.login-card h2{font-size:2rem;letter-spacing:-.03em}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.73rem;font-weight:800;color:var(--umi-blue)}.mobile-brand{display:none;margin-bottom:42px}.login-help{text-align:center;color:#718096;font-size:.8rem;margin:24px 0 0}.form-control{border-color:#cfd9e5}.form-control:focus{border-color:#4a8fd4;box-shadow:0 0 0 .25rem rgba(20,86,160,.12)}.btn-primary{background:var(--umi-blue);border-color:var(--umi-blue)}
.admin-body{background:var(--umi-light)}.admin-sidebar{background:linear-gradient(180deg,var(--umi-blue-dark),#0a427f)!important}.brand-link{display:flex!important;align-items:center;gap:12px;color:#fff!important;text-decoration:none;text-align:left;font-size:1rem;line-height:1.1}.brand-link small{font-size:.65rem;font-weight:400;opacity:.68}.admin-sidebar .navbar-brand{height:auto;padding:24px 12px}.admin-sidebar .nav-link{border-radius:9px;margin:2px 8px;padding:10px 12px;color:rgba(255,255,255,.76)}.admin-sidebar .nav-link:hover{color:#fff;background:rgba(255,255,255,.07)}.admin-sidebar .nav-link.active{color:#fff;background:rgba(32,107,196,.42);box-shadow:inset 3px 0 0 #72b5ff}.nav-link-icon{width:26px;display:inline-flex;align-items:center;justify-content:center}.sidebar-icon{display:inline-block;flex:0 0 auto}.sidebar-navigation{gap:4px;padding-bottom:12px}.sidebar-section{list-style:none;border-bottom:1px solid rgba(255,255,255,.07);padding:5px 0 8px}.sidebar-section:last-child{border-bottom:0}.sidebar-section-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;border:0;background:transparent;color:rgba(255,255,255,.55);padding:10px 20px 7px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-align:left;text-transform:uppercase}.sidebar-section-toggle:hover{color:#fff}.sidebar-section-toggle .sidebar-icon,.sidebar-submenu-toggle>.sidebar-icon{width:16px;height:16px;transition:transform .2s ease}.sidebar-section-toggle:not(.collapsed) .sidebar-icon,.sidebar-submenu-toggle:not(.collapsed)>.sidebar-icon{transform:rotate(180deg)}.sidebar-submenu-toggle{width:calc(100% - 16px);border:0;background:transparent;text-align:left;display:flex;align-items:center}.sidebar-submenu-toggle .nav-link-title{flex:1}.sidebar-submenu-list{margin:0 10px 4px 28px;padding-left:7px;border-left:1px solid rgba(255,255,255,.13)}.sidebar-submenu-list .nav-link{font-size:.82rem;padding:8px 10px;margin-left:0}.sidebar-submenu-list .nav-link-icon{width:21px}.sidebar-submenu-list .sidebar-icon{width:16px;height:16px}.menu-note{float:right;font-size:.63rem;border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:2px 6px}.admin-user{padding:20px}.welcome-card{background:linear-gradient(125deg,#fff 60%,#e8f2fc)}.welcome-card h3{font-size:1.55rem}.role-badge{display:inline-block;background:#deebf9;color:var(--umi-blue);border-radius:20px;padding:5px 11px;font-size:.75rem;font-weight:700}.placeholder-card{border-color:var(--umi-border)}.placeholder-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#edf3f9;color:var(--umi-blue);font-weight:800;margin-bottom:22px}.placeholder-card h4{font-size:1rem}
.alumni-body{margin:0;background:var(--umi-light);min-height:100vh}.alumni-header{background:#fff;border-bottom:1px solid var(--umi-border);position:sticky;top:0;z-index:5}.alumni-nav{min-height:72px;display:flex;align-items:center;justify-content:space-between}.alumni-brand{color:var(--umi-text);text-decoration:none}.alumni-brand .brand-mark{background:var(--umi-blue);color:#fff;width:40px;height:40px}.alumni-main{padding-top:clamp(40px,8vw,90px);padding-bottom:60px}.alumni-welcome{max-width:740px}.alumni-welcome h1{font-size:clamp(2rem,6vw,4rem);letter-spacing:-.05em;margin:.5rem 0 1rem}.alumni-welcome p{font-size:1.05rem;color:#5f7184;line-height:1.75}.alumni-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}.alumni-menu-card{background:#fff;border:1px solid var(--umi-border);border-radius:16px;padding:22px;display:flex;gap:18px}.menu-number{color:var(--umi-blue);font-weight:800}.alumni-menu-card h2{font-size:1rem;margin:0 0 5px}.alumni-menu-card p{font-size:.85rem;color:#718096;margin:0}.is-disabled{opacity:.75}
@media(max-width:767.98px){.login-shell{display:block}.login-intro{display:none}.login-panel{min-height:100vh;padding:28px 22px}.mobile-brand{display:flex}.login-card h2{font-size:1.7rem}.alumni-menu{grid-template-columns:1fr}.alumni-nav{padding-inline:16px}.alumni-main{padding-inline:20px}.alumni-brand>span:last-child{display:none}.welcome-card .card-body{padding:24px!important}}
.form-card{max-width:760px}.code-chip{display:inline-block;padding:4px 8px;border-radius:7px;background:#edf3f9;color:var(--umi-blue);font-weight:700;font-size:.78rem}.permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permission-item{display:flex;align-items:center;gap:12px;border:1px solid var(--umi-border);border-radius:10px;padding:14px 16px;cursor:pointer;background:#fff}.permission-item:hover{border-color:#9dbde0}.table .btn-list{flex-wrap:nowrap}.page-item .page-link{min-width:34px;text-align:center}@media(max-width:767.98px){.permission-list{grid-template-columns:1fr}.table .btn-list{flex-wrap:wrap}.form-card{max-width:none}}
.graduation-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--umi-border)}.graduation-item:first-child{padding-top:0}.history-edit-form{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:8px;margin-top:10px;padding:12px;background:var(--umi-light);border-radius:8px}.timeline-entry{position:relative;padding:0 0 18px 18px;border-left:2px solid #dce8f4}.timeline-entry:before{content:"";position:absolute;left:-6px;top:2px;width:10px;height:10px;border-radius:50%;background:var(--umi-blue)}.cursor-pointer{cursor:pointer}@media(max-width:767.98px){.graduation-item{display:block}.graduation-item details{margin-top:10px}.history-edit-form{grid-template-columns:1fr}}
.public-auth-body{margin:0;min-height:100vh;background:var(--umi-light)}.public-auth-header{min-height:72px;padding:15px clamp(20px,5vw,64px);display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--umi-border)}.public-auth-main{padding:clamp(28px,6vw,70px) 20px}.public-auth-card{width:min(100%,620px);margin:auto;padding:clamp(24px,5vw,44px);background:#fff;border:1px solid var(--umi-border);border-radius:18px;box-shadow:0 18px 50px rgba(20,49,84,.08)}.public-auth-card h1{font-size:clamp(1.7rem,4vw,2.4rem);letter-spacing:-.035em;margin:.35rem 0 1.5rem}.privacy-copy{max-height:320px;overflow:auto;padding:18px;border:1px solid var(--umi-border);border-radius:12px;background:#f8fafc}.privacy-check{padding:14px;border:1px solid var(--umi-border);border-radius:10px;background:#f8fafc}.alumni-menu-link{color:inherit;text-decoration:none;transition:transform .15s ease,border-color .15s ease}.alumni-menu-link:hover{color:inherit;border-color:#8eb5dd;transform:translateY(-2px)}
.alumni-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.alumni-sidebar{position:sticky;top:0;height:100vh;padding:28px 22px;background:#fff;border-right:1px solid var(--umi-border);display:flex;flex-direction:column}.portal-nav{display:grid;gap:6px;margin-top:42px}.portal-nav a,.portal-nav span{display:flex;justify-content:space-between;padding:12px 14px;border-radius:10px;color:#52677d;text-decoration:none;font-weight:600}.portal-nav a:hover,.portal-nav a.active{background:#eaf2fb;color:var(--umi-blue)}.portal-nav small{font-size:.65rem}.alumni-shell>.alumni-main{width:min(100%,1080px);margin:0 auto;padding:56px 40px 80px}.portal-heading{max-width:760px;margin-bottom:30px}.portal-heading h1{font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-.045em;margin:.4rem 0 .7rem}.portal-heading p{color:#687b8f}.completion-card,.portal-form-card,.history-card,.empty-card{background:#fff;border:1px solid var(--umi-border);border-radius:16px;padding:24px}.completion-card h2{font-size:2.4rem;margin:.25rem 0 0}.completion-card .progress{height:9px}.portal-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portal-card{display:block;background:#fff;border:1px solid var(--umi-border);border-radius:16px;padding:22px;color:inherit;text-decoration:none}.portal-card:not(.is-disabled):hover{color:inherit;border-color:#91b8de}.portal-card>span{color:var(--umi-blue);font-size:.75rem;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.portal-card h2{font-size:1.25rem;margin:16px 0 6px}.portal-card p{color:#718096;margin:0}.profile-photo-row{display:flex;align-items:center;gap:20px}.profile-photo,.profile-initial{width:82px;height:82px;border-radius:50%;object-fit:cover;flex:0 0 auto}.profile-initial{display:grid;place-items:center;background:var(--umi-blue);color:#fff;font-size:2rem;font-weight:800}.portal-form-card{max-width:820px;margin-top:20px}.portal-form-card>h2{font-size:1.2rem}.history-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:22px}.history-tabs a{white-space:nowrap;padding:9px 14px;border-radius:20px;color:#60758a;text-decoration:none;background:#fff;border:1px solid var(--umi-border)}.history-tabs a.active{background:var(--umi-blue);color:#fff;border-color:var(--umi-blue)}.history-list{display:grid;gap:14px}.history-card h2{font-size:1.1rem;margin:0 0 6px}.history-card p{color:#6b7e90;margin:0 0 8px}.history-card-head{display:flex;justify-content:space-between;gap:18px}.status-pill{display:inline-block;padding:5px 10px;border-radius:20px;background:#fff2cc;color:#725d16;font-size:.72rem;font-weight:700;white-space:nowrap}.status-pill.verified{background:#ddf4e6;color:#176b38}.history-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--umi-border)}.history-form .btn{align-self:start}.status-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.status-options label{padding:12px;border:1px solid var(--umi-border);border-radius:10px}.mobile-bottom-nav{display:none}
@media(max-width:767.98px){.alumni-shell{display:block}.alumni-sidebar{display:none}.alumni-shell>.alumni-main{padding:28px 18px 95px}.portal-card-grid{grid-template-columns:1fr}.mobile-bottom-nav{position:fixed;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);bottom:0;left:0;right:0;padding:10px 6px max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--umi-border)}.mobile-bottom-nav a,.mobile-bottom-nav span{text-align:center;font-size:.74rem;color:#52677d;text-decoration:none}.profile-photo-row{align-items:flex-start}.history-card-head{display:block}.status-pill{margin-top:6px}.history-form,.status-options{grid-template-columns:1fr}}
.alumni-shell{grid-template-columns:260px minmax(0,1fr)}.alumni-sidebar{padding:22px 16px}.alumni-nav{display:block;flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;margin:22px 0 12px;scrollbar-width:thin}.portal-nav-group{margin:0;padding:0 0 4px;border-bottom:1px solid #edf1f5}.portal-nav-group+.portal-nav-group{margin-top:3px}.portal-nav-group summary{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:5px 10px;color:#8291a2;cursor:pointer;font-size:.66rem;font-weight:800;letter-spacing:.075em;line-height:1.2;list-style:none;text-transform:uppercase}.portal-nav-group summary::marker{content:""}.portal-nav-group summary::-webkit-details-marker{display:none}.portal-nav-group summary>span{min-width:0}.portal-nav-group summary>.sidebar-icon{width:14px;height:14px;flex:0 0 14px;transition:transform .18s ease}.portal-nav-group[open] summary>.sidebar-icon{transform:rotate(180deg)}.portal-nav-links{display:grid;gap:2px;margin:1px 0 3px}.alumni-nav .portal-nav-links a{display:flex;min-width:0;min-height:42px;align-items:center;justify-content:flex-start;gap:11px;margin:0;padding:8px 10px;border-radius:9px;color:#52677d;text-decoration:none;font-weight:600;line-height:1.25}.alumni-nav .portal-nav-links a:hover,.alumni-nav .portal-nav-links a.active{background:#eaf2fb;color:var(--umi-blue)}.alumni-nav .portal-nav-links a>span:not(.badge){min-width:0;overflow-wrap:anywhere}.portal-nav-links a>.sidebar-icon{width:19px;height:19px;flex:0 0 19px}.alumni-nav .portal-nav-links .badge{margin-left:auto;padding:3px 6px;color:#fff;font-size:.65rem}.portal-logout{padding-top:11px;border-top:1px solid var(--umi-border)}.portal-logout button{display:flex;width:100%;min-height:42px;align-items:center;gap:11px;border:0;border-radius:9px;background:transparent;padding:8px 10px;color:#52677d;font-weight:700;text-align:left}.portal-logout button:hover{background:#eaf2fb;color:var(--umi-blue)}.portal-logout .sidebar-icon{width:19px;height:19px;flex:0 0 19px}@media(max-width:767.98px){.mobile-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));padding-inline:4px}.mobile-bottom-nav a{display:flex;min-width:0;align-items:center;flex-direction:column;gap:3px;overflow:hidden;color:#52677d;font-size:.68rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.mobile-bottom-nav a.active{color:var(--umi-blue);font-weight:700}.mobile-bottom-nav .sidebar-icon{width:19px;height:19px;flex:0 0 19px}}
.questionnaire-list{display:grid;gap:16px}.questionnaire-card{display:block;background:#fff;border:1px solid var(--umi-border);border-radius:16px;padding:22px}.questionnaire-card h2{font-size:1.2rem;margin:9px 0 6px}.questionnaire-meta{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid var(--umi-border);color:#687b8f;font-size:.82rem}.survey-shell{max-width:850px}.survey-progress{background:#fff;border:1px solid var(--umi-border);border-radius:12px;padding:14px}.survey-progress .progress{height:8px}.survey-question{padding:20px 0;border-bottom:1px solid var(--umi-border)}.survey-question:first-child{padding-top:0}.question-label{display:block;font-weight:700;margin-bottom:12px}.answer-options{display:grid;gap:10px}.answer-options label{padding:11px 13px;border:1px solid var(--umi-border);border-radius:10px}.step-hidden{display:none!important}.review-list{display:grid;gap:0}.review-item{padding:14px 0;border-bottom:1px solid var(--umi-border)}.review-item:first-child{padding-top:0}@media(max-width:767.98px){.questionnaire-meta{display:grid}.questionnaire-card>.d-flex{display:block!important}.questionnaire-card .status-pill{display:inline-block;margin-top:10px}.portal-form-card{padding:20px}.survey-question{padding:18px 0}}
.questionnaire-editor{display:grid;gap:16px}.section-editor-card{background:#fff;border:1px solid var(--umi-border);border-radius:14px;padding:20px}.section-editor-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.section-editor-head h3{font-size:1.15rem;margin:.25rem 0}.question-editor-card{padding:16px 0;border-top:1px solid var(--umi-border)}.question-editor-card h4{font-size:1rem;margin:5px 0}.condition-note{display:inline-block;margin-top:8px;padding:5px 9px;border-radius:7px;background:#edf3f9;color:var(--umi-blue);font-size:.75rem}.preview-shell{max-width:850px;margin:auto}.preview-question{padding:18px 0;border-bottom:1px solid var(--umi-border)}.preview-question:first-child{padding-top:0}.preview-question:last-child{border-bottom:0;padding-bottom:0}.preview-actions{display:flex;align-items:center;gap:16px}.rating-options{display:flex;flex-wrap:wrap;gap:10px}.rating-options label{min-width:44px;padding:8px 10px;border:1px solid var(--umi-border);border-radius:8px;text-align:center}@media(max-width:767.98px){.section-editor-head{display:block}.section-editor-head>.btn-list{margin-top:10px}.question-editor-card>.d-flex{display:block!important}.question-editor-card .btn-list{margin-top:12px;flex-wrap:wrap!important}.preview-actions{align-items:flex-end;gap:8px}.preview-actions .btn{padding-inline:10px}}
.survey-step-heading{padding:8px 0 4px}.survey-step-heading h2{font-size:1.35rem;margin:.3rem 0}
.password-toggle-wrap{position:relative}.password-toggle-wrap>.form-control{padding-right:3rem}.password-toggle-button{position:absolute;top:50%;right:.45rem;display:grid;width:2.25rem;height:2.25rem;place-items:center;transform:translateY(-50%);border:0;border-radius:.45rem;background:transparent;color:#52677d}.password-toggle-button:hover,.password-toggle-button:focus-visible{background:#eaf2fb;color:var(--umi-blue)}.password-toggle-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.mobile-account-actions{display:none}.history-table-card{overflow:hidden;background:#fff;border:1px solid var(--umi-border);border-radius:16px}.history-table-card .table{margin:0;min-width:760px}.history-table-card th{color:#60758a;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.history-actions{min-width:190px}.history-actions details{display:inline-block}.history-actions summary{list-style:none}.history-actions summary::-webkit-details-marker{display:none}.history-edit-panel{min-width:340px;padding-top:10px}.history-edit-panel .history-form{grid-template-columns:1fr}.status-pill.status-complete{background:#ddf4e6;color:#176b38}@media(max-width:767.98px){.mobile-account-actions{display:block}.history-table-card .table{min-width:720px}}
.participation-chart{display:grid;gap:12px}.chart-row{display:grid;grid-template-columns:90px minmax(100px,1fr) 35px;gap:12px;align-items:center}.chart-track{height:18px;background:#edf3f9;border-radius:20px;overflow:hidden}.chart-bar{height:100%;min-width:3px;background:var(--umi-blue);border-radius:20px}
.report-statistics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.report-bar-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(120px,2fr) 110px;gap:12px;align-items:center;margin-top:10px}.text-answer-list{max-height:260px;overflow:auto;border-top:1px solid var(--umi-border);margin-top:12px}.text-answer-list>div{padding:9px 0;border-bottom:1px solid var(--umi-border)}@media(max-width:767.98px){.report-statistics{grid-template-columns:1fr}.report-bar-row{grid-template-columns:1fr}.report-bar-row strong{text-align:right}}
