*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#eaeaea;color:#333}.app-container{display:flex;min-height:100vh}.main-content{flex:1;padding:32px;background-color:#eaeaea}.main-content h1{font-size:24px;font-weight:600;margin-bottom:16px;color:#1a1a1a}.main-content p{color:#666;font-size:15px}.sidebar{width:240px;min-height:100vh;background-color:#2c2c2c;padding:24px 16px;display:flex;flex-direction:column}.sidebar-logo{width:80px;height:auto;display:block;margin:0 auto 24px}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li{margin-bottom:8px}.sidebar a{display:block;padding:10px 12px;color:#a0a0b0;text-decoration:none;border-radius:8px;font-size:15px}.sidebar a:hover,.sidebar a.active{background-color:#3c3c3c;color:#fff}.year-view{display:flex;gap:24px}.year-left{flex:1}.year-nav{display:flex;align-items:center;justify-content:center;gap:24px;margin-bottom:20px}.year-title{font-size:28px;font-weight:600;color:#1a1a1a;min-width:80px;text-align:center}.year-nav-btn{background-color:#fff;border:1px solid #dddddd;border-radius:8px;padding:6px 14px;font-size:16px;cursor:pointer;color:#333;line-height:1}.year-nav-btn:hover{background-color:#f0f0f0}.months-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.month-card{background-color:#fff;border-radius:10px;padding:20px;box-shadow:0 1px 4px #00000014}.month-card h3{font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.year-right{width:220px}.year-right h2{font-size:16px;font-weight:600;margin-bottom:16px;color:#1a1a1a}.totals-panel{display:flex;flex-direction:column;gap:12px}.total-box{background-color:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 4px #00000014;display:flex;flex-direction:column;gap:6px}.total-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px}.total-number{font-size:28px;font-weight:600;color:#1a1a1a}.total-box.earnings .total-number{color:#2e7d32}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.day-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:13px;color:#333;border-radius:3px;background-color:#f5f5f5}.day-cell.empty{background-color:transparent}.day-cell.work{background-color:#4caf50;color:#fff}.day-cell.unavailable{background-color:#f44336;color:#fff}.day-header{background-color:transparent;font-size:10px;font-weight:600;color:#999}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background-color:#fff;border-radius:12px;width:1000px;max-height:98vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #eeeeee}.modal-header h2{font-size:18px;font-weight:600;color:#1a1a1a}.close-button{background:none;border:none;font-size:18px;color:#666;cursor:pointer}.close-button:hover{color:#1a1a1a}.modal-body{padding:16px 24px;display:flex;flex-direction:column;gap:10px}.form-row{display:flex;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px;flex:1}.form-group.full-width{width:100%}.form-group label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group select{padding:10px 12px;border:1px solid #dddddd;border-radius:8px;font-size:14px;color:#1a1a1a;background-color:#fafafa}.form-group input:focus,.form-group select:focus{outline:none;border-color:#2c2c2c;background-color:#fff}.form-section-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-top:8px}.add-contact-button{background:none;border:1px dashed #cccccc;border-radius:8px;padding:8px 16px;font-size:13px;color:#666;cursor:pointer;width:100%}.add-contact-button:hover{border-color:#2c2c2c;color:#1a1a1a}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #eeeeee}.cancel-button{padding:10px 20px;border:1px solid #dddddd;border-radius:8px;background-color:#fff;font-size:14px;color:#333;cursor:pointer}.cancel-button:hover{background-color:#f5f5f5}.save-button{padding:10px 20px;border:none;border-radius:8px;background-color:#2c2c2c;font-size:14px;color:#fff;cursor:pointer}.save-button:hover{background-color:#1a1a1a}.delete-button{padding:10px 20px;border:none;border-radius:8px;background-color:#f44336;font-size:14px;color:#fff;cursor:pointer;margin-right:auto}.delete-button:hover{background-color:#d32f2f}.month-view{display:flex;gap:24px}.month-left{flex:1}.month-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;margin-left:60px}.month-header h1{font-size:24px;font-weight:600;color:#1a1a1a;flex:1;text-align:center}.month-header button{background-color:#fff;border:1px solid #dddddd;border-radius:8px;padding:8px 16px;font-size:18px;cursor:pointer;color:#333}.month-header button:hover{background-color:#f0f0f0}.month-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.month-day-header{text-align:center;font-size:12px;font-weight:600;color:#666;padding:8px 0}.month-day-cell{background-color:#fff;border-radius:8px;padding:8px;min-height:80px;position:relative;box-shadow:0 1px 3px #0000000f}.month-day-cell.empty{background-color:transparent;box-shadow:none}.day-number{font-size:13px;font-weight:600;color:#1a1a1a}.add-button{position:absolute;top:6px;right:6px;background-color:transparent;border:none;font-size:18px;color:#aaa;cursor:pointer;line-height:1}.add-button:hover{color:#333}.month-right{width:220px;align-self:flex-start}.month-right h2{font-size:16px;font-weight:600;margin-bottom:16px;color:#1a1a1a}.month-day-cell.booked-work{background-color:#4caf50;color:#fff}.month-day-cell.booked-work .day-number{color:#fff}.month-day-cell.booked-unavailable{background-color:#f44336;color:#fff}.month-day-cell.booked-unavailable .day-number{color:#fff}.booking-label{display:block;font-size:10px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoices-page{padding:0}.invoices-page h1{font-size:24px;font-weight:600;margin-bottom:24px;color:#1a1a1a}.invoice-summary{display:flex;gap:16px;margin-bottom:32px}.summary-box{flex:1;background-color:#fff;border-radius:10px;padding:16px;box-shadow:0 1px 4px #00000014;display:flex;flex-direction:column;gap:6px}.summary-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.summary-number{font-size:28px;font-weight:600;color:#1a1a1a}.invoice-table{background-color:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.invoice-table-header{display:grid;grid-template-columns:1.5fr 1fr 1.5fr 2fr 1fr 1fr 1.2fr;padding:12px 20px;background-color:#f5f5f5;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.invoice-row{display:grid;grid-template-columns:1.5fr 1fr 1.5fr 2fr 1fr 1fr 1.2fr;padding:14px 20px;border-top:1px solid #eeeeee;font-size:14px;color:#1a1a1a;align-items:center}.invoice-row:hover{background-color:#fafafa}.invoice-number{font-weight:600;color:#2c2c2c}.invoice-empty{padding:32px 20px;text-align:center;color:#666;font-size:14px}.status-select{padding:4px 8px;border-radius:6px;border:none;font-size:12px;font-weight:600;cursor:pointer}.status-draft{background-color:#fff3e0;color:#e65100}.status-sent{background-color:#e3f2fd;color:#1565c0}.status-paid{background-color:#e8f5e9;color:#2e7d32}.invoice-actions{display:flex;gap:8px}.action-btn{padding:6px 12px;border-radius:6px;border:none;font-size:12px;cursor:pointer;font-weight:600}.print-btn{background-color:#2c2c2c;color:#fff}.print-btn:hover{background-color:#1a1a1a}.delete-btn{background-color:#ffebee;color:#c62828}.delete-btn:hover{background-color:#ffcdd2}.delete-btn:hover .wrap-btn{background-color:#1565c0;color:#fff}.delete-btn:hover .wrap-btn:hover{background-color:#0d47a1}.delete-btn:hover *{margin:0;padding:0;box-sizing:border-box}.delete-btn:hover body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#f5f5f5;color:#333}.delete-btn:hover .app-container{display:flex;min-height:100vh}.delete-btn:hover .main-content{flex:1;padding:32px;background-color:#d0d0d0}.delete-btn:hover .main-content h1{font-size:24px;font-weight:600;margin-bottom:16px;margin-left:60px;color:#1a1a1a}.delete-btn:hover .main-content p{color:#666;font-size:15px}.delete-btn:hover .app-header{display:flex;justify-content:flex-start;margin-bottom:16px;position:fixed;top:12px;left:258px;z-index:100}.delete-btn:hover .app-logo{width:36px;height:auto}.delete-btn:hover .settings-link{margin-top:24px;text-align:right}.delete-btn:hover .settings-link a{font-size:12px;color:#aaa;text-decoration:none}.delete-btn:hover .settings-link a:hover{color:#666}.delete-btn:hover .settings-lock{display:flex;align-items:center;justify-content:center;min-height:60vh}.delete-btn:hover .settings-lock-box{background-color:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 4px #00000014;width:300px;display:flex;flex-direction:column;gap:12px;text-align:center}.delete-btn:hover .settings-lock-box h2{font-size:20px;font-weight:600;color:#1a1a1a}.delete-btn:hover .settings-lock-box p{font-size:14px;color:#666}.delete-btn:hover .settings-password-input{padding:10px 12px;border:1px solid #dddddd;border-radius:8px;font-size:14px;color:#1a1a1a;text-align:center;letter-spacing:4px}.delete-btn:hover .settings-password-input:focus{outline:none;border-color:#2c2c2c}.delete-btn:hover .settings-error{color:#c62828;font-size:13px}.delete-btn:hover .settings-page h1{font-size:24px;font-weight:600;margin-bottom:24px;color:#1a1a1a}.delete-btn:hover .settings-section{background-color:#fff;border-radius:10px;padding:24px;box-shadow:0 1px 4px #00000014;max-width:500px}.delete-btn:hover .settings-section h2{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:6px}.delete-btn:hover .settings-description{font-size:13px;color:#666;margin-bottom:20px}.delete-btn:hover .settings-form{display:flex;flex-direction:column;gap:16px}.delete-btn:hover .settings-group{display:flex;flex-direction:column;gap:6px}.delete-btn:hover .settings-group label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.delete-btn:hover .settings-group input{padding:10px 12px;border:1px solid #dddddd;border-radius:8px;font-size:14px;color:#1a1a1a;background-color:#fafafa}.delete-btn:hover .settings-group input:focus{outline:none;border-color:#2c2c2c;background-color:#fff}.delete-btn:hover .settings-save-btn{padding:12px 24px;border:none;border-radius:8px;background-color:#2c2c2c;font-size:14px;color:#fff;cursor:pointer;font-weight:600;margin-top:8px}.delete-btn:hover .settings-save-btn:hover{background-color:#1a1a1a}.delete-btn:hover .print-modal{background-color:#fff;border-radius:12px;width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.delete-btn:hover .invoice-print-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-bottom:1px solid #eeeeee}.delete-btn:hover .invoice-document{padding:40px;font-size:14px;color:#1a1a1a;line-height:1.6}.delete-btn:hover .invoice-doc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.delete-btn:hover .invoice-doc-logo h2{font-size:22px;font-weight:600;color:#1a1a1a}.delete-btn:hover .invoice-doc-number{text-align:right}.delete-btn:hover .invoice-doc-number h1{font-size:28px;font-weight:700;color:#1a1a1a;margin-bottom:4px}.delete-btn:hover .invoice-doc-number p{font-size:14px;color:#333}.delete-btn:hover .invoice-doc-addresses{display:flex;gap:60px;margin-bottom:40px}.delete-btn:hover .invoice-doc-from,.delete-btn:hover .invoice-doc-to{flex:1}.delete-btn:hover .address-label{font-weight:600;margin-bottom:6px;color:#666;text-transform:uppercase;font-size:12px;letter-spacing:.5px}.delete-btn:hover .invoice-doc-table{width:100%;border-collapse:collapse;margin-bottom:40px}.delete-btn:hover .invoice-doc-table th{background-color:#f5f5f5;padding:10px 16px;text-align:left;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.delete-btn:hover .invoice-doc-table th:last-child,.delete-btn:hover .invoice-doc-table td:last-child{text-align:right}.delete-btn:hover .invoice-doc-table td{padding:14px 16px;border-bottom:1px solid #eeeeee}.delete-btn:hover .invoice-doc-table tfoot td{font-weight:600;font-size:16px;border-bottom:none;border-top:2px solid #1a1a1a}.delete-btn:hover .invoice-doc-date,.delete-btn:hover .invoice-doc-site{font-size:12px;color:#666}.delete-btn:hover .invoice-doc-signature{margin-bottom:32px}.delete-btn:hover .signature-box{margin:8px 0}.delete-btn:hover .signature-image{height:40px;width:auto;display:block}.delete-btn:hover .invoice-doc-bank{border-top:1px solid #eeeeee;padding-top:20px;font-size:13px;color:#333;line-height:1.8}.delete-btn:hover .no-bank{color:#999;font-style:italic}.delete-btn:hover .invoice-doc-logo{display:flex;flex-direction:column;align-items:flex-start;gap:8px}@media print{@page{.delete-btn:hover{size:A4 portrait!important;margin:10mm}}.delete-btn:hover .invoice-print-actions{display:none!important}.delete-btn:hover .print-modal{box-shadow:none;border-radius:0;width:100%;max-height:none;overflow:visible}.delete-btn:hover .invoice-document{padding:20px}.delete-btn:hover .invoice-doc-bank{display:block!important}.delete-btn:hover .invoice-logo{width:18px;height:auto;margin-bottom:8px}.delete-btn:hover .wrapsheet-modal{background-color:#fff;border-radius:12px;width:95vw;max-width:1100px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.delete-btn:hover .wrapsheet-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #eeeeee}.delete-btn:hover .wrapsheet-header h2{font-size:18px;font-weight:600;color:#1a1a1a}.delete-btn:hover .wrapsheet-header-actions{display:flex;gap:12px}.delete-btn:hover .wrapsheet-document{display:flex;min-height:500px}.delete-btn:hover .wrapsheet-left{width:50%;padding:24px;border-right:2px dashed #cccccc}.delete-btn:hover .wrapsheet-right{width:50%;padding:24px;background-color:#fafafa}.delete-btn:hover .wrapsheet-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#333;margin-bottom:12px}.delete-btn:hover .wrapsheet-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:16px}.delete-btn:hover .wrapsheet-table th{background-color:#f5f5f5;padding:8px 10px;text-align:left;font-size:11px;font-weight:600;color:#666;text-transform:uppercase;border:1px solid #dddddd}.delete-btn:hover .wrapsheet-table td{padding:8px 10px;border:1px solid #dddddd;vertical-align:middle}.delete-btn:hover .wrapsheet-inline-input{width:100%;border:none;background:transparent;font-size:13px;color:#1a1a1a;font-family:inherit;padding:0}.delete-btn:hover .wrapsheet-inline-input:focus{outline:none;background-color:#f0f7ff;border-radius:4px;padding:2px 4px}.delete-btn:hover .add-day-btn{background:none;border:1px dashed #cccccc;border-radius:8px;padding:8px 16px;font-size:12px;color:#666;cursor:pointer;width:100%;margin-bottom:24px}.delete-btn:hover .add-day-btn:hover{border-color:#2c2c2c;color:#1a1a1a}.delete-btn:hover .wrapsheet-signature{margin-top:24px}.delete-btn:hover .wrapsheet-signature-image{height:25px;width:auto;display:block;margin:8px 0}.delete-btn:hover .wrapsheet-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;margin-bottom:6px;margin-top:0}.delete-btn:hover .wrapsheet-company{font-size:22px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.delete-btn:hover .wrapsheet-site{font-size:13px;color:#444;margin-bottom:2px}.delete-btn:hover .wrapsheet-section{margin-top:20px}.delete-btn:hover .wrapsheet-dates{font-size:14px;color:#1a1a1a}.delete-btn:hover .wrapsheet-feedback{width:100%;padding:0;border:none;font-size:13px;color:#1a1a1a;resize:vertical;font-family:inherit;background:transparent;box-sizing:border-box}.delete-btn:hover .wrapsheet-feedback:focus{outline:none}.delete-btn:hover .wrapsheet-contents{width:100%;padding:0;border:none;font-size:13px;color:#1a1a1a;resize:vertical;font-family:inherit;background:transparent;box-sizing:border-box}.delete-btn:hover .wrapsheet-contents:focus{outline:none}.delete-btn:hover .add-candidate-inline{background:none;border:1px solid #cccccc;border-radius:4px;padding:2px 6px;font-size:12px;color:#666;cursor:pointer;margin-left:8px}.delete-btn:hover .add-candidate-inline:hover{border-color:#2c2c2c;color:#1a1a1a}@page{.delete-btn:hover{size:A4 landscape!important;margin:10mm}}.delete-btn:hover .wrapsheet-header{display:none!important}.delete-btn:hover .wrapsheet-modal{box-shadow:none;border-radius:0;width:100%;max-height:none;overflow:visible}.delete-btn:hover .wrapsheet-document{min-height:0}.delete-btn:hover .wrapsheet-right{background-color:#fff}.delete-btn:hover .wrapsheet-left{border-right:1px solid #cccccc}}
