@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-card{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;width:100%;max-width:400px;text-align:center}.login-card h2{margin-top:0;color:var(--primary-color)}.wallet-button-container{margin:2rem 0}.employee-detected{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--radius);padding:1rem;margin:1rem 0}.employee-detected h4{margin:.5rem 0;color:var(--primary-color)}.employee-position{margin:0;font-size:.875rem;color:var(--text-light)}.role-selection{margin:1.5rem 0}.role-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.role-button{flex:1;padding:.75rem;border:1px solid var(--border-color);background-color:var(--card-bg);border-radius:var(--radius);font-weight:500;transition:all .2s ease}.role-button:hover:not(:disabled){border-color:var(--primary-color)}.role-button.selected{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.role-button:disabled{opacity:.5;cursor:not-allowed}.role-warning{color:var(--danger-color);font-size:.875rem;margin-top:.5rem}.login-button{width:100%;padding:.75rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--radius);font-size:1rem;font-weight:500;margin-top:1rem}.login-button:hover:not(:disabled){background-color:var(--primary-hover)}.login-button:disabled{background-color:var(--border-color);cursor:not-allowed}.error-message{color:var(--danger-color);margin-top:1rem}.employees-container{padding:1rem}.employees-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.add-employee-button{background-color:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius);font-weight:500}.add-employee-button:hover{background-color:var(--primary-hover)}.no-employees{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;text-align:center;color:var(--text-light)}.employees-list{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.employees-table{width:100%;overflow-x:auto}.table-header{display:flex;background-color:#f3f4f6;font-weight:600}.table-body{max-height:500px;overflow-y:auto}.table-row:last-child{border-bottom:none}.active{background-color:#dcfce7;color:#166534}.inactive{background-color:#fee2e2;color:#991b1b}.actions{display:flex;justify-content:center}.status-toggle-button{background-color:transparent;border:1px solid var(--border-color);padding:.25rem .5rem;border-radius:var(--radius);font-size:.75rem}.status-toggle-button:hover{background-color:var(--border-color)}.employee-form,.payroll-container{padding:1rem}.payroll-header{margin-bottom:1.5rem}.error-banner,.success-banner{margin-bottom:1.5rem;padding:1rem;border-radius:var(--radius);display:flex;flex-direction:column;gap:.5rem}.error-banner{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.success-banner{background-color:#dcfce7;border:1px solid #bbf7d0;color:#166534}.error-banner button,.success-banner button{background:none;border:none;font-weight:600;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius);align-self:flex-end}.error-banner button:hover{background-color:#fecaca}.success-banner button:hover{background-color:#bbf7d0}.transaction-signatures{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--radius);padding:.75rem;margin-top:.5rem}.transaction-signatures p{margin:0 0 .5rem;font-weight:500}.transaction-signatures ul{margin:0;padding-left:1.5rem}.transaction-signatures a{color:#0369a1;text-decoration:none;font-family:monospace}.transaction-signatures a:hover{text-decoration:underline}.payroll-content{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 992px){.payroll-content{grid-template-columns:2fr 1fr}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{margin:0}.select-all{display:flex;align-items:center}.select-all label{display:flex;align-items:center;cursor:pointer}.select-all input{margin-right:.5rem}.no-sessions,.no-batches{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;text-align:center;color:var(--text-light)}.sessions-table{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.payroll-summary{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem;margin-top:1.5rem;display:flex;justify-content:space-between;align-items:center}.summary-details{display:flex;gap:2rem}.summary-item{display:flex;flex-direction:column}.summary-item span:first-child{font-size:.875rem;color:var(--text-light)}.summary-item span:last-child{font-size:1.25rem;font-weight:600}.process-button{background-color:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);font-weight:500}.process-button:hover{background-color:var(--primary-hover)}.process-button:disabled{background-color:var(--border-color);cursor:not-allowed}.batches-list{display:flex;flex-direction:column;gap:1rem}.batch-card{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.batch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.batch-header h4{margin:0;font-family:monospace}.batch-details{display:flex;flex-direction:column;gap:.5rem}.batch-detail{display:flex;justify-content:space-between}.batch-detail span:first-child{color:var(--text-light)}.account-address a{color:#0369a1;text-decoration:none;font-family:monospace}.account-address a:hover{text-decoration:underline}.confirmation-modal{max-width:500px}.modal-content{padding:1.5rem}.security-notice{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--radius);padding:1rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.security-icon{font-size:2rem;margin:0}.security-notice p{margin:0;color:#0369a1;font-weight:500}.transaction-details{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:var(--radius);padding:1rem;margin-top:1.5rem}.transaction-details h4{margin-top:0;margin-bottom:.75rem;font-size:.875rem;color:var(--text-light)}.transaction-detail{display:flex;justify-content:space-between;margin-bottom:.5rem}.transaction-detail:last-child{margin-bottom:0}.wallet-address{font-family:monospace;font-size:.875rem}.confirmation-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.spinner{display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.status-badge.pending{background-color:#fef3c7;color:#92400e}.employer-dashboard{padding:1rem}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem;display:flex;align-items:center}.stat-icon{font-size:2rem;margin-right:1rem}.stat-info h3{margin:0;font-size:.875rem;color:var(--text-light)}.stat-value{font-size:1.5rem;font-weight:700;margin:.25rem 0 0}.dashboard-actions{display:flex;gap:1rem;margin-bottom:2rem}.action-button{flex:1;padding:1rem;text-align:center;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius);text-decoration:none;color:var(--text-color);font-weight:500;transition:all .2s ease}.action-button:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.action-button.primary{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.action-button.primary:hover{background-color:var(--primary-hover)}.recent-activity{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.recent-activity h3{margin-top:0;margin-bottom:1rem}.recent-sessions{display:flex;flex-direction:column;gap:1rem}.session-card{display:flex;align-items:center;padding:1rem;border:1px solid var(--border-color);border-radius:var(--radius)}.session-employee{font-weight:500;flex:1}.session-details{flex:2}.session-time{display:flex;gap:1rem;font-size:.875rem;color:var(--text-light)}.session-duration{font-size:.875rem;margin-top:.25rem}.session-status{flex:0 0 80px;text-align:center}.work-sessions{padding:1rem}.work-sessions h2{margin-bottom:1.5rem}.no-sessions{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;text-align:center;color:var(--text-light)}.sessions-list{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.sessions-header{display:flex;background-color:#f3f4f6;font-weight:600}.session-date,.session-time,.session-duration,.session-status{padding:.75rem 1rem}.session-date,.session-time,.session-duration{flex:1}.session-status{flex:0 0 100px;text-align:center}.session-item{display:flex;border-bottom:1px solid var(--border-color)}.session-item:last-child{border-bottom:none}.paid{background-color:#dcfce7;color:#166534}.unpaid{background-color:#fee2e2;color:#991b1b}.payments{padding:1rem}.payments h2{margin-bottom:1.5rem}.no-payments{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;text-align:center;color:var(--text-light)}.payments-summary{margin-bottom:1.5rem}.payments-list{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.payments-header{display:flex;background-color:#f3f4f6;font-weight:600}.payment-date,.payment-amount,.payment-hours,.payment-batch,.payment-status{padding:.75rem 1rem}.payment-date,.payment-amount,.payment-hours,.payment-batch{flex:1}.payment-status{flex:0 0 100px;text-align:center}.payment-item{display:flex;border-bottom:1px solid var(--border-color)}.payment-item:last-child{border-bottom:none}.completed{background-color:#dcfce7;color:#166534}.pending{background-color:#fef3c7;color:#92400e}.employee-dashboard{padding:1rem}.dashboard-header{margin-bottom:2rem}.employee-info{margin-top:.5rem}.employee-info h3{margin:0;font-size:1.25rem}.employee-info p{margin:.25rem 0 0;color:var(--text-light)}.dashboard-content{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.dashboard-content{grid-template-columns:1fr 1fr}}.check-in-out-card{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.time-display{margin:1.5rem 0;text-align:center}.current-time{font-size:2rem;font-weight:700}.current-date{font-size:1rem;color:var(--text-light);margin-top:.25rem}.checked-in-status,.checked-out-status{display:flex;flex-direction:column;align-items:center;margin-top:1.5rem}.status-indicator{width:1rem;height:1rem;border-radius:50%;background-color:var(--border-color);margin-bottom:.5rem}.status-indicator.active{background-color:var(--secondary-color);box-shadow:0 0 0 4px #10b98133}.check-in-time{margin:.5rem 0 1rem;font-size:.875rem;color:var(--text-light)}.check-button{padding:.75rem 2rem;border:none;border-radius:var(--radius);font-weight:500;font-size:1rem}.check-in{background-color:var(--secondary-color);color:#fff}.check-in:hover{background-color:var(--secondary-hover)}.check-out{background-color:var(--danger-color);color:#fff}.check-out:hover{background-color:var(--danger-hover)}.dashboard-summary{display:flex;flex-direction:column;gap:1.5rem}.summary-card{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-top:1rem}.stat{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-label{font-size:.875rem;color:var(--text-light);margin-bottom:.25rem}.stat-value{font-size:1.5rem;font-weight:700}.quick-links{display:flex;flex-direction:column;gap:.75rem}.quick-link{display:block;padding:1rem;background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);text-decoration:none;color:var(--text-color);font-weight:500;transition:all .2s ease}.quick-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);color:var(--primary-color)}.navbar{background-color:var(--card-bg);box-shadow:var(--shadow);padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center}.navbar-brand h1{margin:0;font-size:1.5rem;color:var(--primary-color)}.navbar-brand a{text-decoration:none;color:inherit}.navbar-menu{display:flex;align-items:center;gap:2rem}.navbar-links{display:flex;gap:1.5rem}.nav-link{text-decoration:none;color:var(--text-color);font-weight:500;padding:.5rem 0;position:relative}.nav-link:hover{color:var(--primary-color)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--primary-color);transition:width .2s ease}.nav-link:hover:after{width:100%}.user-info{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#f3f4f6;border-radius:var(--radius)}.user-name{font-weight:500}.wallet-address{font-family:monospace;font-size:.875rem;color:var(--text-light)}.logout-button{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color);padding:.5rem 1rem;border-radius:var(--radius);font-weight:500}.logout-button:hover{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}@media (max-width: 992px){.navbar{flex-direction:column;padding:1rem}.navbar-menu{margin-top:1rem;width:100%;flex-direction:column;gap:1rem}.navbar-links{width:100%;justify-content:center;flex-wrap:wrap}.user-info{margin:.5rem 0}}:root{--primary-color: #4f46e5;--primary-hover: #4338ca;--secondary-color: #10b981;--secondary-hover: #059669;--danger-color: #ef4444;--danger-hover: #dc2626;--text-color: #1f2937;--text-light: #6b7280;--bg-color: #f9fafb;--card-bg: #ffffff;--border-color: #e5e7eb;--shadow: 0 1px 3px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--radius: .375rem}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-color)}.app{display:flex;flex-direction:column;min-height:100vh}.content{flex:1;padding:1rem;max-width:1200px;margin:0 auto;width:100%}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.25rem;color:var(--text-light)}button{cursor:pointer;font-weight:500;border-radius:var(--radius);padding:.5rem 1rem;transition:all .2s ease}button:disabled{opacity:.7;cursor:not-allowed}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.active,.completed,.paid{background-color:#dcfce7;color:#166534}.inactive,.unpaid{background-color:#fee2e2;color:#991b1b}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background-color:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-light)}.close-button:hover{color:var(--text-color)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius);font-size:1rem}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.cancel-button{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color)}.cancel-button:hover{background-color:var(--border-color)}.submit-button,.confirm-button{background-color:var(--primary-color);border:none;color:#fff}.submit-button:hover,.confirm-button:hover{background-color:var(--primary-hover)}.table-header{display:flex;background-color:#f3f4f6;font-weight:600;border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.header-cell{padding:.75rem 1rem;flex:1}.table-row{display:flex;border-bottom:1px solid var(--border-color)}.cell{padding:.75rem 1rem;flex:1}.checkbox-cell{flex:0 0 40px;display:flex;align-items:center;justify-content:center}.wallet-address{font-family:monospace}.wallet-adapter-button{background-color:transparent;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;font-family:DM Sans,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;font-weight:600;height:48px;line-height:48px;padding:0 24px;border-radius:4px}.wallet-adapter-button-trigger{background-color:#512da8}.wallet-adapter-button:not([disabled]):focus-visible{outline-color:#fff}.wallet-adapter-button:not([disabled]):hover{background-color:#1a1f2e}.wallet-adapter-button[disabled]{background:#404144;color:#999;cursor:not-allowed}.wallet-adapter-button-end-icon,.wallet-adapter-button-start-icon,.wallet-adapter-button-end-icon img,.wallet-adapter-button-start-icon img{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.wallet-adapter-button-end-icon{margin-left:12px}.wallet-adapter-button-start-icon{margin-right:12px}.wallet-adapter-collapse{width:100%}.wallet-adapter-dropdown{position:relative;display:inline-block}.wallet-adapter-dropdown-list{position:absolute;z-index:99;display:grid;grid-template-rows:1fr;grid-row-gap:10px;padding:10px;top:100%;right:0;margin:0;list-style:none;background:#2c2d30;border-radius:10px;box-shadow:0 8px 20px #0009;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s;font-family:DM Sans,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif}.wallet-adapter-dropdown-list-active{opacity:1;visibility:visible;transform:translateY(10px)}.wallet-adapter-dropdown-list-item{display:flex;flex-direction:row;justify-content:center;align-items:center;border:none;outline:none;cursor:pointer;white-space:nowrap;box-sizing:border-box;padding:0 20px;width:100%;border-radius:6px;font-size:14px;font-weight:600;height:37px;color:#fff}.wallet-adapter-dropdown-list-item:not([disabled]):hover{background-color:#1a1f2e}.wallet-adapter-modal-collapse-button svg{align-self:center;fill:#999}.wallet-adapter-modal-collapse-button.wallet-adapter-modal-collapse-button-active svg{transform:rotate(180deg);transition:transform ease-in .15s}.wallet-adapter-modal{position:fixed;inset:0;opacity:0;transition:opacity linear .15s;background:#00000080;z-index:1040;overflow-y:auto}.wallet-adapter-modal.wallet-adapter-modal-fade-in{opacity:1}.wallet-adapter-modal-button-close{display:flex;align-items:center;justify-content:center;position:absolute;top:18px;right:18px;padding:12px;cursor:pointer;background:#1a1f2e;border:none;border-radius:50%}.wallet-adapter-modal-button-close:focus-visible{outline-color:#fff}.wallet-adapter-modal-button-close svg{fill:#777;transition:fill .2s ease 0s}.wallet-adapter-modal-button-close:hover svg{fill:#fff}.wallet-adapter-modal-overlay{background:#00000080;position:fixed;inset:0}.wallet-adapter-modal-container{display:flex;margin:3rem;min-height:calc(100vh - 6rem);align-items:center;justify-content:center}@media (max-width: 480px){.wallet-adapter-modal-container{margin:1rem;min-height:calc(100vh - 2rem)}}.wallet-adapter-modal-wrapper{box-sizing:border-box;position:relative;display:flex;align-items:center;flex-direction:column;z-index:1050;max-width:400px;border-radius:10px;background:#10141f;box-shadow:0 8px 20px #0009;font-family:DM Sans,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;flex:1}.wallet-adapter-modal-wrapper .wallet-adapter-button{width:100%}.wallet-adapter-modal-title{font-weight:500;font-size:24px;line-height:36px;margin:0;padding:64px 48px 48px;text-align:center;color:#fff}@media (max-width: 374px){.wallet-adapter-modal-title{font-size:18px}}.wallet-adapter-modal-list{margin:0 0 12px;padding:0;width:100%;list-style:none}.wallet-adapter-modal-list .wallet-adapter-button{font-weight:400;border-radius:0;font-size:18px}.wallet-adapter-modal-list .wallet-adapter-button-end-icon,.wallet-adapter-modal-list .wallet-adapter-button-start-icon,.wallet-adapter-modal-list .wallet-adapter-button-end-icon img,.wallet-adapter-modal-list .wallet-adapter-button-start-icon img{width:28px;height:28px}.wallet-adapter-modal-list .wallet-adapter-button span{margin-left:auto;font-size:14px;opacity:.6}.wallet-adapter-modal-list-more{cursor:pointer;border:none;padding:12px 24px 24px 12px;align-self:flex-end;display:flex;align-items:center;background-color:transparent;color:#fff}.wallet-adapter-modal-list-more svg{transition:all .1s ease;fill:#fff;margin-left:.5rem}.wallet-adapter-modal-list-more-icon-rotate{transform:rotate(180deg)}.wallet-adapter-modal-middle{width:100%;display:flex;flex-direction:column;align-items:center;padding:0 24px 24px;box-sizing:border-box}.wallet-adapter-modal-middle-button{display:block;cursor:pointer;margin-top:48px;width:100%;background-color:#512da8;padding:12px;font-size:18px;border:none;border-radius:8px;color:#fff}
