:root{
  --mk-navy:#263f66;
  --mk-purple:#63389a;
  --mk-purple-dark:#4c2b80;
  --mk-teal:#147b82;
  --mk-gold:#ffc857;
  --mk-soft:#f5f2fa;
  --mk-ink:#1f2933;
}
html{scroll-behavior:smooth}
body{min-height:100vh;color:var(--mk-ink);background:#fff}
a{color:var(--mk-purple-dark)}a:hover{color:var(--mk-teal)}
.site-navbar{background:linear-gradient(100deg,#17253d,#263f66 55%,#4c2b80);box-shadow:0 2px 12px rgba(15,23,42,.18);min-height:76px}
.brand-panel{display:inline-flex;background:#fff;border-radius:12px;padding:.3rem .65rem;margin-right:.75rem;box-shadow:0 3px 14px rgba(0,0,0,.18)}
.brand-panel img{display:block;width:230px;height:auto;max-height:52px}
.admin-badge{color:var(--mk-purple-dark)!important}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.83);font-weight:600}.navbar-dark .navbar-nav .nav-link:hover{color:#fff}
.hero{background:radial-gradient(circle at 12% 20%,rgba(20,123,130,.45),transparent 32%),linear-gradient(135deg,#17253d,#4c2b80 65%,#63389a);color:#fff;padding:5rem 0 4.5rem;overflow:hidden}
.hero-logo-panel{display:inline-block;background:#fff;border-radius:18px;padding:.55rem 1rem;box-shadow:0 16px 45px rgba(0,0,0,.22);margin-bottom:1.5rem}.hero-logo-panel img{width:min(520px,82vw);height:auto}
.hero .form-control,.hero .form-select{min-height:49px}.hero-search{border:0;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.btn-primary{--bs-btn-bg:var(--mk-purple);--bs-btn-border-color:var(--mk-purple);--bs-btn-hover-bg:var(--mk-purple-dark);--bs-btn-hover-border-color:var(--mk-purple-dark)}
.btn-warning{--bs-btn-bg:var(--mk-gold);--bs-btn-border-color:var(--mk-gold);color:#1f2933}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.1rem}.section-heading p{margin-bottom:0;color:#687281}
.card-show{height:100%;border:1px solid #e7e2ef;border-radius:16px;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.card-show:hover{transform:translateY(-3px);box-shadow:0 .75rem 1.75rem rgba(38,63,102,.13)}
.card-media{height:145px;background:linear-gradient(135deg,#f4f1f9,#e8f4f4);display:flex;align-items:center;justify-content:center;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:contain;padding:15px}.card-media img.photo{object-fit:cover;padding:0}.card-media .fallback-note{width:82px;height:82px;opacity:.82}
.event-card{border-top:5px solid var(--mk-teal)}.event-card.contest{border-top-color:var(--mk-gold)}
.badge-premium{background:linear-gradient(110deg,var(--mk-purple),var(--mk-teal));color:#fff}.badge-lifetime{background:linear-gradient(110deg,#a66a00,#ffc857);color:#2a210b}.event-badge{background:var(--mk-teal);color:#fff}.contest-badge{background:#8d5d00;color:#fff}
.admin-stat{border-left:5px solid var(--mk-purple);border-radius:12px}.prewrap{white-space:pre-wrap}.table-actions form{display:inline}.required:after{content:' *';color:#b02a37}.empty-state{padding:4rem 1rem;text-align:center;color:#6c757d}.detail-hero{background:linear-gradient(120deg,#f6f3fb,#eef7f7);border-bottom:1px solid #e0d9eb}.form-section{border:1px solid #e5e0ea;border-radius:.85rem;padding:1.25rem;margin-bottom:1.25rem;background:#fff}.form-section h2{color:var(--mk-navy)}
.profile-portrait{width:150px;height:150px;border-radius:50%;object-fit:cover;background:#fff;border:5px solid #fff;box-shadow:0 8px 25px rgba(38,63,102,.18)}.profile-logo{width:170px;height:120px;object-fit:contain;background:#fff;border-radius:14px;padding:10px;border:1px solid #ddd6e8}.venue-logo{width:170px;height:150px;object-fit:contain;background:#fff;border-radius:16px;padding:12px;border:1px solid #ddd6e8;box-shadow:0 8px 25px rgba(38,63,102,.12)}
.upload-preview{max-width:210px;max-height:160px;object-fit:contain;border:1px solid #ddd;border-radius:12px;background:#f8f9fa;padding:8px}.upload-preview.portrait{width:150px;height:150px;border-radius:50%;object-fit:cover;padding:0}
.special-event-panel{border:1px solid #d6e7e8;border-left:5px solid var(--mk-teal);border-radius:14px;background:#f7fbfb}.contest-panel{border-left-color:#b77b08;background:#fffaf0}
.site-footer{background:#17253d;color:#fff}.site-footer img{background:#fff;border-radius:10px}.footer-note{color:rgba(255,255,255,.72)}
.login-logo{display:block;width:min(360px,80%);margin:0 auto 1.5rem}.admin-login-card{border:0;border-radius:18px;box-shadow:0 15px 45px rgba(38,63,102,.18)}
@media (max-width:991px){.brand-panel img{width:190px}.site-navbar{min-height:68px}.navbar-collapse{padding-top:.75rem}.hero{padding:3.5rem 0}.profile-portrait{width:120px;height:120px}.venue-logo{width:135px;height:120px}}
@media (max-width:575px){.brand-panel{padding:.25rem .45rem}.brand-panel img{width:155px}.hero h1{font-size:2.35rem}.section-heading{display:block}.section-heading a{display:inline-block;margin-top:.4rem}}


/* v1.2 KJ directory, account portal, and compact administration */
.kj-card{border:1px solid #e3ddea;border-radius:16px;box-shadow:0 8px 24px rgba(38,63,102,.07)}
.kj-card-photo{width:88px;height:88px;object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:0 5px 15px rgba(38,63,102,.15);background:#f5f2fa}
.kj-card-fallback{object-fit:contain;padding:14px}
.service-chip{display:inline-flex;align-items:center;padding:.28rem .6rem;border-radius:999px;background:#eef7f7;color:#235f64;font-size:.78rem;font-weight:600;border:1px solid #d6e7e8}
.service-chip-lg{font-size:.9rem;padding:.42rem .75rem}
.venue-mini-card{border:1px solid #e6e0ed;color:var(--mk-ink)}.venue-mini-card:hover{box-shadow:0 8px 22px rgba(38,63,102,.1)}
.venue-mini-logo{width:58px;height:58px;object-fit:contain}
.booking-card{border-top:5px solid var(--mk-purple);box-shadow:0 10px 25px rgba(38,63,102,.1)}
.admin-table-card{border:1px solid #e2dce9;border-radius:14px;overflow:hidden}
.admin-table-card thead th{background:#f5f2fa;color:var(--mk-navy);white-space:nowrap}
.admin-thumb{width:48px;height:48px;object-fit:contain;background:#fff;border:1px solid #e5dfeb;border-radius:8px}
.admin-actions{min-width:190px}.admin-actions form{margin:0}.admin-actions .dropdown-item{width:100%;text-align:left;border:0;background:transparent}
.status-pill{display:inline-flex;padding:.28rem .62rem;border-radius:999px;font-size:.78rem;font-weight:700;background:#eef0f2;color:#52606d}
.status-published,.status-active,.status-approved{background:#d1e7dd;color:#0f5132}
.status-pending,.status-pending_admin,.status-pending_email,.status-more_info,.status-in_review,.status-new{background:#fff3cd;color:#664d03}
.status-rejected,.status-expired{background:#f8d7da;color:#842029}
.status-draft,.status-archived,.status-suspended{background:#e2e3e5;color:#41464b}
@media(max-width:767px){.admin-table-card table{min-width:820px}.kj-card-photo{width:72px;height:72px}}

.kj-home-cta{background:linear-gradient(120deg,#eef7f7,#f5f2fa);box-shadow:0 12px 32px rgba(38,63,102,.09)}

/* v1.2.1 submissions, multi-day schedules, and owner access */
.schedule-day-grid{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:.55rem}
.schedule-day{position:relative;margin:0}.schedule-day input{position:absolute;opacity:0;pointer-events:none}.schedule-day span{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #d9d1e4;border-radius:10px;background:#fff;font-weight:700;color:var(--mk-navy);cursor:pointer;transition:.15s ease}.schedule-day input:checked+span{background:var(--mk-purple);border-color:var(--mk-purple);color:#fff;box-shadow:0 5px 14px rgba(99,56,154,.22)}.schedule-day input:focus-visible+span{outline:3px solid rgba(20,123,130,.25)}
.submission-cell{min-width:370px}.submission-details summary{list-style:none;display:inline-block}.submission-details summary::-webkit-details-marker{display:none}.submission-detail-panel{border:1px solid #e2dce9;border-radius:12px;background:#fbfafd;padding:1rem}.submission-detail-grid{display:grid;grid-template-columns:minmax(130px,38%) 1fr;gap:.45rem .9rem}.submission-detail-grid dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.035em;color:#667085}.submission-detail-grid dd{margin:0;overflow-wrap:anywhere}.submission-notes{border-left:4px solid var(--mk-teal);background:#fff;padding:.8rem;border-radius:8px}
.badge-owner{background:linear-gradient(110deg,#17253d,#63389a);color:#fff}.admin-revoke-box{width:290px;padding:.8rem;border:1px solid #e7c7ca;border-radius:10px;background:#fff8f8}
@media(max-width:767px){.schedule-day-grid{grid-template-columns:repeat(4,1fr)}.submission-cell{min-width:320px}.submission-detail-grid{grid-template-columns:1fr}.submission-detail-grid dt{margin-top:.35rem}}

/* v1.3 collaborative KJ workflows, scoped administration, and submission review */
.admin-tools-link{color:#ffe7a8!important;font-weight:800!important}
.site-navbar .dropdown-menu{border:0;border-radius:12px;box-shadow:0 14px 35px rgba(15,23,42,.22);padding:.55rem}
.site-navbar .dropdown-item{border-radius:8px;padding:.55rem .75rem}.site-navbar .dropdown-item:hover{background:#f3eef9;color:var(--mk-purple-dark)}
.companion-section{border:1px dashed #b9a8cf;border-radius:14px;background:#fbf9fd;padding:1rem}.companion-section.is-active{border-style:solid;box-shadow:0 8px 22px rgba(99,56,154,.08)}
.submission-review-card{border:1px solid #dfd8e8;border-radius:15px;overflow:hidden;box-shadow:0 7px 20px rgba(38,63,102,.06)}
.submission-review-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;background:linear-gradient(110deg,#f7f4fb,#f2f8f8);padding:1rem 1.15rem}
.submission-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.submission-info-group{border:1px solid #e6dfed;border-radius:12px;background:#fff;padding:.9rem 1rem}
.submission-info-group h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.055em;color:var(--mk-purple-dark);margin:0 0 .65rem;border-bottom:1px solid #eee8f3;padding-bottom:.5rem}
.submission-info-group dl{margin:0}.submission-info-group dl>div{display:grid;grid-template-columns:minmax(120px,38%) 1fr;gap:.65rem;padding:.36rem 0;border-bottom:1px solid #f2eef5}.submission-info-group dl>div:last-child{border-bottom:0}
.submission-info-group dt{font-size:.76rem;text-transform:uppercase;letter-spacing:.025em;color:#667085}.submission-info-group dd{margin:0;overflow-wrap:anywhere;font-weight:500}
.permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.permission-list .list-group-item{border-radius:9px!important;border:1px solid #e5dfeb}
@media(max-width:767px){.submission-review-header{display:block}.submission-review-header>div:last-child{text-align:left!important;margin-top:.6rem}.submission-group-grid,.permission-list{grid-template-columns:1fr}.submission-info-group dl>div{grid-template-columns:1fr;gap:.12rem}}

/* v1.4 maps and messaging */
.show-map{height:520px;border-radius:16px;border:1px solid #d7dce5;overflow:hidden}.message-list-item.unread{border-left:5px solid #63389a;background:#faf7ff}.message-body{white-space:pre-wrap}.message-bubble{border-radius:14px;padding:1rem;background:#f1f4f8}.message-bubble.external{background:#eef7ff}.message-bubble.internal_note{background:#fff8db;border:1px dashed #d5a800}.message-bubble.admin_message{background:#f5efff}.thread-meta{font-size:.875rem;color:#687281}@media(max-width:767px){.show-map{height:420px}}


/* v1.4.1 automatic venue mapping and informative markers */
.mk-map-marker{width:27px;height:27px;cursor:pointer;filter:drop-shadow(0 4px 5px rgba(20,30,45,.3));outline:none}
.mk-map-marker:focus-visible .mk-map-label{outline:3px solid rgba(99,56,154,.35)}
.mk-map-pin{position:relative;display:block;width:27px;height:27px;border-radius:50% 50% 50% 0;background:var(--mk-teal);border:3px solid #fff;transform:rotate(-45deg)}
.mk-map-pin:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;left:7px;top:7px}
.mk-map-label{position:absolute;left:35px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;width:max-content;max-width:190px;padding:.34rem .55rem;border:1px solid rgba(23,37,61,.16);border-radius:9px;background:rgba(255,255,255,.96);color:var(--mk-ink);font-size:.78rem;font-weight:800;line-height:1.1;box-shadow:0 3px 10px rgba(15,23,42,.16)}
.mk-map-label small{margin-top:.18rem;color:#687281;font-size:.68rem;font-weight:600}
.mk-map-popup h3{font-size:1.05rem;margin:0 0 .25rem}.mk-map-popup-location,.mk-map-popup-distance{font-size:.8rem;color:#5f6b78;margin-bottom:.3rem}.mk-map-popup-distance{font-weight:700;color:var(--mk-teal)}
.mk-map-popup ul{list-style:none;padding:0;margin:.65rem 0}.mk-map-popup li{padding:.55rem 0;border-top:1px solid #ece7f1;font-size:.78rem}.mk-map-popup li:first-child{border-top:0;padding-top:0}.mk-map-popup li div{margin-top:.12rem;color:#5f6b78}
.mk-map-popup-actions{display:flex;gap:.8rem;padding-top:.45rem;border-top:1px solid #ece7f1;font-weight:700}.mapboxgl-popup-content{border-radius:13px!important;padding:1rem!important;box-shadow:0 10px 28px rgba(15,23,42,.22)!important}
@media(max-width:767px){.mk-map-label{display:none}.mk-map-pin{width:30px;height:30px}.mk-map-pin:after{left:8px;top:8px}}

/* v1.4.2 Mapbox Standard basemap and visible diagnostics */
.show-map{position:relative;background:#eef1f4}.mk-map-status{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);max-width:min(620px,calc(100% - 2rem));padding:.85rem 1rem;border:1px solid #cfd6df;border-radius:12px;background:rgba(255,255,255,.96);color:#394555;text-align:center;font-weight:700;box-shadow:0 8px 24px rgba(15,23,42,.14)}.mk-map-status.is-error{border-color:#d9aeb2;background:#fff7f7;color:#7b2630}.mk-map-status.d-none{display:none!important}

/* v1.4.3: preserve Mapbox marker positioning; labels no longer change the coordinate anchor */

/* v1.5.0 RC2 navigation and home-listing corrections */
.site-navbar .navbar-nav{gap:.08rem}
.site-navbar .navbar-nav .nav-link{font-size:.9rem;white-space:nowrap}
.nav-account-button{font-weight:800;white-space:nowrap}
.nav-sign-in{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.portal-navbar{background:#fff;border-bottom:1px solid #ddd6e8;box-shadow:0 4px 13px rgba(38,63,102,.08)}
.portal-navbar a{display:inline-flex;align-items:center;min-height:34px;padding:.35rem .7rem;border-radius:8px;color:var(--mk-navy);font-weight:700;text-decoration:none}
.portal-navbar a:hover{background:#f3eef9;color:var(--mk-purple-dark)}
.portal-navbar .portal-admin-link{background:#fff3cd;color:#664d03}
.portal-label{font-size:.76rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#667085;margin-right:.2rem}

.home-show-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.home-show-card{position:relative;display:grid;grid-template-columns:78px 92px minmax(0,1fr) 24px;align-items:center;gap:.9rem;min-height:142px;padding:.9rem 1rem .9rem .75rem;border:1px solid #e3ddea;border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(38,63,102,.055);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.home-show-card:hover{transform:translateY(-2px);border-color:#cfc2df;box-shadow:0 12px 28px rgba(38,63,102,.12)}
.home-show-date{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(145deg,#263f66,#63389a);color:#fff;text-align:center;padding:.45rem .25rem}
.home-show-month{font-size:.68rem;font-weight:900;letter-spacing:.08em}
.home-show-day{font-size:1.7rem;font-weight:900;line-height:1.05}
.home-show-time{font-size:.68rem;line-height:1.15;margin-top:.3rem;color:rgba(255,255,255,.88)}
.home-show-thumb{width:92px;height:92px;border:1px solid #e5dfeb;border-radius:13px;background:#f7f5fa;display:flex;align-items:center;justify-content:center;overflow:hidden}
.home-show-thumb img{display:block;width:100%;height:100%}
.home-show-thumb.is-logo img{object-fit:contain;padding:9px;background:#fff}
.home-show-thumb.is-photo img{object-fit:cover}
.home-show-content{min-width:0}
.home-show-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.35rem}
.home-show-content h3{font-size:1.05rem;line-height:1.2;margin:0 0 .32rem}
.home-show-content h3 a{text-decoration:none;color:var(--mk-purple-dark)}
.home-show-content h3 a:hover{text-decoration:underline}
.home-show-venue{font-weight:800;color:var(--mk-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-show-location{font-size:.86rem;color:#687281}
.home-show-meta{display:flex;flex-wrap:wrap;gap:.35rem .85rem;margin-top:.5rem;font-size:.82rem;color:#465362}
.home-show-meta span+span:before{content:'•';margin-right:.85rem;color:#a69ab5}
.home-show-arrow{font-size:2rem;color:#9a8cab;line-height:1}

@media(max-width:1199px){
  .site-navbar .navbar-nav{gap:0}.site-navbar .navbar-nav .nav-link{font-size:1rem}
  .nav-account-button{display:inline-block;margin-left:0!important}
  .portal-navbar .container{padding-top:.55rem!important;padding-bottom:.55rem!important}
}
@media(max-width:991px){
  .home-show-grid{grid-template-columns:1fr}
}
@media(max-width:575px){
  .home-show-card{grid-template-columns:62px 68px minmax(0,1fr);gap:.65rem;padding:.7rem}
  .home-show-date{min-height:88px}.home-show-day{font-size:1.4rem}.home-show-time{font-size:.6rem}
  .home-show-thumb{width:68px;height:68px}.home-show-arrow{display:none}
  .home-show-meta{display:block}.home-show-meta span{display:block}.home-show-meta span+span{margin-top:.2rem}.home-show-meta span+span:before{content:none}
  .portal-label{width:100%;margin-bottom:.1rem}.portal-navbar a{font-size:.9rem;padding:.3rem .55rem}
}

/* Password visibility and policy controls */
.password-input-group .password-toggle{min-width:2.9rem;display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem;position:relative}
.password-input-group .password-toggle [data-password-slash]{position:absolute;width:1.25rem;height:2px;background:currentColor;transform:rotate(-45deg);border-radius:2px}
.password-policy-list{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin:.45rem 0 0;padding:0;list-style:none;font-size:.82rem;color:#6c757d}
.password-policy-list li::before{content:'○';display:inline-block;width:1rem;margin-right:.18rem}
.password-policy-list li.is-valid{color:#198754}
.password-policy-list li.is-valid::before{content:'✓';font-weight:700}

/* v1.6.0 KJ Resource Center */
.resource-hero{background:linear-gradient(135deg,#203b5b 0%,#4f2f82 58%,#6b3aa0 100%);color:#fff}
.resource-kicker{font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#f5c45a}
.resource-hero .lead{max-width:780px;color:rgba(255,255,255,.88)}
.resource-hero-card{padding:1.25rem;border:1px solid rgba(255,255,255,.24);border-radius:16px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px)}
.resource-hero-card ul{padding-left:1.2rem;color:rgba(255,255,255,.9)}
.resource-filter{border-color:#ddd5e8;box-shadow:0 8px 24px rgba(38,63,102,.07)}
.resource-card{position:relative;border:1px solid #e2dce9;border-radius:16px;box-shadow:0 7px 22px rgba(38,63,102,.06);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;overflow:hidden}
.resource-card:hover{transform:translateY(-3px);border-color:#cbbdde;box-shadow:0 14px 32px rgba(38,63,102,.13)}
.resource-card-locked{background:linear-gradient(160deg,#fff,#f7f4fa)}
.resource-card-locked:after{content:'Locked resource';position:absolute;right:-42px;top:18px;transform:rotate(38deg);width:155px;padding:.16rem 0;background:#4f2f82;color:#fff;text-align:center;font-size:.66rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;pointer-events:none}
.resource-badge-public{background:#dff4ea!important;color:#155f42!important;border:1px solid #bce5d4}
.resource-badge-kj{background:#e7eefb!important;color:#244f86!important;border:1px solid #c9d9f2}
.resource-badge-premium{background:#efe4fb!important;color:#5c268a!important;border:1px solid #dcc4f2}
.resource-access-grid .card{border-radius:15px;border-color:#e3ddea}
.resource-detail .breadcrumb{font-size:.9rem}
.resource-detail .resource-meta-card{top:1rem;border-radius:15px;border-color:#ddd5e8}
.resource-article{font-size:1.04rem;line-height:1.72}
.resource-article h2,.resource-article h3,.resource-article h4{margin-top:1.7em;margin-bottom:.6em;color:#243b61}
.resource-article ul,.resource-article ol{padding-left:1.35rem}
.resource-article li{margin-bottom:.45rem}
.resource-article blockquote{padding:1rem 1.2rem;border-left:4px solid #63389a;background:#f7f3fb;border-radius:0 10px 10px 0}
.resource-article table{width:100%;margin:1.2rem 0;border-collapse:collapse}
.resource-article th,.resource-article td{padding:.65rem;border:1px solid #ddd5e8;vertical-align:top}
.resource-article th{background:#f4f0f8}
.resource-article pre{overflow:auto;padding:1rem;border-radius:10px;background:#17243a;color:#fff}
.resource-gate{border:1px solid #d9c6ed;border-radius:18px;background:linear-gradient(145deg,#fbf8fe,#f0e8f8)}
.resource-lock-icon{font-size:2rem;margin-bottom:.6rem}
.resource-admin-sidebar{position:sticky;top:1rem;padding:1rem;border:1px solid #e1dbe8;border-radius:14px;background:#faf9fb}
@media(max-width:991px){.resource-admin-sidebar{position:static}.resource-detail .resource-meta-card{position:static!important}}

/* v1.6.2 KJ Resource Center privacy and layout refresh */
.resource-shell{background:#f7f8fb;min-height:55vh}
.resource-hero-compact .lead{font-size:1.05rem;max-width:800px}
.resource-access-summary{display:flex;flex-direction:column;gap:.15rem;padding:1rem 1.15rem;border:1px solid rgba(255,255,255,.24);border-radius:14px;background:rgba(255,255,255,.1)}
.resource-access-summary strong{font-size:1.2rem}.resource-access-summary a{color:#fff;font-size:.9rem;font-weight:700}
.resource-tabs{display:flex;gap:.5rem;padding:.45rem;border:1px solid #e2dce9;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(38,63,102,.06);overflow-x:auto}
.resource-tab{display:flex;align-items:center;gap:.45rem;white-space:nowrap;padding:.7rem .95rem;border-radius:11px;color:#34445f;text-decoration:none;font-weight:750}
.resource-tab small{display:inline-flex;align-items:center;justify-content:center;min-width:1.6rem;height:1.35rem;padding:0 .4rem;border-radius:999px;background:#edf0f5;color:#617087;font-size:.72rem}
.resource-tab:hover{background:#f4f1f8;color:#4f2f82}.resource-tab.active{background:#4f2f82;color:#fff}.resource-tab.active small{background:rgba(255,255,255,.18);color:#fff}
.resource-eyebrow{display:block;margin-bottom:.25rem;color:#6b3aa0;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.resource-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.resource-section-heading h2{margin:0;font-size:1.65rem}.resource-section-heading p{margin:.3rem 0 0;color:#667085}.resource-section-heading.compact{align-items:flex-start;margin-bottom:1rem}
.resource-quick-search{display:flex;gap:.5rem;width:min(470px,100%)}.resource-quick-search input{min-width:250px}
.resource-start-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.5rem;align-items:start}.resource-start-main,.resource-start-aside{min-width:0}
.resource-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.resource-category-tile{display:grid;grid-template-columns:48px minmax(0,1fr);gap:.9rem;padding:1.1rem;border:1px solid #e1dbe8;border-radius:15px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 7px 20px rgba(38,63,102,.045);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.resource-category-tile:hover{transform:translateY(-2px);border-color:#cbbdde;box-shadow:0 13px 28px rgba(38,63,102,.09);color:inherit}.resource-category-icon,.resource-feature-icon,.resource-list-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:13px;background:#f1eafa;font-size:1.35rem}
.resource-category-tile h3{margin:0 0 .35rem;font-size:1.05rem;color:#3f286c}.resource-category-tile p{margin:0;color:#667085;font-size:.9rem;line-height:1.45}.resource-category-counts{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-top:.7rem;color:#4e5d72;font-size:.75rem;font-weight:700}
.resource-membership-card{padding:1.25rem;border:1px solid #d9c6ed;border-radius:17px;background:linear-gradient(145deg,#fff,#f2eafa);box-shadow:0 10px 28px rgba(79,47,130,.09)}.resource-membership-card h2{font-size:1.35rem}.resource-membership-card p,.resource-membership-card li{color:#566379}.resource-membership-card ul{padding-left:1.2rem}
.resource-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.resource-feature-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:.9rem;padding:1.05rem;border:1px solid #e1dbe8;border-radius:15px;background:#fff}.resource-feature-card h3{margin:.15rem 0 .35rem;font-size:1.05rem}.resource-feature-card h3 a{color:#4f2f82;text-decoration:none}.resource-feature-card p{margin:0;color:#667085;font-size:.9rem}.resource-row-kicker{color:#667085;font-size:.72rem;font-weight:800;text-transform:uppercase}.resource-open-link{display:inline-block;margin-top:.6rem;color:#4f2f82;font-size:.85rem;font-weight:800}
.resource-account-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.resource-directory-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:1.25rem;align-items:start}.resource-filter-panel{position:sticky;top:1rem;padding:1rem;border:1px solid #e1dbe8;border-radius:14px;background:#fff}.resource-results{min-width:0}.resource-results-bar{display:flex;justify-content:space-between;align-items:center;min-height:42px;margin-bottom:.6rem}.resource-results-bar p{margin:0;color:#667085}
.resource-list{display:flex;flex-direction:column;gap:.65rem}.resource-list-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem;border:1px solid #e1dbe8;border-radius:14px;background:#fff;box-shadow:0 4px 16px rgba(38,63,102,.035)}.resource-list-row:hover{border-color:#cbbdde}.resource-list-content{min-width:0}.resource-row-labels{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;color:#68758a;font-size:.72rem;font-weight:850;text-transform:uppercase}.resource-list-row h3{margin:.25rem 0 .25rem;font-size:1.08rem}.resource-list-row h3 a{color:#4f2f82;text-decoration:none}.resource-list-row p{margin:0;color:#667085;font-size:.9rem;line-height:1.45}.resource-list-meta{display:flex;gap:.45rem 1rem;flex-wrap:wrap;margin-top:.55rem;color:#748096;font-size:.76rem}.resource-list-action{padding:.55rem .7rem;color:#4f2f82;text-decoration:none;font-weight:850;white-space:nowrap}
.resource-locked-collections{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e1dbe8}.resource-locked-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.resource-locked-tile{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.8rem;padding:1rem;border:1px dashed #cbbdde;border-radius:14px;background:#fbf9fd}.resource-lock-mark{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#ede4f7}.resource-locked-tile h3{margin:.25rem 0;font-size:1.02rem}.resource-locked-tile p{margin:0;color:#667085;font-size:.88rem}.resource-locked-footer{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.7rem;font-size:.8rem}.resource-locked-footer a{color:#4f2f82;font-weight:800;text-decoration:none}
.resource-editorial-panel{margin-top:1.4rem;padding:1.25rem;border:1px solid #d9c6ed;border-radius:17px;background:linear-gradient(145deg,#fff,#f5effb)}.resource-editorial-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.resource-editorial-heading h2{margin:0}.resource-rating{display:flex;align-items:baseline;gap:.2rem;padding:.55rem .8rem;border-radius:12px;background:#4f2f82;color:#fff}.resource-rating strong{font-size:1.45rem}.resource-verdict{font-size:1.03rem;line-height:1.6}.resource-review-basis{display:inline-block;padding:.3rem .55rem;border-radius:999px;background:#fff;color:#5f6c80;font-size:.75rem;font-weight:800}.resource-editorial-list{height:100%;padding:1rem;border-radius:13px;background:#fff}.resource-editorial-list h3,.resource-alternatives h3{font-size:1rem}.resource-editorial-list ul,.resource-alternatives ul{margin:0;padding-left:1.15rem}.resource-editorial-list.positive{border-left:4px solid #2f8f67}.resource-editorial-list.caution{border-left:4px solid #d99b1d}.resource-alternatives{margin-top:1rem;padding:1rem;border-radius:13px;background:#fff}
@media(max-width:991px){.resource-start-grid,.resource-directory-layout{grid-template-columns:1fr}.resource-filter-panel{position:static}.resource-start-aside{order:-1}.resource-category-grid,.resource-featured-grid,.resource-locked-grid{grid-template-columns:1fr}.resource-section-heading{align-items:flex-start;flex-direction:column}.resource-quick-search{width:100%}}
@media(max-width:575px){.resource-tabs{border-radius:12px}.resource-tab{padding:.62rem .75rem}.resource-tab small{display:none}.resource-quick-search{flex-direction:column}.resource-quick-search input{min-width:0}.resource-list-row{grid-template-columns:42px minmax(0,1fr)}.resource-list-icon{width:42px;height:42px}.resource-list-action{grid-column:2;padding:0}.resource-category-tile{grid-template-columns:42px minmax(0,1fr)}.resource-category-icon{width:42px;height:42px}}

/* v1.7.0 sponsored placements and engagement controls */
.sponsored-placement{max-width:1180px;margin:1rem auto;padding:.85rem 1rem;border:1px solid #d9deea;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(32,48,76,.08)}
.sponsored-placement>a{display:flex;align-items:center;gap:1rem;color:inherit;text-decoration:none}
.sponsored-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#65708a;font-weight:700;margin-bottom:.35rem}
.sponsored-image-wrap{width:120px;height:80px;display:flex;align-items:center;justify-content:center;flex:0 0 120px;overflow:hidden;border-radius:8px;background:#f7f8fb}.sponsored-image{display:block;width:auto;height:auto;max-width:120px;max-height:80px;object-fit:contain;border-radius:8px}
.sponsored-copy{display:flex;flex-direction:column;gap:.15rem}.sponsored-copy strong{color:#263f66}.sponsored-copy small{color:#6c757d}
.sponsored-featured{border-width:2px}.sponsored-banner{border-radius:0;max-width:none;padding-left:max(1rem,calc((100vw - 1140px)/2));padding-right:max(1rem,calc((100vw - 1140px)/2))}
.favorite-control{display:inline-flex;align-items:center;gap:.4rem}.favorite-control form{margin:0}
.analytics-stat{font-size:1.7rem;font-weight:700;color:#263f66}.permission-grid .form-check{padding:.7rem 1rem .7rem 2.2rem;border:1px solid #e1e5ee;border-radius:8px;margin-bottom:.5rem}
.role-risk-owner,.role-risk-financial{border-left:4px solid #b02a37}.role-risk-sensitive{border-left:4px solid #fd7e14}
.ad-preview{border:1px dashed #9aa6bb;border-radius:10px;padding:1rem;background:#f7f9fc}
@media(max-width:575.98px){.sponsored-placement>a{align-items:flex-start}.sponsored-image-wrap{width:88px;height:66px;flex-basis:88px}.sponsored-image{max-width:88px;max-height:66px}.sponsored-banner{border-radius:0}}


/* v1.7.0.1 responsive administrator-access hotfix */
.admin-access-page{width:100%;max-width:1600px;margin-right:auto;margin-left:auto}
.admin-access-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}
.admin-access-grid>*{min-width:0}
.admin-access-table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.admin-access-table{width:100%;min-width:850px;margin-bottom:.5rem}
.admin-access-table th,.admin-access-table td{vertical-align:middle}
.admin-access-table th:first-child,.admin-access-table td:first-child{min-width:210px}
.admin-access-table th:nth-child(2),.admin-access-table td:nth-child(2){min-width:180px}
.admin-access-table th:nth-child(3),.admin-access-table td:nth-child(3){min-width:95px}
.admin-access-table th:nth-child(4),.admin-access-table td:nth-child(4){min-width:125px}
.admin-access-table th:last-child,.admin-access-table td:last-child{min-width:190px}
.admin-access-table td:last-child .btn,.admin-access-table td:last-child summary{white-space:nowrap}
@media(min-width:1650px){.admin-access-grid{grid-template-columns:minmax(360px,.75fr) minmax(0,1.75fr)}}
@media(max-width:767.98px){.admin-access-page{padding-right:.75rem!important;padding-left:.75rem!important}.admin-access-table{min-width:760px}.admin-revoke-box{max-width:calc(100vw - 4rem)}}


/* v1.7.0.2 responsive admin navigation and advertising workspace */
.admin-site-navbar .brand-panel img{width:205px}
.admin-site-navbar .navbar-collapse,.admin-site-navbar .navbar-nav{min-width:0}
.admin-site-navbar .navbar-nav .nav-link{padding-left:.42rem;padding-right:.42rem}
.advertising-admin-page{width:100%;max-width:1800px;margin-right:auto;margin-left:auto}
.advertising-admin-page .row>*{min-width:0}
.advertising-admin-page .card{min-width:0}
.advertising-campaign-card .form-control,.advertising-campaign-card .form-select{width:100%;min-width:0}
.advertising-campaign-card input[type="file"]{max-width:100%}
.advertising-admin-page .accordion-button>span{min-width:0;overflow-wrap:anywhere}
@media(min-width:1400px) and (max-width:1699.98px){
  .admin-site-navbar .navbar-nav .nav-link{font-size:.78rem;padding-left:.3rem;padding-right:.3rem}
  .admin-site-navbar .admin-badge{font-size:.7rem}
  .admin-site-navbar .brand-panel img{width:180px}
}
@media(min-width:1700px){
  .admin-site-navbar .navbar-nav .nav-link{font-size:.84rem;padding-left:.38rem;padding-right:.38rem}
}
@media(max-width:1399.98px){
  .admin-site-navbar .navbar-collapse{max-height:calc(100vh - 92px);overflow-y:auto;padding-bottom:1rem}
  .admin-site-navbar .navbar-nav{align-items:stretch!important}
  .admin-site-navbar .navbar-nav .nav-link{padding:.55rem .2rem;font-size:1rem}
  .admin-site-navbar .dropdown-menu{position:static!important;float:none;transform:none!important}
}
@media(max-width:767.98px){
  .advertising-admin-page{padding-right:.75rem!important;padding-left:.75rem!important}
  .advertising-campaign-card{padding:1rem}
  .advertising-campaign-card input[type="file"]{font-size:.86rem}
}

/* v1.7.0.3 advertising workflow and usability hotfix */
.advertising-workspace{scroll-behavior:smooth}
.advertising-jump-links{display:flex;flex-wrap:wrap;gap:.55rem}
.advertising-explainer{border-left:4px solid #0dcaf0;background:#f2fbfd}
.advertising-primary-card{border:1px solid #d8cbea;box-shadow:0 12px 32px rgba(79,47,130,.08)}
.advertising-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem 1.35rem;background:linear-gradient(135deg,#faf7fd,#f3eef9)}
.advertising-step-badge{display:inline-block;margin-bottom:.4rem;padding:.25rem .55rem;border-radius:999px;background:#4f2f82;color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.advertising-form-section{margin:0;padding:0 0 1.4rem;border:0;border-bottom:1px solid #e5e7eb}
.advertising-form-section+.advertising-form-section{padding-top:1.4rem}
.advertising-form-section legend{display:flex;align-items:center;gap:.65rem;width:auto;margin:0 0 1rem;padding:0;font-size:1.08rem;font-weight:800;color:#263f66}
.advertising-form-section legend>span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#4f2f82;color:#fff;font-size:.9rem;flex:0 0 auto}
.advertising-live-preview{min-height:100px;background:linear-gradient(135deg,#fff,#f7f3fb);border-color:#b9a5d3}
.advertising-live-preview strong{display:block;font-size:1.08rem;color:#263f66}
.advertising-advanced{border:1px solid #dfe3ea;border-radius:10px;background:#fafbfc}
.advertising-advanced>summary{cursor:pointer;padding:.9rem 1rem;font-weight:750;color:#4f2f82;list-style:none}
.advertising-advanced>summary::-webkit-details-marker{display:none}
.advertising-advanced>summary::after{content:'+';float:right;font-size:1.15rem}
.advertising-advanced[open]>summary{border-bottom:1px solid #e4e7ec}
.advertising-advanced[open]>summary::after{content:'−'}
.advertising-advanced>.row,.advertising-advanced>.form-text{margin-left:.05rem;margin-right:.05rem;padding-left:.85rem;padding-right:.85rem}
.advertising-save-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-radius:12px;background:#f6f3fa}
.advertising-setup-card{overflow:hidden}
.advertising-setup-card>summary{cursor:pointer;padding:1rem 1.15rem;list-style:none;background:#fff}
.advertising-setup-card>summary::-webkit-details-marker{display:none}
.advertising-setup-card>summary>span{display:block;position:relative;padding-right:2rem}
.advertising-setup-card>summary>span::after{content:'+';position:absolute;right:0;top:.15rem;font-size:1.25rem;color:#4f2f82}
.advertising-setup-card[open]>summary>span::after{content:'−'}
.advertising-setup-card>summary strong{display:block;color:#263f66}
.advertising-setup-card>summary small{display:block;margin-top:.2rem;color:#667085}
.advertising-quick-status{max-width:220px}
.advertising-workspace .form-label{font-weight:650;color:#344054}
.advertising-workspace .form-text{color:#667085}
.advertising-workspace .accordion-button>span{min-width:0}
.advertising-workspace .accordion-button small{white-space:normal;overflow-wrap:anywhere}
@media(max-width:767.98px){
  .advertising-jump-links{width:100%}.advertising-jump-links .btn{flex:1 1 auto}
  .advertising-section-header{padding:1rem}
  .advertising-save-bar{align-items:stretch;flex-direction:column}.advertising-save-bar .btn{width:100%}
  .advertising-quick-status{max-width:none;flex:1 1 180px}
}

/* v1.7.1 advertising commerce, history, local targeting, and creative-quality UX */
.advertising-campaign-search{padding:.25rem 0}
.campaign-row-title{display:block;min-width:0}
.campaign-health-panel{border-left-width:4px}
.advertising-workspace form.d-flex{margin:0}
.advertising-customer-page .card{overflow:hidden}
.advertising-customer-page .ad-preview{min-height:90px}
.advertising-local-note{border-left:4px solid #0d6efd}
.advertising-package-price{font-weight:800;color:#263f66}
@media(max-width:767.98px){.advertising-campaign-search .btn{width:100%}.campaign-row-title .badge{margin-left:0!important;margin-top:.35rem}.campaign-row-title>span{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}}

/* v1.7.1.2 advertising venue-details option */
.sponsored-venue-details{display:flex;flex-direction:column;gap:.05rem;margin-top:.25rem;font-size:.84rem;line-height:1.3;color:#4f5b70}
.sponsored-venue-details .sponsored-venue-name{font-weight:700;color:#344765}
