:root{--c-green-deep:#0c2a1f;--c-green:#1a4530;--c-green-mid:#2e6044;--c-green-soft:#5a8470;--c-cream:#f7f0db;--c-cream-soft:#fcf7e7;--c-paper:#fdf9ec;--c-gold:#c89c4f;--c-gold-deep:#946f2c;--c-ink:#1a1814;--c-ink-soft:#4a4538;--c-rule:#0c2a1f2e;--c-rule-strong:#0c2a1f66;--f-head:"Libre Caslon Display", "Times New Roman", serif;--f-body:"Libre Baskerville", Georgia, serif;--f-script:"Allura", cursive;--f-mono:"JetBrains Mono", "Courier New", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--c-paper);color:var(--c-ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}.eyebrow{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);font-size:11px;font-weight:500}.script{font-family:var(--f-script);font-weight:400;line-height:.9}h1,h2,h3,h4{font-family:var(--f-head);letter-spacing:-.01em;color:var(--c-green-deep);font-weight:500}h1{font-size:clamp(48px,6vw,96px);line-height:1.02}h2{font-size:clamp(36px,4vw,56px);line-height:1.08}h3{font-size:clamp(22px,2vw,28px);line-height:1.2}p{color:var(--c-ink-soft)}.container{max-width:1280px;margin:0 auto;padding:0 48px}.container-narrow{max-width:920px;margin:0 auto;padding:0 48px}.section{padding:96px 0}.section-tight{padding:64px 0}.nav{background:var(--c-green-deep);color:var(--c-cream);z-index:50;border-bottom:1px solid #c89c4f4d;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:32px;max-width:1280px;margin:0 auto;padding:18px 48px;display:flex}.nav-brand{cursor:pointer;align-items:center;gap:14px;display:flex}.nav-brand-text{font-family:var(--f-head);letter-spacing:.04em;color:var(--c-cream);font-size:17px;line-height:1}.nav-brand-sub{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-top:4px;font-size:9px}.nav-links{align-items:center;gap:36px;display:flex}.nav-link{font-family:var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--c-cream);cursor:pointer;padding:4px 0;font-size:13px;transition:color .2s;position:relative}.nav-link:hover,.nav-link.active{color:var(--c-gold)}.nav-link.active:after{content:"";background:var(--c-gold);height:1px;position:absolute;bottom:-4px;left:0;right:0}.nav-signin{border:1px solid var(--c-gold);color:var(--c-gold);font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;padding:8px 18px;font-size:11px;transition:all .2s}.nav-signin:hover{background:var(--c-gold);color:var(--c-green-deep)}.nav-dropdown{position:relative}.nav-dropdown-trigger{background:0 0;border:none;align-items:center;gap:6px;display:inline-flex}.nav-caret{color:var(--c-gold);margin-left:6px;font-size:9px;transition:transform .15s;display:inline-block}.nav-dropdown-trigger.open .nav-caret,.nav-user-trigger.open .nav-caret,.nav-mobile-accordion-trigger.open .nav-caret{transform:rotate(180deg)}.nav-dropdown-menu{background:var(--c-green-deep);border:1px solid #c89c4f66;border-top:2px solid var(--c-gold);z-index:60;flex-direction:column;min-width:200px;padding:6px 0;display:flex;position:absolute;top:calc(100% + 14px);left:0}.nav-dropdown-menu-right{left:auto;right:0}.nav-dropdown-item{width:100%;font-family:var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--c-cream);text-align:left;cursor:pointer;background:0 0;border:none;padding:10px 18px;font-size:12px;transition:background .12s,color .12s;display:block}.nav-dropdown-item:hover{color:var(--c-gold);background:#c89c4f1f}.nav-dropdown-item.active{color:var(--c-gold);background:#c89c4f14}.nav-user-trigger{cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;display:inline-flex}.nav-user-trigger .nav-greeting{margin-right:0}.nav-hamburger{cursor:pointer;background:0 0;border:none;width:32px;height:32px;padding:0;display:none;position:relative}.nav-hamburger span{background:var(--c-cream);height:2px;transition:transform .2s,opacity .15s,top .2s;position:absolute;left:4px;right:4px}.nav-hamburger span:first-child{top:9px}.nav-hamburger span:nth-child(2){top:15px}.nav-hamburger span:nth-child(3){top:21px}.nav-hamburger.open span:first-child{top:15px;transform:rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0}.nav-hamburger.open span:nth-child(3){top:15px;transform:rotate(-45deg)}.nav-mobile{background:var(--c-green-deep);border-top:1px solid #c89c4f33;flex-direction:column;padding:4px 0 16px;display:flex}.nav-mobile-link,.nav-mobile-accordion-trigger{width:100%;font-family:var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--c-cream);cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #c89c4f1a;justify-content:space-between;align-items:center;padding:16px 48px;font-size:13px;display:flex}.nav-mobile-link.active,.nav-mobile-accordion-trigger.active{color:var(--c-gold)}.nav-mobile-accordion-content{background:#00000038;border-bottom:1px solid #c89c4f1a}.nav-mobile-sublink{font-family:var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:#f7f0dbd9;padding:14px 48px 14px 64px;font-size:12px;display:block}.nav-mobile-sublink.active{color:var(--c-gold)}.nav-mobile-foot{border-top:1px solid #c89c4f33;align-items:center;gap:16px;margin-top:8px;padding:20px 48px 0;display:flex}.nav-mobile-foot .nav-mobile-link{border-bottom:none;flex:none;padding:0}.nav-mobile-signout{color:var(--c-gold);font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #c89c4f80;margin-left:auto;padding:8px 14px;font-size:10px}.nav-mobile-signin{align-self:flex-start;margin:16px 48px 0}@media (max-width:900px){.nav-links-desktop{display:none}.nav-hamburger{display:inline-block}.nav-inner{padding:14px 24px}.nav-mobile-link,.nav-mobile-accordion-trigger{padding-left:24px;padding-right:24px}.nav-mobile-sublink{padding-left:40px;padding-right:24px}.nav-mobile-foot{padding-left:24px;padding-right:24px}.nav-mobile-signin{margin-left:24px;margin-right:24px}}.hero{background:var(--c-green-deep);color:var(--c-cream);padding:120px 0 140px;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(at 30% 40%,#2e604466 0%,#0000 60%);position:absolute;inset:0}.hero-inner{text-align:center;flex-direction:column;align-items:center;max-width:1280px;margin:0 auto;padding:0 48px;display:flex;position:relative}.hero-title{color:var(--c-cream);letter-spacing:-.02em;margin:24px 0 8px;font-size:clamp(56px,7vw,90px);font-weight:400;line-height:.98}.hero-title .script{color:var(--c-gold);margin:-.05em 0 -.1em;font-weight:400;display:block}.hero-eyebrow{font-family:var(--f-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--c-gold);align-items:center;gap:14px;margin-bottom:32px;font-size:11px;display:flex}.hero-eyebrow:before,.hero-eyebrow:after{content:"";background:var(--c-gold);flex:1;max-width:40px;height:1px}.hero-blurb{max-width:540px;font-family:var(--f-body);color:#f7f0dbd9;margin:0 0 48px;font-size:17px;line-height:1.7}.hero-meta{border-top:1px solid #c89c4f66;grid-template-columns:repeat(3,1fr);gap:24px;width:100%;max-width:720px;margin:0 0 48px;padding-top:32px;display:grid}.hero-history-link{color:#f7f0dbb3;margin-top:40px;font-size:15px}.hero-history-link a{color:var(--c-gold);text-decoration:underline}.hero-meta-item .label{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-gold);margin-bottom:8px;font-size:10px}.hero-meta-item .value{font-family:var(--f-head);color:var(--c-cream);font-size:22px;font-weight:400}.hero-meta-item .sub{color:#f7f0dba6;margin-top:2px;font-size:13px;font-style:italic}.crest{width:100%;max-width:380px;margin:0 auto;display:block}.commissioner-block{background:var(--c-cream);border-top:1px solid var(--c-rule);border-bottom:1px solid var(--c-rule);text-align:center;padding:80px 0}.commissioner-quote{font-family:var(--f-head);color:var(--c-green-deep);max-width:760px;margin:0 auto;font-size:clamp(24px,2.8vw,36px);font-style:italic;font-weight:400;line-height:1.4}.commissioner-quote:before,.commissioner-quote:after{font-family:var(--f-script);color:var(--c-gold);vertical-align:-.2em;font-size:1.4em;line-height:0}.commissioner-quote:before{content:"“";margin-right:.1em}.commissioner-quote:after{content:"”";margin-left:.05em}.commissioner-attr{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);margin-top:32px;font-size:11px}.commissioner-attr .name{font-family:var(--f-script);color:var(--c-green-deep);letter-spacing:0;text-transform:none;margin-top:8px;font-size:38px;line-height:1;display:block}.details-grid{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.detail-card{border:1px solid var(--c-rule);background:var(--c-paper);padding:40px}.detail-label{font-family:var(--f-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:14px;font-size:10px}.detail-value{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:8px;font-size:32px;line-height:1.2}.detail-sub{color:var(--c-ink-soft);font-size:14px;font-style:italic}.itinerary-row{border-bottom:1px solid var(--c-rule);grid-template-columns:180px 80px 1fr auto;align-items:baseline;gap:32px;padding:28px 0;display:grid}.itinerary-row:last-child{border-bottom:none}.itinerary-day{font-family:var(--f-script);color:var(--c-green-deep);font-size:42px;line-height:1}.itinerary-date{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-deep);font-size:11px}.itinerary-event{font-family:var(--f-head);color:var(--c-green-deep);font-size:22px}.itinerary-event-sub{color:var(--c-ink-soft);margin-top:4px;font-size:14px;font-style:italic}.itinerary-time{font-family:var(--f-mono);color:var(--c-ink-soft);letter-spacing:.06em;font-size:13px}.winners-strip{background:var(--c-green-deep);color:var(--c-cream);padding:80px 0}.winners-strip h2{color:var(--c-cream)}.winners-strip .eyebrow{color:var(--c-gold)}.winners-grid{grid-template-columns:repeat(5,1fr);gap:32px;margin-top:56px;display:grid}.winner-card{text-align:center;border-left:1px solid #c89c4f4d;padding:8px 16px}.winner-card:first-child{border-left:none}.winner-year{font-family:var(--f-mono);letter-spacing:.2em;color:var(--c-gold);margin-bottom:12px;font-size:12px}.winner-name{font-family:var(--f-head);color:var(--c-cream);margin-bottom:8px;font-size:22px;line-height:1.2}.winner-score{font-family:var(--f-mono);color:#f7f0dba6;font-size:13px}.trophy-spotlight{grid-template-columns:320px 1fr;align-items:center;gap:80px;margin-bottom:80px;display:grid}.trophy-spotlight img{max-width:100%;height:auto}.trophy-spotlight-stats{border-top:1px solid var(--c-rule);grid-template-columns:repeat(4,1fr);gap:24px;padding-top:32px;display:grid}.trophy-table{border-collapse:collapse;width:100%;margin-top:48px}.trophy-table thead th{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);text-align:left;border-bottom:2px solid var(--c-green-deep);padding:16px 12px;font-size:10px;font-weight:500}.trophy-table tbody td{border-bottom:1px solid var(--c-rule);vertical-align:baseline;padding:18px 12px}.trophy-table tbody tr:hover{background:var(--c-cream)}.trophy-year{font-family:var(--f-mono);color:var(--c-gold-deep);letter-spacing:.08em;width:80px;font-size:13px}.trophy-edition{font-family:var(--f-script);color:var(--c-green-deep);width:80px;font-size:28px;line-height:.9}.trophy-name{font-family:var(--f-head);color:var(--c-green-deep);font-size:19px}.trophy-course{color:var(--c-ink-soft);font-size:14px;font-style:italic}.trophy-score{font-family:var(--f-mono);color:var(--c-ink);text-align:right;width:80px;font-size:14px}.leaderboard{margin-top:32px}.leaderboard-head{border-bottom:2px solid var(--c-green-deep);grid-template-columns:60px 1fr 80px 100px;gap:24px;padding:12px 0;display:grid}.leaderboard-row{border-bottom:1px solid var(--c-rule);grid-template-columns:60px 1fr 80px 100px;align-items:baseline;gap:24px;padding:18px 0;display:grid}.leaderboard-rank{font-family:var(--f-script);color:var(--c-gold);text-align:center;font-size:36px;line-height:1}.leaderboard-row:nth-child(n+4) .leaderboard-rank,.leaderboard-name{font-family:var(--f-head);color:var(--c-green-deep);font-size:22px}.leaderboard-meta{color:var(--c-ink-soft);margin-top:2px;font-size:13px;font-style:italic}.leaderboard-wins{font-family:var(--f-mono);color:var(--c-green-deep);text-align:right;font-size:24px}.leaderboard-wins-label{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-deep);text-align:right;margin-top:4px;font-size:10px}.leaderboard-record{font-family:var(--f-mono);color:var(--c-ink-soft);text-align:right;font-size:13px}.gallery-tabs{border-bottom:1px solid var(--c-rule);flex-wrap:wrap;gap:4px;margin:48px 0 56px;padding-bottom:0;display:flex}.gallery-tab{font-family:var(--f-mono);letter-spacing:.16em;cursor:pointer;color:var(--c-ink-soft);border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;font-size:12px;transition:all .15s}.gallery-tab:hover{color:var(--c-green-deep)}.gallery-tab.active{color:var(--c-green-deep);border-bottom-color:var(--c-gold)}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.gallery-item{position:relative}.gallery-item-caption{font-family:var(--f-body);color:var(--c-ink-soft);margin-top:12px;font-size:13px;font-style:italic}.gallery-item-feature{grid-area:span 2/span 2}.notes-list{flex-direction:column;gap:0;display:flex}.note-card{border-bottom:1px solid var(--c-rule);grid-template-columns:200px 1fr;align-items:start;gap:56px;padding:48px 0;display:grid}.note-card:first-child{padding-top:0}.note-card:last-child{border-bottom:none}.note-meta{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-deep);font-size:11px}.note-meta .month{font-family:var(--f-head);color:var(--c-green-deep);letter-spacing:.08em;margin-bottom:4px;font-size:16px;display:block}.note-title{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:16px;font-size:32px;font-weight:400}.note-body{font-family:var(--f-body);color:var(--c-ink-soft);font-size:17px;line-height:1.7}.note-body p+p{margin-top:16px}.note-body .pull{font-family:var(--f-script);color:var(--c-gold);margin:32px 0 24px;font-size:38px;line-height:1;display:block}.note-sig{font-family:var(--f-script);color:var(--c-green-deep);margin-top:24px;font-size:42px;line-height:1}.footer{background:var(--c-green-deep);color:var(--c-cream);border-top:4px solid var(--c-gold);padding:72px 0 32px}.footer-inner{max-width:1280px;margin:0 auto;padding:0 48px}.footer-top{border-bottom:1px solid #c89c4f40;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:56px;display:grid}.footer-brand-name{font-family:var(--f-head);color:var(--c-cream);margin-bottom:4px;font-size:22px}.footer-brand-tag{font-family:var(--f-script);color:var(--c-gold);font-size:26px;line-height:1}.footer-col h4{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-bottom:18px;font-size:11px;font-weight:500}.footer-col ul{list-style:none}.footer-col li{color:#f7f0dbbf;cursor:pointer;margin-bottom:10px;font-size:14px;transition:color .15s}.footer-col li:hover{color:var(--c-gold)}.footer-bottom{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:#f7f0db80;justify-content:space-between;align-items:center;margin-top:28px;font-size:10px;display:flex}.section-head{text-align:center;margin-bottom:64px}.section-head .eyebrow{margin-bottom:16px;display:block}.section-head .script{color:var(--c-gold);margin:-8px 0 -16px;font-size:clamp(56px,6vw,88px);display:block}.section-head h2{display:block}.section-head .lead{max-width:580px;color:var(--c-ink-soft);margin:24px auto 0;font-size:17px;font-style:italic}.page-header{background:var(--c-green-deep);color:var(--c-cream);text-align:center;padding:96px 0;position:relative}.page-header .eyebrow{color:var(--c-gold)}.page-header h1{color:var(--c-cream);font-size:clamp(48px,5vw,72px)}.page-header .script{color:var(--c-gold);margin:-8px 0 0;font-size:clamp(64px,6vw,96px);display:block}.page-header .lead{color:#f7f0dbcc;max-width:560px;margin:24px auto 0;font-size:17px;font-style:italic}.image-placeholder{background:var(--c-cream);border:1px solid var(--c-rule);color:var(--c-ink-soft);font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;text-align:center;justify-content:center;align-items:center;padding:16px;font-size:11px;display:flex}.btn{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;border:1px solid var(--c-gold);color:var(--c-gold);background:0 0;padding:14px 28px;font-size:11px;transition:all .2s;display:inline-block}.btn:hover,.btn-primary{background:var(--c-gold);color:var(--c-green-deep)}.btn-primary:hover{background:var(--c-cream);border-color:var(--c-cream)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#1a1814b3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--c-paper);border-top:4px solid var(--c-gold);width:100%;max-width:440px;padding:48px;position:relative}.modal-close{cursor:pointer;color:var(--c-ink-soft);background:0 0;border:none;font-size:24px;position:absolute;top:16px;right:16px}.modal h3{text-align:center;margin-bottom:8px;font-size:28px}.modal .script-accent{font-family:var(--f-script);color:var(--c-gold);text-align:center;margin-bottom:8px;font-size:44px;line-height:1;display:block}.modal-sub{text-align:center;color:var(--c-ink-soft);margin-bottom:32px;font-size:14px;font-style:italic}.form-field{margin-bottom:20px}.form-field label{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:8px;font-size:10px;display:block}.form-field input{border:1px solid var(--c-rule-strong);background:var(--c-cream-soft);width:100%;font-family:var(--f-body);color:var(--c-ink);padding:12px 14px;font-size:15px}.form-field input:focus{border-color:var(--c-green);outline:none}.modal-foot{text-align:center;color:var(--c-ink-soft);margin-top:16px;font-size:12px;font-style:italic}.ornament{color:var(--c-gold);justify-content:center;align-items:center;gap:16px;margin:0 auto;display:flex}.ornament-line{opacity:.6;background:currentColor;flex:1;max-width:80px;height:1px}.ornament-glyph{font-family:var(--f-head);letter-spacing:.4em;font-size:14px}.history-header{text-align:center;flex-direction:column;align-items:center;padding-bottom:0;display:flex}.history-title{font-family:var(--f-head);color:var(--c-green-deep);margin-top:24px;font-size:48px;line-height:1.15}.history-body{max-width:680px;font-family:var(--f-body);color:var(--c-ink);margin:48px auto;padding:0 24px;font-size:17px;line-height:1.7}.history-body h2{font-family:var(--f-head);color:var(--c-green-deep);margin:2em 0 .6em;font-size:32px;line-height:1.2}.history-body h3{font-family:var(--f-head);color:var(--c-green-deep);margin:1.6em 0 .5em;font-size:22px;line-height:1.25}.history-body p{margin:0 0 1em}.history-body img{border-radius:4px;width:100%;height:auto;margin:1.5em 0;display:block}.history-body a{color:var(--c-gold-deep);text-decoration:underline}@media (max-width:900px){.container,.container-narrow{padding:0 24px}.section{padding:64px 0}.details-grid{grid-template-columns:1fr;gap:32px}.winners-grid{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:40px}.winner-card:nth-child(odd){border-left:none}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:20px}.trophy-spotlight{grid-template-columns:1fr;gap:40px;margin-bottom:56px}.trophy-spotlight-stats{grid-template-columns:repeat(2,1fr)}.footer-inner{padding:0 24px}.footer-top{grid-template-columns:1fr 1fr;gap:40px 32px}.footer-brand{grid-column:1/-1}}@media (max-width:640px){.page-header{padding:72px 0}.itinerary-row{grid-template-columns:1fr auto;gap:8px 16px;padding:22px 0}.note-card{grid-template-columns:1fr;gap:16px;padding:36px 0}.detail-card{padding:24px}.trophy-table{display:block;overflow-x:auto}.leaderboard-head,.leaderboard-row{grid-template-columns:40px 1fr 56px 72px;gap:12px}.gallery-grid{grid-template-columns:1fr}.gallery-item-feature{grid-area:auto}.footer{padding:56px 0 28px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}
.nav-greeting{font-family:var(--f-script);color:var(--c-gold);font-size:26px;line-height:1}.member-badge{background:var(--c-gold);color:var(--c-green-deep);font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;margin-left:12px;padding:2px 8px;font-size:9px}.dash-hero{background:var(--c-green-deep);color:var(--c-cream);border-bottom:4px solid var(--c-gold);padding:64px 0 56px}.dash-hero-inner{grid-template-columns:1.5fr 1fr;align-items:center;gap:64px;max-width:1280px;margin:0 auto;padding:0 48px;display:grid}.dash-greet-eyebrow{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-bottom:12px;font-size:11px}.dash-greet-script{font-family:var(--f-script);color:var(--c-gold);margin-bottom:12px;font-size:clamp(72px,8vw,112px);line-height:1.05}.dash-greet-name{font-family:var(--f-head);color:var(--c-cream);font-size:clamp(36px,4vw,56px);font-weight:400;line-height:1}.dash-greet-sub{color:#f4ecd8b3;margin-top:16px;font-size:16px;font-style:italic}.countdown{border-left:1px solid #b8954a4d;padding-left:48px}.countdown-label{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-bottom:12px;font-size:10px}.countdown-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.countdown-cell{text-align:center}.countdown-num{font-family:var(--f-head);color:var(--c-cream);font-feature-settings:"lnum";font-size:56px;line-height:1}.countdown-unit{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-top:8px;font-size:9px}.dash-grid{grid-template-columns:repeat(12,1fr);gap:28px;max-width:1280px;margin:56px auto;padding:0 48px;display:grid}.card{background:var(--c-paper);border:1px solid var(--c-rule);padding:32px;position:relative}.card-eyebrow{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:12px;font-size:10px}.card-title{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:16px;font-size:28px;font-weight:400;line-height:1.15}.card-script{font-family:var(--f-script);color:var(--c-gold);margin:-4px 0 8px;font-size:56px;line-height:.9}.card-cta{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;border:1px solid var(--c-green-deep);color:var(--c-green-deep);background:0 0;margin-top:16px;padding:10px 18px;font-size:10px;transition:all .2s;display:inline-block}.card-cta:hover{background:var(--c-green-deep);color:var(--c-cream)}.card-cta-primary{background:var(--c-gold);border-color:var(--c-gold);color:var(--c-green-deep)}.card-cta-primary:hover{background:var(--c-green-deep);border-color:var(--c-green-deep);color:var(--c-cream)}.card-status{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;border:1px solid;padding:4px 10px;font-size:9px;position:absolute;top:24px;right:24px}.card-status.good{color:#2c5340}.card-status.warn{color:#8a6d33}.card-status.bad{color:#8b3a2a}.col-12{grid-column:span 12}.col-8{grid-column:span 8}.col-6{grid-column:span 6}.col-4{grid-column:span 4}.col-3{grid-column:span 3}.tee-time-card{background:var(--c-green-deep);color:var(--c-cream);border:none;border-top:4px solid var(--c-gold)}.tee-time-card .card-eyebrow{color:var(--c-gold)}.tee-time-card .card-title{color:var(--c-cream)}.tee-time-card .card-script{color:var(--c-gold)}.tee-row{border-bottom:1px solid #b8954a33;grid-template-columns:100px 1fr;align-items:baseline;gap:24px;padding:18px 0;display:grid}.tee-row:last-child{border-bottom:none}.tee-day{font-family:var(--f-script);color:var(--c-gold);font-size:36px;line-height:1}.tee-time{font-family:var(--f-head);color:var(--c-cream);font-size:26px}.tee-group{color:#f4ecd8a6;margin-top:4px;font-size:13px;font-style:italic}.weather-row{justify-content:space-between;gap:16px;margin-top:12px;display:flex}.weather-day{text-align:center;border:1px solid var(--c-rule);flex:1;padding:16px 8px}.weather-day .day{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:4px;font-size:10px}.weather-day .date{color:var(--c-ink-soft);margin-bottom:12px;font-size:11px;font-style:italic}.weather-day .icon{color:var(--c-gold);margin:8px 0;font-size:28px;line-height:1}.weather-day .high{font-family:var(--f-head);color:var(--c-green-deep);font-size:28px;line-height:1}.weather-day .low{color:var(--c-ink-soft);margin-top:4px;font-size:12px}.weather-day .cond{font-family:var(--f-script);color:var(--c-gold);margin-top:8px;font-size:22px;line-height:1}.roster-faces{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.roster-face{background:var(--c-green-mid);width:32px;height:32px;color:var(--c-cream);font-family:var(--f-head);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-style:italic;font-weight:500;display:flex}.roster-face.no{background:var(--c-rule-strong);color:var(--c-paper)}.roster-face.pending{background:var(--c-gold);color:var(--c-green-deep)}.roster-face.more{color:var(--c-gold-deep);border:1px dashed var(--c-rule-strong);font-family:var(--f-mono);letter-spacing:.1em;background:0 0;font-size:10px}.roster-stats{border-top:1px solid var(--c-rule);font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;gap:16px;margin-top:16px;padding-top:16px;font-size:11px;display:flex}.roster-stat strong{font-family:var(--f-head);color:var(--c-green-deep);letter-spacing:0;text-transform:none;margin-bottom:2px;font-size:24px;font-weight:400;display:block}.roster-stat.yes strong{color:var(--c-green)}.roster-stat.no strong{color:#8b3a2a}.roster-stat.pending strong{color:var(--c-gold-deep)}.quicklink{border-bottom:1px solid var(--c-rule);cursor:pointer;justify-content:space-between;align-items:center;padding:14px 0;transition:padding .15s;display:flex}.quicklink:last-child{border-bottom:none}.quicklink:hover{padding-left:6px}.quicklink .label{font-family:var(--f-head);color:var(--c-green-deep);font-size:18px}.quicklink .arrow{color:var(--c-gold);font-size:18px}.rsvp-form{gap:28px;display:grid}.rsvp-question{border-bottom:1px solid var(--c-rule);padding:24px 0}.rsvp-question:last-child{border-bottom:none}.rsvp-q-label{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:6px;font-size:10px}.rsvp-q-title{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:16px;font-size:22px;line-height:1.2}.rsvp-options{gap:12px;display:flex}.rsvp-option{border:1px solid var(--c-rule-strong);background:var(--c-cream-soft);cursor:pointer;text-align:center;font-family:var(--f-body);flex:1;padding:16px 20px;transition:all .15s}.rsvp-option:hover{border-color:var(--c-gold)}.rsvp-option.selected{border-color:var(--c-green-deep);background:var(--c-green-deep);color:var(--c-cream)}.rsvp-option .label-main{font-family:var(--f-head);font-size:18px;display:block}.rsvp-option .label-sub{opacity:.7;margin-top:4px;font-size:12px;font-style:italic}.handicap-input{align-items:baseline;gap:12px;display:flex}.handicap-input input{width:80px;font-family:var(--f-head);color:var(--c-green-deep);border:none;border-bottom:2px solid var(--c-rule-strong);text-align:center;background:0 0;outline:none;padding:4px 0;font-size:32px}.handicap-input input:focus{border-bottom-color:var(--c-gold)}.pairings-table{margin-top:32px}.pairings-day-head{font-family:var(--f-script);color:var(--c-gold);margin-top:32px;margin-bottom:16px;font-size:56px;line-height:1}.pairing-group{border-bottom:1px solid var(--c-rule);grid-template-columns:90px 60px 1fr;align-items:baseline;gap:24px;padding:18px 0;display:grid}.pairing-group.mine{border-left:3px solid var(--c-gold);background:linear-gradient(90deg,#b8954a14,#0000);margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.pairing-time{font-family:var(--f-head);color:var(--c-green-deep);font-size:18px}.pairing-hole{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--c-gold-deep);font-size:11px}.pairing-players{font-family:var(--f-body);color:var(--c-ink);flex-wrap:wrap;gap:8px 20px;font-size:16px;display:flex}.pairing-players .me-badge{font-family:var(--f-script);color:var(--c-gold);margin-left:4px;font-size:22px;line-height:.5}.pairing-note{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--c-gold-deep);font-size:10px;font-style:italic}.lodging-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;display:grid}.lodging-card{border:1px solid var(--c-rule);background:var(--c-paper);flex-direction:column;display:flex}.lodging-img{height:200px}.lodging-body{flex-direction:column;flex:1;padding:28px;display:flex}.lodging-tag{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:12px;font-size:9px;display:inline-block}.lodging-name{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:4px;font-size:26px}.lodging-meta{font-family:var(--f-mono);letter-spacing:.08em;color:var(--c-ink-soft);margin-bottom:16px;font-size:11px}.lodging-rate{font-family:var(--f-script);color:var(--c-gold);margin-bottom:4px;font-size:36px;line-height:1}.lodging-rooms{color:var(--c-ink-soft);margin-bottom:16px;font-size:13px;font-style:italic}.lodging-notes{color:var(--c-ink-soft);border-top:1px solid var(--c-rule);flex:1;margin-bottom:16px;padding-top:16px;font-size:14px;line-height:1.6}.lodging-staying{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:8px;font-size:10px}.lodging-faces{flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.lodging-faces .roster-face{width:24px;height:24px;font-size:10px}.lodging-booking{font-family:var(--f-mono);letter-spacing:.12em;color:var(--c-green-deep);border-top:1px solid var(--c-rule);padding-top:12px;font-size:11px}.course-layout{grid-template-columns:1.4fr 1fr;align-items:start;gap:56px;display:grid}.course-stats{grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:32px;display:grid}.stats-summary-grid{grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:56px;display:grid}.handicap-chart{background:var(--c-cream-soft);border:1px solid var(--c-rule);width:100%;height:280px;margin:32px 0;padding:24px;position:relative}.finishes-table{border-collapse:collapse;width:100%;margin-top:24px}.finishes-table thead th{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);text-align:left;border-bottom:2px solid var(--c-green-deep);padding:14px 12px;font-size:10px;font-weight:500}.finishes-table tbody td{border-bottom:1px solid var(--c-rule);vertical-align:baseline;padding:16px 12px}.finish-pos{font-family:var(--f-script);color:var(--c-gold);width:80px;font-size:32px;line-height:.9}.empty-state{text-align:center;padding:80px 0}.member-tabs{border-bottom:1px solid var(--c-rule);flex-wrap:wrap;gap:0;margin-top:16px;margin-bottom:48px;display:flex}.member-tab{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;color:var(--c-ink-soft);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:16px 24px;font-size:11px;transition:all .15s}.member-tab:hover{color:var(--c-green-deep)}.member-tab.active{color:var(--c-green-deep);border-bottom-color:var(--c-gold)}.rsvp-pill{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;border:1px solid;align-items:center;gap:8px;padding:6px 12px;font-size:10px;display:inline-flex}.rsvp-pill:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}.rsvp-pill.complete{color:var(--c-green)}.rsvp-pill.in-progress{color:var(--c-gold-deep)}.rsvp-pill.not-started{color:#8b3a2a}.member-section{max-width:1280px;margin:0 auto;padding:56px 48px}.member-page-head{margin-bottom:32px}.member-page-head .eyebrow{margin-bottom:12px;display:block}.member-page-head .script{font-family:var(--f-script);color:var(--c-gold);font-size:clamp(56px,6vw,88px);line-height:.9;display:block}.member-page-head h1{margin-top:-4px;font-size:clamp(40px,4.5vw,60px)}.member-page-head .lead{max-width:600px;color:var(--c-ink-soft);margin-top:16px;font-size:16px;font-style:italic}.lightbox-overlay{z-index:1000;background:#000000eb;justify-content:center;align-items:center;animation:.2s ease-out lightbox-fade-in;display:flex;position:fixed;inset:0}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-content{flex-direction:column;align-items:center;max-width:90vw;max-height:90vh;display:flex}.lightbox-image{object-fit:contain;max-width:90vw;max-height:80vh;display:block}.lightbox-caption{font-family:var(--f-body);color:#f4ecd8d9;text-align:center;max-width:600px;margin-top:16px;font-size:15px;font-style:italic}.lightbox-counter{font-family:var(--f-mono);letter-spacing:.16em;color:#f4ecd880;margin-top:8px;font-size:11px}.lightbox-close{color:#f4ecd8b3;cursor:pointer;z-index:1001;background:0 0;border:none;font-size:48px;line-height:1;position:fixed;top:20px;right:24px}.lightbox-close:hover{color:var(--c-cream)}.lightbox-nav{color:#f4ecd899;cursor:pointer;z-index:1001;background:0 0;border:none;padding:16px;font-size:64px;line-height:1;position:fixed;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{color:var(--c-cream)}.lightbox-prev{left:16px}.lightbox-next{right:16px}@media (max-width:900px){.dash-hero{padding:48px 0}.dash-hero-inner{grid-template-columns:1fr;gap:40px;padding:0 24px}.countdown{border-top:1px solid #b8954a4d;border-left:none;padding-top:32px;padding-left:0}.dash-grid{grid-template-columns:1fr;gap:24px;margin:40px auto;padding:0 24px}.col-12,.col-8,.col-6,.col-4,.col-3{grid-column:1/-1}.member-section{padding:48px 24px}.lodging-grid{grid-template-columns:repeat(2,1fr)}.course-layout{grid-template-columns:1fr;gap:40px}.stats-summary-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:40px}}@media (max-width:640px){.lodging-grid{grid-template-columns:1fr}.pairing-group{grid-template-columns:1fr;gap:6px;padding:20px 0}.pairing-group.mine{margin-left:0;margin-right:0}.finishes-table{display:block;overflow-x:auto}.card{padding:24px}.card-status{top:16px;right:16px}.weather-row{gap:12px}.weather-day{padding:12px 4px}.rsvp-options{flex-wrap:wrap}.rsvp-option{min-width:130px}}
.admin-shell{background:var(--c-cream);grid-template-columns:240px 1fr;min-height:100vh;display:grid}.admin-sidebar{background:var(--c-green-deep);color:var(--c-cream);border-right:1px solid var(--c-green);flex-direction:column;height:100vh;padding:20px 0;display:flex;position:sticky;top:0;overflow-y:auto}.admin-brand{border-bottom:1px solid #f4ecd81f;align-items:center;gap:12px;padding:0 20px 20px;display:flex}.admin-brand-text{font-family:var(--f-head);letter-spacing:.01em;font-size:16px;line-height:1.1}.admin-brand-sub{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-gold);margin-top:4px;font-size:9px}.admin-nav-section{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:#f4ecd873;padding:16px 20px 6px;font-size:9px}.admin-nav-link{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#f4ecd8c7;cursor:pointer;border-left:2px solid #0000;justify-content:space-between;align-items:center;padding:9px 20px 9px 18px;font-size:11px;transition:all .12s;display:flex}.admin-nav-link:hover{color:var(--c-cream);background:#f4ecd80a}.admin-nav-link.active{color:var(--c-cream);border-left-color:var(--c-gold);background:#f4ecd80f}.admin-nav-link .badge{background:var(--c-gold);color:var(--c-green-deep);font-size:10px;font-family:var(--f-mono);letter-spacing:0;padding:1px 7px}.admin-sidebar-foot{border-top:1px solid #f4ecd81f;margin-top:auto;padding:16px 20px}.admin-user{align-items:center;gap:10px;display:flex}.admin-avatar{background:var(--c-gold);width:32px;height:32px;color:var(--c-green-deep);font-family:var(--f-head);border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.admin-user-name{font-size:13px;line-height:1.2}.admin-user-role{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold);font-size:9px}.admin-logout{color:#f4ecd873;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .12s;display:flex}.admin-logout:hover{color:var(--c-cream);background:#f4ecd814}.admin-exit{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:#f4ecd88c;cursor:pointer;text-align:left;background:0 0;border:none;margin-top:12px;padding:0;font-size:10px;text-decoration:none;display:block}.admin-exit:hover{color:var(--c-cream)}.admin-main{min-width:0;padding:28px 36px 64px}.admin-page-head{border-bottom:1px solid var(--c-rule);justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;padding-bottom:16px;display:flex}.admin-page-title{font-family:var(--f-head);letter-spacing:-.005em;color:var(--c-green-deep);font-size:32px;line-height:1}.admin-page-eyebrow{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:6px;font-size:10px}.admin-page-sub{color:var(--c-ink-soft);max-width:600px;margin-top:6px;font-size:14px;font-style:italic}.admin-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.btn-admin{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--c-green-deep);color:var(--c-green-deep);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:8px 14px;font-size:10px;transition:all .12s;display:inline-flex}.btn-admin:hover,.btn-admin.primary{background:var(--c-green-deep);color:var(--c-cream)}.btn-admin.primary:hover{background:var(--c-green)}.btn-admin.gold{border-color:var(--c-gold);color:var(--c-gold-deep)}.btn-admin.gold:hover{background:var(--c-gold);color:var(--c-green-deep)}.btn-admin.danger{color:#a33;border-color:#a33}.btn-admin.danger:hover{color:#fff;background:#a33}.btn-admin.ghost{border-color:var(--c-rule-strong);color:var(--c-ink-soft)}.btn-admin.sm{letter-spacing:.14em;padding:5px 9px;font-size:9px}.btn-admin .ic{font-size:12px}.admin-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}.admin-stat{background:var(--c-paper);border:1px solid var(--c-rule);padding:16px 18px;position:relative}.admin-stat-label{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-ink-soft);margin-bottom:8px;font-size:9px}.admin-stat-value{font-family:var(--f-head);color:var(--c-green-deep);font-size:38px;line-height:1}.admin-stat-value .of{color:var(--c-ink-soft);margin-left:4px;font-size:18px}.admin-stat-meta{color:var(--c-ink-soft);margin-top:6px;font-size:12px;font-style:italic}.admin-stat-bar{background:var(--c-rule);height:4px;margin-top:10px;position:relative}.admin-stat-bar>span{background:var(--c-green);height:100%;position:absolute;top:0;left:0}.admin-stat-bar>span.gold{background:var(--c-gold)}.admin-stat-bar>span.danger{background:#a33}.admin-grid-2{grid-template-columns:1.6fr 1fr;gap:16px;display:grid}.admin-card{background:var(--c-paper);border:1px solid var(--c-rule)}.admin-card-head{border-bottom:1px solid var(--c-rule);justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.admin-card-title{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-green-deep);font-size:11px}.admin-card-body{padding:4px 0}.admin-card-body.padded{padding:18px}.activity-row{border-bottom:1px solid var(--c-rule);grid-template-columns:30px 1fr auto;align-items:center;gap:12px;padding:10px 18px;font-size:13px;display:grid}.activity-row:last-child{border-bottom:none}.activity-icon{width:26px;height:26px;font-family:var(--f-mono);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.activity-icon.rsvp{color:var(--c-green);background:#1f8a5b26}.activity-icon.decline{color:#a33;background:#aa333326}.activity-icon.msg{color:var(--c-gold-deep);background:#b8954a2e}.activity-icon.note{color:var(--c-green-deep);background:#1f3d2e1f}.activity-icon.system{color:var(--c-ink-soft);background:#00000012}.activity-who{color:var(--c-green-deep);font-weight:600}.activity-detail{color:var(--c-ink)}.activity-when{font-family:var(--f-mono);letter-spacing:.1em;color:var(--c-ink-soft);text-transform:uppercase;white-space:nowrap;font-size:10px}.draft-row{border-bottom:1px solid var(--c-rule);padding:12px 18px}.draft-row:last-child{border-bottom:none}.draft-title{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:4px;font-size:16px}.draft-meta{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft);gap:12px;font-size:10px;display:flex}.draft-meta .vis-private{color:var(--c-gold-deep)}.draft-meta .vis-public{color:var(--c-green)}.quick-actions{grid-template-columns:repeat(2,1fr);gap:8px;padding:12px;display:grid}.quick-action{background:var(--c-cream-soft);border:1px solid var(--c-rule);cursor:pointer;text-align:left;padding:14px;font-family:inherit;transition:all .12s}.quick-action:hover{border-color:var(--c-green-deep);background:var(--c-paper)}.quick-action-label{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:6px;font-size:10px}.quick-action-title{font-family:var(--f-head);color:var(--c-green-deep);font-size:16px;line-height:1.15}.rsvp-toolbar{background:var(--c-paper);border:1px solid var(--c-rule);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;display:flex}.rsvp-search{font-family:var(--f-body);border:1px solid var(--c-rule-strong);background:var(--c-cream-soft);flex:1;min-width:180px;padding:6px 10px;font-size:13px}.rsvp-search:focus{outline:1px solid var(--c-gold)}.rsvp-filter-group{border:1px solid var(--c-rule-strong);align-items:center;gap:0;display:flex}.rsvp-filter-btn{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;border:none;border-right:1px solid var(--c-rule-strong);color:var(--c-ink-soft);cursor:pointer;background:0 0;padding:6px 10px;font-size:10px}.rsvp-filter-btn:last-child{border-right:none}.rsvp-filter-btn.active{background:var(--c-green-deep);color:var(--c-cream)}.rsvp-filter-btn .count{opacity:.7;margin-left:4px;font-size:9px}.rsvp-table{border-collapse:collapse;background:var(--c-paper);border:1px solid var(--c-rule);width:100%}.rsvp-table th{text-align:left;font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-green-deep);border-bottom:2px solid var(--c-green-deep);background:var(--c-cream-soft);cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 12px;font-size:9px}.rsvp-table th:hover{background:var(--c-cream)}.rsvp-table th .sort-arrow{color:var(--c-gold);margin-left:4px;font-size:8px}.rsvp-table td{border-bottom:1px solid var(--c-rule);vertical-align:middle;padding:10px 12px;font-size:13px}.rsvp-table tr:hover td{background:var(--c-cream-soft)}.rsvp-table .name-cell{font-family:var(--f-head);color:var(--c-green-deep);font-size:15px}.rsvp-table .role-cell{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-gold-deep);font-size:9px}.rsvp-table .hcap-cell{font-family:var(--f-mono);text-align:center;font-size:13px}.rsvp-table .submitted{font-family:var(--f-mono);color:var(--c-ink-soft);font-size:11px}.rsvp-pill{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;border-radius:999px;padding:2px 9px;font-size:9px;display:inline-block}.rsvp-pill.yes{color:var(--c-green);background:#1f8a5b2e}.rsvp-pill.no{color:#a33;background:#aa333326}.rsvp-pill.pending,.rsvp-pill.in-progress{color:var(--c-gold-deep);background:#b8954a38}.rsvp-pill.paid{color:var(--c-green-deep);background:#1f3d2e1a}.rsvp-pill.unpaid{color:#a33;background:0 0;border:1px dashed #a33}.rsvp-action-cell{white-space:nowrap;text-align:right}.pb-tabs{border-bottom:2px solid var(--c-green-deep);gap:0;margin-bottom:18px;display:flex}.pb-tab{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-ink-soft);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:12px 24px;font-size:11px}.pb-tab.active{color:var(--c-green-deep);border-bottom-color:var(--c-gold)}.pb-tab .sub{font-family:var(--f-script);letter-spacing:0;text-transform:none;color:var(--c-gold);margin-top:4px;font-size:22px;line-height:.9;display:block}.pb-toolbar{background:var(--c-paper);border:1px solid var(--c-rule);align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;display:flex}.pb-stats{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft);gap:18px;font-size:11px;display:flex}.pb-stats strong{color:var(--c-green-deep);font-family:var(--f-head);font-size:14px}.pb-layout{grid-template-columns:1fr 280px;align-items:start;gap:16px;display:grid}.pb-foursomes{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.pb-foursome{background:var(--c-paper);border:1px solid var(--c-rule);flex-direction:column;min-height:220px;padding:0;display:flex}.pb-foursome.drag-over{border-color:var(--c-gold);box-shadow:inset 0 0 0 2px var(--c-gold);background:var(--c-cream-soft)}.pb-foursome-head{background:var(--c-green-deep);color:var(--c-cream);font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:8px 12px;font-size:10px;display:flex}.pb-foursome-head .time{color:var(--c-gold);font-size:12px}.pb-foursome-body{flex-direction:column;flex:1;gap:4px;padding:6px;display:flex}.pb-player{background:var(--c-cream-soft);border:1px solid var(--c-rule);border-left:3px solid var(--c-green);cursor:grab;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:grid}.pb-player:active{cursor:grabbing}.pb-player.dragging{opacity:.4}.pb-player .name{color:var(--c-green-deep);font-family:var(--f-head);font-size:14px}.pb-player .hcap{font-family:var(--f-mono);background:var(--c-cream);border:1px solid var(--c-rule);padding:2px 6px;font-size:11px}.pb-player .remove{color:var(--c-ink-soft);cursor:pointer;opacity:0;background:0 0;border:none;width:18px;font-size:14px}.pb-player:hover .remove{opacity:1}.pb-player .remove:hover{color:#a33}.pb-foursome-foot{border-top:1px solid var(--c-rule);font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft);justify-content:space-between;padding:8px 12px;font-size:10px;display:flex}.pb-foursome-foot .balance.bad{color:#a33}.pb-foursome-foot .balance.good{color:var(--c-green)}.pb-empty-slot{border:1px dashed var(--c-rule-strong);text-align:center;font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft);background:0 0;padding:10px;font-size:10px}.pb-side{background:var(--c-paper);border:1px solid var(--c-rule);position:sticky;top:16px}.pb-side-head{background:var(--c-green-deep);color:var(--c-cream);font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;padding:10px 14px;font-size:10px}.pb-side-head .count{color:var(--c-gold);margin-left:6px}.pb-side-body{flex-direction:column;gap:4px;max-height:600px;padding:8px;display:flex;overflow-y:auto}.pb-side-body.drag-over{background:var(--c-cream-soft)}.pb-side-empty{text-align:center;color:var(--c-ink-soft);padding:24px 16px;font-size:13px;font-style:italic}.compose-grid{grid-template-columns:1fr 280px;align-items:start;gap:24px;display:grid}.compose-form{background:var(--c-paper);border:1px solid var(--c-rule);padding:24px 28px}.compose-vis{border:1px solid var(--c-rule-strong);gap:0;margin-bottom:16px;display:flex}.compose-vis-btn{border:none;border-right:1px solid var(--c-rule-strong);font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--c-ink-soft);background:0 0;flex:1;padding:10px 12px;font-size:11px}.compose-vis-btn:last-child{border-right:none}.compose-vis-btn.active{background:var(--c-green-deep);color:var(--c-cream)}.compose-vis-btn .sub{font-family:var(--f-body);letter-spacing:0;text-transform:none;opacity:.8;margin-top:3px;font-size:11px;font-style:italic;display:block}.compose-input-title{width:100%;font-family:var(--f-head);color:var(--c-green-deep);border:none;border-bottom:1px solid var(--c-rule);background:0 0;margin-bottom:12px;padding:8px 0;font-size:32px}.compose-input-title:focus{border-bottom-color:var(--c-gold);outline:none}.compose-input-title::placeholder{color:var(--c-rule-strong);font-style:italic}.compose-input-deck{width:100%;font-family:var(--f-script);color:var(--c-gold);background:0 0;border:none;margin-bottom:18px;padding:0;font-size:36px;line-height:1.1}.compose-input-deck:focus{outline:none}.compose-input-deck::placeholder{color:#b8954a66}.compose-toolbar{border-bottom:1px solid var(--c-rule);gap:4px;margin-bottom:12px;padding-bottom:6px;display:flex}.compose-tool{font-family:var(--f-body);cursor:pointer;color:var(--c-ink-soft);background:0 0;border:none;padding:6px 10px;font-size:14px}.compose-tool:hover{background:var(--c-cream-soft);color:var(--c-green-deep)}.compose-tool.italic{font-style:italic}.compose-tool.bold{font-weight:700}.compose-tool.underline{text-decoration:underline}.compose-input-body{width:100%;min-height:320px;font-family:var(--f-body);color:var(--c-ink);resize:vertical;background:0 0;border:none;padding:0;font-size:16px;line-height:1.7}.compose-input-body:focus{outline:none}.compose-foot{border-top:1px solid var(--c-rule);justify-content:space-between;align-items:center;margin-top:18px;padding-top:18px;display:flex}.compose-meta{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft);font-size:10px}.compose-actions{gap:8px;display:flex}.compose-side-card{background:var(--c-paper);border:1px solid var(--c-rule);margin-bottom:12px;padding:18px 20px}.compose-side-card h4{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-green-deep);margin:0 0 12px;font-size:10px}.compose-recipient-row{border-bottom:1px solid var(--c-rule);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.compose-recipient-row:last-child{border-bottom:none}.compose-recipient-row span:last-child{font-family:var(--f-mono);color:var(--c-gold-deep);font-size:11px}.compose-other-drafts{flex-direction:column;gap:0;display:flex}.compose-other-row{border-bottom:1px solid var(--c-rule);cursor:pointer;padding:8px 0}.compose-other-row:last-child{border-bottom:none}.compose-other-row:hover .compose-other-title{color:var(--c-gold-deep)}.compose-other-title{font-family:var(--f-head);color:var(--c-green-deep);margin-bottom:2px;font-size:14px;line-height:1.2}.compose-other-meta{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft);font-size:9px}.compose-preview-wrap{background:var(--c-cream-soft);border-left:3px solid var(--c-gold);margin-top:16px;padding:24px 28px}.compose-preview-eyebrow{font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-gold-deep);margin-bottom:8px;font-size:10px}.admin-page{padding:28px 36px 64px}.admin-page h1{font-family:var(--f-head);letter-spacing:-.005em;color:var(--c-green-deep);border-bottom:1px solid var(--c-rule);margin:0 0 24px;padding-bottom:16px;font-size:32px}.admin-form{flex-direction:column;gap:16px;display:flex}.admin-form label{color:var(--c-ink-soft);flex-direction:column;gap:4px;font-size:13px;display:flex}.admin-form input,.admin-form textarea{font-size:15px;font-family:var(--f-body);border:1px solid var(--c-rule);color:var(--c-ink);background:#fff;padding:8px 12px}.admin-form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.admin-banner{font-family:var(--f-body);margin:0 0 16px;padding:12px 16px}.admin-banner-ok{color:#1d5025;background:#28783c14;border-left:3px solid #2c7d3a}.admin-banner-err{color:#6e1c1c;background:#a0282814;border-left:3px solid #a02828}.admin-table{border-collapse:collapse;width:100%}.admin-table th{text-align:left;font-family:var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--c-green-deep);border-bottom:2px solid var(--c-green-deep);background:var(--c-cream-soft);padding:10px 12px;font-size:9px}.admin-table td{border-bottom:1px solid var(--c-rule);vertical-align:middle;padding:10px 12px;font-size:13px}.admin-table tr:hover td{background:var(--c-cream-soft)}.admin-table-link{font-family:var(--f-head);color:var(--c-green-deep);font-size:14px;text-decoration:none}.admin-table-link:hover{color:var(--c-gold-deep);text-decoration:underline}.admin-action-link{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c-green-deep);cursor:pointer;background:0 0;border:none;padding:0;font-size:10px;text-decoration:none}.admin-action-link:hover{color:var(--c-gold-deep)}.admin-action-link.danger{color:#a33}.admin-action-link.danger:hover{color:#7a1a1a}.admin-role-badge{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;border-radius:2px;padding:2px 8px;font-size:9px}.admin-role-badge.admin{color:var(--c-gold-deep);background:#b8954a38}.admin-role-badge.member{color:var(--c-green-deep);background:#1f3d2e1a}.admin-field{flex-direction:column;gap:4px;display:flex}.admin-field-label{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--c-ink-soft);margin-bottom:2px;font-size:10px}.admin-input{font-size:14px;font-family:var(--f-body);border:1px solid var(--c-rule-strong);color:var(--c-ink);background:#fff;padding:8px 12px}.admin-input:focus{border-color:var(--c-gold);outline:none;box-shadow:0 0 0 2px #c89c4f26}.admin-toast{background:var(--c-green-deep);color:var(--c-cream);font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;border-left:3px solid var(--c-gold);z-index:50;padding:10px 20px;font-size:11px;animation:.25s ease-out toast-in;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0000002e}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}
