:root{
  --ctc-deep:#070c2b;
  --ctc-navy:#0b1245;
  --ctc-blue:#151f78;
  --ctc-indigo:#1e2d92;
  --ctc-gold:#d8aa36;
  --ctc-gold-soft:#f4e7bf;
  --ink:#11162d;
  --muted:#697086;
  --line:#e5e8ef;
  --bg:#f7f8fb;
  --white:#fff;
  --danger:#a73a45;
  --success:#17875f;
  --shadow:0 10px 28px rgba(9,16,54,.08);
  --shadow-strong:0 20px 55px rgba(6,12,45,.16);
  --radius:10px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",Inter,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(1220px,92vw);margin:auto}

/* Shared CTC masthead */
.site-header,.admin-header{background:linear-gradient(90deg,#080d33 0%,#11195f 58%,#0d1450 100%);color:#fff;border-bottom:1px solid rgba(255,255,255,.13);position:sticky;top:0;z-index:50;box-shadow:0 4px 20px rgba(2,7,29,.14)}
.nav,.admin-nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:13px;min-width:max-content}
.brand img{height:50px;max-width:230px;object-fit:contain}
.brand-mark{display:grid;place-items:center;width:48px;height:48px;background:linear-gradient(145deg,#17258f,#0a124e);border:1px solid rgba(255,255,255,.10);color:#fff;font-weight:800;border-radius:5px;letter-spacing:.5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.brand-copy b{display:block;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.05;font-weight:500;letter-spacing:.2px}
.brand-copy small{display:block;color:var(--ctc-gold);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-top:5px}
.nav nav,.admin-links{display:flex;gap:6px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.45px;text-transform:uppercase}
.nav nav>a,.admin-links>a{color:#edf0ff;padding:29px 14px 25px;position:relative;opacity:.92}
.nav nav>a:hover,.admin-links>a:hover{color:#fff;opacity:1}
.nav nav>a.active,.admin-links>a.active{color:var(--ctc-gold)}
.nav nav>a.active:after,.admin-links>a.active:after{content:"";position:absolute;left:14px;right:14px;bottom:14px;height:2px;background:var(--ctc-gold)}
.header-cta,.admin-create{background:var(--ctc-gold)!important;color:#10163d!important;border-radius:3px!important;padding:12px 18px!important;margin-left:12px;box-shadow:0 6px 16px rgba(216,170,54,.18)}
.header-cta:after,.admin-create:after{display:none!important}
.admin-user{display:flex;align-items:center;gap:9px;margin-left:8px;color:#fff;font-size:13px;white-space:nowrap}
.admin-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#11196c;font-weight:800;border:1px solid rgba(255,255,255,.08)}

/* CTC hero/banner treatment */
.hero,.admin-banner{position:relative;overflow:hidden;color:#fff;background:
  linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
  radial-gradient(circle at 72% 20%,rgba(40,58,184,.55),transparent 34%),
  linear-gradient(105deg,#080d37 0%,#101762 58%,#171f78 100%);
  background-size:54px 54px,54px 54px,auto,auto;
}
.hero{padding:78px 0 70px}
.hero:after,.admin-banner:after{content:"";position:absolute;width:560px;height:560px;border-radius:50%;border:1px solid rgba(216,170,54,.20);right:-100px;top:-250px;box-shadow:0 0 0 44px rgba(216,170,54,.035),0 0 0 88px rgba(216,170,54,.025)}
.hero .container,.admin-banner .admin-container{position:relative;z-index:2}
.eyebrow{color:var(--ctc-gold);font-weight:800;text-transform:uppercase;letter-spacing:1.6px;font-size:11px}
.hero h1,.admin-banner h1,.event-title{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.7px}
.hero h1{font-size:clamp(42px,5.3vw,68px);max-width:880px;line-height:1.04;margin:11px 0 18px}
.hero p{max-width:760px;color:#cbd0e7;font-size:17px;margin:0}
.hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:5px;padding:12px 18px;font-weight:750;cursor:pointer;background:var(--ctc-navy);color:#fff;transition:.18s ease;box-shadow:none}
.btn:hover{transform:translateY(-1px);box-shadow:0 7px 16px rgba(8,14,54,.12)}
.btn-gold{background:var(--ctc-gold);color:#12163a;border-color:var(--ctc-gold)}
.btn-outline{border:1px solid #d3d8e4;background:#fff;color:var(--ctc-navy)}
.site-header .btn-outline{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff}
.btn-sm{padding:8px 12px;font-size:12px}

.section{padding:58px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
.section h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;color:var(--ctc-navy);font-size:34px;margin:0}
.section-head p{color:var(--muted);max-width:610px;margin:8px 0 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.event-card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:.2s ease}
.event-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-strong)}
.event-card img{width:100%;height:220px;object-fit:cover;background:#e4e8f1}
.event-art{height:220px;background:linear-gradient(135deg,var(--ctc-navy),var(--ctc-indigo));display:grid;place-items:center;color:#fff;font-family:Georgia,serif;font-size:25px;padding:28px;text-align:center;position:relative;overflow:hidden}
.event-art:after{content:"";position:absolute;width:200px;height:200px;border:1px solid rgba(216,170,54,.26);border-radius:50%;right:-70px;bottom:-90px;box-shadow:0 0 0 30px rgba(216,170,54,.03)}
.card-body{padding:22px;display:flex;flex-direction:column;flex:1}
.date-pill{font-size:11px;color:#ad8120;font-weight:800;text-transform:uppercase;letter-spacing:1px}
.event-card h3{font-family:Georgia,serif;font-weight:600;font-size:21px;line-height:1.25;color:var(--ctc-navy);margin:9px 0}
.meta{display:flex;gap:9px;flex-wrap:wrap;color:var(--muted);font-size:13px}
.card-footer{margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.price{font-weight:800;color:var(--ctc-navy)}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#f1f3fa;color:var(--ctc-navy);font-weight:750;font-size:11px;letter-spacing:.35px}

.event-hero{background:linear-gradient(105deg,#090e38,#121a67);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);padding:52px 0;position:relative;overflow:hidden}
.event-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:54px 54px;pointer-events:none}
.event-hero .container{position:relative;z-index:2}
.event-title{color:#fff;font-size:48px;line-height:1.08;margin:10px 0 16px;max-width:940px}
.lead{font-size:18px;color:#cbd0e4;max-width:860px}
.info-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.13);border-radius:7px;overflow:hidden;margin-top:28px;max-width:1020px}
.info-strip>div{background:rgba(5,10,40,.38);padding:17px}
.info-strip small{display:block;color:var(--ctc-gold);text-transform:uppercase;font-size:9px;font-weight:800;letter-spacing:1.1px}
.info-strip strong{color:#fff;font-weight:650}
.event-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:34px}
.prose{background:#fff;border:1px solid var(--line);border-radius:8px;padding:30px;margin-bottom:20px;box-shadow:0 5px 18px rgba(10,15,55,.035)}
.prose h2,.prose h3{color:var(--ctc-navy);font-family:Georgia,serif;font-weight:600}
.prose h2{font-size:26px;border-bottom:1px solid var(--line);padding-bottom:12px}
.side-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--ctc-gold);border-radius:8px;padding:24px;box-shadow:var(--shadow-strong);position:sticky;top:104px}
.side-card .fee{font-size:30px;font-weight:850;color:var(--ctc-navy);margin:14px 0}
.side-card .btn{width:100%;margin-top:15px}

.form-card{max-width:850px;margin:38px auto;background:#fff;border:1px solid var(--line);border-top:3px solid var(--ctc-gold);border-radius:8px;padding:30px;box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.field label{display:block;font-weight:700;color:#232a46;font-size:12px;margin-bottom:6px;letter-spacing:.1px}
.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #d4d8e2;border-radius:5px;background:#fff;color:#171c35;outline:none;transition:.15s ease}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#737cbc;box-shadow:0 0 0 3px rgba(28,40,128,.08)}
.field textarea{min-height:115px;resize:vertical}
.field.full{grid-column:1/-1}
.notice{padding:13px 15px;border-left:3px solid var(--success);border-radius:4px;background:#eef8f4;color:var(--success);margin:12px 0}
.notice.error{border-color:var(--danger);background:#fff0f1;color:var(--danger)}
.empty{padding:42px;text-align:center;background:#fff;border:1px dashed #cfd4df;border-radius:8px;color:var(--muted)}
.tabs{display:flex;gap:8px;flex-wrap:wrap}
.tabs a{padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:4px;font-weight:700;font-size:12px;color:var(--ctc-navy)}

footer{background:#070c2d;color:#cbd0df;padding:50px 0;margin-top:70px;border-top:3px solid var(--ctc-gold)}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px}
footer strong{font-family:Georgia,serif;font-size:22px;color:#fff;font-weight:500}
footer p{margin:8px 0;color:#aeb5cc}

/* Admin: CRMS-style horizontal shell */
.admin-shell{min-height:100vh;background:#f7f8fb}
.admin-header{position:sticky;top:0}
.admin-container{width:min(1420px,94vw);margin:auto}
.admin-brand{display:flex;align-items:center;gap:12px;min-width:285px}
.admin-brand .brand-mark{width:43px;height:43px}
.admin-brand-title{font-family:Georgia,"Times New Roman",serif;font-size:20px;font-weight:500;line-height:1;color:#fff}
.admin-brand-sub{font-size:9px;color:var(--ctc-gold);font-weight:800;letter-spacing:1.8px;text-transform:uppercase;margin-top:5px}
.admin-banner{padding:28px 0 58px}
.admin-breadcrumb{font-size:12px;color:#aab0cf;margin-bottom:8px}
.admin-breadcrumb span{color:var(--ctc-gold);font-weight:700}
.admin-banner h1{font-size:44px;line-height:1.08;margin:0;color:#fff}
.admin-banner p{color:#bdc3dd;margin:10px 0 0;max-width:720px}
.admin-main{width:min(1420px,94vw);margin:-28px auto 0;padding:0 0 56px;position:relative;z-index:5}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin:0 0 22px}
.stat{background:#fff;border:1px solid var(--line);border-radius:7px;padding:18px 20px;box-shadow:0 7px 20px rgba(8,14,55,.07);display:grid;grid-template-columns:52px 1fr;align-items:center;column-gap:15px;min-height:112px}
.stat:before{content:"";width:50px;height:50px;border-radius:50%;background:radial-gradient(circle,#fff 43%,transparent 45%),linear-gradient(135deg,#f3ead1,#fff8e7);border:1px solid #f1e2b8;grid-row:1/3;grid-column:1}
.stat span{grid-column:2;color:#5f657a;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.8px}
.stat strong{grid-column:2;display:block;font-size:29px;line-height:1.05;color:#111735;font-weight:500}
.admin-card{background:#fff;border:1px solid var(--line);border-radius:7px;padding:22px;margin-bottom:20px;box-shadow:0 5px 18px rgba(8,14,55,.045)}
.admin-card h2{font-family:Georgia,serif;font-weight:600;color:#171d48;font-size:20px;margin:0 0 16px;display:flex;align-items:center;gap:9px}
.admin-card h2:before{content:"";width:16px;height:2px;background:var(--ctc-gold);display:inline-block}
.admin-card>p:last-child{color:var(--muted)}
.admin-card .btn+.btn{margin-left:5px}
.filters{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}

.admin-main>p:first-child{margin-top:0}
table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;box-shadow:0 4px 16px rgba(8,14,55,.035)}
th,td{padding:13px 14px;border-bottom:1px solid #eceef4;text-align:left;font-size:12px;vertical-align:middle}
th{background:#fbfbfd;color:#343a58;text-transform:uppercase;font-size:9px;letter-spacing:.8px;font-weight:800}
tr:last-child td{border-bottom:0}
tr:hover td{background:#fcfcff}
.actions{display:flex;gap:6px;flex-wrap:wrap}

/* Login */
body.admin-login{min-height:100vh;background:linear-gradient(135deg,#080d38,#171f78);display:grid;place-items:center;padding:30px;position:relative;overflow:hidden}
body.admin-login:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px}
body.admin-login .form-card{width:min(460px,92vw);margin:0;position:relative;z-index:2;padding:34px}
body.admin-login h1{font-family:Georgia,serif;font-weight:500;color:var(--ctc-navy);font-size:34px;margin:7px 0 22px}

@media(max-width:1100px){
  .admin-brand{min-width:auto}.admin-links{gap:0}.admin-links>a{padding-left:9px;padding-right:9px}.admin-create{display:none}
  .stats{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr 1fr}.event-layout{grid-template-columns:1fr}.side-card{position:static}
}
@media(max-width:820px){
  .admin-links{display:none}.admin-nav{min-height:72px}.nav nav a:not(.header-cta){display:none}.nav{min-height:72px}
  .info-strip{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
  .admin-banner h1{font-size:38px}.admin-main{margin-top:-20px}
  table{display:block;overflow-x:auto;white-space:nowrap}
}
@media(max-width:580px){
  .grid,.stats,.footer-grid{grid-template-columns:1fr}.hero{padding:55px 0}.event-title{font-size:36px}.info-strip{grid-template-columns:1fr}
  .admin-user span:last-child{display:none}.admin-banner{padding:24px 0 46px}.admin-banner h1{font-size:34px}.admin-main{width:92vw}
  .brand-copy small{display:none}.brand-copy b{font-size:18px}.brand-mark{width:42px;height:42px}
}

/* v1.2.0 operational dashboard + event builder */
.admin-banner{padding:22px 0 44px}
.admin-banner h1{font-size:39px}
.admin-banner p{margin-top:7px}
.admin-main{margin-top:-22px}
.stats-compact{gap:14px;margin-bottom:16px}
.stat-compact{min-height:88px;padding:15px 18px;grid-template-columns:1fr;display:block;border-top:2px solid #e8bf4d}
.stat-compact:before{display:none}
.stat-compact span,.stat-compact strong{grid-column:auto}
.stat-compact strong{font-size:27px;margin-top:6px;font-family:Georgia,serif}
.stat-compact small{display:block;color:#8a8fa2;font-size:10px;margin-top:4px}
.dashboard-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:16px;align-items:start}
.dashboard-panel{margin-bottom:0;min-width:0}
.dashboard-wide{grid-column:1/-1}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.panel-head h2{margin:0}.panel-head a{font-size:11px;font-weight:800;color:#263899;text-transform:uppercase;letter-spacing:.5px}
.table-wrap{overflow:auto}.dashboard-table{box-shadow:none;border:0;border-radius:0}.dashboard-table th:first-child,.dashboard-table td:first-child{padding-left:0}.dashboard-table th:last-child,.dashboard-table td:last-child{padding-right:0}
.table-link{font-weight:750;color:#141b51}.panel-empty{padding:25px 8px;color:#757b91;font-size:13px}.panel-empty a{font-weight:750}
.activity-list{display:grid}.activity-row{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #eceef4}.activity-row:last-child{border-bottom:0}.activity-row strong{display:block;color:#161d4d;font-size:12px}.activity-row>div>span{display:block;color:#7b8093;font-size:11px;margin-top:3px}.activity-meta{text-align:right;min-width:105px}.activity-meta>span:first-child{margin-bottom:6px}
.status-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.45px;background:#f0f2f7;color:#596074}.status-badge.published,.status-badge.paid,.status-badge.not_required,.status-badge.complimentary{background:#edf8f3;color:#187552}.status-badge.pending{background:#fff7df;color:#996a00}.status-badge.failed,.status-badge.refunded{background:#fff0f1;color:#a33543}
.attention-stack{display:grid;grid-template-columns:1fr 1fr;gap:10px}.attention-item{border:1px solid #eceef4;background:#fbfbfd;border-radius:6px;padding:14px}.attention-item strong{display:block;font-family:Georgia,serif;font-size:27px;color:#151c4c}.attention-item span{display:block;font-size:10px;color:#73798e;min-height:28px}.attention-item a{display:inline-block;margin-top:8px;font-size:10px;font-weight:850;text-transform:uppercase;color:#263899}
.capacity-list{margin-top:14px}.capacity-item{margin:11px 0}.capacity-item>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#555c73}.capacity-item b{color:#1d244e}.capacity-bar{height:5px;background:#eceef4;border-radius:99px;overflow:hidden;margin-top:6px}.capacity-bar i{display:block;height:100%;background:#d4a92d;border-radius:inherit}
.quick-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick-action{border:1px solid #e1e4ec;border-radius:7px;padding:14px;color:#161c4a;background:#fbfbfd;transition:.15s}.quick-action:hover{transform:translateY(-1px);box-shadow:0 6px 15px rgba(12,18,61,.06)}.quick-action.primary{background:#11185b;color:#fff;border-color:#11185b}.quick-action b{display:block;font-size:12px}.quick-action span{display:block;font-size:10px;line-height:1.4;color:#7a8094;margin-top:5px}.quick-action.primary span{color:#c8cce0}

.event-builder{padding-bottom:30px}.builder-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px 20px;margin-bottom:12px}.builder-toolbar h2{font-family:Georgia,serif;color:#151b4c;font-size:25px;margin:3px 0 5px}.builder-toolbar p{margin:0;color:#777d91;font-size:12px}.builder-toolbar-actions{display:flex;gap:8px;flex-shrink:0}.eyebrow{font-size:9px;letter-spacing:1.5px;font-weight:900;color:#b78412}
.builder-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#dfe2eb;border:1px solid #dfe2eb;border-radius:7px;overflow:hidden;margin-bottom:14px}.builder-tab{appearance:none;border:0;background:#fff;color:#60667a;padding:11px 12px;font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.45px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px}.builder-tab span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#f1f2f6;color:#71778a}.builder-tab.active{background:#11185b;color:#fff}.builder-tab.active span{background:#d9aa31;color:#101641}
.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:16px;align-items:start}.builder-section{display:none}.builder-section.active{display:block}.builder-section .admin-card{margin-bottom:0}.section-intro{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:20px;border-bottom:1px solid #eceef4;padding-bottom:14px}.section-intro h2{margin-bottom:5px}.section-intro p{margin:0;color:#7b8092;font-size:11px}.step-pill{font-size:9px;font-weight:850;text-transform:uppercase;color:#8c6716;background:#fff7df;border:1px solid #f2dfaa;border-radius:99px;padding:5px 8px;white-space:nowrap}
.field small{display:block;margin-top:5px;color:#969aac;font-size:9px}.builder-next,.builder-nav{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid #eceef4}.builder-nav{justify-content:space-between}.privacy-note{display:flex;gap:10px;padding:11px 13px;background:#f6f7fb;border-left:3px solid #d4a92d;border-radius:4px;margin-top:16px}.privacy-note b{font-size:10px;color:#1b2251;white-space:nowrap}.privacy-note span{font-size:10px;color:#747a8e}
.toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.switch-row,.check-card{display:flex;align-items:flex-start;gap:10px;border:1px solid #e1e4ec;border-radius:6px;padding:13px;background:#fbfbfd;cursor:pointer}.switch-row input,.check-card input{margin-top:3px}.switch-row b,.check-card b{display:block;color:#1a214e;font-size:11px}.switch-row small,.check-card small{display:block;color:#858a9d;font-size:9px;margin-top:3px}.publish-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.publish-summary>div{background:#f7f8fb;border:1px solid #e8eaf0;border-radius:6px;padding:12px}.publish-summary span{display:block;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.7px;color:#8a8fa1}.publish-summary strong{display:block;margin-top:5px;font-size:10px;color:#19204d;word-break:break-all}
.preview-sticky{position:sticky;top:90px}.preview-label{font-size:9px;font-weight:900;letter-spacing:1.4px;color:#9b731e;margin:0 0 8px 2px}.preview-card{background:#fff;border:1px solid #dfe2ea;border-radius:8px;overflow:hidden;box-shadow:0 9px 25px rgba(8,14,55,.08)}.preview-art{height:118px;background:linear-gradient(135deg,#090f45,#27399a);display:flex;align-items:flex-end;padding:15px;position:relative;overflow:hidden}.preview-art:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(218,171,47,.34);border-radius:50%;right:-55px;top:-65px;box-shadow:0 0 0 22px rgba(218,171,47,.04)}.preview-art span{position:relative;z-index:2;background:#d8aa36;color:#111642;padding:4px 7px;border-radius:3px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.5px}.preview-body{padding:16px}.preview-date{font-size:8px;font-weight:900;color:#b57f13;text-transform:uppercase;letter-spacing:.8px}.preview-body h3{font-family:Georgia,serif;color:#121946;font-size:20px;line-height:1.16;margin:7px 0}.preview-body p{font-size:10px;line-height:1.45;color:#71778c;min-height:43px}.preview-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.preview-meta span{font-size:8px;background:#f2f3f7;color:#4c536d;padding:4px 6px;border-radius:99px}.preview-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #eceef4;margin-top:14px;padding-top:12px}.preview-footer strong{font-size:12px;color:#171e4d}.preview-footer span{font-size:9px;font-weight:850;color:#253991}.preview-hint{font-size:9px;line-height:1.5;color:#8a8fa0;margin-top:10px;padding:0 2px}
@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.builder-layout{grid-template-columns:1fr}.builder-preview{order:-1}.preview-sticky{position:static}.preview-card{max-width:420px}.builder-toolbar{align-items:flex-start}.builder-tabs{overflow-x:auto;display:flex}.builder-tab{min-width:125px;flex:1}.quick-action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.builder-toolbar{display:block}.builder-toolbar-actions{margin-top:14px}.toggle-grid,.publish-summary,.quick-action-grid{grid-template-columns:1fr}.builder-tabs{justify-content:flex-start}.dashboard-grid{display:block}.dashboard-panel{margin-bottom:14px}.attention-stack{grid-template-columns:1fr 1fr}}

/* v1.3.0 public experience */
.public-home-hero{padding:68px 0 62px}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:60px;align-items:end}.hero-proof{display:grid;grid-template-columns:1fr;gap:10px}.hero-proof>div{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);padding:15px 18px;border-radius:6px;backdrop-filter:blur(2px)}.hero-proof strong{display:block;color:#fff;font-family:Georgia,serif;font-size:27px;font-weight:500;line-height:1}.hero-proof span{display:block;color:#bfc5df;font-size:10px;text-transform:uppercase;letter-spacing:.9px;margin-top:5px}.public-ghost{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.055);color:#fff}.featured-event-section{margin-top:-24px;position:relative;z-index:4}.featured-event{display:grid;grid-template-columns:44% 56%;background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;box-shadow:var(--shadow-strong)}.featured-visual{min-height:330px;background:#10175b}.featured-visual img{width:100%;height:100%;min-height:330px;object-fit:cover}.featured-art{height:100%;min-height:330px;background:linear-gradient(135deg,#0b1247,#21349b);position:relative;display:flex;align-items:flex-end;padding:28px;color:#fff}.featured-art:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(216,170,54,.25);border-radius:50%;right:-80px;top:-85px;box-shadow:0 0 0 36px rgba(216,170,54,.035)}.featured-art span{position:relative;z-index:2;background:var(--ctc-gold);color:#111642;padding:6px 9px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.6px;border-radius:3px}.featured-copy{padding:38px 42px;display:flex;flex-direction:column;justify-content:center}.featured-kicker{margin-top:13px;color:#7a8091;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.5px}.featured-copy h2{font-family:Georgia,serif;color:var(--ctc-navy);font-size:34px;line-height:1.12;margin:10px 0 12px;font-weight:500}.featured-copy>p{color:#687087;margin:0;font-size:14px}.featured-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.featured-bottom>strong{font-family:Georgia,serif;color:var(--ctc-navy);font-size:24px}.public-events-section{padding-top:50px}.public-section-head{margin-bottom:20px}.event-filters{display:grid;grid-template-columns:minmax(280px,1.6fr) minmax(180px,.7fr) minmax(150px,.55fr) auto auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);padding:14px;border-radius:7px;margin-bottom:12px;box-shadow:0 4px 14px rgba(9,15,50,.03)}.event-filters label{display:block;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.55px;color:#6d7387;margin:0 0 5px 2px}.event-filters input,.event-filters select{width:100%;border:1px solid #d9dce5;background:#fbfbfc;border-radius:4px;padding:10px 11px;color:#1c2348;outline:0}.event-filters input:focus,.event-filters select:focus{border-color:#6974bb;box-shadow:0 0 0 3px rgba(22,31,116,.06)}.filter-reset{align-self:center;font-size:11px;color:#7f8495;font-weight:700;padding:10px 3px}.view-tabs{display:flex;gap:7px;margin:0 0 22px}.view-tabs a{background:#fff;border:1px solid var(--line);padding:7px 12px;border-radius:4px;font-size:11px;font-weight:800;color:#555d77}.view-tabs a.active{background:#11185b;border-color:#11185b;color:#fff}.public-event-grid{grid-template-columns:repeat(3,1fr)}.public-event-card .event-art{display:flex;align-items:flex-end;justify-content:flex-start;text-align:left}.public-event-card .event-art span{position:relative;z-index:2}.card-topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.event-status-mini{font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.5px;color:#1f7555;background:#edf8f3;border-radius:99px;padding:4px 7px}.event-status-mini.past{background:#f0f1f5;color:#70758a}.card-description{font-size:12px;color:#72788d;line-height:1.5;margin:0 0 14px;min-height:54px}.public-event-card .meta span{background:#f4f5f8;border-radius:99px;padding:4px 7px;font-size:10px}.card-link{font-size:10px;text-transform:uppercase;letter-spacing:.45px;font-weight:900;color:#263899}.public-empty{display:flex;flex-direction:column;gap:4px}.public-empty strong{color:#283057}.public-empty span{font-size:12px}.public-cta{background:linear-gradient(105deg,#090e38,#151e77);padding:40px 0;color:#fff;margin-top:8px}.public-cta .container{display:flex;align-items:center;justify-content:space-between;gap:28px}.public-cta h2{font-family:Georgia,serif;font-size:30px;font-weight:500;margin:5px 0 6px}.public-cta p{color:#c4c9df;margin:0;font-size:13px}
.premium-event-hero{padding:38px 0 30px}.event-breadcrumb{display:flex;gap:8px;align-items:center;color:#9ba4ca;font-size:10px;margin-bottom:20px}.event-breadcrumb a{color:var(--ctc-gold);font-weight:800}.event-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:center}.event-hero-grid .event-title{font-size:46px}.event-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.event-hero-image{border:1px solid rgba(255,255,255,.13);border-radius:7px;overflow:hidden;box-shadow:0 20px 45px rgba(0,0,0,.18);aspect-ratio:16/10}.event-hero-image img{width:100%;height:100%;object-fit:cover}.event-info-strip{grid-template-columns:repeat(5,1fr);max-width:none;margin-top:26px}.event-nav-wrap{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:82px;z-index:30}.event-anchor-nav{display:flex;gap:24px;overflow:auto;white-space:nowrap}.event-anchor-nav a{padding:13px 0;font-size:10px;text-transform:uppercase;font-weight:850;letter-spacing:.45px;color:#626981}.event-anchor-nav a:hover{color:#16216f}.event-detail-section{padding-top:34px}.event-intro h2{font-size:30px}.formatted-lines,.agenda-content{color:#4f566e;line-height:1.8}.facilitator-card{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:start}.facilitator-card img{width:120px;height:120px;border-radius:6px;object-fit:cover;border:1px solid var(--line)}.facilitator-card h2{border:0;padding:0;margin:0 0 3px}.facilitator-role{font-weight:750;color:#30385e;margin:0}.facilitator-quals{font-size:12px;color:#73798d}.premium-side-card{padding:26px}.premium-side-card .fee{font-family:Georgia,serif;font-size:32px}.early-bird{font-size:10px;color:#9a6f10;background:#fff8e7;border:1px solid #f1dfaa;border-radius:4px;padding:8px 10px}.side-facts{display:grid;border-top:1px solid #eceef4;margin-top:16px}.side-facts>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid #eceef4}.side-facts span{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:#8a8fa0;font-weight:800}.side-facts strong{font-size:11px;text-align:right;color:#1b2250}.secure-note{font-size:9px;color:#898fa2;text-align:center;margin:8px 0 0}
.registration-page{padding:36px 0 20px}.registration-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.registration-heading{margin-bottom:18px}.registration-heading h1,.success-card h1{font-family:Georgia,serif;color:#11184a;font-size:36px;font-weight:500;margin:5px 0 7px}.registration-heading p{margin:0;color:#73798d}.registration-form{display:grid;gap:14px}.form-section{background:#fff;border:1px solid var(--line);border-radius:7px;padding:22px;box-shadow:0 5px 16px rgba(9,15,54,.035)}.form-section-head{display:flex;gap:12px;align-items:flex-start;padding-bottom:15px;margin-bottom:17px;border-bottom:1px solid #eceef4}.form-section-head>span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#11185b;color:#fff;font-size:11px;font-weight:850;flex:0 0 auto}.form-section-head h2{font-family:Georgia,serif;color:#171e4d;font-size:21px;margin:0}.form-section-head p{font-size:10px;color:#858a9c;margin:3px 0 0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice-card{display:flex;gap:9px;border:1px solid #dfe2e9;border-radius:6px;padding:12px;background:#fbfbfc;cursor:pointer}.choice-card input{margin-top:4px}.choice-card b{display:block;font-size:11px;color:#1c234e}.choice-card small{display:block;font-size:9px;color:#83899b;margin-top:2px}.participant-count-field{max-width:220px;margin-top:13px}.check-line label{display:flex;align-items:center;gap:8px}.check-line input{width:auto}.registration-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#10175b;color:#fff;border-radius:7px;padding:17px 20px}.registration-submit p{font-size:10px;color:#c6cbe1;margin:0;max-width:580px}.registration-summary{position:sticky;top:100px}.registration-side-card{position:static}.registration-side-card h2{font-family:Georgia,serif;color:#171e4d;font-size:22px;line-height:1.25;margin:8px 0 14px}.registration-price{display:flex;justify-content:space-between;align-items:center;margin:16px 0 0;padding-top:15px;border-top:2px solid #e6ba45}.registration-price span{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:#858a9b;font-weight:800}.registration-price strong{font-family:Georgia,serif;font-size:23px;color:#141b4a}.payment-phase-note{font-size:9px;color:#7f8497;background:#f7f8fb;border-radius:4px;padding:9px 10px;margin-top:12px}.registration-success{padding:60px 0}.success-card{max-width:680px;margin:auto;background:#fff;border:1px solid var(--line);border-top:3px solid var(--ctc-gold);border-radius:8px;padding:34px;box-shadow:var(--shadow-strong);text-align:center}.success-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#edf8f3;color:#19805b;font-size:24px;margin:0 auto 15px}.reference-box{background:#f7f8fb;border:1px solid #e7e9ef;border-radius:6px;padding:13px;margin:18px 0}.reference-box span{display:block;font-size:8px;text-transform:uppercase;font-weight:850;letter-spacing:.6px;color:#8a8fa0}.reference-box strong{display:block;color:#161e51;font-size:18px;margin-top:3px}.success-actions{display:flex;justify-content:center;gap:8px;margin-top:20px}
@media(max-width:1050px){.hero-grid,.event-hero-grid{grid-template-columns:1fr}.hero-proof{grid-template-columns:repeat(3,1fr)}.event-hero-image{max-width:600px}.featured-event{grid-template-columns:1fr}.featured-visual,.featured-visual img,.featured-art{min-height:280px}.event-filters{grid-template-columns:1fr 1fr 1fr auto}.filter-reset{grid-column:1/-1}.registration-layout{grid-template-columns:1fr}.registration-summary{position:static;order:-1}.registration-side-card{max-width:520px}.event-info-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.public-event-grid{grid-template-columns:1fr 1fr}.hero-proof{grid-template-columns:1fr 1fr 1fr}.featured-copy{padding:28px}.event-filters{grid-template-columns:1fr 1fr}.event-filters .btn{align-self:end}.event-anchor-nav{gap:18px}.event-nav-wrap{top:72px}.facilitator-card{grid-template-columns:90px 1fr}.facilitator-card img{width:90px;height:90px}.registration-submit{display:block}.registration-submit .btn{margin-top:12px}.public-cta .container{display:block}.public-cta .btn{margin-top:18px}}
@media(max-width:580px){.public-event-grid{grid-template-columns:1fr}.hero-grid{gap:28px}.hero-proof{grid-template-columns:1fr}.featured-copy h2{font-size:28px}.featured-bottom{display:block}.featured-bottom .btn{margin-top:14px;width:100%}.event-filters{grid-template-columns:1fr}.event-info-strip{grid-template-columns:1fr 1fr}.event-hero-grid .event-title{font-size:35px}.choice-grid{grid-template-columns:1fr}.facilitator-card{grid-template-columns:1fr}.facilitator-card img{width:110px;height:110px}.success-actions{display:grid}.registration-heading h1,.success-card h1{font-size:30px}}

/* v1.3.1 public polish */
.is-hidden{display:none!important}.field-help{display:block;color:#858b9d;font-size:9px;margin-top:5px}.registration-page{padding:46px 0 34px}.registration-heading{padding-top:2px}.registration-form{gap:12px}.form-section{padding:20px}.registration-submit{margin-top:2px}.registration-side-card .side-facts>div strong{max-width:180px}.registration-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px}.filter-pills{display:flex;gap:6px}.filter-pills a{border:1px solid #dfe2ea;background:#fff;color:#596079;padding:7px 11px;border-radius:5px;font-size:11px;font-weight:800}.filter-pills a.active{background:#11185b;border-color:#11185b;color:#fff}.table-wrap{overflow:auto;border-radius:8px}.status-badge.confirmed{background:#edf8f3;color:#18714f}.status-badge.pending{background:#fff7e4;color:#9a6b0d}.status-badge.paid{background:#edf8f3;color:#18714f}.status-badge.not_required{background:#eef1f6;color:#5f667a}
@media(max-width:700px){.registration-toolbar{align-items:stretch;flex-direction:column}.filter-pills{overflow:auto}.registration-page{padding-top:30px}}
/* v1.4.0 Payment Framework */
.payment-page{padding:52px 0 80px}.payment-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}.payment-main{min-width:0}.payment-section,.payment-complete-card{background:#fff;border:1px solid #dfe4ef;border-radius:12px;padding:28px;margin:0 0 22px;box-shadow:0 12px 30px rgba(16,24,79,.05)}.gateway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gateway-card{border:1px solid #dfe4ef;border-radius:10px;padding:20px;background:#fff}.gateway-card.disabled{background:#f8f9fc;opacity:.72}.gateway-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.gateway-card-head strong{font-size:18px;color:#111957}.gateway-state{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:6px 8px;border-radius:999px}.gateway-state.ready{background:#eaf7ef;color:#17643a}.gateway-state.pending{background:#f0f1f7;color:#6d748b}.gateway-card p{color:#6b7288;min-height:48px}.gateway-card button[disabled]{cursor:not-allowed}.selected-payment .section-intro{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.bank-instructions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.bank-instructions>div{border:1px solid #e2e5ee;background:#f8f9fc;padding:14px;border-radius:8px}.bank-instructions span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7e8498;font-weight:800;margin-bottom:5px}.bank-instructions strong{word-break:break-word}.payment-instructions{background:#fff8e7;border-left:3px solid var(--ctc-gold);padding:14px 16px}.proof-form{border-top:1px solid #e4e7ef;margin-top:20px;padding-top:20px}.payment-security-note,.payment-phase-note,.payment-selection-note{background:#f5f6fa;border:1px solid #e5e7ef;border-radius:8px;padding:13px;color:#697087;font-size:13px}.payment-selection-note strong,.payment-selection-note small{display:block}.payment-selection-note small{margin-top:4px}.payment-complete-card{text-align:center}.payment-complete-card .success-icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e9f7ef;color:#17643a;font-size:26px;margin-bottom:10px}.payment-admin-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.payment-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 20px}.payment-kpis>div{background:#fff;border:1px solid #dde2ed;border-top:3px solid var(--ctc-gold);border-radius:9px;padding:18px}.payment-kpis span{display:block;color:#737b91;font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.07em}.payment-kpis strong{font-family:Georgia,serif;font-size:30px;color:#10184f}.gateway-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 28px}.gateway-setting-card{border:1px solid #dde2ed;border-radius:10px;padding:18px;display:grid;gap:12px}.gateway-setting-card>div strong,.gateway-setting-card>div small{display:block}.gateway-setting-card>div small{color:#72798e;margin-top:4px}.gateway-setting-card label{font-weight:700;color:#172052}.gateway-setting-card select{display:block;width:100%;margin-top:6px}.credential-placeholder{margin:22px 0;padding:18px;border-radius:9px;background:#0f1856;color:#fff}.credential-placeholder p{color:#d7dcf3}.credential-placeholder code{display:block;white-space:normal;color:#f0c54b}.status-badge.awaiting_payment{background:#fff5d9;color:#805d00}.status-badge.under_review{background:#e9f0ff;color:#244f99}.status-badge.refunded{background:#f4eafd;color:#6a348a}.status-badge.failed{background:#fdeaea;color:#9c2929}
@media(max-width:900px){.payment-layout{grid-template-columns:1fr}.registration-summary{position:static}.gateway-grid,.gateway-settings-grid,.payment-kpis{grid-template-columns:1fr 1fr}.bank-instructions{grid-template-columns:1fr}}
@media(max-width:600px){.gateway-grid,.gateway-settings-grid,.payment-kpis{grid-template-columns:1fr}.payment-admin-head{align-items:flex-start;flex-direction:column}}

/* v1.5.0 Event Operations */
.ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.ops-stat{background:#fff;border:1px solid #e5e8f0;border-top:3px solid var(--ctc-gold);border-radius:10px;padding:18px}.ops-stat span{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#68708c}.ops-stat strong{display:block;font-family:Georgia,serif;font-size:30px;color:var(--ctc-navy);margin-top:6px}.ops-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:0 0 18px}.ops-toolbar .field{min-width:240px}.ops-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.ops-tabs a{padding:9px 14px;border:1px solid #d8deeb;border-radius:999px;background:#fff;color:var(--ctc-navy);font-weight:700;text-decoration:none}.ops-tabs a.active{background:var(--ctc-navy);color:#fff;border-color:var(--ctc-navy)}.status-badge.attended{background:#e7f7ee;color:#14743a}.status-badge.no_show{background:#fff0f0;color:#a72b2b}.status-badge.not_marked{background:#f2f4f8;color:#65708a}.status-badge.eligible{background:#e7f7ee;color:#14743a}.status-badge.not_eligible{background:#f2f4f8;color:#65708a}.mini-actions{display:flex;gap:6px;flex-wrap:wrap}.email-template-card{background:#fff;border:1px solid #e2e6ef;border-radius:10px;padding:18px;margin-bottom:14px}.email-template-card h3{margin:0 0 6px}.email-template-card textarea{min-height:170px}.queue-summary{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px}.queue-pill{background:#fff;border:1px solid #e2e6ef;padding:10px 14px;border-radius:999px;font-weight:700}.operation-note{background:#fff8df;border:1px solid #f1d88d;padding:14px 16px;border-radius:8px;color:#59440d;margin:16px 0}.attendance-table td,.attendance-table th{vertical-align:middle}@media(max-width:900px){.ops-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.ops-grid{grid-template-columns:1fr}.ops-toolbar .field{min-width:100%}}

/* v1.5.1 operations navigation corrective release */
.admin-links{gap:3px;flex:1;justify-content:center;min-width:0}
.admin-links>a{padding-left:10px;padding-right:10px;white-space:nowrap}
.admin-links>a.active:after{left:10px;right:10px}
.admin-user{white-space:nowrap}
.admin-version{font-size:8px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;color:#d8aa36;border:1px solid rgba(216,170,54,.35);padding:4px 6px;border-radius:4px}
.operations-callout{max-width:1680px;margin:-16px auto 22px;background:#fff;border:1px solid #dfe2eb;border-top:3px solid #d8aa36;border-radius:7px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 7px 20px rgba(8,15,52,.05)}
.operations-callout div{display:flex;flex-direction:column;gap:3px}.operations-callout strong{color:#0b1245;font-family:Georgia,serif;font-size:18px}.operations-callout span{font-size:11px;color:#747a8e}
@media(max-width:1500px){.admin-links>a{padding-left:7px;padding-right:7px;font-size:10px}.admin-brand-title{font-size:20px}.admin-brand-sub{font-size:8px}.admin-nav{gap:14px}.admin-create{padding-left:11px!important;padding-right:11px!important}}
@media(max-width:1100px){.operations-callout{margin:12px 18px 20px}.admin-version{display:none}}

/* v1.6.0 commercial + integration polish */
.admin-version{font-size:11px;letter-spacing:.08em;opacity:.8}
.billing-field{display:none}
.integration-status-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:850px){.integration-status-card{grid-template-columns:1fr}}


/* v1.7.0 Participant Portal + Team Registration */
.my-events-auth,.portal-page{padding:64px 0 84px;background:#f5f7fb;min-height:65vh}.portal-auth-card{max-width:620px;margin:0 auto;background:#fff;border:1px solid #e3e7f0;border-top:4px solid var(--ctc-gold);padding:38px;box-shadow:0 18px 50px rgba(15,25,75,.08)}.portal-auth-card h1,.portal-heading h1,.portal-event-card h2{font-family:Georgia,serif;color:var(--ctc-navy);margin:8px 0 12px}.portal-auth-card form{display:grid;gap:18px;margin-top:24px}.portal-security-note{font-size:.86rem;color:#737b91;margin-top:20px}.portal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px}.portal-events-grid{display:grid;gap:22px}.portal-event-card{background:#fff;border:1px solid #e1e5ee;border-top:3px solid var(--ctc-gold);padding:28px;border-radius:8px;box-shadow:0 12px 32px rgba(15,25,75,.06)}.portal-event-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.portal-event-top h2{font-size:1.65rem}.portal-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#e6e9f0;margin:22px 0}.portal-facts>div{background:#fafbfe;padding:14px 16px}.portal-facts span,.portal-certificate>span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#72798c;font-weight:700;margin-bottom:6px}.portal-actions{display:flex;gap:10px;flex-wrap:wrap}.portal-access,.portal-certificate{margin-top:18px;padding:17px 18px;background:#f6f7fb;border-left:3px solid var(--ctc-gold)}.portal-access p{margin:6px 0 12px}.team-registration-roster{margin-top:22px;padding-top:20px;border-top:1px solid #e5e8ef}.team-roster-heading{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.team-roster-heading small{color:#747b8e}.team-roster-grid,#team-roster-builder{display:grid;gap:12px}.team-roster-row{display:grid;grid-template-columns:42px 1.2fr 1.2fr 1fr;gap:12px;align-items:end;padding:14px;background:#f8f9fc;border:1px solid #e2e6ef;border-radius:6px}.roster-number{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ctc-navy);color:#fff;font-weight:700;align-self:center}.portal-roster-form>.btn{margin-top:18px}.is-hidden{display:none!important}@media(max-width:900px){.portal-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.team-roster-row{grid-template-columns:42px 1fr}.team-roster-row .field{grid-column:2}.portal-event-top,.portal-heading{flex-direction:column}}@media(max-width:600px){.portal-auth-card,.portal-event-card{padding:22px}.portal-facts{grid-template-columns:1fr}.my-events-auth,.portal-page{padding:36px 0 60px}}

/* v1.8 hardening */
.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.health-item{border:1px solid #dbe3ef;border-radius:14px;padding:18px;background:#fff}.health-item strong,.health-item span,.health-item small{display:block}.health-item.ok{border-left:5px solid #18864b}.health-item.bad{border-left:5px solid #b42318}.health-item span{font-weight:700;margin:6px 0}.check-line{display:flex;gap:10px;align-items:flex-start;margin:12px 0}.check-line input{margin-top:4px}


/* =========================================================
   v1.8.1 — ADMIN HEADER LAYOUT FIX
   Keeps the expanded v1.8 navigation clean on laptops/desktops.
   ========================================================= */
.admin-header .admin-container{
  width:min(1840px,96vw);
}
.admin-header .admin-nav{
  min-height:82px;
  gap:18px;
  justify-content:flex-start;
}
.admin-header .admin-brand{
  min-width:250px;
  flex:0 0 250px;
  gap:10px;
}
.admin-header .admin-brand .brand-mark{
  width:42px;
  height:42px;
  flex:0 0 42px;
}
.admin-header .admin-brand-title{
  font-size:19px;
  white-space:nowrap;
}
.admin-header .admin-brand-sub{
  font-size:8px;
  letter-spacing:1.45px;
  white-space:nowrap;
}
.admin-header .admin-links{
  flex:1 1 auto;
  min-width:0;
  justify-content:center;
  gap:0;
  font-size:10.5px;
  letter-spacing:.22px;
}
.admin-header .admin-links>a{
  padding:31px 8px 27px;
  white-space:nowrap;
}
.admin-header .admin-links>a.active:after{
  left:8px;
  right:8px;
  bottom:15px;
}
.admin-header .admin-create{
  margin-left:8px;
  padding:11px 14px!important;
  white-space:nowrap;
  flex:0 0 auto;
}
.admin-header .admin-user{
  margin-left:2px;
  gap:8px;
  flex:0 0 auto;
  font-size:12px;
}
.admin-header .admin-avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
}

/* Standard 1366–1600px laptop widths */
@media (max-width:1600px){
  .admin-header .admin-container{width:min(1580px,98vw)}
  .admin-header .admin-nav{gap:10px}
  .admin-header .admin-brand{min-width:218px;flex-basis:218px}
  .admin-header .admin-brand-title{font-size:17px}
  .admin-header .admin-brand-sub{font-size:7px;letter-spacing:1.15px}
  .admin-header .admin-links{font-size:9.5px;letter-spacing:.08px}
  .admin-header .admin-links>a{padding-left:6px;padding-right:6px}
  .admin-header .admin-links>a.active:after{left:6px;right:6px}
  .admin-header .admin-create{font-size:11px;padding:10px 11px!important;margin-left:3px}
  .admin-header .admin-user span:last-child{display:none}
}

/* Smaller laptops: preserve every navigation item without overlap */
@media (max-width:1370px){
  .admin-header .admin-brand{min-width:185px;flex-basis:185px}
  .admin-header .admin-brand-title{font-size:15px}
  .admin-header .admin-brand-sub{display:none}
  .admin-header .admin-links{
    justify-content:flex-start;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .admin-header .admin-links::-webkit-scrollbar{display:none}
  .admin-header .admin-links>a{font-size:9px;padding-left:6px;padding-right:6px}
  .admin-header .admin-create{padding:9px 10px!important}
  .admin-header .admin-user{display:none}
}

/* Tablet/mobile admin header */
@media (max-width:980px){
  .admin-header{position:relative}
  .admin-header .admin-nav{
    min-height:auto;
    flex-wrap:wrap;
    padding:12px 0 0;
    gap:8px;
  }
  .admin-header .admin-brand{
    min-width:0;
    flex:1 1 auto;
  }
  .admin-header .admin-create{
    order:2;
  }
  .admin-header .admin-links{
    order:3;
    flex:0 0 100%;
    width:100%;
    justify-content:flex-start;
    overflow-x:auto;
    border-top:1px solid rgba(255,255,255,.09);
  }
  .admin-header .admin-links>a{
    padding:14px 10px 13px;
    font-size:9px;
  }
  .admin-header .admin-links>a.active:after{
    bottom:4px;
    left:10px;
    right:10px;
  }
}


/* =========================================================
   v1.8.3 — TRUE 100% ZOOM ADMIN HEADER FIX
   Desktop navigation uses the available width naturally:
   Brand -> Navigation -> New Event -> flexible spacer -> Version/User
   ========================================================= */

/* Wide desktop: stop centering the nav cluster inside a large flex box. */
@media (min-width:1601px){
  .admin-header .admin-container{
    width:calc(100% - 48px);
    max-width:none;
    margin-left:auto;
    margin-right:auto;
  }

  .admin-header .admin-nav{
    width:100%;
    min-height:88px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:0;
  }

  .admin-header .admin-brand{
    min-width:285px;
    flex:0 0 285px;
    margin-right:26px;
  }

  .admin-header .admin-brand .brand-mark{
    width:46px;
    height:46px;
    flex-basis:46px;
  }

  .admin-header .admin-brand-title{
    font-size:20px;
  }

  .admin-header .admin-brand-sub{
    display:block;
    font-size:8px;
    letter-spacing:1.5px;
  }

  .admin-header .admin-links{
    flex:0 0 auto;
    min-width:0;
    justify-content:flex-start;
    gap:0;
    font-size:10.5px;
    letter-spacing:.12px;
    overflow:visible;
  }

  .admin-header .admin-links>a{
    padding:33px 8px 29px;
  }

  .admin-header .admin-links>a.active:after{
    left:8px;
    right:8px;
    bottom:17px;
  }

  .admin-header .admin-create{
    flex:0 0 auto;
    margin-left:16px;
    margin-right:0;
    padding:12px 17px!important;
    font-size:11px;
  }

  /* The user block, not the navigation, consumes the remaining free space. */
  .admin-header .admin-user{
    margin-left:auto;
    padding-left:18px;
    flex:0 0 auto;
    font-size:12px;
  }

  .admin-header .admin-user span:last-child{
    display:inline;
  }
}

/* Normal 1440–1600px desktops: same flow, slightly more compact. */
@media (min-width:1371px) and (max-width:1600px){
  .admin-header .admin-container{
    width:calc(100% - 30px);
    max-width:none;
  }

  .admin-header .admin-nav{
    width:100%;
    justify-content:flex-start;
    gap:0;
  }

  .admin-header .admin-brand{
    min-width:218px;
    flex:0 0 218px;
    margin-right:14px;
  }

  .admin-header .admin-links{
    flex:0 0 auto;
    justify-content:flex-start;
    gap:0;
  }

  .admin-header .admin-create{
    margin-left:10px;
  }

  .admin-header .admin-user{
    margin-left:auto;
    padding-left:10px;
  }
}

/* v1.8.4 premium two-level admin header */
.premium-admin-header{position:sticky;top:0;z-index:60;background:#0b1247;border-bottom:0;box-shadow:0 5px 24px rgba(3,8,38,.16)}
.premium-admin-header .admin-container{width:min(1680px,calc(100% - 56px));max-width:none;margin:0 auto}
.admin-header-main{background:linear-gradient(100deg,#080d38 0%,#11195f 58%,#121a66 100%);border-bottom:1px solid rgba(255,255,255,.08)}
.admin-header-main-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.premium-admin-header .admin-brand{min-width:0;flex:0 1 auto;display:flex;align-items:center;gap:12px;text-decoration:none}
.premium-admin-header .admin-brand .brand-mark{width:45px;height:45px;flex:0 0 45px;border-radius:7px;font-size:17px}
.admin-brand-copy{display:flex;flex-direction:column;min-width:0}
.premium-admin-header .admin-brand-title{display:block;font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.05;color:#fff;white-space:nowrap}
.brand-gold{color:var(--ctc-gold)}
.premium-admin-header .admin-brand-sub{display:block;margin-top:5px;color:var(--ctc-gold);font-size:8px;line-height:1;font-weight:800;letter-spacing:1.7px;text-transform:uppercase;white-space:nowrap}
.admin-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto}
.premium-admin-header .admin-create{display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin:0 6px 0 0;padding:10px 17px!important;border-radius:5px!important;font-size:11px;font-weight:850;letter-spacing:.45px;text-transform:uppercase;white-space:nowrap}
.premium-admin-header .admin-version{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 9px;border:1px solid rgba(216,170,54,.42);border-radius:5px;color:var(--ctc-gold);font-size:9px;line-height:1;font-weight:900;letter-spacing:.55px;background:rgba(0,0,0,.08)}
.premium-admin-header .admin-user{display:flex;align-items:center;gap:9px;margin:0;padding-left:2px}
.premium-admin-header .admin-avatar{width:35px;height:35px;flex:0 0 35px;border:1px solid rgba(255,255,255,.10);background:#151f72}
.admin-user-copy{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}
.admin-user-copy strong{font-size:11px;color:#fff;font-weight:700}
.admin-user-copy small{font-size:8px;color:#9fa7cc;margin-top:3px}
.admin-header-navrow{background:#0b1247}
.admin-header-navrow .admin-container{min-height:44px;display:flex;align-items:stretch}
.premium-admin-header .admin-links{width:100%;flex:none;display:flex;align-items:stretch;justify-content:flex-start;gap:0;overflow-x:auto;scrollbar-width:none;font-size:10px;line-height:1;font-weight:800;letter-spacing:.35px;text-transform:uppercase}
.premium-admin-header .admin-links::-webkit-scrollbar{display:none}
.premium-admin-header .admin-links>a{display:flex;align-items:center;position:relative;padding:0 15px;min-height:44px;color:#cfd4ed;opacity:1;white-space:nowrap;border-right:1px solid rgba(255,255,255,.025)}
.premium-admin-header .admin-links>a:first-child{padding-left:2px;padding-right:17px}
.premium-admin-header .admin-links>a:hover{color:#fff;background:rgba(255,255,255,.025)}
.premium-admin-header .admin-links>a.active{color:var(--ctc-gold);background:rgba(216,170,54,.035)}
.premium-admin-header .admin-links>a.active:after{content:"";position:absolute;height:2px;left:14px;right:14px;bottom:0;background:var(--ctc-gold)}
.premium-admin-header .admin-links>a:first-child.active:after{left:2px;right:17px}
@media(max-width:1200px){.premium-admin-header .admin-container{width:calc(100% - 34px)}.premium-admin-header .admin-links>a{padding-left:11px;padding-right:11px;font-size:9px}.admin-user-copy{display:none}}
@media(max-width:760px){.premium-admin-header{position:relative}.premium-admin-header .admin-container{width:calc(100% - 24px)}.admin-header-main-inner{min-height:64px;gap:12px}.premium-admin-header .admin-brand-title{font-size:17px}.premium-admin-header .admin-brand-sub{display:none}.premium-admin-header .admin-brand .brand-mark{width:39px;height:39px;flex-basis:39px;font-size:15px}.premium-admin-header .admin-version{display:none}.premium-admin-header .admin-create{padding:9px 11px!important;font-size:9px}.premium-admin-header .admin-user{display:none}.admin-header-navrow .admin-container{width:100%}.premium-admin-header .admin-links{padding:0 12px}.premium-admin-header .admin-links>a:first-child{padding-left:8px;padding-right:11px}.premium-admin-header .admin-links>a:first-child.active:after{left:8px;right:11px}}


/* =========================================================
   v1.8.5 — REPORTS KPI UI FIX
   ========================================================= */
.report-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin:0 0 22px;
}
.report-kpi-card{
  position:relative;
  min-height:126px;
  padding:21px 22px 19px;
  background:#fff;
  border:1px solid #e0e4ee;
  border-top:3px solid var(--ctc-gold);
  border-radius:9px;
  box-shadow:0 8px 24px rgba(8,14,55,.055);
  overflow:hidden;
}
.report-kpi-card:after{
  content:"";
  position:absolute;
  width:94px;height:94px;border-radius:50%;
  right:-34px;top:-35px;
  background:rgba(216,170,54,.065);
}
.report-kpi-card>span{
  display:block;
  color:#68708a;
  font-size:10px;
  font-weight:850;
  letter-spacing:.75px;
  text-transform:uppercase;
  margin-bottom:9px;
}
.report-kpi-card>strong{
  display:block;
  color:#0b1247;
  font-family:Georgia,"Times New Roman",serif;
  font-size:31px;
  line-height:1;
  font-weight:600;
  letter-spacing:-.4px;
  margin-bottom:9px;
}
.report-kpi-card>small{
  display:block;
  color:#858ba0;
  font-size:10px;
  line-height:1.35;
}
.report-kpi-revenue{
  background:linear-gradient(145deg,#fff 0%,#fffaf0 100%);
}
.report-kpi-revenue>strong:before{
  content:"";
}
@media(max-width:1050px){
  .report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .report-kpi-grid{grid-template-columns:1fr}
  .report-kpi-card{min-height:112px}
}

/* =========================================================
   v1.8.6 — CORPORATE / TEAM REGISTRATION WORKFLOW
   ========================================================= */
.corporate-aware-form .corporate-contact-note{
  margin:0 0 18px;padding:13px 15px;border-left:3px solid var(--ctc-gold);
  background:#fff9ea;color:#535b72;display:flex;flex-direction:column;gap:3px;
}
.corporate-aware-form .corporate-contact-note strong{color:var(--ctc-navy);font-size:13px}
.corporate-aware-form .corporate-contact-note span{font-size:11px;line-height:1.5}
.participant-roster-banner{
  display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;
  padding:12px 14px;background:#f6f7fb;border:1px solid #e1e5ef;border-radius:6px;
}
.participant-roster-banner strong{color:var(--ctc-navy);font-size:13px}
.participant-roster-banner span{color:#6e758b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.55px}
.team-roster-grid{display:grid!important;gap:14px!important}
.team-participant-card{
  background:#fbfcff;border:1px solid #dfe4ef;border-radius:8px;padding:16px 17px 17px;
  box-shadow:0 4px 14px rgba(12,20,70,.035);
}
.team-participant-card-head{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #e7eaf1}
.team-participant-card-head>div{display:flex;flex-direction:column;gap:2px}
.team-participant-card-head strong{font-family:Georgia,"Times New Roman",serif;color:var(--ctc-navy);font-size:16px}
.team-participant-card-head small{color:#83899c;font-size:9px;text-transform:uppercase;letter-spacing:.5px}
.team-participant-card .roster-number{width:30px;height:30px;flex:0 0 30px;font-size:11px}
.team-participant-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 14px}
.team-participant-fields .field{margin:0}
.team-registration-roster .form-section-head{margin-bottom:16px}
@media(max-width:680px){
  .team-participant-fields{grid-template-columns:1fr}
  .participant-roster-banner{align-items:flex-start;flex-direction:column}
}

/* v1.8.7 controlled deletion */
.inline-delete-form{display:inline-flex;margin:0}
.row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.btn-danger{background:#fff!important;color:#a32626!important;border-color:#e5bcbc!important;box-shadow:none!important}
.btn-danger:hover{background:#fff1f1!important;border-color:#cf8f8f!important;color:#861d1d!important}
.status-badge.completed{background:#eef1f6;color:#596274}


/* v1.8.9 payment layout + international checkout */
.payment-gateway-priority-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.international-gateway-card{border-top:3px solid var(--ctc-gold);background:linear-gradient(145deg,#fff,#fffaf0)}
.international-gateway-card .gateway-card-head strong:after{content:"For International Participants";display:block;margin-top:5px;font-size:9px;line-height:1.2;letter-spacing:.7px;text-transform:uppercase;color:#9b7314;font-family:Arial,sans-serif}
.international-payment-box{margin-top:16px;padding:20px;border:1px solid #eadba8;border-left:4px solid var(--ctc-gold);background:#fffaf0;border-radius:8px}
.international-payment-box h3{margin:5px 0 8px;color:var(--ctc-navy);font-family:Georgia,serif}
.international-payment-box p{color:#666d82}
.international-setting-card{border-top:3px solid var(--ctc-gold)}
.international-settings-note{display:flex;flex-direction:column;gap:5px;margin:10px 0 16px;padding:14px 16px;background:#fff8e7;border-left:3px solid var(--ctc-gold);color:#5e6376}
.international-settings-note strong{color:var(--ctc-navy)}
@media(max-width:700px){.payment-gateway-priority-grid{grid-template-columns:1fr}}


/* v1.9.0 per-event Gumroad link */
.event-gumroad-field{margin-top:4px;padding:16px;border:1px solid #eadba8;border-left:4px solid var(--ctc-gold);background:#fffaf0;border-radius:7px}
.event-gumroad-field label{color:var(--ctc-navy);font-weight:800}
.event-gumroad-field input{background:#fff}
