*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body,button,input,select,textarea{font-family:Figtree,system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3,.brand b,.home b{font-family:Archivo,Figtree,system-ui,sans-serif}.login:before,.login:after{content:"";position:absolute;z-index:0;pointer-events:none}.login:before{top:-60px;left:-70px;width:130px;height:130px;border-radius:8px;background:#1e7fd4;box-shadow:144px 0 #14a89a,0 144px #8a63d2,144px 144px #e79a24;opacity:.5}.login:after{right:216px;bottom:18px;width:96px;height:96px;border-radius:6px;background:#e79a24;box-shadow:108px 0 #1e7fd4,216px 0 #14a89a,0 108px #14a89a,108px 108px #8a63d2,216px 108px #1e7fd4;opacity:.28}.login-card,.login>.brand,.login>footer{position:relative;z-index:1}.demo b{border-radius:8px!important;color:#fff!important}.demo button:nth-child(1) b{background:#1e7fd4!important}.demo button:nth-child(2) b{background:#14998f!important}.demo button:nth-child(3) b{background:#c96f16!important}@media(max-width:700px){.login:before{top:-82px;left:-92px;transform:scale(.72)}.login:after{right:140px;bottom:0;transform:scale(.75);transform-origin:bottom right}}.profile-link{display:flex;align-items:center;gap:8px}.people-grid,.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:16px;margin-bottom:28px}.people-card,.detail-card{padding:20px}.people-card h2,.detail-card h2{margin-top:0;font-size:19px}.person,.roster-row{display:flex;align-items:center;gap:12px;min-height:58px;border-bottom:1px solid #e4e7ec}.person img{width:38px;height:38px;border-radius:50%;object-fit:cover}.person .avatar,.roster-row .avatar{flex:0 0 36px;margin:0}.person div,.roster-row div{min-width:0;flex:1;display:grid;gap:2px}.person small,.roster-row small{color:#667085}.remove{border:0;background:transparent;color:#b42318;font-size:20px;min-width:40px;min-height:40px}.add-person{display:flex;gap:8px;margin-top:16px}.add-person select{min-width:0;flex:1;padding:10px;border:1px solid #d0d5dd;border-radius:8px;font-size:16px}.secondary{min-height:44px;padding:10px 16px;border:1px solid #1256a0;border-radius:9px;background:#fff;color:#1256a0;font-weight:700}.wide,.check,.form-actions{grid-column:1/-1}.check{flex-direction:row!important;align-items:center;font-family:inherit;font-size:14px}.check input{width:18px;height:18px}.form-actions{display:flex;justify-content:flex-end;gap:10px}.session{width:100%;border:1px solid #e4e7ec;color:#10233a;background:#fff;text-align:left;font-family:inherit}.session-heading{margin-top:12px}.detail-card{margin-bottom:16px}.detail-card>p{line-height:1.55}.file-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid #e4e7ec;border-radius:9px;padding:10px;margin:8px 0}.file-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row small{color:#667085}.file-row button:not(.remove){border:0;background:transparent;color:#1256a0;font-weight:700;min-height:40px}.upload{display:flex;align-items:center;justify-content:center;min-height:58px;margin-top:12px;border:2px dashed #8da0b7;border-radius:10px;color:#344f7c;cursor:pointer;text-align:center;padding:10px}.upload input{position:absolute;width:1px;height:1px;opacity:0}.warning{background:#fffaeb;border:1px solid #fedf89;color:#b54708;border-radius:9px;padding:12px;margin:14px 0}.solution>.primary{margin-top:12px}.solution>.primary:disabled{opacity:.45;cursor:not-allowed}.feedback{border-top:1px solid #e4e7ec;margin-top:18px;padding-top:16px}.roster-row .status{margin-left:auto}.confirm{position:fixed;z-index:12;top:50%;left:50%;transform:translate(-50%,-50%);width:min(520px,calc(100% - 28px));background:#fff;border-radius:14px;padding:26px;box-shadow:0 20px 60px #0007}.confirm>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:20px}.profile-card{padding:26px;display:flex;align-items:center;flex-wrap:wrap;gap:22px}.profile-photo,.profile-placeholder{width:112px;height:112px;border-radius:50%;object-fit:cover}.profile-placeholder{display:grid;place-items:center;background:#eaf2fb;color:#1256a0;font:700 30px Archivo,sans-serif}.profile-card>div{flex:1;min-width:180px}.photo-upload{min-width:200px;margin:0}@media(max-width:600px){.people-grid,.detail-grid{grid-template-columns:1fr}.file-row{grid-template-columns:auto minmax(0,1fr) auto}.file-row small{display:none}.profile-card{align-items:flex-start}.form-actions,.confirm>div{flex-direction:column-reverse}.form-actions button,.confirm button{width:100%}}
