:root{
  --teal-950:#07080b;--teal-900:#111827;--teal-800:#1d2b42;--teal-700:#334b6f;--teal-600:#536d94;
  --gold:#d5a84b;--gold-soft:#f8e7bd;--ink:#112238;--muted:#6a7888;--line:#dbe7ea;
  --surface:rgba(255,255,255,.78);--surface-strong:rgba(255,255,255,.94);--danger:#df4b56;--success:#1c9b60;--warning:#e2a527;
  --shadow:0 16px 50px rgba(26,64,78,.13);--radius:20px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#f5f4ec;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.icon{display:block;flex:0 0 auto}

/* Authentication */
.auth-body{min-height:100vh;display:grid;place-items:center;padding:28px;background:
 radial-gradient(circle at 15% 78%,rgba(249,182,6,.24),transparent 34%),
 radial-gradient(circle at 84% 22%,rgba(213,168,75,.22),transparent 32%),
 linear-gradient(135deg,#06070a 0%,#14233a 52%,#80552c 100%);overflow:hidden;position:relative}
.auth-body:before,.auth-body:after{content:"";position:fixed;border-radius:50%;filter:blur(6px);opacity:.5}.auth-body:before{width:420px;height:420px;background:rgba(255,255,255,.16);top:-180px;right:-90px}.auth-body:after{width:300px;height:300px;background:rgba(249,182,6,.18);left:-120px;bottom:-90px}
.auth-card{width:min(100%,460px);padding:44px;border:1px solid rgba(255,255,255,.6);background:linear-gradient(145deg,rgba(255,255,255,.46),rgba(255,255,255,.22));backdrop-filter:blur(25px) saturate(145%);-webkit-backdrop-filter:blur(25px) saturate(145%);border-radius:30px;box-shadow:0 30px 70px rgba(5,25,45,.28),inset 0 1px rgba(255,255,255,.75);position:relative;z-index:2}
.auth-card h1{font-size:28px;margin:0 0 8px}.auth-card .auth-intro{color:#2f4152;margin:0 0 30px}.auth-card .form-group label{color:#26364d}.auth-card .form-control{background:rgba(255,255,255,.73);border-color:rgba(255,255,255,.75);min-height:56px;border-radius:17px;box-shadow:inset 0 1px rgba(255,255,255,.85)}.auth-card .form-control:focus{box-shadow:0 0 0 4px rgba(249,182,6,.22)}
.login-button{width:100%;border:none;border-radius:17px;padding:16px 20px;color:#fff;font-weight:800;background:linear-gradient(90deg,#111827,#a9792e);cursor:pointer;box-shadow:0 12px 26px rgba(17,24,39,.32);transition:.2s}.login-button:hover{transform:translateY(-1px);filter:saturate(1.1)}.login-help{margin-top:18px;font-size:12px;color:#304354;text-align:center}

/* App shell */
.app-body{min-height:100vh;background:
 radial-gradient(circle at 76% 2%,rgba(249,182,6,.13),transparent 32%),
 linear-gradient(135deg,#f3f1e6 0%,#fbfbf6 52%,#edf1f6 100%)}
.app-shell{min-height:100vh;display:flex;padding:12px;gap:14px}.glass-panel,.card{background:var(--surface);border:1px solid rgba(255,255,255,.92);box-shadow:var(--shadow);backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%)}
.sidebar{width:252px;min-width:252px;min-height:calc(100vh - 24px);position:sticky;top:12px;align-self:flex-start;display:flex;flex-direction:column;border-radius:24px;background:linear-gradient(180deg,#07080b 0%,#111827 58%,#49321d 100%);color:#fff;box-shadow:0 22px 50px rgba(0,0,0,.36);overflow:hidden;z-index:50}
.brand{text-align:center;padding:26px 18px 18px}.brand-logo-wrap{width:118px;height:118px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,.05));box-shadow:inset 0 0 0 1px rgba(255,255,255,.23),0 12px 25px rgba(0,0,0,.2)}.brand-logo-wrap img{width:106px;height:106px;object-fit:contain;filter:drop-shadow(0 8px 9px rgba(0,0,0,.22))}.brand-name{font-family:Georgia,serif;font-weight:800;color:#f9b606;letter-spacing:.8px;font-size:19px}.brand-subtitle{font-size:10px;letter-spacing:4px;margin-top:4px;color:#f8f5df}
.main-nav{padding:8px 13px 20px;overflow:auto}.nav-link{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:4px 0;border-radius:13px;color:rgba(255,255,255,.92);font-weight:650;border:1px solid transparent;transition:.18s;background:transparent;width:100%;text-align:left;cursor:pointer}.nav-link span{flex:1}.nav-link:hover{background:rgba(255,255,255,.10)}.nav-link.active{background:linear-gradient(90deg,rgba(255,255,255,.24),rgba(255,255,255,.13));border-color:rgba(255,255,255,.25);box-shadow:inset 0 1px rgba(255,255,255,.2)}.nav-toggle b{font-size:22px;transition:.2s}.nav-group.open .nav-toggle b{transform:rotate(90deg)}.nav-submenu{display:none;padding:0 0 6px 46px}.nav-group.open .nav-submenu{display:block}.nav-submenu a{display:block;padding:8px 10px;border-left:1px dashed rgba(255,255,255,.35);color:rgba(255,255,255,.75);font-size:13px}.nav-submenu a:hover,.nav-submenu a.active{color:#fff;font-weight:700}.nav-section-label{padding:18px 14px 6px;font-size:10px;text-transform:uppercase;letter-spacing:1.7px;color:rgba(255,255,255,.55)}
.sidebar-user{margin:auto 13px 14px;padding:12px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.28);border-radius:15px;display:flex;align-items:center;gap:10px}.sidebar-user>div:nth-child(2){min-width:0;flex:1}.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{font-size:10px;color:#ffd75a;margin-top:2px}.sidebar-user>a{opacity:.75}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:linear-gradient(145deg,#111827,#d5a84b);color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)}
.main-panel{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{min-height:86px;border-radius:20px;padding:14px 18px;display:flex;align-items:center;gap:14px;position:sticky;top:12px;z-index:30}.page-heading{min-width:0;flex:1}.page-heading h1{font-size:24px;margin:0 0 3px;letter-spacing:-.4px}.page-heading p{margin:0;color:var(--muted)}.topbar-actions{display:flex;align-items:center;gap:14px}.top-search{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.72);border:1px solid #e1eaec;border-radius:12px;padding:0 12px;height:42px;min-width:250px;color:#7d8b98}.top-search input{border:0;outline:none;background:transparent;width:100%;color:var(--ink)}.top-profile{display:flex;align-items:center;gap:10px;padding:4px 8px}.top-profile strong,.top-profile small{display:block}.top-profile small{color:var(--muted);font-size:11px;margin-top:2px}.icon-button{width:42px;height:42px;border:1px solid var(--line);background:rgba(255,255,255,.8);border-radius:12px;display:grid;place-items:center;cursor:pointer;color:var(--teal-900)}.mobile-menu{display:none}.content-area{padding:16px 0 8px;flex:1}.app-footer{display:flex;justify-content:space-between;padding:12px 8px;color:var(--muted);font-size:11px}

/* Components */
.grid{display:grid;gap:14px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.card{border-radius:var(--radius);padding:20px}.card.compact{padding:15px}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.card-header h2,.card-header h3{margin:0;font-size:17px}.card-header p{margin:4px 0 0;color:var(--muted);font-size:12px}.card-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.metric{position:relative;display:flex;align-items:center;gap:14px;min-height:116px;overflow:hidden}.metric:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-28px;top:-30px;background:var(--metric-soft,rgba(10,150,160,.1))}.metric-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--metric-bg,#0a9da7);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--metric-bg,#0a9da7) 27%,transparent),inset 0 0 0 4px rgba(255,255,255,.27)}.metric-body{min-width:0}.metric-label{font-size:12px;color:#364557;margin-bottom:5px}.metric-value{font-size:26px;font-weight:850;letter-spacing:-.7px}.metric-note{font-size:11px;color:var(--muted);margin-top:5px}.metric.gold{--metric-bg:#dfa925;--metric-soft:rgba(223,169,37,.14)}.metric.green{--metric-bg:#229a5d;--metric-soft:rgba(34,154,93,.12)}.metric.red{--metric-bg:#df4b56;--metric-soft:rgba(223,75,86,.12)}.metric.purple{--metric-bg:#7651d7;--metric-soft:rgba(118,81,215,.12)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:11px;padding:10px 14px;font-weight:750;cursor:pointer;transition:.18s;line-height:1}.btn:hover{transform:translateY(-1px)}.btn-sm{padding:8px 10px;font-size:12px}.btn-primary{background:linear-gradient(135deg,var(--teal-900),var(--teal-700));color:#fff;box-shadow:0 8px 18px rgba(17,31,52,.22)}.btn-gold{background:linear-gradient(135deg,#c89118,#e6bd4f);color:#332300}.btn-danger{background:var(--danger);color:#fff}.btn-success{background:var(--success);color:#fff}.btn-light{background:rgba(255,255,255,.85);border-color:var(--line);color:var(--ink)}.btn-outline{background:transparent;border-color:#aad0d3;color:var(--teal-900)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .full{grid-column:1/-1}.form-group{margin-bottom:14px}.form-group label{display:block;font-weight:700;font-size:12px;margin:0 0 7px;color:#334257}.form-control{width:100%;border:1px solid #d8e4e6;border-radius:11px;background:rgba(255,255,255,.88);padding:11px 12px;outline:none;color:var(--ink);min-height:43px}.form-control:focus{border-color:#b58b24;box-shadow:0 0 0 4px rgba(249,182,6,.13)}textarea.form-control{min-height:105px;resize:vertical}.form-hint{font-size:11px;color:var(--muted);margin-top:5px}.checkbox-row{display:flex;align-items:center;gap:8px}.checkbox-row input{width:16px;height:16px;accent-color:var(--teal-700)}
.table-wrap{overflow:auto;border:1px solid #e1ebed;border-radius:15px;background:rgba(255,255,255,.55)}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:12px 13px;text-align:left;border-bottom:1px solid #e7eef0;vertical-align:middle}th{font-size:11px;text-transform:uppercase;letter-spacing:.45px;color:#607083;background:rgba(242,248,249,.83);position:sticky;top:0;z-index:1}td{font-size:13px}tbody tr:hover{background:rgba(8,145,154,.035)}tbody tr:last-child td{border-bottom:0}.table-actions{display:flex;gap:5px;white-space:nowrap}.empty-state{text-align:center;padding:45px 20px;color:var(--muted)}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;text-transform:capitalize}.badge-success{background:#dcf4e6;color:#167b4a}.badge-warning{background:#fff0cb;color:#936511}.badge-danger{background:#ffe0e3;color:#a82c37}.badge-info{background:#dceff4;color:#0e7180}.badge-muted{background:#e9eef0;color:#65717d}.badge-purple{background:#eee7ff;color:#6545ba}
.alert{border-radius:13px;padding:13px 42px 13px 15px;margin-bottom:14px;position:relative;border:1px solid}.alert button{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:22px;cursor:pointer;color:inherit}.alert-success{background:#e3f6eb;color:#176c44;border-color:#bce7cf}.alert-danger{background:#ffe5e7;color:#9a2530;border-color:#f5bfc4}.alert-warning{background:#fff1d1;color:#805714;border-color:#f0d594}.alert-info{background:#e1f2f5;color:#116676;border-color:#badfe5}
.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap}.filter-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-row .form-control{width:auto;min-width:145px}.search-input{position:relative}.search-input .icon{position:absolute;left:11px;top:12px;color:#82909d}.search-input input{padding-left:36px;min-width:240px}
.list{display:grid;gap:10px}.list-item{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid #e2ebed;border-radius:13px;background:rgba(255,255,255,.56)}.list-item-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#e1f1f3;color:var(--teal-800);flex:0 0 auto}.list-item-body{min-width:0;flex:1}.list-item-title{font-weight:780}.list-item-meta{font-size:11px;color:var(--muted);margin-top:4px}.list-item p{margin:6px 0 0;color:#4f6072;line-height:1.45}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-action{padding:17px 10px;border:1px solid #dce8ea;border-radius:14px;background:rgba(255,255,255,.66);text-align:center;color:var(--teal-900);font-weight:760}.quick-action .icon{margin:0 auto 8px}.quick-action:hover{border-color:#85c6ca;background:#fff}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.tab{border:1px solid #dce8ea;background:rgba(255,255,255,.64);padding:8px 12px;border-radius:10px;font-size:12px;font-weight:750;color:#607083}.tab.active{background:var(--teal-800);color:#fff;border-color:var(--teal-800)}
dialog{width:min(780px,calc(100% - 30px));border:1px solid rgba(255,255,255,.85);border-radius:22px;padding:0;background:rgba(249,252,252,.95);box-shadow:0 30px 80px rgba(4,49,60,.35);backdrop-filter:blur(20px)}dialog::backdrop{background:rgba(5,28,38,.48);backdrop-filter:blur(4px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #dfe9eb}.dialog-header h2{margin:0;font-size:19px}.dialog-close{border:0;background:#edf3f4;width:34px;height:34px;border-radius:10px;font-size:20px;cursor:pointer}.dialog-body{padding:20px}.dialog-footer{padding:14px 20px;border-top:1px solid #dfe9eb;display:flex;justify-content:flex-end;gap:8px}
.topic{padding:16px;border:1px solid #e0eaec;border-radius:15px;background:rgba(255,255,255,.62)}.topic+.topic{margin-top:10px}.topic-head{display:flex;justify-content:space-between;gap:12px}.topic h3{margin:0;font-size:15px}.topic-meta{font-size:11px;color:var(--muted);margin-top:5px}.topic-body{line-height:1.6;color:#425466;margin-top:12px}.reply{margin-top:12px;margin-left:30px;border-left:3px solid #9fd0d3;padding:10px 14px;background:rgba(255,255,255,.55);border-radius:0 12px 12px 0}.accepted{border-left-color:#2aa86a;background:#eefaf3}
.stat-inline{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.stat-inline div{display:flex;gap:6px;align-items:baseline}.stat-inline strong{font-size:17px}.stat-inline span{font-size:11px;color:var(--muted)}
.sidebar-backdrop{display:none}

@media (max-width:1180px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.top-search{display:none}.span-3{grid-column:span 2}}
@media (max-width:860px){.app-shell{padding:8px}.sidebar{position:fixed;left:-280px;top:8px;bottom:8px;min-height:auto;transition:.25s}.sidebar.open{left:8px}.sidebar-backdrop{position:fixed;inset:0;background:rgba(3,29,39,.5);z-index:40}.sidebar.open+.sidebar-backdrop{display:block}.mobile-menu{display:grid}.topbar{top:8px}.page-heading h1{font-size:20px}.top-profile>div:last-child{display:none}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
@media (max-width:560px){.auth-card{padding:30px 22px;border-radius:24px}.topbar{padding:10px 12px;min-height:72px}.page-heading p{display:none}.top-profile{padding:0}.content-area{padding-top:10px}.card{padding:15px;border-radius:16px}.metric{min-height:100px}.toolbar{align-items:stretch}.toolbar>*{width:100%}.filter-row{width:100%}.filter-row .form-control,.search-input input{width:100%;min-width:0}.quick-actions{grid-template-columns:1fr}.app-footer{display:block;text-align:center}.app-footer span{display:block;margin:3px}}

/* V1.0.1 Member photo and protected QR identity */
.avatar{overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.member-thumb{width:42px;height:42px;border-radius:50%;object-fit:cover;display:inline-grid;place-items:center;background:linear-gradient(145deg,#111827,#d5a84b);color:#fff;font-weight:800;border:2px solid rgba(255,255,255,.9);box-shadow:0 5px 12px rgba(19,76,89,.14)}.member-thumb-placeholder{font-size:11px}.profile-photo-preview{width:120px;height:120px;border-radius:18px;object-fit:cover;border:3px solid rgba(255,255,255,.95);box-shadow:0 10px 24px rgba(16,73,84,.16)}.enrollment-review-photo{display:grid;place-items:center;margin:0 0 14px}.enrollment-review-photo img,.member-profile-photo img{width:170px;height:170px;border-radius:24px;object-fit:cover;border:4px solid rgba(255,255,255,.96);box-shadow:0 16px 34px rgba(8,72,85,.18)}.profile-photo-placeholder{width:170px;height:170px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,#0b7e91,#d5a832);color:#fff;font-size:42px;font-weight:850;border:4px solid rgba(255,255,255,.96);box-shadow:0 16px 34px rgba(8,72,85,.18)}.member-profile-card{text-align:center;display:flex;flex-direction:column;align-items:center;gap:9px}.member-profile-card h2{margin:2px 0 0}.member-profile-card p{margin:0;color:var(--muted)}.member-profile-card .btn{margin-top:8px}.qr-profile-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:center}.qr-code{display:grid;place-items:center;padding:12px;background:#fff;border:1px solid #dbe7ea;border-radius:18px;width:max-content;max-width:100%;box-shadow:0 10px 26px rgba(17,64,76,.11)}.qr-code svg{max-width:100%;height:auto}.break-word{overflow-wrap:anywhere;word-break:break-word}.verification-card{max-width:880px;margin:0 auto}.verification-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border-radius:14px;font-weight:850;margin-bottom:22px}.verification-banner.verified{background:#ddf5e7;color:#137646;border:1px solid #b6e4ca}.verification-banner.warning{background:#fff0ce;color:#8b6114;border:1px solid #ecd08b}.verification-profile{display:flex;align-items:center;gap:26px;padding:10px 12px 24px}.verification-profile h2{font-size:30px;margin:4px 0}.eyebrow{font-size:11px;letter-spacing:1.8px;color:var(--teal-800);font-weight:850}.member-number-large{font-size:18px;font-weight:800;color:var(--gold);margin:0 0 12px}.status-row{display:flex;gap:7px;flex-wrap:wrap}.verification-details{border-top:1px solid var(--line);padding-top:18px}.verification-note{margin:18px 0 0;padding:12px 14px;border-radius:12px;background:#edf5f6;color:#536474;font-size:12px;line-height:1.55}

.id-card-page{min-height:100vh;padding:28px;background:#eaf2f4;color:#102437}.id-card-toolbar{display:flex;justify-content:center;gap:10px;margin-bottom:22px}.member-id-card{width:856px;max-width:100%;min-height:540px;margin:0 auto;border-radius:28px;overflow:hidden;background:linear-gradient(145deg,#fdfefe,#e9f4f5);border:2px solid #d5a72b;box-shadow:0 24px 60px rgba(3,55,67,.25);position:relative}.member-id-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 80% 10%,rgba(17,174,183,.12),transparent 34%)}.id-card-header{height:112px;padding:14px 24px;display:flex;align-items:center;gap:18px;background:linear-gradient(120deg,#07566c,#07848a);color:#fff;border-bottom:5px solid #d5a72b}.id-card-header img{width:84px;height:84px;object-fit:contain}.id-card-header strong,.id-card-header span{display:block}.id-card-header strong{font-family:Georgia,serif;font-size:27px;color:#f2cc61;letter-spacing:.7px}.id-card-header span{font-size:12px;letter-spacing:3px;margin-top:5px}.id-card-body{display:grid;grid-template-columns:190px 1fr 180px;gap:24px;align-items:center;padding:34px 30px 28px;position:relative;z-index:1}.id-card-photo img,.id-card-photo .profile-photo-placeholder{width:175px;height:210px;border-radius:18px;object-fit:cover}.id-card-photo .profile-photo-placeholder{font-size:44px}.id-card-info h1{margin:0 0 10px;font-family:Georgia,serif;font-size:31px;color:#064f60}.id-card-info p{margin:6px 0;color:#42566a;font-size:16px}.id-member-no{font-weight:850;color:#c38d15!important;font-size:22px!important}.id-status{margin-top:22px;display:inline-block;padding:9px 13px;border-radius:999px;background:#dff4e8;color:#167847;font-weight:850;font-size:12px}.id-card-qr{text-align:center}.id-card-qr>div{display:grid;place-items:center;padding:7px;background:#fff;border-radius:12px;border:1px solid #dce7e9}.id-card-qr svg{display:block;max-width:100%;height:auto}.id-card-qr small{display:block;margin-top:7px;font-size:9px;line-height:1.4;color:#536474;font-weight:800;letter-spacing:.6px}.id-card-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 28px;background:#063f4d;color:#f2cb60;font-size:11px;letter-spacing:1.2px;position:relative;z-index:1}.id-card-note{text-align:center;color:#607080;font-size:12px;margin:16px auto;max-width:700px}

@media (max-width:860px){.qr-profile-layout{grid-template-columns:1fr}.qr-code{margin:auto}.verification-profile{flex-direction:column;text-align:center}.status-row{justify-content:center}.member-id-card{transform-origin:top center}.id-card-body{grid-template-columns:1fr;text-align:center}.id-card-photo,.id-card-qr{display:grid;place-items:center}.id-card-footer{gap:10px;flex-direction:column}.id-card-header{justify-content:center;text-align:center}.id-card-header strong{font-size:21px}}
@media print{.id-card-page{padding:0;background:#fff}.id-card-toolbar,.id-card-note{display:none}.member-id-card{width:85.6mm;min-height:54mm;height:54mm;border-radius:3mm;box-shadow:none;border-width:.35mm}.id-card-header{height:12mm;padding:1.2mm 2.6mm;border-bottom-width:.6mm;gap:1.5mm}.id-card-header img{width:9mm;height:9mm}.id-card-header strong{font-size:3.2mm}.id-card-header span{font-size:1.35mm;letter-spacing:.35mm;margin-top:.5mm}.id-card-body{height:35mm;grid-template-columns:19mm 1fr 18mm;gap:2.4mm;padding:2.7mm 3mm}.id-card-photo img,.id-card-photo .profile-photo-placeholder{width:18mm;height:23mm;border-radius:1.5mm;border-width:.35mm}.id-card-photo .profile-photo-placeholder{font-size:5mm}.id-card-info h1{font-size:3.6mm;margin:0 0 .8mm}.id-card-info p{font-size:2mm;margin:.5mm 0}.id-member-no{font-size:2.6mm!important}.id-status{font-size:1.45mm;padding:.8mm 1.2mm;margin-top:1.6mm}.id-card-qr>div{padding:.5mm;border-radius:1mm}.id-card-qr svg{width:15mm!important;height:15mm!important}.id-card-qr small{font-size:1.05mm;margin-top:.4mm}.id-card-footer{height:7mm;padding:1mm 3mm;font-size:1.2mm;letter-spacing:.18mm}.member-id-card:after{display:none}@page{size:85.6mm 54mm;margin:0}}

/* V1.0.2 Important Member Information PDF library */
.member-pdf-section{margin-top:16px}.member-pdf-privacy-note{display:flex;align-items:center;gap:10px;padding:11px 13px;margin:0 0 18px;border:1px solid #d7e7e9;border-radius:13px;background:rgba(233,246,247,.78);color:#536777;font-size:12px;line-height:1.5}.member-pdf-privacy-note .icon{color:var(--teal-800);flex:0 0 auto}.member-pdf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.member-pdf-empty{grid-column:1/-1}.member-pdf-card{min-width:0;padding:14px;border:1px solid #dce8ea;border-radius:18px;background:rgba(255,255,255,.7);box-shadow:0 10px 24px rgba(14,64,76,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.member-pdf-card:hover{transform:translateY(-2px);border-color:#9acfd3;box-shadow:0 16px 32px rgba(14,64,76,.13)}.pdf-cover{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;aspect-ratio:210/297;width:min(100%,225px);margin:0 auto 13px;padding:22px 18px;text-align:center;text-decoration:none;color:#182a3e;border:1px solid #b9c5cb;border-radius:3px;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:0 8px 18px rgba(25,54,66,.12);overflow:hidden}.pdf-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.8),transparent 42%),radial-gradient(circle at 88% 92%,rgba(216,46,46,.07),transparent 24%);pointer-events:none}.pdf-cover-lines{position:absolute;top:24px;left:24px;right:24px;display:grid;gap:5px}.pdf-cover-lines i{display:block;height:2px;border-radius:5px;background:#dde4e7}.pdf-cover-lines i:nth-child(2){width:78%}.pdf-cover-lines i:nth-child(3){width:58%}.pdf-cover-title{position:relative;z-index:1;font-family:Georgia,serif;font-size:15px;font-weight:760;line-height:1.35;color:#18314a}.pdf-cover-file{position:relative;z-index:1;font-size:9px;line-height:1.35;color:#758391;overflow-wrap:anywhere}.pdf-cover-badge{position:absolute;right:9px;bottom:9px;z-index:1;display:grid;place-items:center;width:36px;height:29px;border-radius:7px;background:#d73030;color:#fff;font-size:10px;font-weight:900;letter-spacing:.6px;box-shadow:0 5px 10px rgba(151,25,25,.25)}.member-pdf-caption{text-align:center;min-height:49px}.member-pdf-caption strong{display:block;font-size:14px;line-height:1.35;color:#10273b}.member-pdf-caption span{display:block;margin-top:4px;font-size:10px;color:var(--muted)}.member-pdf-actions{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}.member-pdf-actions form{margin:0}.member-pdf-actions .btn{white-space:nowrap}
@media (max-width:1180px){.member-pdf-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.member-pdf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.member-pdf-grid{grid-template-columns:1fr}.pdf-cover{width:min(100%,250px)}}

/* V1.0.3 Library file-or-link source selector */
[hidden]{display:none!important}.form-help{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.45}.pdf-cover.link-cover{background:linear-gradient(180deg,#f8ffff,#eef9fa);border-color:#95cdd1}.pdf-cover.link-cover:before{background:linear-gradient(135deg,rgba(255,255,255,.86),transparent 42%),radial-gradient(circle at 88% 92%,rgba(9,137,150,.12),transparent 28%)}.pdf-cover-badge.link-badge{width:44px;background:linear-gradient(135deg,var(--teal-800),var(--teal-600));box-shadow:0 5px 10px rgba(8,111,125,.24)}

/* V1.0.4 Member Information Form */
.member-info-selector{margin-bottom:14px}.member-info-selector .toolbar{align-items:end}.member-info-selector .toolbar>div{min-width:min(100%,440px);flex:1}.form-label{display:block;margin-bottom:7px;font-size:12px;font-weight:800;color:#263d50}.empty-state-panel{text-align:center;padding:48px 24px}.empty-state-panel h2{margin-bottom:8px}.member-info-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;padding:22px 24px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(232,247,248,.76));border-color:#cce3e6}.member-info-identity{display:flex;align-items:center;gap:18px;min-width:0}.member-info-identity>img,.member-info-avatar{width:78px;height:78px;border-radius:20px;object-fit:cover;border:3px solid #fff;box-shadow:0 11px 24px rgba(9,77,91,.16);flex:0 0 auto}.member-info-avatar{display:grid;place-items:center;background:linear-gradient(145deg,#087d8e,#d4a629);color:#fff;font-size:24px;font-weight:900}.member-info-identity h2{margin:3px 0 4px;font-family:Georgia,serif;color:#07566a;font-size:26px}.member-info-identity p{margin:0;color:var(--muted)}.member-info-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.member-information-form{display:grid;gap:14px}.info-form-section{padding:0;overflow:hidden}.info-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid #dbe8ea;background:linear-gradient(100deg,rgba(232,247,248,.88),rgba(255,255,255,.58))}.info-section-heading>div:first-child{display:grid;grid-template-columns:40px 1fr;column-gap:12px;align-items:center}.info-section-heading>div:first-child>span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#087d8e,#0a6678);color:#fff;font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(8,105,122,.2)}.info-section-heading h2{margin:0;font-size:18px;color:#153247}.info-section-heading p{margin:3px 0 0;font-size:12px;color:var(--muted)}.info-form-grid{padding:22px}.children-counter,.photo-limit{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:94px;padding:9px 12px;border-radius:14px;background:#fff;border:1px solid #d4e5e7;box-shadow:0 6px 16px rgba(12,76,90,.07)}.children-counter strong,.photo-limit strong{font-size:22px;line-height:1;color:#087d8e}.children-counter small,.photo-limit small{margin-top:5px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.6px;font-weight:800}.children-list{display:grid;gap:10px;padding:0 22px 14px}.child-row{display:grid;grid-template-columns:38px minmax(180px,1.5fr) minmax(150px,1fr) 88px 38px;gap:10px;align-items:end;padding:14px;border:1px solid #dbe7e9;border-radius:15px;background:rgba(250,253,253,.82)}.child-number{align-self:center;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e2f2f3;color:#087d8e;font-weight:900}.child-row .form-group{margin:0}.child-remove{align-self:center;color:#bd2d36;background:#fff0f1;border:1px solid #efc3c6}.info-form-section>[data-add-child]{margin:0 22px 22px}.age-field input{text-align:center;font-weight:800;color:#07566a}.identifying-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding:22px 22px 8px}.identifying-photo-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid #d9e6e8;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(13,66,79,.08);min-width:0}.identifying-photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:11px;background:#edf3f4}.identifying-photo-card div{min-width:0}.identifying-photo-card strong,.identifying-photo-card span{display:block}.identifying-photo-card strong{font-size:12px;color:#173247}.identifying-photo-card span{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:var(--muted)}.identifying-photo-card .btn{align-self:flex-start}.photo-upload-zone{margin:14px 22px 22px;padding:18px;border:1px dashed #88c2c8;border-radius:16px;background:rgba(235,248,249,.66)}.selected-photo-preview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}.selected-photo-item{min-width:0;padding:7px;border-radius:12px;background:#fff;border:1px solid #d8e6e8}.selected-photo-item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.selected-photo-item span{display:block;margin-top:5px;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.member-info-savebar{position:sticky;bottom:12px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-color:#cce0e3;box-shadow:0 16px 38px rgba(7,59,72,.16)}.member-info-savebar strong{color:#173247}.member-info-savebar p{margin:3px 0 0;color:var(--muted);font-size:11px}
@media(max-width:1100px){.identifying-photo-grid,.selected-photo-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.child-row{grid-template-columns:38px 1fr 1fr 80px 38px}}
@media(max-width:760px){.member-info-hero,.member-info-savebar{align-items:flex-start;flex-direction:column}.member-info-hero-actions{justify-content:flex-start}.info-section-heading{align-items:flex-start}.child-row{grid-template-columns:34px 1fr 38px}.child-row .form-group{grid-column:2}.child-row .age-field{grid-column:2}.child-remove{grid-column:3;grid-row:1}.identifying-photo-grid,.selected-photo-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.member-info-savebar{position:static}.member-info-savebar .card-actions{width:100%}.member-info-savebar .btn{flex:1}}
@media(max-width:480px){.member-info-identity{align-items:flex-start}.member-info-identity>img,.member-info-avatar{width:62px;height:62px;border-radius:16px}.member-info-identity h2{font-size:20px}.info-section-heading{padding:16px}.info-section-heading>div:first-child{grid-template-columns:34px 1fr}.info-section-heading>div:first-child>span{width:34px;height:34px}.info-form-grid,.children-list{padding-left:16px;padding-right:16px}.info-form-section>[data-add-child],.photo-upload-zone{margin-left:16px;margin-right:16px}.identifying-photo-grid,.selected-photo-preview{grid-template-columns:1fr 1fr;padding-left:16px;padding-right:16px}}

/* GMEC Grand Majestic Eagles Club branding */
.auth-card{width:min(100%,490px);padding:34px 42px 40px;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,250,225,.68));border-color:rgba(255,255,255,.78)}
.auth-brand{display:flex;align-items:center;gap:18px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid rgba(17,31,52,.16)}
.auth-brand img{width:112px;height:116px;object-fit:contain;filter:drop-shadow(0 9px 10px rgba(0,0,0,.18));flex:0 0 auto}
.auth-brand span{display:block;color:#111f34;font-size:11px;font-weight:900;letter-spacing:2px}
.auth-brand h1{margin:3px 0 2px;font-family:Georgia,serif;font-size:27px;color:#26364d}
.auth-brand p{margin:0;color:#9a6c0b;font-family:Georgia,serif;font-style:italic;font-weight:700}
.auth-title h2{margin:0 0 5px;color:#111f34;font-size:20px}.auth-title p{margin:0 0 22px;color:#657080;font-size:12px}
.login-help{color:#486044;font-weight:650}
.brand{padding-top:20px}.brand-logo-wrap{width:126px;height:132px;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.20),rgba(249,182,6,.08))}.brand-logo-wrap img{width:116px;height:122px}
.brand-name{font-size:17px;letter-spacing:.7px}.brand-chapter{font-family:Georgia,serif;color:#fff;font-size:13px;font-weight:800;margin-top:2px}.brand-subtitle{letter-spacing:3px;margin-top:5px}
.btn-gold{background:linear-gradient(135deg,#ca9117,#f9b606);color:#2a230d}.btn-outline{border-color:#b8a77f;color:#111f34}
.metric-icon{background:var(--metric-bg,#1d681d)}
.member-info-identity h2,.age-field input{color:#111f34}.member-info-avatar{background:linear-gradient(145deg,#111f34,#ca9117)}
.info-section-heading>div:first-child>span{background:linear-gradient(145deg,#111f34,#a9792e);box-shadow:0 8px 18px rgba(17,31,52,.2)}
.children-counter strong,.photo-limit strong,.child-number{color:#111f34}.child-number{background:#f2ede1}
@media(max-width:520px){.auth-card{padding:26px 22px 30px}.auth-brand{align-items:flex-start}.auth-brand img{width:82px;height:88px}.auth-brand h1{font-size:22px}}

/* V1.0.0-RC2 LMS-inspired public login and Production Tools */
.login-page{min-height:100vh;position:relative;margin:0;overflow-x:hidden;background-color:#041d0b;background-image:var(--login-background);background-position:center;background-size:cover;background-repeat:no-repeat;color:#fff}
.login-page-overlay{position:fixed;inset:0;background:linear-gradient(105deg,rgba(2,20,8,.88) 0%,rgba(4,35,15,.68) 48%,rgba(4,20,9,.82) 100%);backdrop-filter:saturate(112%);pointer-events:none}
.login-page:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 16% 18%,rgba(249,182,6,.22),transparent 30%),radial-gradient(circle at 82% 20%,rgba(85,170,75,.18),transparent 28%);pointer-events:none}
.login-layout{position:relative;z-index:2;width:min(1240px,calc(100% - 48px));min-height:calc(100vh - 96px);margin:0 auto;padding:48px 0 72px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:center;gap:56px}
.login-showcase{min-width:0;padding:22px 0;text-shadow:0 2px 18px rgba(0,0,0,.28)}
.login-showcase-brand{display:flex;align-items:center;gap:22px;margin-bottom:46px}
.login-showcase-brand img{width:152px;height:158px;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(0,0,0,.38))}
.login-showcase-brand span{display:block;color:#f9cf49;font-size:12px;letter-spacing:3.2px;font-weight:900}
.login-showcase-brand h1{margin:4px 0 2px;font-family:Georgia,serif;font-size:34px;line-height:1.05;color:#fff}
.login-showcase-brand p{margin:0;color:#f5d26e;font-family:Georgia,serif;font-style:italic;font-weight:700;font-size:15px}
.login-showcase-copy{max-width:760px}
.login-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.09);backdrop-filter:blur(12px);font-size:11px;text-transform:uppercase;letter-spacing:1.7px;font-weight:850;color:#fff5cd}
.login-showcase-copy h2{margin:18px 0 12px;font-size:clamp(38px,5vw,67px);line-height:.98;letter-spacing:-2.2px;color:#fff;max-width:720px}
.login-showcase-copy>p{max-width:670px;margin:0;color:rgba(255,255,255,.82);font-size:17px;line-height:1.65}
.login-announcement-panel{max-width:760px;margin-top:34px;padding:22px 24px;display:grid;grid-template-columns:48px 1fr;gap:16px;border:1px solid rgba(255,255,255,.24);border-left:4px solid #f9b606;border-radius:18px;background:linear-gradient(135deg,rgba(7,48,19,.76),rgba(7,31,14,.48));box-shadow:0 22px 46px rgba(0,0,0,.2);backdrop-filter:blur(18px) saturate(125%)}
.login-announcement-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#f9b606,#c7890d);color:#1b2a12;box-shadow:0 10px 22px rgba(249,182,6,.23)}
.login-announcement-label{display:block;margin:1px 0 5px;color:#f9cf49;font-size:10px;letter-spacing:1.9px;font-weight:900}
.login-announcement-panel h3{margin:0 0 7px;font-size:19px;color:#fff}
.login-announcement-panel p{margin:0;color:rgba(255,255,255,.82);line-height:1.55;font-size:13px}
.login-announcement-link{display:inline-flex;align-items:center;gap:7px;margin-top:13px;color:#ffe58a;font-size:12px;font-weight:800}
.login-announcement-link:hover{text-decoration:underline}
.login-access-panel{display:flex;justify-content:flex-end}
.login-card{width:min(100%,455px);padding:38px 38px 32px;border:1px solid rgba(255,255,255,.68);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,249,222,.88));box-shadow:0 34px 80px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.9);color:var(--ink);backdrop-filter:blur(24px) saturate(135%)}
.login-card-heading{margin-bottom:24px}
.secure-login-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#f4ead2;color:#111f34;font-size:10px;text-transform:uppercase;letter-spacing:1.1px;font-weight:900}
.login-card-heading h2{margin:16px 0 6px;color:#111f34;font-size:30px;letter-spacing:-.7px}
.login-card-heading p{margin:0;color:#6b7568;font-size:13px}
.login-form .form-group{margin-bottom:17px}
.login-form .form-group label{color:#2c3b50;font-size:12px}
.login-input-wrap{position:relative}
.login-input-wrap>.icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#658264;z-index:2;pointer-events:none}
.login-input-wrap .form-control{min-height:55px;padding-left:47px;border-radius:14px;border-color:#d7e2d2;background:rgba(255,255,255,.9);box-shadow:inset 0 1px rgba(255,255,255,.8)}
.login-input-wrap .form-control:focus{border-color:#b78a1e;box-shadow:0 0 0 4px rgba(249,182,6,.16)}
.login-card .login-button{margin-top:3px;min-height:54px;border-radius:14px;font-size:14px}
.login-support{margin-top:20px;padding-top:17px;border-top:1px solid #ded6c5;text-align:center}
.login-support strong,.login-support span{display:block}
.login-support strong{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#3d4a5c}
.login-support span{margin-top:5px;color:#788277;font-size:10px;line-height:1.5}
.login-copyright{position:fixed;z-index:3;left:0;right:0;bottom:18px;text-align:center;color:rgba(255,255,255,.72);font-size:11px;letter-spacing:.2px;text-shadow:0 2px 8px rgba(0,0,0,.45)}

.production-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:14px;align-items:start}
.production-side-column{display:grid;gap:14px}
.production-background-preview{min-height:190px;margin-bottom:20px;padding:22px;display:flex;align-items:flex-end;border-radius:18px;background-position:center;background-size:cover;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 12px 28px rgba(17,31,52,.18);overflow:hidden}
.production-background-preview>div{max-width:100%;padding:10px 13px;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(6,12,24,.72);backdrop-filter:blur(12px);color:#fff}
.production-background-preview span,.production-background-preview strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.production-background-preview span{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#f8d86d;font-weight:850}
.production-background-preview strong{margin-top:3px;font-size:12px}
.health-check-list{display:grid;gap:9px}
.health-check{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;padding:10px 11px;border:1px solid #e0d8c8;border-radius:12px;background:rgba(255,255,255,.7)}
.health-check-mark{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;font-weight:900}
.health-check.pass .health-check-mark{background:#e5f5e9;color:#177342}
.health-check.warn .health-check-mark{background:#fff3cd;color:#946500}
.health-check.fail .health-check-mark{background:#fde6e8;color:#ae2631}
.health-check strong{display:block;font-size:12px;color:#26364d}
.health-check p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.45}
.production-summary h3{margin:0 0 12px}
.production-summary dl{margin:0;display:grid;gap:8px}
.production-summary dl>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;padding-bottom:8px;border-bottom:1px dashed #ded6c5}
.production-summary dt{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#77705f;font-weight:800}
.production-summary dd{margin:0;min-width:0;overflow-wrap:anywhere;font-size:11px;color:#26364d;font-weight:700}

@media(max-width:1050px){
 .login-layout{grid-template-columns:1fr minmax(350px,.8fr);gap:34px;width:min(1180px,calc(100% - 34px))}
 .login-showcase-brand{margin-bottom:30px}.login-showcase-brand img{width:124px;height:130px}.login-showcase-copy h2{font-size:48px}
 .production-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
 .login-page{overflow:auto}.login-layout{min-height:auto;grid-template-columns:1fr;padding:28px 0 86px;gap:24px}
 .login-showcase{padding:0}.login-showcase-brand{justify-content:center;text-align:left;margin-bottom:24px}.login-showcase-copy{text-align:center;margin:0 auto}.login-showcase-copy h2{font-size:42px;letter-spacing:-1.4px}.login-showcase-copy>p{font-size:14px;margin-inline:auto}.login-announcement-panel{margin:24px auto 0;text-align:left}
 .login-access-panel{justify-content:center}.login-card{width:min(100%,510px)}.login-copyright{position:absolute}
}
@media(max-width:520px){
 .login-layout{width:min(100% - 24px,500px);padding-top:18px}.login-showcase-brand{gap:13px}.login-showcase-brand img{width:90px;height:96px}.login-showcase-brand h1{font-size:24px}.login-showcase-brand span{font-size:9px;letter-spacing:2px}.login-showcase-brand p{font-size:12px}
 .login-showcase-copy h2{font-size:34px}.login-showcase-copy>p{font-size:13px}.login-kicker{font-size:9px}.login-announcement-panel{grid-template-columns:38px 1fr;padding:17px 16px;gap:12px}.login-announcement-icon{width:38px;height:38px;border-radius:11px}.login-announcement-panel h3{font-size:16px}.login-announcement-panel p{font-size:11px}
 .login-card{padding:27px 21px 24px;border-radius:22px}.login-card-heading h2{font-size:26px}.login-copyright{bottom:12px;font-size:10px}
 .production-background-preview{min-height:150px}
}

/* GMEC configurable portal themes (compatibility keys retained internally) */
html[data-theme="rizal_green"]{
 --teal-950:#07080b;--teal-900:#111827;--teal-800:#1d2b42;--teal-700:#334b6f;--teal-600:#536d94;
 --gold:#d5a84b;--gold-soft:#f8e7bd;--ink:#151a23;--muted:#6d7480;--line:#dfe3e8;
 --theme-sidebar-start:#050609;--theme-sidebar-mid:#111827;--theme-sidebar-end:#49321d;--theme-accent:#d5a84b;--theme-accent-dark:#a9792e;
 --theme-page-a:#f4f1e9;--theme-page-b:#fcfcfb;--theme-page-c:#edf1f6;--theme-rgb:17,24,39;--theme-soft:#f5efe0;
}
html[data-theme="pilipinas_blue"]{
 --teal-950:#061326;--teal-900:#0b2545;--teal-800:#11365f;--teal-700:#1b4c80;--teal-600:#35699e;
 --gold:#d9ae54;--gold-soft:#faebc7;--ink:#102033;--muted:#657487;--line:#d9e2ed;
 --theme-sidebar-start:#051326;--theme-sidebar-mid:#0b2545;--theme-sidebar-end:#1a4978;--theme-accent:#d9ae54;--theme-accent-dark:#a97a28;
 --theme-page-a:#edf3fb;--theme-page-b:#fcfdff;--theme-page-c:#f8f1df;--theme-rgb:11,37,69;--theme-soft:#eaf1fa;
}
html[data-theme="bandilang_pula"]{
 --teal-950:#35070b;--teal-900:#5b0c14;--teal-800:#74101a;--teal-700:#941b27;--teal-600:#b13b45;
 --gold:#d8ad55;--gold-soft:#faeac5;--ink:#29171b;--muted:#77666b;--line:#eadbdd;
 --theme-sidebar-start:#2b0609;--theme-sidebar-mid:#5b0c14;--theme-sidebar-end:#8d1823;--theme-accent:#d8ad55;--theme-accent-dark:#a8792c;
 --theme-page-a:#fbf0f1;--theme-page-b:#fffdfd;--theme-page-c:#f4ede1;--theme-rgb:91,12,20;--theme-soft:#faecee;
}
html[data-theme="araw_at_bituin"]{
 --teal-950:#2a1b08;--teal-900:#50330e;--teal-800:#6d4818;--teal-700:#91631f;--teal-600:#b58338;
 --gold:#e2ba67;--gold-soft:#fff0cb;--ink:#2b251b;--muted:#786e5d;--line:#e8dfcc;
 --theme-sidebar-start:#211706;--theme-sidebar-mid:#50330e;--theme-sidebar-end:#805820;--theme-accent:#e2ba67;--theme-accent-dark:#ad7b2e;
 --theme-page-a:#fbf3df;--theme-page-b:#fffefa;--theme-page-c:#f3eee5;--theme-rgb:80,51,14;--theme-soft:#fbf1d8;
}
html[data-theme="sampaguita_pearl"]{
 --teal-950:#0b1b2d;--teal-900:#102a47;--teal-800:#1f456b;--teal-700:#35648f;--teal-600:#5b84aa;
 --gold:#d9ae54;--gold-soft:#faebc7;--ink:#172738;--muted:#687987;--line:#dce5ec;
 --theme-sidebar-start:#091726;--theme-sidebar-mid:#102a47;--theme-sidebar-end:#315b81;--theme-accent:#d9ae54;--theme-accent-dark:#a97a28;
 --theme-page-a:#f4f7fa;--theme-page-b:#ffffff;--theme-page-c:#eef3f7;--theme-rgb:16,42,71;--theme-soft:#f7fafc;
}
html[data-theme="bayanihan"]{
 --teal-950:#111112;--teal-900:#242022;--teal-800:#432727;--teal-700:#6b2927;--teal-600:#8d4945;
 --gold:#b88a45;--gold-soft:#f1dfc0;--ink:#272022;--muted:#766a6c;--line:#e5ddda;
 --theme-sidebar-start:#0d0d0e;--theme-sidebar-mid:#242022;--theme-sidebar-end:#5d2a27;--theme-accent:#b88a45;--theme-accent-dark:#865f2d;
 --theme-page-a:#f3f0ee;--theme-page-b:#fff;--theme-page-c:#f5e9e5;--theme-rgb:107,41,39;--theme-soft:#f6eeeb;
}
html[data-theme] .app-body{background:linear-gradient(135deg,var(--theme-page-a) 0%,var(--theme-page-b) 52%,var(--theme-page-c) 100%)}
html[data-theme] .sidebar{background:linear-gradient(180deg,var(--theme-sidebar-start) 0%,var(--theme-sidebar-mid) 58%,var(--theme-sidebar-end) 100%);box-shadow:0 22px 50px rgba(var(--theme-rgb),.28)}
html[data-theme] .brand-name{color:var(--theme-accent)}
html[data-theme] .sidebar-user{background:rgba(0,0,0,.18)}
html[data-theme] .sidebar-user small{color:var(--theme-accent)}
html[data-theme] .avatar{background:linear-gradient(145deg,var(--teal-900),var(--theme-accent))}
html[data-theme] .btn-primary{background:linear-gradient(135deg,var(--teal-900),var(--teal-700));box-shadow:0 8px 18px rgba(var(--theme-rgb),.22)}
html[data-theme] .btn-gold{background:linear-gradient(135deg,var(--theme-accent-dark),var(--theme-accent));color:#2a230d}
html[data-theme] .btn-outline{border-color:color-mix(in srgb,var(--teal-700) 35%,#fff);color:var(--teal-900)}
html[data-theme] .icon-button{color:var(--teal-900)}
html[data-theme] .member-info-identity h2,html[data-theme] .age-field input,html[data-theme] .children-counter strong,html[data-theme] .photo-limit strong,html[data-theme] .child-number{color:var(--teal-900)}
html[data-theme] .member-info-avatar,html[data-theme] .info-section-heading>div:first-child>span{background:linear-gradient(145deg,var(--teal-900),var(--theme-accent-dark));box-shadow:0 8px 18px rgba(var(--theme-rgb),.2)}
html[data-theme] .child-number{background:var(--theme-soft)}
html[data-theme] .form-control:focus{border-color:var(--teal-700);box-shadow:0 0 0 3px rgba(var(--theme-rgb),.11)}

.theme-selector-wrap{height:42px;display:flex;align-items:center;gap:7px;padding:0 9px 0 11px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.78);color:var(--teal-900);white-space:nowrap}
.theme-selector{width:162px;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px;font-weight:750;cursor:pointer}
.theme-selector option{color:#17233a;background:#fff}
.production-section-divider{height:1px;margin:30px 0 24px;background:linear-gradient(90deg,transparent,var(--line),transparent);scroll-margin-top:120px}
.production-theme-heading>.icon{color:var(--teal-900)}
.production-theme-form{display:grid;gap:18px}
.theme-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.theme-admin-card{display:flex;flex-direction:column;min-width:0;padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.72);cursor:default}
.theme-admin-swatches{display:flex;height:34px;margin-bottom:10px;overflow:hidden;border-radius:10px;border:1px solid rgba(0,0,0,.06)}
.theme-admin-swatches i{flex:1}
.theme-admin-card>strong{font-size:13px;color:var(--ink)}
.theme-admin-card>small{min-height:34px;margin:4px 0 10px;color:var(--muted);font-size:10px;line-height:1.45}
.theme-admin-input-label{margin-bottom:6px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:850}
.theme-admin-card .form-control{min-height:40px}
@media(max-width:1050px){.theme-selector{width:138px}}
@media(max-width:720px){.theme-selector-wrap{padding-left:9px}.theme-selector-wrap>.icon{display:none}.theme-selector{width:118px}.topbar-actions{gap:7px}}
@media(max-width:560px){.theme-selector{width:96px;font-size:10px}.theme-admin-grid{grid-template-columns:1fr}.theme-selector-wrap{height:40px;padding:0 7px}.top-profile .avatar{width:34px;height:34px}}

.stat-box{padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.68);box-shadow:0 10px 24px rgba(11,69,80,.06);min-width:0}.stat-box span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:850;color:var(--muted);margin-bottom:5px}.stat-box strong{display:block;font-size:20px;color:var(--ink);overflow-wrap:anywhere}.stat-box small{display:block;margin-top:5px;color:var(--muted);font-size:11px}.card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.badge-muted{background:#edf1f3;color:#607083}.filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:760px){.stat-box strong{font-size:17px}.table-wrap form[style*="min-width"]{min-width:0!important;flex-direction:column;align-items:stretch!important}}


/* GMEC multi-branch foundation */
.branch-switcher-wrap,.branch-context-chip{height:42px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.8);color:var(--teal-900);white-space:nowrap}
.branch-switcher{width:180px;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px;font-weight:750;cursor:pointer}.branch-context-chip span{max-width:170px;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:800}
.branch-card-grid{align-items:stretch}.branch-admin-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 10px 26px rgba(17,24,39,.07)}
.branch-admin-logo{width:132px;height:132px;border-radius:18px;padding:8px;display:grid;place-items:center;background:linear-gradient(145deg,#090a0d,#1a2638);overflow:hidden}.branch-admin-logo img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px}.branch-admin-body{min-width:0;display:flex;flex-direction:column}.branch-admin-heading{display:flex;justify-content:space-between;gap:10px}.branch-admin-heading span:first-child{font-size:9px;letter-spacing:1px;color:var(--muted);font-weight:850}.branch-admin-heading h3{margin:4px 0 0;font-size:17px}.branch-admin-body>p{margin:8px 0 12px;color:var(--muted);font-size:11px}.branch-admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.branch-admin-stats>div{padding:9px;border-radius:12px;background:var(--theme-soft);min-width:0}.branch-admin-stats strong,.branch-admin-stats span{display:block}.branch-admin-stats strong{font-size:14px;overflow-wrap:anywhere}.branch-admin-stats span{font-size:9px;color:var(--muted);margin-top:3px}.branch-admin-body .card-actions{margin-top:auto;justify-content:flex-start}
@media(max-width:1180px){.branch-switcher{width:145px}.branch-context-chip span{max-width:130px}}
@media(max-width:900px){.branch-card-grid{grid-template-columns:1fr}.branch-switcher-wrap,.branch-context-chip{display:none}}
@media(max-width:520px){.branch-admin-card{grid-template-columns:86px minmax(0,1fr)}.branch-admin-logo{width:86px;height:86px}.branch-admin-stats{grid-template-columns:1fr}.branch-admin-heading{flex-direction:column}}
.login-branch-logos{display:flex;align-items:center;gap:14px;margin-top:24px;flex-wrap:wrap}.login-branch-logos img{width:82px;height:82px;object-fit:contain;border-radius:16px;padding:5px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 10px 24px rgba(0,0,0,.18)}

/* V0.1.0-RC1-HF2B main-login logo sizing */
@media(max-width:820px){.login-branch-logos{justify-content:center}}
@media(max-width:520px){.login-branch-logos{gap:9px;margin-top:20px}.login-branch-logos img{width:68px;height:68px;border-radius:14px;padding:4px}}

/* HF2C login branding refinement */
.login-showcase-brand{align-items:center;gap:26px;margin-bottom:38px}
.login-showcase-brand img{width:176px;height:182px;object-fit:contain}
.login-showcase-brand h1{margin:0 0 6px;font-family:Georgia,serif;font-size:48px;line-height:1;color:#fff;letter-spacing:-.8px;text-transform:uppercase}
.login-showcase-brand p{margin:0;color:#f5d26e;font-family:Georgia,serif;font-style:italic;font-weight:700;font-size:17px}
.login-branch-logos{display:flex;align-items:center;gap:16px;margin-top:28px;flex-wrap:wrap}
.login-branch-logos img{width:96px;height:96px;object-fit:contain;border-radius:18px;padding:6px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 10px 24px rgba(0,0,0,.18)}
.login-branch-logos img.is-main{width:108px;height:108px}
@media(max-width:1180px){.login-showcase-brand img{width:152px;height:158px}.login-showcase-brand h1{font-size:40px}.login-branch-logos img{width:86px;height:86px}.login-branch-logos img.is-main{width:96px;height:96px}}
@media(max-width:820px){.login-showcase-brand{justify-content:center;text-align:left}.login-showcase-brand img{width:138px;height:144px}.login-showcase-brand h1{font-size:34px}.login-branch-logos{justify-content:center}}
@media(max-width:520px){.login-showcase-brand{gap:14px}.login-showcase-brand img{width:108px;height:112px}.login-showcase-brand h1{font-size:26px;line-height:1.05}.login-showcase-brand p{font-size:12px}.login-branch-logos{gap:10px;margin-top:20px}.login-branch-logos img{width:74px;height:74px;border-radius:15px;padding:4px}.login-branch-logos img.is-main{width:82px;height:82px}}

/* V0.1.0-RC1-HF2D — GMEC executive navy portal identity */
:root{
  --gmec-navy-950:#06162c;
  --gmec-navy-900:#071a33;
  --gmec-navy-800:#0c2b53;
  --gmec-navy-700:#123a6d;
  --gmec-gold:#d6a84b;
  --gmec-gold-dark:#a97924;
  --gmec-page:#f3f7fc;
  --gmec-panel:#ffffff;
  --gmec-border:#e1e9f3;
  --gmec-text:#0c1e3a;
  --gmec-muted:#6f7f93;
  --ink:var(--gmec-text);
  --muted:var(--gmec-muted);
  --line:var(--gmec-border);
  --surface:#fff;
  --surface-strong:#fff;
  --shadow:0 10px 32px rgba(13,38,72,.075);
  --radius:18px;
}
html[data-theme="rizal_green"]{
  --teal-950:#06162c;--teal-900:#071a33;--teal-800:#0c2b53;--teal-700:#123a6d;--teal-600:#315b88;
  --gold:#d6a84b;--gold-soft:#f7e8c5;--ink:#0c1e3a;--muted:#6f7f93;--line:#e1e9f3;
  --theme-sidebar-start:#06162c;--theme-sidebar-mid:#071f3e;--theme-sidebar-end:#0d315d;--theme-accent:#d6a84b;--theme-accent-dark:#a97924;
  --theme-page-a:#f2f6fb;--theme-page-b:#f8faff;--theme-page-c:#eef4fa;--theme-rgb:7,26,51;--theme-soft:#f4f7fb;
}
html[data-theme="pilipinas_blue"]{
  --theme-sidebar-start:#061b37;--theme-sidebar-mid:#0a3264;--theme-sidebar-end:#145391;
  --theme-page-a:#eff5fb;--theme-page-b:#f9fbfe;--theme-page-c:#eaf2fa;
}
html[data-theme="bandilang_pula"]{
  --theme-sidebar-start:#11131d;--theme-sidebar-mid:#261a26;--theme-sidebar-end:#5a2330;
  --theme-page-a:#f6f2f4;--theme-page-b:#fff;--theme-page-c:#f7ecef;
}
html[data-theme="araw_at_bituin"]{
  --theme-sidebar-start:#0d1828;--theme-sidebar-mid:#292117;--theme-sidebar-end:#6c4820;
  --theme-page-a:#f7f3eb;--theme-page-b:#fff;--theme-page-c:#f5eee2;
}
html[data-theme="sampaguita_pearl"]{
  --theme-sidebar-start:#071a31;--theme-sidebar-mid:#0b2f56;--theme-sidebar-end:#244f78;
  --theme-page-a:#f4f7fb;--theme-page-b:#fff;--theme-page-c:#eef3f8;
}
html[data-theme="bayanihan"]{
  --theme-sidebar-start:#11141d;--theme-sidebar-mid:#282027;--theme-sidebar-end:#5c2d32;
  --theme-page-a:#f5f2f2;--theme-page-b:#fff;--theme-page-c:#f4ebea;
}
body.app-body{
  font-family:"Aptos","Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif;
  font-size:14px;
  color:var(--ink);
  background:var(--gmec-page);
}
html[data-theme] .app-body{
  background:
    radial-gradient(circle at 73% -12%,rgba(255,255,255,.96),transparent 32%),
    linear-gradient(135deg,var(--theme-page-a) 0%,var(--theme-page-b) 50%,var(--theme-page-c) 100%);
}
.app-shell{padding:8px;gap:14px}
.glass-panel,.card{
  background:rgba(255,255,255,.97);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.sidebar{
  width:238px;
  min-width:238px;
  min-height:calc(100vh - 16px);
  top:8px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 40px rgba(3,18,38,.25);
  transition:width .22s ease,min-width .22s ease,left .25s ease;
}
html[data-theme] .sidebar{
  background:
    radial-gradient(circle at 50% 7%,rgba(214,168,75,.09),transparent 20%),
    linear-gradient(180deg,var(--theme-sidebar-start) 0%,var(--theme-sidebar-mid) 58%,var(--theme-sidebar-end) 100%);
  box-shadow:0 18px 40px rgba(3,18,38,.25);
}
.brand{padding:22px 16px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-logo-wrap{
  width:124px;height:124px;margin:0 auto 12px;border:0;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.10),rgba(255,255,255,0) 68%);
  box-shadow:none;
}
.brand-logo-wrap img{width:118px;height:118px;filter:drop-shadow(0 10px 14px rgba(0,0,0,.28))}
.brand-name{
  max-width:198px;margin:0 auto;font-family:Georgia,"Times New Roman",serif;
  font-size:18px;line-height:1.08;font-weight:800;letter-spacing:.2px;text-transform:uppercase;color:#fff;
}
html[data-theme] .brand-name{color:#fff}
.brand-name span,.brand-name strong{display:block}.brand-name span{color:#fff}.brand-name strong{margin-top:2px;color:var(--theme-accent);font:inherit}.brand-name-branch span{font-size:15px;line-height:1.14}.brand-name-branch strong{font-family:"Aptos","Segoe UI Variable","Segoe UI",sans-serif;font-size:10px;letter-spacing:1.6px}
.brand-subtitle{margin-top:8px;font-size:9px;letter-spacing:3px;color:rgba(255,255,255,.82)}
.main-nav{padding:13px 10px 18px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}
.nav-link{
  position:relative;gap:12px;min-height:43px;padding:10px 13px;margin:3px 0;border-radius:10px;
  color:rgba(255,255,255,.86);font-size:13px;font-weight:650;letter-spacing:-.05px;
}
.nav-link .icon{width:19px;height:19px;stroke-width:1.9}
.nav-link:hover{background:rgba(255,255,255,.075);color:#fff}
.nav-link.active{
  background:linear-gradient(90deg,rgba(255,255,255,.13),rgba(255,255,255,.075));
  border-color:rgba(255,255,255,.11);box-shadow:none;color:#fff;
}
.nav-link.active:before{
  content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:0 4px 4px 0;background:var(--theme-accent);
  box-shadow:0 0 12px rgba(214,168,75,.45);
}
.nav-link.active>.icon{color:var(--theme-accent)}
.nav-toggle b{font-size:19px;color:rgba(255,255,255,.62)}
.nav-submenu{padding-left:42px}
.nav-submenu a{padding:7px 9px;border-left:1px solid rgba(214,168,75,.35);font-size:12px}
.nav-submenu a.active{color:var(--theme-accent)}
.nav-section-label{padding:18px 13px 6px;color:var(--theme-accent);font-size:9px;letter-spacing:1.4px;font-weight:800}
.sidebar-user{
  margin:auto 12px 12px;padding:13px 8px 7px;border:0;border-top:1px solid rgba(255,255,255,.12);
  border-radius:0;background:transparent;gap:10px;
}
html[data-theme] .sidebar-user{background:transparent}
.sidebar-user-details{min-width:0;flex:1}
.sidebar-user strong{font-size:11px;color:#fff}
.sidebar-user small{font-size:9px;color:rgba(255,255,255,.58)}
html[data-theme] .sidebar-user small{color:rgba(255,255,255,.58)}
.sidebar-logout{display:grid;place-items:center;width:30px;height:30px;border-radius:8px}
.sidebar-logout:hover{background:rgba(255,255,255,.09);opacity:1}
.avatar{width:36px;height:36px;font-size:11px;background:linear-gradient(145deg,var(--theme-accent-dark),var(--theme-accent))}
.main-panel{transition:width .22s ease}
.topbar{
  min-height:78px;top:8px;padding:12px 16px;border-radius:18px;background:rgba(255,255,255,.97);
  box-shadow:0 8px 25px rgba(13,38,72,.065);
}
.portal-menu-toggle{display:grid;flex:0 0 auto;background:var(--teal-900);border-color:var(--teal-900);color:#fff;box-shadow:0 8px 16px rgba(var(--theme-rgb),.18)}
html[data-theme] .portal-menu-toggle{color:#fff}
.page-heading h1{font-size:24px;font-weight:780;letter-spacing:-.55px;color:var(--ink)}
.page-heading p{font-size:12px;color:var(--muted)}
.topbar-actions{gap:10px}
.top-search,.branch-switcher-wrap,.branch-context-chip,.theme-selector-wrap{
  height:42px;border-color:var(--line);border-radius:10px;background:#fff;box-shadow:0 3px 10px rgba(13,38,72,.025)
}
.top-search{min-width:230px;padding:0 12px}
.branch-switcher-wrap,.branch-context-chip{padding:0 11px}
.theme-selector-wrap{padding:0 9px 0 11px}
.topbar-notification{
  position:relative;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--teal-900)
}
.topbar-notification:hover{background:var(--theme-soft)}
.top-profile{padding:3px 5px 3px 2px}
.top-profile strong{font-size:12px}
.top-profile small{font-size:10px}
.content-area{padding:14px 0 8px}
.card{border-radius:18px;padding:18px}
.card-header{margin-bottom:15px}
.card-header h2,.card-header h3{font-size:16px;font-weight:780;letter-spacing:-.2px}
.card-header p{font-size:11px;line-height:1.5}
.metric{
  min-height:112px;gap:14px;padding:17px 18px;border-radius:16px;box-shadow:0 8px 24px rgba(13,38,72,.06)
}
.metric:after{display:none}
.metric:before{
  content:"";position:absolute;right:13px;bottom:15px;width:88px;height:48px;opacity:.52;
  background-repeat:no-repeat;background-size:contain;background-position:center;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='92' height='48' viewBox='0 0 92 48'%3E%3Cpath d='M2 42 16 29l10 8 15-22 13 9 16-20 20 7' fill='none' stroke='%23a9bad0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
}
.metric-icon{width:50px;height:50px;border-radius:50%;box-shadow:0 8px 18px color-mix(in srgb,var(--metric-bg,#0a9da7) 24%,transparent),inset 0 0 0 4px rgba(255,255,255,.24)}
.metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.75px;font-weight:750;color:#52647a}
.metric-value{font-size:24px;font-weight:800;letter-spacing:-.65px}
.metric-note{font-size:10px}
.metric.green{--metric-bg:#13a76a}.metric.red{--metric-bg:#ed4658}.metric.gold{--metric-bg:#e9a91e}.metric.purple{--metric-bg:#7b4ce4}
.stat-box{position:relative;min-height:102px;padding:15px 15px 14px;border-radius:14px;background:#fff;box-shadow:none;overflow:hidden}
.stat-box span{position:relative;z-index:1;font-size:9px;letter-spacing:.85px;color:#64748b}
.stat-box strong{position:relative;z-index:1;font-size:18px;font-weight:800}
.stat-box small{position:relative;z-index:1;font-size:10px}
.stat-box-icon{position:absolute;right:14px;bottom:10px;color:#d7e4f5;opacity:.78}
.stat-box-icon.green{color:#d4eee2}.stat-box-icon.red{color:#f3dbe1}.stat-box-icon.gold{color:#f1dfc3}
.btn{border-radius:9px;padding:10px 13px;font-size:12px;font-weight:720;box-shadow:none}
.btn:hover{transform:translateY(-1px);box-shadow:0 7px 16px rgba(13,38,72,.09)}
.btn-primary{background:linear-gradient(135deg,var(--teal-900),var(--teal-700));box-shadow:0 8px 16px rgba(var(--theme-rgb),.16)}
.btn-gold{background:linear-gradient(135deg,#e7b955,#c99026);color:#1c2432}
.btn-light{background:#fff;border-color:var(--line)}
.btn-outline{background:#fff;border-color:#ccd9e7}
a[href*="format=xlsx"].btn,a[href*="report="][href*="xlsx"].btn{color:#15764b}
a[href*="format=pdf"].btn,a[href*="report="][href*="pdf"].btn{color:#d63b45}
.form-control{border-color:#d8e3ef;border-radius:9px;background:#fff;min-height:41px;padding:10px 11px}
.form-control:focus{border-color:var(--teal-700);box-shadow:0 0 0 3px rgba(var(--theme-rgb),.09)}
.toolbar{padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.82)}
.accounting-filter-toolbar{
  padding:10px 12px;border-color:#0f315e;background:linear-gradient(90deg,#071a33,#0d315e);box-shadow:0 10px 24px rgba(7,26,51,.15)
}
.accounting-filter-toolbar .form-control{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:#fff}
.accounting-filter-toolbar .form-control option{color:#14213a;background:#fff}
.accounting-filter-toolbar .form-control::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.75}
.accounting-filter-toolbar .btn-light{border-color:rgba(255,255,255,.12);background:var(--theme-accent);color:#172033}
.accounting-filter-toolbar .btn-primary{background:linear-gradient(135deg,#f0c66c,#d4a13c);color:#172033}
.table-wrap{border-color:var(--line);border-radius:13px;background:#fff}
th,td{padding:11px 12px;border-bottom-color:#e8eef5}
th{font-size:10px;background:#f5f8fc;color:#5e6f84}
tbody tr:hover{background:#f8fbff}
.list-item,.quick-action,.topic,.branch-admin-card,.theme-admin-card,.member-pdf-card{background:#fff;border-color:var(--line);box-shadow:0 6px 18px rgba(13,38,72,.04)}
.list-item-icon{background:#edf4fb;color:var(--teal-700)}
.quick-action:hover{border-color:#b9cce0;background:#f8fbff}
.tab{background:#fff;border-color:var(--line);border-radius:8px}
.tab.active{background:var(--teal-800);border-color:var(--teal-800)}
.badge{font-size:9px;padding:5px 8px}
.empty-state{color:#758399}
.empty-state:not(td){display:grid;place-items:center;align-content:center;gap:9px;min-height:130px;padding:30px 20px}
.empty-state:not(td)::before{
  content:"";display:block;width:68px;height:58px;background-repeat:no-repeat;background-position:center;background-size:contain;opacity:.72;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='68' height='58' viewBox='0 0 68 58'%3E%3Crect x='18' y='8' width='32' height='42' rx='5' fill='none' stroke='%23a8c0df' stroke-width='3'/%3E%3Cpath d='M25 18h18M25 26h18M25 34h11' stroke='%23a8c0df' stroke-width='3' stroke-linecap='round'/%3E%3Ccircle cx='51' cy='43' r='9' fill='%23f4f8fd' stroke='%23d6a84b' stroke-width='3'/%3E%3Cpath d='m55 47 6 6' stroke='%23d6a84b' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E")
}
.empty-chart:not(td)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='68' height='58' viewBox='0 0 68 58'%3E%3Ccircle cx='34' cy='29' r='20' fill='none' stroke='%23d6e2f1' stroke-width='7'/%3E%3Cpath d='M34 9a20 20 0 0 1 20 20H34Z' fill='none' stroke='%23a8c0df' stroke-width='3'/%3E%3C/svg%3E")}
.empty-income:not(td)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='68' height='58' viewBox='0 0 68 58'%3E%3Cpath d='M14 18h38v28H18a4 4 0 0 1-4-4Z' fill='none' stroke='%23b8dfcc' stroke-width='3'/%3E%3Cpath d='M14 22a7 7 0 0 1 7-7h27v7' fill='none' stroke='%23b8dfcc' stroke-width='3'/%3E%3Cpath d='M41 29h15v10H41a5 5 0 0 1 0-10Z' fill='none' stroke='%2397cdb4' stroke-width='3'/%3E%3C/svg%3E")}
.empty-invoice:not(td)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='68' height='58' viewBox='0 0 68 58'%3E%3Cpath d='M20 7h28v44l-7-4-7 4-7-4-7 4Z' fill='none' stroke='%23cdbcf1' stroke-width='3'/%3E%3Cpath d='M27 18h14M27 26h14M27 34h8' stroke='%23cdbcf1' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E")}
td.empty-state::before{display:none}
.theme-selector,.branch-switcher{font-size:10px}
.app-footer{font-size:10px}

/* Collapsible desktop navigation */
@media(min-width:861px){
  .app-shell.sidebar-collapsed .sidebar{width:78px;min-width:78px}
  .app-shell.sidebar-collapsed .brand{padding:17px 8px 14px}
  .app-shell.sidebar-collapsed .brand-logo-wrap{width:58px;height:58px;margin-bottom:0}
  .app-shell.sidebar-collapsed .brand-logo-wrap img{width:56px;height:56px}
  .app-shell.sidebar-collapsed .brand-name,.app-shell.sidebar-collapsed .brand-subtitle,.app-shell.sidebar-collapsed .nav-link span,.app-shell.sidebar-collapsed .nav-toggle b,.app-shell.sidebar-collapsed .nav-section-label,.app-shell.sidebar-collapsed .nav-submenu,.app-shell.sidebar-collapsed .sidebar-user-details,.app-shell.sidebar-collapsed .sidebar-logout{display:none}
  .app-shell.sidebar-collapsed .main-nav{padding:12px 8px}
  .app-shell.sidebar-collapsed .nav-link{justify-content:center;padding:11px;margin:4px 0}
  .app-shell.sidebar-collapsed .nav-link.active:before{left:-8px}
  .app-shell.sidebar-collapsed .sidebar-user{justify-content:center;padding:12px 4px 4px;margin-inline:8px}
}
@media(max-width:1180px){
  .topbar-actions{gap:8px}.top-search{min-width:190px}.theme-selector{width:126px}.branch-switcher{width:135px}
}
@media(max-width:1040px){
  .top-search{display:none}.topbar-notification{display:none}
}
@media(max-width:860px){
  .app-shell{padding:7px}.sidebar{top:7px;bottom:7px;min-height:auto}.sidebar.open{left:7px}.topbar{top:7px}
  .portal-menu-toggle{display:grid}.topbar-notification{display:grid}
  .brand-name{font-size:17px}
}
@media(max-width:720px){
  .theme-selector-wrap{display:none}.topbar-notification{display:none}.topbar-actions{margin-left:auto}
}
@media(max-width:560px){
  .topbar{padding:9px 10px;min-height:66px}.portal-menu-toggle{width:39px;height:39px}.page-heading h1{font-size:19px}
  .card{padding:14px}.metric{min-height:102px}.metric:before{width:64px;height:38px;right:8px}
  .accounting-filter-toolbar{padding:10px}.accounting-filter-toolbar .filter-row{display:grid;grid-template-columns:1fr}.accounting-filter-toolbar .form-control,.accounting-filter-toolbar .btn{width:100%}
  .stat-box{min-height:92px}.empty-state:not(td){min-height:110px}
}

/* V0.3.0-DEV1 Member Performance, Attendance & Service Contributions */
.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.performance-kpis .stat-box{min-height:126px}
.performance-table th{white-space:nowrap}
.performance-table td{vertical-align:middle}
.performance-total td{background:rgba(214,168,75,.12);border-top:2px solid rgba(214,168,75,.35)}
.performance-table .form-control{min-width:130px}
@media(max-width:1380px){.grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.grid-6{grid-template-columns:1fr}.performance-table{min-width:980px}}

/* V0.3.0-DEV2 Membership Forms Center */
.membership-center-grid .card,.membership-form-section{min-width:0}.membership-form-section{margin-bottom:14px}.membership-official-panel .card.compact{box-shadow:none;border-color:#dce6ee;background:linear-gradient(145deg,#fff,#f7fafc)}.membership-official-panel .list-item-icon{margin-bottom:10px}.membership-official-panel h3{margin:8px 0}.membership-official-panel p{color:var(--muted);min-height:38px}.auth-page .auth-card code{word-break:break-all}

/* CS1-HF2 — Service & Contributions monthly comparison report */
.report-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:14px;padding:18px 20px}.report-filter-form{display:flex;align-items:flex-end;gap:18px}.report-filter-form .form-group{margin:0;min-width:150px}.report-scope{display:grid;gap:3px;padding-bottom:3px}.report-scope span{font-size:11px;text-transform:uppercase;letter-spacing:1.1px;color:var(--muted);font-weight:800}.report-scope strong{font-size:14px}.report-actions{display:flex;gap:8px}.report-summary-grid{margin-bottom:14px}.report-summary-card{min-height:126px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.report-summary-card:after{content:"";position:absolute;width:104px;height:104px;border-radius:50%;right:-30px;top:-34px;background:rgba(16,37,68,.06)}.report-summary-card>span{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:850}.report-summary-card>strong{font-size:28px;line-height:1.1;margin:7px 0 5px}.report-summary-card>small{color:var(--muted)}.report-summary-blue{border-top:4px solid #1f5fbf}.report-summary-yellow{border-top:4px solid #f2b705}.contribution-report-card{margin-bottom:14px;overflow:hidden}.contribution-report-heading{align-items:center}.contribution-chart-legend{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px;font-weight:800}.contribution-chart-legend span{display:flex;align-items:center;gap:7px}.legend-swatch{width:12px;height:12px;border-radius:4px;display:inline-block}.legend-blue{background:#1f5fbf}.legend-yellow{background:#f2b705}.contribution-chart-scroll{overflow-x:auto;padding:8px 6px 4px}.contribution-chart{position:relative;min-width:980px;height:430px;display:grid;grid-template-columns:repeat(12,minmax(68px,1fr));gap:9px;align-items:end;padding:30px 8px 2px}.chart-gridlines{position:absolute;left:8px;right:8px;top:32px;height:260px;display:grid;grid-template-rows:repeat(4,1fr);pointer-events:none}.chart-gridlines i{display:block;border-top:1px dashed rgba(74,91,116,.16)}.contribution-month-group{position:relative;z-index:1;display:grid;grid-template-rows:260px 24px 58px;align-items:end;min-width:0}.contribution-bars{height:260px;display:flex;align-items:flex-end;justify-content:center;gap:5px;padding:0 4px;border-bottom:1px solid rgba(74,91,116,.18)}.contribution-bar-wrap{height:100%;width:31px;display:flex;align-items:flex-end;justify-content:center}.contribution-bar{width:100%;min-height:0;border-radius:7px 7px 2px 2px;position:relative;box-shadow:0 5px 12px rgba(15,31,58,.11);transition:height .2s ease}.contribution-bar-blue{background:#1f5fbf}.contribution-bar-yellow{background:#f2b705}.contribution-bar span{position:absolute;bottom:100%;left:50%;transform:translate(-50%,-5px);font-size:9px;font-weight:850;white-space:nowrap;color:var(--text)}.contribution-month-label{text-align:center;font-size:12px;padding-top:7px}.contribution-month-values{display:grid;gap:3px;align-self:start;font-size:9px;color:var(--muted);white-space:nowrap}.contribution-month-values span{display:flex;align-items:center;justify-content:center;gap:4px}.contribution-month-values i{width:6px;height:6px;border-radius:50%;display:inline-block}.value-blue i{background:#1f5fbf}.value-yellow i{background:#f2b705}.report-empty-note{margin:8px 18px 18px;padding:12px 14px;border-radius:12px;background:rgba(148,163,184,.11);color:var(--muted);text-align:center}.contribution-monthly-table-card tfoot th{background:rgba(15,31,58,.045);font-size:12px}.report-table-key{display:inline-block;width:8px;height:8px;border-radius:3px;margin-right:7px}.report-table-blue{background:#1f5fbf}.report-table-yellow{background:#f2b705}
@media(max-width:820px){.report-toolbar{align-items:stretch;flex-direction:column}.report-filter-form{justify-content:space-between}.report-actions{justify-content:flex-end}.report-summary-grid{grid-template-columns:1fr}.contribution-chart{min-width:900px}}
@media print{.sidebar,.sidebar-backdrop,.topbar,.report-actions,.portal-menu-toggle{display:none!important}.app-shell,.main-panel,.content-area{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.content-area{background:#fff!important}.card{box-shadow:none!important;break-inside:avoid}.report-toolbar{padding:8px 0;border:0}.report-filter-form .form-group{display:none}.contribution-chart-scroll{overflow:visible}.contribution-chart{min-width:0;width:100%;height:390px;gap:5px}.contribution-month-group{grid-template-rows:230px 22px 54px}.contribution-bars{height:230px}.contribution-bar-wrap{width:24px}.contribution-month-values{font-size:7px}.contribution-monthly-table-card{page-break-before:always}}


/* CS1-HF6 — Private member-to-branch administration messaging */
.nav-count-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;background:#d6a84b;color:#102544;font-size:10px;font-style:normal;font-weight:900;line-height:1}.topbar-message-link{position:relative}.topbar-count-badge{position:absolute;right:-5px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;display:grid;place-items:center;background:#d6a84b;color:#102544;border:2px solid #fff;font-size:8px;font-weight:900}.message-intro-card,.message-thread-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.message-intro-card h2,.message-thread-toolbar h2{margin:0 0 5px}.message-intro-card p,.message-thread-toolbar p{margin:0;color:var(--muted)}.message-thread-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.message-back-link{display:inline-block;margin-bottom:9px;font-size:12px;font-weight:800;color:var(--primary)}.message-inbox-table td small{display:block;margin-top:4px;color:var(--muted)}.message-row-unread td{background:rgba(31,95,191,.055)}.message-row-unread td:first-child{box-shadow:inset 4px 0 0 #1f5fbf}.message-unread-text{color:#1f5fbf;font-weight:850}.message-thread-card{padding:0;overflow:hidden}.message-thread-list{padding:22px;display:grid;gap:14px;max-height:600px;overflow:auto;background:linear-gradient(180deg,rgba(242,246,250,.8),rgba(255,255,255,.9))}.message-bubble-row{display:flex;justify-content:flex-start}.message-bubble-row.mine{justify-content:flex-end}.message-bubble{width:min(76%,720px);padding:14px 16px;border-radius:16px;border:1px solid var(--border);box-shadow:0 4px 16px rgba(15,31,58,.06)}.member-message{background:#fff}.admin-message{background:rgba(214,168,75,.10);border-color:rgba(214,168,75,.30)}.message-bubble-row.mine .message-bubble{background:rgba(31,95,191,.08);border-color:rgba(31,95,191,.18)}.message-bubble-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px;font-size:10px;color:var(--muted)}.message-bubble-meta strong{color:var(--text);font-size:11px}.message-bubble-body{font-size:13px;line-height:1.65;white-space:normal;overflow-wrap:anywhere}.message-reply-form{padding:18px 22px;border-top:1px solid var(--border);background:#fff}.message-reply-form .form-group{margin-bottom:12px}.message-closed-note{padding:16px 22px;border-top:1px solid var(--border);background:rgba(148,163,184,.10);color:var(--muted);font-size:12px;font-weight:700}.form-help{display:block;margin-top:6px;color:var(--muted);font-size:10px}.inline-form{display:inline}.btn svg{vertical-align:-3px;margin-right:5px}
@media(max-width:760px){.message-intro-card,.message-thread-toolbar{align-items:flex-start;flex-direction:column}.message-bubble{width:92%}.message-bubble-meta{align-items:flex-start;flex-direction:column;gap:2px}.message-inbox-table{min-width:760px}}

/* CS1-HF7 — separate, explicitly selected officer/member workspaces */
.portal-workspace-form{padding:0 13px 7px;margin:0}
.portal-workspace-button{justify-content:flex-start;background:linear-gradient(115deg,#d6a84b,#efd58a);border-color:rgba(255,255,255,.28);color:#152a48!important;font-weight:850;margin:0;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.portal-workspace-button:hover{background:#f4da97!important;color:#102544!important}
.portal-workspace-topbar{display:inline-flex;align-items:center;flex-shrink:0}
.portal-workspace-topbar .btn{white-space:nowrap}
@media(max-width:1060px){.portal-workspace-topbar{display:none}}
@media print{.portal-workspace-form,.portal-workspace-topbar{display:none!important}}
