.glass{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000005e;position:relative;overflow:hidden}.glass:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);pointer-events:none}.glass:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.03) 1px,transparent 0);background-size:20px 20px;pointer-events:none;opacity:.5}.glass-strong{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000005e;position:relative;overflow:hidden}.glass-strong:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);pointer-events:none}.glass-strong:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.03) 1px,transparent 0);background-size:20px 20px;pointer-events:none;opacity:.5}.glass-strong{background:#ffffff14;border-color:#ffffff26}.btn{padding:.5rem 1.5rem;border:none;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.1)}.btn:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff26;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#00d4ff;color:#0a0d12;border-color:#00d4ff;font-weight:600}.btn-primary:hover:not(:disabled){background:#00b8e6;border-color:#00b8e6;box-shadow:0 0 20px #00d4ff4d}.btn-secondary{background:#6b46c1;color:#fff;border-color:#6b46c1}.btn-secondary:hover:not(:disabled){background:#5b3aa8;border-color:#5b3aa8}.btn-danger{background:transparent;color:#ef4444;border-color:#ef4444}.btn-danger:hover:not(:disabled){background:#ef44441a}.input{width:100%;padding:.5rem 1rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;transition:all .2s ease}.input:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff1a}.input::placeholder{color:#6b7280}.input:disabled{opacity:.5;cursor:not-allowed}.input-error{border-color:#ef4444}.input-error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.card{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000005e;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);pointer-events:none}.card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.03) 1px,transparent 0);background-size:20px 20px;pointer-events:none;opacity:.5}.card{padding:1.5rem;border-radius:6px}.card-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.card-title{font-size:1.125rem;font-weight:600;color:#fff;margin:0}.stats-card{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000005e;position:relative;overflow:hidden}.stats-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);pointer-events:none}.stats-card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.03) 1px,transparent 0);background-size:20px 20px;pointer-events:none;opacity:.5}.stats-card{padding:clamp(1rem,3vw,2rem);border-radius:6px;text-align:center;min-width:0}.stats-label{font-size:clamp(.6rem,1.5vw,.875rem);color:#a0a0a0;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-value{font-size:clamp(1.25rem,4vw,2.5rem);font-weight:700;color:#fff;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap}.stats-subvalue{font-size:clamp(.65rem,1.5vw,.875rem);color:#a0a0a0;margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-wrapper{overflow-x:hidden;overflow-y:visible}@media (max-width: 1399px){.table-wrapper{overflow-x:auto}}.table{width:100%;border-collapse:collapse;table-layout:auto}.table th{text-align:left;padding:1rem;font-size:.7rem!important;font-weight:600;color:#a0a0a0;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap;line-height:1.2}.table th.col-primary-earnings,.table th.col-secondary-earnings{font-size:.65rem!important}.table td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.05);color:#fff}.table tbody tr{transition:background .15s ease}.table tbody tr:hover{background:#ffffff05}.table td:last-child,.table th:last-child{text-align:right}.table-responsive{table-layout:auto}.table-responsive .col-date{width:auto;min-width:80px;max-width:100px}.table-responsive .col-hours{width:auto;min-width:55px;max-width:70px}.table-responsive .col-primary-hours{width:auto;min-width:60px;max-width:75px}.table-responsive .col-secondary-hours{width:auto;min-width:80px;max-width:95px}.table-responsive .col-primary-earnings{width:auto;min-width:95px;max-width:115px}.table-responsive .col-secondary-earnings{width:auto;min-width:115px;max-width:135px}.table-responsive .col-total-earnings{width:auto;min-width:105px;max-width:125px}.table-responsive .col-comment{width:auto;min-width:90px;max-width:none}.table-responsive .col-actions{width:auto;min-width:65px;max-width:80px}@media (min-width: 1600px){.table-responsive .col-date{max-width:110px}.table-responsive .col-comment{min-width:120px}}@media (max-width: 1399px){.table-responsive .col-primary-earnings,.table-responsive .col-secondary-earnings{font-size:.9em;padding:.5rem}.table-responsive .col-comment{max-width:200px}}@media (max-width: 1200px){.table-responsive .col-primary-hours,.table-responsive .col-secondary-hours{display:none}.table-responsive .col-primary-earnings{min-width:100px}.table-responsive .col-secondary-earnings{min-width:120px}.table-responsive .col-comment{max-width:180px}}@media (max-width: 1000px){.table-responsive .col-primary-earnings,.table-responsive .col-secondary-earnings{display:none}.table-responsive .col-total-earnings{min-width:140px;width:25%}.table-responsive .col-comment{width:30%;max-width:200px}.table-responsive .col-date{min-width:90px}.table-responsive .col-hours{min-width:65px}}@media (max-width: 800px){.table-responsive .col-comment{display:none}.table-responsive .col-total-earnings{width:35%;min-width:130px}.table-responsive .col-date{min-width:80px;font-size:.9em}.table-responsive .col-hours{min-width:60px}.table-responsive th,.table-responsive td{padding:.5rem .4rem;font-size:.875em}}@media (max-width: 600px){.table-responsive .col-actions{min-width:70px}.table-responsive th,.table-responsive td{padding:.4rem .3rem;font-size:.8em}}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#a0a0a0}.form-error{margin-top:.25rem;font-size:.75rem;color:#ef4444}.container{max-width:1400px;margin:0 auto;padding:clamp(.5rem,3vw,1.5rem);width:100%;box-sizing:border-box}@supports (padding: env(safe-area-inset-left)){.container{padding-left:max(clamp(.5rem,3vw,1.5rem),env(safe-area-inset-left));padding-right:max(clamp(.5rem,3vw,1.5rem),env(safe-area-inset-right))}}.grid{display:grid;gap:clamp(.5rem,2vw,1.5rem)}.grid-2{grid-template-columns:repeat(2,1fr)}@media (max-width: 480px){.grid-2{grid-template-columns:1fr}}.grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 900px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.grid-3{grid-template-columns:1fr}}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 360px){.grid-4{grid-template-columns:1fr}}@media (pointer: coarse){.btn,.input,input[type=checkbox],input[type=radio]{min-height:44px}.btn{padding:1rem 1.5rem}}@media (max-width: 479px){html{font-size:14px}body{overflow-x:hidden}body:before,body:after{width:300px;height:300px;filter:blur(40px)}h1{font-size:1.5rem}h2{font-size:1.25rem}.container{padding:.5rem}.card{padding:1rem;border-radius:4px}.grid-4{grid-template-columns:repeat(2,1fr);gap:.5rem}.stats-card{padding:1rem}.stats-value{font-size:1.5rem}.stats-label{font-size:.65rem}.stats-subvalue{font-size:.7rem}.btn{padding:.5rem 1rem;font-size:.875rem;width:100%}.form-group{margin-bottom:1rem}.input{font-size:16px}.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{font-size:.75rem}.table th,.table td{padding:.25rem .5rem}.dashboard-header{flex-direction:column;align-items:stretch!important;gap:1rem!important}.dashboard-header .header-actions{flex-wrap:wrap;justify-content:center}}@media (min-width: 480px) and (max-width: 767px){.container{padding:1rem}.grid-4{grid-template-columns:repeat(2,1fr);gap:1rem}.stats-value{font-size:1.75rem}.table{font-size:.8rem}.table th,.table td{padding:.5rem}.btn-group{display:flex;flex-wrap:wrap;gap:.5rem}.btn-group .btn{flex:1 1 auto;min-width:120px}}@media (min-width: 768px) and (max-width: 1023px){.container{padding:1rem 1.5rem}.grid-4{grid-template-columns:repeat(2,1fr);gap:1rem}.stats-card{padding:1.5rem}.stats-value{font-size:2rem}.table-responsive .col-primary-hours,.table-responsive .col-secondary-hours{display:table-cell}}@media (min-width: 1024px) and (max-width: 1199px){.container{padding:1.5rem}.grid-4{grid-template-columns:repeat(4,1fr);gap:1rem}.stats-value{font-size:2rem}}@media (orientation: portrait){.dashboard-header{flex-direction:column;align-items:flex-start!important;gap:1rem!important}.header-title{width:100%}.header-actions{width:100%;justify-content:flex-start!important;flex-wrap:wrap}}@media (orientation: landscape) and (max-height: 500px){.container,.stats-card{padding:.5rem 1rem}.stats-value{font-size:1.5rem}.stats-label{font-size:.65rem;margin-bottom:0}.stats-subvalue{font-size:.7rem;margin-top:0}h1{font-size:1.5rem}h2{font-size:1.25rem;margin-bottom:.5rem!important}.card{padding:1rem}.form-group{margin-bottom:.5rem}.table th,.table td{padding:.25rem .5rem}}@supports (padding: env(safe-area-inset-top)){.container{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.fixed-bottom{padding-bottom:env(safe-area-inset-bottom)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.card{border:2px solid #ffffff}.btn,.input{border-width:2px}}@media print{body{background:#fff;color:#000}body:before,body:after{display:none}.card{background:#fff;border:1px solid #ccc;box-shadow:none}.btn,.titlebar,.header-actions{display:none!important}.table th,.table td{border:1px solid #ccc}}@media (max-width: 479px){.login-container{padding:1rem}.login-container .card{width:100%!important;max-width:none}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}@media (max-width: 767px){.dashboard-header{flex-direction:column;align-items:stretch}}@media (max-width: 479px){.month-list-item .month-header{flex-direction:column;align-items:flex-start;gap:.5rem}.month-list-item .month-actions{width:100%;justify-content:space-between}}@media (max-width: 479px){.modal-overlay{padding:.5rem}.modal-overlay .modal-content{width:100%!important;max-width:none;max-height:90vh;margin:auto}}@media (max-width: 479px){.edit-modal{width:95vw!important;padding:1rem!important}}@media (max-width: 479px){.preview-card .preview-grid{grid-template-columns:1fr!important;gap:.25rem}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}html{font-size:clamp(14px,2vw,16px)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;line-height:1.6;color:#fff;background:#0a0d12;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow:hidden;overscroll-behavior-y:contain}body:before{content:"";position:fixed;top:-100px;left:-100px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(0,212,255,.2) 0%,rgba(0,212,255,.1) 40%,rgba(0,212,255,.05) 60%,transparent 80%);pointer-events:none;z-index:0;filter:blur(60px)}@media (max-width: 768px){body:before{width:400px;height:400px;top:-50px;left:-50px}}body:after{content:"";position:fixed;bottom:-100px;right:-100px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(107,70,193,.2) 0%,rgba(107,70,193,.1) 40%,rgba(107,70,193,.05) 60%,transparent 80%);pointer-events:none;z-index:0;filter:blur(60px)}@media (max-width: 768px){body:after{width:400px;height:400px;bottom:-50px;right:-50px}}#root{height:100%;overflow-y:auto;overflow-x:hidden;position:relative;z-index:1;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.titlebar{-webkit-app-region:drag;-webkit-user-select:none;user-select:none}::-webkit-scrollbar{width:8px;height:8px}@media (max-width: 768px){::-webkit-scrollbar{width:4px;height:4px}}::-webkit-scrollbar-track{background:#12151a}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}h1,h2,h3,h4,h5,h6{font-weight:600;color:#fff;line-height:1.2}h1{font-size:clamp(1.5rem,4vw,2rem)}h2{font-size:clamp(1.25rem,3vw,1.5rem)}h3{font-size:clamp(1.1rem,2.5vw,1.25rem)}p{color:#a0a0a0}.number{font-variant-numeric:tabular-nums;font-weight:600}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:#00d4ff}.text-success{color:#10b981}.text-warning{color:#f59e0b}.text-error{color:#ef4444}.mt-sm{margin-top:.5rem}.mt-md{margin-top:1rem}.mt-lg{margin-top:1.5rem}.mb-sm{margin-bottom:.5rem}.mb-md{margin-bottom:1rem}.mb-lg{margin-bottom:1.5rem}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.gap-lg{gap:1.5rem}@media (max-width: 767px){.hide-mobile{display:none!important}}.hide-desktop{display:none!important}@media (max-width: 767px){.hide-desktop{display:flex!important}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (hover: none){.btn:active,.card:active{transform:scale(.98);transition:transform .1s ease}}
