:root{--portal-navy:#1b293d;--portal-deep:#142235;--portal-field:#2b3b53;--portal-mint:#22dfc9;--portal-soft:#75f3e3;--portal-text:#f8fbff;--portal-muted:#adbbce;--portal-line:rgba(117,243,227,.2)}
body.lic-portal{font-family:var(--volunteer-font);background-color:var(--portal-deep);color:var(--portal-text)}
body.lic-portal a:focus-visible,body.lic-portal button:focus-visible,body.lic-portal input:focus-visible,body.lic-portal select:focus-visible{outline:2px solid var(--portal-soft);outline-offset:3px}
body.lic-auth-login>.lic-header,body.lic-auth-login>footer{display:none!important}
body.lic-auth-login>.c-app{display:block!important;min-height:100vh;padding:0!important;background:none!important}
body.lic-auth-login>.c-app>.container{width:100%;max-width:none!important;padding:0!important;margin:0!important;overflow:visible!important}
body.lic-auth-login .navbar-nav{display:none}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(420px,.8fr);background:var(--portal-navy)}
.auth-visual{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:50px clamp(36px,4vw,82px) 42px;background:linear-gradient(90deg,rgba(11,29,46,.66),rgba(11,29,46,.23)),linear-gradient(0deg,rgba(9,22,36,.82),transparent 70%),url('../images/Turn_1_bg.jpg') center/cover no-repeat;overflow:hidden}
.auth-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(10,30,45,.14),transparent 60%);pointer-events:none}
.auth-visual>*{position:relative;z-index:1}
.auth-visual-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.auth-logo{display:block;width:min(330px,55%);height:auto;max-height:84px;object-fit:contain;object-position:left top}
.auth-visual-tag{padding:9px 15px;border:1px solid rgba(117,243,227,.45);border-radius:999px;color:#e8fffc;background:rgba(11,30,45,.44);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.auth-visual-copy{max-width:800px;margin:auto 0 9vh}
.auth-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--portal-soft);font-size:11px;font-weight:800;letter-spacing:.18em}
.auth-eyebrow span{width:7px;height:7px;border-radius:50%;background:var(--portal-mint);box-shadow:0 0 13px var(--portal-mint)}
.auth-visual h1{margin:29px 0 24px;font-size:clamp(58px,7.3vw,118px);line-height:.96;letter-spacing:-.075em;font-weight:850;color:#fff}
.auth-visual h1 em,.register-intro h1 em{font-style:normal;color:var(--portal-mint)}
.auth-visual-copy p{max-width:575px;margin:0;color:#e2eaf2;font-size:clamp(16px,1.25vw,20px);line-height:1.7}
.auth-visual-bottom{color:#c9d9e7;font-size:12px;letter-spacing:.01em}
.auth-visual-bottom i{margin-right:9px;color:var(--portal-mint)}
.auth-panel{display:flex;align-items:center;justify-content:center;padding:54px clamp(32px,4vw,88px);background:var(--portal-navy)}
.auth-panel-inner{width:100%;max-width:445px}
.auth-mobile-brand{display:none}
.auth-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:35px;border:1px solid rgba(34,223,201,.38);border-radius:19px;background:rgba(34,223,201,.08);color:var(--portal-mint);font-size:23px}
.auth-overline{color:var(--portal-mint);font-size:11px;font-weight:800;letter-spacing:.18em}
.auth-heading h2{margin:8px 0 10px;color:#fff;font-size:clamp(35px,3vw,48px);font-weight:850;letter-spacing:-.055em;line-height:1.08}
.auth-heading h2 span{color:var(--portal-mint)}
.auth-heading p{margin:0 0 34px;color:var(--portal-muted);font-size:15px;line-height:1.6}
.auth-form{display:block}
.auth-field{margin-bottom:22px}
.auth-field label,.auth-label-line label{display:block;margin:0 0 9px;color:#e9f3fb;font-size:12px;font-weight:800;letter-spacing:.065em;text-transform:uppercase}
.auth-label-line{display:flex;justify-content:space-between;gap:15px;align-items:baseline}
.auth-label-line a{color:var(--portal-soft);font-size:12px;font-weight:700}
.auth-input-wrap{display:flex;align-items:center;min-height:60px;border:1px solid transparent;border-radius:12px;background:var(--portal-field);transition:border-color .2s,box-shadow .2s}
.auth-input-wrap:focus-within{border-color:var(--portal-mint);box-shadow:0 0 0 3px rgba(34,223,201,.12)}
.auth-input-wrap>i{flex:0 0 48px;text-align:center;color:#96abc1;font-size:16px}
body.lic-auth-login .auth-input-wrap .form-control{min-width:0;min-height:58px;padding:0 15px 0 5px;border:0!important;outline:0;box-shadow:none!important;background:transparent!important;color:#fff!important;font-size:14px}
.auth-input-wrap input::placeholder{color:#8fa1b7!important}
.auth-reveal{flex:0 0 44px;border:0;background:transparent;color:#91a6bd;cursor:pointer}
.auth-reveal:hover{color:var(--portal-mint)}
.auth-remember{display:flex;align-items:center;gap:9px;margin:3px 0 26px;color:#c9d5e3;font-size:13px;font-weight:500!important;cursor:pointer}
.auth-remember input{accent-color:var(--portal-mint);width:15px;height:15px}
.auth-submit{display:flex;width:100%;min-height:58px;align-items:center;justify-content:center;position:relative;border:0;border-radius:12px;background:var(--portal-mint);color:#102236;font-size:15px;font-weight:850;transition:background .2s,transform .2s}
.auth-submit:hover{background:var(--portal-soft);transform:translateY(-2px)}
.auth-submit i{position:absolute;right:22px}
.auth-switch{padding:28px 0 32px;text-align:center;color:var(--portal-muted);font-size:13px;border-bottom:1px solid rgba(255,255,255,.1)}
.auth-switch a{margin-left:5px;color:var(--portal-soft)!important;font-weight:800}
.auth-switch i{font-size:10px;margin-left:3px}
.auth-panel-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:24px;color:#8295ac;font-size:11px}
.auth-panel-foot i{color:var(--portal-mint);margin-right:4px}
body.lic-auth-login .alert{margin-bottom:23px;border-radius:10px;font-size:13px}
body.lic-auth-login .alert-danger{color:#ffdce0;background:rgba(164,50,67,.22);border-color:rgba(255,180,190,.3)}
body.lic-auth-login .alert-success{color:#d0fff5;background:rgba(26,128,109,.18);border-color:rgba(117,243,227,.32)}
/* Registration uses the same visual language while keeping every existing field. */
body.lic-auth-register>.lic-header,body.lic-auth-register>footer{display:none!important}
body.lic-auth-register>.c-app{display:block!important;min-height:100vh;background:linear-gradient(90deg,rgba(15,30,47,.91),rgba(15,30,47,.8)),url('../images/Turn_1_bg.jpg') center/cover fixed no-repeat!important}
body.lic-auth-register>.c-app>.container{max-width:1200px!important;padding:0 20px!important;overflow:visible!important}
body.lic-auth-register .navbar-nav{display:none}
.register-page{max-width:1080px!important;padding:32px 0 70px}
.register-intro{padding:22px 8px 32px}
.register-intro h1{margin:18px 0 10px;color:#fff;font-size:clamp(44px,6vw,76px);font-weight:850;letter-spacing:-.065em;line-height:1}
.register-intro p{max-width:620px;color:#d5e0eb;font-size:16px;line-height:1.6}
.register-intro-meta{display:flex;align-items:center;gap:10px;color:#acc3d2;font-size:12px}
.register-intro-meta i{color:var(--portal-mint)}
.register-intro-meta span{width:3px;height:3px;border-radius:50%;background:#acc3d2}
body.lic-auth-register .card{overflow:hidden;border:1px solid var(--portal-line)!important;border-radius:20px;background:var(--portal-navy);box-shadow:0 25px 70px rgba(0,0,0,.25)!important}
body.lic-auth-register .card-header{padding:26px 36px!important;border-bottom:1px solid var(--portal-line);background:#21334a!important;text-align:left!important}
.register-card-kicker{color:var(--portal-mint);font-size:11px;letter-spacing:.16em;font-weight:800}
body.lic-auth-register .card-header h2{margin:5px 0;color:#fff;font-weight:800;letter-spacing:-.03em;font-size:30px}
body.lic-auth-register .card-header p{margin:0;color:var(--portal-muted);font-size:12px}
body.lic-auth-register .card-body{padding:34px 36px!important}
body.lic-auth-register .alert-info{margin-bottom:30px;padding:15px 19px;color:#c9fff4;background:rgba(34,223,201,.09);border-color:rgba(34,223,201,.25);border-radius:11px;font-weight:500!important;font-size:13px;line-height:1.6}
body.lic-auth-register .form-label{margin-bottom:8px;color:#e7f4fa;font-size:12px;letter-spacing:.035em}
body.lic-auth-register .form-control{min-height:50px;padding:11px 14px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:var(--portal-field);color:#fff}
body.lic-auth-register .form-control:focus{background:var(--portal-field);color:#fff;border-color:var(--portal-mint);box-shadow:0 0 0 3px rgba(34,223,201,.12)}
body.lic-auth-register .form-control:disabled{opacity:.7}
body.lic-auth-register select.form-control option{background:#2b3b53;color:#fff}
.register-field-note{display:block;margin-top:7px;color:#aebfd0;font-size:8px;line-height:1.5}
body.lic-auth-register .form-check{padding:15px 18px 15px 40px;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.025)}
body.lic-auth-register .form-check-input{margin-left:-23px;accent-color:var(--portal-mint)}
body.lic-auth-register .form-check-label{font-size:13px;line-height:1.6;font-weight:500!important;color:#cbd8e4}
body.lic-auth-register .form-check-label a{color:var(--portal-soft)}
body.lic-auth-register #subbutton{min-height:56px;border-radius:11px;background:var(--portal-mint);color:#102236;text-transform:none;letter-spacing:0;font-size:15px}
body.lic-auth-register .card-body>form>p{color:var(--portal-muted)}
body.lic-auth-register .card-body>form>p a{color:var(--portal-soft)!important}
body.lic-auth-register .modal-content{background:var(--portal-navy);color:#fff}
/* Member area */
body.lic-member>.lic-header{min-height:84px!important;align-items:center;border-bottom:1px solid var(--portal-line)!important;background:rgba(20,34,53,.96)!important}
body.lic-member>.lic-header>[class*="col-"]{border-right:0!important}
body.lic-member .lic-brand-logo{max-width:255px;max-height:64px;width:100%!important;margin:8px 0 8px 24px!important}
body.lic-member>.lic-header h2{font-size:15px!important;color:#eaf7fa!important;letter-spacing:.12em}
body.lic-member>.c-app{background:linear-gradient(rgba(16,31,48,.88),rgba(16,31,48,.95)),url('../images/Turn_1_bg.jpg') center/cover fixed no-repeat!important;min-height:calc(100vh - 144px)}
body.lic-member .main-body{background:transparent!important}
body.lic-member .action .menu,body.lic-member .action .menu.active{border:1px solid var(--portal-line)!important;background:#23354b!important;box-shadow:0 18px 40px rgba(0,0,0,.28)}
body.lic-member .action .menu:before{background:#23354b}
body.lic-member .action .menu li a{color:#eaf4fb!important}
body.lic-member .action .menu li a:hover{color:var(--portal-mint)!important}
body.lic-member .profile-hero{background:linear-gradient(95deg,rgba(18,39,57,.92),rgba(20,54,67,.66)),url('../images/Turn_1_bg.jpg') center 55%/cover no-repeat!important;border-color:var(--portal-line)!important}
body.lic-member .profile-progress-ring{background:conic-gradient(var(--portal-mint) var(--progress),rgba(255,255,255,.15) 0)!important}
body.lic-member .profile-avatar{border-color:var(--portal-mint)!important}
body.lic-member .profile-kicker,body.lic-member .profile-status i{color:var(--portal-mint)!important}
body.lic-member #reg fieldset legend:before{background:var(--portal-mint)!important;box-shadow:0 0 18px rgba(34,223,201,.35)!important}
body.lic-member .profile-progress-ring:before{background:#203348!important}
body.lic-member .profile-avatar-check,body.lic-member .profile-stat-icon,body.lic-member .profile-quick-action{background:var(--portal-mint)!important;color:#102236!important}
body.lic-member .profile-section-nav{background:rgba(23,40,57,.94)!important;border-color:var(--portal-line)!important}
body.lic-member .profile-section-nav a:hover{background:var(--portal-mint)!important;color:#102236!important}
body.lic-member #reg fieldset{background:linear-gradient(145deg,rgba(29,46,65,.97),rgba(21,36,54,.97))!important;border-color:var(--portal-line)!important}
body.lic-member .card{border-radius:17px}
body.lic-member .btn-primary{background:var(--portal-mint)!important;color:#102236!important;border-color:var(--portal-mint)!important}
body.lic-member .form-control:focus{border-color:var(--portal-mint)!important;box-shadow:0 0 0 3px rgba(34,223,201,.15)!important}
body.lic-member>footer{background:#142235!important;color:#9fb2c4!important;border-top:1px solid var(--portal-line)}
@media(max-width:1000px){.auth-shell{grid-template-columns:minmax(0,1fr) minmax(390px,.9fr)}.auth-visual{padding:35px}.auth-visual h1{font-size:clamp(56px,7vw,82px)}.auth-panel{padding:42px 35px}}
@media(max-width:760px){.auth-shell{display:block}.auth-visual{min-height:310px;padding:25px 25px 35px}.auth-visual-top{align-items:center}.auth-logo{width:210px;max-height:55px}.auth-visual-tag{font-size:9px;padding:7px 9px}.auth-visual-copy{margin:40px 0 0}.auth-eyebrow{font-size:9px}.auth-visual h1{margin:14px 0 9px;font-size:clamp(48px,11vw,72px)}.auth-visual-copy p{font-size:13px;line-height:1.5}.auth-visual-bottom{display:none}.auth-panel{padding:35px 25px 45px;min-height:0}.auth-icon{margin-bottom:21px}.auth-heading h2{font-size:38px}.auth-heading p{margin-bottom:25px}.register-page{margin-top:0!important}.register-intro{padding:35px 4px 20px}body.lic-auth-register .card-header,body.lic-auth-register .card-body{padding:24px!important}body.lic-member .lic-brand-logo{margin-left:8px!important;max-width:190px}body.lic-member>.lic-header h2{display:none}}
@media(max-width:410px){.auth-visual{min-height:285px}.auth-visual-tag{display:none}.auth-panel{padding:28px 18px 38px}.auth-panel-foot{display:block}.auth-panel-foot span{display:block;margin-top:5px}}
.member-dashboard{max-width:1220px;margin:42px auto 80px;padding:0 15px}
.member-welcome{position:relative;min-height:355px;display:flex;align-items:center;overflow:hidden;padding:46px clamp(28px,5vw,70px);border:1px solid var(--portal-line);border-radius:24px;background:linear-gradient(90deg,rgba(17,37,55,.96),rgba(17,37,55,.58)),url('../images/Turn_1_bg.jpg') center 55%/cover no-repeat;box-shadow:0 22px 55px rgba(0,0,0,.24)}
.member-welcome-content{position:relative;z-index:1;max-width:700px}
.member-welcome h1{margin:22px 0 12px;color:#fff;font-size:clamp(43px,5vw,68px);line-height:1.05;font-weight:850;letter-spacing:-.06em}
.member-welcome h1 em{color:var(--portal-mint);font-style:normal}
.member-welcome p{max-width:560px;color:#d6e5eb;font-size:17px;line-height:1.6}
.member-welcome-action{display:inline-flex;align-items:center;gap:30px;min-height:48px;margin-top:10px;padding:0 18px;border-radius:10px;background:var(--portal-mint);color:#102236!important;font-weight:800}
.member-welcome-action:hover{background:var(--portal-soft);color:#102236!important}
.member-dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;margin-top:22px}
.member-message,.member-links{padding:30px;border:1px solid var(--portal-line);border-radius:18px;background:rgba(27,41,61,.94);box-shadow:0 12px 32px rgba(0,0,0,.14)}
.member-section-label{margin-bottom:16px;color:var(--portal-mint);font-size:11px;font-weight:850;letter-spacing:.15em}
.member-message h2{margin:0 0 16px;color:#fff;font-size:27px;font-weight:800;letter-spacing:-.035em}
.member-message p{color:#bfcddd;font-size:15px;line-height:1.7}
.member-text-link{color:var(--portal-soft)!important;font-weight:800}
.member-text-link i{margin-left:7px;font-size:11px}
.member-links a{display:flex;justify-content:space-between;align-items:center;min-height:59px;border-top:1px solid rgba(255,255,255,.09);color:#e9f4fa!important;font-size:14px;font-weight:750}
.member-links a:hover{color:var(--portal-mint)!important}
.member-links a span i{width:28px;color:var(--portal-mint)}
.member-links a>i{font-size:11px;color:var(--portal-mint)}
@media(max-width:760px){.member-dashboard{margin:22px auto 55px}.member-welcome{min-height:310px}.member-dashboard-grid{grid-template-columns:1fr}.member-message,.member-links{padding:23px}}
/* Registration layout */
body.lic-auth-register>.c-app{background:#142235!important}
body.lic-auth-register>.c-app>.container{max-width:1480px!important;padding:0 30px!important}
body.lic-auth-register .register-page{display:grid;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);align-items:start;gap:28px;max-width:1360px!important;margin:0 auto!important;padding:30px 0 55px}
body.lic-auth-register .register-page>.row{min-width:0;margin:0!important}
body.lic-auth-register .register-page>.row>.col-lg-10{max-width:none!important;flex:0 0 100%;padding:0!important}
body.lic-auth-register .register-intro{position:sticky;top:30px;min-height:calc(100vh - 60px);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;margin:0;padding:38px clamp(28px,3vw,46px) 34px;border:1px solid rgba(117,243,227,.18);border-radius:22px;background:linear-gradient(180deg,rgba(12,30,47,.74) 0%,rgba(10,29,44,.5) 38%,rgba(10,26,40,.94) 100%),url('../images/Turn_1_bg.jpg') center/cover no-repeat;box-shadow:0 22px 70px rgba(0,0,0,.22)}
body.lic-auth-register .register-intro:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,rgba(34,223,201,.08),transparent 60%);pointer-events:none}
body.lic-auth-register .register-intro>*{position:relative;z-index:1}
.register-brand{display:block;width:min(310px,100%);padding:2px 0}
.register-brand img{display:block;width:100%;height:auto;min-height:95px;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 10px rgba(0,0,0,.18))}
body.lic-auth-register .register-intro h1{max-width:520px;margin:24px 0 20px;color:#fff;font-size:clamp(48px,4.9vw,77px);line-height:.99;letter-spacing:-.07em;font-weight:850}
body.lic-auth-register .register-intro p{max-width:450px;color:#e4eef4;font-size:16px;line-height:1.7}
.register-intro-content{padding:28px 0}
.register-journey{display:grid;gap:14px;max-width:335px;margin-top:38px}
.register-journey>div{display:flex;align-items:center;gap:13px;color:#e8f7f9;font-size:13px}
.register-journey span{display:grid;place-items:center;flex:0 0 35px;height:35px;border:1px solid rgba(117,243,227,.5);border-radius:10px;background:rgba(34,223,201,.12);color:var(--portal-soft);font-size:11px;font-weight:800}
.register-journey strong{font-weight:750}
body.lic-auth-register .register-intro-meta{color:#d8e8ef}
body.lic-auth-register .card{border-radius:22px;background:#1b2d42}
body.lic-auth-register .card-header{padding:35px clamp(25px,3vw,48px) 27px!important;background:#20344b!important}
body.lic-auth-register .card-header h2{font-size:clamp(28px,2.5vw,37px);letter-spacing:-.05em}
body.lic-auth-register .card-header h2 span{color:var(--portal-mint)}
body.lic-auth-register .card-body{padding:28px clamp(25px,3vw,48px) 38px!important}
.register-section-heading{display:flex;align-items:center;gap:14px;margin:34px 0 18px;padding-top:27px;border-top:1px solid rgba(255,255,255,.1)}
.register-section-heading:first-of-type{margin-top:0;padding-top:0;border-top:0}
.register-section-heading>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:rgba(34,223,201,.12);border:1px solid rgba(34,223,201,.28);color:var(--portal-mint);font-size:12px;font-weight:850}
.register-section-heading h3{margin:0;color:#f5fcff;font-size:17px;font-weight:800;letter-spacing:-.02em}
.register-section-heading p{margin:2px 0 0;color:#9fb4c8;font-size:10px;line-height:1.4}
body.lic-auth-register .row.mb-3{row-gap:18px}
body.lic-auth-register .row.mb-3>[class*="col-"]{min-width:0}
body.lic-auth-register .form-label{margin-bottom:9px;color:#e3eff6;font-size:10px;font-weight:800!important;letter-spacing:.07em;text-transform:uppercase}
body.lic-auth-register .form-control{min-height:52px;background:#293d55;border:1px solid rgba(179,205,225,.12);border-radius:10px;color:#fff;font-size: 10px;}
body.lic-auth-register .form-control::placeholder{color:#9bb0c3}
body.lic-auth-register .form-control:focus{background:#2d435d;color:#fff}
body.lic-auth-register .form-check{background:#263950;border-color:rgba(179,205,225,.11)}
body.lic-auth-register #subbutton{margin-top:12px;min-height:58px;font-weight:850!important;box-shadow:0 10px 22px rgba(34,223,201,.13);transition:background .2s,transform .2s}
body.lic-auth-register #subbutton:hover{background:var(--portal-soft);transform:translateY(-2px)}
body.lic-auth-register .alert-info{background:#233c4e;color:#d5fff8;border-left:3px solid var(--portal-mint)}
body.lic-auth-register .invalid-feedback{font-size:12px}
.register-document-frame{display:block;width:100%;border:1px solid var(--portal-line);border-radius:10px;background:#fff}
.register-document-fallback{margin:12px 0 0;color:var(--portal-muted);font-size:12px}
.register-document-fallback a{color:var(--portal-soft)!important;text-decoration:underline}
@media(max-width:1050px){body.lic-auth-register>.c-app>.container{padding:0 20px!important}body.lic-auth-register .register-page{grid-template-columns:minmax(270px,.75fr) minmax(0,1.25fr);gap:18px}body.lic-auth-register .register-intro{padding:25px}body.lic-auth-register .register-intro h1{font-size:49px}}
@media(max-width:760px){body.lic-auth-register>.c-app>.container{padding:0 15px!important}body.lic-auth-register .register-page{display:block;padding:15px 0 45px}body.lic-auth-register .register-intro{position:relative;top:auto;min-height:0;padding:23px 24px 27px;margin-bottom:15px;background-position:center 58%}body.lic-auth-register .register-brand{width:235px}body.lic-auth-register .register-brand img{min-height:67px}body.lic-auth-register .register-intro-content{padding:13px 0 0}body.lic-auth-register .register-intro h1{font-size:clamp(38px,9vw,53px);margin:13px 0 8px}body.lic-auth-register .register-intro p{font-size:13px;margin-bottom:0}body.lic-auth-register .register-journey,body.lic-auth-register .register-intro-meta{display:none}body.lic-auth-register .card-header{padding:24px!important}body.lic-auth-register .card-body{padding:24px!important}.register-section-heading{margin:28px 0 15px;padding-top:22px}}
/* Login mirrors the registration layout and branding. */
body.lic-auth-login>.c-app{background:#142235!important}
body.lic-auth-login>.c-app>.container{max-width:1480px!important;margin:0 auto!important;padding:0 30px!important}
body.lic-auth-login .auth-shell{max-width:1360px;min-height:100vh;margin:0 auto;padding:30px 0 55px;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);align-items:start;gap:28px;background:transparent}
body.lic-auth-login .auth-visual{min-height:calc(100vh - 60px);padding:38px clamp(28px,3vw,46px) 34px;border:1px solid rgba(117,243,227,.18);border-radius:22px;background:linear-gradient(180deg,rgba(12,30,47,.74) 0%,rgba(10,29,44,.5) 38%,rgba(10,26,40,.94) 100%),url('../images/Turn_1_bg.jpg') center/cover no-repeat;box-shadow:0 22px 70px rgba(0,0,0,.22)}
body.lic-auth-login .auth-visual:after{background:linear-gradient(120deg,rgba(34,223,201,.08),transparent 60%)}
body.lic-auth-login .auth-visual-copy{max-width:520px;margin:auto 0;padding:28px 0}
body.lic-auth-login .auth-visual h1{max-width:520px;margin:24px 0 20px;font-size:clamp(48px,4.9vw,77px);line-height:.99;letter-spacing:-.07em}
body.lic-auth-login .auth-visual-copy p{max-width:450px;color:#e4eef4;font-size:16px;line-height:1.7}
body.lic-auth-login .auth-visual .register-intro-meta{color:#d8e8ef}
body.lic-auth-login .auth-panel{display:block;padding:0;background:transparent}
body.lic-auth-login .auth-panel-inner{max-width:none;overflow:hidden;border:1px solid var(--portal-line);border-radius:22px;background:#1b2d42;box-shadow:0 25px 70px rgba(0,0,0,.25)}
body.lic-auth-login .auth-panel-head{padding:35px clamp(25px,3vw,48px) 27px;border-bottom:1px solid var(--portal-line);background:#20344b}
body.lic-auth-login .auth-heading h2{margin:5px 0;font-size:clamp(28px,2.5vw,37px);letter-spacing:-.05em}
body.lic-auth-login .auth-heading p{margin:0;color:var(--portal-muted);font-size:14px}
body.lic-auth-login .auth-panel-body{padding:34px clamp(25px,3vw,48px) 38px}
body.lic-auth-login .auth-field{margin-bottom:24px}
body.lic-auth-login .auth-field label,body.lic-auth-login .auth-label-line label{margin-bottom:9px;color:#e3eff6;font-size:11px;letter-spacing:.07em}
body.lic-auth-login .auth-input-wrap{min-height:52px;border:1px solid rgba(179,205,225,.12);border-radius:10px;background:#293d55}
body.lic-auth-login .auth-input-wrap:focus-within{border-color:var(--portal-mint);background:#2d435d}
body.lic-auth-login .auth-input-wrap .form-control{min-height:50px}
body.lic-auth-login .auth-submit{min-height:58px;border-radius:11px;box-shadow:0 10px 22px rgba(34,223,201,.13)}
body.lic-auth-login .auth-switch{padding:27px 0;border-bottom:1px solid rgba(255,255,255,.1)}
body.lic-auth-login .auth-panel-foot{padding-top:21px}
@media(max-width:1050px){body.lic-auth-login>.c-app>.container{padding:0 20px!important}body.lic-auth-login .auth-shell{grid-template-columns:minmax(270px,.75fr) minmax(0,1.25fr);gap:18px}body.lic-auth-login .auth-visual{padding:25px}body.lic-auth-login .auth-visual h1{font-size:49px}}
@media(max-width:760px){body.lic-auth-login>.c-app>.container{padding:0 15px!important}body.lic-auth-login .auth-shell{display:block;padding:15px 0 45px}body.lic-auth-login .auth-visual{min-height:0;padding:23px 24px 27px;margin-bottom:15px;background-position:center 58%}body.lic-auth-login .register-brand{width:235px}body.lic-auth-login .register-brand img{min-height:67px}body.lic-auth-login .auth-visual-copy{padding:13px 0 0;margin:0}body.lic-auth-login .auth-visual h1{font-size:clamp(38px,9vw,53px);margin:13px 0 8px}body.lic-auth-login .auth-visual-copy p{font-size:13px;margin-bottom:0}body.lic-auth-login .auth-visual .register-journey,body.lic-auth-login .auth-visual .register-intro-meta{display:none}body.lic-auth-login .auth-panel-head,body.lic-auth-login .auth-panel-body{padding:24px}}
/* Closed registration uses the same two panel page as the form. */
body.lic-auth-register .registration-closed-page .register-intro h1{max-width:540px}
body.lic-auth-register .registration-closed-card .card-body{padding-top:clamp(35px,5vw,70px)!important;padding-bottom:clamp(35px,5vw,70px)!important}
.registration-closed-status{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(117,243,227,.25);border-radius:999px;background:rgba(34,223,201,.08);color:var(--portal-soft);font-size:10px;font-weight:850;letter-spacing:.13em}
.registration-closed-status span{width:6px;height:6px;border-radius:50%;background:var(--portal-mint)}
.registration-closed-card h3{max-width:580px;margin:24px 0 18px;color:#fff;font-size:clamp(32px,3.4vw,47px);line-height:1.08;letter-spacing:-.055em;font-weight:850}
.registration-closed-card .card-body>p{max-width:560px;color:#c8d6e4;font-size:12px;line-height:1.7}
.registration-closed-action{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;margin-top:22px;padding:0 20px;border-radius:11px;background:var(--portal-mint);color:#102236!important;font-size:14px;font-weight:850;transition:background .2s,transform .2s}
.registration-closed-action:hover{background:var(--portal-soft);color:#102236!important;transform:translateY(-2px)}
.registration-timeline{display:grid;gap:12px; margin:25px 0 26px;padding:0;list-style:none}
.registration-timeline li{display:flex;align-items:flex-start;gap:15px;padding:17px 18px;border:1px solid rgba(179,205,225,.12);border-radius:12px;background:#293d55}
.registration-timeline-number{display:grid;place-items:center;flex:0 0 37px;height:37px;border-radius:10px;background:rgba(34,223,201,.12);color:var(--portal-mint);font-size:11px;font-weight:850}
.registration-timeline li div{display:grid;gap:0px;min-width:0}
.registration-timeline strong{color:#f5fcff;font-size:13px;font-weight:800}
.registration-timeline li div>span{color:#c3d3df;font-size:13px;line-height:1.55}
.registration-closed-card .registration-final-note{color:#d7fff7!important;font-weight:700}
@media(max-width:760px){body.lic-auth-register .registration-closed-card .card-body{padding:30px 24px!important}.registration-closed-card h3{margin-top:20px;font-size:34px}}
/* Signed-in home */
.volunteer-home{max-width:1280px;margin:38px auto 80px}
.volunteer-home-hero{position:relative;display:flex;align-items:flex-end;min-height:365px;overflow:hidden;padding:48px clamp(27px,5vw,70px);border:1px solid var(--portal-line);border-radius:24px;background:linear-gradient(90deg,rgba(13,32,49,.95),rgba(13,32,49,.7) 54%,rgba(13,32,49,.2)),linear-gradient(0deg,rgba(12,30,47,.65),transparent 72%),url('../images/Turn_1_bg.jpg') center 52%/cover no-repeat;box-shadow:0 22px 55px rgba(0,0,0,.25)}
.volunteer-home-hero-content{position:relative;z-index:1;max-width:850px}
.volunteer-home-hero h1{margin:22px 0 22px;color:#fff;font-size:clamp(39px,5.2vw,69px);line-height:1.05;letter-spacing:-.065em;font-weight:850}
.volunteer-home-hero h1 em{color:var(--portal-mint);font-style:normal}
.volunteer-home-status{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid rgba(117,243,227,.35);border-radius:999px;background:rgba(18,46,60,.7);color:#d9fff8;font-size:12px;font-weight:800;letter-spacing:.02em}
.volunteer-home-status i{color:var(--portal-mint);font-size:7px}
.volunteer-home-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:22px;margin-top:22px}
.volunteer-home-dates,.volunteer-home-id,.volunteer-home-actions{border:1px solid var(--portal-line);border-radius:18px;background:rgba(27,45,66,.96);box-shadow:0 12px 32px rgba(0,0,0,.14)}
.volunteer-home-dates{padding:32px clamp(22px,3vw,40px)}
.volunteer-home-dates h2{max-width:650px;margin:0;color:#fff;font-size:clamp(21px,2vw,28px);font-weight:800;line-height:1.35;letter-spacing:-.035em}
.volunteer-home-dates .registration-timeline{max-width:none;margin:25px 0}
.volunteer-home-note{margin:0;padding:16px 18px;border-left:3px solid var(--portal-mint);border-radius:0 10px 10px 0;background:rgba(34,223,201,.08);color:#d9fff8;font-size:13px;font-weight:750;line-height:1.55}
.volunteer-home-side{display:grid;align-content:start;gap:18px}
.volunteer-home-id{padding:30px;min-height:235px;background:linear-gradient(145deg,#20384b,#183246)}
.volunteer-home-id p{margin:30px 0 5px;color:#d6e7ee;font-size:14px}
.volunteer-home-id strong{display:block;color:#fff;font-size:clamp(38px,4vw,56px);font-weight:850;line-height:1.1;letter-spacing:-.05em}
.volunteer-home-id>span{display:block;margin-top:17px;color:#9fb4c8;font-size:12px;line-height:1.5}
.volunteer-home-actions{overflow:hidden;padding:5px 18px}
.volunteer-home-actions a{display:flex;align-items:center;gap:12px;min-height:62px;color:#ebf6fa!important;font-size:13px;font-weight:800}
.volunteer-home-actions a+a{border-top:1px solid rgba(255,255,255,.1)}
.volunteer-home-actions a i:first-child{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:9px;background:rgba(34,223,201,.1);color:var(--portal-mint)}
.volunteer-home-actions a i:last-child{margin-left:auto;color:var(--portal-mint);font-size:11px}
.volunteer-home-actions a:hover{color:var(--portal-mint)!important}
@media(max-width:800px){.volunteer-home-grid{grid-template-columns:1fr}.volunteer-home-side{grid-template-columns:1fr 1fr}.volunteer-home-id{min-height:0}.volunteer-home-actions{align-self:start}}
@media(max-width:600px){.volunteer-home{margin:18px auto 48px;padding:0 10px}.volunteer-home-hero{min-height:330px;padding:28px 23px}.volunteer-home-hero h1{font-size:clamp(36px,9vw,49px)}.volunteer-home-status{align-items:flex-start;line-height:1.45;border-radius:14px}.volunteer-home-status i{margin-top:5px}.volunteer-home-grid{gap:15px;margin-top:15px}.volunteer-home-dates{padding:26px 21px}.volunteer-home-side{grid-template-columns:1fr;gap:15px}.volunteer-home-id{padding:25px}}
/* Participation history */
.participation-page{max-width:1280px;margin:38px auto 80px;padding:0 15px}
.participation-hero{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;min-height:320px;overflow:hidden;padding:42px clamp(28px,5vw,65px);border:1px solid var(--portal-line);border-radius:24px;background:linear-gradient(90deg,rgba(13,32,49,.96),rgba(13,32,49,.74) 62%,rgba(13,32,49,.34)),url('../images/Turn_1_bg.jpg') center 57%/cover no-repeat;box-shadow:0 22px 55px rgba(0,0,0,.23)}
.participation-hero-content{position:relative;z-index:1;max-width:750px}
.participation-hero h1{margin:23px 0 12px;color:#fff;font-size:clamp(43px,5.5vw,72px);line-height:1.03;letter-spacing:-.065em;font-weight:850}
.participation-hero h1 em{color:var(--portal-mint);font-style:normal}
.participation-hero p{max-width:580px;margin:0;color:#d4e3ed;font-size:16px;line-height:1.6}
.participation-back{display:inline-flex;align-items:center;gap:9px;margin-top:25px;color:var(--portal-soft)!important;font-size:12px;font-weight:800}
.participation-back:hover{color:#fff!important}
.participation-hero-count{position:relative;z-index:1;display:grid;align-content:center;flex:0 0 160px;width:160px;height:160px;border:1px solid rgba(117,243,227,.32);border-radius:22px;background:rgba(16,42,57,.72);backdrop-filter:blur(10px);text-align:center}
.participation-hero-count strong{color:#fff;font-size:58px;line-height:1;font-weight:850;letter-spacing:-.05em}
.participation-hero-count span{margin-top:9px;color:#c9e8e5;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.participation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:19px}
.participation-stat{display:flex;align-items:center;gap:17px;min-height:112px;padding:21px 25px;border:1px solid var(--portal-line);border-radius:17px;background:rgba(27,45,66,.96);box-shadow:0 10px 26px rgba(0,0,0,.13)}
.participation-stat-icon{display:grid;place-items:center;flex:0 0 47px;height:47px;border-radius:13px;background:rgba(34,223,201,.12);color:var(--portal-mint);font-size:19px}
.participation-stat>div{display:grid;gap:1px}.participation-stat>div>span{color:#a9bed0;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.participation-stat strong{color:#fff;font-size:28px;line-height:1.1;font-weight:850}
.participation-list{margin-top:29px}
.participation-list-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px;padding:0 3px}
.participation-list-heading .member-section-label{display:block;margin-bottom:4px}
.participation-list-heading h2{margin:0;color:#fff;font-size:clamp(25px,2.4vw,31px);font-weight:800;letter-spacing:-.035em}
.participation-list-heading p{margin:4px 0 0;color:#aebfd0;font-size:13px}
.participation-list-count{padding:9px 14px;border:1px solid rgba(117,243,227,.25);border-radius:999px;background:rgba(34,223,201,.08);color:var(--portal-soft);font-size:11px;font-weight:800;white-space:nowrap}
.participation-record{margin-bottom:15px;padding:25px 29px;border:1px solid var(--portal-line);border-radius:18px;background:linear-gradient(135deg,rgba(29,48,69,.98),rgba(24,41,60,.98));box-shadow:0 12px 28px rgba(0,0,0,.14)}
.participation-record-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.participation-year{padding:6px 11px;border:1px solid rgba(117,243,227,.3);border-radius:8px;background:rgba(34,223,201,.1);color:var(--portal-soft);font-size:12px;font-weight:850;letter-spacing:.08em}
.participation-certificate{display:inline-flex;align-items:center;gap:7px;color:#aebed0;font-size:11px;font-weight:750}
.participation-certificate.is-eligible{color:var(--portal-soft)}
.participation-record h3{margin:18px 0 10px;color:#fff;font-size:clamp(19px,2.1vw,27px);font-weight:800;letter-spacing:-.035em;overflow-wrap:anywhere}
.participation-role{display:inline-flex;align-items:center;gap:9px;color:#c4d3df;font-size:13px}.participation-role i{color:var(--portal-mint)}
.participation-record-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:23px;padding-top:19px;border-top:1px solid rgba(255,255,255,.09)}
.participation-record-metric{display:grid;gap:4px;min-width:145px}.participation-record-metric span{color:#9db2c5;font-size:10px;font-weight:800;letter-spacing:.08em}.participation-record-metric strong{color:#fff;font-size:21px;line-height:1;font-weight:850}
.participation-download{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;margin-left:auto;padding:0 15px;border-radius:9px;background:var(--portal-mint);color:#102236!important;font-size:12px;font-weight:850;transition:background .2s,transform .2s}
.participation-download:hover{background:var(--portal-soft);color:#102236!important;transform:translateY(-2px)}
.participation-empty{padding:65px 25px;border:1px dashed rgba(117,243,227,.28);border-radius:18px;background:rgba(27,45,66,.78);text-align:center}
.participation-empty-icon{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 19px;border-radius:18px;background:rgba(34,223,201,.1);color:var(--portal-mint);font-size:26px}
.participation-empty h3{margin:0 0 8px;color:#fff;font-size:24px;font-weight:800}.participation-empty p{max-width:430px;margin:0 auto;color:#b5c5d3;font-size:14px;line-height:1.6}.participation-empty a{display:inline-flex;align-items:center;gap:8px;margin-top:23px;color:var(--portal-soft)!important;font-size:13px;font-weight:800}
@media(max-width:800px){.participation-hero-count{flex-basis:125px;width:125px;height:125px}.participation-hero-count strong{font-size:45px}.participation-summary{gap:10px}.participation-stat{padding:17px;gap:11px}.participation-stat-icon{flex-basis:39px;height:39px;font-size:16px}}
@media(max-width:650px){.participation-page{margin:18px auto 50px;padding:0 10px}.participation-hero{display:block;min-height:315px;padding:27px 23px}.participation-hero h1{font-size:clamp(38px,10vw,51px)}.participation-hero p{font-size:14px}.participation-hero-count{display:none}.participation-summary{grid-template-columns:1fr;gap:10px;margin-top:13px}.participation-stat{min-height:77px;padding:15px 18px}.participation-stat strong{font-size:24px}.participation-list{margin-top:25px}.participation-record{padding:22px 19px}.participation-record-bottom{gap:16px}.participation-record-metric{min-width:calc(50% - 8px)}.participation-download{width:100%;margin-left:0}.participation-empty{padding:48px 20px}}
/* Member navigation */
body.lic-portal>.lic-header{position:relative;z-index:100;display:flex;align-items:center;gap:clamp(18px,3vw,48px);width:100%;min-height:90px;margin:0;padding:13px clamp(20px,4vw,66px);border-bottom:1px solid rgba(117,243,227,.16)!important;background:rgba(17,32,49,.97)!important;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.lic-header-brand{display:block;flex:0 0 auto;width:clamp(190px,17vw,254px);line-height:0}
.lic-header-brand img{display:block;width:100%;height:auto;max-height:70px;object-fit:contain;object-position:left center}
.lic-header-guest-title{margin-left:auto;color:#eaf8fb;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.lic-header-nav{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-width:0}
body.lic-member .lic-header-nav a{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:0 14px;border:1px solid transparent;border-radius:10px;color:#c2d2df!important;font-size:12px;font-weight:800;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
body.lic-member .lic-header-nav a i{color:#8fb4bd;font-size:14px}
body.lic-member .lic-header-nav a:hover,body.lic-member .lic-header-nav a.is-active{border-color:rgba(117,243,227,.18);background:rgba(34,223,201,.1);color:#eafffb!important}
body.lic-member .lic-header-nav a:hover i,body.lic-member .lic-header-nav a.is-active i{color:var(--portal-mint)}
.lic-account{position:relative;flex:0 0 auto}
.lic-account-toggle{display:flex;align-items:center;gap:11px;min-height:53px;padding:5px 12px 5px 6px;border:1px solid rgba(117,243,227,.18);border-radius:14px;background:#23384e;color:#fff;text-align:left;cursor:pointer;transition:border-color .2s,background .2s}
.lic-account-toggle:hover,.lic-account.is-open .lic-account-toggle{border-color:rgba(117,243,227,.5);background:#2a4258}
.lic-account-avatar{display:block;width:40px;height:40px;flex:0 0 40px;border:1px solid rgba(117,243,227,.26);border-radius:11px;background:#edf2f5;object-fit:cover}
.lic-account-copy{display:grid;gap:2px;min-width:80px;max-width:120px}.lic-account-copy small{color:#8faebb;font-size:9px;font-weight:850;letter-spacing:.09em;white-space:nowrap}.lic-account-copy strong{overflow:hidden;color:#fff;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.lic-account-chevron{margin-left:2px;color:var(--portal-mint);font-size:10px;transition:transform .2s}.lic-account.is-open .lic-account-chevron{transform:rotate(180deg)}
.lic-account-menu{position:absolute;top:calc(100% + 11px);right:0;display:grid;width:245px;padding:8px;border:1px solid var(--portal-line);border-radius:15px;background:#20354a;box-shadow:0 18px 44px rgba(0,0,0,.35);z-index:200}
.lic-account-menu[hidden]{display:none}
.lic-account-menu-heading{display:grid;gap:2px;padding:12px 13px 13px;border-bottom:1px solid rgba(255,255,255,.1);color:#9fb4c5;font-size:11px}.lic-account-menu-heading strong{overflow:hidden;color:#fff;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
body.lic-member .lic-account-menu a,.lic-account-menu button{display:flex;align-items:center;gap:12px;min-height:42px;width:100%;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#e7f2f7!important;font:700 12px var(--volunteer-font);text-align:left;text-decoration:none;cursor:pointer}
body.lic-member .lic-account-menu a:hover,.lic-account-menu button:hover{background:rgba(34,223,201,.1);color:var(--portal-mint)!important}
.lic-account-menu a i,.lic-account-menu button i{width:18px;color:var(--portal-mint);text-align:center;font-size:14px}
.lic-account-menu .lic-account-logout{margin-top:5px;border-top:1px solid rgba(255,255,255,.1);border-radius:0 0 8px 8px;color:#ffd6d9!important}.lic-account-menu .lic-account-logout i{color:#ff9ca8}
@media(max-width:1080px){body.lic-portal>.lic-header{gap:16px;padding:12px 25px}.lic-header-brand{width:198px}body.lic-member .lic-header-nav a{padding:0 9px}}
@media(max-width:850px){body.lic-portal>.lic-header{flex-wrap:wrap;justify-content:space-between;min-height:0;gap:9px 16px;padding:12px 18px}.lic-header-brand{width:190px}.lic-header-nav{order:3;flex:0 0 100%;justify-content:flex-start;overflow-x:auto;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);scrollbar-width:thin}.lic-account{margin-left:auto}}
@media(max-width:480px){body.lic-portal>.lic-header{padding:10px 14px}.lic-header-brand{width:155px}.lic-account-toggle{min-height:44px;padding:4px 8px 4px 4px;gap:7px}.lic-account-avatar{width:34px;height:34px;flex-basis:34px}.lic-account-copy small{display:none}.lic-account-copy{min-width:0;max-width:80px}.lic-account-copy strong{font-size:11px}.lic-account-menu{width:min(245px,calc(100vw - 28px))}body.lic-member .lic-header-nav a{min-height:39px;padding:0 10px;font-size:11px}}
/* 2026 profile application choices */
body.lic-portal #reg .profile-section-intro {
    margin: 0 0 18px;
    color: #c8cbe0;
    font-size: 14px;
}
body.lic-portal #reg .profile-language-options {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 10px;
}
body.lic-portal #reg .profile-phone-input {
    display: flex;
    align-items: stretch;
    gap: 7px;
    min-width: 0;
}
body.lic-portal #reg .profile-phone-prefix {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex: 0 0 73px;
    min-height: 46px;
    border: 1px solid #cbd6e6;
    border-radius: 9px;
    background: #e9eef7;
    color: #243652;
    font-size: 12px;
}
body.lic-portal #reg .profile-phone-prefix::before {
    content: '';
    display: block;
    flex: 0 0 20px;
    height: 8px;
    background: url('../css/flags.png') -4207px 0 no-repeat;
}
body.lic-portal #reg .profile-phone-input .form-control {
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}
body.lic-portal #reg .profile-whatsapp-input .iti { display: block; width: 100%; }
body.lic-portal #reg .profile-whatsapp-input:focus-within { position: relative; z-index: 50; }
body.lic-portal #reg .profile-whatsapp-input .iti__flag-container {
    right: auto;
    left: 0;
    width: 96px;
    padding: 0;
}
body.lic-portal #reg .profile-whatsapp-input .iti__selected-flag {
    justify-content: center;
    gap: 3px;
    min-height: 46px;
    padding: 0 6px;
    border: 1px solid #cbd6e6;
    border-radius: 9px;
    background: #e9eef7;
    color: #243652;
}
body.lic-portal #reg .profile-whatsapp-input .iti__selected-flag .iti__flag {
    display: block;
    flex: 0 0 20px;
    background-image: url('../css/flags.png');
}
body.lic-portal #reg .profile-whatsapp-input .iti__selected-dial-code {
    margin-left: 2px;
    font-size: 12px;
    letter-spacing: 0;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    body.lic-portal #reg .profile-phone-prefix::before {
        background-image: url('../css/flags@2x.png');
        background-size: 5652px 15px;
    }
    body.lic-portal #reg .profile-whatsapp-input .iti__selected-flag .iti__flag {
        background-image: url('../css/flags@2x.png');
        background-size: 5652px 15px;
    }
}
body.lic-portal #reg .profile-whatsapp-input .iti__selected-flag:hover,
body.lic-portal #reg .profile-whatsapp-input .iti__flag-container:hover .iti__selected-flag {
    background: #dce8f5;
}
body.lic-portal #reg .profile-whatsapp-input .iti__arrow { border-top-color: #243652; }
body.lic-portal #reg .profile-whatsapp-input .iti input.form-control {
    width: calc(100% - 103px) !important;
    margin-left: 103px !important;
    padding-left: 13px !important;
}
body.lic-portal #reg .profile-whatsapp-input .iti__country-list {
    max-width: min(400px, calc(100vw - 48px));
    white-space: normal;
    z-index: 60;
}
body.lic-portal #reg .profile-language-options label,
body.lic-portal #reg .profile-event-days label {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: #e5e8f5;
    font-size: 13px;
    cursor: pointer;
}
body.lic-portal #reg .profile-language-options input,
body.lic-portal #reg .profile-event-days input {
    accent-color: #24e4d0;
}
body.lic-portal #reg .profile-language-options label {
    min-height: 49px;
    padding: 9px 10px;
    border: 1px solid rgba(36, 228, 208, .2);
    border-radius: 11px;
    background: rgba(255, 255, 255, .035);
    transition: border-color .2s, background .2s;
}
@media (min-width: 768px) and (max-width: 1100px) {
    body.lic-portal #reg .profile-language-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
body.lic-portal #reg .profile-language-options label:hover,
body.lic-portal #reg .profile-language-options label:has(input:checked) {
    border-color: #24e4d0;
    background: rgba(36, 228, 208, .1);
}
body.lic-portal #reg .profile-language-options label:focus-within {
    outline: 2px solid #24e4d0;
    outline-offset: 2px;
}
body.lic-portal #reg .profile-language-options input {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin: 0;
}
body.lic-portal #reg .profile-experience-answer,
body.lic-portal #reg .profile-experience-grid {
    display: grid;
    gap: 12px;
}
body.lic-portal #reg .profile-experience-answer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.lic-portal #reg .profile-experience-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.lic-portal #reg .profile-experience-choice,
body.lic-portal #reg .profile-experience-event {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    padding: 17px 18px;
    border: 1px solid rgba(36, 228, 208, .2);
    border-radius: 14px;
    background: rgba(255, 255, 255, .035);
    color: #fff;
    cursor: pointer;
    transition: border-color .2s, background .2s;
}
body.lic-portal #reg .profile-experience-choice:hover,
body.lic-portal #reg .profile-experience-event:hover,
body.lic-portal #reg .profile-experience-choice:has(input:checked),
body.lic-portal #reg .profile-experience-event:has(input:checked) {
    border-color: #24e4d0;
    background: rgba(36, 228, 208, .1);
}
body.lic-portal #reg .profile-experience-choice:focus-within,
body.lic-portal #reg .profile-experience-event:focus-within {
    outline: 2px solid #24e4d0;
    outline-offset: 2px;
}
body.lic-portal #reg .profile-experience-choice input,
body.lic-portal #reg .profile-experience-event input {
    flex: 0 0 auto;
    margin-top: 3px;
    accent-color: #24e4d0;
}
body.lic-portal #reg .profile-experience-choice strong,
body.lic-portal #reg .profile-experience-choice small { display: block; }
body.lic-portal #reg .profile-experience-choice strong { font-size: 14px; }
body.lic-portal #reg .profile-experience-choice small {
    margin-top: 4px;
    color: #abb3cd;
    font-size: 12px;
    line-height: 1.4;
}
body.lic-portal #reg .profile-experience-details { margin-top: 24px; }
body.lic-portal #reg .profile-experience-details[hidden] { display: none; }
body.lic-portal #reg .profile-experience-event { min-height: 66px; align-items: center; font-size: 13px; line-height: 1.4; }
body.lic-portal #reg .profile-choice-hint {
    display: inline-block;
    margin-left: 7px;
    padding: 4px 8px;
    border: 1px solid rgba(36, 228, 208, .25);
    border-radius: 999px;
    color: #24e4d0;
    font-size: 11px;
    font-weight: 700;
}
body.lic-portal #reg .profile-role-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
body.lic-portal #reg .profile-role-option {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    min-height: 90px;
    margin: 0;
    padding: 18px;
    border: 1px solid rgba(36, 228, 208, .2);
    border-radius: 14px;
    background: rgba(255, 255, 255, .035);
    cursor: pointer;
    transition: border-color .2s, background .2s, transform .2s;
}
body.lic-portal #reg .profile-role-option:hover,
body.lic-portal #reg .profile-role-option:has(input:checked) {
    border-color: #24e4d0;
    background: rgba(36, 228, 208, .1);
}
body.lic-portal #reg .profile-role-option input {
    margin-top: 3px;
    accent-color: #24e4d0;
}
body.lic-portal #reg .profile-role-option strong,
body.lic-portal #reg .profile-role-option small {
    display: block;
}
body.lic-portal #reg .profile-role-option strong {
    color: #fff;
    font-size: 14px;
}
body.lic-portal #reg .profile-role-option small {
    margin-top: 5px;
    color: #abb3cd;
    font-size: 12px;
    line-height: 1.45;
}
body.lic-portal #reg .profile-event-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
body.lic-portal #reg .profile-event-card {
    padding: 20px;
    border: 1px solid rgba(36, 228, 208, .2);
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(36, 228, 208, .1), rgba(45, 61, 116, .3));
}
body.lic-portal #reg .profile-event-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
    margin-bottom: 15px;
}
body.lic-portal #reg .profile-event-heading img {
    display: block;
    flex: 0 0 106px;
    width: 106px;
    height: 45px;
    object-fit: contain;
}
body.lic-portal #reg .profile-event-heading strong {
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
}
body.lic-portal #reg .profile-event-days {
    display: grid;
    gap: 10px;
}
@media (max-width: 767px) {
    body.lic-portal #reg .profile-event-heading img { flex-basis: 94px; width: 94px; height: 40px; }
    body.lic-portal #reg .profile-language-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.lic-portal #reg .profile-experience-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.lic-portal #reg .profile-role-grid,
    body.lic-portal #reg .profile-event-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
    body.lic-portal #reg .profile-language-options { grid-template-columns: 1fr; }
    body.lic-portal #reg .profile-experience-answer,
    body.lic-portal #reg .profile-experience-grid { grid-template-columns: 1fr; }
}

/* Keep the wider heading font restrained across the volunteer pages. */
body.lic-portal .auth-visual h1,
body.lic-portal .register-intro h1 {
    font-size: clamp(36px, 4.1vw, 60px);
    line-height: 1.12;
    letter-spacing: -.025em;
}
body.lic-portal .auth-heading h2,
body.lic-portal .registration-closed-card h2 {
    font-size: clamp(25px, 2.5vw, 33px);
    line-height: 1.18;
    letter-spacing: -.02em;
}
body.lic-auth-register .card-header h2 {
    font-size: clamp(23px, 2.2vw, 29px);
    line-height: 1.2;
    letter-spacing: -.02em;
}
body.lic-portal .registration-closed-card h3 {
    font-size: clamp(24px, 2.8vw, 35px);
    line-height: 1.2;
    letter-spacing: -.02em;
}
body.lic-portal .volunteer-home-hero h1,
body.lic-portal .participation-hero h1,
body.lic-portal .member-welcome h1 {
    font-size: clamp(31px, 3.9vw, 50px);
    line-height: 1.16;
    letter-spacing: -.025em;
}
body.lic-portal .volunteer-home-dates h2,
body.lic-portal .participation-list-heading h2 {
    font-size: clamp(20px, 2vw, 25px);
    line-height: 1.3;
    letter-spacing: -.015em;
}
body.lic-auth-login .login-event-preview {
    max-width: 410px;
    margin-top: 34px;
    padding: 17px 20px 5px;
    border: 1px solid rgba(117,243,227,.28);
    border-radius: 16px;
    background: rgba(12,30,47,.55);
}
body.lic-auth-login .login-event-preview-label {
    display: block;
    margin-bottom: 9px;
    color: var(--portal-soft);
    font-size: 10px;
    letter-spacing: .15em;
}
body.lic-auth-login .login-event-preview-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    padding: 11px 0;
    border-top: 1px solid rgba(255,255,255,.13);
    color: #d9e9ef;
    font-size: 12px;
}
body.lic-auth-login .login-event-preview-row strong {
    color: #fff;
    font-size: 13px;
}
@media (max-width: 760px) {
    body.lic-auth-login .login-event-preview { display: none; }
}
@media (max-width: 760px) {
    body.lic-portal .auth-visual h1,
    body.lic-portal .register-intro h1 { font-size: clamp(31px, 7.5vw, 42px); }
    body.lic-portal .volunteer-home-hero h1,
    body.lic-portal .participation-hero h1,
    body.lic-portal .member-welcome h1 { font-size: clamp(29px, 7vw, 40px); }
}

/* A calmer, more compact sign-in page. */
body.lic-auth-login .auth-shell {
    max-width: 1120px;
    min-height: 0;
    padding: 24px 0 38px;
    grid-template-columns: minmax(320px, .92fr) minmax(0, 1.08fr);
    gap: 20px;
}
body.lic-auth-login .auth-visual {
    min-height: min(680px, calc(100vh - 48px));
    padding: 28px 32px;
    border-radius: 18px;
}
body.lic-auth-login .register-brand { width: 245px; }
body.lic-auth-login .register-brand img { min-height: 70px; }
body.lic-auth-login .auth-visual-copy { max-width: 430px; padding: 18px 0; }
body.lic-auth-login .auth-visual h1 {
    max-width: 430px;
    margin: 17px 0 12px;
    font-size: clamp(36px, 3.5vw, 47px);
    line-height: 1.13;
}
body.lic-auth-login .auth-visual-copy p {
    max-width: 370px;
    font-size: 14px;
    line-height: 1.6;
}
body.lic-auth-login .login-event-preview {
    max-width: 360px;
    margin-top: 25px;
    padding: 13px 16px 3px;
    border-radius: 12px;
}
body.lic-auth-login .login-event-preview-row { padding: 9px 0; }
body.lic-auth-login .auth-panel-inner { border-radius: 18px; }
body.lic-auth-login .auth-panel-head { padding: 27px 32px 22px; }
body.lic-auth-login .auth-heading h2 { font-size: clamp(25px, 2.3vw, 29px); }
body.lic-auth-login .auth-heading p { font-size: 13px; }
body.lic-auth-login .auth-panel-body { padding: 26px 32px 29px; }
body.lic-auth-login .auth-field { margin-bottom: 18px; }
body.lic-auth-login .auth-input-wrap,
body.lic-auth-login .auth-input-wrap .form-control { min-height: 47px; }
body.lic-auth-login .auth-submit { min-height: 49px; font-size: 14px; }
body.lic-auth-login .auth-remember { margin-bottom: 19px; }
body.lic-auth-login .auth-switch { padding: 20px 0; }
body.lic-auth-login .auth-panel-foot { padding-top: 17px; }
@media (max-width: 760px) {
    body.lic-auth-login .auth-shell { display: block; padding: 12px 0 30px; }
    body.lic-auth-login .auth-visual { min-height: 0; padding: 22px 24px; margin-bottom: 14px; }
    body.lic-auth-login .register-brand { width: 205px; }
    body.lic-auth-login .register-brand img { min-height: 57px; }
    body.lic-auth-login .auth-visual-copy { padding: 10px 0 0; }
    body.lic-auth-login .auth-visual h1 { font-size: clamp(32px, 7vw, 39px); }
    body.lic-auth-login .auth-panel-head,
    body.lic-auth-login .auth-panel-body { padding: 22px 24px; }
}

/* Match the compact sign-in scale across registration and member pages. */
body.lic-auth-register .register-page {
    max-width: 1200px !important;
    padding: 24px 0 38px;
    grid-template-columns: minmax(290px, .68fr) minmax(0, 1.32fr);
    gap: 22px;
}
body.lic-auth-register .register-intro {
    top: 24px;
    min-height: min(620px, calc(100vh - 48px));
    padding: 27px 28px;
    border-radius: 18px;
}
body.lic-auth-register .register-brand { width: 245px; }
body.lic-auth-register .register-brand img { min-height: 70px; }
body.lic-auth-register .register-intro-content { padding: 18px 0; }
body.lic-auth-register .register-intro h1 {
    max-width: 430px;
    margin: 17px 0 12px;
    font-size: clamp(36px, 3.5vw, 47px);
    line-height: 1.13;
}
body.lic-auth-register .register-intro p { max-width: 370px; font-size: 14px; line-height: 1.6; }
body.lic-auth-register .register-journey { gap: 10px; margin-top: 25px; }
body.lic-auth-register .register-journey span { flex-basis: 30px; height: 30px; }
@media (max-width: 1050px) {
    body.lic-auth-register .register-page { display: block; max-width: 820px !important; padding: 18px 0 36px; }
    body.lic-auth-register .register-intro {
        position: relative;
        top: auto;
        min-height: 250px;
        margin-bottom: 16px;
        padding: 24px 28px;
    }
    body.lic-auth-register .register-intro-content { padding: 12px 0 0; }
    body.lic-auth-register .register-intro h1 { margin: 10px 0 8px; }
    body.lic-auth-register .register-intro p { margin-bottom: 0; }
    body.lic-auth-register .register-journey,
    body.lic-auth-register .register-intro-meta { display: none; }
}
body.lic-auth-register .card { border-radius: 18px; }
body.lic-auth-register .card-header { padding: 27px 32px 22px !important; }
body.lic-auth-register .card-header h2 { font-size: clamp(24px, 2.2vw, 28px); }
body.lic-auth-register .card-body { padding: 26px 32px 29px !important; }
body.lic-auth-register .form-control { min-height: 46px; }
body.lic-auth-register .row.mb-3 { row-gap: 14px; }
body.lic-auth-register .form-check { padding-top: 11px; padding-bottom: 11px; }
body.lic-auth-register #subbutton { min-height: 49px; font-size: 14px; }
.register-section-heading { margin: 27px 0 15px; padding-top: 21px; }
.register-section-heading h3 { font-size: 13px; }
body.lic-auth-register .registration-closed-card .card-body {
    padding-top: clamp(28px, 4vw, 25px) !important;
    padding-bottom: clamp(28px, 4vw, 25px) !important;
}
body.lic-auth-register .registration-closed-card h3 {
    margin: 18px 0 14px;
    font-size: clamp(25px, 2.7vw, 21px);
}
.registration-timeline { gap: 9px; margin: 18px 0 20px; }
.registration-timeline li { gap: 12px; padding: 12px 14px; }
.registration-timeline-number { flex-basis: 32px; height: 32px; }
.registration-timeline .event-days-list { display: grid; gap: 0; margin-top: 4px;  margin-left: -15px;}
.registration-timeline .event-day {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 9px 0;
}
.registration-timeline .event-day + .event-day { border-top: 1px solid rgba(255,255,255,.12); }
.registration-timeline .event-day img {
    display: block;
    flex: 0 0 84px;
    width: 190px;
    height: 80px;
    object-fit: contain;
}
.registration-timeline .event-day > span { min-width: 0; }
.registration-closed-action { min-height: 48px; margin-top: 16px; }

body.lic-member > .lic-header { min-height: 70px !important; }
.lic-header-brand { width: clamp(170px, 15vw, 215px); }
.lic-header-brand img { max-height: 58px; }
body.lic-member .lic-account-toggle { min-height: 47px; }
body.lic-member .lic-account-avatar { width: 36px; height: 36px; flex-basis: 36px; }
body.lic-member .lic-account-copy small { font-size: 8px; letter-spacing: .04em; }
.member-dashboard, .volunteer-home, .participation-page {
    max-width: 1120px;
    margin-top: 26px;
    margin-bottom: 55px;
}
.volunteer-home-hero, .member-welcome {
    min-height: 232px;
    padding: 34px clamp(24px, 4vw, 46px);
    border-radius: 19px;
}
.participation-hero {
    min-height: 270px;
    padding: 32px clamp(24px, 4vw, 46px);
    border-radius: 19px;
}
body.lic-member .volunteer-home-hero h1,
body.lic-member .member-welcome h1,
body.lic-member .participation-hero h1 {
    margin: 16px 0 13px;
    font-size: clamp(29px, 3.2vw, 42px);
    line-height: 1.18;
}
.member-welcome p, .participation-hero p { font-size: 14px; }
.member-dashboard-grid, .volunteer-home-grid { gap: 16px; margin-top: 16px; }
.member-message, .member-links, .volunteer-home-dates { padding: 23px 25px; border-radius: 15px; }
.member-message h2 { font-size: 22px; }
.member-message p { font-size: 14px; }
.volunteer-home-id { min-height: 0; padding: 23px; border-radius: 15px; }
.volunteer-home-id p { margin-top: 22px; }
.volunteer-home-id strong { font-size: clamp(31px, 3vw, 42px); }
.volunteer-home-actions a, .member-links a { min-height: 51px; }
.volunteer-home-dates .registration-timeline { margin: 18px 0; }
.participation-hero-count { flex-basis: 125px; width: 125px; height: 125px; border-radius: 17px; }
.participation-hero-count strong { font-size: 45px; }
.participation-summary { gap: 12px; margin-top: 14px; }
.participation-stat { min-height: 90px; gap: 13px; padding: 16px 18px; border-radius: 14px; }
.participation-stat-icon { flex-basis: 40px; height: 40px; font-size: 16px; }
.participation-stat strong { font-size: 23px; }
.participation-list { margin-top: 23px; }
.participation-record { padding: 20px 23px; border-radius: 15px; }
.participation-record h3 { margin: 13px 0 8px; font-size: clamp(18px, 1.8vw, 23px); }
.participation-record-bottom { margin-top: 18px; padding-top: 15px; }
.participation-empty { padding: 45px 22px; }
body.lic-portal #reg .profile-experience-choice,
body.lic-portal #reg .profile-experience-event { padding: 13px 14px; border-radius: 11px; }
body.lic-portal #reg .profile-event-card { padding: 16px; }

@media (max-width: 760px) {
    body.lic-auth-register .register-page { display: block; padding: 12px 0 30px; }
    body.lic-auth-register .register-intro {
        position: relative;
        top: auto;
        min-height: 0;
        padding: 22px 24px;
        margin-bottom: 14px;
    }
    body.lic-auth-register .register-brand { width: 205px; }
    body.lic-auth-register .register-brand img { min-height: 57px; }
    body.lic-auth-register .register-intro-content { padding: 10px 0 0; }
    body.lic-auth-register .register-intro h1 { font-size: clamp(32px, 7vw, 39px); }
    body.lic-auth-register .card-header,
    body.lic-auth-register .card-body { padding: 22px 24px !important; }
    body.lic-auth-register .registration-closed-card .card-body { padding: 28px 24px !important; }
    body.lic-member > .lic-header { min-height: 0 !important; }
    .member-dashboard, .volunteer-home, .participation-page { margin-top: 18px; margin-bottom: 42px; }
    .volunteer-home-hero, .member-welcome, .participation-hero { min-height: 0; padding: 27px 23px; }
    body.lic-member .volunteer-home-hero h1,
    body.lic-member .member-welcome h1,
    body.lic-member .participation-hero h1 { font-size: clamp(28px, 7vw, 37px); }
    .member-message, .member-links, .volunteer-home-dates { padding: 21px; }
    .participation-hero-count { display: none; }
    .participation-stat { min-height: 76px; }
    .participation-record { padding: 19px; }
    .registration-timeline .event-day { align-items: flex-start; gap: 10px; }
    .registration-timeline .event-day img { flex-basis: 70px; width: 70px; height: 31px; }
}

body.lic-member .volunteer-home-hero-content { max-width: 100%; }
body.lic-member .volunteer-home-hero h1 {
    max-width: 100%;
    font-size: clamp(26px, 2.45vw, 30px);
    line-height: 1.22;
    letter-spacing: -.02em;
}
body.lic-member .volunteer-home-title-line,
body.lic-member .volunteer-home-hero h1 em { display: block; }
@media (min-width: 900px) {
    body.lic-member .volunteer-home-title-line { white-space: nowrap; }
}
@media (max-width: 760px) {
    body.lic-member .volunteer-home-hero h1 { font-size: clamp(24px, 5vw, 29px); }
}

/* Use the home page title as the scale for the other portal headings. */
body.lic-auth-login .auth-visual h1,
body.lic-auth-register .register-intro h1,
body.lic-member .participation-hero h1,
body.lic-member .member-welcome h1 {
    font-size: clamp(26px, 2.45vw, 30px);
    line-height: 1.22;
    letter-spacing: -.02em;
}
body.lic-auth-login .auth-heading h2,
body.lic-auth-register .card-header h2,
body.lic-member .volunteer-home-dates h2,
body.lic-member .participation-list-heading h2,
body.lic-member .member-message h2 {
    font-size: 17px;
    line-height: 1.3;
    letter-spacing: -.015em;
}
body.lic-auth-register .registration-closed-card h3 {
    font-size: clamp(21px, 2.1vw, 20px);
    line-height: 1.27;
}
/* Give the closed registration page a clearer brand and heading hierarchy. */
body.lic-auth-register .registration-closed-page .register-brand { width: min(300px, 100%); }
body.lic-auth-register .registration-closed-card .card-header h2 { max-width: 680px; font-size: clamp(21px, 2vw, 25px); line-height: 1.3; }
body.lic-auth-register .registration-closed-card .registration-portal-title { display: block; color: var(--portal-mint); }
/* Password visibility controls on the registration form. */
.register-password-field { position: relative; }
.register-password-field .form-control { padding-right: 52px; }
.register-password-field .auth-reveal { position: absolute; top: 50%; right: 5px; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; transform: translateY(-50%); border-radius: 8px; font-size: 15px; }
.register-password-field .auth-reveal:focus-visible { outline: 2px solid var(--portal-mint); outline-offset: -3px; }
body.lic-auth-register .registration-closed-card .event-day img { flex-basis: 106px; width: 190px; height: 80px; }
@media (max-width: 760px) {
    body.lic-auth-register .registration-closed-page .register-brand { width: min(240px, 100%); }
    body.lic-auth-register .registration-closed-card .event-day img { flex-basis: 86px; width: 86px; height: 38px; }
}
body.lic-member .participation-record h3,
body.lic-member .participation-empty h3 {
    font-size: clamp(18px, 1.8vw, 21px);
    line-height: 1.3;
}
@media (max-width: 760px) {
    body.lic-auth-login .auth-visual h1,
    body.lic-auth-register .register-intro h1,
    body.lic-member .participation-hero h1,
    body.lic-member .member-welcome h1 { font-size: clamp(24px, 5vw, 28px); }
}

.small, small{
 color: var(--lic-muted) !important;
}