.nepali-date-picker{position:relative}.nepali-date-picker .calender{background:#fff none repeat scroll 0 0;border-radius:6px;box-shadow:0 2px 6px #0000001a;box-sizing:border-box;color:#8c8c8c;display:block;font-family:NotoSans,sans-serif;font-size:14px;font-style:normal;font-weight:400;height:auto;letter-spacing:.2px;line-height:1.25em;padding:15px;position:absolute;text-align:right;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;left:0;z-index:9999}.nepali-date-picker .calender .calendar-controller{align-items:center;display:flex;justify-content:space-between;position:relative}.nepali-date-picker .calender .calendar-controller .date-indicator{display:flex}.nepali-date-picker .calender .calendar-controller .control{cursor:pointer;position:relative;text-align:center}.nepali-date-picker .calender .calendar-controller .control.icon-today{position:absolute;right:20px}.nepali-date-picker .calender .calendar-controller .control.month,.nepali-date-picker .calender .calendar-controller .control.year{border:1px solid #eee;line-height:24px;width:70px}.nepali-date-picker .calender .calendar-controller .control.month .current-month,.nepali-date-picker .calender .calendar-controller .control.month .current-year,.nepali-date-picker .calender .calendar-controller .control.year .current-month,.nepali-date-picker .calender .calendar-controller .control.year .current-year{display:block;padding:4px}.nepali-date-picker .calender .calendar-controller .control.year{border-left:none}.nepali-date-picker .calender .calendar-controller .control .drop-down{background-color:#fff;box-shadow:0 2px 6px #0000001a;left:0;max-height:200px;overflow-y:scroll;position:absolute;top:0;width:100%;z-index:100}.nepali-date-picker .calender .calendar-controller .control .drop-down ul{list-style:none;margin:0;padding:0}.nepali-date-picker .calender .calendar-controller .control .drop-down li{padding:4px 10px}.nepali-date-picker .calender .calendar-controller .control .drop-down li.active{background:#2096f5;color:#fff}.nepali-date-picker .calender td.month-day.current{opacity:1}.nepali-date-picker .calender td.month-day.disabled{color:#d8d8d8}.nepali-date-picker .calender td.month-day.today{color:#4a4a4a;position:relative}.nepali-date-picker .calender td.month-day.today:before{background-color:#2096f5;border-radius:50%;bottom:6px;content:"";height:4px;left:50%;margin:auto;position:absolute;transform:translate(-50%);width:4px}.nepali-date-picker .calender td.month-day.selected{color:#fff;position:relative}.nepali-date-picker .calender td.month-day.selected:after{background:#2096f5;border-radius:50%;content:"";height:35px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:35px;z-index:-1}.nepali-date-picker .calender table{text-align:center;width:100%;border:none}.nepali-date-picker .calender table td{height:40px;width:40px;border:none}.nepali-date-picker .calender table tr{border:none;height:36px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--teal: #0d6e6e;--teal-light: #1a9090;--teal-dark: #084f4f;--mint: #e6f7f7;--mint-dark: #c8eeee;--coral: #e05a4e;--amber: #f5a623;--green: #2ecc71;--bg: #f4fafa;--bg2: #ffffff;--bg3: #e6f7f7;--text: #1a2e2e;--text2: #4a6b6b;--text3: #8aabab;--border: #cce8e8;--shadow: rgba(13,110,110,.12);--nav-h: 68px;--header-h: 60px;--font-body: "Sora", sans-serif;--font-display: "Lora", serif}[data-theme=dark]{--bg: #0e1f1f;--bg2: #152828;--text: #e8f5f5;--text2: #9dd0d0;--text3: #5a9090;--border: #2a4444;--shadow: rgba(0,0,0,.35);--mint: #1c3535;--mint-dark: #233f3f;--bg3: #1c3535}html,body{height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body)}#root{height:100%;display:flex;flex-direction:column;max-width:430px;margin:0 auto;background:var(--bg);min-height:100vh}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-body)}*{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--teal-light);border-radius:4px}.header{height:var(--header-h);background:var(--bg2);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 16px;gap:12px;position:sticky;top:0;z-index:200;box-shadow:0 2px 12px var(--shadow)}.header-logo-group{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.header-texts{min-width:0;flex:1}.header-title{font-family:var(--font-display);font-size:18px;color:var(--teal);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-subtitle{font-size:11px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.header-sub-title-page{font-family:var(--font-display);font-size:17px;color:var(--text);font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:36px;height:36px;flex-shrink:0;border-radius:10px;background:var(--mint);display:flex;align-items:center;justify-content:center;color:var(--teal);transition:all .2s}.icon-btn:hover{background:var(--teal);color:#fff}.back-btn{display:flex;align-items:center;gap:6px;color:var(--teal);font-size:14px;font-weight:500;background:none;padding:4px 0;flex-shrink:0}.bottom-nav{height:var(--nav-h);background:var(--bg2);border-top:1px solid var(--border);display:flex;align-items:center;position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;z-index:200;box-shadow:0 -4px 20px var(--shadow)}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;color:var(--text3);transition:all .2s;font-size:10px;font-weight:500;background:none}.nav-item.active{color:var(--teal)}.nav-dot{width:5px;height:5px;background:var(--teal);border-radius:50%;opacity:0;transition:opacity .2s}.nav-item.active .nav-dot{opacity:1}.content{flex:1;overflow-y:auto;padding-bottom:calc(var(--nav-h) + 16px)}.content.no-nav{padding-bottom:24px}.section{padding:16px}.px{padding:0 16px}.card{background:var(--bg2);border-radius:16px;padding:16px;border:1px solid var(--border);box-shadow:0 2px 12px var(--shadow);margin-bottom:12px}.btn-primary{background:var(--teal);color:#fff;border-radius:14px;padding:14px 24px;font-size:15px;font-weight:600;width:100%;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover{background:var(--teal-light);transform:translateY(-1px);box-shadow:0 4px 16px #0d6e6e4d}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;transform:none;cursor:not-allowed}.btn-secondary{background:var(--mint);color:var(--teal);border-radius:14px;padding:14px 24px;font-size:15px;font-weight:600;width:100%;transition:all .2s;border:1.5px solid var(--teal-light);display:flex;align-items:center;justify-content:center;gap:8px}.btn-outline{background:transparent;color:var(--teal);border:1.5px solid var(--teal);border-radius:12px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-danger{background:var(--coral);color:#fff;border-radius:14px;padding:14px;font-size:15px;font-weight:600;width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.btn-sm{padding:8px 16px!important;font-size:13px!important;border-radius:10px!important}.form-group{margin-bottom:16px}.form-label{font-size:12px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;display:block}.form-input{width:100%;padding:12px 14px;background:var(--bg3);border:1.5px solid var(--border);border-radius:12px;font-size:15px;color:var(--text);transition:all .2s}.form-input:focus{outline:none;border-color:var(--teal);background:var(--bg2);box-shadow:0 0 0 3px #0d6e6e1a}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%230d6e6e' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.radio-group{display:flex;gap:10px}.radio-btn{flex:1;padding:10px;border-radius:10px;border:1.5px solid var(--border);background:var(--bg3);color:var(--text2);font-size:14px;font-weight:500;transition:all .2s;text-align:center;cursor:pointer}.radio-btn.selected{border-color:var(--teal);background:var(--mint);color:var(--teal)}.nepali-date-picker{width:100%}.nepali-date-picker input{width:100%;padding:12px 14px;background:var(--bg3)!important;border:1.5px solid var(--border)!important;border-radius:12px!important;font-size:15px!important;color:var(--text)!important;transition:all .2s;font-family:var(--font-body)!important}.nepali-date-picker input:focus{outline:none!important;border-color:var(--teal)!important;background:var(--bg2)!important;box-shadow:0 0 0 3px #0d6e6e1a!important}.calendar-wrapper{z-index:1000!important}.ndp-calendar{border-radius:16px!important;border:1px solid var(--border)!important;box-shadow:0 8px 32px var(--shadow)!important;background:var(--bg2)!important;overflow:hidden!important}.ndp-header{background:var(--teal)!important;color:#fff!important}.ndp-header button{color:#fff!important}.ndp-day.ndp-today{background:var(--mint)!important;color:var(--teal)!important}.ndp-day.ndp-selected{background:var(--teal)!important;color:#fff!important;border-radius:8px!important}.ndp-day:hover:not(.ndp-disabled){background:var(--mint-dark)!important;border-radius:8px!important}@keyframes toastSlide{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600}.chip-teal{background:var(--mint);color:var(--teal)}.chip-green{background:#d4f7e7;color:#1a7a4c}.chip-coral{background:#fde8e6;color:#c0392b}.chip-amber{background:#fef3d5;color:#b5720a}.avatar{border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;flex-shrink:0}.toast{position:fixed;top:80px;left:50%;transform:translate(-50%);background:var(--teal-dark);color:#fff;padding:12px 20px;border-radius:12px;font-size:14px;font-weight:500;z-index:9999;white-space:nowrap;box-shadow:0 4px 20px #0000004d;animation:toastSlide .3s ease}.login-bg{min-height:100vh;background:linear-gradient(160deg,var(--teal-dark) 0%,var(--teal) 50%,var(--teal-light) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;position:relative;overflow:hidden}.login-blob{position:absolute;border-radius:50%;background:#ffffff0f;pointer-events:none}.login-card{background:var(--bg2);border-radius:24px;padding:32px 24px;width:100%;max-width:380px;box-shadow:0 20px 60px #0000004d}.stats-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.stat-card{background:var(--bg2);border-radius:16px;padding:16px;border:1px solid var(--border)}.stat-num{font-size:26px;font-weight:700;color:var(--teal);font-family:var(--font-display)}.stat-label{font-size:11px;color:var(--text3);margin-top:2px}.checkin-btn{border-radius:20px;padding:20px;display:flex;align-items:center;gap:16px;transition:all .3s;border:none;width:100%}.checkin-btn.in{background:linear-gradient(135deg,#e8fff4,#c8f5e0);border:1.5px solid #2ecc71}.checkin-btn.out{background:linear-gradient(135deg,#fff4e8,#f5e0c8);border:1.5px solid #f5a623}.checkin-icon{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.checkin-btn.in .checkin-icon{background:#2ecc7133}.checkin-btn.out .checkin-icon{background:#f5a62333}.bene-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg2);border:1px solid var(--border);border-radius:16px;margin-bottom:10px;cursor:pointer;transition:all .2s}.bene-card:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--shadow);border-color:var(--teal-light)}.bene-name{font-size:15px;font-weight:600;color:var(--text)}.bene-meta{font-size:12px;color:var(--text3);margin-top:2px;display:flex;align-items:center;gap:4px}.fab{position:fixed;bottom:calc(var(--nav-h) + 16px);right:max(16px,calc(50vw - 199px));width:56px;height:56px;border-radius:18px;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #0d6e6e66;z-index:99;transition:all .2s;border:none}.fab:hover{background:var(--teal-light);transform:scale(1.05)}.steps{display:flex;align-items:flex-start;gap:0;margin-bottom:24px}.step{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative}.step:after{content:"";position:absolute;top:13px;left:50%;width:100%;height:2px;background:var(--border);z-index:0}.step:last-child:after{display:none}.step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;z-index:1;transition:all .3s}.step-circle.done{background:var(--teal);color:#fff}.step-circle.active{background:var(--teal);color:#fff;box-shadow:0 0 0 4px #0d6e6e33}.step-circle.pending{background:var(--bg3);color:var(--text3);border:2px solid var(--border)}.step-label{font-size:9px;color:var(--text3);font-weight:500;text-transform:uppercase;letter-spacing:.3px;text-align:center}.step.active .step-label{color:var(--teal)}.sig-canvas{border:2px dashed var(--border);border-radius:12px;width:100%;touch-action:none;cursor:crosshair;background:var(--bg3);display:block}.detail-section-title{font-size:11px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;gap:16px}.detail-key{font-size:13px;color:var(--text3);flex-shrink:0}.detail-val{font-size:13px;color:var(--text);font-weight:500;text-align:right}.divider{height:1px;background:var(--border);margin:16px 0}.sched-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:14px 16px;margin-bottom:10px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .2s}.sched-card:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--shadow)}.sched-time{background:var(--mint);color:var(--teal);border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700;text-align:center;min-width:64px;font-family:var(--font-display)}.search-wrap{position:relative;margin-bottom:16px}.search-input{width:100%;padding:12px 14px 12px 42px;background:var(--bg2);border:1.5px solid var(--border);border-radius:12px;font-size:14px;color:var(--text)}.search-input:focus{outline:none;border-color:var(--teal)}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text3);pointer-events:none}.info-banner{background:var(--mint);border:1px solid var(--mint-dark);border-radius:12px;padding:12px 14px;display:flex;gap:10px;align-items:flex-start;margin-bottom:16px}.info-banner-text{font-size:13px;color:var(--text2);line-height:1.5}.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.toggle{width:46px;height:26px;border-radius:13px;position:relative;transition:background .2s;cursor:pointer;border:none;flex-shrink:0}.toggle.on{background:var(--teal)}.toggle.off{background:var(--border)}.toggle-knob{width:20px;height:20px;background:#fff;border-radius:50%;position:absolute;top:3px;transition:left .2s;box-shadow:0 1px 4px #0003}.toggle.on .toggle-knob{left:23px}.toggle.off .toggle-knob{left:3px}.empty{text-align:center;padding:48px 24px}.empty-icon{font-size:48px;margin-bottom:12px}.empty-text{color:var(--text3);font-size:14px}.location-captured{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--mint);border-radius:10px;border:1px solid var(--teal-light)}.location-captured span{font-size:13px;color:var(--teal);font-weight:500}.keypop-pill{padding:7px 14px;border-radius:20px;font-size:13px;font-weight:500;border:1.5px solid;cursor:pointer;transition:all .2s;background:none}.keypop-pill.selected{border-color:var(--teal);background:var(--teal);color:#fff}.keypop-pill.unselected{border-color:var(--border);background:var(--bg3);color:var(--text2)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.keypop-scroll::-webkit-scrollbar{display:none}
