*{margin:0;padding:0;box-sizing:border-box}body{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;color:#333;background-color:#f5f5f5;padding:0;margin:0;line-height:1.4}#root{width:100%;min-height:100vh}.invoice-wrapper{max-width:210mm;margin:0 auto;background:#fff;padding:18mm 20mm;box-shadow:0 2px 8px #0000001a}.invoice-container{max-width:100%}.header{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:25px}.recipient-info{grid-column:1;display:flex;flex-direction:column}.sender-info{grid-column:2;text-align:right;display:flex;flex-direction:column;align-items:flex-end}.company-name{font-weight:700;font-size:12px;margin-bottom:3px}.address-line{margin-bottom:1px;font-size:11px;line-height:1.3}.recipient-input{border:none;background:transparent;padding:0;margin-bottom:1px;font-size:inherit;font-family:inherit;color:inherit;width:100%}.recipient-input.company-name{font-weight:700;font-size:12px;margin-bottom:3px}.recipient-input.address-line{font-size:11px;line-height:1.3}.recipient-input:focus{outline:1px solid #4a90e2;background:#4a90e20d;border-radius:2px}.invoice-details-box{margin-top:12px;border:2px solid #000;width:100%;max-width:100%;background-color:#fff;padding:8px 10px}.invoice-number-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:5px;font-size:11px;font-weight:700}.invoice-number-label{text-align:left}.invoice-number-value{text-align:right;font-weight:700}.invoice-detail-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:5px;font-size:11px}.invoice-detail-row:last-child{margin-bottom:0}.invoice-label{text-align:left}.invoice-value{text-align:right;font-weight:700}.invoice-input{border:none;background:transparent;padding:0;font-size:inherit;font-family:inherit;color:inherit;text-align:right;font-weight:700;width:100%}.invoice-input:focus{outline:1px solid #4a90e2;background:#4a90e20d;border-radius:2px}.invoice-input.date-input{font-family:Arial,sans-serif}.table-section{margin-top:25px}.table-header{display:grid;grid-template-columns:120px 1fr 65px 85px 105px 30px;gap:10px;padding:7px 0;border-bottom:1px solid #000;font-weight:700;font-size:11px}.table-header .header-hours,.table-header .header-rate,.table-header .header-total{text-align:right;padding:3px 5px;box-sizing:border-box}.table-row{display:grid;grid-template-columns:120px 1fr 65px 85px 105px 30px;gap:10px;padding:6px 0;border-bottom:1px solid #ddd;font-size:11px;align-items:center;position:relative}.table-row.line-item[draggable=true]{cursor:move}.table-row.line-item.dragging{opacity:.5}.table-row.line-item.drag-over{border-top:2px solid #4a90e2}.drag-handle{color:#999;font-size:10px;line-height:1}.drag-handle:hover,.table-row.line-item[draggable=true]:hover .drag-handle{color:#4a90e2}.table-row .cell-hours,.table-row .cell-rate{text-align:right}.table-row .cell-total{display:flex;justify-content:flex-end;align-items:center;box-sizing:border-box}.table-cell-input{border:none;background:transparent;padding:3px 5px;font-size:11px;font-family:inherit;color:inherit;width:100%;box-sizing:border-box}.table-cell-input:focus{outline:1px solid #4a90e2;background:#4a90e20d;border-radius:2px}.cell-total{background-color:#e0e0e0;padding:3px 5px}.line-total{background-color:#e0e0e0}.btn-remove-small{background:#f44;color:#fff;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s;flex-shrink:0}.btn-remove-small:hover{opacity:1}.btn-add-row{margin-top:10px;padding:8px 16px;background:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px}.btn-add-row:hover{background:#357abd}.totals-section-wrapper{margin-top:20px;margin-left:auto;margin-right:0;display:flex;align-items:flex-start;gap:8px;width:fit-content}.totals-section{width:200px}.totals-border-top{border-top:2px solid #000;margin-bottom:6px;margin-top:0}.totals-border-bottom{border-top:2px solid #000;margin-top:6px}.total-row{display:grid;grid-template-columns:95px 1fr;gap:0;padding:4px 0;align-items:center}.total-label{text-align:left;font-weight:700;font-size:11px}.total-label.bold{font-weight:700}.total-value-wrapper{display:flex;align-items:center;justify-content:flex-end;gap:8px}.total-value{text-align:right;background-color:#e0e0e0;padding:3px 5px;font-weight:700;font-size:11px;width:105px;min-width:105px;flex:0 0 105px}.total-value.bold{font-weight:700}.lock-button{background:none;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;transition:transform .2s,opacity .2s,color .2s;opacity:.6;flex-shrink:0;color:#666;width:20px;height:20px;border-radius:3px}.lock-button:hover{opacity:1;transform:scale(1.15);background-color:#4a90e21a;color:#4a90e2}.lock-button:active{transform:scale(1.05)}.lock-button svg{width:100%;height:100%}.lock-button-outside{margin-top:6px;align-self:flex-start;position:relative;top:4px}.lock-button-locked{color:#e74c3c;opacity:1}.lock-button-locked:hover{background-color:#e74c3c1a;color:#c0392b}.exchange-rate-section{margin-top:20px;font-size:11px}.exchange-rate-row{display:grid;grid-template-columns:1fr 50px;gap:10px;margin-bottom:5px}.exchange-rate-value{text-align:right}.exchange-input{border:none;background:transparent;padding:0;font-size:inherit;font-family:inherit;color:inherit;text-align:right;width:100%}.exchange-input:focus{outline:1px solid #4a90e2;background:#4a90e20d;border-radius:2px}.exchange-rate-source{color:#000}.exchange-rate-source a{color:#06c;text-decoration:underline}.footer{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:11px}.vat-exemption{font-style:italic}.invoice-issued{text-align:right}.issued-name{text-decoration:underline;margin-top:4px}.invoice-upn-qr-display{margin-top:30px;padding-top:20px;border-top:1px solid #ddd;text-align:left}.invoice-upn-qr-text{font-size:11px;margin-bottom:10px;color:#333}.invoice-upn-qr-image-wrapper{display:flex;justify-content:flex-start;padding:0;transition:opacity .2s}.invoice-upn-qr-image-wrapper:hover{opacity:.8}.qr-payload-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.qr-payload-modal-content{background-color:#fff;border-radius:8px;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.qr-payload-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #ddd}.qr-payload-modal-header h3{margin:0;font-size:18px;color:#333}.qr-payload-modal-close{background:none;border:none;font-size:28px;color:#aaa;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;line-height:1}.qr-payload-modal-close:hover{color:#000}.qr-payload-modal-body{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.qr-payload-modal-qr-wrapper{display:flex;justify-content:center;padding:10px}.qr-payload-modal-text-section{display:flex;flex-direction:column;gap:10px}.qr-payload-text{font-family:Courier New,monospace;font-size:10px;line-height:1.4;background-color:#f5f5f5;padding:15px;border:1px solid #ddd;white-space:pre-wrap;word-break:break-all;margin:0;border-radius:4px}.qr-payload-modal-body .btn-copy{background:#4a90e2;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .3s;align-self:flex-start}.qr-payload-modal-body .btn-copy:hover{background:#357abd}.form-actions{text-align:center;margin-top:40px;padding-top:20px;padding-left:20px;padding-right:20px;border-top:1px solid #ddd;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.form-actions button{min-width:140px;white-space:nowrap}.btn-submit,a.btn-submit{background:#4a90e2;color:#fff;border:none;padding:12px 32px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #4a90e233;min-width:160px;text-decoration:none;display:inline-block;text-align:center;font-family:inherit;box-sizing:border-box}.btn-submit:hover{background:#357abd;box-shadow:0 3px 6px #4a90e24d;transform:translateY(-1px)}.btn-submit:active{transform:translateY(0)}.btn-submit:disabled{background:#95a5a6;cursor:not-allowed;box-shadow:none;transform:none}.message{margin-top:20px;padding:15px;border-radius:4px;display:none}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb;display:block}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;display:block}.toast{position:fixed;top:20px;right:20px;z-index:10000;min-width:300px;max-width:500px;border-radius:4px;box-shadow:0 4px 12px #00000026;animation:toastSlideIn .3s ease-out}.toast-content{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;gap:15px}.toast-message{flex:1;font-size:14px;line-height:1.4}.toast-close{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.toast-success .toast-close{color:#155724}.toast-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.toast-error .toast-close{color:#721c24}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.btn-preview{background:#6c757d;color:#fff;border:none;padding:12px 32px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #6c757d33}.btn-preview:hover{background:#5a6268;box-shadow:0 3px 6px #6c757d4d;transform:translateY(-1px)}.btn-preview:active{transform:translateY(0)}.btn-preview:disabled{background:#95a5a6;cursor:not-allowed;box-shadow:none;transform:none}.btn-preview-html{background:#28a745;color:#fff;border:none;padding:12px 32px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #28a74533}.btn-preview-html:hover{background:#218838;box-shadow:0 3px 6px #28a7454d;transform:translateY(-1px)}.btn-preview-html:active{transform:translateY(0)}.btn-preview-html:disabled{background:#95a5a6;cursor:not-allowed;box-shadow:none;transform:none}.btn-save{background:#ff9800;color:#fff;border:none;padding:12px 32px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #ff980033}.btn-save:hover{background:#e68900;box-shadow:0 3px 6px #ff98004d;transform:translateY(-1px)}.btn-save:active{transform:translateY(0)}.btn-save:disabled{background:#95a5a6;cursor:not-allowed;box-shadow:none;transform:none}.preview-modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000b3;overflow:auto}.preview-modal-content{background-color:#fefefe;margin:1vh auto;padding:0;border:1px solid #888;width:98%;max-width:none;height:98vh;max-height:98vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.preview-modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #ddd;background-color:#f8f9fa;flex-shrink:0}.preview-modal-header h2{margin:0;font-size:20px;color:#333}.preview-modal-actions{display:flex;align-items:center;gap:15px}.btn-download-pdf{background:#4a90e2;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background .3s}.btn-download-pdf:hover{background:#357abd}.btn-download-pdf:disabled{background:#95a5a6;cursor:not-allowed}.preview-modal-close{color:#aaa;font-size:28px;font-weight:700;background:none;border:none;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;line-height:1}.preview-modal-close:hover,.preview-modal-close:focus{color:#000}.preview-modal-body{padding:0;overflow:hidden;flex:1;background-color:#f0f0f0;display:flex;align-items:center;justify-content:center}.preview-iframe{width:100%;height:100%;border:none;background:#fff}.settings-modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000b3;overflow:auto}.settings-modal-content{background-color:#fefefe;margin:2vh auto;padding:0;border:1px solid #888;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d;border-radius:8px;overflow:hidden}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #ddd;background-color:#f8f9fa;flex-shrink:0}.settings-modal-header h2{margin:0;font-size:24px;color:#333}.settings-modal-body{padding:20px;overflow-y:auto;flex:1}.settings-section{margin-bottom:30px}.settings-section h3{margin:0 0 15px;font-size:18px;color:#333;border-bottom:2px solid #4a90e2;padding-bottom:8px}.settings-form-group{margin-bottom:15px}.settings-form-group label{display:block;margin-bottom:5px;font-weight:500;color:#555;font-size:14px}.settings-form-group input,.settings-form-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.settings-form-group input:focus,.settings-form-group select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.settings-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #ddd}.btn-settings{background:#5a6268;color:#fff;border:none;padding:12px 32px;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #5a626833}.btn-settings:hover{background:#495057;box-shadow:0 3px 6px #5a62684d;transform:translateY(-1px)}.btn-settings:active{transform:translateY(0)}.btn-settings:disabled{background:#95a5a6;cursor:not-allowed;box-shadow:none;transform:none}.app-container{min-height:100vh;display:flex;flex-direction:column}.navbar-button{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit}.invoices-list-container{width:1200px;max-width:100%;margin:0 auto;padding:30px 20px;flex:1;box-sizing:border-box}.invoices-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.invoices-list-header h1{font-size:28px;color:#333;margin:0}.invoices-list-loading,.invoices-list-error{text-align:center;padding:40px;font-size:16px;color:#666}.invoices-list-error{color:#d32f2f}.invoices-list-empty{text-align:center;padding:60px 20px}.invoices-list-empty p{font-size:18px;color:#666;margin-bottom:20px}.invoices-list-table{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;width:100%;box-sizing:border-box}.invoices-list-table table{width:100%;border-collapse:collapse;table-layout:auto}.invoices-list-table thead{background-color:#f8f9fa}.invoices-list-table th{padding:15px;text-align:left;font-weight:600;font-size:14px;color:#333;border-bottom:2px solid #e0e0e0}.invoices-list-table td{padding:15px;border-bottom:1px solid #e0e0e0;font-size:14px;color:#555}.invoices-list-table tbody tr:hover{background-color:#f8f9fa}.invoices-list-table tbody tr:last-child td{border-bottom:none}.invoice-actions{display:flex;gap:8px;align-items:center}.btn-view,.btn-download,.btn-edit{padding:8px 16px;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-view{background-color:#9c27b0;color:#fff}.btn-view:hover:not(:disabled){background-color:#7b1fa2}.btn-view:active:not(:disabled){background-color:#6a1b9a}.btn-view:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-download{background-color:#4caf50;color:#fff}.btn-download:hover:not(:disabled){background-color:#45a049}.btn-download:active:not(:disabled){background-color:#3d8b40}.btn-download:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-edit{background-color:#2196f3;color:#fff}.btn-edit:hover:not(:disabled){background-color:#0b7dda}.btn-edit:active:not(:disabled){background-color:#0a6bc2}.btn-edit:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-delete{padding:8px 16px;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;background-color:#f44336;color:#fff}.btn-delete:hover:not(:disabled){background-color:#da190b}.btn-delete:active:not(:disabled){background-color:#c62828}.btn-delete:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.confirmation-modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000b3;overflow:auto}.confirmation-modal-content{background-color:#fefefe;margin:15% auto;padding:0;border:1px solid #888;width:90%;max-width:500px;box-shadow:0 4px 20px #0000004d;border-radius:8px;overflow:hidden}.confirmation-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #ddd;background-color:#f8f9fa}.confirmation-modal-header h2{margin:0;font-size:20px;color:#333}.confirmation-modal-close{color:#aaa;font-size:28px;font-weight:700;background:none;border:none;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;line-height:1}.confirmation-modal-close:hover,.confirmation-modal-close:focus{color:#000}.confirmation-modal-close:disabled{color:#ccc;cursor:not-allowed}.confirmation-modal-body{padding:20px}.confirmation-modal-body p{margin:0;font-size:16px;color:#555;line-height:1.5}.confirmation-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #ddd;background-color:#f8f9fa}.btn-cancel{padding:10px 20px;border:1px solid #ccc;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;background-color:#fff;color:#333;transition:all .2s ease}.btn-cancel:hover:not(:disabled){background-color:#f0f0f0}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.btn-confirm-delete{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;background-color:#f44336;color:#fff;transition:all .2s ease}.btn-confirm-delete:hover:not(:disabled){background-color:#da190b}.btn-confirm-delete:active:not(:disabled){background-color:#c62828}.btn-confirm-delete:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}@media(max-width:1024px){.invoice-wrapper{padding:10mm}.header{grid-template-columns:1fr;gap:20px}.sender-info{grid-column:1;text-align:left;align-items:flex-start}.footer{grid-template-columns:1fr}.preview-modal-content{width:98%;height:98vh;margin:1vh auto}.settings-modal-content{width:95%;margin:1vh auto;max-height:95vh}.navbar-content{padding:12px 15px}.navbar-brand{font-size:18px}.navbar-links{gap:10px}.navbar-link{font-size:14px;padding:6px 12px}.invoices-list-container{padding:20px 15px}.invoices-list-header{flex-direction:column;align-items:flex-start;gap:15px}.invoices-list-header h1{font-size:24px}.invoices-list-table{overflow-x:auto}.invoices-list-table table{min-width:800px}}.container{max-width:1200px;margin:0 auto;padding:20px}.header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.header-section h1{font-size:28px;color:#333;margin:0}.loading,.empty-state{text-align:center;padding:40px 20px;color:#666;font-size:16px}.error-message{background-color:#fee;color:#c33;padding:12px 16px;border-radius:4px;margin-bottom:20px;border-left:4px solid #c33}.recipient-section{margin-bottom:20px}.recipient-company-name-wrapper{position:relative}.recipient-info .recipient-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #00000026;max-height:300px;overflow-y:auto;z-index:1000;margin-top:4px}.recipient-dropdown-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.recipient-dropdown-item:last-child{border-bottom:none}.recipient-dropdown-item:hover{background-color:#f5f5f5}.recipient-dropdown-name{font-weight:500;color:#333;font-size:14px;margin-bottom:4px}.recipient-dropdown-details{font-size:12px;color:#666}.recipients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.recipient-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .2s ease}.recipient-card:hover{box-shadow:0 4px 8px #00000026}.recipient-card.editing{border-color:#4a90e2;border-width:2px}.recipient-card h3{margin:0 0 15px;font-size:18px;color:#333;font-weight:600}.recipient-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.recipient-header h3{margin:0;flex:1}.recipient-actions{display:flex;gap:8px}.btn-edit,.btn-delete{padding:6px 12px;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s ease}.btn-edit{background-color:#4a90e2;color:#fff}.btn-edit:hover{background-color:#357abd}.btn-delete{background-color:#f44336;color:#fff}.btn-delete:hover{background-color:#da190b}.recipient-details{color:#666;font-size:14px}.recipient-details p{margin:8px 0}.recipient-details strong{color:#333;margin-right:8px}.recipient-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:5px;font-weight:500;color:#555;font-size:14px}.form-actions{display:flex;gap:10px;margin-top:10px}@media(max-width:768px){.recipients-grid{grid-template-columns:1fr}.header-section{flex-direction:column;align-items:flex-start;gap:15px}}.how-to-container{width:1200px;max-width:100%;margin:0 auto;padding:30px 20px;flex:1;box-sizing:border-box}.how-to-header{margin-bottom:30px}.how-to-header h1{font-size:32px;color:#333;margin:0;font-weight:600}.how-to-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px;margin-bottom:25px}.how-to-card h2{font-size:24px;color:#333;margin:0 0 20px;font-weight:600;border-bottom:2px solid #4a90e2;padding-bottom:10px}.how-to-card p{font-size:14px;line-height:1.6;color:#555;margin-bottom:15px}.how-to-card .intro-text{font-size:15px;color:#666;margin-bottom:25px}.how-to-step{display:flex;gap:20px;margin-bottom:35px;padding-bottom:35px;border-bottom:1px solid #e0e0e0}.how-to-step:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.step-number{flex-shrink:0;width:40px;height:40px;background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;box-shadow:0 2px 6px #4a90e24d}.step-content{flex:1}.step-content h3{font-size:20px;color:#333;margin:0 0 12px;font-weight:600}.step-content p{font-size:14px;line-height:1.6;color:#555;margin-bottom:12px}.step-content ul,.step-content ol{margin:12px 0;padding-left:25px}.step-content li{font-size:14px;line-height:1.8;color:#555;margin-bottom:8px}.step-content li strong{color:#333;font-weight:600}.info-group{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px;border-left:3px solid #4a90e2}.info-label{font-weight:600;color:#333;margin-bottom:8px!important;font-size:15px!important}.tip-text{background:#e8f4f8;border-left:4px solid #4a90e2;padding:12px 15px;margin-top:15px!important;border-radius:4px;font-size:14px!important;color:#2c5f7d!important}.feature-section{margin-bottom:30px;padding:20px;background:#fafbfc;border-radius:6px;border:1px solid #e8e8e8}.feature-section:last-child{margin-bottom:0}.feature-section h3{font-size:18px;color:#333;margin:0 0 15px;font-weight:600}.feature-section ol,.feature-section ul{margin:15px 0;padding-left:25px}.feature-section li{font-size:14px;line-height:1.8;color:#555;margin-bottom:8px}.note-text{background:#fff9e6;border-left:4px solid #ffa726;padding:12px 15px;margin-top:15px!important;border-radius:4px;font-size:14px!important;color:#5d4037!important}.calculation-section{margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid #e0e0e0}.calculation-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.calculation-section h3{font-size:18px;color:#333;margin:0 0 12px;font-weight:600}.calculation-section p{font-size:14px;line-height:1.6;color:#555;margin-bottom:12px}.formula-box{font-family:Courier New,monospace;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:15px 20px;border-radius:6px;font-size:15px;font-weight:500;margin:15px 0;box-shadow:0 2px 8px #667eea4d;letter-spacing:.5px}.recalculation-list{background:#f8f9fa;border-left:3px solid #4a90e2;padding:15px 20px 15px 35px;margin:15px 0;border-radius:4px;list-style:none}.recalculation-list li{font-size:14px;line-height:1.8;color:#555;margin-bottom:10px;position:relative;padding-left:20px}.recalculation-list li:before{content:"→";position:absolute;left:0;color:#4a90e2;font-weight:700}.recalculation-list li:last-child{margin-bottom:0}.how-to-tips{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:2px solid #4a90e2}.how-to-tips h2{color:#2c3e50;border-bottom-color:#2c3e50}.how-to-tips ul{margin:20px 0;padding-left:25px}.how-to-tips li{font-size:15px;line-height:1.8;color:#2c3e50;margin-bottom:12px;font-weight:500}.compact-step{margin-bottom:15px;padding-bottom:15px;gap:12px}.compact-step:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.compact-step-number{width:28px;height:28px;font-size:16px}.compact-step .step-content p{font-size:13px;margin-bottom:0}@media(max-width:768px){.how-to-container{padding:20px 15px}.how-to-header h1{font-size:26px}.how-to-card{padding:20px}.how-to-card h2{font-size:20px}.how-to-step{flex-direction:column;gap:15px}.step-number{width:35px;height:35px;font-size:18px}.step-content h3{font-size:18px}.formula-box{font-size:13px;padding:12px 15px}}.navbar{background-color:#fff;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:1000}.navbar-content{max-width:1200px;margin:0 auto;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.navbar-brand{font-size:20px;font-weight:700;color:#333;text-decoration:none;transition:color .2s ease}.navbar-brand:hover{color:#4a90e2}.navbar-links{display:flex;gap:20px;align-items:center}.navbar-toggle{display:none;background:transparent;border:1px solid #e0e0e0;border-radius:6px;padding:8px;cursor:pointer}.navbar-toggle-bar{display:block;width:22px;height:2px;background-color:#333;border-radius:2px}.navbar-toggle-bar+.navbar-toggle-bar{margin-top:5px}.navbar-link{color:#333;text-decoration:none;font-size:15px;font-weight:500;padding:8px 16px;border-radius:4px;transition:all .2s ease}.navbar-link:hover{background-color:#f5f5f5;color:#4a90e2}.navbar-link.active{background-color:#4a90e2;color:#fff}.navbar-link.active:hover{background-color:#357abd;color:#fff}@media(max-width:768px){.navbar-content{position:relative}.navbar-toggle{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0}.navbar-links{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:8px;padding:12px 16px 16px;background:#fff;border-bottom:2px solid #e0e0e0;box-shadow:0 8px 12px #00000014}.navbar-links.is-open{display:flex}.navbar-link{width:100%;padding:10px 12px}}.login-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem;color:#333}.login-card{max-width:420px;margin:0 auto;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:2.5rem;box-shadow:0 2px 8px #00000014}.login-card h1{margin:0 0 .5rem;font-size:2rem;color:#2c2c2c}.login-subtitle{margin:0 0 2rem;color:#666}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-form-group{display:flex;flex-direction:column;gap:.5rem}.login-form-group label{font-weight:600;color:#333}.login-form-group input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit}.login-form-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.login-form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.login-error{padding:.75rem 1rem;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px}.login-submit{padding:.75rem 1.5rem;font-size:1rem;border:none;border-radius:4px;background:#007bff;color:#fff;cursor:pointer;transition:opacity .2s}.login-submit:disabled{opacity:.7;cursor:not-allowed}@media(max-width:600px){.login-container{padding:1.5rem 1rem}.login-card{padding:2rem 1.5rem}}
