*{box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:0;padding:0}.app-container,body{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh}.header-section{background:#222527;border-bottom:1px solid rgba(0,0,0,.1);margin-bottom:0}.header-section,.support-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.support-section{background:#fff9;border-bottom:1px solid rgba(0,0,0,.05);padding:1rem 0}.support-content{flex-wrap:wrap;gap:1rem;justify-content:space-between}.support-content,.support-item,.support-left,.support-right{align-items:center;display:flex}.support-item{gap:1rem}.support-text{color:#4a5568;font-size:.9rem;font-weight:500;white-space:nowrap}.donate-form-inline{display:inline-block;margin:0}.donate-btn-new{align-items:center;background:linear-gradient(135deg,#00d4ff,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.donate-btn-new:hover{background:linear-gradient(135deg,#0ea5e9,#7c3aed);box-shadow:0 4px 12px #00d4ff4d;transform:translateY(-1px)}.contact-info{align-items:center;background:#4a55681a;border:1px solid rgba(74,85,104,.2);border-radius:8px;color:#4a5568;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.coffee-icon,.contact-icon{flex-shrink:0;height:16px;width:16px}.beta-notice-section{background:#f4f7fa;border-bottom:1px solid rgba(255,193,7,.2);border-top:1px solid rgba(255,193,7,.2);padding:1rem 0}.beta-notice{align-items:flex-start;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;color:#856404;display:flex;gap:1rem;padding:1rem;position:relative}.beta-icon{color:#f59e0b;flex-shrink:0;height:24px;width:24px}.beta-content{display:flex;flex-direction:column;gap:.5rem}.beta-label{color:#f59e0b;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.beta-text{color:#92400e;font-size:.85rem;line-height:1.5}.beta-dismiss-btn{align-items:center;background:none;border:none;border-radius:4px;color:#f59e0b;cursor:pointer;display:flex;height:24px;justify-content:center;padding:.25rem;position:absolute;right:.75rem;top:.75rem;transition:all .2s ease;width:24px}.beta-dismiss-btn:hover{background:#f59e0b1a;color:#d97706}.beta-dismiss-btn svg{height:16px;width:16px}.features-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff6;border-bottom:1px solid rgba(0,0,0,.05);padding:1.5rem 0}.features-checklist{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.feature-item{align-items:center;color:#059669;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;white-space:nowrap}.feature-icon{color:#10b981;flex-shrink:0;height:18px;width:18px}.feature-text{color:#374151}@media (max-width:768px){.support-content{flex-direction:column;gap:1.5rem;text-align:center}.support-item{flex-direction:column;gap:.75rem}.support-text{text-align:center;white-space:normal}.beta-notice{flex-direction:column;gap:.75rem;text-align:center}.beta-icon{align-self:center}.features-checklist{flex-direction:column;gap:1rem;text-align:center}.feature-item{justify-content:center}}.app-title{background:linear-gradient(135deg,#00d4ff,#00b4d8 50%,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:2.5rem;font-weight:700;margin:0;text-shadow:none}.brand-header{gap:1rem}.brand-header,.brand-logo{align-items:center;display:flex}.brand-logo{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;justify-content:center;width:150px}.app-subtitle{color:#4a5568;font-size:1.1rem;font-weight:400;margin:.5rem 0 0}.main-content{padding-bottom:3rem}.column-1,.column-2,.column-3{height:100%}.full-height{height:calc(100vh - 200px);min-height:600px}.full-height-table{height:calc(100vh - 280px);min-height:500px}.control-card,.info-card,.stat-card,.table-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid hsla(0,0%,100%,.2);border-radius:16px;box-shadow:0 8px 32px #0000001a;height:100%;margin-bottom:1.5rem;transition:all .3s ease}.control-card:hover,.info-card:hover,.table-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}.main-content{padding:2rem 0}.services-header{display:flex;flex-direction:column;gap:.25rem}.service-counter{color:#718096;font-size:.75rem;font-weight:500}.service-type-icon{margin-right:.5rem}.required{color:#e53e3e;font-weight:700}.service-input.valid{background:#38a1691a;border-color:#38a169}.service-input.invalid{background:#e53e3e1a;border-color:#e53e3e}.loading-spinner{animation:spin 1s ease-in-out infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.service-enter-active,.service-leave-active{transition:all .3s ease}.service-enter-from{opacity:0;transform:translateY(-20px)}.service-leave-to{opacity:0;transform:translate(20px)}.service-move{transition:transform .3s ease}.card-header{background:#454545;border-bottom:none;border-radius:16px 16px 0 0!important;color:#fff;padding:1rem 1.5rem}.card-title{font-size:1.1rem;font-weight:600;margin:0}.card-body{padding:1.5rem}.contact-info h6{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.container{max-width:1800px}.contact-info p{color:#4a5568;line-height:1.5;margin:0}.payment-card{background:linear-gradient(135deg,#fffffff2,#ffffffe6)}.payment-item{color:#4a5568;line-height:1.5;margin-bottom:.75rem}.payment-item strong{color:#2d3748}.payment-method-display{background:#f8f9fa;border-left:4px solid #718096;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.payment-method-header{align-items:center;color:#2d3748;display:flex;font-weight:600;gap:.5rem;margin-bottom:.75rem}.method-icon{font-size:1.1rem}.payment-method-details{color:#4a5568;line-height:1.6}.payment-method-details a{color:#3182ce;text-decoration:none}.payment-method-details a:hover{text-decoration:underline}.payment-methods-editor{border-top:1px solid #e2e8f0;padding-top:1rem}.payment-method-editor{background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2rem;padding:1rem}.method-toggle .form-check-label{align-items:center;color:#2d3748;display:flex;font-weight:500;gap:.5rem}.method-fields{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:1rem}.control-card{display:flex;flex-direction:column;justify-content:center;padding:1.5rem}.control-label{color:#4a5568;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.modern-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.modern-input:focus{border-color:#718096;box-shadow:0 0 0 3px #7180961a;outline:none}.stat-card{display:flex;flex-direction:column;justify-content:center;padding:1.5rem;text-align:center}.stat-card.highlight{background:linear-gradient(135deg,#81c784,#66bb6a);color:#fff}.stat-card.rate-card{background:linear-gradient(135deg,#90caf9,#64b5f6);color:#fff}.rate-info{align-items:center;display:flex;flex-direction:column}.primary-rate{font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.secondary-rate{font-size:.9rem;font-weight:400;opacity:.9}.rate-type-selector{display:flex;gap:1rem;margin-bottom:.5rem}.rate-type-selector .form-check-input:checked{background-color:#718096;border-color:#718096}.stat-value{font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.9rem;font-weight:500;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.stat-secondary{font-size:.8rem;font-weight:500;margin-top:.25rem;opacity:.7}.table-container{border-radius:0 0 16px 16px;max-height:800px;overflow-y:auto}.modern-table{border-collapse:collapse;margin:0;width:100%}.modern-table th{background:#f7fafc;border-bottom:2px solid #e2e8f0;color:#2d3748;font-weight:600;padding:1rem;position:sticky;text-align:left;top:0;z-index:10}.modern-table td{border-bottom:1px solid #e2e8f0;padding:.75rem 1rem;vertical-align:middle}.modern-table tr:hover{background:#f7fafc}.date-cell{color:#2d3748;font-weight:500}.saturday-badge{background:#ddb895;color:#4b2400}.saturday-badge,.sunday-badge{border-radius:12px;font-size:.75rem;font-weight:500;margin-left:.5rem;padding:.25rem .5rem}.sunday-badge{background:#ede3cc;color:#634427}.sunday-row{background-color:#fdf9f0!important}.saturday-row{background-color:#feead7!important}.timesheet-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.default-hours-control{align-items:center;display:flex;gap:.5rem}.control-label-small{color:#fff;font-size:.85rem;font-weight:500;margin:0;white-space:nowrap}.hours-control-input{background:#ffffffe6;border:1px solid hsla(0,0%,100%,.3);border-radius:4px;color:#2d3748;font-size:.85rem;font-weight:500;padding:.25rem .5rem;text-align:center;width:60px}.hours-control-input:focus{border-color:#fffc;box-shadow:0 0 0 2px #fff3;outline:none}.weekend-toggles{display:flex;gap:1rem}.weekend-toggles .form-check{margin:0}.weekend-toggles .form-check-label{color:#fff;font-size:.85rem;font-weight:500;margin-left:.25rem}.weekend-toggles .form-check-input{background-color:#fff3;border-color:#ffffff80;margin-top:.125rem}.weekend-toggles .form-check-input:checked{background-color:#28a745;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3E%3C/svg%3E");border-color:#28a745}.weekend-toggles .form-check-input:focus{border-color:#fffc;box-shadow:0 0 0 .2rem #ffffff40}.hours-input{border:1px solid #e2e8f0;border-radius:6px;font-weight:500;padding:.5rem;text-align:center;transition:all .3s ease;width:80px}.hours-input:focus{border-color:#718096;box-shadow:0 0 0 2px #7180961a;outline:none}.edit-toggle-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#78c37b;border:1px solid rgba(0,0,0,.1);border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.edit-toggle-btn:hover{background:#2d6b30;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.header-buttons{align-items:center;display:flex;gap:.5rem}.settings-buttons{display:flex;gap:.25rem}.settings-btn{align-items:center;background:#fffc;border:1px solid hsla(0,0%,100%,.3);border-radius:8px;color:#4a5568;cursor:pointer;display:flex;height:36px;justify-content:center;padding:.5rem;transition:all .2s ease;width:36px}.settings-btn:hover{background:#fff;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.settings-btn .btn-icon{height:16px;width:16px}.export-btn:hover{border-color:#059669;color:#059669}.import-btn:hover{border-color:#3b82f6;color:#3b82f6}.edit-form .form-label{color:#4a5568;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.edit-form .form-control{border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;padding:.5rem .75rem;transition:all .3s ease}.edit-form .form-control:focus{border-color:#718096;box-shadow:0 0 0 2px #7180961a;outline:none}.generate-btn{align-items:center;background:linear-gradient(135deg,#81c784,#66bb6a);border:none;border-radius:12px;box-shadow:0 4px 16px #00d4ff4d;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.generate-btn:hover:not(:disabled){box-shadow:0 8px 24px #00d4ff66;transform:translateY(-2px)}.generate-btn:active:not(:disabled){transform:translateY(0)}.generate-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.7;transform:none}.btn-icon{height:20px;width:20px}@media (max-width:768px){.app-title{font-size:2rem}.brand-header{gap:.75rem}.stat-value{font-size:1.5rem}.card-body{padding:1rem}.table-container{max-height:300px}}.table-container::-webkit-scrollbar{width:6px}.table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.table-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.table-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.app-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-top:1px solid hsla(0,0%,100%,.2);margin-top:2rem;padding:1rem 0}.footer-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.footer-text{color:#6b7280;font-size:.9rem}.brand-link{background:linear-gradient(135deg,#00d4ff,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600;text-decoration:none;transition:opacity .2s ease}.brand-link:hover{opacity:.8}@media (max-width:768px){.footer-content{flex-direction:column;text-align:center}}.toast-notification{animation:slideInRight .3s ease-out;position:fixed;right:20px;top:20px;z-index:1000}.toast-content{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#10b981,#059669);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;box-shadow:0 8px 32px #10b9814d;color:#fff;display:flex;font-weight:500;gap:.75rem;padding:1rem 1.5rem}.toast-icon{flex-shrink:0;height:20px;width:20px}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.services-list{border:1px solid hsla(0,0%,100%,.2);border-radius:8px;overflow:hidden}.service-item{border-bottom:1px solid hsla(0,0%,100%,.1)}.service-item:last-child{border-bottom:none}.service-row{align-items:start;background:#ffffff08;display:grid;gap:1rem;grid-template-columns:minmax(150px,2fr) minmax(100px,1fr) minmax(80px,1fr) minmax(100px,1fr) minmax(90px,1fr) 40px;min-width:0;overflow-x:auto;padding:1.25rem 1rem;transition:all .2s ease}.service-row:hover{background:#ffffff0f}.service-field{display:flex;flex-direction:column;gap:.5rem;min-width:0;overflow:hidden}.service-label{color:#5a6c7d;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.4rem;opacity:.9;text-transform:uppercase}.service-input,.service-select{background:#ffffff1a;border:1px solid #dfdfdf;border-radius:6px;box-sizing:border-box;color:#2d3748;font-size:.9rem;min-width:0;overflow:hidden;padding:.6rem;text-overflow:ellipsis;transition:border-color .2s ease,background-color .2s ease;width:100%}.service-input:focus,.service-select:focus{background:#ffffff26;border-color:#fff6;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.service-input:hover,.service-select:hover{border-color:#ffffff4d}.service-input:focus,.service-select:focus{background:#fff3;border-color:#718096;outline:none}.service-total-amount{background:#0596691a;border:1px solid rgba(5,150,105,.2);border-radius:6px;color:#059669;display:inline-block;font-size:1rem;font-weight:700;min-width:80px;padding:.5rem .75rem;text-align:center}.btn-add-service{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-add-service:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.btn-add-service:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6;transform:none}.btn-remove-service{align-items:center;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:50%;color:#ef4444;cursor:pointer;display:flex;height:32px;justify-content:center;padding:.5rem;transition:all .2s ease;width:32px}.btn-remove-service:hover{background:#ef4444;color:#fff;transform:translateY(-1px)}.remove-icon{font-size:18px;font-weight:700;line-height:1}.btn-add-service .btn-icon,.btn-remove-service .btn-icon{height:16px;width:16px}@media (max-width:1024px){.service-row{gap:.75rem;grid-template-columns:minmax(120px,2fr) minmax(80px,1fr) minmax(60px,.8fr) minmax(80px,1fr) minmax(70px,1fr) 35px;padding:1rem .75rem}.service-label{font-size:.7rem}}@media (max-width:768px){.service-row{gap:1rem;grid-template-columns:1fr;overflow-x:visible;padding:1rem .75rem}.service-field{flex-direction:column;gap:.5rem;min-width:0}.service-label{font-size:.75rem}.service-actions{display:flex;justify-content:center;margin-top:.5rem}}@media (max-width:480px){.service-row{gap:.75rem;padding:.75rem .5rem}.service-input,.service-select{font-size:.85rem;min-width:0;padding:.6rem;width:100%}.service-label{font-size:.7rem}.services-list{border-radius:8px;margin:0 -.5rem}}.generate-btn{bottom:20px;box-shadow:0 8px 32px #0003;left:20px;margin:0;position:fixed;right:20px;z-index:1000}.main-content{padding-bottom:100px}
