.panel{border:1px solid #d9e3ef;border-radius:13px;background:#fff}.outline,.edit{background:#fff;border:1px solid #8394b3;color:#101f43;border-radius:9px;padding:9px 18px;font:inherit}.btn:disabled,.outline:disabled,.edit:disabled{opacity:1;cursor:default}.user-account{text-decoration:none}.webinar,.account-page{color:#0a183c}.webinar .shell{margin-inline:auto;width:min(calc(100% - 52px),1396px)}.trail{display:flex;gap:14px;align-items:center;font-size:14px;color:#536788;min-height:63px;padding:0 14px}.trail a{text-decoration:none}.trail b{color:#0a183c}.web-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.99fr);gap:24px;padding-inline:13px}.web-hero{height:240px;border-radius:10px;color:white;padding:24px 41px;background:linear-gradient(90deg,#233f54 5%,#2f5773 48%,transparent 76%),url('webinar-photo.webp') right center/auto 100% no-repeat,#2f5773}.web-hero p{margin:0 0 12px;font-size:14px}.web-hero strong{display:inline-block;background:#fc3529;border-radius:6px;padding:4px 18px}.web-hero h1{font-size:38px;line-height:1.04;font-weight:600}.web-hero dl{display:flex;gap:45px;border-top:1px solid #ffffff50;margin-top:16px;padding-top:11px}.web-hero dt{font-size:19px;font-weight:600}.web-hero dd{font-size:14px;margin-left:43px}.web-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #d9e3ef;height:60px;text-align:center;align-items:stretch}.web-tabs>*{display:grid;place-items:center;text-decoration:none}.web-tabs [aria-current]{border-bottom:4px solid #ff8300;font-weight:600}.web-about,.program{padding:15px 12px}.web-about h2{font-size:27px}.web-about p{max-width:745px;line-height:1.3;margin-top:4px}.tags{list-style:none;display:flex;gap:14px;flex-wrap:wrap;padding:0;margin:10px 0 5px}.tags li{border-radius:8px;background:#edf1f6;padding:4px 16px;font-size:15px}.speakers{min-height:94px;display:flex;align-items:center;gap:30px;padding:10px 20px 10px 34px}.speakers img{width:117px;height:63px}.speakers p{margin:0;color:#536788}.speakers a{margin-left:auto;text-decoration:none;color:#064acf;border-color:#d9e3ef}.program header{display:flex;justify-content:space-between;align-items:center}.program h2{font-size:25px}.program ol{list-style:none;padding:0 0 0 39px;margin:0}.program li{display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid #e6edf3;padding:4px 10px;position:relative}.program li:last-child{border-bottom:0}.program li::before{content:"";position:absolute;left:-35px;top:17px;width:12px;height:12px;border-radius:50%;background:#bac7d8}.program li:first-child::before{background:#ff8300}.program small,.web-side small{display:block;color:#536788}.web-side{border-left:1px solid #d9e3ef;padding-left:28px}.web-side .panel{margin-bottom:14px}.register{padding:0 17px 18px}.register h2{margin:0 -17px;background:#f5f7fb;padding:11px 17px;border-radius:13px 13px 0 0;font-size:15px;font-weight:500}.timer{display:flex;justify-content:center;gap:25px;padding:3px 0 17px;text-align:center}.timer dt{font-size:38px;font-weight:700}.timer div+div dt::before{content:":";position:absolute;transform:translateX(-18px)}.timer dd{font-size:14px;color:#536788}.access-note{background:#ecf3fc;border-radius:9px;padding:9px 24px;margin:0 0 16px}.register button{width:100%;margin-bottom:12px}.register button:last-child{margin:0}.benefits{padding:5px 20px}.benefits ul,.account-list ul{list-style:none;padding:0;margin:0}.tile{width:51px;height:46px;border-radius:14px;display:grid;place-items:center;background:#f0f4f9;font-size:29px;color:#11244c}.tile.blue{background:#e3f0ff;color:#0561ff}.tile.green{background:#e3faeb;color:#00a55a}.tile.orange{background:#fff1df;color:#ff7900}.tile.purple{background:#eee7ff;color:#6500ff}.benefits li{display:flex;align-items:center;gap:20px;padding:6px 0;border-bottom:1px solid #e6edf3}.benefits li:last-child{border:0}.web-related{padding:10px 17px 16px}.web-related>div{display:flex;align-items:center;gap:16px;border-top:1px solid #d9e3ef;margin-top:10px;padding-top:14px}.web-related img{width:86px;height:70px;border-radius:7px}.web-related p{margin:0;flex:1}.webinar footer{margin:12px calc((100% - 100vw)/2) 0}
.account-page .shell{width:min(calc(100% - 110px),1442px);margin-inline:auto}.account-data .shell{width:min(calc(100% - 94px),1442px)}.account-page .mast{padding-inline:16px;height:64px}.account-page .mast form{max-width:538px}.account-page .shell>nav{height:54px;gap:66px;font-weight:600}.account-page h1{font-size:44px;font-weight:700;margin-top:7px}.account-intro{font-size:20px;margin:0;color:#203d70}.account-summary{display:grid;grid-template-columns:38.4% 1fr;align-items:center;min-height:185px}.identity{display:flex;align-items:center;gap:28px;padding-left:20px}.portrait{position:relative;flex:none}.portrait img{width:142px;height:142px;border-radius:50%;display:block}.portrait button{position:absolute;right:0;bottom:0;width:41px;height:41px;border:0;border-radius:50%;background:#062152;color:white;font-size:19px}.identity h2{font-size:30px}.identity p{font-size:20px;margin:0;color:#203d70}.identity strong{display:inline-block;background:#f1f4f8;border-radius:30px;padding:7px 17px;margin-top:7px}.stats{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stats>div{display:flex;flex-direction:column;align-items:center;position:relative;line-height:1.17}.stats>div::before{content:"";position:absolute;left:0;top:32px;height:86px;border-left:1px solid #ccd9e8}.stats .tile{order:-2}.stats dd{order:-1;font-weight:700;font-size:30px;margin:7px 0 4px}.stats dt{font-size:19px;color:#203d70}.account-panels{display:grid;grid-template-columns:1fr 1fr;gap:25px 24px}.account-panels .panel{padding:9px 20px 13px 31px}.account-panels .panel+.panel{margin-top:16px}.fields header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.fields h2,.account-list h2{font-size:24px;font-weight:600}.edit{padding:5px 12px;background:#f0f4f8;border-color:#d9e3ef;font-size:15px}.fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 32px}.fields-grid .full{grid-column:1/-1}.fields-grid label{color:#203d70;display:block;font-size:15px}.fields-grid input,.fields-grid select{height:31px;background:#eff3f8;border-color:#dce6f2;color:#111;padding:1px 10px;font-size:18px;opacity:1}.account-list li{border-top:1px solid #e8edf4;display:flex;gap:24px;align-items:center;min-height:46px}.account-list h2{margin-bottom:10px}.account-list li>div{display:flex;align-items:center;justify-content:space-between;flex:1;gap:10px}.account-list li small{font-size:17px;color:#203d70}.account-list li::after{content:"›";font-size:27px;padding-left:12px}.account-list .tile{width:57px;height:39px}.account-list li b{font-size:19px}.settings li{min-height:62px}.settings li>div{display:block;line-height:1.15}.settings small{display:block}.account-actions{display:flex;align-items:center;gap:22px}.account-actions .btn{min-width:228px;background:#ff8000}.account-actions .outline{min-width:176px}.delete-account{border-radius:15px;background:#fff0f1;color:#b51b11;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;min-height:75px}.delete-account h2{white-space:nowrap;color:#e5190c}.delete-account p{margin:0;border-left:1px solid #fa9892;padding-left:20px;font-size:15px}.delete-account button{color:#d9170a;border-color:#f14c40;background:transparent;white-space:nowrap}.account-data .account-panels{grid-template-columns:1.05fr 1fr}.account-data h1{font-size:46px}.account-data .account-summary{min-height:188px}.account-data .identity h2{font-size:34px}.account-data .account-actions .btn{min-width:260px}
@media(max-width:1050px){.web-grid,.account-summary{grid-template-columns:1fr}.web-side{border:none;padding:0}.account-page .shell>nav{gap:20px}.account-summary{gap:20px;padding:15px 0}.account-panels{grid-template-columns:1fr}.account-data .account-panels{grid-template-columns:1fr}}
@media(max-width:650px){.webinar .shell,.account-page .shell{width:92%}.web-grid{padding:0}.web-hero{height:auto;padding:20px}.web-hero h1{font-size:28px}.web-hero dl,.speakers{flex-wrap:wrap;gap:12px}.web-hero dd{margin:0}.program li{grid-template-columns:1fr}.account-panels .panel{padding:12px}.identity{padding:0;gap:12px}.portrait img{width:85px;height:85px}.identity h2,.account-data .identity h2{font-size:22px}.identity p{font-size:14px}.stats dt{font-size:13px}.account-actions,.delete-account{flex-wrap:wrap}.fields-grid{gap:8px}.web-tabs{font-size:12px}}
.tile .icon{width:28px;height:28px}.account-list h2 .icon,.fields h2 .icon,.delete-account .icon{width:29px;height:29px;margin-right:15px;vertical-align:-.24em}.portrait .icon{width:22px;height:22px}.settings .tile{background:transparent}.docs li small{min-width:215px}.webinar footer{min-height:38px;padding:9px 0}.timer div{min-width:54px}
@media(min-width:1250px){
 .webinar .shell>nav{height:32px;align-items:center}.webinar .shell>nav>*{padding:4px 0}.web-grid{grid-template-columns:minmax(0,880fr) minmax(0,465fr)}
 .speakers{min-height:93px}.program{padding-bottom:9px}.program li{min-height:49px}.web-about{min-height:208px}
 .account-page .account-summary{min-height:183px}.account-page .account-panels{position:relative;padding-bottom:103px;gap:24px}
 .account-panels .fields:first-child{min-height:250px}.account-panels .invoice{min-height:235px}.account-panels .docs{min-height:250px}
 .account-actions,.delete-account{position:absolute;bottom:0}.account-actions{left:0;bottom:10px}.account-actions button{min-height:50px;font-size:18px}.delete-account{right:0;width:61.6%;min-height:75px}
 .account-data .account-summary{min-height:186px}.account-data .account-panels .invoice{min-height:242px}
 .account-page .identity,.account-page .stats{transform:translateY(-6px)}
 .account-page main{padding-bottom:30px}
}
@media(max-width:650px){.docs li small{min-width:0}.docs li>div{display:block}.docs li small{display:block}}
.web-hero{background-image:linear-gradient(90deg,#233f54 0%,#2f5773 55%,transparent 67%),url('webinar-photo.webp')}.webinar .trail [aria-current]{color:#0a183c}.web-about p{max-width:742px}.program li:first-child>span{color:#c44a00;font-weight:600}.program ol{position:relative}.program ol::before{content:"";position:absolute;left:10px;top:20px;bottom:25px;border-left:1px solid #d9e3ef}
@media(min-width:1250px){
 .webinar footer{margin-top:0;padding-block:8px}
 .webinar .register .access-note{padding-block:7px}
 .account-data main{padding-bottom:20px}
 .account-data .mast{padding-inline:6px}
 .account-data .brand{font-size:40px}
 .account-data .shell>nav{height:51px}
 .account-data .account-summary{min-height:189px}
}
/* Webinar cover and member typography */
.web-hero {
    background-image: linear-gradient(90deg, #233f54 0%, #2f5773 64%, transparent 78%), url('webinar-photo.webp');
    background-color: #284960;
}
.web-hero h1 { font-weight: 600; letter-spacing: -.018em; }
.web-hero p strong { font-weight: 600; }
.web-hero dl { gap: clamp(16px, 3vw, 50px); }
.web-about h2, .program h2 { font-weight: 600; letter-spacing: -.023em; }
.program li b, .benefits li b, .web-related b { font-weight: 600; }
.register h2 { font-weight: 400; }
.timer dt { letter-spacing: .035em; }
.account-page { font-family: Arial, sans-serif; }
.account-page .brand { font-family: "Fira Sans", Arial, sans-serif; }
.account-page h1 { letter-spacing: -.045em; font-size: 42px; }
.account-data h1 { font-size: 46px; }
.account-page .identity h2 { letter-spacing: -.035em; }
.account-page .fields h2, .account-page .account-list h2 { letter-spacing: -.04em; font-weight: 700; }
.account-page .account-intro { letter-spacing: -.025em; }
.account-page .account-list li b { letter-spacing: -.025em; }
.account-page .stats dd, .account-page .stats dt { letter-spacing: -.025em; }
.account-page .account-actions button { font-family: inherit; }
@media (min-width:1250px) {
 .webinar footer { padding-bottom:6px; }
 .account-overview .account-summary { min-height:185px; }
 .account-overview main { padding-bottom:30px; }
 .account-data .account-summary { min-height:189px; }
}

/* Keep the member mastheads aligned to their desktop layouts. */
@media (min-width: 1440px) {
    .webinar .mast,
    .account-page .mast {
        display: grid;
        grid-template-columns: var(--mast-brand) minmax(0, var(--mast-search)) minmax(0, 1fr);
        gap: 18px;
    }

    .webinar { --mast-brand: 225px; --mast-search: 559px; }
    .account-overview { --mast-brand: 217px; --mast-search: 538px; }
    .account-data { --mast-brand: 239px; --mast-search: 531px; }

    .webinar .mast form,
    .account-page .mast form {
        width: 100%;
        margin: 0;
        transform: none;
    }

    .webinar .account,
    .account-page .account {
        justify-self: end;
    }
}

.webinar .brand { font-size: 32px; }
.webinar .trail { gap: 10px; padding-inline: 13px; }
.webinar .trail > span { flex: none; }
.web-hero h1 { letter-spacing: 0; }
.web-hero dl { border-color: transparent; position: relative; }
.web-hero dl::before {
    content: "";
    position: absolute;
    inset: -1px auto auto 0;
    width: min(100%, 517px);
    height: 1px;
    background: linear-gradient(90deg, #ff8000 0 17px, #ffffff50 17px, transparent);
}

.web-hero dt { display: flex; align-items: center; gap: 12px; }
.web-hero dt .icon, .web-hero p .icon { width: 24px; height: 24px; }
.web-hero p .icon { width: 19px; height: 19px; margin: 0 8px 0 19px; }
.web-hero dt .point-icon { color: white; background: #ff8300; border-radius: 50%; padding: 4px; }
.register h2 .icon { color: #216aff; }
.access-note { display: flex; gap: 24px; align-items: center; }
.access-note .icon { width: 28px; height: 28px; flex: 0 0 auto; color: #216aff; }
.program ol > li > span { color: #203d70; }
.program ol > li:first-child > span { color: #c44a00; }

.account-page > header > nav { border-color: #c7d3e3; }
.account-page .mast input::placeholder { color: #10234b; opacity: 1; }
.account-page .mast .author img { width: 42px; height: 42px; }
.account-page .mast .btn, .account-actions .btn { background: #ff8000; border-radius: 11px; }
.account-actions .outline { border-color: #8394b3; }
.account-page .identity h2 { letter-spacing: -.025em; }
.account-page .fields h2,
.account-page .account-list h2 { letter-spacing: -.025em; }
.account-page .fields-grid label { margin-bottom: 3px; }

@media (min-width: 1250px) {
    .account-overview .account-panels .panel { padding-right: 25px; }
    .account-data .account-panels .panel { padding-right: 23px; padding-left: 33px; }
    .account-page .account-actions { bottom: 12px; }
    .account-data .account-actions { gap: 18px; }
}

@media (min-width: 1250px) {
    .webinar footer { padding-bottom: 5px; }
    .account-overview main { padding-bottom: 22px; }
    .account-data main { padding-bottom: 16px; }
}

.account-page :is(.fields, .account-list) h2 {
    display: flex;
    align-items: center;
    gap: 18px;
    line-height: 1.2;
    letter-spacing: -.032em;
}

.account-page :is(.fields, .account-list) h2 .icon {
    margin: 0;
}

.account-page .edit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 1.2;
}

.account-page .edit .icon { width: 15px; height: 15px; }
.account-page .settings .tile .icon { width: 30px; height: 30px; }

@media (min-width: 1250px) {
    .webinar footer { min-height: 37px; padding-bottom: 4px; }
    .account-page .docs li small { flex: 0 0 205px; min-width: 0; }
    .account-page .account-list li { gap: 28px; }
}

@media (max-width: 650px) {
    .account-page :is(.fields, .account-list) h2 { font-size: 21px; gap: 10px; }
    .account-page :is(.fields, .account-list) h2 .icon { width: 23px; height: 23px; }
    .account-page .fields-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .account-page .fields-grid :is(input,select) { min-height: 40px; }
    .account-page .account-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; }
    .account-page .account-actions :is(.btn,.outline) { min-width: 0; min-height: 44px; padding-inline: 8px; }
    .account-page .delete-account p { border: 0; padding: 0; flex-basis: 100%; }
    .webinar .web-hero dd { margin-left: 0; }
    .webinar .web-tabs a { min-height: 44px; }
}

.member-menu { display: none; }

@media (max-width: 750px) {
    .webinar .shell, .account-page .shell { width: calc(100% - 28px); }
    .webinar .mast, .account-page .mast {
        display: grid;
        grid-template-columns: minmax(0,1fr);
        gap: 8px;
        height: auto;
        padding: 12px 0 8px;
    }
    .webinar .mast form, .account-page .mast form { width: 100%; margin: 0; transform: none; }
    .mast input { min-height: 44px; }
    .webinar .account, .account-page .account {
        display: grid;
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 4px 8px;
        width: 100%;
        margin: 0;
        white-space: normal;
    }
    .account .author { min-width: 0; line-height: 1.2; gap: 6px; }
    .account-page .mast .author img, .webinar .mast .author img { width: 30px; height: 30px; flex: none; }
    .account > .user-account, .account > .notification { display: flex; align-items: center; min-height: 44px; }
    .account > .btn { min-width: 0; min-height: 44px; display: grid; place-items: center; text-align: center; }
    .webinar > header > nav, .account-page > header > nav { display: none; }
    .member-menu { display: block; border-bottom: 1px solid #d9e3ef; }
    .member-menu summary { min-height: 44px; padding: 10px 0; cursor: pointer; font-weight: 600; }
    .member-menu nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 12px; padding-bottom: 8px; }
    .member-menu nav > * { display: flex; align-items: center; min-height: 44px; }
    .member-menu [aria-current] { color: #ae3900; font-weight: 700; }
    .member-menu :is(a,summary):focus-visible, .web-tabs a:focus-visible { outline: 2px solid #155acf; outline-offset: -2px; }

    .account-page h1 { font-size: clamp(32px, 9vw, 38px); line-height: 1.15; margin-top: 14px; }
    .account-intro { font-size: 16px; line-height: 1.45; }
    .account-page .identity { min-width: 0; padding: 0; }
    .identity > div:last-child { min-width: 0; overflow-wrap: anywhere; }
    .identity strong { padding: 5px 10px; font-size: 12px; }
    .stats { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
    .stats > div { border: 1px solid #d9e3ef; border-radius: 10px; padding: 8px 4px; }
    .stats > div::before { content: none; }
    .stats dd { white-space: nowrap; font-size: 24px; }
    .stats dt { font-size: 14px; }
    .account-panels { gap: 16px; }
    .fields header { gap: 6px; }
    .account-page .edit { flex: none; min-height: 44px; padding-inline: 8px; }
    .account-page .fields-grid :is(input,select) { min-width: 0; width: 100%; min-height: 44px; font-size: 16px; }
    .account-list li { gap: 10px; }
    .account-list .tile { flex: 0 0 40px; }
    .account-list li b { font-size: 16px; }
    .account-list li small { font-size: 14px; }
    .delete-account { justify-content: flex-start; gap: 10px; }
    .delete-account button { min-height: 44px; }

    .webinar .trail { padding: 10px 0; gap: 4px 8px; flex-wrap: wrap; line-height: 1.35; }
    .webinar .trail [aria-current] { flex-basis: 100%; }
    .webinar .web-grid { padding-inline: 0; }
    .webinar .web-hero { height: auto; padding: 16px; background-image: linear-gradient(90deg,#233f54,#233f54e8 68%,#233f54a8),url('webinar-photo.webp'); }
    .webinar .web-hero h1 { font-size: clamp(25px,7vw,30px); line-height: 1.12; }
    .web-hero p { display: flex; flex-wrap: wrap; align-items: center; column-gap: 5px; }
    .web-hero p strong { padding-inline: 8px; }
    .web-hero p .icon { margin: 0; }
    .web-hero dl { column-gap: 12px; }
    .web-hero dt { gap: 5px; font-size: 16px; }
    .web-hero dd { line-height: 1.3; }
    .web-tabs { grid-template-columns: repeat(3,minmax(0,1fr)); height: auto; font-size: 14px; }
    .web-tabs > * { min-height: 44px; }
    .web-tabs > span { color: #536788; }
    .web-about, .program { padding-inline: 0; }
    .web-about p { line-height: 1.5; }
    .speakers { padding: 12px; }
    .speakers a { min-height: 44px; display: inline-flex; align-items: center; margin-left: 0; }
    .program header { flex-wrap: wrap; gap: 8px; }
    .webinar :is(.outline,.register .btn) { min-height: 44px; }
    .webinar .web-related > div { gap: 8px; }
}

@media (max-width: 750px) {
    .webinar .mast input, .account-page .mast input { text-overflow: ellipsis; }
    .webinar .account .notification, .account-page .account .notification { grid-area: 1 / 1; }
    .webinar .account .user-account, .account-page .account .user-account { grid-area: 1 / 2; }
    .webinar .account .author, .account-page .account .author { grid-area: 2 / 1; }
    .webinar .account > .btn, .account-page .account > .btn { grid-area: 2 / 2; }
}

.profile-menu { position: relative; min-width: 0; }
.profile-menu summary { list-style: none; cursor: pointer; min-height: 44px; overflow-wrap: anywhere; }
.profile-menu summary::-webkit-details-marker { display: none; }
.profile-initial { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 50%; background: #edf2f9; color: #13315d; font-weight: 700; }
.portrait .profile-initial { width: clamp(84px, 12vw, 142px); height: clamp(84px, 12vw, 142px); font-size: 2rem; }
.profile-options { position: absolute; top: 100%; right: 0; z-index: 15; min-width: 190px; padding: 6px; border: 1px solid #d9e3ef; border-radius: 9px; background: #fff; color: #10234b; box-shadow: 0 8px 22px #10234b25; }
.profile-options > a, .profile-options button { display: block; width: 100%; padding: 11px; font: inherit; text-align: left; text-decoration: none; color: inherit; border: 0; background: transparent; cursor: pointer; }
.account .profile-options form { width: 100%; max-width: none; margin: 0; transform: none; }
.account .profile-options form::before, .account .profile-options form::after { content: none; }
.profile-options :is(a,button):hover { background: #edf2f9; }
.auth-panel { width: min(100% - 32px, 440px); margin: 40px auto; }
.auth-panel form, .auth-panel label { display: grid; gap: 8px; }
.auth-panel form { gap: 16px; }
.auth-panel input { min-height: 44px; }
.auth-panel nav { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
@media (max-width: 750px) {
    .mast .account { margin-left: 0; }
    .profile-options { right: auto; left: 0; }
    .webinar .account .profile-menu, .account-page .account .profile-menu { grid-area: 2 / 1; }
    .mast .profile-guest > a { min-height: 44px; display: inline-grid; place-items: center; }
}


.account-status { grid-column: 1 / -1; margin: 0; padding: 10px 16px; background: #eef4fb; border-radius: 8px; }
.account-status[role="alert"] { background: #fff0f0; }

.points-history { margin-block: 20px; padding: 16px; }
.points-history ul { list-style: none; padding: 0; }
.points-history li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-block: 10px; border-top: 1px solid #d9e3ef; }
.points-history li div { overflow-wrap: anywhere; }
.points-history li b { white-space: nowrap; }
.points-history nav { display: flex; flex-wrap: wrap; gap: 14px; }


.operations { width: min(920px, calc(100% - 32px)); margin: 24px auto; }
.operations .panel { padding: 16px; margin: 14px 0; overflow-wrap: anywhere; }
.operations form, .operations form label { display: grid; gap: 8px; }
.operations form { margin-block: 8px; }
.operations input[type="checkbox"] { width: auto; }
.operations label:has(input[type="checkbox"]) { display: flex; align-items: center; gap: 10px; }
.operations li { margin-block: 8px; }
.operations :is(button,summary) { min-height: 44px; }
.operations summary { cursor: pointer; padding-block: 10px; }
.operations nav { display: flex; flex-wrap: wrap; gap: 12px; }

/* Account overview and details */
.account-page main.shell { width: min(calc(100% - 36px), 1120px); padding-block: 22px 32px; }
.account-page main h1 { margin: 0 0 4px; font-size: clamp(25px, 4vw, 32px); line-height: 1.2; }
.account-page .account-intro { font-size: 15px; line-height: 1.45; letter-spacing: normal; }
.account-page .account-summary { min-height: 0; margin-block: 16px; padding: 12px; gap: 14px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.65fr); border: 1px solid #dce4ee; border-radius: 10px; }
.account-page .identity, .account-page .stats { transform: none; }
.account-page .identity { min-width: 0; padding: 0; gap: 10px; }
.account-page .identity > div:last-child { min-width: 0; overflow-wrap: anywhere; }
.account-page .identity h2 { font-size: 17px; line-height: 1.2; }
.account-page .identity p { font-size: 13px; }
.account-page .identity strong { margin-top: 4px; padding: 3px 8px; font-size: 11px; }
.account-page .portrait :is(img, .profile-initial) { width: 44px; height: 44px; font-size: 18px; }
.account-page .stats { margin: 0; gap: 6px; }
.account-page .stats > div { padding: 5px 3px; border: 0; background: #f4f7fa; border-radius: 7px; }
.account-page .stats > div::before { content: none; }
.account-page .stats .tile { width: 22px; height: 22px; }
.account-page .stats .icon { width: 14px; height: 14px; }
.account-page .stats dd { margin: 2px 0; font-size: 18px; }
.account-page .stats dt { font-size: 12px; letter-spacing: normal; }
.account-page .account-panels { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; gap: 14px; }
.account-page .account-panels .panel { min-height: 0; padding: 12px 14px; }
.account-page .account-panels .panel + .panel { margin-top: 12px; }
.account-page .account-panels h2, .account-page .points-history h2 { font-size: 17px; line-height: 1.25; }
.account-page .account-panels h2 .icon { width: 17px; height: 17px; margin-right: 5px; }
.account-page .fields header { margin-bottom: 6px; }
.account-page .fields-grid { gap: 8px 12px; }
.account-page .fields-grid label { font-size: 13px; }
.account-page .fields-grid :is(input, select) { min-width: 0; height: 36px; font-size: 14px; }
.account-page .fields-grid :is(input[readonly], select:disabled) { background: #f7f9fc; }
.account-page .account-list li { gap: 8px; min-height: 40px; }
.account-page .account-list li b { font-size: 14px; }
.account-page .account-list li small { min-width: 0; font-size: 12px; }
.account-page .account-list .tile { width: 28px; height: 28px; flex: 0 0 28px; }
.account-page .account-list .tile .icon { width: 16px; height: 16px; }
.account-page .account-list li::after { font-size: 18px; padding-left: 4px; }
.account-page :is(.account-actions, .delete-account) { position: static; width: auto; min-height: 0; grid-column: 1 / -1; gap: 8px 14px; }
.account-page .account-actions :is(.btn, .outline) { min-width: 0; min-height: 40px; font-size: 14px; }
.account-page .delete-account { display: flex; flex-wrap: wrap; justify-content: flex-start; padding: 10px 14px; background: #f8fafc; color: inherit; border: 1px solid #dce4ee; border-radius: 8px; }
.account-page .delete-account h2 { color: inherit; }
.account-page .delete-account p { padding: 0; border: 0; font-size: 13px; }
.account-page .delete-account br { display: none; }
.account-page .delete-account a { font-size: 13px; font-weight: 600; }
@media (max-width: 750px) {
    .account-page .account-summary, .account-page .account-panels { grid-template-columns: minmax(0, 1fr); }
    .account-page .stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .account-page .fields-grid :is(input, select) { height: 44px; font-size: 16px; }
}
@media (max-width: 460px) {
    .account-page .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .account-page .fields-grid { grid-template-columns: minmax(0, 1fr); }
}
/* Application panels */
.workspace-panel { min-height: 100vh; background: #f4f7fb; color: #15233d; }
.workspace-panel .workspace-width { width: min(1180px, calc(100% - 36px)); margin-inline: auto; }
.workspace-bar { background: #fff; border-bottom: 1px solid #dfe6ef; }
.workspace-bar .workspace-width { min-height: 65px; display: flex; align-items: center; justify-content: space-between; gap: 12px 28px; flex-wrap: wrap; }
.workspace-bar .brand { font-size: 28px; }
.workspace-bar nav, .workspace-actions, .workspace-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.workspace-bar nav a { padding: 7px 10px; border-radius: 6px; font-size: 14px; font-weight: 600; }
.workspace-bar nav [aria-current] { background: #fff0e8; color: #9c3100; }
.workspace-panel main { margin-block: 0; padding-block: 24px 40px; }
.workspace-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 18px; }
.workspace-heading h1 { font-size: clamp(24px, 4vw, 34px); line-height: 1.2; margin: 0; overflow-wrap: anywhere; }
.workspace-panel .panel, .directory-page .panel { background: white; border: 1px solid #dce5ef; border-radius: 10px; padding: 16px; min-width: 0; }
.workspace-panel h2, .directory-page h2 { font-size: 18px; line-height: 1.3; margin: 0 0 12px; }
.workspace-panel :is(.btn, .outline), .directory-page :is(.btn, .outline) { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 40px; padding: 7px 12px; font-size: 14px; line-height: 1.25; text-align: center; text-decoration: none; }
.workspace-panel .outline { border: 1px solid #cdd8e6; background: #fff; color: #25456a; border-radius: 6px; }
.workspace-panel .outline:hover, .workspace-bar nav a:hover { background: #eef3f9; }
.workspace-panel .editorial-publish { color: #953600; }
.workspace-panel form :is(input:not([type=checkbox]), select, textarea) { display: block; width: 100%; min-width: 0; padding: 8px 10px; border: 1px solid #adbed1; border-radius: 6px; background: #fff; color: inherit; font: inherit; }
.workspace-panel textarea { resize: vertical; }
.workspace-panel label { font-weight: 500; font-size: 14px; }
.workspace-panel form { min-width: 0; }
.workspace-panel .panel form .btn, .workspace-panel .editorial-form > .btn { justify-self: start; }
.workspace-panel form .btn:disabled { opacity: .6; }
.workspace-status, .workspace-panel [role=alert] { padding: 9px 12px; border-radius: 6px; background: #e7f5ed; color: #12482b; }
.workspace-panel [role=alert] { background: #fcebed; color: #792331; list-style-position: inside; }
.workspace-panel .workspace-empty { color: #53657c; margin: 10px 0; }
.workspace-panel .editorial-form { gap: 12px; scroll-margin-top: 14px; }
.editorial-form img { display: block; margin-bottom: 8px; max-width: 100%; border-radius: 6px; }
.workspace-panel .workspace-list { list-style: none; padding: 0; margin: 0; }
.workspace-panel .workspace-list > li { border-top: 1px solid #e4eaf2; padding: 11px 0; margin: 0; }
.workspace-chip { padding: 2px 7px; border-radius: 4px; background: #edf2f7; color: #40536e; font-size: 12px; white-space: nowrap; }
.workspace-chip.is-published { background: #e4f4eb; color: #175639; }
.workspace-panel .workspace-pagination { margin-top: 14px; }
.workspace-pagination a { padding: 7px 12px; border: 1px solid #cdd8e6; border-radius: 6px; }
.workspace-panel details:not(.profile-menu) { margin-block: 8px; padding: 0 10px; border: 1px solid #e0e7f0; border-radius: 6px; background: #f8fafd; }
.workspace-panel details > summary { font-weight: 600; }
.workspace-panel details > form { margin-bottom: 12px; }
.directory-page { padding-bottom: 32px; }
.directory-page .directory-nav { display: flex; flex-wrap: wrap; gap: 4px 12px; padding: 10px 0; border-bottom: 1px solid #dce5ef; }
.directory-page .directory-nav a { padding: 6px; }
.directory-page .directory-nav [aria-current] { color: #9c3100; font-weight: 700; }
.directory-page > h1 { margin: 20px 0 12px; font-size: clamp(25px, 4vw, 36px); }
.directory-page .panel p { margin: 6px 0; }
@media (max-width: 750px) {
    .workspace-bar .workspace-width { padding-block: 8px; }
    .workspace-bar nav { gap: 2px; }
    .workspace-bar nav a { padding: 8px; }
    .workspace-panel .panel { padding: 12px; }
}

.cms-filters { grid-template-columns: minmax(180px, 1fr) minmax(135px, 200px) auto auto; align-items: end; }
.cms-filters > a { align-self: center; }
.cms-row { display: grid; grid-template-columns: minmax(0, 1fr) 105px auto; align-items: center; gap: 10px; }
.cms-row .workspace-chip { justify-self: start; }
.cms-row-title { min-width: 0; }
.cms-row-title a { display: block; font-weight: 650; line-height: 1.3; }
.cms-row-title small { display: block; color: #54657c; overflow-wrap: anywhere; }
.workspace-panel form.cms-editor { display: grid; grid-template-columns: minmax(0, 1fr) minmax(225px, .38fr); align-items: start; gap: 16px 24px; }
.cms-editor section, .cms-editor aside { display: grid; min-width: 0; gap: 10px; }
.cms-editor aside { align-content: start; padding: 12px; background: #f5f8fc; border-radius: 8px; }
.cms-editor aside h3 { margin: 4px 0 0; font-size: 15px; }
.cms-editor img { max-width: 100%; height: auto; border-radius: 6px; }
.cms-editor section > .btn { justify-self: start; }
@media (min-width: 1000px) {
    .workspace-panel { display: grid; grid-template-columns: 178px minmax(0, 1fr); }
    .workspace-panel .workspace-bar { border-bottom: 0; border-right: 1px solid #dfe6ef; }
    .workspace-bar .workspace-width { position: sticky; top: 0; width: auto; display: grid; align-content: start; padding: 18px 12px; gap: 14px; }
    .workspace-bar .brand { padding-inline: 8px; }
    .workspace-bar nav { display: grid; gap: 4px; }
    .workspace-bar nav a { display: block; }
}
@media (max-width: 750px) {
    .workspace-panel form.cms-editor { grid-template-columns: minmax(0, 1fr); }
    .cms-filters { grid-template-columns: minmax(0, 1fr) auto; }
    .cms-filters label:first-child { grid-column: 1 / -1; }
    .cms-row { grid-template-columns: minmax(0, 1fr) auto; }
    .cms-row .workspace-actions { grid-column: 1 / -1; }
}
.workspace-panel.payment-panel { display: block; }
.payment-panel main { max-width: 540px; }
.payment-panel h1 { margin: 0; font-size: clamp(23px, 4vw, 30px); }
.payment-amount { font-size: 22px; font-weight: 650; margin-block: 10px; }
.public-header { border-bottom: 1px solid #dce5ef; background: white; }
.public-width { width: min(1120px, calc(100% - 36px)); margin-inline: auto; }
.public-header-top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px 20px; min-height: 64px; }
.public-header .directory-nav { display: flex; gap: 8px 22px; flex-wrap: wrap; padding: 8px 0 11px; }
.public-header .directory-nav [aria-current] { color: #9c3100; font-weight: 650; }
.public-pagination { margin: 16px 0 0; }
.public-pagination [aria-current=page] { padding: 7px 12px; border: 1px solid #e3a484; border-radius: 6px; background: #fff0e8; color: #823100; font-weight: 600; }
.public-events-layout { display: grid; grid-template-columns: minmax(200px, 248px) minmax(0, 1fr); gap: 14px; align-items: start; }
.directory-page .public-event { display: grid; grid-template-columns: minmax(120px, 180px) minmax(0, 1fr); gap: 14px; }
.directory-page .public-event > div:only-child { grid-column: 1 / -1; }
.public-event img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 6px; }
.public-event h2 { margin: 5px 0 6px; }
.public-event small { color: #52657e; }
.public-event .outline { margin-top: 6px; }
.event-filters :is(input, select), .knowledge-search input { box-sizing: border-box; width: 100%; min-width: 0; padding: 8px 10px; border: 1px solid #adbed1; border-radius: 6px; background: white; font: inherit; }
.knowledge-search { max-width: 640px; }
.event-facts dt { font-size: 13px; font-weight: 600; margin-top: 8px; }
.event-facts dd { margin-left: 0; }
.event-description { overflow-wrap: anywhere; }
.event-description img { max-width: 100%; height: auto; border-radius: 8px; }
.event-description > .btn, .event-description > .outline { margin-top: 12px; }
.home-footer { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; }
@media (max-width: 700px) {
    .public-events-layout { grid-template-columns: minmax(0, 1fr); }
    .public-header-top { padding-block: 8px; }
}
@media (max-width: 480px) {
    .directory-page .public-event { grid-template-columns: minmax(0, 1fr); }
    .public-event img { aspect-ratio: 16 / 9; }
}
.cms-bulk { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding: 10px 0; }
.cms-bulk .outline:disabled { opacity: .5; }
.cms-row-title input[type=checkbox] { float: left; margin: 4px 8px 12px 0; }
/* Participant account */
.account-page { min-height: 100vh; color: #152744; background: #f5f7fb; }
.account-page > header.shell { background: #f5f7fb; }
.account-page .account-summary { background: #fff; border-radius: 12px; padding: 16px; }
.account-page .account-panels .panel, .account-page .points-history { background: #fff; border: 1px solid #dce4ee; border-radius: 12px; }
.account-page .stats > div { background: #f3f7fc; }
.account-page .stats dt { color: #36516f; }
.member-account-nav { display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 15px 0 0; }
.member-account-nav a { display: inline-flex; align-items: center; min-height: 36px; border-radius: 6px; padding: 5px 10px; color: #26456a; font-size: .875rem; font-weight: 600; text-decoration: none; }
.member-account-nav a[aria-current], .member-account-nav a:hover { background: #e5eefb; color: #164579; }
.profile-options .profile-admin-link { border-top: 1px solid #e2e8f0; color: #234875; font-weight: 650; }


:root { --form-hint-gap: 14px; }
.form-hint { margin-block: 0 var(--form-hint-gap); }
.form-required-key, .form-input-hint { color: #53647a; }
.form-input-hint { display: block; margin-top: 5px; }
.form-disclosure[open] > summary { margin-bottom: var(--form-hint-gap); }
.form-required { color: #a23c08; font-weight: 700; }
.auth-panel label:has(.form-input-hint) { gap: 5px; }
.auth-panel .form-input-hint { margin-top: 0; }

.validation-message { display: block; margin: 5px 0 var(--form-hint-gap); color: #a12b20; font-size: .875rem; line-height: 1.4; overflow-wrap: anywhere; }
.validation-message + .validation-message { margin-top: 0; }
[aria-invalid="true"]:is(input, select, textarea) { border-color: #a12b20; }
