:root{--navy:#071f28;--navy2:#0b3d47;--red:#e50049;--orange:#ff761b;--gold:#f6a100;--bg:#f5f7f9;--card:#fff;--text:#15252b;--muted:#6c7a80;--line:#e2e7ea;--green:#0a9a6b;--danger:#c63b35;--grad:linear-gradient(115deg,#e50049 0%,#f0442d 58%,#ff8a00 100%)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Segoe UI,Inter,Arial,sans-serif;color:var(--text);background:var(--bg)}a{color:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:255px;background:linear-gradient(180deg,#061e27,#0a303a);color:white;padding:18px 16px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:20;overflow:auto}.brand{display:flex;align-items:center;gap:12px;padding:4px 7px 18px}.brand img{width:45px;height:45px;border-radius:12px;object-fit:cover;background:white}.brand b{display:block;font-size:18px;letter-spacing:1px}.brand small{font-size:10px;opacity:.66;letter-spacing:1.4px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{text-decoration:none;padding:10px 12px;border-radius:10px;color:#d8e2e5;display:flex;gap:12px;align-items:center;font-size:13px}.sidebar nav a:hover,.sidebar nav a.active{background:var(--grad);color:#fff;box-shadow:0 8px 20px rgba(229,0,73,.18)}.sidebar-bottom{margin-top:auto;padding:14px 8px;border-top:1px solid rgba(255,255,255,.1);font-size:13px}.sidebar-bottom a{display:block;margin-top:7px;color:#ffb29d;text-decoration:none}.main{margin-left:255px;width:calc(100% - 255px)}.topbar{height:88px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:10}.topbar h2{margin:4px 0 0;font-size:25px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--red);font-weight:800}.date-pill{background:#f5f6f7;border:1px solid var(--line);padding:9px 13px;border-radius:99px;font-size:12px}.content{padding:25px 30px 50px}.hero,.member-hero{background:linear-gradient(120deg,#07313b 0%,#0a5663 58%,#0a3239 100%);color:white;border-radius:20px;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;margin-bottom:20px}.hero:after,.member-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:var(--grad);right:-70px;top:-125px}.hero span,.member-hero span{font-size:10px;letter-spacing:2px;color:#ffb461;font-weight:800}.hero h1,.member-hero h1{margin:7px 0;font-size:29px}.hero p,.member-hero p{margin:0;color:#d2e2e5}.hero-stat,.member-plan{z-index:1;text-align:right}.hero-stat b,.member-plan b{display:block;font-size:30px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.kpi{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 7px 22px rgba(7,31,40,.04)}.kpi span{display:block;color:var(--muted);font-size:12px}.kpi b{display:block;color:var(--navy);font-size:27px;margin:7px 0 2px}.kpi small{color:var(--muted)}.small-b{font-size:17px!important}.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:0 7px 24px rgba(7,31,40,.04);margin-bottom:19px}.card h3{margin:0 0 15px}.card-head,.toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px}.card-head{margin-bottom:12px}.card-head h3{margin:0}.toolbar{margin-bottom:18px}.toolbar h3{margin:0 0 3px;font-size:20px}.toolbar p{margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.muted{color:var(--muted)}.flash{padding:12px 14px;border-radius:11px;margin-bottom:14px;font-size:13px;font-weight:650}.flash.success{background:#e8f8f2;color:#087653}.flash.error{background:#fff0ee;color:#b93c34}.payment-reminder{background:linear-gradient(90deg,#fff0e6,#fff8f2);border:1px solid #ffcda9;border-left:5px solid #ff761b;border-radius:13px;padding:13px 15px;margin-bottom:18px;display:flex;gap:12px;align-items:center}.payment-reminder b{color:#c84519}.payment-reminder span{font-size:13px}.btn{border:0;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.btn.primary{background:var(--grad);color:white;box-shadow:0 8px 18px rgba(230,0,73,.17)}.btn.ghost{background:#fff;border:1px solid var(--line);color:var(--navy)}.btn.danger{background:#fff0ee;color:#b9322c}.btn.wide{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed}.link-btn{border:0;background:none;color:var(--red);font-weight:800;text-decoration:none;cursor:pointer;padding:3px}.pill{display:inline-flex;padding:5px 9px;border-radius:99px;background:#eef1f3;font-size:10px;font-weight:800;color:#52626a}.pill.ok{background:#e7f7f1;color:#087550}.pill.off{background:#fff0ee;color:#bd342b}input,select,textarea{width:100%;border:1px solid #d7dde1;background:white;border-radius:10px;padding:10px 11px;font:inherit;outline:none}input:focus,select:focus,textarea:focus{border-color:#e83e66;box-shadow:0 0 0 3px rgba(232,62,102,.09)}textarea{min-height:88px;resize:vertical}label{font-size:12px;font-weight:700;color:#45545b;display:grid;gap:6px}.stack{display:grid;gap:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px}.check{display:flex;grid-auto-flow:column;justify-content:start;align-items:center}.check input{width:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;padding:11px;color:#66737a;font-size:10px;text-transform:uppercase;letter-spacing:.5px;background:#fafbfc}td{padding:12px 11px;border-top:1px solid var(--line);vertical-align:middle}.table-card{padding:0;overflow:auto}.table-card table{min-width:850px}.person{display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:800}.avatar.xl{width:62px;height:62px;font-size:22px}.person small,td small{display:block;color:var(--muted);margin-top:2px}.list{display:grid}.list-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border:0}.list-row>div:nth-child(2){flex:1}.list-row b,.list-row small{display:block}.date-box{width:43px;height:43px;border-radius:12px;background:#fff1e7;border:1px solid #ffd6bd;display:grid;place-items:center;align-content:center;color:#d84a13}.date-box b{font-size:16px;line-height:1}.date-box small{font-size:9px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-grid span{color:var(--muted);font-size:11px}.info-grid b{display:block;color:var(--text);font-size:13px;margin-top:4px}.metric-row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line)}.empty{padding:24px;text-align:center;color:var(--muted)}.desk-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}.desk{border-radius:14px;padding:14px 9px;background:white;border:1px solid var(--line);text-align:center;min-height:120px}.desk.available{border-color:#a8ddcb}.desk.occupied{border-color:#f1a3ba;background:#fff8fa}.desk .desk-icon{font-size:25px;color:#0b6672}.desk.occupied .desk-icon{color:var(--red)}.desk b,.desk span,.desk small{display:block}.desk span{font-size:12px;margin:7px 0}.desk small{font-size:9px;color:var(--muted)}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.plan-card{background:white;border:1px solid var(--line);border-radius:18px;padding:22px;position:relative;overflow:hidden}.plan-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--grad)}.price{font-size:27px;font-weight:900;color:var(--navy)}.price small{font-size:10px;color:var(--muted)}.modal{position:fixed;inset:0;background:rgba(4,20,27,.65);display:none;align-items:center;justify-content:center;padding:28px;z-index:50}.modal.open{display:flex}.modal-card{width:min(540px,95vw);max-height:92vh;overflow:auto;background:white;border-radius:18px;padding:24px;position:relative}.wide-modal{width:min(900px,95vw)}.modal-x{position:absolute;right:15px;top:10px;border:0;background:none;font-size:27px;cursor:pointer;color:#777}.holiday-list>div{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.holiday-list>div>div{flex:1}.notice-list{display:grid;gap:10px}.notice-list article{border:1px solid var(--line);border-radius:13px;padding:13px}.notice-list article b{display:block;margin-top:7px}.notice-list p{color:var(--muted);font-size:13px}.pdf-preview{height:390px;border:1px solid var(--line);border-radius:13px;background:#f1f3f4;overflow:hidden}.pdf-preview object{width:100%;height:100%;border:0}.pdf-meta{font-size:12px;background:#f8fafb;border:1px solid var(--line);padding:9px;border-radius:9px}.print-layout{grid-template-columns:1.45fr .75fr}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:white}.login-visual{background:linear-gradient(rgba(4,33,41,.2),rgba(4,33,41,.7)),url('/static/img/applaud-logo.jpg') center/cover no-repeat;position:relative}.login-visual:after{content:"";position:absolute;right:-140px;bottom:-180px;width:520px;height:520px;border-radius:50%;background:var(--grad);opacity:.9}.visual-overlay{height:100%;padding:50px;display:flex;flex-direction:column;justify-content:space-between;color:white;background:linear-gradient(180deg,rgba(3,34,42,.05),rgba(3,34,42,.78))}.login-logo{width:118px;height:118px;object-fit:cover;border-radius:22px}.visual-copy{position:relative;z-index:1}.visual-copy span{font-size:11px;letter-spacing:2px;color:#ffb962;font-weight:800}.visual-copy h1{font-size:46px;line-height:1.02;margin:10px 0}.visual-copy p{max-width:500px;color:#d6e4e7}.login-panel{display:grid;place-items:center;padding:40px}.login-card{width:min(410px,100%);display:grid;gap:16px}.login-card h2{font-size:31px;margin:18px 0 0}.brand-mark{font-size:21px;font-weight:900;color:var(--red);letter-spacing:1px}.brand-mark b{color:var(--orange)}.narrow{max-width:540px;margin:auto}.invoice-hint{background:#fff7e8;border:1px solid #f4d69d;border-radius:12px;padding:12px;font-size:12px}.gst-box{border:1px solid #ffd9c4;background:#fff9f5;border-radius:13px;padding:13px}.section-title{font-weight:900;color:var(--navy);margin:4px 0 12px}.toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media(max-width:1100px){.kpis{grid-template-columns:1fr 1fr}.desk-grid{grid-template-columns:repeat(4,1fr)}.plan-grid{grid-template-columns:1fr 1fr}.three-col{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.sidebar{width:72px;padding:15px 9px}.sidebar .brand div,.sidebar nav span,.sidebar-bottom{display:none}.sidebar .brand img{width:44px;height:44px}.sidebar nav a{justify-content:center;font-size:18px}.main{margin-left:72px;width:calc(100% - 72px)}.content{padding:17px}.topbar{padding:0 18px}.kpis,.two-col,.three-col,.form-grid,.form-grid.three,.plan-grid,.login-page{grid-template-columns:1fr}.desk-grid{grid-template-columns:repeat(2,1fr)}.login-visual{display:none}.print-layout{grid-template-columns:1fr}.toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%}}

/* v3 notification center */
.notification-card{border-left:5px solid #ff761b}
.notification-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.notification-row:last-child{border-bottom:0}
.notification-row>div:first-child{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff4e8;font-size:16px}
.notification-row b{display:block;margin-bottom:3px}
.notification-row p{margin:0 0 3px;color:var(--muted);font-size:13px}
.notification-row small{color:var(--muted)}
.print-control-panel{background:#f8fafb;border:1px solid var(--line);padding:14px;border-radius:13px;display:grid;gap:10px}.print-calc{background:#fff;border:1px dashed #d4dade;border-radius:10px;padding:10px 12px;font-size:13px}.pdf-preview{min-height:420px}

/* =====================================================================
   APPLAUD FULL RESPONSIVE UI V1
   ===================================================================== */
.mobile-menu-btn,.mobile-nav-overlay{display:none}.main,.content,.card{min-width:0}img,object,iframe{max-width:100%}input,select,textarea,button{max-width:100%}
@media(max-width:920px){html,body{width:100%;max-width:100%;overflow-x:hidden}body.mobile-menu-open{overflow:hidden}.app-shell{display:block;min-height:100vh}.sidebar{width:min(86vw,310px)!important;max-width:310px;padding:16px 14px!important;transform:translateX(-105%);transition:transform .22s ease;box-shadow:14px 0 38px rgba(0,0,0,.25);z-index:100!important}.sidebar.mobile-open{transform:translateX(0)}.sidebar .brand{padding:4px 7px 16px!important;gap:12px!important}.sidebar .brand div{display:block!important;min-width:0}.sidebar .brand img{width:46px!important;height:46px!important;flex:0 0 46px}.sidebar .brand b{font-size:18px!important}.sidebar .brand small{display:block!important;font-size:10px!important}.sidebar nav{display:grid!important;gap:4px!important}.sidebar nav a{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:100%;min-height:44px;padding:10px 12px!important;border-radius:10px;font-size:14px!important;line-height:1.25;text-decoration:none!important;white-space:normal;overflow-wrap:anywhere}.sidebar nav a span{display:block!important;min-width:0;flex:1}.sidebar-bottom{display:block!important;margin-top:auto!important;padding:14px 8px!important;font-size:13px!important}.mobile-nav-overlay{display:block;position:fixed;inset:0;background:rgba(4,20,27,.56);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;z-index:90}.mobile-nav-overlay.show{opacity:1;visibility:visible;pointer-events:auto}.main{margin-left:0!important;width:100%!important;max-width:100%!important}.topbar{height:auto!important;min-height:76px;padding:10px 14px!important;gap:10px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50!important}.mobile-menu-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--navy);font:800 13px/1 Segoe UI,Arial,sans-serif;cursor:pointer;box-shadow:0 3px 12px rgba(7,31,40,.05)}.mobile-menu-btn .menu-bars{font-size:18px;line-height:1}.topbar-title{min-width:0;flex:1}.topbar h2{margin:3px 0 0!important;font-size:22px!important;line-height:1.12;overflow-wrap:anywhere}.eyebrow{font-size:9px!important;line-height:1.2;letter-spacing:1.4px!important;white-space:normal}.date-pill{flex:0 0 auto;padding:7px 9px!important;font-size:10px!important;line-height:1.25;white-space:nowrap}.content{padding:14px!important}.hero,.member-hero{padding:20px 18px!important;border-radius:16px!important;flex-direction:column;align-items:flex-start!important;gap:12px}.hero h1,.member-hero h1{font-size:25px!important;line-height:1.12}.hero-stat,.member-plan{width:100%;text-align:left!important}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.two-col,.three-col,.form-grid,.form-grid.three,.plan-grid,.print-layout{grid-template-columns:1fr!important}.desk-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.info-grid{grid-template-columns:1fr!important}.toolbar,.card-head{align-items:flex-start!important;flex-direction:column;gap:10px!important}.toolbar-actions{width:100%;align-items:stretch!important}.toolbar-actions .btn{flex:1 1 auto}.form-actions{flex-direction:column;align-items:stretch!important}.form-actions .btn{width:100%}.btn{min-height:42px;white-space:normal;text-align:center}input,select,textarea{font-size:16px!important}label{min-width:0}.card{padding:15px!important;border-radius:15px!important}.payment-reminder{align-items:flex-start!important}.table-card{width:100%;max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch}.table-card table{min-width:760px!important}.card:has(>table){width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.modal{padding:8px!important;align-items:flex-start!important;overflow-y:auto}.modal-card,.wide-modal{width:100%!important;max-width:100%!important;max-height:94dvh!important;padding:18px 14px!important;margin-top:8px;border-radius:14px!important}.pdf-preview{height:56vh!important;min-height:310px!important}}
@media(max-width:560px){.topbar{padding:9px 10px!important;gap:7px}.mobile-menu-btn{padding:8px 9px;min-width:42px}.mobile-menu-btn .menu-label{display:none}.topbar h2{font-size:19px!important}.eyebrow{font-size:8px!important;letter-spacing:1px!important}.date-pill{padding:6px 8px!important;font-size:9px!important}.content{padding:10px!important}.card{padding:13px!important}.kpis{grid-template-columns:1fr!important}.desk-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.price{font-size:23px!important}}
@media(max-width:380px){.date-pill{display:none}.topbar h2{font-size:18px!important}}
.meeting-page{max-width:1180px;margin:0 auto}.meeting-summary-card{background:linear-gradient(135deg,#062630 0%,#0a4955 70%,#0d5e69 100%);color:#fff;border-radius:20px;padding:24px;margin-bottom:18px;box-shadow:0 10px 30px rgba(7,31,40,.13);overflow:hidden;position:relative}.meeting-summary-card:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-90px;top:-120px;background:linear-gradient(135deg,rgba(229,0,73,.75),rgba(255,118,27,.7))}.meeting-member-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;position:relative;z-index:1}.meeting-kicker{display:block;color:#ffb86c;font-size:10px;letter-spacing:2px;font-weight:900;margin-bottom:6px}.meeting-member-copy h3{font-size:25px;margin:0 0 5px;color:#fff}.meeting-member-copy p{margin:0;color:#d3e4e7;font-size:13px}.meeting-capacity-badge{min-width:112px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:15px;padding:12px;text-align:center}.meeting-capacity-badge small,.meeting-capacity-badge span{display:block;font-size:9px;color:#d9e7e9}.meeting-capacity-badge strong{display:block;font-size:25px;margin:2px 0}.meeting-stat-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.meeting-stat{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:15px}.meeting-stat span{display:block;color:#d2e1e4;font-size:11px}.meeting-stat strong{display:block;font-size:25px;margin-top:6px}.meeting-stat-remaining{background:rgba(255,255,255,.17)}.meeting-rate-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.meeting-rate-grid>div{background:#fff;color:var(--text);border-radius:13px;padding:12px 14px}.meeting-rate-grid span,.meeting-rate-grid small{display:block;color:var(--muted);font-size:10px}.meeting-rate-grid strong{display:block;color:var(--navy);font-size:19px;margin:3px 0}.meeting-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:16px}.meeting-section-head h3{margin:0 0 4px}.meeting-section-head p{margin:0;color:var(--muted);font-size:12px}.meeting-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.meeting-form-full{grid-column:1/-1}.meeting-form-grid label small{font-weight:500;color:var(--muted)}.meeting-estimate{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:#fff7e8;border:1px solid #f1d59f;border-radius:13px;padding:12px}.meeting-estimate>div{background:#fff;border-radius:10px;padding:10px;border:1px solid #f2e3c6}.meeting-estimate span{display:block;color:var(--muted);font-size:10px}.meeting-estimate strong{display:block;margin-top:3px;color:var(--navy);font-size:17px}.meeting-estimate>small{grid-column:1/-1;color:#74664d}.meeting-book-btn{min-width:210px}.meeting-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.meeting-legend span{display:inline-flex;align-items:center;gap:5px}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.available-dot{background:#0a9a6b}.booked-dot{background:#c63b35}.buffer-dot{background:#f6a100}.meeting-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:9px}.meeting-slot{min-height:72px;border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;justify-content:center}.meeting-slot.available{background:#effaf6;border-color:#a8ddcb}.meeting-slot.booked{background:#fff2f1;border-color:#efbbb7}.meeting-slot.buffer{background:#fff8e9;border-color:#efd69f}.slot-time{font-weight:900;color:var(--navy);font-size:14px}.slot-label{margin-top:4px;font-size:10px;line-height:1.3;color:var(--muted)}.meeting-slot.booked .slot-label{color:#a94740}.meeting-slot.buffer .slot-label{color:#906c21}.meeting-loading,.meeting-empty-state{grid-column:1/-1;padding:24px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}.meeting-history-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.meeting-history-table{min-width:850px}.meeting-history-mobile{display:none}.meeting-history-item{border:1px solid var(--line);border-radius:13px;padding:13px;margin-bottom:10px}.meeting-history-item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.meeting-history-item-head strong,.meeting-history-item-head span{display:block}.meeting-history-item-head div>span{font-size:11px;color:var(--muted);margin-top:2px}.meeting-history-mobile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:11px 0}.meeting-history-mobile-grid>div{background:#f7f9fa;border-radius:9px;padding:9px}.meeting-history-mobile-grid small{display:block;color:var(--muted);font-size:9px}.meeting-history-mobile-grid b{display:block;margin-top:3px}.meeting-history-item p{margin:0;font-size:12px;color:#506069}
@media(max-width:680px){.meeting-summary-card{padding:16px}.meeting-member-copy h3{font-size:21px}.meeting-capacity-badge{min-width:92px;padding:10px}.meeting-capacity-badge strong{font-size:21px}.meeting-stat-grid{grid-template-columns:1fr;gap:8px}.meeting-stat{display:flex;align-items:center;justify-content:space-between;padding:12px 13px}.meeting-stat strong{font-size:21px;margin:0}.meeting-rate-grid{grid-template-columns:1fr;gap:7px}.meeting-rate-grid>div{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px}.meeting-rate-grid small{grid-column:1/-1}.meeting-form-grid{grid-template-columns:1fr}.meeting-form-full{grid-column:1}.meeting-estimate{grid-template-columns:1fr}.meeting-estimate>small{grid-column:1}.meeting-book-btn{width:100%;min-width:0}.meeting-section-head{flex-direction:column}.meeting-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-history-table-wrap{display:none}.meeting-history-mobile{display:block}}
@media(max-width:420px){.meeting-member-row{flex-direction:column}.meeting-capacity-badge{width:100%;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;text-align:left}.meeting-capacity-badge strong{font-size:18px}.meeting-slot-grid{grid-template-columns:1fr}}

/* ================================================================
   APPLAUD MOBILE MENU CLOSE + HOLIDAY UI V2
   ================================================================ */
.mobile-menu-close{display:none}
.member-holiday-page{width:100%;max-width:1050px;margin:0 auto}
.holiday-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;margin-bottom:16px;border-radius:18px;border:1px solid #dbe4e7;background:linear-gradient(135deg,#fff 0%,#f7fbfc 100%);box-shadow:0 8px 24px rgba(8,35,44,.05)}
.holiday-kicker{display:block;margin-bottom:5px;color:#e50049;font-size:10px;font-weight:900;letter-spacing:1.8px}
.holiday-hero h3{margin:0 0 5px;font-size:24px;line-height:1.2;color:var(--navy)}
.holiday-hero p{margin:0;max-width:650px;color:var(--muted);font-size:13px;line-height:1.5}
.holiday-count{min-width:92px;padding:12px 14px;border-radius:14px;text-align:center;background:#062630;color:#fff}
.holiday-count strong{display:block;font-size:25px;line-height:1}
.holiday-count span{display:block;margin-top:4px;font-size:10px;color:#d5e5e8}
.member-holiday-card{padding:8px 18px!important;overflow:hidden}
.member-holiday-list{display:grid}
.member-holiday-row{display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;padding:14px 0;border-bottom:1px solid #e1e7e9}
.member-holiday-row:last-child{border-bottom:0}
.member-holiday-date{width:64px;min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:15px;border:1px solid #ffd0bc;background:#fff5ef;color:#e64013}
.member-holiday-date strong{font-size:21px;line-height:1}
.member-holiday-date span{margin-top:5px;font-size:9px;line-height:1;color:#bc5a3c;white-space:nowrap}
.member-holiday-copy{min-width:0}
.member-holiday-copy h4{margin:0;color:var(--navy);font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.member-holiday-copy p{margin:4px 0 0;color:var(--muted);font-size:11px}
.member-holiday-status{display:inline-flex;align-items:center;gap:7px;min-width:max-content;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:800}
.member-holiday-status.closed{color:#a83a27;background:#fff0eb;border:1px solid #ffd0c2}
.member-holiday-status.open{color:#087653;background:#ecfaf5;border:1px solid #bfe7d7}
.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor}
.holiday-empty-state{padding:40px 20px;text-align:center;color:var(--muted)}
.holiday-empty-state strong{display:block;margin:8px 0 4px;color:var(--navy)}
.holiday-empty-state p{margin:0;font-size:12px}
.holiday-empty-icon{width:42px;height:42px;display:grid;place-items:center;margin:0 auto;border-radius:50%;background:#eef8f5;color:#087653;font-weight:900}
@media(max-width:920px){
  .sidebar{position:fixed!important}
  .sidebar .brand{padding-right:58px!important}
  .mobile-menu-close{display:flex;position:absolute;top:14px;right:12px;z-index:3;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:24px;line-height:1;cursor:pointer}
  .mobile-menu-close:active{transform:scale(.96)}
  .holiday-list>div{display:grid!important;grid-template-columns:58px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;min-width:0}
  .holiday-list>div>div{min-width:0}
  .holiday-list>div>div>b,.holiday-list>div>div>small{display:block!important;overflow-wrap:anywhere}
  .holiday-list .pill{white-space:nowrap}
}
@media(max-width:680px){
  .holiday-hero{padding:17px;align-items:flex-start}
  .holiday-hero h3{font-size:21px}
  .holiday-count{min-width:76px;padding:10px}
  .holiday-count strong{font-size:21px}
  .member-holiday-card{padding:5px 13px!important}
  .member-holiday-row{grid-template-columns:62px minmax(0,1fr);gap:12px;padding:12px 0}
  .member-holiday-date{width:58px;min-height:58px}
  .member-holiday-copy h4{font-size:15px}
  .member-holiday-status{grid-column:2;justify-self:start;margin-top:-4px}
  .holiday-list>div{grid-template-columns:52px minmax(0,1fr)!important}
  .holiday-list .pill{grid-column:2!important;justify-self:start;margin-top:2px}
}
@media(max-width:420px){
  .holiday-hero{flex-direction:column}
  .holiday-count{width:100%;display:flex;align-items:center;justify-content:center;gap:7px}
  .holiday-count strong,.holiday-count span{display:inline;margin:0}
}
/* ================== END HOLIDAY UI V2 ================== */

/* ================= APPLAUD PRINT & SCAN V1 ================= */
.ps-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 16px;
}
.ps-tabs a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:9px 14px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
  color:var(--navy);
  text-decoration:none;
  font-weight:800;
  font-size:13px;
}
.ps-tabs a.active{
  background:var(--navy);
  color:#fff;
  border-color:var(--navy);
}
.scan-member-page{max-width:1100px;margin:0 auto}
.scan-intro-card{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  background:linear-gradient(135deg,#062630,#0b4b57);
  color:#fff;
}
.scan-intro-card h3{color:#fff;margin:2px 0 5px;font-size:24px}
.scan-intro-card p{margin:0;color:#d3e5e8;max-width:700px;line-height:1.5}
.scan-kicker{display:block;font-size:9px;font-weight:900;letter-spacing:1.7px;color:#ffb36a}
.scan-status{
  min-width:180px;
  padding:12px;
  border-radius:13px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
}
.scan-status small,.scan-status span{display:block;font-size:10px;color:#d5e5e8}
.scan-status strong{display:block;margin:4px 0;font-size:14px;overflow-wrap:anywhere}
.scan-status.offline{background:rgba(160,30,30,.28)}
.scan-warning{
  border:1px solid #f0c8ba!important;
  background:#fff6f1!important;
}
.scan-warning p{margin:5px 0 0;color:#7d5b50}
.scan-head{align-items:flex-start}
.scan-instructions{
  margin:12px 0;
  padding:12px 14px;
  border-radius:11px;
  background:#f2f8fa;
  border:1px solid #d9e7eb;
}
.scan-main-btn{font-size:15px;min-height:48px}
.scan-page-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(155px,1fr));
  gap:12px;
  margin:16px 0;
}
.scan-page-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.scan-thumb{
  display:block;
  height:190px;
  background:#eef2f3;
}
.scan-thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.scan-page-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:9px 10px;
}
.scan-delete-link{
  border:0;
  background:none;
  color:#b42b2b;
  cursor:pointer;
  font-weight:800;
}
.scan-complete-box{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:15px;
  padding:14px;
  border-radius:13px;
  background:#fff8e8;
  border:1px solid #ecd8a6;
}
.scan-complete-box b,.scan-complete-box span{display:block}
.scan-complete-box span{font-size:11px;color:var(--muted);margin-top:3px}
.scan-history-grid{display:grid;gap:10px}
.scan-history-card{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
}
.scan-pdf-icon{
  width:48px;height:48px;
  display:grid;place-items:center;
  border-radius:11px;
  background:#fff0ef;color:#bb2e25;
  font-weight:900;font-size:11px;
}
.scan-history-copy{min-width:0}
.scan-history-copy b,.scan-history-copy span,.scan-history-copy small{display:block}
.scan-history-copy b{overflow-wrap:anywhere}
.scan-history-copy span,.scan-history-copy small{font-size:10px;color:var(--muted);margin-top:3px}
.scan-history-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.scan-empty{
  padding:25px;
  text-align:center;
  border:1px dashed var(--line);
  border-radius:12px;
  color:var(--muted);
}
@media(max-width:680px){
  .ps-tabs{display:grid;grid-template-columns:1fr 1fr}
  .ps-tabs a{justify-content:center}
  .scan-intro-card{flex-direction:column}
  .scan-status{width:100%;min-width:0}
  .scan-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scan-thumb{height:165px}
  .scan-complete-box{flex-direction:column;align-items:stretch}
  .scan-complete-box .btn{width:100%}
  .scan-history-card{grid-template-columns:44px minmax(0,1fr)}
  .scan-pdf-icon{width:42px;height:42px}
  .scan-history-actions{grid-column:1/-1;justify-content:stretch}
  .scan-history-actions>a,.scan-history-actions>form{flex:1}
  .scan-history-actions .btn,.scan-history-actions .link-btn{width:100%;text-align:center;display:block}
}
@media(max-width:420px){
  .scan-page-grid{grid-template-columns:1fr}
  .scan-thumb{height:240px}
}
/* =============== END APPLAUD PRINT & SCAN V1 =============== */


/* FINANCE_TOP_NAV_V1 */
.finance-top-nav{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;margin-right:18px;flex-wrap:wrap}
.finance-top-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border:1px solid #dbe2e8;border-radius:12px;background:#fff;color:#102435;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.finance-top-btn:hover{border-color:#ff4b55;color:#ef0051}
.finance-top-btn.active{border-color:transparent;color:#fff;background:linear-gradient(90deg,#f60055,#ff7a00);box-shadow:0 8px 20px rgba(246,0,85,.14)}
@media (max-width:1050px){.finance-top-nav{order:3;width:100%;justify-content:flex-start;margin:10px 0 0}}
@media (max-width:650px){.finance-top-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.finance-top-btn{min-width:0;width:100%;padding:9px 10px}.finance-top-btn:last-child{grid-column:1/-1}}


/* PAYMENTS_FINANCE_HUB_V2 */
.payments-finance-hub{display:flex;align-items:center;gap:10px;margin-left:auto;margin-right:18px;flex-wrap:wrap}
.payments-finance-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 16px;border:1px solid #d9e0e6;border-radius:12px;background:#fff;color:#102435;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.payments-finance-btn:hover{border-color:#f40055;color:#f40055}
@media (max-width:1000px){.payments-finance-hub{order:3;width:100%;margin:10px 0 0;justify-content:flex-start}}
@media (max-width:600px){.payments-finance-hub{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.payments-finance-btn{width:100%;min-width:0;padding:9px 8px}}
