:root{--navy:#0b2c49;--deep:#06233c;--blue:#145a87;--gold:#f4c078;--light:#f5f7fa;--ink:#15293b;--muted:#66788c;--border:#e1e8ee;--white:#fff;--radius:16px;--shadow:0 16px 50px rgba(9,37,58,.065)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:15px/1.7 system-ui,-apple-system,'Segoe UI',sans-serif}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.23;letter-spacing:-.035em;margin:0 0 .55em}h1{font-size:clamp(35px,5.3vw,65px)}h2{font-size:clamp(26px,3vw,39px)}h3{font-size:19px}p{margin:0 0 18px}em{font-style:normal;color:#da9d4c}.muted{color:var(--muted)}.small{font-size:12px}.container{width:min(1160px,calc(100% - 44px));margin-inline:auto}.narrow{max-width:830px}.section{padding:78px 0}.eyebrow{font-size:11px;letter-spacing:.18em;color:#ba803d;font-weight:800;margin:0 0 15px}.eyebrow.pale{color:#f7cc88}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:10px;border:1px solid transparent;padding:11px 19px;font-weight:800;font-size:13px;min-height:43px;transition:background .2s,color .2s,transform .2s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:#0d4268}.btn.gold{background:var(--gold);color:#172c3f}.btn.gold:hover{background:#eab369}.btn.outlined{border-color:#9ab0c1;color:#fff}.btn.outlined:hover{background:#ffffff12}.btn.subtle{background:#eef4f8;color:var(--navy);border-color:#e1ebf0}.btn.tiny{font-size:11px;padding:6px 10px;min-height:33px}.btn.full{width:100%}.text-link{color:#0d6693;font-weight:800;font-size:13px}.text-link:hover{text-decoration:underline}.button-row{display:flex;flex-wrap:wrap;gap:12px}.topstrip{background:#05223a;color:#d7e4ec;font-size:10px;font-weight:700;letter-spacing:.12em}.strip-inner{display:flex;justify-content:space-between;align-items:center;min-height:34px}.sep{color:var(--gold);padding:0 8px}.strip-right{color:#a9c1d0}.site-header{background:white;box-shadow:0 2px 14px #122c4510;position:relative;z-index:5}.head-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:inline-flex;align-items:center;gap:10px;min-width:max-content}.brand-symbol{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--navy);font-weight:800;color:var(--gold);font-size:29px;font-family:Manrope}.brand strong{display:block;font:800 18px/1.2 Manrope;letter-spacing:-.06em;color:#113653}.brand small{display:block;font-size:9px;letter-spacing:.17em;color:#748a9c;margin-top:3px}.main-nav{display:flex;align-items:center;gap:18px}.nav-link{font-size:12px;font-weight:800;color:#576d80;padding:8px 0;white-space:nowrap}.nav-link:hover,.nav-link.active{color:#0e6a9b}.nav-cta{background:var(--navy);color:white;padding:11px 16px}.mobile-menu{display:none}.hero{background:radial-gradient(circle at 79% 30%,#164b6d 0%,#0b3050 41%,#052039 95%);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:40px;align-items:center;min-height:600px;padding:65px 0}.hero h1{font-size:clamp(46px,5.4vw,75px);line-height:1.06;margin-bottom:28px;letter-spacing:-.055em}.hero h1 em{color:var(--gold)}.hero p{color:#c7d6e2;max-width:480px;font-size:16px;line-height:1.8}.hero-notes{display:flex;flex-wrap:wrap;gap:16px;margin-top:45px;font-size:12px;color:#bbcfdd;font-weight:600}.hero-art{min-height:430px;display:grid;place-items:center;position:relative}.orbit{position:absolute;border:1px solid #ffffff1c;transform:rotate(-24deg);border-radius:50%;width:420px;height:420px}.orbit-two{width:540px;height:540px}.hero-panel{position:relative;z-index:1;border:1px solid #ffffff38;background:linear-gradient(145deg,#164d70e8,#0e314fe0);box-shadow:0 30px 95px #00162466;border-radius:24px;padding:43px 48px;width:86%;min-height:340px;backdrop-filter:blur(8px)}.panel-overline{font-size:10px;letter-spacing:.17em;color:#d1dfeb;font-weight:800}.hero-monogram{font-size:clamp(80px,10vw,145px);line-height:1.4;letter-spacing:-.10em;font-family:Manrope;font-weight:800;color:#ffffff}.hero-monogram span{color:var(--gold)}.panel-rule{width:65px;height:4px;border-radius:4px;background:var(--gold);margin-bottom:18px}.hero-panel h2{font-size:22px;margin-bottom:6px}.hero-panel p{font-size:12px;margin:0}.float-dot{position:absolute;bottom:30px;right:24px;width:75px;height:75px;border-radius:50%;background:var(--gold);filter:blur(1px);opacity:.8}.feature-ribbon{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin-top:-33px;background:#fff;border-radius:14px;box-shadow:var(--shadow);z-index:1;padding:18px}.feature-ribbon>div{padding:9px 20px;border-right:1px solid var(--border);color:#d7a061;font-size:26px;display:flex;align-items:center;gap:12px}.feature-ribbon>div:last-child{border:0}.feature-ribbon strong{color:var(--navy);font-size:13px;white-space:nowrap}.feature-ribbon span{color:var(--muted);font-size:11px;margin-left:auto;white-space:nowrap}.section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:30px}.section-head h2{margin-bottom:0}.cards{display:grid;gap:22px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.cards .spanall{grid-column:1/-1}.event-card,.post-card,.member-card{border:1px solid var(--border);border-radius:15px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.event-accent{height:125px;background:linear-gradient(125deg,#123955,#1a6a90);padding:24px;display:flex;justify-content:space-between;align-items:flex-start}.date-square{width:56px;height:60px;border-radius:10px;background:var(--gold);color:#0c2e4d;display:flex;align-items:center;justify-content:center;flex-direction:column}.date-square strong{font-family:Manrope;font-size:25px;line-height:1}.date-square small{font-size:10px;font-weight:800}.tag{display:inline-block;font-size:10px;background:#e3eff6;color:#195774;border-radius:50px;padding:5px 10px;font-weight:800;letter-spacing:.06em}.event-accent .tag{color:#e8f1f7;background:#ffffff23}.card-body{padding:24px}.card-body h3{min-height:48px}.meta{font-size:12px;color:#748599;margin:5px 0}.card-summary{font-size:13px;color:#64778a;margin:16px 0 21px;min-height:45px}.post-card{padding:26px;display:flex;flex-direction:column;min-height:260px}.post-card h3{margin-top:17px}.post-card p{color:var(--muted);font-size:13px;flex:1}.post-bottom{display:flex;justify-content:space-between;gap:8px;align-items:center;border-top:1px solid var(--border);padding-top:17px;margin-top:16px}.light-section{background:var(--light)}.empty{border:1px dashed #cbdae4;border-radius:13px;padding:35px;color:var(--muted);background:#f8fafc}.cta-band{background:linear-gradient(105deg,#0b2b48,#164d72);color:white;padding:60px 0}.cta-row{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-row h2{font-size:34px}.cta-row p{color:#c3d7e5;margin:0}.page-banner{background:linear-gradient(110deg,#0a304f,#113f60);color:#fff;padding:74px 0}.page-banner h1{font-size:clamp(32px,4.5vw,52px);max-width:950px}.page-banner p{color:#c1d7e5;max-width:710px;margin:0}.notice{border:1px solid #d6e2ec;background:#f0f6fa;border-radius:11px;padding:14px 16px;color:#47657a;font-size:12px;line-height:1.75}.notice.spaced,.spaced{margin-top:20px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}.article-card,.signup-panel,.panel{background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow);padding:28px}.article-card h2{font-size:26px}.richtext{white-space:normal;line-height:1.9;color:#485e70}.lead{font-size:18px;color:#28485e}.detail-list{display:grid;gap:0;margin-top:20px}.detail-list>div{padding:14px 0;border-bottom:1px solid var(--border);display:flex;gap:16px;justify-content:space-between}.detail-list>div strong:first-child{font-size:12px;color:var(--muted);font-weight:700}.signup-panel h3{margin-bottom:16px}.signup-panel p{font-size:13px;color:var(--muted)}.member-card{padding:24px}.avatar{width:57px;height:57px;border-radius:17px;display:grid;place-items:center;background:#e2ecf4;color:#1e5679;font-size:24px;font-weight:800;margin-bottom:13px}.member-card p{color:#75879a;font-size:12px}.auth-layout{max-width:1100px;margin:70px auto;display:grid;grid-template-columns:1fr 1fr;min-height:480px;border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.auth-art{padding:55px;background:linear-gradient(125deg,#082c4a,#175c81);color:white;position:relative;overflow:hidden}.auth-art h1{font-size:45px}.auth-art p{color:#d1dfed}.auth-icon{font-size:180px;color:#ffffff15;position:absolute;bottom:-105px;right:20px}.auth-panel{padding:55px}.auth-panel h2{font-size:34px}.auth-panel .notice{margin-top:25px}.auth-small{max-width:480px}.stack-form{display:flex;flex-direction:column;gap:18px}.stack-form label,.setup-card label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#395268;font-size:12px}input:not([type=checkbox]),textarea,select{width:100%;padding:11px 12px;border:1px solid #cedae4;border-radius:9px;background:white;color:#15334a;min-height:43px;outline:none;box-shadow:none}input:focus,textarea:focus,select:focus{border-color:#2e83b1;box-shadow:0 0 0 3px #2e83b119}input:disabled{background:#eef2f6}textarea{resize:vertical}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.span2{grid-column:span 2}.check-label{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px!important}.check-label input{width:17px;flex:0 0 17px;margin-top:5px}.alert{padding:14px 18px;border:1px solid #c5dfec;border-radius:10px;background:#e9f6fc;color:#125273;font-size:13px;margin:18px auto}.alert.error{background:#fff0ed;color:#9b3528;border-color:#f1b5ad}.alert.success{background:#eaf7ed;color:#286740;border-color:#bedfc8}.footer{background:#061e33;color:#a6bfce;padding:60px 0 22px}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:50px}.foot-brand strong{color:white}.foot-grid p{font-size:12px;line-height:1.85;margin-top:20px}.foot-grid h4{font-size:14px;color:white;margin-bottom:20px}.foot-grid a:not(.brand){display:block;font-size:12px;margin:12px 0;color:#b0c6d5}.foot-grid a:hover{color:white}.copyright{border-top:1px solid #ffffff23;font-size:11px;margin-top:35px;padding-top:20px;display:flex;gap:8px}.workspace{display:grid;grid-template-columns:235px minmax(0,1fr);gap:28px;padding-top:35px;padding-bottom:80px;align-items:start;min-height:65vh}.sidebar{background:#f5f9fc;border:1px solid var(--border);border-radius:14px;padding:15px;display:flex;flex-direction:column;position:sticky;top:15px}.sidebar-label{font-size:10px;color:#9d6b30;letter-spacing:.12em;font-weight:800;padding:9px 12px 18px}.sidebar .nav-link{padding:11px 12px;border-radius:7px;font-weight:700;font-size:12px;white-space:normal}.sidebar .nav-link.active{background:#dfeefa}.logout-btn{border:none;background:transparent;color:#914534;padding:12px;font-weight:800;font-size:12px;text-align:left;width:100%}.work-main{min-width:0}.work-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.work-heading h1{font-size:clamp(24px,2.8vw,35px);margin-bottom:7px}.work-heading p{color:var(--muted);margin:0;font-size:13px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.metric{padding:20px;background:#fff;border:1px solid var(--border);border-radius:13px;min-width:0;box-shadow:var(--shadow)}.metric>span{font-size:11px;color:var(--muted);font-weight:700}.metric>strong{display:block;font-size:29px;font-family:Manrope;letter-spacing:-.05em;color:var(--navy);margin:4px 0}.metric>small{font-size:10px;color:#8698a8}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.panel-title h3{margin:0}.panel .notice{margin:16px 0}.list-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:13px 0;gap:10px}.list-row>div{display:flex;flex-direction:column;gap:5px;min-width:0}.list-row strong{font-size:13px}.list-row span{font-size:11px;color:var(--muted)}.list-row a{font-size:13px;color:#286b96;font-weight:800}.small-tag{font-size:9px!important;width:fit-content}.id-card{padding:23px;border-radius:14px;background:linear-gradient(120deg,#082842,#115276);color:white}.id-brand{font-size:11px;letter-spacing:.12em;font-weight:800;display:flex;justify-content:space-between}.id-brand span{color:#d7af71}.id-avatar{width:58px;height:58px;border:2px solid #d8e3ed7a;border-radius:17px;background:#ffffff25;display:grid;place-items:center;font-size:25px;margin:24px 0 10px}.id-card h3{font-size:20px;margin-bottom:4px}.id-card p{color:#c7dbe9;font-size:12px}.id-card strong{color:#f0c57e;font-size:14px;letter-spacing:.1em}.id-bottom{border-top:1px solid #ffffff38;margin-top:18px;padding-top:12px;font-size:11px;color:#d0e2ed}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:640px;text-align:left}th{font-size:10px;letter-spacing:.07em;color:#708396;text-transform:uppercase;background:#f2f7fa}th,td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}td{font-size:12px;color:#3b5369}td .btn{white-space:nowrap}.pill{font-size:10px;text-transform:capitalize;color:#315974;background:#e9f2f8;padding:6px 10px;border-radius:16px}.inline-form{display:flex;gap:6px;align-items:center}.inline-form select{width:110px;min-width:110px;padding:6px;font-size:11px;min-height:32px}.receipt-panel{max-width:720px;margin:auto}.receipt-head{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #194968;padding-bottom:20px}.receipt-head h2{font-size:23px}.receipt-head span{color:#7a8d9b;font-size:12px;font-weight:800}.setup-body{min-height:100vh;background:linear-gradient(130deg,#082e49,#e2edf4);padding:45px 20px}.setup-card{max-width:780px;background:white;padding:35px;margin:auto;border-radius:20px;box-shadow:0 20px 80px #001b3830}.setup-card h1{font-size:35px}.setup-card>.small{margin-top:25px}.setup-card form .btn{margin-top:22px}
@media(max-width:1050px){.main-nav{gap:10px}.nav-link{font-size:11px}.feature-ribbon span{display:none}.metrics{grid-template-columns:repeat(2,1fr)}.hero-panel{padding:28px}.foot-grid{gap:24px}}
@media(max-width:780px){.strip-right{display:none}.container{width:min(100% - 30px,1160px)}.head-inner{min-height:66px}.main-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;color:var(--navy);font-size:12px;font-weight:800;cursor:pointer;padding:12px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-links{position:absolute;right:0;top:45px;z-index:10;min-width:220px;background:white;box-shadow:0 15px 45px #0002;border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column}.mobile-links .nav-link{padding:9px;font-size:13px}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:62px 0 75px}.hero h1{font-size:55px}.hero-art{display:none}.feature-ribbon{grid-template-columns:repeat(2,1fr);margin-top:-35px}.feature-ribbon>div{border-right:0;padding:12px}.cards.three,.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:52px 0}.cta-row{align-items:flex-start;flex-direction:column}.article-layout{grid-template-columns:1fr}.auth-layout{margin:25px 15px;grid-template-columns:1fr}.auth-art{padding:30px;min-height:200px}.auth-art h1{font-size:35px}.auth-panel{padding:30px}.workspace{grid-template-columns:1fr}.sidebar{position:static;display:flex;flex-direction:row;overflow:auto;flex-wrap:wrap;gap:3px}.sidebar-label{width:100%}.sidebar .nav-link{font-size:11px;padding:7px 10px}.sidebar form{margin-left:auto}.work-grid{grid-template-columns:1fr}.foot-grid{grid-template-columns:repeat(2,1fr)}.receipt-head{flex-direction:column;align-items:flex-start}}
@media(max-width:520px){.container{width:calc(100% - 30px)}.topstrip{font-size:9px;letter-spacing:.04em}.brand-symbol{height:36px;width:36px;font-size:25px}.brand strong{font-size:16px}.brand small{font-size:8px}.hero h1{font-size:44px}.hero p{font-size:14px}.hero-notes{gap:10px;font-size:10px}.feature-ribbon{padding:8px}.feature-ribbon strong{font-size:11px}.feature-ribbon>div{gap:6px;padding:10px 5px;font-size:19px}.cards.three,.cards.two{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.page-banner{padding:55px 0}.footer{padding:45px 0 20px}.foot-grid{grid-template-columns:1fr;gap:12px}.formgrid{grid-template-columns:1fr}.span2{grid-column:auto}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:15px}.metric>strong{font-size:24px}.panel,.article-card,.signup-panel{padding:18px}.tablewrap{margin-inline:-5px}.work-heading h1{font-size:28px}.receipt-head h2{font-size:20px}}
@media print{.topstrip,.site-header,.sidebar,.footer,.no-print,.btn,.notice{display:none!important}.workspace{display:block}.receipt-panel{box-shadow:none;border:0;width:100%;max-width:none}}

/* Phase 2 — Member management. Existing theme tokens and responsive design remain unchanged. */
.member-filter-bar{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:0 0 14px;padding:15px;background:#f5f9fc;border:1px solid var(--border);border-radius:12px}
.member-filter-bar label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:750;color:var(--muted);min-width:145px}
.member-filter-bar .member-filter-search{flex:1;min-width:220px}
.member-filter-bar input,.member-filter-bar select{border:1px solid #d9e4ed;border-radius:8px;min-height:40px;padding:9px 10px;background:white;max-width:100%;width:100%}
.member-export-row{align-items:center;margin:0 0 15px}
.member-row-actions{display:flex;gap:7px;align-items:center;min-width:max-content}
.member-pagination{display:flex;justify-content:space-between;align-items:center;padding:15px 4px;gap:10px}
@media(max-width:520px){.member-filter-bar{align-items:stretch}.member-filter-bar label{width:100%}.member-row-actions{flex-direction:column;align-items:flex-start}.member-pagination{align-items:flex-start}}
@media print{body:has(#member-print-card) *{visibility:hidden!important}body:has(#member-print-card) #member-print-card,body:has(#member-print-card) #member-print-card *{visibility:visible!important}body:has(#member-print-card) #member-print-card{display:block!important;position:absolute!important;left:0!important;top:0!important;width:370px!important;max-width:95vw!important;color:#fff!important;box-shadow:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body:has(#member-print-card) .workspace{display:block!important}}
