:root{--navy:#0b1f3a;--navy-mid:#122952;--navy-light:#1a3a6b;--gold:#c8952a;--gold-light:#e8b84b;--gold-pale:#f5e8c8;--cream:#faf7f2;--white:#fff;--text:#1c2d45;--text-mid:#4a6080;--text-light:#7a8fa6;--border:#d4c9b0;--border-light:#eae4d8;--green:#1a7a4a;--green-pale:#e8f5ee;--red:#b42b2b;--red-pale:#fdeaea;--amber:#b86b00;--amber-pale:#fff3e0;--shadow-sm:0 1px 4px #0b1f3a14;--shadow-md:0 4px 16px #0b1f3a1f;--shadow-lg:0 8px 32px #0b1f3a29;--radius:6px;--radius-lg:10px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--text);min-height:100vh;font-family:Plus Jakarta Sans,Noto Sans Sinhala,sans-serif;font-size:15px;line-height:1.6}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:var(--border-light)}::-webkit-scrollbar-thumb{background:var(--navy-light);border-radius:4px}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}.top-banner{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-mid) 60%, var(--navy-light) 100%);border-bottom:4px solid var(--gold);padding:0}.banner-inner{align-items:center;gap:20px;max-width:1280px;margin:0 auto;padding:16px 24px;display:flex}.emblem{flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.emblem img{object-fit:contain;max-width:100%;max-height:100%}.org-name{flex:1}.org-name-en{color:var(--white);letter-spacing:.3px;font-family:Abhaya Libre,EB Garamond,serif;font-size:22px;font-weight:600;line-height:1.2}.org-name-si{color:var(--gold-light);margin-top:3px;font-family:Noto Sans Sinhala,sans-serif;font-size:18px;font-weight:600}.org-sub{color:#ffffff8c;letter-spacing:.8px;text-transform:uppercase;margin-top:2px;font-size:12px}.banner-right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.current-date{color:#fff9;letter-spacing:.3px;font-size:12px}.user-chip{color:var(--white);background:#ffffff14;border:1px solid #ffffff26;border-radius:24px;align-items:center;gap:8px;padding:5px 14px 5px 8px;font-size:13px;display:flex}.user-avatar{background:var(--gold);width:28px;height:28px;color:var(--navy);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.badge{letter-spacing:.6px;text-transform:uppercase;border-radius:12px;padding:1px 8px;font-size:10px;font-weight:700;display:inline-block}.badge-do{color:#9dc4ff;background:#1a4a8a}.badge-co{color:#ffcc80;background:#6b3a00}.badge-sco{color:#88d4a8;background:#1a5c35}.badge-hq{color:#e8a8e8;background:#5a1a5a}.logout-btn{background:var(--gold);color:var(--navy);cursor:pointer;border:none;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:700;transition:all .2s;box-shadow:0 2px 4px #0000001a}.logout-btn:hover{background:var(--gold-light);transform:translateY(-1px);box-shadow:0 4px 6px #00000026}.nav-bar{background:var(--navy-mid);border-bottom:1px solid #c8952a4d;gap:2px;padding:0 24px;display:flex;overflow-x:auto}.nav-tab{color:#ffffffd9;white-space:nowrap;letter-spacing:.2px;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:7px;padding:12px 18px;font-size:15px;font-weight:500;transition:all .2s;display:flex}.nav-tab:hover{color:#ffffffd9;background:#ffffff0a}.nav-tab.active{color:var(--gold-light);border-bottom-color:var(--gold);background:#c8952a12}.nav-icon{font-size:15px}.main{max-width:1280px;margin:0 auto;padding:28px 24px}#login-screen{flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 84px);padding:40px 24px;display:flex}.login-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:460px;padding:40px}.login-logo{object-fit:contain;width:90px;height:90px;margin:0 auto 20px;display:block}.login-heading{color:var(--navy);text-align:center;margin-bottom:4px;font-family:EB Garamond,serif;font-size:26px}.login-sub{color:var(--text);text-align:center;margin-bottom:30px;font-size:15px}.form-label{color:var(--text-mid);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-input{border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);background:var(--cream);outline:none;padding:10px 14px;font-size:14px;transition:all .2s}.form-input:focus{border-color:var(--navy-light);background:var(--white);box-shadow:0 0 0 3px #1a3a6b1a}.form-group{margin-bottom:18px}.btn-primary{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);width:100%;color:var(--white);border-radius:var(--radius);letter-spacing:.3px;border:none;margin-top:4px;padding:12px;font-size:15px;font-weight:600;transition:all .2s}.btn-primary:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active{transform:none}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-hint{color:var(--text);text-align:center;margin-top:16px;font-size:13px}.login-error{background:var(--red-pale);border:1px solid var(--red);color:var(--red);border-radius:var(--radius);justify-content:center;margin-bottom:16px;padding:9px 14px;font-size:13px;display:none}.page{display:none}.page.active{display:block}.section-header{border-bottom:2px solid var(--border-light);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;display:flex}.section-title{color:var(--navy);font-family:Abhaya Libre,EB Garamond,serif;font-size:22px}.section-sub{color:var(--text);margin-top:2px;font-size:14px;font-weight:600}.stat-grid{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:28px;display:flex}.stat-card{background:var(--white);border:1px solid var(--border-light);border-left:4px solid var(--accent,var(--navy));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex:200px;max-width:280px;padding:18px 20px;transition:all .2s}.stat-card:hover{box-shadow:var(--shadow-md)}.stat-num{color:var(--navy);font-family:EB Garamond,serif;font-size:30px;font-weight:600;line-height:1.1}.stat-label{color:var(--text-mid);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:12px;font-weight:600}.stat-si{color:var(--text-mid);font-family:Noto Sans Sinhala,sans-serif;font-size:12px;font-weight:600}.chart-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:20px}.chart-title{color:var(--text-mid);text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:700;display:flex}.chart-title:before{content:"";background:var(--gold);border-radius:2px;width:3px;height:14px;display:inline-block}.chart-wrap{height:260px;position:relative}.table-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;overflow:hidden}.table-scroll{max-height:550px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}thead{background:var(--navy)}thead th{z-index:2;background:var(--navy);color:#ffffffd9;text-transform:uppercase;letter-spacing:.8px;text-align:left;white-space:nowrap;padding:14px 16px;font-size:13px;font-weight:700;position:sticky;top:0}tbody tr{border-bottom:1px solid var(--border-light);transition:background .15s}tbody tr:hover{background:#f5f8fc}tbody tr:last-child{border-bottom:none}td{color:var(--text);vertical-align:middle;padding:12px 16px}td.val{color:var(--navy);font-weight:600}td.green{color:var(--green);font-weight:600}td.muted{color:var(--navy)}.month-tabs-wrap{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:20px}.month-tabs-header{border-bottom:1px solid var(--border-light);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:#f8fafc;align-items:center;gap:8px;padding:12px;display:flex;overflow-x:auto}.month-tab{color:var(--text-mid);background:var(--white);border:1px solid var(--border);white-space:nowrap;cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 18px;font-size:14px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 1px 2px #0000000d}.month-tab:hover{border-color:var(--navy-light);background:#f1f5f9}.month-tab.active{background:var(--navy);color:var(--white);border-color:var(--navy);box-shadow:0 4px 6px -1px #0000001a}.month-tab.has-data:not(.active){border-color:var(--green);color:var(--green);background:#f0fdf4}.month-tab .dot{background:var(--green);border:1px solid var(--white);vertical-align:middle;border-radius:50%;width:8px;height:8px;display:inline-block}.month-tab.active .dot{background:var(--white)}.month-content{padding:20px}.date-range-section{background:var(--cream);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.date-range-label{color:var(--text-mid);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:13px;font-weight:600}.date-input-group{flex:1;min-width:160px}.date-separator{color:var(--text-light);padding-bottom:10px;font-size:18px;font-weight:300}.entry-form{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:24px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px;display:grid}.field-label{color:var(--text-mid);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px;font-size:13px;font-weight:600}.field-si{color:var(--text-mid);margin-bottom:5px;font-family:Noto Sans Sinhala,sans-serif;font-size:13px;font-weight:600}.num-input{border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);background:var(--cream);outline:none;padding:9px 12px;font-size:16px;transition:all .2s}.num-input:focus{border-color:var(--navy-light);background:var(--white);box-shadow:0 0 0 3px #1a3a6b14}.num-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.num-input[type=number]{-moz-appearance:textfield}.text-input{border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);background:var(--cream);outline:none;padding:9px 12px;font-size:15px;transition:all .2s}.text-input:focus{border-color:var(--navy-light);background:var(--white);box-shadow:0 0 0 3px #1a3a6b14}.form-section-title{color:var(--text-mid);text-transform:uppercase;letter-spacing:.8px;border-top:1px solid var(--border-light);align-items:center;gap:8px;margin-top:4px;margin-bottom:12px;padding:10px 0 6px;font-size:14px;font-weight:700;display:flex}.form-section-title span{background:var(--navy);color:var(--white);border-radius:10px;padding:2px 8px;font-size:13px}.btn-save{background:linear-gradient(135deg, var(--green) 0%, #1f8f55 100%);color:var(--white);border-radius:var(--radius);border:none;padding:11px 28px;font-size:14px;font-weight:600;transition:all .2s}.btn-save:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1a7a4a59}.btn-outline{color:var(--text-mid);border:1px solid var(--border);border-radius:var(--radius);background:0 0;padding:10px 20px;font-size:13px;transition:all .2s}.btn-outline:hover{border-color:var(--navy);color:var(--navy)}.btn-edit-approve{color:var(--navy);border:1px solid var(--gold);border-radius:var(--radius);cursor:pointer;background:0 0;align-items:center;gap:6px;height:38px;padding:9px 16px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-edit-approve:hover{border-color:var(--navy);background:#c8952a14;transform:translateY(-1px)}.btn-danger{color:var(--red);border-color:var(--red-pale)}.btn-danger:hover{background:var(--red-pale);border-color:var(--red)!important;color:var(--red)!important}.entries-list{margin-top:20px}.entry-item{background:var(--white);border:1px solid var(--border-light);border-left:4px solid var(--green);border-radius:var(--radius);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;padding:14px 16px;display:flex}.entry-date{color:var(--navy);margin-bottom:6px;font-size:12px;font-weight:700}.entry-metrics{flex-wrap:wrap;gap:10px;display:flex}.metric-pill{background:var(--cream);border:1px solid var(--border-light);color:var(--text-mid);border-radius:12px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;display:inline-flex}.metric-pill strong{color:var(--navy)}.entry-del{color:var(--text-light);background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:16px;line-height:1}.entry-del:hover{background:var(--red-pale);color:var(--red)}.filter-row{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:18px;display:flex}.filter-group{flex-direction:column;gap:4px;display:flex}.filter-label{color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.filter-sel{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;outline:none;padding:8px 12px;font-size:13px}.filter-sel:focus{border-color:var(--navy-light)}.status{border-radius:12px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.status-active{background:var(--green-pale);color:var(--green)}.status-idle{background:var(--amber-pale);color:var(--amber)}.status-none{background:var(--red-pale);color:var(--red)}.status-proposed{color:#1976d2;background:#e3f2fd}.status-completed{color:#1a7a4a;background:#e8f5ee}.status-rescheduled{color:#e65100;background:#fff3e0}.status-cancelled{color:#b42b2b;background:#fdeaea}.officer-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;display:grid}.officer-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px;transition:all .2s}.officer-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.off-id{color:var(--text-light);letter-spacing:.6px;margin-bottom:4px;font-size:10px;font-weight:700}.off-name{color:var(--navy);margin-bottom:3px;font-size:14px;font-weight:600}.off-location{color:var(--text-light);margin-bottom:12px;font-size:11px}.off-stats{grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.off-stat{text-align:center;background:var(--cream);border:1px solid var(--border-light);border-radius:6px;padding:7px 4px}.off-stat-num{color:var(--navy);font-size:17px;font-weight:700}.off-stat-label{color:var(--text-light);text-transform:uppercase;letter-spacing:.4px;font-size:9px}.prog-label{color:var(--text-light);justify-content:space-between;margin-bottom:4px;font-size:10px;display:flex}.prog-track{background:var(--border-light);border-radius:3px;height:5px;overflow:hidden}.prog-fill{background:linear-gradient(90deg, var(--navy) 0%, var(--gold) 100%);border-radius:3px;height:100%;transition:width .5s}.alert{border-radius:var(--radius);align-items:flex-start;gap:8px;margin-bottom:16px;padding:10px 16px;font-size:13px;display:flex}.alert-info{color:#1a3a6b;background:#ebf2ff;border:1px solid #b3d0ff}.alert-warn{background:var(--amber-pale);color:var(--amber);border:1px solid #ffb74d}.alert-success{background:var(--green-pale);color:var(--green);border:1px solid #81c995}.dist-bar-row{border-bottom:1px solid var(--border-light);align-items:center;gap:12px;padding:10px 0;display:flex}.dist-bar-name{width:100px;color:var(--navy);font-size:13px;font-weight:600}.dist-bar-track{background:var(--cream);border:1px solid var(--border-light);border-radius:3px;flex:1;height:22px;overflow:hidden}.dist-bar-fill{color:#fff;border-radius:3px;align-items:center;height:100%;padding-left:10px;font-size:12px;font-weight:700;transition:width .6s;display:flex}.dist-bar-val{text-align:right;width:90px;color:var(--text-mid);font-size:12px}.month-filter-row{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.m-chip{border:1px solid var(--border);color:var(--text-mid);background:var(--white);cursor:pointer;border-radius:20px;padding:5px 12px;font-size:12px;transition:all .2s}.m-chip:hover{border-color:var(--navy);color:var(--navy)}.m-chip.active{background:var(--navy);color:var(--white);border-color:var(--navy)}.footer{background:var(--navy);color:#ffffff80;text-align:center;letter-spacing:.3px;margin-top:40px;padding:14px 24px;font-size:13px}.footer a{color:var(--gold-light);text-decoration:none}.foot-white{color:var(--white);font-weight:500}.foot-gold{color:var(--gold);font-weight:600}.btn-export{background:var(--navy);border:1px solid var(--navy);color:var(--white);border-bottom:3px solid var(--navy-mid);border-radius:12px;align-items:center;gap:10px;padding:10px 24px;font-size:14px;font-weight:700;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 2px 4px #0b1f3a26}.btn-export:hover{border-color:var(--gold);color:var(--gold-light);background:var(--navy-mid);transform:translateY(-2px);box-shadow:0 6px 12px #0b1f3a40}.btn-export:active{transform:translateY(0)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#0b1f3a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--white);border-radius:var(--radius-lg);width:100%;max-width:600px;max-height:90vh;animation:.3s modalSlide;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:1px solid var(--border-light);background:#f8fafc;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{color:var(--navy);font-family:Abhaya Libre,EB Garamond,serif;font-size:20px;font-weight:700}.modal-close{color:var(--text-light);cursor:pointer;background:0 0;border:none;font-size:20px}.modal-close:hover{color:var(--red)}@keyframes modalSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.responsive-split-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.responsive-sidebar-grid{grid-template-columns:1fr 340px;align-items:start;gap:24px;display:grid}.nav-bar{scrollbar-width:none}.nav-bar::-webkit-scrollbar{display:none}@media (width<=950px){.responsive-sidebar-grid{grid-template-columns:1fr}}@media (width<=900px){.responsive-split-grid{grid-template-columns:1fr}}@media (width<=768px){.banner-inner{text-align:center;flex-direction:column;gap:16px;padding:20px 16px}.banner-right{align-items:center}.org-name-en{text-align:center;font-size:18px}.org-name-si{text-align:center;font-size:15px}.emblem{width:56px;height:56px}.main{padding:16px}.stat-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid!important}.stat-card{flex:none;max-width:100%}.form-row{grid-template-columns:1fr!important}.date-range-section{flex-direction:column;align-items:stretch}.date-input-group{width:100%}.date-separator{text-align:center;padding:4px 0}.off-stats{grid-template-columns:1fr 1fr 1fr}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.table-scroll table{min-width:700px}.chart-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.chart-wrap canvas{min-width:500px!important}.modal-content{max-width:95vw;margin:10px}.btn-save,.btn-outline{text-align:center;width:100%}.month-tabs-header{gap:6px;padding:8px}.month-tab{padding:6px 12px;font-size:13px}}@media (width<=480px){.stat-grid{grid-template-columns:1fr;display:grid!important}.login-card{padding:24px 16px}.login-heading{font-size:22px}.podium-wrap{gap:16px}.chart-wrap canvas{min-width:500px!important}.chart-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.officer-grid{grid-template-columns:1fr}}.flatpickr-calendar{border:1px solid var(--border)!important;box-shadow:var(--shadow-lg)!important;border-radius:var(--radius-lg)!important;font-family:"Source Sans 3",sans-serif!important}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--navy)!important;border-color:var(--navy)!important}.flatpickr-day.inRange{background:#1a3a6b1f!important;border-color:#1a3a6b1f!important}.flatpickr-months{background:var(--navy)!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0!important}.flatpickr-month{color:var(--white)!important}.flatpickr-monthDropdown-months option{color:var(--navy)!important;background-color:var(--white)!important}.flatpickr-prev-month svg,.flatpickr-next-month svg{fill:var(--white)!important}.flatpickr-weekday{color:var(--text-mid)!important;font-weight:600!important}.hq-calendar-container .numInputWrapper{display:none!important}.flatpickr-day.has-event{background-color:#1a3a6b14!important;border:1.5px solid #1a3a6b40!important}.flatpickr-day.has-event.selected{background-color:var(--navy)!important;border-color:var(--navy)!important;color:var(--white)!important}.fadeInUp{animation:.4s cubic-bezier(.16,1,.3,1) forwards fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.podium-wrap{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:24px;margin:32px 0 40px;display:flex}.podium-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;flex-direction:column;align-items:center;min-width:250px;padding:24px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.podium-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.podium-1{border:2px solid var(--gold);background:linear-gradient(180deg, var(--white) 0%, var(--gold-pale) 100%);order:2;width:280px;min-height:280px;box-shadow:0 12px 28px #c8952a26}.podium-2{border:2px solid #94a3b8;order:1;min-height:240px}.podium-3{border:2px solid #c27d56;order:3;min-height:210px}.podium-badge{width:48px;height:48px;color:var(--white);box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;margin-bottom:12px;font-size:20px;font-weight:800;display:flex;position:relative}.podium-1 .podium-badge{background:linear-gradient(135deg, #f9d066 0%, var(--gold) 100%);box-shadow:0 4px 10px #c8952a66}.podium-2 .podium-badge{background:linear-gradient(135deg,#e2e8f0 0%,#94a3b8 100%);box-shadow:0 4px 10px #94a3b866}.podium-3 .podium-badge{background:linear-gradient(135deg,#e6a785 0%,#a05c38 100%);box-shadow:0 4px 10px #a05c3866}.podium-crown{font-size:24px;animation:2s ease-in-out infinite floatCrown;position:absolute;top:-24px}@keyframes floatCrown{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-4px)rotate(3deg)}}.podium-avatar{background:var(--navy-mid);width:60px;height:60px;color:var(--gold-light);border:3px solid var(--white);box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;margin-bottom:12px;font-size:18px;font-weight:700;display:flex}.podium-1 .podium-avatar{border-color:var(--gold)}.podium-2 .podium-avatar{border-color:#94a3b8}.podium-3 .podium-avatar{border-color:#c27d56}.podium-name{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;max-width:220px;margin-bottom:4px;font-family:Abhaya Libre,EB Garamond,serif;font-size:18px;font-weight:700;line-height:1.2;overflow:hidden}.podium-location{color:var(--text-mid);margin-bottom:12px;font-size:12px;font-weight:500}.podium-val{color:var(--green);font-size:20px;font-weight:700;line-height:1}.podium-count{color:var(--text-light);text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:600}.leaderboard-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px;display:grid}@media (width<=850px){.leaderboard-grid{grid-template-columns:1fr}.podium-wrap{flex-direction:column;align-items:center;gap:16px}.podium-card{width:100%;max-width:320px;min-height:auto!important}.podium-1{order:1}.podium-2{order:2}.podium-3{order:3}}.rank-pill{background:var(--cream);width:24px;height:24px;color:var(--navy);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.rank-pill-1{color:#d97706;background:#fef3c7;border-color:#fcd34d}.rank-pill-2{color:#475569;background:#f1f5f9;border-color:#cbd5e1}.rank-pill-3{color:#c2410c;background:#ffedd5;border-color:#fed7aa}.search-box-wrap{gap:12px;margin-bottom:16px;display:flex;position:relative}.search-input-icon{color:var(--text-light);pointer-events:none;font-size:15px;position:absolute;top:13px;left:14px}.search-input-field{height:42px;padding-left:38px}.premium-banner{border-left:5px solid;border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px 20px;font-size:14.5px;font-weight:500;line-height:1.5;transition:all .2s;animation:.35s cubic-bezier(.16,1,.3,1) forwards premiumSlideDown;display:flex;box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000005}.premium-banner.success{color:#0f766e;-webkit-backdrop-filter:blur(8px);background:#f0fdfaf2;border-color:#99f6e4 #99f6e4 #99f6e4 #0d9488}.premium-banner.error{color:#991b1b;-webkit-backdrop-filter:blur(8px);background:#fef2f2f2;border-color:#fee2e2 #fee2e2 #fee2e2 #ef4444}.premium-banner-icon{justify-content:center;align-items:center;padding-top:2px;font-size:20px;line-height:1;display:flex}.premium-banner-content{flex:1}.premium-banner-title{margin-bottom:2px;font-size:15px;font-weight:700}.premium-banner-desc{opacity:.9;font-family:Noto Sans Sinhala,sans-serif;font-size:12.5px;line-height:1.4}.premium-banner-close{color:inherit;cursor:pointer;opacity:.5;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;font-size:16px;transition:opacity .2s,transform .2s;display:flex}.premium-banner-close:hover{opacity:1;transform:scale(1.15)}@keyframes premiumSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:#0b1f3a33 transparent}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#0b1f3a33;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#0b1f3a66}.flatpickr-calendar{opacity:0;text-align:center;visibility:hidden;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;direction:ltr;background:#fff;border:0;border-radius:5px;width:307.875px;padding:0;font-size:14px;line-height:24px;animation:none;display:none;position:absolute;box-shadow:1px 0 #e6e6e6,-1px 0 #e6e6e6,0 1px #e6e6e6,0 -1px #e6e6e6,0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;visibility:visible;max-height:640px}.flatpickr-calendar.open{z-index:99999;display:inline-block}.flatpickr-calendar.animate.open{animation:.3s cubic-bezier(.23,1,.32,1) fpFadeInDown}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{border-top:1px solid #e6e6e6;height:40px}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{pointer-events:none;content:"";border:solid #0000;width:0;height:0;display:block;position:absolute;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{display:inline-block;position:relative}.flatpickr-months{display:flex}.flatpickr-months .flatpickr-month{color:#000000e6;fill:#000000e6;text-align:center;-webkit-user-select:none;user-select:none;background:0 0;flex:1;height:34px;line-height:1;position:relative;overflow:hidden}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;user-select:none;cursor:pointer;z-index:3;color:#000000e6;fill:#000000e6;height:34px;padding:10px;text-decoration:none;position:absolute;top:0}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{fill:inherit;transition:fill .1s}.numInputWrapper{height:auto;position:relative}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numInputWrapper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numInputWrapper span{opacity:0;cursor:pointer;box-sizing:border-box;border:1px solid #39393926;width:14px;height:50%;padding:0 4px 0 2px;line-height:50%;position:absolute;right:0}.numInputWrapper span:hover{background:#0000001a}.numInputWrapper span:active{background:#0003}.numInputWrapper span:after{content:"";display:block;position:absolute}.numInputWrapper span.arrowUp{border-bottom:0;top:0}.numInputWrapper span.arrowUp:after{border-bottom:4px solid #39393999;border-left:4px solid #0000;border-right:4px solid #0000;top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-top:4px solid #39393999;border-left:4px solid #0000;border-right:4px solid #0000;top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#00000080}.numInputWrapper:hover{background:#0000000d}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;color:inherit;text-align:center;width:75%;height:34px;padding:7.48px 0 0;font-weight:300;line-height:1;display:inline-block;position:absolute;left:12.5%;transform:translate(0,0)}.flatpickr-current-month span.cur-month{color:inherit;margin-left:.5ch;padding:0;font-family:inherit;font-weight:700;display:inline-block}.flatpickr-current-month span.cur-month:hover{background:#0000000d}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#000000e6}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#000000e6}.flatpickr-current-month input.cur-year{box-sizing:border-box;color:inherit;cursor:text;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;vertical-align:initial;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0 0 0 .5ch;display:inline-block}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{color:#00000080;pointer-events:none;background:0 0;font-size:100%}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;height:auto;font-family:inherit;font-weight:300;line-height:inherit;vertical-align:initial;background:0 0;border:none;border-radius:0;outline:none;width:auto;margin:-1px 0 0;padding:0 0 0 .5ch;position:relative}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:#0000000d}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#0000;outline:none;padding:0}.flatpickr-weekdays{text-align:center;background:0 0;align-items:center;width:100%;height:28px;display:flex;overflow:hidden}.flatpickr-weekdays .flatpickr-weekdaycontainer{flex:1;display:flex}span.flatpickr-weekday{cursor:default;color:#0000008a;text-align:center;background:0 0;flex:1;margin:0;font-size:90%;font-weight:bolder;line-height:1;display:block}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{align-items:flex-start;width:307.875px;display:flex;position:relative;overflow:hidden}.flatpickr-days:focus{outline:0}.dayContainer{text-align:left;box-sizing:border-box;opacity:1;outline:0;flex-wrap:wrap;justify-content:space-around;width:307.875px;min-width:307.875px;max-width:307.875px;padding:0;display:flex;transform:translate(0,0)}.dayContainer+.dayContainer{box-shadow:-1px 0 #e6e6e6}.flatpickr-day{box-sizing:border-box;color:#393939;cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:150px;flex-basis:14.2857%;justify-content:center;width:14.2857%;max-width:39px;height:39px;margin:0;font-weight:400;line-height:39px;display:inline-block;position:relative}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;background:#e6e6e6;border-color:#e6e6e6;outline:0}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{color:#fff;background:#959ea9;border-color:#959ea9}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{-webkit-box-shadow:none;box-shadow:none;color:#fff;background:#569ff7;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){box-shadow:-10px 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;box-shadow:-5px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3939394d;cursor:default;background:0 0;border-color:#0000}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3939391a}.flatpickr-day.week.selected{border-radius:0;box-shadow:-5px 0 #569ff7,5px 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;box-shadow:1px 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{color:#3939394d;cursor:default;background:0 0;border:none;width:100%;max-width:none;display:block}.flatpickr-innerContainer{box-sizing:border-box;display:flex;overflow:hidden}.flatpickr-rContainer{box-sizing:border-box;padding:0;display:inline-block}.flatpickr-time{text-align:center;box-sizing:border-box;outline:0;height:0;max-height:40px;line-height:40px;display:flex;overflow:hidden}.flatpickr-time:after{content:"";clear:both;display:table}.flatpickr-time .numInputWrapper{float:left;flex:1;width:40%;height:40px}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{-webkit-box-shadow:none;box-shadow:none;text-align:center;height:inherit;line-height:inherit;color:#393939;box-sizing:border-box;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0;font-size:14px;position:relative}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{border:0;outline:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;-webkit-user-select:none;user-select:none;align-self:center;width:2%;font-weight:700}.flatpickr-time .flatpickr-am-pm{cursor:pointer;text-align:center;outline:0;width:18%;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@keyframes fpFadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0,0)}}
