@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap";@import"https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@latest/dist/tabler-icons.min.css";*{box-sizing:border-box;margin:0;padding:0}.idle-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f224099;display:flex;align-items:center;justify-content:center;z-index:9999}.idle-box{background:#fff;border-radius:14px;padding:32px 36px;text-align:center;max-width:360px;width:90%;box-shadow:0 20px 60px #0003}.idle-icon{font-size:36px;margin-bottom:12px}.idle-title{font-size:17px;font-weight:600;color:#0f172a;margin-bottom:8px;font-family:DM Sans,sans-serif}.idle-msg{font-size:13px;color:#64748b;line-height:1.6;margin-bottom:20px;font-family:DM Sans,sans-serif}.idle-btn{background:#2563eb;color:#fff;border:none;border-radius:8px;padding:10px 28px;font-size:14px;font-weight:500;cursor:pointer;font-family:DM Sans,sans-serif;transition:background .15s}.idle-btn:hover{background:#1d4ed8}:root{--bg: #f0f4f8;--bg-card: #ffffff;--bg-input: #ffffff;--bg-hover: #f8fafc;--bg-subtle: #f1f5f9;--border: #e2e8f0;--border-focus: #2563eb;--text: #1e293b;--text-muted: #64748b;--text-faint: #94a3b8;--text-heading: #0f172a;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 16px rgba(0,0,0,.08)}[data-theme=dark]{--bg: #0f1620;--bg-card: #1a2435;--bg-input: #1e2d42;--bg-hover: #243044;--bg-subtle: #1e2d42;--border: #2a3a52;--border-focus: #60a5fa;--text: #cbd5e1;--text-muted: #64748b;--text-faint: #475569;--text-heading: #f1f5f9;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.4)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:DM Sans,Segoe UI,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background .25s ease,color .25s ease}input,select,textarea,button{font-family:inherit}a{text-decoration:none}.card{background:var(--bg-card)!important;border-color:var(--border)!important;color:var(--text)}.card-title{color:var(--text-heading)!important}input,select,textarea{background:var(--bg-input)!important;border-color:var(--border)!important;color:var(--text)!important}input:focus,select:focus,textarea:focus{border-color:var(--border-focus)!important}input::placeholder{color:var(--text-faint)!important}input:disabled,select:disabled{background:var(--bg-subtle)!important;color:var(--text-muted)!important}.btn-secondary{background:var(--bg-subtle)!important;color:var(--text)!important;border-color:var(--border)!important}.btn-secondary:hover{background:var(--bg-hover)!important}table{color:var(--text)}th{color:var(--text-muted)!important;border-color:var(--border)!important}td{border-color:var(--border)!important;color:var(--text)}tr:hover td{background:var(--bg-hover)!important}.badge{transition:none}.page-title,.section-title{color:var(--text-heading)!important}.page-subtitle,.page-sub{color:var(--text-muted)!important}.modal{background:var(--bg-card)!important;border:1px solid var(--border);-webkit-user-select:text;user-select:text}.modal-overlay{-webkit-user-select:none;user-select:none}.modal-title{color:var(--text-heading)!important}.notice{background:#422006!important;border-color:#7c2d12!important;color:#fed7aa!important}[data-theme=dark] .notice{background:#fbbf241a!important;border-color:#fbbf2440!important;color:#fbbf24!important}[data-theme=dark] .stat-card{background:var(--bg-card)!important;border-color:var(--border)!important}[data-theme=dark] .stat-value{color:var(--text-heading)!important}.form-label{color:var(--text-muted)!important}[data-theme=dark] .form-label{color:#94a3b8!important}[data-theme=dark] table{background:transparent}[data-theme=dark] .tab-bar{background:var(--bg-subtle)!important;border-color:var(--border)!important}[data-theme=dark] .tab{color:var(--text-muted)!important}[data-theme=dark] .tab.active{background:var(--bg-card)!important;color:var(--text-heading)!important}[data-theme=dark] .wday{background:var(--bg-subtle)!important;border-color:var(--border)!important}[data-theme=dark] .wday:hover{background:var(--bg-hover)!important}[data-theme=dark] .wday-num{color:var(--text-heading)!important}[data-theme=dark] .wday-hours{color:var(--text-muted)!important}[data-theme=dark] .wday--weekend{background:var(--bg)!important}[data-theme=dark] .cal-cell{background:var(--bg-subtle)!important}[data-theme=dark] .cal-cell--empty{background:transparent!important}[data-theme=dark] .cal-cell--weekend{background:var(--bg)!important}[data-theme=dark] .cal-wd{color:var(--text-faint)!important}[data-theme=dark] .cal-day-num{color:var(--text-heading)!important}[data-theme=dark] .cal-summary{border-color:var(--border)!important}[data-theme=dark] .cs-item,[data-theme=dark] .fav-section{background:var(--bg-subtle)!important}[data-theme=dark] .fav-chip{background:var(--bg-card)!important;border-color:var(--border)!important}[data-theme=dark] .fav-name{color:var(--text-heading)!important}[data-theme=dark] .fav-times{color:var(--text-muted)!important}[data-theme=dark] .pending-item{border-color:var(--border)!important}[data-theme=dark] .pi-name{color:var(--text-heading)!important}.error-msg{background:#ef444426!important;border:1px solid rgba(239,68,68,.3);color:#f87171!important}[data-theme=dark] ::-webkit-scrollbar{width:6px;height:6px}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--bg)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@media (max-width: 768px){input,select,textarea{font-size:16px!important;padding:12px 14px!important;border:1.5px solid var(--border)!important;border-radius:9px!important;min-height:48px}input[type=date],input[type=time]{min-height:48px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.page-title{font-size:22px!important}.page-subtitle{font-size:15px!important}.section-title{font-size:18px!important}.card-title{font-size:15px!important}.form-label,.field-label,.bal-label{font-size:13px!important}.badge{font-size:12px!important;padding:3px 8px!important}.btn{font-size:15px!important;padding:13px 16px!important;min-height:48px}.card{overflow-x:auto}table{min-width:480px}.grid-2,.stats-grid,.balance-grid{grid-template-columns:1fr!important}.page-header{flex-direction:column;align-items:flex-start!important;gap:12px}.page-header .btn{width:100%;justify-content:center}.modal-overlay{align-items:flex-end!important;padding:0!important}.modal{border-radius:20px 20px 0 0!important;max-width:100%!important;max-height:90vh;overflow-y:auto;padding:20px 16px 32px!important}.tab-bar{width:100%!important;overflow-x:auto;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch}.tab{white-space:nowrap}.btn{font-size:14px!important;padding:12px 16px!important}.btn-primary{width:100%;justify-content:center}}.desktop-only{display:block}.mobile-only{display:none}@media (max-width: 768px){.desktop-only{display:none!important}.mobile-only{display:block!important}}@media (max-width: 768px){.m-page{padding:16px;display:flex;flex-direction:column;gap:14px}.m-title{font-size:24px;font-weight:600;color:var(--text-heading)}.m-sub{font-size:15px;color:var(--text-muted);margin-top:3px}.m-btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;background:#2563eb;color:#fff;border:none;border-radius:12px;padding:17px;font-size:17px;font-weight:500;cursor:pointer;font-family:inherit;width:100%}.m-btn-secondary{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--bg-subtle);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:15px;font-size:16px;font-weight:500;cursor:pointer;font-family:inherit;width:100%}.m-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:18px 20px}.m-card-title{font-size:17px;font-weight:600;color:var(--text-heading);margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}.m-card-link{font-size:14px;color:#2563eb;font-weight:500;text-decoration:none}.m-label{font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.m-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:20px;font-size:13px;font-weight:600}.m-badge-s{background:#dcfce7;color:#15803d}.m-badge-w{background:#fef9c3;color:#a16207}.m-badge-d{background:#fee2e2;color:#dc2626}.m-badge-g{background:var(--bg-subtle);color:var(--text-muted)}.m-badge-b{background:#dbeafe;color:#1d4ed8}.m-av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}.m-tabs-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.m-tabs{display:flex;gap:6px;background:var(--bg-subtle);padding:4px;border-radius:12px;width:max-content;min-width:100%}.m-tab{padding:11px 18px;border-radius:9px;font-size:15px;color:var(--text-muted);white-space:nowrap;cursor:pointer;border:none;background:none;font-family:inherit}.m-tab.active{background:var(--bg-card);color:var(--text-heading);font-weight:500;border:.5px solid var(--border)}.m-entry{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px}.m-entry-top{display:flex;align-items:center;justify-content:space-between}.m-entry-type{font-size:17px;font-weight:500;color:var(--text-heading)}.m-entry-meta{font-size:14px;color:var(--text-muted)}.m-entry-dates{font-size:15px;color:var(--text)}.m-stat{background:var(--bg-subtle);border-radius:12px;padding:18px}.m-stat-label{font-size:13px;color:var(--text-muted);margin-bottom:8px}.m-stat-value{font-size:32px;font-weight:600;color:var(--text-heading);line-height:1}.m-stat-sub{font-size:14px;color:var(--text-muted);margin-top:6px}.m-icon-box{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.m-row{display:flex;align-items:center;gap:12px}.m-divider{height:1px;background:var(--border);margin:4px 0}select.m-select{font-size:16px;color:var(--text);background:var(--bg-subtle);border:1px solid var(--border);border-radius:10px;padding:10px 14px;width:100%;font-family:inherit}input.m-input{font-size:16px;color:var(--text);background:var(--bg-card);border:1.5px solid var(--border);border-radius:10px;padding:13px 14px;width:100%;font-family:inherit}input.m-input:focus{outline:none;border-color:#2563eb}}
