.mx-icon-left:before,.mx-icon-right:before,.mx-icon-double-left:before,.mx-icon-double-right:before,.mx-icon-double-left:after,.mx-icon-double-right:after{content:"";position:relative;top:-1px;display:inline-block;width:10px;height:10px;vertical-align:middle;border-style:solid;border-color:currentColor;border-width:2px 0 0 2px;border-radius:1px;box-sizing:border-box;transform-origin:center;transform:rotate(-45deg) scale(.7)}.mx-icon-double-left:after{left:-4px}.mx-icon-double-right:before{left:4px}.mx-icon-right:before,.mx-icon-double-right:before,.mx-icon-double-right:after{transform:rotate(135deg) scale(.7)}.mx-btn{box-sizing:border-box;line-height:1;font-size:14px;font-weight:500;padding:7px 15px;margin:0;cursor:pointer;background-color:transparent;outline:none;border:1px solid rgba(0,0,0,.1);border-radius:4px;color:#73879c;white-space:nowrap}.mx-btn:hover{border-color:#1284e7;color:#1284e7}.mx-btn-text{border:0;padding:0 4px;text-align:left;line-height:inherit}.mx-scrollbar{height:100%}.mx-scrollbar:hover .mx-scrollbar-track{opacity:1}.mx-scrollbar-wrap{height:100%;overflow-x:hidden;overflow-y:auto}.mx-scrollbar-track{position:absolute;top:2px;right:2px;bottom:2px;width:6px;z-index:1;border-radius:4px;opacity:0;transition:opacity .24s ease-out}.mx-scrollbar-track .mx-scrollbar-thumb{position:absolute;width:100%;height:0;cursor:pointer;border-radius:inherit;background-color:#9093994d;transition:background-color .3s}.mx-zoom-in-down-enter-active,.mx-zoom-in-down-leave-active{opacity:1;transform:scaleY(1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transform-origin:center top}.mx-zoom-in-down-enter,.mx-zoom-in-down-enter-from,.mx-zoom-in-down-leave-to{opacity:0;transform:scaleY(0)}.mx-datepicker{position:relative;display:inline-block;width:210px}.mx-datepicker svg{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.mx-datepicker-range{width:320px}.mx-datepicker-inline{width:auto}.mx-input-wrapper{position:relative}.mx-input-wrapper .mx-icon-clear{display:none}.mx-input-wrapper:hover .mx-icon-clear{display:block}.mx-input-wrapper:hover .mx-icon-clear+.mx-icon-calendar{display:none}.mx-input{display:inline-block;box-sizing:border-box;width:100%;height:34px;padding:6px 30px 6px 10px;font-size:14px;line-height:1.4;color:#555;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:inset 0 1px 1px #00000013}.mx-input:hover,.mx-input:focus{border-color:#409aff}.mx-input:disabled,.mx-input.disabled{color:#ccc;background-color:#f3f3f3;border-color:#ccc;cursor:not-allowed}.mx-input:focus{outline:none}.mx-input::-ms-clear{display:none}.mx-icon-calendar,.mx-icon-clear{position:absolute;top:50%;right:8px;transform:translateY(-50%);font-size:16px;line-height:1;color:#00000080;vertical-align:middle}.mx-icon-clear{cursor:pointer}.mx-icon-clear:hover{color:#000c}.mx-datepicker-main{font:14px/1.5 Helvetica Neue,Helvetica,Arial,Microsoft Yahei,sans-serif;color:#73879c;background-color:#fff;border:1px solid #e8e8e8}.mx-datepicker-popup{position:absolute;margin-top:1px;margin-bottom:1px;box-shadow:0 6px 12px #0000002d;z-index:2001}.mx-datepicker-sidebar{float:left;box-sizing:border-box;width:100px;padding:6px;overflow:auto}.mx-datepicker-sidebar+.mx-datepicker-content{margin-left:100px;border-left:1px solid #e8e8e8}.mx-datepicker-body{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mx-btn-shortcut{display:block;padding:0 6px;line-height:24px}.mx-datepicker-header{padding:6px 8px;border-bottom:1px solid #e8e8e8}.mx-datepicker-footer{padding:6px 8px;text-align:right;border-top:1px solid #e8e8e8}.mx-calendar-range,.mx-time-range{display:flex}@media (max-width: 750px){.mx-calendar-range,.mx-time-range{flex-direction:column}}.mx-calendar{box-sizing:border-box;width:248px;padding:6px 12px}.mx-calendar+.mx-calendar{border-left:1px solid #e8e8e8}.mx-calendar-header,.mx-time-header{box-sizing:border-box;height:34px;line-height:34px;text-align:center;overflow:hidden}.mx-btn-icon-left,.mx-btn-icon-double-left{float:left}.mx-btn-icon-right,.mx-btn-icon-double-right{float:right}.mx-calendar-header-label{font-size:14px}.mx-calendar-decade-separator{margin:0 2px}.mx-calendar-decade-separator:after{content:"~"}.mx-calendar-content{position:relative;height:224px;box-sizing:border-box}.mx-calendar-content .cell{cursor:pointer}.mx-calendar-content .cell:hover{color:#73879c;background-color:#f3f9fe}.mx-calendar-content .cell.active{color:#fff;background-color:#1284e7}.mx-calendar-content .cell.in-range,.mx-calendar-content .cell.hover-in-range{color:#73879c;background-color:#dbedfb}.mx-calendar-content .cell.disabled{cursor:not-allowed;color:#ccc;background-color:#f3f3f3}.mx-calendar-week-mode .mx-date-row{cursor:pointer}.mx-calendar-week-mode .mx-date-row:hover{background-color:#f3f9fe}.mx-calendar-week-mode .mx-date-row.mx-active-week{background-color:#dbedfb}.mx-calendar-week-mode .mx-date-row .cell:hover,.mx-calendar-week-mode .mx-date-row .cell.active{color:inherit;background-color:transparent}.mx-week-number{opacity:.5}.mx-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;height:100%;box-sizing:border-box;text-align:center}.mx-table th{padding:0;font-weight:500;vertical-align:middle}.mx-table td{padding:0;vertical-align:middle}.mx-table-date td,.mx-table-date th{height:32px;font-size:12px}.mx-table-date .today{color:#2a90e9}.mx-table-date .cell.not-current-month{color:#ccc;background:none}.mx-time{flex:1;width:224px;background:#fff}.mx-time+.mx-time{border-left:1px solid #e8e8e8}.mx-date-time{position:relative;width:248px;height:270px}.mx-date-time .mx-time{position:absolute;top:0;left:0;width:100%;height:100%}.mx-date-time-range{position:relative;width:496px;height:270px}.mx-date-time-range .mx-time-range{position:absolute;top:0;left:0;width:100%;height:100%}.mx-time-header{border-bottom:1px solid #e8e8e8}.mx-time-content{height:224px;box-sizing:border-box;overflow:hidden}.mx-time-columns{display:flex;width:100%;height:100%;overflow:hidden}.mx-time-column{flex:1;position:relative;border-left:1px solid #e8e8e8;text-align:center}.mx-time-column:first-child{border-left:0}.mx-time-column .mx-time-list{margin:0;padding:0;list-style:none}.mx-time-column .mx-time-list:after{content:"";display:block;height:192px}.mx-time-column .mx-time-item{cursor:pointer;font-size:12px;height:32px;line-height:32px}.mx-time-column .mx-time-item:hover{color:#73879c;background-color:#f3f9fe}.mx-time-column .mx-time-item.active{color:#1284e7;background-color:transparent;font-weight:700}.mx-time-column .mx-time-item.disabled{cursor:not-allowed;color:#ccc;background-color:#f3f3f3}.mx-time-option{cursor:pointer;padding:8px 10px;font-size:14px;line-height:20px}.mx-time-option:hover{color:#73879c;background-color:#f3f9fe}.mx-time-option.active{color:#1284e7;background-color:transparent;font-weight:700}.mx-time-option.disabled{cursor:not-allowed;color:#ccc;background-color:#f3f3f3}.berth-chart-container[data-v-3c05433e]{display:flex;width:100%;height:100%;background-color:#fff;overflow:auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;position:relative}.y-axis[data-v-3c05433e]{flex-shrink:0;display:flex;flex-direction:column;justify-content:space-between;padding:2rem 0 .5rem;background-color:#f8f9fa;border-right:1px solid #dee2e6}.y-axis-tick[data-v-3c05433e]{font-size:.75rem;color:#6c757d;text-align:right;padding-right:.5rem;position:relative}.y-axis-tick[data-v-3c05433e]:not(:last-child):after{content:"";position:absolute;bottom:-1px;right:0;width:4px;height:1px;background:#adb5bd}.chart-main-area[data-v-3c05433e]{flex-grow:1;display:flex;flex-direction:column;min-width:1500px}.x-axis[data-v-3c05433e]{flex-shrink:0;display:grid;border-bottom:1px solid #dee2e6;background-color:#f8f9fa}.x-axis-day[data-v-3c05433e]{padding:.5rem 0;text-align:center;font-size:.8rem;font-weight:600;color:#495057;border-right:1px solid #e9ecef}.x-axis-day[data-v-3c05433e]:last-child{border-right:none}.chart-body[data-v-3c05433e]{flex-grow:1;position:relative}.grid-lines-y[data-v-3c05433e],.grid-lines-x[data-v-3c05433e]{position:absolute;inset:0;display:grid;pointer-events:none}.grid-lines-y .grid-line[data-v-3c05433e]{border-bottom:1px dashed #e9ecef}.grid-lines-x .grid-line[data-v-3c05433e]{border-right:1px solid #e9ecef}.ship-block[data-v-3c05433e]{position:absolute;border-radius:4px;box-shadow:0 2px 4px #0000001a;transition:transform .15s ease-in-out,filter .15s ease-in-out,box-shadow .2s ease-in-out;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid}.ship-block[data-v-3c05433e]:hover{z-index:10;transform:scale(1.02);filter:brightness(1.1)}.highlighted-ship[data-v-3c05433e]{z-index:11}.highlighted-ship .ship-label[data-v-3c05433e]{font-weight:900;font-size:.85rem;text-shadow:1px 1px 3px rgba(0,0,0,.7)}.ship-label[data-v-3c05433e]{color:#fff;font-size:.8rem;font-weight:600;padding:.2rem .4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:1px 1px 2px rgba(0,0,0,.5);pointer-events:none}.custom-tooltip[data-v-3c05433e]{position:fixed;background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #dee2e6;border-radius:12px;padding:1rem;box-shadow:0 8px 24px #00000026;z-index:100;pointer-events:none;font-size:.9rem;line-height:1.6;min-width:400px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .2s ease}.tooltip-header[data-v-3c05433e]{font-size:1.1rem;font-weight:700;color:#212529;padding-bottom:.5rem;border-bottom:1px solid #e9ecef;margin-bottom:.75rem}.tooltip-body .tooltip-row[data-v-3c05433e]{display:flex;justify-content:space-between;margin-bottom:.5rem}.tooltip-label[data-v-3c05433e]{font-weight:600;color:#495057;margin-right:1rem}.tooltip-value[data-v-3c05433e]{color:#212529;text-align:right}header[data-v-111ea3f0]{padding:1rem 1.5rem;background-color:#fff;border-bottom:1px solid #dee2e6}.controls[data-v-111ea3f0]{display:flex;align-items:center;justify-content:space-between}.search-group[data-v-111ea3f0],.date-picker[data-v-111ea3f0],.buttons[data-v-111ea3f0],.back-button-group[data-v-111ea3f0]{display:flex;align-items:center;gap:.75rem}.back-button-group h2[data-v-111ea3f0]{font-size:1.2rem;font-weight:600;color:#343a40}.date-picker label[data-v-111ea3f0]{font-size:.9rem;color:#495057}.results[data-v-111ea3f0]{flex-grow:1;display:flex;flex-direction:column;min-height:0;padding:1.5rem;background-color:#fff}.table-container[data-v-111ea3f0]{flex-grow:1;overflow:auto;border:1px solid #dee2e6;border-radius:.5rem}table[data-v-111ea3f0]{width:100%;border-collapse:collapse}th[data-v-111ea3f0],td[data-v-111ea3f0]{padding:.75rem 1rem;text-align:center;border-bottom:1px solid #dee2e6;white-space:nowrap}td[data-v-111ea3f0]{color:#495057;font-size:.9rem}th[data-v-111ea3f0]{background-color:#f8f9fa;position:sticky;top:0;z-index:1;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}tbody tr[data-v-111ea3f0]{cursor:pointer;transition:background-color .15s ease-in-out}tbody tr:last-child td[data-v-111ea3f0]{border-bottom:none}tbody tr[data-v-111ea3f0]:hover{background-color:#f1f3f5}.selected-row[data-v-111ea3f0]{background-color:#dbeafe!important}.average-value-row[data-v-111ea3f0]:not(.selected-row){background-color:#fff9db}.error-message[data-v-111ea3f0]{color:#dc3545;padding:1rem 1.5rem;background-color:#f8d7da}.etd-calculator-wrapper[data-v-a5bdb91a]{padding:2rem 1.5rem;margin:2rem;max-width:800px;margin-left:auto;margin-right:auto}.etd-calculator[data-v-a5bdb91a]{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 12px #0000000d;border:1px solid #e9ecef}.etd-header h2[data-v-a5bdb91a]{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:#2c3e50}.etd-subtitle[data-v-a5bdb91a]{margin-top:0;margin-bottom:1.5rem;color:#576574;font-size:.95rem}.etd-form[data-v-a5bdb91a]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-a5bdb91a]{display:flex;flex-direction:column}.form-group label[data-v-a5bdb91a]{font-weight:500;margin-bottom:.5rem;font-size:.9rem;color:#34495e}.form-group input[data-v-a5bdb91a],.form-group select[data-v-a5bdb91a],.mx-datepicker[data-v-a5bdb91a]{width:100%;padding:.65rem .85rem;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;box-sizing:border-box}.form-group select[data-v-a5bdb91a]{background-color:#fff;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3csvg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px}.form-group select[data-v-a5bdb91a]:disabled{background-color:#e9ecef;cursor:not-allowed}.calculation-section[data-v-a5bdb91a]{margin-top:1rem;border-top:1px solid #e9ecef;padding-top:2rem}.step-actions[data-v-a5bdb91a]{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.step-actions button[data-v-a5bdb91a]{padding:.75rem 1.5rem;border:none;border-radius:6px;background-color:#007bff;color:#fff;cursor:pointer;font-size:1rem}.step-actions button.cancel-btn[data-v-a5bdb91a]{background-color:#dc3545}.step-actions button[data-v-a5bdb91a]:disabled{background-color:#b0b6bb;cursor:not-allowed}.review-table[data-v-a5bdb91a]{border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem}.review-row[data-v-a5bdb91a]{display:flex;align-items:center;padding:.5rem 1rem;border-bottom:1px solid #e9ecef}.review-row[data-v-a5bdb91a]:last-child{border-bottom:none}.review-label[data-v-a5bdb91a]{font-weight:600;width:150px;color:#495057;flex-shrink:0}.review-value[data-v-a5bdb91a]{color:#212529;flex-grow:1}.review-value input[data-v-a5bdb91a]{width:100%;border:none;padding:.5rem;border-radius:4px}.review-value input[data-v-a5bdb91a]:focus{outline:1px solid #007bff}.error-message[data-v-a5bdb91a]{color:#dc3545;font-size:.8rem;margin-top:.25rem}.error-message.full-width[data-v-a5bdb91a]{width:100%;text-align:right;padding-right:.5rem}.etd-result-wrapper[data-v-a5bdb91a]{margin-top:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;border:1px solid #e9ecef}.etd-result-header[data-v-a5bdb91a]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background-color:#f8f9fa;border-bottom:1px solid #e9ecef}.etd-result-header h3[data-v-a5bdb91a]{margin:0;font-size:1.2rem;font-weight:600}.close-btn[data-v-a5bdb91a]{background:none;border:none;cursor:pointer;font-size:1.5rem;line-height:1;color:#6c757d}.etd-result-body[data-v-a5bdb91a]{padding:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;border-bottom:1px solid #e9ecef}.result-item[data-v-a5bdb91a]{background-color:#f8f9fa;padding:1rem;border-radius:8px}.result-item.main-result[data-v-a5bdb91a]{grid-column:1 / -1;background-color:#e7f3ff;border-left:5px solid #007bff}.gantt-chart-container[data-v-a5bdb91a]{height:500px;padding:1rem}.schedule-table-container[data-v-a5bdb91a]{padding:1rem}.schedule-table[data-v-a5bdb91a]{width:100%;border-collapse:collapse;margin-top:1rem}.schedule-table th[data-v-a5bdb91a],.schedule-table td[data-v-a5bdb91a]{border:1px solid #e9ecef;padding:.75rem;text-align:left}.schedule-table th[data-v-a5bdb91a]{background-color:#f8f9fa}.highlighted-ship-row[data-v-a5bdb91a]{background-color:#e7f3ff}*,*:before,*:after{box-sizing:border-box;margin:0;position:relative;font-weight:400}body{min-height:100vh;color:#2c3e50;background:#f4f7f9;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app-container{width:100%;max-width:95vw;margin:0 auto}.main-nav{display:flex;justify-content:center;background-color:#fff;border-bottom:1px solid #dee2e6;padding:.5rem 1.5rem;border-radius:.75rem .75rem 0 0;margin-top:2rem;box-shadow:0 4px 10px #0000000d}.main-nav button{padding:.75rem 1.5rem;border:none;background:none;cursor:pointer;font-size:1rem;font-weight:500;color:#495057;transition:color .2s,border-bottom .2s;border-bottom:3px solid transparent}.main-nav button.active{color:#007bff;border-bottom-color:#007bff}main{background-color:#fff;border-radius:0 0 .75rem .75rem;box-shadow:0 4px 20px #00000014;overflow:hidden}.search-group button,.buttons button,.back-button-group button{font-size:.9rem;font-weight:500;padding:.55rem 1rem;border-radius:.375rem;border:1px solid transparent;cursor:pointer;transition:all .2s ease-in-out;display:flex;align-items:center;gap:.5rem}.search-group button,.back-button-group button{background-color:#0d6efd;color:#fff}.search-group button:hover,.back-button-group button:hover{background-color:#0b5ed7}.buttons button.cancel-btn{background-color:#dc3545;color:#fff}.buttons button.cancel-btn:hover{background-color:#bb2d3b}.buttons button:nth-child(1){background-color:#6c757d;color:#fff}.buttons button:nth-child(1):hover{background-color:#5c636a}.buttons button:nth-child(2){background-color:#198754;color:#fff}.buttons button:nth-child(2):hover{background-color:#157347}.search-group button:disabled,.buttons button:disabled,.back-button-group button:disabled{cursor:not-allowed;opacity:.65}.spinner{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.mx-datepicker{width:auto}.mx-input{border:1px solid #ced4da;border-radius:.375rem;padding:.5rem .75rem;font-size:.9rem;box-shadow:none;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.mx-input:focus,.mx-input:hover{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40}
