@charset "UTF-8";.toast{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:12px 16px;background:var(--bg-card);border-radius:var(--radius-tag);box-shadow:var(--shadow-modal);display:flex;align-items:center;gap:12px;z-index:10000;animation:toastSlideIn .3s ease-out}@keyframes toastSlideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{font-size:20px;font-weight:700;flex-shrink:0}.toast-message{flex:1;font-size:14px;line-height:1.5;color:var(--text-body)}.toast-close{background:none;border:none;font-size:20px;color:var(--text-placeholder);cursor:pointer;padding:0;width:20px;height:20px;flex-shrink:0;line-height:1}.toast-close:hover{color:var(--text-body)}.toast-success{border-left:4px solid var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast-error .toast-icon{color:var(--danger)}.toast-warning{border-left:4px solid var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-info{border-left:4px solid var(--brand)}.toast-info .toast-icon{color:var(--brand)}.searchable-select{position:relative;width:100%;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important;pointer-events:auto}.searchable-select-input,.searchable-select-button{pointer-events:auto}.searchable-select *,.searchable-select *:before,.searchable-select *:after{font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-input{width:100%;padding:.5rem 32px .5rem .5rem;border:1px solid var(--border);border-radius:4px;font-size:.95rem;box-sizing:border-box;background-color:var(--bg-card);transition:border-color .15s ease-in-out;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #3b82f61a}.searchable-select-input::placeholder{color:var(--text-placeholder);font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-button{position:absolute;right:0;top:0;height:100%;display:flex;align-items:center;padding:0 8px;background:transparent;border:none;cursor:pointer;color:var(--text-secondary)}.searchable-select-button:hover{color:var(--text-body)}.searchable-select-icon{width:20px;height:20px}.searchable-select-options{position:absolute;z-index:9000;margin-top:4px;width:100%;max-height:200px;overflow-y:auto;background-color:var(--bg-card);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-options:not([data-headlessui-state~=open]){display:none!important;pointer-events:none!important;visibility:hidden!important}.searchable-select-options.upward{bottom:100%;top:auto;margin-top:0;margin-bottom:4px;max-height:200px}.searchable-select-option{padding:6px 10px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .1s ease;line-height:1.2;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-option.active{background-color:var(--brand-light)}.searchable-select-option:hover{background-color:var(--bg-section)}.searchable-select-option-text{flex:1;font-size:11px;color:var(--text-title);line-height:1.3;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-option-text.selected{font-weight:500;color:var(--brand)}.searchable-select-option-text.empty{color:var(--text-placeholder);font-style:italic}.client-code{color:var(--text-secondary);font-size:10px;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.highlight-match{background-color:#fef08a;color:#854d0e;font-weight:600;padding:1px 2px;border-radius:2px;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-checkmark{color:var(--brand);font-weight:700;margin-left:8px}.searchable-select-no-results{padding:12px;text-align:center;color:var(--text-placeholder);font-size:14px;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-options::-webkit-scrollbar{width:6px}.searchable-select-options::-webkit-scrollbar-track{background:var(--bg-section);border-radius:3px}.searchable-select-options::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.searchable-select-options::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.searchable-select-add-new{padding:8px 12px;cursor:pointer;background-color:var(--bg-section);border-top:1px solid var(--border);color:var(--brand);font-size:12px;font-weight:500;display:flex;align-items:center;transition:background-color .1s ease;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.searchable-select-add-new:hover{background-color:var(--brand-light);color:#1d4ed8}.searchable-select-add-new span{display:inline-flex;align-items:center}.metadata-management{display:flex;flex-direction:column;height:100%;padding:0;gap:10px;overflow:hidden}.metadata-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;padding:10px 20px 0}.metadata-header h3{margin:0;font-size:13px;color:var(--text-body);font-weight:600}.message{padding:6px 12px;border-radius:3px;font-size:11px;flex-shrink:0;margin:0 20px}.message.success{background:#e6f7e6;color:var(--success);border:1px solid var(--success-border)}.message.error{background:var(--danger-bg);color:var(--danger);border:1px solid #ef9a9a}.metadata-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;justify-content:center;align-items:center;z-index:10000}.metadata-form-overlay.nonblocking{background:transparent!important;pointer-events:none!important}.metadata-form-overlay.nonblocking>.metadata-form,.metadata-form-overlay.nonblocking>*{pointer-events:auto!important}.metadata-form{background:var(--bg-card);padding:24px;border-radius:8px;width:500px;max-width:90%;max-height:90vh;overflow-y:auto;border:1px solid var(--border);box-shadow:0 8px 32px #0000002e}.metadata-form h4{margin:0 0 20px;font-size:18px;color:var(--text-body)}.form-field{margin-bottom:16px}.form-field label{display:block;margin-bottom:6px;font-size:14px;color:var(--text-body);font-weight:500}.form-field .required{color:var(--danger)}.form-field input[type=text],.form-field select,.form-field textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;box-sizing:border-box}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--brand)}.form-field textarea{resize:vertical;font-family:inherit}.checkbox-field label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-field input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--brand)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.metadata-list{background:var(--bg-card);border:none;border-top:1px solid var(--border);border-radius:0;flex:1;overflow:auto;display:flex;flex-direction:column;margin:0}.metadata-list table{width:100%;border-collapse:collapse;font-size:11px}.metadata-list th{background:var(--bg-section);padding:6px 8px;text-align:left;font-size:10px;font-weight:600;color:var(--text-body);border-bottom:2px solid var(--border);white-space:nowrap;position:sticky;top:0;z-index:1}.metadata-list td{padding:5px 8px;font-size:11px;color:var(--text-body);border-bottom:1px solid var(--border-disabled)}.metadata-list tbody tr:hover{background:var(--bg-section)}.metadata-list tbody tr:last-child td{border-bottom:none}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:2px 5px;border-radius:2px;font-size:9px;font-weight:500}.status-badge.disabled{background:var(--bg-section);color:var(--text-placeholder)}.actions-cell{white-space:nowrap}.empty-message{text-align:center;color:var(--text-placeholder);padding:30px 16px;font-size:11px}.metadata-management .btn{padding:4px 10px;border:none;border-radius:3px;font-size:11px;cursor:pointer;transition:all .2s}.metadata-management .btn-primary{background:var(--brand);color:#fff}.metadata-management .btn-primary:hover{background:var(--brand-hover)}.metadata-management .btn-secondary{background:var(--bg-page);color:var(--text-body);border:1px solid var(--border)}.metadata-management .btn-secondary:hover{background:var(--border-disabled)eee}.metadata-management .btn-sm{padding:2px 6px;font-size:10px}.metadata-management .btn-text{background:none!important;color:var(--brand);padding:0 4px;border:none}.metadata-management .btn-text:hover{background:var(--brand-light)!important}.metadata-management .btn-text.btn-danger{background:none!important;color:var(--danger)}.metadata-management .btn-text.btn-danger:hover{background:#ffebee!important;color:var(--danger)}.metadata-management .loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--text-secondary);font-size:14px}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.react-datepicker__portal{z-index:999999!important;background-color:#fff0!important;position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important}.react-datepicker__portal .react-datepicker{z-index:999999!important;position:relative!important;background:var(--bg-card)!important;box-shadow:0 20px 60px #0006!important;pointer-events:auto!important;border:2px solid var(--brand)!important}.react-datepicker-popper[data-placement^=top],.datepicker-popper[data-placement^=top],.react-datepicker__portal .react-datepicker-popper[data-placement^=top]{margin-bottom:50px!important}.react-datepicker-popper{z-index:999999!important}.datetime-picker-wrapper,.react-datepicker-wrapper{display:block;width:100%!important;max-width:255px!important}.react-datepicker-popper[data-placement^=bottom]{margin-top:4px!important}.react-datepicker-popper[data-placement^=top]{margin-bottom:8px!important}.custom-datepicker{width:100%;max-width:255px;height:auto;font-family:Microsoft YaHei,SimHei,sans-serif;font-size:.85rem;padding:.25rem .5rem;line-height:1.2;border:1px solid var(--border);border-radius:4px;outline:none;transition:border-color .2s;position:relative;pointer-events:auto!important}.custom-datepicker:hover{border-color:var(--brand)}.custom-datepicker:focus{border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1a}.custom-datepicker:disabled{background-color:var(--bg-page);cursor:not-allowed;color:var(--text-placeholder)}.react-datepicker-popper{z-index:999999!important;pointer-events:auto!important}.react-datepicker-popper *,.react-datepicker__portal *{pointer-events:auto!important}.react-datepicker{font-family:Microsoft YaHei,SimHei,sans-serif;font-size:.85rem;border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 12px #0f172a1a;display:flex;z-index:999999!important;background:var(--bg-card)!important;opacity:1!important}.react-datepicker *,.react-datepicker__day,.react-datepicker__time-list-item{pointer-events:auto!important;-webkit-user-select:none;user-select:none}.react-datepicker__month-container{float:none;width:280px}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.custom-header{display:flex;justify-content:space-between;align-items:center;padding:10px;background-color:var(--brand);pointer-events:auto!important}.custom-header-btn{background:transparent;border:1px solid white;color:#fff;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background-color .2s;pointer-events:auto!important}.custom-header-btn:hover:not(:disabled){background-color:#fff3}.custom-header-btn:disabled{opacity:.5;cursor:not-allowed}.custom-header-select{background:var(--bg-card);border:1px solid white;color:var(--text-body);padding:4px 8px;border-radius:4px;font-size:.85rem;cursor:pointer;margin:0 4px;font-family:Microsoft YaHei,SimHei,sans-serif;pointer-events:auto!important}.custom-header-select:hover{background-color:var(--bg-page)}.react-datepicker__header{background-color:var(--bg-card);border-bottom:1px solid var(--border);padding-top:0}.react-datepicker__current-month,.react-datepicker-time__header{display:none}.react-datepicker__time-container .react-datepicker-time__header{display:block!important}.react-datepicker__day-names{margin-top:8px}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{width:2rem;line-height:2rem;margin:.15rem;color:var(--text-body);pointer-events:auto!important;cursor:pointer}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background-color:var(--brand);color:#fff;pointer-events:auto!important}.react-datepicker__day:hover{background-color:var(--brand-light)}.react-datepicker__day--disabled{color:var(--text-placeholder);cursor:not-allowed;pointer-events:none!important}.react-datepicker__time-container{border-left:1px solid var(--border);float:none;width:100px;display:flex;flex-direction:column;pointer-events:auto!important}.react-datepicker__time-container .react-datepicker__time{background:var(--bg-card);border-bottom-right-radius:4px;pointer-events:auto!important}.react-datepicker__time-container .react-datepicker__header{background-color:var(--brand);color:#fff;padding:8px 0;border-bottom:none;pointer-events:auto!important}.react-datepicker__time-container .react-datepicker-time__header{display:block;color:#fff;font-weight:700;font-size:.85rem;pointer-events:auto!important}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:100%;margin:0;pointer-events:auto!important}.react-datepicker__time-list{padding:0!important;height:250px!important;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent;pointer-events:auto!important}.react-datepicker__time-list::-webkit-scrollbar{width:6px}.react-datepicker__time-list::-webkit-scrollbar-track{background:transparent}.react-datepicker__time-list::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:3px}.react-datepicker__time-list::-webkit-scrollbar-thumb:hover{background-color:var(--text-placeholder)}.react-datepicker__time-list-item{height:auto!important;padding:8px 10px;font-size:.85rem;color:var(--text-body);pointer-events:auto!important;cursor:pointer}.react-datepicker__time-list-item--selected{background-color:var(--brand)!important;color:#fff!important;font-weight:700;pointer-events:auto!important}.react-datepicker__time-list-item:hover{background-color:var(--brand-light)!important}.datetime-input-small.custom-datepicker{font-size:11px;padding:3px 4px;line-height:1.2}.modal-panel,.modal-panel *{font-family:Times New Roman,SimSun,serif!important}.modal-panel label,.modal-panel h4,.modal-title,.selection-header span,.btn-primary,.btn-secondary,.btn-add{font-weight:700!important}.create-project-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:transparent!important;pointer-events:none!important}.create-project-modal-overlay .modal-backdrop{background:transparent!important;pointer-events:none!important}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a73}.modal-container{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;pointer-events:none;background:transparent}.modal-wrapper{display:flex;min-height:100%;align-items:center;justify-content:center;padding:1rem;pointer-events:none;background:transparent}.modal-panel{background:var(--bg-card);border-radius:8px;border:1px solid var(--border-strong);box-shadow:var(--shadow-modal);max-width:600px;width:100%;padding:2rem;position:relative;z-index:1001;pointer-events:auto;max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.modal-panel.modal-panel-wide{max-width:900px}.modal-title{font-size:1.5rem;font-weight:600;color:var(--brand);margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.step-indicator{font-size:.85rem;font-weight:400;color:var(--text-secondary);background:var(--bg-section);padding:4px 12px;border-radius:12px}.modal-panel .modal-content{margin-bottom:.75rem;border:none!important;background:transparent!important;box-shadow:none!important;width:100%!important;max-width:100%!important;border-radius:0!important;outline:none!important;display:flex;flex-direction:column;flex:1;overflow-y:auto;min-height:0}.modal-panel .form-group{margin-bottom:1rem;border:none;outline:none;width:100%;position:relative}.modal-panel .form-row{display:flex;gap:1rem;margin-bottom:1rem;width:100%;align-items:flex-start}.modal-panel .form-row .form-group{flex:1;margin-bottom:0;min-width:0}.modal-panel .form-group label{display:block;font-weight:500;margin-bottom:.4rem;color:var(--text-body);line-height:1.5;position:relative;z-index:1}.modal-panel .form-row .form-group label{min-height:21px;display:flex;align-items:center;z-index:auto}.modal-panel .react-datepicker__portal .react-datepicker{transform:translate(60px,-60px)!important}.modal-panel-wide .react-datepicker__portal .react-datepicker{transform:translate(210px,-80px)!important}body:has(.react-datepicker__portal) .modal-panel-wide{overflow:hidden!important}body:has(.react-datepicker__portal) .modal-panel-wide .modal-body{overflow:hidden!important}.form-input,.form-textarea,.form-select{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:4px;font-size:.95rem;transition:border-color .2s;background:var(--bg-card);pointer-events:auto;box-sizing:border-box}input[type=datetime-local].form-input{height:auto;font-family:Times New Roman,Times,serif;font-size:.85rem;padding:.25rem .5rem;line-height:1.2}.form-row .form-group input[type=text][disabled]{height:auto!important;font-size:.85rem;padding:.25rem .5rem!important;line-height:1.2}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--brand)}.input-error{border-color:var(--danger)!important;background-color:var(--danger-bg)}.error-message{margin-top:8px;font-size:13px;color:var(--danger);line-height:1.5}.form-hint{margin-top:8px;font-size:12px;color:var(--text-secondary);line-height:1.5}.form-file{width:100%;padding:.5rem;border:2px dashed var(--border);border-radius:4px;cursor:pointer}.form-file:hover{border-color:var(--brand)}.target-lang-selector{display:flex;gap:.5rem}.target-lang-selector .form-select{flex:1}.btn-add{padding:.625rem 1.25rem;background:var(--success);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;white-space:nowrap}.btn-add:hover:not(:disabled){background:#047857}.btn-add:disabled{background:var(--border);cursor:not-allowed}.selected-target-langs{margin-top:.5rem}.selected-target-langs label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--text-body)}.lang-tags{display:flex;flex-wrap:wrap;gap:.5rem}.lang-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:var(--brand-light);border:1px solid var(--brand-border);border-radius:20px;font-size:.9rem;color:var(--brand)}.lang-tag span{font-weight:500}.btn-remove{background:none;border:none;color:var(--brand);font-size:1.25rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.btn-remove:hover{background:var(--brand-light)}.file-list{margin-top:.75rem;padding:.75rem;background:var(--bg-section);border-radius:4px}.file-list p{font-weight:500;margin-bottom:.5rem}.file-list ul{list-style:none;padding:0;margin:0}.file-list li{padding:.25rem 0;font-size:.9rem;color:var(--text-secondary)}.upload-hint{margin-top:.75rem;font-size:.85rem;color:var(--text-placeholder);line-height:1.5;margin-bottom:0}.file-upload-section{margin-bottom:.75rem}.file-upload-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--brand);color:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s;font-size:.85rem}.file-upload-button:hover{background:var(--brand-hover)}.file-input-hidden{display:none}.upload-icon{font-size:1rem;line-height:1}.file-list-container{border:1px solid var(--border);border-radius:6px;overflow:hidden;background:#fff;flex:1;display:flex;flex-direction:column;min-height:0;max-height:none}.file-list-header{display:flex;align-items:center;padding:.35rem .5rem;background:var(--bg-section);font-weight:600;font-size:.75rem;color:var(--text-secondary);border-bottom:1px solid var(--border);font-family:Times New Roman,SimSun,serif}.file-list-items{flex:1;overflow-y:auto;min-height:0}.file-list-item{display:flex;align-items:center;padding:.4rem .5rem;border-bottom:1px solid var(--border-disabled);transition:background .15s;font-family:Times New Roman,SimSun,serif;min-height:28px}.file-list-item:last-child{border-bottom:none}.file-list-item:hover{background:var(--bg-section)}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-body);font-size:.8rem}.file-size{color:var(--text-secondary);font-size:.75rem}.file-delete-btn{background:transparent;border:none;color:var(--danger);font-size:1.1rem;line-height:1;cursor:pointer;padding:0;margin:0;transition:all .2s;font-weight:700;width:100%;text-align:center}.file-delete-btn:hover{color:var(--danger);transform:scale(1.2)}.file-list-summary{padding:.35rem .5rem;background:var(--bg-section);border-top:1px solid #e0e0e0;font-size:.75rem;color:var(--text-secondary);text-align:center}.file-list-empty{padding:2rem 1rem;text-align:center;color:var(--text-placeholder);font-size:.85rem;border:2px dashed var(--border);border-radius:6px;background:var(--bg-section);flex:1;display:flex;align-items:center;justify-content:center;min-height:200px}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap;align-items:center}.btn-primary,.btn-secondary{padding:.625rem 1.5rem;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:disabled{background:var(--border);cursor:not-allowed}.btn-secondary{background:var(--bg-section);color:var(--text-body)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.step-desc{margin:0 0 1rem;color:var(--text-secondary);font-size:.95rem}.loading-hint{text-align:center;padding:2rem;color:var(--text-placeholder)}.selection-lists{display:flex;flex-direction:column;gap:0;flex:1;overflow-y:auto}.selection-section{border:none;border-radius:0;padding:0;background:transparent}.selection-section h4{display:none}.empty-hint{color:var(--text-placeholder);font-size:.9rem;margin:0;padding:.5rem 0}.selection-list{display:flex;flex-direction:column;gap:.5rem}.selection-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:all .15s}.selection-item:hover{border-color:var(--brand);background:var(--brand-light)}.selection-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.selection-item .item-name{flex:1;font-weight:500;color:var(--text-body)}.selection-item .item-meta{font-size:.85rem;color:var(--text-secondary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-item .item-count{font-size:.85rem;color:var(--brand);background:var(--brand-light);padding:2px 8px;border-radius:10px}.selection-summary{margin:0 0 .75rem;padding:.4rem .75rem;background:var(--success-bg);border-radius:4px;color:var(--success);font-size:.8rem;text-align:center;width:100%}.selection-header{display:flex;align-items:center;padding:.35rem .5rem;background:var(--bg-section);border-radius:4px 4px 0 0;font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:.4rem;font-family:Times New Roman,SimSun,serif}.selection-item-row{display:flex;align-items:center;padding:.35rem .5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;margin-bottom:.4rem;transition:all .15s;font-family:Times New Roman,SimSun,serif;white-space:nowrap;font-size:.8rem;line-height:1.3}.selection-item-row:hover{border-color:var(--brand);background:var(--brand-light)}.selection-item-row input[type=checkbox],.selection-item-row input[type=radio]{cursor:pointer;margin:0 auto;flex-shrink:0}.selection-item-row input[type=radio]:disabled{cursor:not-allowed;opacity:.3}.selection-item-row .item-name{font-weight:500;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Times New Roman,SimSun,serif;font-size:.8rem}.selection-item-row .item-count{font-size:.75rem;color:var(--brand);background:var(--brand-light);padding:1px 6px;border-radius:8px;text-align:center;white-space:nowrap;flex-shrink:0;font-family:Times New Roman,serif}.readonly-field{padding:10px 12px;background:#f5f5f5;border:1px solid var(--border);border-radius:4px;color:var(--text-body);font-size:14px;min-height:40px;display:flex;align-items:center}.readonly-list{display:flex;flex-direction:column;gap:8px}.readonly-list-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f5f5f5;border:1px solid var(--border);border-radius:4px}.readonly-list-item .item-name{font-weight:500;color:#333;flex:1}.readonly-list-item .item-meta{font-size:12px;color:var(--text-secondary);flex-shrink:0}.readonly-list-item .badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;flex-shrink:0}.readonly-list-item .badge-primary{background:var(--brand);color:#fff}.project-requirements-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:transparent;pointer-events:none}.project-requirements-modal-container{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;pointer-events:none;background:transparent!important}.project-requirements-modal-wrapper{display:flex;min-height:100%;align-items:center;justify-content:center;padding:1rem;pointer-events:none;background:transparent!important}.project-requirements-modal-panel{position:relative;width:900px;max-width:96vw;max-height:90vh;background:var(--bg-card, #FFFFFF);border-radius:var(--radius-card, 10px);border:1px solid var(--border, #E2E8F0);box-shadow:var(--shadow-modal, 0 8px 32px rgba(15, 23, 42, .12));display:flex;flex-direction:column;pointer-events:auto;overflow:hidden}.project-requirements-modal-panel.is-special-tab-active{height:90vh}.project-requirements-modal-title{margin:0;padding:14px 18px;font-size:15px;font-weight:600;color:var(--text-title, #0F172A);border-bottom:1px solid var(--border, #E2E8F0);background:var(--bg-section, #F5F7FA);border-radius:var(--radius-card, 10px) var(--radius-card, 10px) 0 0;display:flex;justify-content:space-between;align-items:center;cursor:move;-webkit-user-select:none;user-select:none}.pr-close-btn{background:none;border:none;font-size:22px;line-height:1;color:var(--text-secondary, #64748B);cursor:pointer;padding:0 4px}.pr-close-btn:hover{color:var(--danger, #DC2626)}.pr-content{flex:1 1 auto;min-height:0;overflow:hidden;padding:18px;display:flex;flex-direction:column;gap:12px}.pr-loading{padding:60px;text-align:center;color:var(--text-secondary, #64748B)}.pr-tabs{display:flex;flex:0 0 auto;gap:4px;padding-bottom:1px;border-bottom:1px solid var(--border, #E2E8F0)}.pr-tab{padding:8px 16px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-secondary, #64748B);font-size:14px;font-weight:500;cursor:pointer}.pr-tab:hover{color:var(--brand, #2563EB);background:var(--brand-light, #EFF6FF)}.pr-tab.is-active{color:var(--brand, #2563EB);border-bottom-color:var(--brand, #2563EB);font-weight:600}.pr-section{border:1px solid var(--border, #E2E8F0);border-radius:var(--radius-input, 8px);padding:14px;background:var(--bg-section, #F5F7FA);min-height:0;box-sizing:border-box}.pr-general-tab{flex:0 0 auto}.pr-special-tab{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.pr-section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.pr-section-header h4{margin:0;font-size:14px;font-weight:600;color:var(--text-title, #0F172A)}.pr-hint{display:inline-block;margin-top:4px;font-size:12px;color:var(--text-secondary, #64748B)}.pr-general-template-controls,.pr-special-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.pr-general-template-controls select,.pr-special-toolbar select{min-width:280px;padding:6px 8px;border:1px solid var(--border, #E2E8F0);border-radius:var(--radius-input, 8px);background:var(--bg-card, #FFFFFF);font-size:13px;color:var(--text-body, #334155)}.pr-template-actions{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.pr-link-btn{background:none;border:none;color:var(--brand, #2563EB);font-size:12px;cursor:pointer;padding:4px 6px}.pr-link-btn:hover:not(:disabled){color:var(--brand-hover, #1D4ED8);text-decoration:underline}.pr-link-btn:disabled{color:var(--text-placeholder, #94A3B8);cursor:not-allowed}.pr-danger-link{color:var(--danger, #DC2626)}.pr-danger-link:hover:not(:disabled){color:var(--danger-hover, #B91C1C)}.pr-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:6px;background:var(--bg-card, #FFFFFF);border:1px solid var(--border, #E2E8F0);border-bottom:none;border-radius:var(--radius-input, 8px) var(--radius-input, 8px) 0 0;align-items:center}.pr-fmt-btn,.pr-symbol-btn{min-width:28px;height:26px;padding:0 6px;border:1px solid transparent;background:transparent;border-radius:var(--radius-tag, 4px);font-size:12px;color:var(--text-body, #334155);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pr-fmt-btn:hover,.pr-symbol-btn:hover{background:var(--bg-hover, #F1F5F9);border-color:var(--border, #E2E8F0)}.pr-color-btn{width:22px;height:22px;border:1px solid var(--border-strong, #CBD5E1);border-radius:4px;cursor:pointer}.pr-toolbar-sep{width:1px;height:18px;background:var(--border, #E2E8F0);margin:0 4px}.pr-rich-editor{min-height:120px;max-height:240px;overflow-y:auto;padding:10px 12px;background:var(--bg-card, #FFFFFF);border:1px solid var(--border, #E2E8F0);border-radius:0 0 var(--radius-input, 8px) var(--radius-input, 8px);font-size:13px;line-height:1.6;color:var(--text-body, #334155);outline:none}.pr-special-tab .pr-toolbar{flex:0 0 auto}.pr-special-editor{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:contain}.pr-rich-editor:empty:before{content:attr(data-placeholder);color:var(--text-placeholder, #94A3B8);pointer-events:none}.pr-rich-editor:focus{border-color:var(--brand-border, #BFDBFE);box-shadow:0 0 0 2px #2563eb14}.pr-template-editor{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}.pr-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--border, #E2E8F0);background:var(--bg-section, #F5F7FA)}.pr-btn{padding:6px 16px;border:1px solid var(--border, #E2E8F0);background:var(--bg-card, #FFFFFF);color:var(--text-body, #334155);border-radius:var(--radius-btn, 6px);font-size:13px;cursor:pointer;transition:all .15s}.pr-btn:hover:not(:disabled){background:var(--bg-hover, #F1F5F9)}.pr-btn:disabled{opacity:.6;cursor:not-allowed}.pr-btn-primary{background:var(--brand, #2563EB);color:#fff;border-color:var(--brand, #2563EB)}.pr-btn-primary:hover:not(:disabled){background:var(--brand-hover, #1D4ED8);border-color:var(--brand-hover, #1D4ED8)}.pr-template-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:transparent;display:flex;align-items:center;justify-content:center;pointer-events:none}.pr-template-form-panel{width:900px;max-width:94vw;height:min(82vh,720px);max-height:88vh;min-height:0;background:var(--bg-card, #FFFFFF);border-radius:var(--radius-card, 10px);border:1px solid var(--border, #E2E8F0);box-shadow:var(--shadow-modal, 0 8px 32px rgba(15, 23, 42, .12));padding:18px;display:flex;flex-direction:column;gap:12px;pointer-events:auto}.pr-template-form-panel h4{margin:0;font-size:14px;font-weight:600;color:var(--text-title, #0F172A)}.pr-template-form-title{cursor:move;-webkit-user-select:none;user-select:none}.pr-form-field{display:flex;flex-direction:column;gap:6px}.pr-form-field label{font-size:12px;color:var(--text-secondary, #64748B)}.pr-form-field input{padding:7px 10px;border:1px solid var(--border, #E2E8F0);border-radius:var(--radius-input, 8px);font-size:13px;color:var(--text-body, #334155)}.pr-form-field input:focus{outline:none;border-color:var(--brand-border, #BFDBFE)}.pr-template-form-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:8px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:10000}.assignment-modal{background:var(--bg-card);border-radius:var(--radius-modal);width:90%;max-width:1200px;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow-modal);overflow:visible}.assignment-modal.large{max-width:1400px}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-title)}.modal-body{padding:20px;overflow-y:auto;flex:1;position:relative}.assignment-mode-selector{display:flex;align-items:center;margin-bottom:16px;padding:8px 12px;background:var(--bg-section);border:1px solid var(--border);border-radius:4px}.mode-label{font-size:12px;font-weight:500;color:var(--text-body);margin-right:8px}.mode-select{padding:4px 24px 4px 8px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);font-size:12px;color:var(--text-title);cursor:pointer;outline:none;transition:all .2s;min-width:120px}.mode-select:hover{border-color:var(--brand)}.mode-select:focus{border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1f}.empty-state{text-align:center;padding:40px;color:var(--text-secondary);font-size:14px}.assignment-section{margin-bottom:16px}.section-title{margin:0;font-size:13px;font-weight:600;color:var(--text-title)}.assignment-section>.section-title{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border)}.split-assign-btn{padding:4px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;color:var(--text-body);font-size:12px;cursor:pointer;transition:all .2s}.split-assign-btn:hover{background:var(--brand);border-color:var(--brand);color:#fff}.split-assign-btn:disabled{background:var(--bg-section);color:var(--text-placeholder);border-color:var(--border);cursor:not-allowed}.assignment-table{width:100%;border-collapse:collapse;font-size:12px;border:1px solid var(--border)}.assignment-table th{background:var(--bg-section);border:1px solid var(--border);padding:4px 6px;text-align:left;font-weight:600;font-size:11px;color:var(--text-body);line-height:1.2}.assignment-table td{border:1px solid var(--border);padding:4px 6px;vertical-align:middle;line-height:1.3;overflow:visible}.col-name{width:40%;font-weight:500;color:var(--text-title);text-align:left;padding-left:8px;font-size:12px}.col-deadline{width:180px;min-width:180px}.datetime-input{width:100%;padding:4px 6px;border:1px solid var(--border);border-radius:4px;font-size:11px;color:var(--text-body);background:var(--bg-card);outline:none;transition:all .2s}.datetime-input:hover{border-color:var(--brand)}.datetime-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1f}.datetime-input-small{width:100%;padding:3px 4px;border:1px solid var(--border);border-radius:3px;font-size:11px;color:var(--text-body);background:var(--bg-card);outline:none;transition:all .2s}.datetime-input-small:hover{border-color:var(--brand)}.datetime-input-small:focus{border-color:var(--brand);box-shadow:0 0 0 2px #2563eb14}.datetime-input-small:disabled{background:var(--bg-section);color:var(--text-placeholder);cursor:not-allowed;border-color:var(--border)}.col-index{width:40px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.index-cell{position:relative;display:flex;align-items:center;justify-content:center;height:100%}.index-number{display:block;color:var(--text-secondary);font-size:12px}.index-checkbox{display:none;cursor:pointer;width:16px;height:16px}.col-index:hover .index-number{display:none}.col-index:hover .index-checkbox{display:block}.selected-row{background:var(--brand-light)}.selected-row .index-number{display:none}.selected-row .index-checkbox{display:block}.col-role{width:15%;position:relative;overflow:visible}.col-actions{width:15%;text-align:center}.custom-select-wrapper{position:relative;width:100%}.input-with-clear{position:relative;width:100%;display:flex;align-items:center}.search-display{flex:1;padding:4px 24px 4px 8px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);font-size:12px;min-height:24px;line-height:1.3;cursor:text;transition:all .2s;outline:none}.search-display:hover{border-color:var(--brand)}.search-display:focus{border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1f}.search-display::placeholder{color:var(--text-placeholder)}.search-display:disabled{background:var(--bg-section);color:var(--text-placeholder);cursor:not-allowed;border-color:var(--border)}.search-display:disabled::placeholder{color:#d1d5db}.clear-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:none;background:#9ca3af;color:#fff;border-radius:50%;cursor:pointer;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0;opacity:.6}.clear-btn:hover{background:#6b7280;opacity:1}.clear-btn:active{transform:translateY(-50%) scale(.9)}.dropdown-options{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-card);border:1px solid var(--brand);border-radius:4px;box-shadow:var(--shadow-dropdown);max-height:300px;overflow-y:auto;overflow-x:visible;z-index:10010}.dropdown-content{position:fixed!important;background:var(--bg-card);border:1px solid var(--brand);border-radius:4px;box-shadow:var(--shadow-dropdown);max-height:300px;overflow-y:auto;overflow-x:visible;z-index:10010;padding:0!important;margin:0!important;list-style:none!important}.dropdown-content .option-item,.option-item{padding:2px 6px!important;font-size:11px!important;line-height:1!important;cursor:pointer;display:flex!important;align-items:center!important;gap:3px!important;transition:background .15s;margin:0!important;border:none!important;background:var(--bg-card);color:var(--text-title);white-space:nowrap;box-sizing:border-box!important}.option-item:hover{background:var(--brand-light)}.option-item.selected{background:var(--brand);color:#fff}.option-item .checkbox{display:none}.split-btn{padding:6px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;color:var(--brand);font-size:12px;cursor:pointer;transition:all .2s}.split-btn:hover{background:var(--brand-light);border-color:var(--brand)}.segment-row td{padding:0!important;background:var(--bg-section)}.segment-container{padding:16px}.segment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600;color:var(--text-body)}.add-segment-btn{padding:6px 12px;background:var(--brand);border:none;border-radius:4px;color:#fff;font-size:12px;cursor:pointer;transition:all .2s}.add-segment-btn:hover{background:var(--brand-hover)}.empty-segments{text-align:center;padding:20px;color:var(--text-placeholder);font-size:12px}.segment-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:4px;overflow:hidden}.segment-table th{background:var(--bg-section);border:1px solid var(--border);padding:8px 12px;text-align:left;font-weight:600;color:var(--text-body);font-size:12px}.segment-table td{border:1px solid var(--border);padding:8px 12px}.segment-select{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--bg-card)}.segment-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1f}.segment-input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;text-align:center}.segment-input-wide{width:100%;min-width:180px;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px}.segment-input-wide:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1f}.segment-error{color:var(--danger);font-size:11px;margin-top:2px}.segment-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1f}.remove-segment-btn{padding:4px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;color:var(--danger);font-size:12px;cursor:pointer;transition:all .2s}.remove-segment-btn:hover{background:var(--danger-bg);border-color:var(--danger)}.modal-footer{padding:16px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:12px}.cancel-btn,.submit-btn{padding:8px 20px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.cancel-btn{background:var(--bg-card);border:1px solid var(--border);color:var(--text-body)}.cancel-btn:hover{background:var(--bg-section)}.submit-btn{background:var(--brand);border:1px solid var(--brand);color:#fff}.submit-btn:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.ai-translate-modal{max-width:600px;width:90%;font-family:寰蒋闆呴粦,Microsoft YaHei,Arial,sans-serif}.ai-translate-modal *{font-family:寰蒋闆呴粦,Microsoft YaHei,Arial,sans-serif}.engine-list{max-height:400px;overflow-y:auto;border:1px solid var(--border);border-radius:6px;padding:8px}.engine-item{border:2px solid var(--border);border-radius:8px;padding:12px;margin-bottom:10px;cursor:pointer;transition:all .2s;background:var(--bg-card)}.engine-item:hover{border-color:var(--brand-border);background:var(--brand-light)}.engine-item.selected{border-color:var(--brand);background:var(--brand-light)}.engine-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.engine-header input[type=radio]{cursor:pointer}.engine-name{font-weight:600;font-size:15px;color:var(--text-title);flex:1}.engine-type{padding:2px 8px;background:var(--border);border-radius:4px;font-size:12px;color:var(--text-secondary);font-weight:500}.engine-description{color:var(--text-secondary);font-size:13px;margin:6px 0 6px 28px;line-height:1.4}.engine-detail{margin:4px 0 4px 28px;font-size:13px}.detail-label{color:var(--text-secondary);margin-right:6px}.detail-value{color:var(--text-title);font-weight:500}.warning-section{display:none}.ai-translate-modal .radio-group{display:flex;flex-direction:column;gap:6px}.ai-translate-modal .radio-group label{display:flex;align-items:flex-start;gap:6px;padding:4px 8px;border:1px solid var(--border);border-radius:3px;cursor:pointer;transition:all .2s;background:var(--bg-card);width:100%}.ai-translate-modal .radio-group label:hover{border-color:var(--brand-border);background:var(--brand-light)}.ai-translate-modal .radio-group label:has(input[type=radio]:checked){border-color:var(--brand);background:var(--brand-light)}.ai-translate-modal .radio-group input[type=radio]{cursor:pointer;flex-shrink:0;margin-top:2px;width:14px;height:14px}.ai-translate-modal .radio-group label>span{flex:1;word-break:break-word;line-height:1.2;font-size:12px!important;color:var(--text-body)}.ai-translate-modal .radio-group label:has(input[type=radio]:checked)>span{font-weight:600;color:var(--text-title)}.form-select{width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s;background:var(--bg-card)}.ai-translate-modal .engine-detail-box{background:var(--brand-light);border:1px solid var(--brand)!important;border-radius:3px!important;padding:3px 6px!important;margin-top:1px!important;margin-bottom:4px!important}.ai-translate-modal .engine-detail-box p{margin:1px 0!important;font-size:14px!important;color:var(--text-title)!important;line-height:1.2!important}.ai-translate-modal .engine-detail-box .detail-desc{color:var(--text-secondary)!important;font-size:13px!important;margin-top:0!important;line-height:1.2!important}.api-mode-hint{background:var(--bg-card)9e6;border-left:4px solid var(--warning);padding:10px 12px;margin-top:10px;border-radius:4px;color:var(--warning);font-size:13px;line-height:1.5}.api-mode-hint strong{color:var(--warning)}.ai-translate-modal .modal-footer .btn{padding:6px 12px;border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s;background:var(--bg-card);color:var(--text-title);font-weight:400}.ai-translate-modal .modal-footer .btn:hover{background:var(--brand);color:var(--bg-card);border-color:var(--brand)}.ai-translate-modal .modal-footer .btn:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-page);color:var(--text-placeholder);border-color:var(--border)}.ai-translate-modal .modal-footer .btn:disabled:hover{background:var(--bg-page);color:var(--text-placeholder);border-color:var(--border)}.ai-review-modal{max-width:600px;width:90%;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important;position:relative}.ai-review-modal,.ai-review-modal *,.ai-review-modal *:before,.ai-review-modal *:after{font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.ai-review-modal .modal-header h3{font-weight:700!important;font-size:18px!important;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.ai-review-modal .form-group>label{font-weight:700!important;font-size:14px!important;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.ai-review-modal .info-text strong{font-weight:700!important;font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.ai-review-modal select,.ai-review-modal select option,.ai-review-modal input[type=text],.ai-review-modal input[type=radio],.ai-review-modal input[type=checkbox],.ai-review-modal button,.ai-review-modal p,.ai-review-modal span{font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.info-section{background:var(--bg-section);border-radius:6px;padding:12px 16px;margin-bottom:20px}.info-text{margin:6px 0;color:var(--text-body);font-size:14px}.info-text strong{color:var(--text-title);font-weight:600}.empty-state p:first-child{font-size:16px;color:var(--text-secondary);margin-bottom:8px}.empty-state .hint{font-size:13px;color:var(--text-placeholder)}.warning-section{background:#fff9e6;border-left:4px solid #ffc107;border-radius:4px;padding:12px 16px;margin-top:20px}.warning-text{margin:0 0 8px;color:var(--warning);font-size:14px}.workflow-list{margin:8px 0 0 20px;padding:0;color:var(--warning);font-size:13px;line-height:1.6}.workflow-list li{margin:4px 0}.loading{text-align:center;padding:20px;color:var(--text-placeholder);font-size:14px}.radio-group{display:flex;flex-direction:column;gap:6px}.radio-group label{display:flex;align-items:flex-start;gap:6px;padding:4px 8px;border:1px solid var(--border);border-radius:3px;cursor:pointer;transition:all .2s;background:var(--bg-card);width:100%}.radio-group label:hover{border-color:var(--brand-border);background:var(--brand-light)}.radio-group label:has(input[type=radio]:checked){border-color:var(--brand);background:var(--brand-light)}.radio-group input[type=radio]{cursor:pointer;flex-shrink:0;margin-top:2px;width:14px;height:14px}.radio-group label>span{flex:1;word-break:break-word;line-height:1.2;font-size:12px!important;color:var(--text-body)}.radio-group label:has(input[type=radio]:checked)>span{font-weight:600;color:var(--text-title)}.form-select{width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:6px;font-size:13px!important;cursor:pointer;transition:all .2s;background:var(--bg-card)}.form-select:hover{border-color:var(--brand-border)}.form-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2196f31a}.ai-review-modal .engine-detail-box{background:var(--brand-light);border:1px solid var(--brand)!important;border-radius:3px!important;padding:3px 6px!important;margin-top:1px!important;margin-bottom:4px!important}.ai-review-modal .engine-detail-box p{margin:1px 0!important;font-size:14px!important;color:var(--text-title)!important;line-height:1.2!important}.ai-review-modal .engine-detail-box .detail-desc{color:var(--text-secondary)!important;font-size:13px!important;margin-top:0!important;line-height:1.2!important}.modal-overlay--floating{pointer-events:none!important;background:transparent!important}.modal-overlay--floating .modal-content--draggable{pointer-events:auto;box-shadow:var(--shadow-modal)!important;will-change:transform}.modal-header--drag-handle{cursor:move;user-select:none;-webkit-user-select:none}.modal-header--drag-handle .modal-close{cursor:pointer}.project-list{padding:16px 20px;width:100%;margin:0;height:100vh;display:flex;flex-direction:column;background:var(--bg-page)}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-card) var(--radius-card) 0 0}.toolbar-btn{padding:6px 12px!important;border:1px solid var(--border)!important;border-radius:var(--radius-btn)!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important}.toolbar-btn.complete-btn{color:var(--success);border-color:var(--success-border)}.toolbar-btn.complete-btn:hover{background:var(--success)!important;color:var(--bg-card)!important;border-color:var(--success)!important}.toolbar-btn.archive-btn{color:var(--warning);border-color:var(--warning-border)}.toolbar-btn.archive-btn:hover{background:var(--warning)!important;color:var(--bg-card)!important;border-color:var(--warning)!important}.toolbar-btn.reactivate-btn{color:var(--brand);border-color:var(--brand-border)}.toolbar-btn.reactivate-btn:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.create-form{background:#fff;padding:1rem;border-radius:4px;margin-bottom:1rem;display:flex;gap:.5rem}.create-form input,.create-form select{padding:.5rem;border:1px solid #ddd;border-radius:4px;flex:1}.create-form button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer}.create-form button:first-of-type{background:var(--success);color:#fff}.project-table{width:100%;min-width:1480px;min-height:300px;background:var(--bg-card);border-collapse:separate;border-spacing:0;border-radius:0;overflow:hidden;display:block;font-size:12px}.project-table thead{display:block;min-width:1480px}.project-table thead tr{display:flex;min-width:1480px;align-items:center}.project-table tbody{display:block;min-width:1480px;position:relative}.project-table tbody tr{display:flex;min-width:1480px;position:absolute;left:0;top:0;align-items:center}.project-table th,.project-table td{padding:.25rem .5rem;flex-shrink:0;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;overflow:visible;text-overflow:clip}.project-table thead{background:var(--bg-section)}.project-table th{padding:8px 10px;text-align:left;font-weight:600;font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--border)}.project-table .col-select{flex:0 0 40px;text-align:center;vertical-align:middle}.project-table .project-name{flex:0 0 120px;text-align:center}.project-table .project-desc{flex:0 0 80px;text-align:left}.project-table .project-client{flex:0 0 140px;text-align:left}.project-table .project-subject{flex:0 0 80px;text-align:left}.project-table .project-domain,.project-table .project-source-lang,.project-table .project-target-langs{flex:0 0 100px;text-align:left}.project-table .project-manager{flex:0 0 80px;text-align:left}.project-table .project-progress{flex:0 0 100px;text-align:left}.project-table thead .project-progress{text-align:center}.project-table .project-date{flex:0 0 100px;text-align:left}.project-table .project-status{flex:0 0 80px;text-align:center}.project-table tbody tr{border-bottom:1px solid var(--border);transition:background-color .12s}.project-table tbody tr:hover{background-color:var(--bg-hover);cursor:pointer}.project-table tbody tr.selected,.project-table tbody tr.selected:hover{background-color:var(--brand-light)}.project-table tbody tr:last-child{border-bottom:none}.project-table td{padding:6px 10px;font-size:12px;color:var(--text-body);line-height:1.4}.project-name{font-weight:500;color:var(--brand)}.project-desc{color:var(--text-secondary);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-date{color:var(--text-secondary);font-size:11px;text-align:left}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-tag);font-size:11px;font-weight:500;letter-spacing:.2px;border:1px solid transparent}.status-active{background:var(--success-bg);color:var(--success);border-color:var(--success-border)}.status-archived{background:var(--bg-section);color:var(--text-secondary);border-color:var(--border)}.status-in_progress{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.project-list .empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem;color:var(--text-secondary);background:var(--bg-card);border-radius:var(--radius-card);max-height:calc(100vh - 260px)}.project-list .empty-state p{margin-bottom:1rem;font-size:1.1rem}.project-list .empty-state button{padding:8px 20px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-btn);cursor:pointer;font-size:13px}.project-list .empty-state button:hover{background:var(--brand-hover)}.table-container{flex:1;overflow-y:auto;overflow-x:auto;max-height:calc(100vh - 260px);border-radius:0 0 var(--radius-card) var(--radius-card);background:var(--bg-card);width:100%;position:relative}.table-container::-webkit-scrollbar{width:6px;height:6px}.table-container::-webkit-scrollbar-track{background:transparent}.table-container::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.project-list .col-select{width:50px!important;min-width:50px!important;max-width:50px!important;text-align:center;padding:8px 10px!important}.project-list .col-select input[type=checkbox]{width:16px;height:16px;cursor:pointer}.project-list .row-number{color:var(--text-placeholder);font-size:11px;display:inline-block;width:30px!important;text-align:center;vertical-align:middle}.actions{text-align:center}.delete-btn{padding:3px 8px;background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);border-radius:var(--radius-tag);cursor:pointer;font-size:11px;transition:all .15s}.delete-btn:hover{background:var(--danger);color:#fff}.project-actions{display:flex;gap:4px;white-space:nowrap}.action-btn{padding:3px 8px;border:1px solid var(--border);border-radius:var(--radius-tag);cursor:pointer;font-size:11px;font-weight:500;transition:all .12s;background:var(--bg-card);color:var(--text-body)}.complete-btn{color:var(--success);border-color:var(--success-border)}.complete-btn:hover{background:var(--success);color:#fff;border-color:var(--success)}.archive-btn{color:var(--warning);border-color:var(--warning-border)}.archive-btn:hover{background:var(--warning);color:#fff;border-color:var(--warning)}.reactivate-btn{color:var(--brand);border-color:var(--brand-border)}.reactivate-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.action-modal{background:var(--bg-card);border-radius:var(--radius-modal);width:450px;max-width:92vw;box-shadow:var(--shadow-modal)}.action-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 14px;border-bottom:1px solid var(--border)}.action-modal .modal-header h3{margin:0;font-size:15px;font-weight:600;color:var(--text-title)}.action-modal .close-btn{background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-secondary);padding:0;line-height:1;border-radius:var(--radius-tag);transition:all .15s}.action-modal .close-btn:hover{color:var(--text-body);background:var(--bg-hover)}.action-modal .modal-body{padding:20px}.action-modal .action-desc{margin:0 0 14px;color:var(--text-secondary);font-size:13px;line-height:1.6}.action-modal .form-group{display:flex;flex-direction:column;gap:8px}.action-modal .form-group label{font-size:13px;font-weight:500;color:var(--text-body)}.action-modal .form-group select{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-input);font-size:13px;background:var(--bg-card);color:var(--text-body)}.action-modal .form-group select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.action-modal .modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}.action-modal .btn{padding:7px 16px;border-radius:var(--radius-btn);font-size:13px;cursor:pointer;transition:all .15s;font-weight:500}.action-modal .btn-secondary{background:var(--bg-card);border:1px solid var(--border);color:var(--text-body)}.action-modal .btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.action-modal .btn-primary{background:var(--brand);border:1px solid var(--brand);color:#fff}.action-modal .btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.action-modal .btn-primary:disabled{background:var(--text-disabled);border-color:var(--text-disabled);cursor:not-allowed}.status-completed{background:var(--success-bg)!important;color:var(--success)!important;border-color:var(--success-border)!important}.status-archived{background:var(--bg-section)!important;color:var(--text-secondary)!important;border-color:var(--border)!important}.filter-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:16px}.status-tabs{display:flex;gap:4px;background:var(--bg-section);border-radius:var(--radius-btn);padding:3px}.status-tab{padding:6px 14px;border:none;background:transparent;cursor:pointer;font-size:12px;color:var(--text-secondary);border-radius:var(--radius-btn);transition:all .15s;white-space:nowrap}.status-tab:hover{background:var(--border);color:var(--text-body)}.status-tab.active{background:var(--bg-card);color:var(--brand);font-weight:600;box-shadow:var(--shadow-card)}.search-box{position:relative;flex:0 0 340px;display:flex;gap:4px}.search-box .search-type-select{width:65px;padding:7px 4px;border:1px solid var(--border);border-radius:var(--radius-input);font-size:12px;background:var(--bg-card);color:var(--text-body);cursor:pointer;flex-shrink:0}.search-box .search-type-select:focus{outline:none;border-color:var(--brand)}.search-box input{flex:1;padding:7px 62px 7px 12px;border:1px solid var(--border);border-radius:var(--radius-input);font-size:13px;transition:border-color .15s;background:var(--bg-card);color:var(--text-body)}.search-box input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.search-box .clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;color:var(--text-placeholder);cursor:pointer;padding:0 4px;line-height:1;transition:color .15s}.search-box .clear-btn:hover{color:var(--text-body)}.search-box .search-btn{position:absolute;right:32px;top:50%;transform:translateY(-50%);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-tag);padding:4px 8px;font-size:12px;color:var(--text-body);cursor:pointer;transition:all .15s;line-height:1}.search-box .search-btn:hover{background:var(--brand);border-color:var(--brand);color:#fff}.file-search-results{flex:1;display:flex;flex-direction:column;overflow:hidden}.file-search-header{padding:8px 12px;background:var(--bg-section);border-bottom:1px solid var(--border);font-size:13px;color:var(--text-secondary)}.file-search-results .table-container{flex:1;overflow:auto}.file-search-table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed}.file-search-table thead tr,.file-search-table tbody tr{display:table-row}.file-search-table thead tr{background:var(--bg-section)}.file-search-table th,.file-search-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border)}.file-search-table th:nth-child(1),.file-search-table td:nth-child(1){width:40px}.file-search-table th:nth-child(2),.file-search-table td:nth-child(2){width:300px}.file-search-table th:nth-child(3),.file-search-table td:nth-child(3){width:200px}.file-search-table th:nth-child(4),.file-search-table td:nth-child(4){width:100px}.file-search-table th:nth-child(5),.file-search-table td:nth-child(5){width:100px}.file-search-table th:nth-child(6),.file-search-table td:nth-child(6){width:80px}.file-search-table th:nth-child(7),.file-search-table td:nth-child(7){width:120px}.file-search-table tbody tr{transition:background-color .15s;cursor:pointer}.file-search-table .file-name-cell{color:var(--brand);font-weight:500}.file-search-table tbody tr:hover{background-color:var(--bg-hover)}.search-highlight{background-color:#fef08a!important;color:var(--text-title)!important;padding:1px 2px;border-radius:2px}.project-progress{width:150px}.progress-wrapper-new{display:flex;flex-direction:column;gap:2px;width:100%}.assignee-info{display:flex;align-items:baseline;justify-content:center;gap:2px;max-width:100%;overflow:visible;line-height:1.2}.assignee-names{font-size:10px;color:var(--text-secondary);font-weight:500;text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;cursor:default}.assignee-names--multi{cursor:help;border-bottom:1px dashed var(--border-strong)}.assignee-status-label{font-size:10px;font-weight:500;color:var(--success);cursor:help;border-bottom:1px dashed var(--success);position:relative;white-space:nowrap}.assignee-status-label--partial{color:var(--warning);border-bottom-color:var(--warning)}.assignee-tooltip-portal{position:fixed;z-index:99999;background:var(--text-title);color:#fff;font-size:11px;font-weight:400;padding:6px 10px;border-radius:var(--radius-input);white-space:pre-line;pointer-events:none;min-width:120px;max-width:280px;text-align:left;box-shadow:var(--shadow-dropdown);transform:translate(-50%)}.assignee-due{font-size:8px;color:var(--text-placeholder);white-space:nowrap;flex-shrink:0}.progress-bar-new{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden;position:relative}.progress-bar-new .progress-fill{height:100%;background:linear-gradient(90deg,var(--success),#34D399);border-radius:4px;transition:width .3s ease}.progress-bar-new .progress-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:7px;font-weight:600;color:var(--text-title);z-index:1;text-shadow:0 0 2px rgba(255,255,255,.8)}.progress-wrapper{display:flex;align-items:center;position:relative}.progress-bar{width:100%;height:10px;background:var(--border);border-radius:5px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,var(--success),#34D399);border-radius:5px;transition:width .3s ease}.progress-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:7px;color:var(--text-body);font-weight:600;white-space:nowrap;z-index:1;text-shadow:0 0 2px rgba(255,255,255,.8)}.progress-detail{color:var(--text-placeholder);font-size:9px;margin-left:2px}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding:12px 0;margin-top:8px}.page-btn{padding:6px 14px;border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-btn);cursor:pointer;font-size:12px;color:var(--text-body);transition:all .15s}.page-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-info{font-size:12px;color:var(--text-secondary)}.page-size-selector{padding:6px 10px;border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-btn);font-size:12px;cursor:pointer;color:var(--text-body);transition:all .15s}.page-size-selector:hover{border-color:var(--brand)}.page-size-selector:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.project-lang{font-size:12px;color:var(--text-secondary);white-space:nowrap}.toast-notification{position:fixed!important;bottom:20px!important;right:20px!important;z-index:99999!important;animation:slideInUp .3s ease-out;background:var(--text-title)!important;color:var(--bg-card)!important;padding:12px 18px;border-radius:var(--radius-input);box-shadow:var(--shadow-modal);font-size:13px;font-weight:500;min-width:240px;max-width:380px;display:flex;align-items:center;gap:10px}.toast-notification:before{content:'鉁?;
display: inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--success);color:#fff;border-radius:50%;font-size:14px;font-weight:700;flex-shrink:0}.overdue-dot{font-size:14px;margin-right:4px;vertical-align:middle}.pl-revision-diff-badge{display:inline-block;margin-right:3px;width:12px;height:12px;font-size:8px;font-weight:600;line-height:12px;text-align:center;color:#fff;background-color:var(--warning);border-radius:50%;vertical-align:text-top;white-space:nowrap;cursor:default}.skeleton-container{pointer-events:none}.skeleton-row{display:flex;min-width:1480px;border-bottom:1px solid #f0f0f0}.skeleton-box{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px;display:inline-block}.skeleton-container .project-table thead th{padding:8px}.skeleton-container .project-table tbody tr{position:relative!important}.skeleton-container .project-table tbody td{padding:8px}.file-upload-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999}.file-upload-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000040}.file-upload-dialog-container{position:fixed;top:0;left:0;right:0;bottom:0;overflow-y:auto}.file-upload-dialog-inner{display:flex;min-height:100%;align-items:center;justify-content:center;padding:16px}.file-upload-panel{background:var(--bg-card);border-radius:8px;box-shadow:var(--shadow-modal);width:100%;max-width:600px;padding:0;position:relative}.file-upload-title{font-size:18px;font-weight:600;color:var(--text-body);padding:20px 24px;border-bottom:1px solid var(--border);margin:0}.file-upload-content{padding:24px;max-height:500px;overflow-y:auto}.upload-button-section{text-align:center;margin-bottom:20px}.upload-file-button{display:inline-block;padding:10px 24px;background:var(--brand);color:#fff;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;border:none}.upload-file-button:hover{background:var(--brand-hover);box-shadow:0 2px 8px #2563eb4d}.upload-file-button:active{transform:scale(.98)}.upload-hint{margin-top:8px;font-size:12px;color:var(--text-secondary)}.upload-file-list-container{background:var(--bg-section);border:1px solid var(--border);border-radius:6px;overflow:hidden}.upload-file-list-header{display:flex;padding:10px 12px;background:var(--bg-section);border-bottom:1px solid var(--border);font-size:12px;font-weight:600;color:var(--text-secondary)}.upload-file-list-items{max-height:300px;overflow-y:auto}.upload-file-list-item{display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--bg-card);transition:background .15s}.upload-file-list-item:last-child{border-bottom:none}.upload-file-list-item:hover{background:var(--bg-section)}.upload-file-name{font-size:13px;color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-size{font-size:12px;color:var(--text-secondary)}.upload-file-delete-btn{background:transparent;color:var(--danger);border:none;cursor:pointer;font-size:1.1rem;font-weight:700;line-height:1;padding:0;margin:0;transition:all .2s;width:100%;text-align:center}.upload-file-delete-btn:hover:not(:disabled){color:var(--danger);transform:scale(1.2)}.upload-file-delete-btn:disabled{opacity:.5;cursor:not-allowed}.upload-file-list-summary{padding:8px 12px;background:var(--bg-section);font-size:12px;color:var(--text-secondary);text-align:right}.upload-file-list-empty{padding:40px 20px;text-align:center;color:var(--text-placeholder);font-size:14px;background:var(--bg-section);border:1px dashed var(--border);border-radius:6px}.file-upload-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border)}.btn-secondary{padding:8px 16px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.btn-secondary:hover:not(:disabled){background:var(--bg-section);border-color:var(--text-placeholder)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-primary{padding:8px 16px;background:var(--brand);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.btn-primary:hover:not(:disabled){background:var(--brand-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex!important;align-items:center!important;justify-content:center!important;z-index:9999}.modal-container{background:var(--bg-card);border-radius:8px;box-shadow:var(--shadow-modal);display:flex;flex-direction:column}.modal-header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.word-count-modal{width:700px;max-width:90vw;max-height:85vh}.word-count-modal .modal-body{max-height:calc(85vh - 140px);overflow-y:auto;padding:12px}.report-section{margin-bottom:12px}.report-section h3{font-size:13px;font-weight:600;color:var(--text-body);margin-bottom:4px;padding-bottom:2px;border-bottom:1px solid var(--border)}.stats-table,.files-table{width:100%;border-collapse:collapse;font-size:11px;line-height:1;table-layout:fixed}.stats-table th:nth-child(1),.stats-table td:nth-child(1),.files-table th:nth-child(1),.files-table td:nth-child(1){width:40%}.stats-table th:nth-child(2),.stats-table td:nth-child(2),.files-table th:nth-child(2),.files-table td:nth-child(2){width:20%}.stats-table th:nth-child(3),.stats-table td:nth-child(3),.files-table th:nth-child(3),.files-table td:nth-child(3){width:20%}.stats-table th:nth-child(4),.stats-table td:nth-child(4),.files-table th:nth-child(4),.files-table td:nth-child(4){width:20%}.stats-table thead,.files-table thead{background:var(--bg-page)}.stats-table th,.files-table th{padding:0 3px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border);font-size:11px;line-height:1}.stats-table td,.files-table td{padding:0 3px;border-bottom:1px solid var(--border-disabled);font-size:11px;line-height:.9}.files-table td{padding:2px 4px}.stats-table td:first-child,.stats-table th:first-child,.files-table td:first-child,.files-table th:first-child{font-family:Times New Roman,SimSun,serif}.stats-table td:nth-child(2),.stats-table td:nth-child(3),.stats-table td:nth-child(4),.stats-table th:nth-child(2),.stats-table th:nth-child(3),.stats-table th:nth-child(4),.files-table td:nth-child(2),.files-table td:nth-child(3),.files-table td:nth-child(4),.files-table th:nth-child(2),.files-table th:nth-child(3),.files-table th:nth-child(4){text-align:left;font-family:Times New Roman,Arial,sans-serif!important}.stats-table tr:hover,.files-table tr:hover{background:var(--bg-section)}.stats-table tr:first-child{font-weight:600;background:var(--brand-light)}.stats-table tr:first-child:hover{background:#e0f2fe}.highlight-total{color:var(--brand);font-weight:700;font-size:15px}.duplicate-row{background:var(--warning-bg)}.duplicate-row:hover{background:#ffe0b2!important}.duplicate-row td:nth-child(3){color:var(--warning);font-weight:600}.new-row{background:var(--success-bg)}.new-row:hover{background:var(--success-bg)!important}.new-row td:nth-child(3){color:var(--success);font-weight:600}.loading-spinner{text-align:center;padding:60px 20px;color:var(--text-placeholder);font-size:14px}.modal-footer{padding:10px 16px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.btn-secondary{padding:8px 20px;background:var(--bg-page);border:1px solid var(--border);border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--border)}.project-file-system{padding:16px;height:100%;display:flex;flex-direction:column;box-sizing:border-box}.project-file-system.empty-tip{align-items:center;justify-content:center;color:#999;font-size:14px}.pfs-toolbar{display:flex;gap:12px;margin-bottom:12px;align-items:center}.pfs-btn{padding:6px 14px;border-radius:4px;border:1px solid var(--border-color, #d9d9d9);background:var(--bg-card, #fff);color:var(--text-primary, #333);cursor:pointer;font-size:13px;transition:all .2s}.pfs-btn:hover:not(:disabled){border-color:var(--primary-color, #1890ff);color:var(--primary-color, #1890ff)}.pfs-btn:disabled{opacity:.6;cursor:not-allowed}.pfs-btn-primary{background:var(--primary-color, #1890ff);color:#fff;border-color:var(--primary-color, #1890ff)}.pfs-btn-primary:hover:not(:disabled){background:var(--primary-hover, #40a9ff);color:#fff}.pfs-folder-tabs{display:flex;gap:8px;margin-bottom:12px;border-bottom:1px solid var(--border-color, #e8e8e8);padding-bottom:8px}.pfs-folder-tab{padding:6px 16px;border-radius:4px 4px 0 0;border:none;background:transparent;color:var(--text-secondary, #666);cursor:pointer;font-size:13px;position:relative}.pfs-folder-tab:hover{color:var(--primary-color, #1890ff);background:var(--bg-hover, #f5f5f5)}.pfs-folder-tab.active{color:var(--primary-color, #1890ff);background:var(--bg-active, #e6f7ff);font-weight:500}.pfs-content{flex:1;overflow:auto;background:var(--bg-card, #fff);border:1px solid var(--border-color, #e8e8e8);border-radius:4px}.pfs-loading,.pfs-empty{padding:40px 20px;text-align:center;color:#999;font-size:14px}.pfs-table{width:100%;border-collapse:collapse;font-size:13px}.pfs-table th,.pfs-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-color, #f0f0f0)}.pfs-table th{background:var(--bg-header, #fafafa);color:var(--text-primary, #333);font-weight:500;position:sticky;top:0;z-index:1}.pfs-table tbody tr:hover{background:var(--bg-hover, #f5f5f5)}.pfs-filename{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pfs-actions{display:flex;gap:8px;white-space:nowrap}.pfs-action-btn{padding:4px 10px;border-radius:4px;border:1px solid var(--border-color, #d9d9d9);background:var(--bg-card, #fff);color:var(--primary-color, #1890ff);cursor:pointer;font-size:12px}.pfs-action-btn:hover{background:var(--primary-color, #1890ff);color:#fff;border-color:var(--primary-color, #1890ff)}.pfs-action-btn-danger{color:var(--error-color, #ff4d4f);border-color:var(--error-color, #ff4d4f)}.pfs-action-btn-danger:hover{background:var(--error-color, #ff4d4f);color:#fff}.user-select-modal{width:500px;max-width:90vw;max-height:600px}.user-select-modal .modal-body{padding:20px;max-height:450px;overflow-y:auto}.user-select-modal .search-box{margin-bottom:15px}.user-select-modal .search-box input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px}.user-select-modal .search-box input:focus{outline:none;border-color:#4caf50}.user-select-modal .user-list{border:1px solid var(--border);border-radius:4px;max-height:350px;overflow-y:auto}.user-select-modal .user-item{display:flex;align-items:center;padding:10px 12px;cursor:pointer;transition:background-color .2s;border-bottom:1px solid var(--bg-section)}.user-select-modal .user-item:last-child{border-bottom:none}.user-select-modal .user-item:hover{background-color:var(--bg-page)}.user-select-modal .user-item.selected{background-color:var(--success-bg)}.user-select-modal .user-item input[type=radio]{margin-right:10px;cursor:pointer}.user-select-modal .user-info{display:flex;align-items:center;gap:8px}.user-select-modal .username{font-weight:500;color:var(--text-body)}.user-select-modal .fullname{color:var(--text-secondary);font-size:13px}.user-select-modal .empty-state{text-align:center;padding:40px 20px;color:var(--text-placeholder)}.user-select-modal .loading{text-align:center;padding:40px 20px;color:var(--text-secondary)}.user-select-modal .modal-footer{padding:15px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}.user-select-modal .btn-cancel,.user-select-modal .btn-confirm{padding:8px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.user-select-modal .btn-cancel{background-color:var(--bg-page);color:var(--text-secondary)}.user-select-modal .btn-cancel:hover{background-color:var(--border)}.user-select-modal .btn-confirm{background-color:#4caf50;color:#fff}.user-select-modal .btn-confirm:hover:not(:disabled){background-color:#45a049}.user-select-modal .btn-confirm:disabled{background-color:var(--text-placeholder);cursor:not-allowed}.file-assignment-modal{width:90%;max-width:1000px;max-height:80vh;overflow-y:auto;overflow-x:visible}.modal-content{background:var(--bg-card);border-radius:12px;box-shadow:var(--shadow-modal);position:relative;overflow:visible}.modal-header h2{margin:0;font-size:20px;color:var(--text-title)}.close-btn{background:none;border:none;font-size:28px;color:var(--text-placeholder);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.close-btn:hover{color:var(--text-secondary)}.modal-body{padding:24px;max-height:calc(80vh - 120px);overflow-y:auto;overflow-x:visible}.assignment-table{width:100%;border-collapse:collapse}.assignment-table thead th{background:var(--bg-section);padding:12px;text-align:left;font-weight:600;color:var(--text-body);border-bottom:2px solid var(--border)}.assignment-table tbody td{padding:12px;border-bottom:1px solid var(--border)}.assignment-table tbody tr:hover{background:var(--bg-section)}.assignment-table tbody tr.status-returned{background:var(--warning-bg)}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.status-assigned{background:var(--brand-light);color:var(--brand)}.status-badge.status-accepted{background:var(--success-bg);color:var(--success)}.status-badge.status-in_progress{background:#e0e7ff;color:#4338ca}.status-badge.status-delivered{background:var(--success-bg);color:var(--success)}.status-badge.status-returned{background:var(--warning-bg);color:var(--warning)}.action-btn{padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.recall-btn{background:var(--warning);color:#fff}.recall-btn:hover{background:var(--warning)}.reassign-btn{background:var(--brand);color:#fff}.reassign-btn:hover{background:var(--brand)}.loading,.empty-state{text-align:center;padding:40px;color:var(--text-secondary)}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1001}.dialog{background:var(--bg-card);border-radius:12px;padding:24px;width:90%;max-width:400px;box-shadow:var(--shadow-modal);max-height:80vh;overflow:visible}.dialog h3{margin:0 0 16px;font-size:18px;color:var(--text-title)}.dialog-desc{margin:0 0 16px;font-size:14px;color:var(--text-secondary);line-height:1.6}.user-select{width:100%;padding:10px;border:1px solid var(--border);border-radius:6px;font-size:14px;margin-bottom:16px;max-height:300px;overflow-y:auto}.user-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #3b82f61a}.dialog-actions{display:flex;gap:8px;justify-content:flex-end}.dialog-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn{background:var(--bg-section);color:var(--text-body)}.cancel-btn:hover{background:var(--border)}.confirm-btn{background:var(--brand);color:#fff}.confirm-btn:hover:not(:disabled){background:var(--brand)}.confirm-btn:disabled{opacity:.5;cursor:not-allowed}.export-modal{background:var(--bg-card);border-radius:8px;width:500px;max-width:90%;box-shadow:var(--shadow-modal)}.export-options{display:flex;flex-direction:column;gap:12px}.export-option{display:flex;align-items:flex-start;padding:16px;border:2px solid var(--border);border-radius:6px;cursor:pointer;transition:all .2s}.export-option:hover{border-color:var(--brand);background:var(--bg-page)}.export-option input[type=radio]{margin-right:12px;margin-top:4px;flex-shrink:0}.export-option input[type=radio]:checked+.option-content{color:var(--brand)}.option-content strong{display:block;font-size:14px;margin-bottom:4px}.option-content p{font-size:13px;color:var(--text-secondary);margin:0}.glossary-export-modal{background:var(--bg-card);border-radius:8px;width:700px;max-width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-modal)}.glossary-export-modal .modal-body{max-height:500px;overflow-y:auto}.glossary-info{padding:12px;background:var(--bg-page);border-radius:4px;margin-bottom:16px}.glossary-info p{margin:0;font-size:13px;color:var(--text-secondary)}.glossary-table-container{border:1px solid var(--border);border-radius:4px;overflow:hidden}.glossary-table{width:100%;border-collapse:collapse}.glossary-table thead{background:var(--bg-page);position:sticky;top:0;z-index:1}.glossary-table th{padding:12px;text-align:left;font-weight:600;font-size:13px;border-bottom:2px solid var(--border)}.glossary-table td{padding:10px 12px;font-size:13px;border-bottom:1px solid var(--bg-section)}.glossary-table tbody tr:hover{background:var(--bg-section)}.glossary-table tbody tr.selected{background:var(--brand-light)}.checkbox-col{width:60px;text-align:center}.term-col{width:calc((100% - 60px)/2)}.index-number{color:var(--text-placeholder);font-size:12px}.loading,.empty-state{padding:40px;text-align:center;color:var(--text-placeholder)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:2000}.quality-score-modal{background:var(--bg-card);border-radius:8px;box-shadow:var(--shadow-modal);width:500px;max-width:90%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e4e7ed}.modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-title);font-family:瀹嬩綋,Times New Roman,serif}.file-info{background:var(--bg-section);border-radius:6px;padding:12px;margin-bottom:20px}.info-row{display:flex;margin-bottom:6px;font-size:14px}.info-row:last-child{margin-bottom:0}.info-label{color:var(--text-body);min-width:80px;font-family:瀹嬩綋,Times New Roman,serif}.info-value{color:var(--text-title);font-weight:500;font-family:瀹嬩綋,Times New Roman,serif}.score-section,.qualified-section,.reason-section{margin-bottom:16px}.section-label{display:block;font-size:14px;font-weight:600;color:var(--text-title);margin-bottom:8px;font-family:瀹嬩綋,Times New Roman,serif}.threshold-hint{font-size:12px;font-weight:400;color:var(--text-secondary);margin-left:8px}.auto-hint{font-size:12px;font-weight:400;color:var(--brand);margin-left:8px}.score-input-group{display:flex;align-items:center;gap:8px;margin-bottom:8px}.score-input-large{width:80px;height:32px;padding:0 8px;border:1px solid var(--border);border-radius:4px;font-size:14px;font-weight:500;color:var(--text-title);text-align:center;font-family:Times New Roman,serif;transition:all .2s}.score-input-large:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #409eff1a}.score-unit{font-size:16px;color:var(--text-body);font-weight:500;font-family:瀹嬩綋,Times New Roman,serif}.quality-score-modal .radio-group{display:flex!important;flex-direction:row!important;align-items:center!important;gap:24px!important}.quality-score-modal .radio-label{display:inline-flex!important;align-items:center!important;cursor:pointer;-webkit-user-select:none;user-select:none}.quality-score-modal .radio-label input[type=radio]{margin-right:8px;cursor:pointer;width:16px;height:16px}.radio-text{font-size:14px;font-weight:500;font-family:瀹嬩綋,Times New Roman,serif;color:var(--text-title)}.radio-text.qualified,.radio-text.unqualified{color:var(--text-title)}.reason-textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:4px;font-size:14px;color:var(--text-title);resize:vertical;font-family:瀹嬩綋,Times New Roman,serif;box-sizing:border-box;transition:border-color .2s}.reason-textarea:focus{outline:none;border-color:var(--brand)}.reason-textarea::placeholder{color:var(--text-placeholder)}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e4e7ed}.btn-cancel,.btn-submit{padding:8px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .2s;font-family:瀹嬩綋,Times New Roman,serif}.btn-cancel{background:var(--bg-card);border-color:var(--border);color:var(--text-body)}.btn-cancel:hover:not(:disabled){background:var(--bg-section);border-color:var(--text-placeholder)}.btn-submit{background:var(--brand);color:#fff}.btn-submit:hover:not(:disabled){background:var(--brand-light)}.btn-cancel:disabled,.btn-submit:disabled{cursor:not-allowed;opacity:.6}.diff-container{font-family:var(--editor-font, "Times New Roman", "MS Mincho", "Batang", "SimSun", "PMingLiU", serif);font-size:var(--editor-size, 12px);letter-spacing:normal;text-align:left;text-justify:none;word-spacing:normal}.diff-equal{font-family:var(--editor-font, "Times New Roman", "MS Mincho", "Batang", "SimSun", "PMingLiU", serif);font-size:var(--editor-size, 12px)}.diff-delete{color:#ff1a1a;text-decoration:line-through;text-decoration-color:#ff1a1a;padding:0;border-radius:2px;font-family:var(--editor-font, "Times New Roman", "MS Mincho", "Batang", "SimSun", "PMingLiU", serif);font-size:var(--editor-size, 12px);letter-spacing:normal;word-spacing:normal}.diff-delete-punctuation{padding:0;border-radius:2px}.diff-insert{color:#06f;text-decoration:underline;text-decoration-color:#06f;padding:0;border-radius:2px;font-family:var(--editor-font, "Times New Roman", "MS Mincho", "Batang", "SimSun", "PMingLiU", serif);font-size:var(--editor-size, 12px);letter-spacing:normal;word-spacing:normal}.diff-insert-punctuation{padding:0;border-radius:2px}.diff-tag-wrapper{display:inline-block;position:relative;vertical-align:-1px;margin:0 1px}.diff-delete .diff-tag-wrapper:before{content:"";position:absolute;top:50%;left:-1px;right:-1px;height:1.5px;background:#ff1a1a;pointer-events:none;z-index:1}.diff-delete .diff-tag-wrapper:after{content:"";position:absolute;bottom:-2px;left:-1px;right:-1px;height:1.5px;background:#ff1a1a;pointer-events:none}.diff-insert .diff-tag-wrapper:after{content:"";position:absolute;bottom:-2px;left:-1px;right:-1px;height:1.5px;background:#06f;pointer-events:none}.ext-update-modal{background:var(--bg-card);border-radius:8px;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;max-height:90vh;width:900px;max-width:96vw}.ext-update-modal.step-upload{width:480px}.ext-update-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}.ext-update-header h3{margin:0;font-size:15px;font-weight:600;color:var(--text-title)}.ext-upload-area{padding:32px 24px;display:flex;flex-direction:column;align-items:center;gap:16px}.ext-drop-zone{width:100%;border:2px dashed var(--border);border-radius:8px;padding:32px 16px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;color:var(--text-secondary);font-size:14px}.ext-drop-zone:hover,.ext-drop-zone.dragover{border-color:var(--brand);background:var(--brand-light);color:var(--brand)}.ext-drop-zone .ext-drop-icon{font-size:32px;margin-bottom:8px}.ext-drop-zone input[type=file]{display:none}.ext-selected-file{display:flex;align-items:center;gap:8px;background:var(--success-bg);border:1px solid #86efac;border-radius:6px;padding:8px 12px;font-size:13px;color:var(--success);width:100%}.ext-selected-file span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ext-upload-hint{font-size:12px;color:var(--text-placeholder);text-align:center}.ext-parsing{padding:40px 24px;text-align:center;color:var(--text-secondary);font-size:14px}.ext-parsing .spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 12px}.ext-error-box{padding:24px;margin:16px 24px;background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:6px;color:var(--danger);font-size:13px}.ext-preview-body{flex:1;overflow-y:auto;min-height:0}.ext-preview-summary{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-section);border-bottom:1px solid var(--border);font-size:13px;color:var(--text-body);gap:12px;flex-wrap:wrap}.ext-preview-summary .summary-stats{display:flex;gap:12px;align-items:center}.ext-preview-summary .stat-changed{color:var(--warning);font-weight:500}.ext-preview-summary .stat-total{color:var(--text-secondary)}.ext-preview-summary .summary-actions{display:flex;gap:8px}.ext-preview-summary .btn-link{background:none;border:none;color:var(--brand);cursor:pointer;font-size:12px;padding:2px 4px;text-decoration:underline}.ext-preview-table{width:100%;border-collapse:collapse;font-size:13px}.ext-preview-table th{background:var(--bg-section);padding:7px 10px;text-align:left;font-weight:500;color:var(--text-secondary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.ext-preview-table td{padding:7px 10px;border-bottom:1px solid var(--bg-section);vertical-align:top}.ext-preview-table tr.unchanged td{color:var(--text-placeholder)}.ext-preview-table tr.changed td{background:var(--warning-bg)}.ext-preview-table tr:hover td{background:var(--bg-section)}.ext-preview-table tr.changed:hover td{background:var(--warning-bg)}.ext-cell-source{max-width:220px;word-break:break-word;color:var(--text-secondary);white-space:normal}.ext-cell-old,.ext-cell-new{max-width:260px}.ext-cell-old .no-content,.ext-cell-new .no-content{color:var(--border);font-style:italic}.badge-changed{display:inline-block;background:var(--warning-bg);color:var(--warning);border:1px solid #fde68a;border-radius:4px;padding:1px 6px;font-size:11px}.badge-same{display:inline-block;background:var(--bg-section);color:var(--text-placeholder);border-radius:4px;padding:1px 6px;font-size:11px}.badge-applied{display:inline-block;background:var(--success-bg);color:var(--success);border:1px solid #6ee7b7;border-radius:4px;padding:1px 6px;font-size:11px}.ext-cell-status{text-align:center;vertical-align:middle;white-space:nowrap;min-width:60px}.ext-cell-status>*+*{display:block;margin-top:4px}.btn-apply-single{display:inline-block;background:var(--brand);color:#fff;border:none;border-radius:4px;padding:2px 8px;font-size:11px;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-apply-single:hover:not(:disabled){background:var(--brand)}.btn-apply-single:disabled{background:var(--brand-border);cursor:not-allowed}.ext-update-footer{padding:12px 16px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;align-items:center}.ext-update-footer .footer-info{flex:1;font-size:12px;color:var(--text-placeholder)}.ext-filter-tabs{display:flex;gap:4px;margin-left:8px}.ext-filter-tab{padding:3px 10px;border-radius:4px;font-size:12px;border:1px solid var(--border);background:var(--bg-card);cursor:pointer;color:var(--text-body)}.ext-filter-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.ext-cell-new-inner{display:flex;align-items:flex-start;gap:4px;min-width:0}.ext-cell-new-content{flex:1;min-width:0}.ext-shift-btns{display:flex;flex-direction:column;gap:2px;opacity:0;transition:opacity .12s;flex-shrink:0}.ext-shift-btns.visible,tr:hover .ext-shift-btns{opacity:1}.ext-shift-btn{display:flex;align-items:center;justify-content:center;width:20px;height:18px;font-size:11px;line-height:1;border:1px solid var(--border);border-radius:3px;background:var(--bg-section);color:var(--text-body);cursor:pointer;padding:0;transition:background .1s,border-color .1s}.ext-shift-btn:hover{background:var(--brand);border-color:var(--brand);color:#fff}.ext-shift-hint{color:var(--text-placeholder);font-size:12px;cursor:help}.ext-cell-content-clickable{cursor:pointer;border-radius:3px;padding:2px 4px;display:flex;align-items:flex-start;gap:4px;flex-wrap:wrap;min-height:20px;transition:background .1s;position:relative}.ext-cell-content-clickable:hover{background:var(--brand-light);outline:1px dashed var(--brand-border)}.ext-reset-btn{flex-shrink:0;font-size:12px;color:var(--text-placeholder);background:none;border:1px solid var(--border);border-radius:3px;padding:0 4px;cursor:pointer;line-height:1.4;margin-left:4px}.ext-reset-btn:hover{color:var(--danger);border-color:var(--danger-border)}.ext-inline-edit{display:flex;flex-direction:column;gap:4px;width:100%}.ext-edit-hint{font-size:11px;color:var(--text-secondary);background:var(--brand-light);border:1px solid #bae6fd;border-radius:3px;padding:2px 6px}.ext-edit-textarea{width:100%;font-size:13px;font-family:inherit;border:1px solid var(--brand);border-radius:4px;padding:4px 6px;resize:vertical;outline:none;box-sizing:border-box;min-height:44px}.ext-edit-actions{display:flex;gap:6px;justify-content:flex-end}.ext-edit-ok{font-size:12px;padding:2px 10px;border-radius:4px;background:var(--brand);color:#fff;border:none;cursor:pointer}.ext-edit-ok:hover{background:var(--brand)}.ext-edit-cancel{font-size:12px;padding:2px 10px;border-radius:4px;background:var(--bg-section);color:var(--text-body);border:1px solid var(--border);cursor:pointer}.ext-edit-cancel:hover{background:var(--border)}.file-list-container{padding:16px 20px;width:100%;margin:0;height:100vh;min-height:0;box-sizing:border-box;display:flex;flex-direction:column;background:var(--bg-page)}.file-list-workspace{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.file-list-workspace .toolbar{flex:0 0 auto}.file-list-workspace .table-container,.file-list-workspace .loading,.file-list-workspace .empty-state{flex:1 1 auto;min-height:0}.file-list-container .toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-card) var(--radius-card) 0 0}.file-list-container.has-project-requirements .project-requirements-banner{flex:0 0 calc(50% - 6px);min-height:0}.project-requirements-banner{margin-bottom:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;box-sizing:border-box;overflow:hidden}.project-requirements-banner .requirements-block-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto}.project-requirements-banner .requirements-block-title{font-size:13px;font-weight:600;color:var(--text-title);line-height:1.5}.project-requirements-banner .edit-project-requirements-btn{flex:0 0 auto;padding:4px 12px;border:1px solid var(--brand-border);border-radius:var(--radius-btn);background:var(--bg-card);color:var(--brand);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.project-requirements-banner .edit-project-requirements-btn:hover{border-color:var(--brand);background:var(--brand-light)}.project-requirements-banner .general-requirements-block,.project-requirements-banner .special-requirements-block{min-height:0;box-sizing:border-box}.project-requirements-banner .general-requirements-block{flex:0 0 auto;display:flex;flex-direction:column;width:100%;padding:8px 12px;border:1px solid var(--brand-border);background:var(--brand-light);border-radius:var(--radius-btn);text-align:left}.project-requirements-banner .general-requirements-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px}.project-requirements-banner .general-template-names{font-size:12px;color:var(--brand);line-height:1.5}.project-requirements-banner .general-requirements-view-btn{flex:0 0 auto;padding:3px 10px;border:1px solid var(--brand-border);border-radius:var(--radius-btn);background:var(--bg-card);color:var(--brand);font-size:12px;cursor:pointer;transition:all .15s}.project-requirements-banner .general-requirements-view-btn:hover{border-color:var(--brand);background:var(--brand-light)}.project-requirements-banner .general-requirements-block .requirements-block-hint{margin-top:6px;font-size:12px;color:var(--brand);line-height:1.5}.project-requirements-banner .special-requirements-block{flex:1 1 auto;display:flex;flex-direction:column;padding:10px 12px;border:1px solid var(--border);background:var(--bg-page);border-radius:var(--radius-btn)}.project-requirements-banner .special-requirements-block .requirements-block-text{flex:1 1 auto;min-height:0;margin-top:6px;padding-right:6px;overflow-y:auto;font-size:13px;color:var(--text-body);line-height:1.6;white-space:pre-wrap;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.project-requirements-banner .special-requirements-block .requirements-block-text::-webkit-scrollbar{width:7px}.project-requirements-banner .special-requirements-block .requirements-block-text::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.project-requirements-banner .requirements-empty-block{cursor:default}.requirements-readonly-modal{background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);width:90%;max-width:720px;max-height:80vh;display:flex;flex-direction:column}.requirements-readonly-modal .modal-body{overflow-y:auto;padding:20px}.requirements-readonly-modal .requirements-html-content{font-size:14px;line-height:1.7;color:var(--text-body)}.requirements-readonly-modal .requirements-html-content p{margin:0 0 12px}.requirements-readonly-modal .requirements-html-content ul,.requirements-readonly-modal .requirements-html-content ol{margin:0 0 12px;padding-left:24px}.requirements-readonly-modal .requirements-html-content li{margin-bottom:4px}.requirements-readonly-modal .requirements-html-content strong{color:var(--text-title)}.requirements-readonly-modal .modal-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.file-list-container .toolbar h2{margin:0;font-size:15px;font-weight:600;color:var(--text-title)}.toolbar-actions{display:flex;gap:6px;align-items:center}.toolbar-btn{padding:6px 12px!important;border:1px solid var(--border)!important;border-radius:var(--radius-btn)!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s!important;background:var(--bg-card)!important;color:var(--text-body)!important}.toolbar-btn.disabled{opacity:.4!important;cursor:not-allowed!important}.toolbar-btn.wordcount-btn{background:var(--brand-light)!important;border-color:var(--brand-border)!important;color:var(--brand)!important}.toolbar-btn.wordcount-btn:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.file-list-container .loading,.file-list-container .empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.file-list-container .empty-state p{margin-bottom:16px}.file-list-container .table-container{background:var(--bg-card);border-radius:0 0 var(--radius-card) var(--radius-card);overflow:auto;width:100%;flex:1;position:relative}.file-list-container .table-container::-webkit-scrollbar{width:6px;height:6px}.file-list-container .table-container::-webkit-scrollbar-track{background:transparent}.file-list-container .table-container::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.file-list-container .table-container::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.file-table{display:block;min-width:1500px;min-height:300px;border-collapse:collapse;font-size:12px}.file-table thead,.file-table tbody{display:block;min-width:1500px}.file-table tbody{position:relative}.file-table thead tr,.file-table tbody tr{display:flex;min-width:1500px;align-items:center}.file-table th,.file-table td{padding:5px 8px;text-align:left;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;overflow:visible;text-overflow:clip}.file-table th{background:var(--bg-section);font-weight:600;color:var(--text-secondary);white-space:nowrap;font-size:11px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.3px}.file-table tbody tr{border-bottom:1px solid var(--border);color:var(--text-body)}.file-table .col-select{flex:0 0 50px;text-align:center}.file-table .file-name-col,.file-table .file-name{flex:0 0 320px;text-align:left}.file-table .file-format-col,.file-table .file-format{flex:0 0 90px;text-align:left}.file-table .source-lang-col,.file-table .source-lang,.file-table .target-lang-col,.file-table .target-lang{flex:0 0 90px;text-align:left;white-space:normal;word-wrap:break-word;line-height:1.4}.file-table .statistics-col,.file-table .statistics{flex:0 0 135px;text-align:left;white-space:normal;word-wrap:break-word;line-height:1.4}.file-table .progress-col,.file-table .file-progress{flex:0 0 145px;text-align:center}.file-table .deadline-col,.file-table .deadline,.file-table .duedate-col,.file-table .duedate{flex:0 0 125px;text-align:center}.file-table .delivered-col,.file-table .delivered{flex:0 0 140px;text-align:center}.file-table .score-col,.file-table .score-action{flex:0 0 160px;text-align:left;white-space:normal;word-wrap:break-word;line-height:1.4}.file-table .upload-date-col,.file-table .upload-date{flex:0 0 85px;text-align:right;padding-right:.5rem!important}.file-row{cursor:pointer;transition:background-color .12s;position:absolute;top:0;left:0;width:100%}.file-row:hover{background-color:var(--bg-hover)}.file-row:last-child td{border-bottom:none}.file-row.selected,.file-row.selected:hover{background-color:var(--brand-light)}.file-list-container .col-select input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--brand)}.file-list-container .row-number{color:var(--text-placeholder);font-size:11px;display:inline-block;width:30px!important;text-align:center}.file-name{font-weight:500;color:var(--brand);word-break:break-all;white-space:normal;line-height:1.4;padding:6px 4px}.file-format{color:var(--text-secondary);font-size:12px}.segment-count{text-align:center}.upload-date{color:var(--text-secondary);white-space:nowrap}.status-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:var(--radius-tag);font-size:11px;font-weight:500;border:1px solid transparent}.status-uploaded{background:var(--success-bg);color:var(--success);border-color:var(--success-border)}.status-processing{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.status-completed{background:var(--brand-light);color:var(--brand);border-color:var(--brand-border)}.status-error{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}.progress-container{width:100%;max-width:140px;position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 auto}.assignee-name{font-size:10px;color:var(--text-secondary);font-weight:500;text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.progress-container .assignee-info{display:flex;align-items:baseline;justify-content:center;gap:2px;max-width:100%;overflow:hidden;line-height:1.2}.progress-container .assignee-due{font-size:8px;color:var(--text-placeholder);white-space:nowrap;flex-shrink:0}.progress-container .assignee-delivered{font-size:9px;color:var(--success);font-weight:600;white-space:nowrap;flex-shrink:0;margin-left:2px}.progress-bar{width:100%;height:10px;background:var(--border);border-radius:5px;position:relative;overflow:hidden}.progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,var(--success),#34D399);border-radius:5px;transition:width .3s ease}.progress-bar .progress-text{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;font-size:9px!important;font-weight:600!important;z-index:1!important;color:var(--text-body)!important;text-shadow:0 0 2px rgba(255,255,255,.8)!important;line-height:1!important;white-space:nowrap!important;pointer-events:none!important}.score-btn{padding:3px 10px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-btn);cursor:pointer;font-size:11px;transition:all .15s;white-space:nowrap}.score-btn:hover{background:var(--brand-hover);transform:translateY(-1px);box-shadow:var(--shadow-card)}.score-btn:active{transform:translateY(0)}.score-status{font-size:11px;color:var(--text-secondary);white-space:nowrap}.overdue-dot{font-size:13px;margin-right:4px;vertical-align:middle}.overdue-dot.red{color:var(--danger)}.overdue-dot.orange{color:var(--warning)}.fl-revision-diff-badge{display:inline-block;margin-right:3px;width:12px;height:12px;font-size:8px;font-weight:600;line-height:12px;text-align:center;color:#fff;background-color:var(--warning);border-radius:50%;vertical-align:text-top;white-space:nowrap;cursor:default}.file-list-tabs{display:flex;gap:8px;margin-bottom:12px;flex:0 0 auto}.file-list-tab{padding:8px 20px;border-radius:var(--radius-card) var(--radius-card) 0 0;border:1px solid var(--border);border-bottom:none;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.file-list-tab:hover{color:var(--primary);background:var(--bg-hover)}.file-list-tab.active{color:var(--primary);background:var(--bg-card);border-bottom:2px solid var(--primary);margin-bottom:-1px;z-index:1}.file-list-tab-content{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:0 var(--radius-card) var(--radius-card) var(--radius-card);overflow:hidden}.file-list-tab-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.file-list-tab-panel.wordcount-panel{overflow:auto}.file-list-tab-panel.filesystem-panel{overflow:hidden}.editor-layout{display:flex;flex-direction:column;flex:1;background:var(--bg-page);overflow:hidden;border:1px solid var(--border);box-sizing:border-box}.assignment-warning-banner{display:flex;align-items:flex-end;justify-content:center;gap:5px;padding:2px 12px;background:var(--warning-bg);border-bottom:1px solid var(--warning);color:var(--warning);font-size:11px;font-weight:500;flex-shrink:0}.assignment-warning-banner .warning-text{line-height:1.4}.editor-main-content{display:flex;flex:1;overflow:hidden;position:relative}.translation-panel{flex:1;position:relative;overflow:hidden;background:var(--bg-card);border-right:1px solid var(--border);max-height:100%;overflow-anchor:none}.translation-table{width:100%;border-collapse:collapse;table-layout:fixed;font-family:Times New Roman,SimSun,serif}.translation-table .col-num{width:40px}.translation-table .col-source,.translation-table .col-target{width:calc((100% - 64px)/2)}.translation-table .col-status{width:24px}.segment-row{border-bottom:1px solid var(--border);transition:background-color .1s ease}.segment-row:hover{background-color:var(--bg-section)}.segment-row.active{background-color:#fffef5}.segment-row td.col-num{width:40px;padding:0;text-align:center;vertical-align:middle;background:var(--bg-section);border-right:1px solid var(--border);cursor:default}.row-number{font-size:12px;color:var(--text-placeholder);font-weight:500}.segment-row td.col-source{padding:4px 8px;vertical-align:middle;border-right:1px solid var(--border);font-size:14px;line-height:1.4;color:var(--text-body);word-break:keep-all!important;overflow-wrap:break-word!important;hyphens:none!important;-webkit-hyphens:none!important;cursor:default}.segment-row td.col-target{padding:4px 8px;vertical-align:middle;font-size:14px;line-height:1.4;color:var(--text-body);word-wrap:break-word;outline:none;cursor:text}.segment-row td.col-target.editing{background:#fffef5!important;cursor:text;box-shadow:inset 0 0 0 1px var(--warning)}.segment-row td.col-target:focus{outline:none}.empty-target{color:var(--text-placeholder);font-style:italic}.segment-row td.col-status{width:20px;padding:2px;text-align:center;vertical-align:middle;border-left:1px solid var(--border);position:relative}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%}.col-status .duplicate-indicator{position:absolute;bottom:2px;left:50%;transform:translate(-50%);display:flex;gap:2px;align-items:center;justify-content:center;padding:0;margin:0}.col-status .duplicate-indicator span{display:inline-block;width:3px;height:3px;background:var(--danger);border-radius:50%;flex-shrink:0;padding:0;margin:0}.status-dot.status-new{background:var(--border-strong)}.status-dot.status-draft{background:var(--warning)}.status-dot.status-approved{background:var(--brand)}.status-dot.status-empty{background:var(--warning)}.status-dot.status-in-progress,.status-dot.status-translated{background:var(--brand)}.status-dot.status-confirmed,.status-dot.status-confirmed-pending{background:var(--success)}.status-dot-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px}.lock-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:9px;line-height:1;cursor:help;z-index:1;filter:invert(85%) sepia(80%) saturate(700%) hue-rotate(5deg) brightness(1.1)}.lock-icon.assignment-locked{font-size:10px}.segment-row-virtual.is-comment{background-color:var(--bg-page)!important}.segment-row-virtual.is-comment:hover{background-color:var(--border-disabled)eee!important}.segment-row-virtual.is-comment.active{background-color:var(--border)!important;border-left-color:var(--text-placeholder)!important}.matches-panel{width:320px;min-width:200px;max-width:900px;flex-shrink:0;height:100%;max-height:100%;display:flex;flex-direction:column;background:var(--bg-section);font-family:Times New Roman,SimSun,serif;overflow:hidden;border-left:1px solid var(--border);padding:0;margin:0}.tm-resizer{flex:0 0 4px;width:4px;cursor:col-resize;background:transparent;position:relative;z-index:5;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.tm-resizer:hover,.tm-resizer.dragging{background:var(--brand)}.tm-resizer:before{content:"";position:absolute;top:0;bottom:0;left:-2px;right:-2px}.matches-tabs{display:flex;background:var(--bg-card);border-bottom:1px solid var(--border);flex-shrink:0}.matches-tab{flex:1;padding:10px 8px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;position:relative;display:flex;align-items:center;justify-content:center;gap:4px}.matches-tab:hover{color:var(--brand);background:var(--bg-page)}.matches-tab.active{color:var(--brand);background:var(--bg-card)}.matches-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--brand)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;color:var(--bg-card);background:var(--brand);border-radius:9px}.matches-tab:not(.active) .tab-badge{background:var(--border-strong)}.matches-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.matches-content>*{flex:1;overflow-y:auto}.matches-section.term-section,.matches-section.tm-section{min-height:80px;display:flex;flex-direction:column;overflow:hidden;padding:0;margin:0}.panel-divider{flex-shrink:0;height:6px;background:var(--border);cursor:ns-resize;display:flex;align-items:center;justify-content:center;transition:background .15s}.panel-divider:hover{background:var(--border)}.divider-handle{width:40px;height:3px;background:var(--border-strong);border-radius:2px}.panel-divider:hover .divider-handle{background:var(--text-placeholder)}.no-matches{padding:40px 20px;text-align:center;color:var(--text-placeholder)}.no-matches p{margin:0 0 8px}.no-matches .hint{font-size:12px;color:var(--border-strong)}.matches-list{padding:8px}.match-item{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-bottom:8px;cursor:pointer;transition:all .15s ease}.match-item:hover{border-color:var(--brand);box-shadow:0 2px 6px #2563eb26}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.match-similarity{background:var(--success-bg);color:var(--success);padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600}.match-origin{font-size:11px;color:var(--text-placeholder)}.match-origin.reverse-match{color:var(--warning);font-weight:600;background:var(--warning-bg);padding:2px 6px;border-radius:3px}.match-similarity.exact,.match-similarity.high{background:var(--success-bg);color:var(--success)}.finalized-badge-sm{display:inline-block;margin-left:4px;padding:0 4px;background:var(--warning);color:var(--bg-card);font-size:9px;font-weight:600;border-radius:2px;vertical-align:middle}.match-source{font-size:13px;color:var(--text-secondary);margin-bottom:6px;padding-bottom:6px;border-bottom:1px dashed var(--border-disabled)}.match-target{font-size:13px;color:var(--brand);font-weight:500}.translation-panel::-webkit-scrollbar,.matches-panel::-webkit-scrollbar,.matches-section::-webkit-scrollbar,.term-list::-webkit-scrollbar,.tm-list::-webkit-scrollbar{width:8px}.translation-panel::-webkit-scrollbar-track,.matches-panel::-webkit-scrollbar-track,.matches-section::-webkit-scrollbar-track,.term-list::-webkit-scrollbar-track,.tm-list::-webkit-scrollbar-track{background:var(--bg-section)}.translation-panel::-webkit-scrollbar-thumb,.matches-panel::-webkit-scrollbar-thumb,.matches-section::-webkit-scrollbar-thumb,.term-list::-webkit-scrollbar-thumb,.tm-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.translation-panel::-webkit-scrollbar-thumb:hover,.matches-panel::-webkit-scrollbar-thumb:hover,.matches-section::-webkit-scrollbar-thumb:hover,.term-list::-webkit-scrollbar-thumb:hover,.tm-list::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.xliff-tag{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--brand-light) 0%,var(--brand-light) 100%);border:1px solid var(--brand-border);border-radius:4px;padding:1px 4px;margin:0 1px;font-size:11px;color:var(--brand-hover);vertical-align:baseline;cursor:default;-webkit-user-select:all;user-select:all;box-shadow:0 1px 2px #0000001a;transition:all .15s ease}.xliff-tag:hover{background:linear-gradient(135deg,var(--brand-light) 0%,var(--brand-border) 100%);box-shadow:0 2px 4px #0f172a1a;transform:translateY(-1px)}.tag-label{font-family:Consolas,Monaco,Courier New,monospace;font-size:10px;font-weight:600;white-space:nowrap}.xliff-tag.tag-generic{background:linear-gradient(135deg,var(--brand-light) 0%,var(--brand-light) 100%);border-color:var(--brand-border);color:var(--brand-hover)}.xliff-tag.tag-bold,.xliff-tag.tag-b{background:linear-gradient(135deg,var(--warning-bg) 0%,#ffe0b2 100%);border-color:var(--warning);color:var(--warning)}.xliff-tag.tag-italic,.xliff-tag.tag-i{background:linear-gradient(135deg,#f5f3ff,#e1bee7);border-color:#c084fc;color:#7c3aed}.xliff-tag.tag-underline,.xliff-tag.tag-u{background:linear-gradient(135deg,var(--success-bg) 0%,var(--success-bg) 100%);border-color:var(--success-border);color:var(--success)}.xliff-tag.tag-link,.xliff-tag.tag-a{background:linear-gradient(135deg,var(--brand-light) 0%,#b2ebf2 100%);border-color:var(--brand-border);color:var(--brand)}.xliff-tag.tag-image,.xliff-tag.tag-img{background:linear-gradient(135deg,var(--danger-bg) 0%,#f8bbd0 100%);border-color:var(--danger-border);color:var(--danger)}.finalized-badge{display:inline-block;padding:1px 6px;background:var(--warning);color:var(--bg-card);font-size:10px;font-weight:600;border-radius:3px;margin-right:6px;vertical-align:middle}.segment-row-virtual{display:flex;align-items:stretch;border-bottom:1px solid var(--border);transition:background-color .1s ease;box-sizing:border-box;font-family:Times New Roman,SimSun,serif;background-color:var(--bg-card);min-height:33px;width:100%;overflow:visible;contain:style;will-change:transform;overflow-anchor:none}.segment-row-virtual:hover{background-color:var(--bg-section)}.segment-row-virtual.active{background-color:#fffef5}.segment-row-virtual.status-translated{background-color:var(--bg-card);color:inherit}.segment-row-virtual.status-confirmed .col-status{background-color:var(--success-bg)!important}.segment-row-virtual.status-confirmed-pending .col-status,.segment-row-virtual.status-empty .col-status,.segment-row-virtual.status-in-progress .col-status,.segment-row-virtual.status-translated .col-status{background-color:var(--bg-card)}.segment-row-virtual .col-num{width:40px;min-width:40px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-section);border-right:1px solid var(--border);cursor:default;position:relative}.segment-row-virtual .col-source{flex:1 1 0;min-width:0;padding:6px 10px;border-right:1px solid var(--border-strong);font-family:var(--editor-font, "Times New Roman", "SimSun", serif)!important;font-size:var(--editor-size, 6px)!important;line-height:1.5;color:var(--text-title);cursor:default;text-align:left!important;text-justify:none;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;-webkit-hyphens:none!important;white-space:pre-wrap;overflow-x:hidden;box-sizing:border-box}.segment-row-virtual .col-target{flex:1 1 0;min-width:0;padding:6px 10px;border-left:none;font-family:var(--editor-font, "Times New Roman", "SimSun", serif)!important;font-size:var(--editor-target-size, 6px)!important;line-height:1.5;color:var(--text-title);outline:none;cursor:text;text-align:left!important;text-justify:none;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;-webkit-hyphens:none!important;white-space:pre-wrap;overflow-x:hidden;box-sizing:border-box}.segment-row-virtual .col-target.locked-by-assignment{background:var(--bg-page)!important;color:var(--text-placeholder)!important;cursor:not-allowed!important;-webkit-user-select:none;user-select:none;opacity:.7}.segment-row-virtual .col-target.compare-highlight{background:#fffef0!important;border-left:none!important;border-right:3px solid #fa8c16!important}.segment-row-virtual .col-target.editing{background:#fffef5!important;cursor:text;padding:6px 10px!important;border-top:1px solid var(--warning)!important;border-right:1px solid var(--warning)!important;border-bottom:1px solid var(--warning)!important;border-left:none!important;box-sizing:border-box!important;min-width:0!important;position:relative;overflow:hidden!important}.segment-row-virtual .col-target.editing .target-scroll-area{overflow-x:hidden;min-height:0}.segment-row-virtual .col-target.editing .target-scroll-area .tm-inconsistency-hint{position:sticky;bottom:0;font-size:10px;font-style:italic;color:var(--danger);padding:4px 6px 1px;line-height:1.3;-webkit-user-select:none;user-select:none;pointer-events:none;background:#fffef5f2;margin-top:8px}.segment-row-virtual .col-target.editing .target-scroll-area .tm-invalid-tag-hint{color:var(--danger);background:#ffebeef7;font-style:normal;font-weight:500}.segment-row-virtual .col-target.editing .target-scroll-area .tm-invalid-tag-hint .invalid-tag-name{display:inline-block;margin:0 2px;padding:0 4px;background:var(--danger-bg);border-radius:3px;font-family:monospace;font-size:10px;font-style:normal;font-weight:600;color:var(--danger)}.segment-row-virtual .col-num.active{background:#fffef5!important}.segment-row-virtual .col-source.active-source,.segment-row-virtual .col-source.editing-source,.segment-row-virtual .col-source.search-active-source{background:var(--brand-light);cursor:text;overflow-y:hidden!important}.segment-row-virtual .col-source::-webkit-scrollbar,.segment-row-virtual .col-target::-webkit-scrollbar{width:6px}.segment-row-virtual .col-source::-webkit-scrollbar-track,.segment-row-virtual .col-target::-webkit-scrollbar-track{background:var(--bg-section);border-radius:3px}.segment-row-virtual .col-source::-webkit-scrollbar-thumb,.segment-row-virtual .col-target::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.segment-row-virtual .col-source::-webkit-scrollbar-thumb:hover,.segment-row-virtual .col-target::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.segment-row-virtual .col-target:focus{outline:none}.segment-row-virtual .col-info{width:32px;min-width:32px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--border-strong);font-size:7px;line-height:1.05;padding:1px 0;color:var(--text-secondary)}.segment-row-virtual .col-info,.segment-row-virtual .col-info *{font-family:Times New Roman,SimSun,serif!important}.segment-row-virtual .col-info .match-rate{font-weight:600;font-family:Times New Roman,SimSun,serif!important}.segment-row-virtual .col-info .confirmed-role{font-weight:500;font-family:Times New Roman,SimSun,serif!important;color:var(--text-placeholder);margin-top:1px}.segment-row-virtual .col-info .ai-term-corrected-badge{font-family:Times New Roman,SimSun,serif!important}.segment-row-virtual .col-diff{flex:1 1 0;min-width:0;padding:6px 10px;border-left:1px solid var(--border);overflow:hidden;vertical-align:middle;line-height:1.6;font-size:12px;color:var(--text-body);background:var(--bg-section)}.segment-row-virtual.review-layout .col-source,.segment-row-virtual.review-layout .col-target,.segment-row-virtual.review-layout .col-diff{flex:1 1 0;min-width:0}.segment-row-virtual.review-layout .col-info{order:3}.segment-row-virtual.review-layout .col-status{order:4}.segment-row-virtual.review-layout .col-diff{order:5}.segment-row-virtual .col-status{width:24px;min-width:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--border);position:relative}.segment-row-virtual .lock-icon{position:absolute;top:50%;right:2px;transform:translateY(-50%);font-size:10px;opacity:.6;filter:grayscale(100%);cursor:help}.loading-placeholder{display:flex;align-items:center;justify-content:center;height:100%;font-size:14px;color:var(--text-placeholder)}.loading-more{padding:10px;text-align:center;font-size:12px;color:var(--text-placeholder);background:var(--bg-section);border-top:1px solid var(--border)}.segment-count-info{position:absolute;bottom:10px;left:10px;padding:4px 10px;background:#0f172a73;color:var(--bg-card);font-size:11px;border-radius:4px;z-index:10}.qa-sidebar-overlay{position:absolute;top:0;right:0;width:344px;bottom:0;background:var(--bg-card, #ffffff);background-color:var(--bg-card, #ffffff);z-index:100;display:flex;flex-direction:column;border-left:1px solid var(--border);box-shadow:-2px 0 8px #00000014;font-family:Times New Roman,SimSun,serif}.qa-sidebar-overlay.qa-sidebar-compact{right:auto;bottom:auto;background:var(--bg-card, #ffffff);background-color:var(--bg-card, #ffffff);border:1px solid var(--border);border-radius:6px;box-shadow:0 6px 18px #0000002e;z-index:200}.qa-sidebar-overlay.qa-sidebar-compact .qa-sidebar-header{cursor:move;-webkit-user-select:none;user-select:none}.qa-sidebar-compact-btn{background:transparent;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:2px 4px;border-radius:3px;line-height:1}.qa-sidebar-compact-btn:hover{background:var(--bg-section);color:var(--brand)}.qa-sidebar-resize-handle{position:absolute;right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,transparent 0 50%,#b0b0b0 50% 60%,transparent 60% 70%,#b0b0b0 70% 80%,transparent 80% 90%,#b0b0b0 90% 100%);z-index:1}.qa-sidebar-resize-handle:hover{background:linear-gradient(135deg,transparent 0 50%,var(--brand) 50% 60%,transparent 60% 70%,var(--brand) 70% 80%,transparent 80% 90%,var(--brand) 90% 100%)}.qa-sidebar-left-resize-handle{position:absolute;left:-3px;top:0;bottom:0;width:6px;cursor:ew-resize;-webkit-user-select:none;user-select:none;z-index:3}.qa-sidebar-left-resize-handle:hover{background:#1890ff40}.qa-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--bg-card, #ffffff);background-color:var(--bg-card, #ffffff);border-bottom:1px solid var(--border);flex-shrink:0}.qa-sidebar-title{font-size:12px;font-weight:500;color:var(--text-body)}.qa-sidebar-actions{display:flex;align-items:center;gap:8px}.qa-sidebar-refresh{background:transparent;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:2px 4px;border-radius:3px}.qa-sidebar-refresh:hover{background:var(--bg-section);color:var(--brand)}.qa-sidebar-rerun{background:var(--brand);border:none;color:var(--bg-card);font-size:12px;font-weight:500;cursor:pointer;padding:3px 10px;border-radius:4px;line-height:1.2;transition:background-color .15s;margin-left:8px;margin-right:auto}.qa-sidebar-rerun:hover{background:var(--brand)}.qa-sidebar-rerun:active{background:var(--brand-hover)}.qa-sidebar-close{background:transparent;border:none;color:var(--text-placeholder);font-size:14px;cursor:pointer;padding:2px 4px;border-radius:3px;line-height:1}.qa-sidebar-close:hover{background:var(--danger-bg);color:var(--danger)}.qa-sidebar-stats{display:flex;gap:12px;padding:3px 10px;background:var(--bg-section, #f5f7fa);background-color:var(--bg-section, #f5f7fa);border-bottom:1px solid var(--border);font-size:10px;color:var(--text-secondary);flex-shrink:0}.qa-sidebar-stats span{white-space:nowrap}.qa-sidebar-list{flex:1;overflow-y:auto;padding:2px 0}.qa-sidebar-empty{text-align:center;padding:20px 10px;background:var(--bg-card, #ffffff);background-color:var(--bg-card, #ffffff);color:var(--text-placeholder);font-size:12px}.qa-sidebar-item{display:flex;align-items:flex-start;gap:6px;padding:4px 10px;cursor:pointer;background:var(--bg-card, #ffffff);background-color:var(--bg-card, #ffffff);border-bottom:1px solid var(--bg-page);transition:background .1s}.qa-sidebar-item:hover{background:var(--bg-page)}.qa-sidebar-item-selected{background:var(--brand-light)!important;border-left:3px solid var(--brand);padding-left:7px}.qa-item-icon{font-size:8px;flex-shrink:0}.qa-item-num{font-size:10px;color:var(--brand);font-weight:500;flex-shrink:0;min-width:36px}.qa-item-msg{flex:1;font-size:10px;color:var(--text-body);word-wrap:break-word;word-break:break-word;line-height:1.4}.qa-item-ignore{background:transparent;border:1px solid var(--border);color:var(--text-secondary);font-size:10px;cursor:pointer;padding:1px 5px;border-radius:3px;flex-shrink:0;line-height:1.4;white-space:nowrap}.qa-item-ignore:hover{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.qa-item-ignore-all{background:transparent;border:1px solid var(--border);color:var(--text-secondary);font-size:10px;cursor:pointer;padding:1px 5px;border-radius:3px;flex-shrink:0;line-height:1.4;white-space:nowrap;margin-left:2px}.qa-item-ignore-all:hover{background:var(--warning-bg);color:var(--warning);border-color:var(--warning)}.qa-sidebar-list::-webkit-scrollbar{width:6px}.qa-sidebar-list::-webkit-scrollbar-track{background:var(--bg-section)}.qa-sidebar-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.qa-sidebar-list::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.note-btn{background:none;border:none;cursor:pointer;font-size:12px;padding:2px 4px;opacity:.4;transition:opacity .2s;border-radius:3px}.note-btn:hover{opacity:1;background:#0000000d}.segment-row-virtual:hover .note-btn{opacity:.7}.segment-row-virtual.active .note-btn{opacity:.8}.term-panel{display:flex;flex-direction:column;height:100%;max-height:100%;background:var(--bg-section);overflow:hidden;padding:0;margin:0;container-type:inline-size;container-name:term-panel}.term-header{flex-shrink:0;padding:2px 4px;margin:0;background:var(--bg-page);border-bottom:1px solid var(--border);font-size:.75rem;font-weight:600;color:var(--text-body);line-height:1.2}.term-count{color:var(--text-secondary);font-weight:400;margin-left:4px}.term-empty{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-placeholder);font-size:13px}.term-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;margin:0;min-height:0}.term-group{margin:0;padding:0}.term-group-header{display:flex;align-items:center;justify-content:flex-end;padding:2px 6px;background:#f0f4f8;border-bottom:1px solid #d0d7de;border-top:1px solid #d0d7de;position:sticky;top:0;z-index:1;gap:4px}.term-group:first-child .term-group-header{border-top:none}.term-group-label{font-size:.68rem;font-weight:600;line-height:1.3}.term-group-label.term-glossary-type-project{color:var(--brand)}.term-group-label.term-glossary-type-main{color:var(--success)}.term-group-label.term-glossary-type-shared{color:var(--warning)}.term-group-label.term-glossary-type-nt{color:var(--success)}.term-group-count{font-size:.62rem;color:var(--text-secondary);background:#dde3ea;border-radius:8px;padding:0 5px;line-height:1.5}.term-item{margin:0;padding:3px 4px;background:var(--bg-section);border:none;border-bottom:1px solid var(--warning);border-radius:0;cursor:pointer;transition:all .2s;width:100%;box-sizing:border-box}.term-item:hover{background:var(--bg-section);border-color:var(--brand);box-shadow:0 2px 4px #0000001a;transform:translate(2px)}.term-meta{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:2px;padding:0;font-size:.7rem;flex-wrap:wrap;min-width:0}.term-meta-left{display:flex;align-items:center;gap:4px;flex-shrink:0;min-width:0}.term-meta-right{margin-left:auto;flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.term-variant-badge{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;border-radius:50%;background:#9c27b0;color:#fff;font-size:.45rem;font-weight:700;vertical-align:super;line-height:1;margin-left:2px;flex-shrink:0}.term-nt-badge{padding:1px 4px;border-radius:6px;font-weight:600;font-size:.55rem;display:inline-flex;align-items:center;gap:2px;background:var(--success);color:#fff}.term-target-variants{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px;padding-left:2px}.term-target-variant-tag{display:inline-block;font-size:.62rem;color:var(--text-body);background:var(--success-bg);border:1px solid var(--success-border);border-radius:3px;padding:0 4px;line-height:1.5;font-style:italic}.term-origin{color:var(--text-secondary);font-size:.7rem;font-weight:500}.term-origin.term-glossary-type-project{color:var(--brand);font-weight:600}.term-origin.term-glossary-type-main{color:var(--success);font-weight:600}.term-origin.term-glossary-type-shared{color:var(--warning);font-weight:600}.term-source-text{color:var(--text-title);font-size:.75rem;font-weight:700;margin-bottom:0;padding:0 0 3px;border-bottom:1px dashed var(--border);line-height:1.3;text-align:left}.term-target-text{color:var(--text-title);font-size:.8rem;line-height:1.3;font-weight:700;padding:3px 0 0;text-align:left}.term-metadata{margin-top:4px;padding-top:3px;border-top:1px dashed var(--border);display:flex;flex-wrap:wrap;gap:6px;font-size:.65rem;color:var(--text-secondary);line-height:1.2;font-style:italic}.term-metadata-item{display:inline-flex;align-items:center;color:var(--text-secondary);font-style:italic}.term-metadata-item:after{content:"|";margin-left:6px;color:var(--text-placeholder)}.term-metadata-item:last-child:after{content:"";margin-left:0}@container term-panel (max-width: 260px){.term-source-text,.term-target-text{font-size:.7rem}.term-metadata{display:none}.term-meta-right{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.term-item{padding:2px}.term-origin{font-size:.6rem}}@container term-panel (min-width: 261px) and (max-width: 320px){.term-origin{font-size:.62rem;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.term-metadata{font-size:.6rem;gap:4px}}@container term-panel (min-width: 400px){.term-source-text{font-size:.82rem}.term-target-text{font-size:.88rem}.term-meta{font-size:.75rem}.term-metadata{font-size:.7rem}.term-item{padding:5px 6px}}.tm-panel{display:flex;flex-direction:column;height:100%;max-height:100%;background:var(--bg-section);overflow:hidden;padding:0;margin:0;container-type:inline-size;container-name:tm-panel;--editor-font: var(--match-panel-font, "Times New Roman", "SimSun", serif);--editor-size: var(--match-panel-size, 12px);--editor-target-size: var(--match-panel-size, 12px)}.tm-header{flex-shrink:0;padding:2px 4px;margin:0;background:var(--bg-page);border-bottom:1px solid var(--border);font-weight:600;font-size:.75rem;color:var(--text-body);display:flex;align-items:center;gap:4px;line-height:1.2}.tm-count{font-size:.7rem;color:var(--text-secondary);font-weight:400}.tm-empty{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-placeholder);font-size:.9rem}.tm-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;margin:0;min-height:0;width:100%}.tm-item{margin:0;padding:2px 1px;background:var(--bg-section);border:none;border-bottom:1px solid var(--border);border-radius:0;cursor:pointer;transition:all .2s;width:100%;box-sizing:border-box}.tm-item:hover{background:var(--bg-section);border-color:var(--brand);box-shadow:0 2px 4px #0000001a;transform:translate(2px)}.tm-item.exact-match{background:var(--brand-light);border-color:var(--brand)}.tm-item.exact-match:hover{background:var(--brand-light)}.tm-meta{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:2px;padding:0;font-size:.7rem;flex-wrap:wrap;min-width:0}.tm-meta-left{display:flex;align-items:center;gap:4px;flex-shrink:0;min-width:0}.tm-meta-right{margin-left:auto;flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.tm-similarity-wrapper{display:inline-flex;align-items:flex-end;flex-shrink:0;gap:1px}.tm-similarity{padding:0 2px;border-radius:4px;font-weight:700;font-size:.5rem;display:inline-block;flex-shrink:0;line-height:1.3;font-family:var(--match-panel-font, "Times New Roman", "SimSun", serif)}.tm-similarity.exact{background:var(--success);color:#fff}.tm-similarity.high{background:var(--brand);color:#fff}.tm-similarity.medium{background:var(--warning);color:#fff}.tm-similarity.low{background:var(--text-placeholder);color:#fff}.tm-engine-type{padding:0 4px;border-radius:6px;font-weight:600;font-size:.5rem;display:inline-flex;align-items:center;gap:2px;letter-spacing:.3px;line-height:1.2}.tm-engine-type.ai-engine{background:linear-gradient(135deg,#7c3aed,#764ba2);color:#fff;box-shadow:0 2px 4px #667eea4d}.tm-engine-type.mt-engine{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;box-shadow:0 2px 4px #f5576c4d}.tm-cache-badge{padding:0 4px;border-radius:6px;font-weight:600;font-size:.5rem;display:inline-flex;align-items:center;gap:2px;letter-spacing:.3px;line-height:1.2;background:linear-gradient(135deg,#ffa726,#fb8c00);color:#fff;box-shadow:0 2px 4px #ffa7264d;margin-left:2px}.tm-origin{color:var(--text-secondary);font-size:.7rem;font-weight:500;font-family:var(--match-panel-font, "Times New Roman", "SimSun", serif)}.tm-origin.tm-memory-type-project{color:var(--brand);font-weight:600}.tm-origin.tm-memory-type-main{color:var(--success);font-weight:600}.tm-origin.tm-memory-type-shared{color:var(--warning);font-weight:600}.tm-origin.reverse-match{color:var(--danger);font-weight:600;background:var(--danger-bg);padding:2px 6px;border-radius:4px}.tm-penalty{color:var(--danger);font-size:.8rem;background:var(--danger-bg);padding:1px 5px;border-radius:3px}.tm-badge-group{display:inline-flex;flex-direction:row;gap:2px;align-items:center;align-self:flex-start;pointer-events:none;margin-bottom:1px}.finalized-badge-sm{width:12px;height:12px;background:var(--warning);color:#fff;font-size:.4rem;font-weight:700;border-radius:50%;border:1.5px solid var(--warning);display:inline-flex;align-items:center;justify-content:center;line-height:1}.pre-used-badge{width:12px;height:12px;background:var(--danger);color:#fff;font-size:.4rem;font-weight:700;border-radius:50%;border:1.5px solid #b71c1c;display:inline-flex;align-items:center;justify-content:center;line-height:1}.tm-confirmed-role{display:inline-flex;align-items:center;justify-content:center;margin-left:3px;padding:0 4px;min-width:14px;height:12px;font-size:.4rem;font-family:var(--match-panel-font, "Times New Roman", "SimSun", serif);font-weight:700;color:#fff;border-radius:3px;letter-spacing:.3px;line-height:1;align-self:flex-start;text-shadow:0 1px 1px rgba(0,0,0,.25)}.tm-confirmed-role.tm-confirmed-role--t{background:var(--danger)}.tm-confirmed-role.tm-confirmed-role--r1,.tm-confirmed-role.tm-confirmed-role--r2{background:var(--warning)}.tm-confirmed-role.tm-confirmed-role--pm{background:var(--success)}.immediate-badge{width:12px;height:12px;background:var(--warning);color:#fff;font-size:.4rem;font-weight:700;border-radius:50%;border:1.5px solid var(--warning);display:inline-flex;align-items:center;justify-content:center;line-height:1}.tm-source{color:var(--text-secondary);font-size:.75rem;margin-bottom:0;padding:0 0 3px;border-bottom:1px dashed var(--border);line-height:1.3;text-align:left}.tm-source .editarea-container{min-height:auto;padding:2px 0;background:transparent;border:none}.tm-source .DraftEditor-root{font-size:.75rem;line-height:1.3}.tm-diff{color:var(--text-body);font-size:15px;font-family:var(--match-panel-font, "Times New Roman", "SimSun", serif);letter-spacing:normal!important;word-spacing:normal!important;text-align:left!important;text-justify:none!important;padding:4px 6px;margin:2px 0;background:var(--bg-section);border-left:3px solid #7C3AED;border-radius:2px;line-height:1.4}.tm-diff .diff-container,.tm-diff span{text-align:left!important;text-justify:none!important;letter-spacing:normal!important;word-spacing:normal!important}.tm-target{color:var(--text-body);font-size:.8rem;line-height:1.3;font-weight:500;padding:3px 0 0;text-align:left}.tm-target .editarea-container{min-height:auto;padding:2px 0;background:transparent;border:none}.tm-target .DraftEditor-root{font-size:.8rem;line-height:1.3;font-weight:500}.tm-details{margin-top:2px;padding-top:2px;border-top:1px solid var(--border);font-size:.6rem;color:var(--text-placeholder)}.tm-metadata{margin-top:4px;padding-top:3px;border-top:1px dashed var(--border);display:flex;flex-wrap:wrap;gap:6px;font-size:.65rem;color:var(--text-secondary);line-height:1.2;font-style:italic}.tm-metadata-item{display:inline-flex;align-items:center;color:var(--text-secondary);font-style:italic}.tm-metadata-item:after{content:"|";margin-left:6px;color:var(--text-placeholder)}.tm-metadata-item:last-child:after{content:"";margin-left:0}.tm-context-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 12px #0f172a1a;min-width:100px;padding:4px 0;-webkit-user-select:none;user-select:none}.tm-context-item{padding:7px 16px;font-size:13px;color:var(--text-body);cursor:pointer;transition:background .1s}.tm-context-item:hover{background:var(--brand-light)}.tm-context-item-danger{color:var(--danger)}.tm-context-item-danger:hover{background:var(--danger-bg)}.tm-edit-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:10000}.tm-edit-modal{background:var(--bg-card);border-radius:8px;box-shadow:0 8px 32px #0003;width:480px;max-width:95vw;display:flex;flex-direction:column}.tm-edit-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 10px;border-bottom:1px solid var(--border-disabled);font-size:14px;font-weight:600;color:var(--text-body)}.tm-edit-modal-close{background:none;border:none;font-size:20px;color:var(--text-placeholder);cursor:pointer;line-height:1;padding:0 2px}.tm-edit-modal-close:hover{color:var(--text-body)}.tm-edit-modal-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px}.tm-edit-field label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px}.tm-edit-textarea{width:100%;border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:13px;line-height:1.5;resize:vertical;box-sizing:border-box;font-family:inherit;transition:border-color .2s}.tm-edit-textarea:focus{outline:none;border-color:var(--brand)}.tm-edit-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:10px 18px 14px;border-top:1px solid var(--border-disabled)}.tm-edit-btn-cancel{padding:6px 18px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text-body);font-size:13px;cursor:pointer;transition:background .15s}.tm-edit-btn-cancel:hover{background:var(--bg-page)}.tm-edit-btn-save{padding:6px 18px;border:none;border-radius:4px;background:var(--brand);color:#fff;font-size:13px;cursor:pointer;transition:background .15s}.tm-edit-btn-save:hover:not(:disabled){background:var(--brand)}.tm-edit-btn-save:disabled{opacity:.6;cursor:default}@container tm-panel (max-width: 260px){.tm-source,.tm-target{font-size:.7rem}.tm-metadata{display:none}.tm-meta-right{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-item{padding:2px}.tm-origin{font-size:.6rem}}@container tm-panel (min-width: 261px) and (max-width: 320px){.tm-source,.tm-target{font-size:.72rem}.tm-metadata{font-size:.6rem;gap:4px}.tm-origin{font-size:.65rem;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}}@container tm-panel (min-width: 400px){.tm-source,.tm-target{font-size:.85rem}.tm-meta{font-size:.75rem}.tm-metadata{font-size:.7rem}.tm-item{padding:5px 4px}}.ai-snapshot-section{border-top:1px dashed #b7d3f2;margin-top:8px;padding-top:8px}.ai-snapshot-header{display:flex;align-items:center;gap:6px;margin-bottom:6px;padding:0 4px}.ai-snapshot-badge{background:var(--brand);color:#fff;padding:1px 6px;border-radius:3px;font-size:11px;font-weight:500}.ai-snapshot-hint{font-size:11px;color:var(--text-secondary)}.ai-snapshot-item{padding:6px 8px;margin:4px 0;background:var(--brand-light);border-left:3px solid var(--brand);border-radius:2px;cursor:pointer}.ai-snapshot-item:hover{background:var(--brand-light)}.ai-snapshot-target{font-size:.82rem;color:var(--text-body);line-height:1.4}.fragment-matches-section{border-top:1px dashed #ccc;margin-top:8px;padding-top:8px}.tm-panel .fragment-matches-section,.tm-panel .fragment-matches-section *{font-family:var(--editor-font, "Times New Roman", "SimSun", serif)!important}.fragment-matches-header{display:flex;align-items:center;gap:6px;margin-bottom:6px;padding:0 4px}.fragment-badge{background:var(--warning);color:#fff;padding:1px 6px;border-radius:3px;font-size:11px;font-weight:500}.fragment-count{font-size:11px;color:var(--text-secondary)}.fragment-match-item{padding:6px 8px;margin:4px 0;background:var(--warning-bg);border-left:3px solid var(--warning);border-radius:2px}.fragment-tm-source,.fragment-target{font-family:var(--editor-font, "Times New Roman", "SimSun", serif);font-size:var(--editor-size, 12px);color:var(--text-body);margin:2px 0;line-height:1.4}.fragment-label{font-family:var(--editor-font, "Times New Roman", "SimSun", serif);font-weight:500;color:var(--text-secondary);font-size:calc(var(--editor-size, 12px) * .85)}.fragment-highlight{background-color:var(--warning-bg);border-bottom:2px solid var(--warning);padding:0 1px;border-radius:1px}.fragment-meta{display:flex;align-items:center;gap:6px;margin-top:4px;font-family:var(--editor-font, "Times New Roman", "SimSun", serif);font-size:calc(var(--editor-size, 12px) * .8)}.fragment-coverage{background:var(--warning);color:#fff;padding:0 4px;border-radius:2px;font-weight:500}.fragment-type-badge{background:var(--border);color:var(--text-secondary);padding:0 4px;border-radius:2px;font-size:calc(var(--editor-size, 12px) * .75)}.fragment-memory{color:var(--text-placeholder);font-size:calc(var(--editor-size, 12px) * .75)}.tm-target-diff{padding:3px 6px;background:var(--success-bg);border-left:3px solid var(--success);font-size:.73rem;line-height:1.5;margin-top:1px}.tm-target-diff-label{display:block;font-size:.65rem;color:var(--success);font-weight:600;margin-bottom:2px}.insert-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0f172a1a;min-width:280px;max-width:400px;max-height:320px;display:flex;flex-direction:column;font-family:Times New Roman,瀹嬩綋,SimSun,serif;font-size:13px;overflow:hidden}.insert-menu-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-page);border-bottom:1px solid var(--border)}.insert-menu-title{font-weight:600;color:var(--text-body)}.insert-menu-hint{font-size:11px;color:var(--text-secondary)}.insert-menu-list{overflow-y:auto;padding:4px 0}.insert-menu-item{padding:8px 12px;cursor:pointer;transition:background-color .15s}.insert-menu-item:hover,.insert-menu-item.selected{background:var(--brand-light)}.insert-menu-item.selected{background:var(--brand)20}.insert-item-tag{display:flex;align-items:center;gap:8px}.tag-icon{display:inline-flex;align-items:center}.tag-badge{display:inline-flex;align-items:center;background:var(--brand);color:#fff;font-family:Consolas,Monaco,monospace;font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px;white-space:nowrap}.tag-badge.opening{border-radius:3px 0 0 3px;padding-right:4px}.tag-badge.opening:after{content:"";display:inline-block;width:0;height:0;border-left:5px solid var(--brand);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:2px}.tag-badge.closing{border-radius:0 3px 3px 0;padding-left:4px}.tag-badge.closing:before{content:"";display:inline-block;width:0;height:0;border-right:5px solid var(--brand);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-right:2px}.tag-name{color:var(--text-body);font-weight:500}.tag-type{font-size:11px;color:var(--text-secondary);background:var(--bg-section);padding:1px 6px;border-radius:3px}.insert-item-term{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.term-source{color:var(--text-secondary);font-style:italic}.term-arrow{color:var(--brand);font-size:12px}.term-target{color:var(--text-body);font-weight:500}.term-source-bracket{color:var(--text-secondary);font-size:12px;font-style:normal}.term-glossary{font-size:10px;color:var(--text-secondary);background:var(--bg-page);padding:1px 5px;border-radius:3px;margin-left:auto}.nt-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--success);color:#fff;font-family:Arial,sans-serif;font-size:9px;font-weight:700;padding:2px 4px;border-radius:3px;white-space:nowrap;min-width:18px}.nt-text{color:var(--success);font-weight:600;font-family:Times New Roman,瀹嬩綋,SimSun,serif!important}.nt-fullform{color:var(--text-secondary);font-size:11px;font-style:italic;font-family:Times New Roman,瀹嬩綋,SimSun,serif!important}.variant-badge{display:inline-flex;align-items:center;justify-content:center;background:#9c27b0;color:#fff;font-family:Arial,sans-serif;font-size:9px;font-weight:600;padding:2px 4px;border-radius:3px;white-space:nowrap}.insert-menu-list::-webkit-scrollbar{width:6px}.insert-menu-list::-webkit-scrollbar-track{background:var(--bg-section)}.insert-menu-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.insert-menu-list::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.insert-menu-empty{padding:20px;text-align:center;color:var(--text-placeholder)}.editarea-container{position:relative;min-height:24px;padding:0;font-family:var(--editor-font, "Times New Roman", "SimSun", serif)!important;font-size:var(--editor-size, 14px)!important;line-height:1.5;color:var(--text-body);cursor:text;text-align:left!important;text-justify:none;word-break:normal!important;overflow-wrap:break-word!important;word-wrap:break-word!important;hyphens:none!important;-webkit-hyphens:none!important;-ms-hyphens:none!important;white-space:pre-wrap;background-color:transparent!important;transition:background-color .15s ease;box-sizing:border-box;width:100%;height:100%}.editarea-container.readonly{cursor:default}.editarea-container.readonly .public-DraftEditorPlaceholder-root{display:none}.editarea-container.readonly .DraftEditor-editorContainer{cursor:default}.editarea-container .DraftEditor-root{position:relative;min-height:inherit;text-align:left!important;text-justify:none}.editarea-container .DraftEditor-editorContainer{position:relative;text-align:left!important;text-justify:none}.editarea-container .public-DraftEditor-content{min-height:inherit;outline:none;text-align:left!important;text-justify:none}.editarea-container .public-DraftEditorPlaceholder-root{color:var(--text-placeholder);font-style:italic;position:absolute;pointer-events:none;z-index:1}.editarea-container .public-DraftStyleDefault-block{margin:0;padding:0;min-height:20px;text-align:left!important;text-justify:none;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;-webkit-hyphens:none!important}.editarea-container div[data-block=true],.editarea-container div[data-contents=true],.editarea-container span[data-text=true]{text-align:left!important;text-justify:none;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;-webkit-hyphens:none!important}.editarea-container ::selection{background-color:#b3d4fc}.editarea-container.readonly ::selection{background-color:#d0e8ff}.editarea-container .BOLD{font-weight:700}.editarea-container .ITALIC{font-style:italic}.editarea-container .UNDERLINE{text-decoration:underline}.editarea-container .STRIKETHROUGH{text-decoration:line-through}.editarea-container .SUBSCRIPT{font-size:.7em;vertical-align:baseline;position:relative;top:.2em;display:inline-block;margin-left:0;margin-right:0}.editarea-container .SUPERSCRIPT{font-size:.7em;vertical-align:baseline;position:relative;top:-.35em;display:inline-block;margin-left:0;margin-right:0}.editarea-container [data-contents=true] [data-text=true]:empty:before{content:attr(data-placeholder);color:var(--text-placeholder);font-style:italic;pointer-events:none}.search-highlight{background-color:#b3d4fc;color:inherit;border-radius:2px;padding:0 1px;box-shadow:0 0 0 1px #b3d4fc4d}.search-highlight.current{background-color:#8bb9f7;box-shadow:0 0 0 2px #8bb9f780}.search-count{font-size:11px;color:var(--text-secondary);margin-left:8px}.space-visible{position:relative}.space-visible:after{content:'鈼?;  /* 浣跨敤瀹炲績鍦嗙偣 */
position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#38bdf8;font-size:.4em;font-weight:400;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1}.lexical-editarea.show-spaces .lexical-space-node{position:relative}.lexical-editarea.show-spaces .lexical-space-node:before{content:'鈼?;
position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#00d9ff!important;font-size:.3em;font-weight:400;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;z-index:1;opacity:1!important}.lexical-space-node,.lexical-nbsp-node,.lexical-editarea.source.show-spaces .lexical-nbsp-node{position:relative}.lexical-editarea.source.show-spaces .lexical-nbsp-node:before{content:'鈼?;
position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#00d9ff!important;font-size:.3em;font-weight:400;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;z-index:1;opacity:1!important}.nbsp-visible{position:relative}.nbsp-visible:after{content:'鈼?;
position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#38bdf8;font-size:.4em;font-weight:400;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1}.lexical-fullwidth-space-node,.lexical-editarea.show-spaces .lexical-fullwidth-space-node{position:relative}.lexical-editarea.show-spaces .lexical-fullwidth-space-node:before{content:'鈻?;
position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#00d9ff!important;font-size:.5em;font-weight:400;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;z-index:1;opacity:1!important}.fullwidth-space-visible{position:relative}.fullwidth-space-visible:after{content:'鈻?;
position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#38bdf8;font-size:.5em;font-weight:400;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1}.lexical-editarea{font-family:var(--editor-font, "Times New Roman", "SimSun", serif)!important;font-size:var(--editor-size, 6px)!important;line-height:1.5;color:var(--text-title);text-align:left;text-justify:none;word-break:normal;overflow-wrap:break-word;white-space:pre-wrap;min-height:24px;padding:0;outline:none;background:transparent}.lexical-editarea.source{font-size:var(--editor-size, 6px)!important}.lexical-editarea.target{font-size:var(--editor-target-size, var(--editor-size, 6px))!important}.lexical-editarea,.lexical-editarea *,.col-source,.col-source *,.col-target,.col-target *{font-family:var(--editor-font, "Times New Roman", "SimSun", serif)!important}.lexical-paragraph{margin:0;padding:0;text-align:left;text-justify:none}.lexical-text-bold{font-weight:700}.lexical-text-italic{font-style:italic}.lexical-text-underline{text-decoration:underline}.lexical-text-strikethrough{text-decoration:line-through}.lexical-text-subscript{font-size:.75em;vertical-align:sub}.lexical-text-superscript{font-size:.75em;vertical-align:super}.lexical-text-bold.lexical-text-italic{font-weight:700;font-style:italic}.lexical-text-bold.lexical-text-underline{font-weight:700;text-decoration:underline}.lexical-text-italic.lexical-text-underline{font-style:italic;text-decoration:underline}.lexical-text-strikethrough.lexical-text-underline{text-decoration:line-through underline}.lexical-editarea ::selection{background-color:var(--brand-border)}.lexical-svg-tag-wrapper{position:relative;display:inline}.lexical-svg-tag-wrapper.selected .xliff-tag-entity{background-color:var(--brand-border);padding:2.5px 0;box-sizing:content-box}.lexical-editarea[contenteditable=false]{cursor:text;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.lexical-editarea[contenteditable=false] ::selection{background-color:var(--brand-light)}.lexical-editarea span[style*="background-color: #fef08a"]{background-color:#fef08a!important;padding:0 1px}.lexical-editarea mark,.lexical-editarea .lexical-text-highlight{background-color:#fef08a!important;padding:0 1px;border-radius:2px;color:inherit}.lexical-editarea mark.qa-highlight-selected,.lexical-editarea .lexical-text-highlight.qa-highlight-selected{background-color:#ff8c00!important;border:2px solid #ff4500!important;padding:1px 2px!important;border-radius:3px;font-weight:700;box-shadow:0 0 5px #ff450080}::highlight(spelling-error){text-decoration:wavy underline var(--danger);text-decoration-thickness:.8px;text-underline-offset:1px}.spell-suggestion-popup{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #0f172a1a;min-width:160px;max-width:280px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;overflow:hidden;animation:spellPopupFadeIn .12s ease-out}@keyframes spellPopupFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.spell-popup-header{padding:8px 12px 6px;border-bottom:1px solid var(--border-disabled);display:flex;align-items:center;gap:6px}.spell-popup-title{font-size:11px;color:var(--text-secondary);font-weight:500}.spell-popup-word{font-size:12px;color:var(--danger);font-weight:600}.spell-popup-list{padding:4px 0;max-height:180px;overflow-y:auto}.spell-popup-item{padding:6px 12px;cursor:pointer;color:var(--brand);font-size:13px;transition:background-color .1s}.spell-popup-item:hover{background:var(--brand-light)}.spell-popup-footer{padding:6px 12px;border-top:1px solid var(--border-disabled);display:flex;justify-content:flex-end}.spell-popup-ignore{font-size:11px;color:var(--text-secondary);cursor:pointer;padding:2px 6px;border-radius:3px}.spell-popup-ignore:hover{background:var(--bg-section);color:var(--text-body)}.fuzzy-confirm-bar{display:flex;align-items:center;padding:4px 8px;background:var(--danger-bg);border-left:3px solid var(--danger);font-size:11px;color:var(--danger);line-height:1.4;gap:8px;animation:fuzzyBarFadeIn .15s ease-out}@keyframes fuzzyBarFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.fuzzy-confirm-bar-text{flex:1;font-size:11px;line-height:1.5;color:var(--danger)}.fuzzy-confirm-bar-indent{visibility:hidden}.term-edit-modal-mask{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:10000}.term-edit-modal{background:var(--bg-card);border-radius:8px;box-shadow:0 4px 12px #0f172a1a;width:700px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.term-edit-modal form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.term-edit-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.term-edit-modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-body)}.term-edit-modal-close{background:none;border:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.term-edit-modal-close:hover{color:var(--text-body)}.term-edit-modal-body{padding:20px;overflow-y:auto;flex:1}.term-edit-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);padding:8px 12px;border-radius:4px;margin-bottom:16px;font-size:13px}.term-edit-field{margin-bottom:16px}.term-edit-label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:6px;font-family:Times New Roman,瀹嬩綋,serif}.term-edit-label.required:after{content:" *";color:var(--danger)}.term-edit-input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;font-family:Times New Roman,瀹嬩綋,serif;transition:border-color .2s;box-sizing:border-box}.term-edit-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.term-edit-input:disabled{background:var(--bg-page);cursor:not-allowed;color:var(--text-placeholder)}.term-edit-input::placeholder{color:var(--border-strong)}.term-edit-modal-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0;background:var(--bg-card)}.term-edit-btn{padding:6px 16px;border-radius:4px;font-size:14px;cursor:pointer;border:1px solid transparent;transition:all .2s;font-family:Times New Roman,瀹嬩綋,serif}.term-edit-btn:disabled{cursor:not-allowed;opacity:.6}.term-edit-btn-cancel{background:var(--bg-card);border-color:var(--border);color:var(--text-body)}.term-edit-btn-cancel:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.term-edit-btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.term-edit-btn-primary:hover:not(:disabled){background:var(--brand);border-color:var(--brand)}.term-edit-btn-primary:disabled{background:var(--border);border-color:var(--border)}.term-edit-btn-secondary{background:var(--bg-card);border:1px solid var(--brand);color:var(--brand);padding:6px 16px;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s;font-family:Times New Roman,瀹嬩綋,serif}.term-edit-btn-secondary:hover:not(:disabled){background:var(--brand-light)}.term-edit-btn-secondary:disabled{cursor:not-allowed;opacity:.6}.term-variants-section{margin-top:10px}.term-variants-title{font-size:12px;color:var(--text-secondary);margin-bottom:6px;font-weight:500;font-family:Times New Roman,瀹嬩綋,serif;display:flex;align-items:center;justify-content:space-between}.term-variants-list{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto;padding:6px;background:var(--bg-section);border:1px solid var(--border);border-radius:3px}.term-variant-item{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;transition:all .2s}.term-variant-item.selected{background:var(--brand-light)}.term-variant-checkbox{width:14px;height:14px;cursor:pointer;flex-shrink:0;margin:0}.term-variant-text{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:3px;font-size:13px;font-family:Times New Roman,瀹嬩綋,serif;line-height:1.2}.term-variant-text:disabled{background:var(--bg-page)}.term-variant-type{font-size:11px;color:var(--text-placeholder);min-width:50px;text-align:right;font-family:Times New Roman,瀹嬩綋,serif}.term-variant-delete{padding:3px 6px;border:1px solid var(--danger);border-radius:3px;background:var(--bg-card);color:var(--danger);font-size:11px;cursor:pointer;flex-shrink:0;line-height:1.2;font-family:Times New Roman,瀹嬩綋,serif;transition:all .2s}.term-variant-delete:hover{background:var(--danger-bg)}.term-variant-add{margin-top:6px;display:flex;gap:6px;align-items:center}.term-variant-input{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:3px;font-size:13px;font-family:Times New Roman,瀹嬩綋,serif;line-height:1.2}.term-variant-add-btn{padding:4px 12px;border:1px solid var(--brand);border-radius:3px;font-size:12px;cursor:pointer;white-space:nowrap;line-height:1.2;font-family:Times New Roman,瀹嬩綋,serif;transition:all .2s}.term-variant-add-btn:enabled{background:var(--brand);color:#fff}.term-variant-add-btn:disabled{background:var(--bg-page);color:var(--text-placeholder);cursor:not-allowed}.term-variant-add-btn:hover:enabled{background:var(--brand)}.term-metadata-row .term-edit-field{margin-bottom:0}.term-edit-btn-fetch{display:block;margin-top:4px;margin-bottom:6px;margin-left:auto;font-size:11px;padding:3px 10px;border-radius:3px;border:1px solid #b0b0b0;background:var(--bg-section);color:var(--text-body);cursor:pointer;white-space:nowrap}.term-edit-btn-fetch:hover:not(:disabled){background:var(--bg-section);border-color:var(--text-secondary)}.term-edit-btn-fetch:disabled{opacity:.5;cursor:not-allowed}.editor-status-bar{display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--bg-section);border-top:1px solid var(--border);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,PingFang SC,Microsoft YaHei,寰蒋闆呴粦,sans-serif!important;font-size:13px!important;font-weight:400!important;line-height:28px!important;color:var(--text-secondary);flex-shrink:0;height:28px;box-sizing:border-box;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.editor-status-bar::-webkit-scrollbar{display:none}.status-section{display:flex;align-items:center;gap:3px;white-space:nowrap;flex-shrink:0;height:100%}.editor-status-bar .status-section>.status-label{color:var(--text-placeholder);font-size:inherit!important;font-weight:400!important;line-height:1!important;vertical-align:middle!important;display:inline-flex!important;align-items:center!important;height:100%!important;margin:0!important;padding:0!important}.editor-status-bar .status-section>.status-value{color:var(--text-body);font-size:inherit!important;font-weight:400!important;line-height:1!important;vertical-align:middle!important;display:inline-flex!important;align-items:center!important;height:100%!important;margin:0!important;padding:0!important}.editor-status-bar .status-section>.status-value.highlight{color:var(--brand);font-weight:400!important;line-height:1!important;vertical-align:middle!important;display:inline-flex!important;align-items:center!important;height:100%!important;margin:0!important;padding:0!important}.editor-status-bar .status-separator{color:var(--border-strong);font-size:inherit!important;margin:0 2px!important;font-weight:400!important;line-height:1!important;vertical-align:middle!important;display:inline-flex!important;align-items:center!important;height:100%!important;padding:0!important}.status-value.role-pm{color:var(--danger);font-weight:400!important}.status-value.role-r2{color:#9c27b0;font-weight:400!important}.status-value.role-r1{color:var(--warning);font-weight:400!important}.status-value.role-t{color:var(--success);font-weight:400!important}.status-value.split-position{color:#d97706;font-weight:400!important;background:var(--warning-bg);padding:1px 4px;border-radius:3px}.status-loading-indicator{width:8px;height:8px;border-radius:50%;background-color:var(--success);flex-shrink:0;animation:statusPulse 1.2s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-dialog{background:var(--bg-card);border-radius:8px;box-shadow:0 4px 20px #0f172a1a;width:90%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.add-term-dialog{max-width:720px;max-height:80vh;overflow-y:auto}.add-term-floating{position:fixed;left:50%;top:calc(50% + 26px);transform:translate(-50%,-50%);max-width:720px;width:720px;z-index:8000;box-shadow:0 8px 32px #00000038,0 2px 8px #0f172a14;border:1px solid var(--border)}.variant-type-badge{flex-shrink:0;padding:2px 8px;background:var(--brand-light);color:var(--brand);font-size:11px;border-radius:3px;font-weight:500;white-space:nowrap}.variant-text-input{flex:1;border:1px solid var(--border);background:var(--bg-card);font-size:13px;padding:6px 10px;color:var(--text-body);border-radius:3px;min-width:0}.variant-delete-btn{flex-shrink:0;padding:6px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-secondary);font-size:12px;white-space:nowrap}.loading-hint,.no-variants-hint{padding:12px;text-align:center;color:var(--text-secondary);font-size:13px;background:var(--bg-page);border:1px solid var(--border);border-radius:4px}.custom-variant-input{display:flex;gap:8px;align-items:center}.custom-variant-input .form-input{flex:1}.custom-variant-input .btn{flex-shrink:0}.form-group .form-input.input-error{border-color:var(--danger);box-shadow:0 0 0 2px #d32f2f26}.btn.fetch-variants-btn{display:block;margin-top:6px;margin-left:auto;font-size:11px;padding:4px 12px;border-radius:4px;border:1px solid var(--border);background:var(--bg-page);color:var(--text-body);cursor:pointer;white-space:nowrap}.btn.fetch-variants-btn:hover:not(:disabled){background:var(--border);border-color:var(--text-placeholder)}.btn.fetch-variants-btn:disabled{opacity:.5;cursor:not-allowed}.btn.btn-sm{font-size:11px;padding:3px 10px;line-height:1.4}.term-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.term-column{min-width:0}.term-metadata-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.term-metadata-row .form-group{margin-bottom:0}.term-metadata-row select{width:100%;padding:6px 8px;border-radius:4px;border:1px solid var(--border);font-size:13px}@media (max-width: 768px){.add-term-dialog{max-width:90vw;max-height:90vh}.term-columns,.term-metadata-row{grid-template-columns:1fr}}.add-nt-dialog{max-width:600px;max-height:80vh;overflow-y:auto;font-family:Microsoft YaHei,Arial,sans-serif!important}.add-nt-dialog *:not(.form-input):not(.variant-text-input){font-family:Microsoft YaHei,Arial,sans-serif!important}.add-nt-dialog h3{font-family:Microsoft YaHei,Arial,sans-serif!important}.form-group label{display:block;margin-bottom:4px;font-size:12px;font-weight:500;color:var(--text-body);font-family:Microsoft YaHei,Arial,sans-serif!important}.add-nt-dialog .form-group label.checkbox-label{display:inline-flex!important;align-items:center;gap:6px;margin-bottom:0;cursor:pointer}.add-nt-dialog .form-group label.checkbox-label input[type=checkbox]{margin:0;flex-shrink:0;cursor:pointer;width:14px;height:14px}.add-nt-dialog .form-group label.checkbox-label span{-webkit-user-select:none;user-select:none;font-family:Microsoft YaHei,Arial,sans-serif}.form-input{width:100%;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:4px;box-sizing:border-box;font-family:Times New Roman,serif}.form-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1a}.form-hint{margin-top:4px;font-size:11px;color:var(--text-secondary);font-family:Microsoft YaHei,Arial,sans-serif!important}.variants-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;overflow-x:hidden;padding:8px;background:var(--bg-page);border:1px solid var(--border);border-radius:4px;width:100%;box-sizing:border-box}.variant-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px}.variant-item input[type=checkbox]{flex-shrink:0;width:14px;height:14px;cursor:pointer;margin:0}.variant-text-input{flex:1;border:1px solid var(--border);background:var(--bg-card);font-size:13px;padding:6px 10px;color:var(--text-body);border-radius:3px;min-width:0;font-family:Times New Roman,serif}.variant-text-input:disabled{color:var(--text-placeholder);background:var(--bg-page);cursor:not-allowed}.variant-text-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1a}.variant-delete-btn{flex-shrink:0;padding:6px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-secondary);font-size:12px;white-space:nowrap;font-family:Microsoft YaHei,Arial,sans-serif!important}.variant-delete-btn:hover{background:var(--bg-page);border-color:var(--text-placeholder);color:var(--danger)}.add-nt-dialog .btn{padding:8px 16px;font-size:13px;border-radius:4px;cursor:pointer;border:none;transition:all .2s;font-family:Microsoft YaHei,Arial,sans-serif!important}.add-nt-dialog .btn-primary{background:var(--brand);color:#fff}.add-nt-dialog .btn-primary:hover:not(:disabled){background:var(--brand-hover)}.add-nt-dialog .btn-secondary{background:var(--bg-page);color:var(--text-body);border:1px solid var(--border)}.add-nt-dialog .btn-secondary:hover:not(:disabled){background:var(--border)}.add-nt-dialog .btn:disabled{opacity:.5;cursor:not-allowed}.find-replace-dialog{position:fixed;top:80px;right:0;width:376px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px 0 0 8px;box-shadow:var(--shadow-modal);z-index:1000;font-family:Microsoft YaHei,微软雅黑,sans-serif;cursor:move}.find-replace-dialog .dialog-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid var(--border);background:var(--bg-section);border-radius:8px 0 0;cursor:move}.find-replace-dialog .dialog-header h4{margin:0;font-size:13px;font-weight:600;color:var(--text-title)}.find-replace-dialog .close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.find-replace-dialog .close-btn:hover{color:var(--danger)}.find-replace-dialog .dialog-body{padding:10px}.find-replace-dialog .scope-selector{display:flex;gap:12px;margin-bottom:8px;padding:4px 8px;background:var(--bg-section);border-radius:var(--radius-tag)}.find-replace-dialog .scope-selector label{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:12px}.find-replace-dialog .scope-selector input[type=radio]{cursor:pointer}.find-replace-dialog .input-group{margin-bottom:6px}.find-replace-dialog .input-group label{display:block;font-size:12px;color:var(--text-body);margin-bottom:3px;font-weight:500}.find-replace-dialog .input-group input[type=text]{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:3px;font-size:12px;font-family:Times New Roman,serif;transition:border-color .2s}.find-replace-dialog .input-group input[type=text]:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.find-replace-dialog .search-options{display:flex;gap:12px;margin-bottom:6px;padding:4px 6px;background:var(--bg-section);border-radius:3px}.find-replace-dialog .search-options label{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:11px;color:var(--text-secondary)}.find-replace-dialog .search-options input[type=checkbox]{cursor:pointer}.find-replace-dialog .match-stats{padding:4px 8px;background:var(--brand-light);color:var(--brand);border-radius:3px;font-size:11px;margin-bottom:6px;text-align:center;font-weight:500}.find-replace-dialog .action-buttons{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:0;align-items:center}.find-replace-dialog .action-buttons button{padding:4px 10px;border:1px solid var(--border);border-radius:3px;font-size:11px;font-family:Microsoft YaHei,微软雅黑,sans-serif;cursor:pointer;transition:all .2s;font-weight:500;background:var(--bg-card);color:var(--text-body);white-space:nowrap;width:auto}.find-replace-dialog .action-buttons button:hover:not(:disabled){background:var(--brand);color:#fff;border-color:var(--brand)}.find-replace-dialog .action-buttons button:disabled{opacity:.5;cursor:not-allowed}.find-replace-dialog .hint-message{padding:10px;background:var(--warning-bg);border-left:3px solid var(--warning);border-radius:var(--radius-tag);font-size:11px;color:var(--text-body);line-height:1.5}.segment-notes-panel{position:absolute;top:0;right:0;width:280px;height:100%;background:var(--bg-card);border-left:1px solid var(--border);box-shadow:-2px 0 8px #0000001a;display:flex;flex-direction:column;z-index:100}.notes-header{display:flex;align-items:center;padding:8px 12px;background:var(--bg-page);border-bottom:1px solid var(--border);flex-shrink:0}.notes-title{font-weight:600;font-size:14px;color:var(--text-body)}.notes-count{margin-left:8px;padding:2px 6px;background:var(--border);border-radius:10px;font-size:11px;color:var(--text-secondary)}.notes-close{margin-left:auto;background:none;border:none;font-size:18px;color:var(--text-placeholder);cursor:pointer;padding:0 4px}.notes-close:hover{color:var(--text-body)}.notes-list{flex:1;overflow-y:auto;padding:8px}.notes-empty{text-align:center;color:var(--text-placeholder);padding:24px;font-size:13px}.note-item{padding:8px 10px;background:var(--bg-section);border:1px solid var(--border);border-radius:6px;margin-bottom:8px}.note-item.resolved{opacity:.7;background:var(--bg-section)}.note-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:11px}.note-author{font-weight:600;color:var(--brand)}.note-time{color:var(--text-placeholder)}.note-resolved-badge{margin-left:auto;padding:2px 6px;background:var(--success);color:#fff;border-radius:3px;font-size:10px}.note-content{font-size:13px;line-height:1.5;color:var(--text-body);white-space:pre-wrap;word-break:break-word}.note-edit textarea{width:100%;min-height:60px;padding:6px;border:1px solid var(--brand);border-radius:4px;font-size:13px;resize:vertical}.note-edit-actions{display:flex;gap:8px;margin-top:6px}.note-edit-actions button{padding:4px 12px;border:none;border-radius:4px;font-size:12px;cursor:pointer}.note-edit-actions button:first-child{background:var(--brand);color:#fff}.note-edit-actions button:last-child{background:var(--border);color:var(--text-body)}.note-actions{display:flex;gap:8px;margin-top:8px;padding-top:6px;border-top:1px dashed var(--border)}.note-action-btn{padding:3px 8px;background:none;border:1px solid var(--border);border-radius:3px;font-size:11px;color:var(--text-secondary);cursor:pointer}.note-action-btn:hover{background:var(--bg-section);color:var(--text-body)}.note-action-btn.delete{color:var(--danger);border-color:var(--danger-bg)}.note-action-btn.delete:hover{background:var(--danger-bg)}.notes-input{display:flex;gap:8px;padding:10px;border-top:1px solid var(--border);background:var(--bg-section);flex-shrink:0}.notes-input textarea{flex:1;min-height:40px;max-height:100px;padding:8px;border:1px solid var(--border);border-radius:4px;font-size:13px;resize:none}.notes-input textarea:focus{border-color:var(--brand);outline:none}.notes-submit{padding:8px 16px;background:var(--brand);color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer;align-self:flex-end}.notes-submit:hover:not(:disabled){background:var(--brand-hover)}.notes-submit:disabled{background:var(--border-strong);cursor:not-allowed}.note-icon-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 4px;border-radius:3px;position:relative;opacity:.6;transition:opacity .2s}.note-icon-btn:hover{opacity:1;background:var(--bg-section)}.note-icon-btn.add{opacity:.3}.note-icon-btn.add:hover{opacity:.8}.note-icon-btn.unresolved{opacity:1}.note-icon-btn.unresolved .note-count-badge{background:var(--warning)}.note-icon-btn.resolved{opacity:.7}.note-icon-btn.resolved .note-count-badge{background:var(--success)}.note-count-badge{position:absolute;top:-4px;right:-4px;min-width:14px;height:14px;padding:0 4px;background:var(--warning);color:#fff;border-radius:7px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center}.comment-panel{position:fixed;right:20px;top:50%;transform:translateY(-50%);width:460px;max-height:80vh;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 12px #0f172a1a;display:flex;flex-direction:column;z-index:1000}.comment-panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-disabled);background:var(--bg-section);border-radius:8px 8px 0 0;cursor:move;-webkit-user-select:none;user-select:none}.comment-panel-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-body)}.header-actions{display:flex;align-items:center;gap:8px}.btn-delete-all{padding:4px 12px;font-size:12px;background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning);border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500}.btn-delete-all:hover{background:var(--warning-bg);border-color:var(--warning);color:var(--danger)}.close-btn{background:none;border:none;font-size:16px;color:var(--text-placeholder);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.close-btn:hover{background:var(--bg-section);color:var(--text-secondary)}.comment-panel-body{flex:1;overflow-y:auto;padding:16px}.loading,.empty-message{text-align:center;color:var(--text-placeholder);padding:20px;font-size:14px}.comment-list{display:flex;flex-direction:column;gap:16px}.comment-item{padding:12px;background:var(--bg-section);border:1px solid #e9ecef;border-radius:6px;transition:all .2s}.comment-item:hover{border-color:var(--danger-border);background:var(--bg-card)}.comment-selected-text{font-size:13px;color:var(--text-secondary);margin-bottom:8px;padding:6px 8px;background:var(--danger-bg);border-radius:4px;font-style:italic;border-left:3px solid #ffb3b3}.comment-content{font-size:14px;color:var(--text-body);line-height:1.5;margin-bottom:8px;word-wrap:break-word}.comment-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-placeholder);margin-bottom:8px}.comment-author{font-weight:500}.comment-time{color:var(--text-placeholder)}.comment-actions{display:flex;gap:8px}.comment-actions button{padding:4px 12px;font-size:12px;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn-edit,.btn-delete{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)!important}.btn-edit:hover{background:var(--brand-light);color:var(--brand);border-color:var(--brand)!important}.btn-delete:hover{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)!important}.comment-edit textarea{width:100%;padding:8px;border:1px solid var(--border);border-radius:4px;font-size:14px;resize:vertical;margin-bottom:8px;font-family:inherit;min-height:140px}.comment-edit textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1a}.comment-panel.is-dragging .comment-panel-body{pointer-events:none;-webkit-user-select:none;user-select:none}.comment-panel.is-dragging .comment-panel-header{cursor:grabbing}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:url(/login-bg.jpg) center center / cover no-repeat;padding:20px;overflow:hidden}.login-container{display:flex;align-items:center;justify-content:flex-end;gap:60px;width:100%;max-width:1100px;padding-right:80px}.login-illustration{display:none}.login-illustration-img{width:100%;max-width:380px;height:auto;object-fit:contain;filter:drop-shadow(0 8px 32px rgba(15,23,42,.18));animation:float 4s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.login-card-wrapper{flex:0 0 360px;width:360px}.login-card{background:var(--bg-card);border-radius:var(--radius-modal);padding:40px 36px 36px;box-shadow:0 16px 48px #0f172a2e}.login-card-title{font-size:22px;font-weight:700;text-align:center;color:var(--text-title);margin:0 0 32px;letter-spacing:.5px}.login-card-header{display:flex;flex-direction:column;align-items:center;margin-bottom:28px}.login-card-logo{width:64px;height:64px;object-fit:contain;border-radius:10px;margin-bottom:10px}.login-card-brand{font-size:18px;font-weight:700;color:var(--text-title);margin:0;text-align:center;letter-spacing:.5px}.login-card-title{font-size:20px;font-weight:700;text-align:center;color:var(--text-title);margin:0 0 28px}.login-header,.login-logo{display:none}.error-message{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-btn);padding:10px 12px;margin-bottom:16px;color:var(--danger);font-size:13px}.form-field{margin-bottom:20px}.form-field label{display:none}.login-card .form-field input{width:100%;height:48px;min-height:48px;max-height:48px;padding:0 16px;border:1.5px solid var(--border);border-radius:var(--radius-input);font-size:15px;color:var(--text-body);transition:border-color .2s,box-shadow .2s;box-sizing:border-box;background:var(--bg-section);line-height:48px;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;overflow:hidden}.login-card .form-field input:focus{outline:none;border-color:var(--brand);background:var(--bg-card);box-shadow:0 0 0 3px #2563eb1f}.login-card .form-field input::placeholder{color:var(--text-placeholder);font-size:14px}.login-card .form-field input:disabled{background:var(--border-disabled);cursor:not-allowed}.form-field-checkbox{margin-bottom:18px;margin-top:-6px}.form-field-checkbox label{display:flex;align-items:center;cursor:pointer;font-size:13px;color:var(--text-secondary)}.form-field-checkbox input[type=checkbox]{width:16px;height:16px;margin-right:6px;cursor:pointer;flex-shrink:0}.form-field-checkbox span{-webkit-user-select:none;user-select:none}.btn-login{width:100%;height:50px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-input);font-size:17px;font-weight:600;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;margin-top:8px;letter-spacing:2px}.btn-login:hover:not(:disabled){background:var(--brand-hover);box-shadow:0 4px 16px #2563eb4d;transform:translateY(-1px)}.btn-login:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-login:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:20px;text-align:center;font-size:13px;color:var(--text-secondary)}.btn-link{background:none;border:none;color:var(--brand);cursor:pointer;font-size:13px;padding:0;margin-left:4px}.btn-link:hover{text-decoration:underline}.login-info{margin-top:20px;text-align:center}.login-info p{color:#fffc;font-size:12px;margin:0}@media (max-width: 680px){.login-illustration{display:none}.login-container{justify-content:center;padding-right:0}.login-card-wrapper{flex:unset;width:100%;max-width:400px}}.tm-list{padding:20px;max-width:1400px;margin:0 auto;height:100vh;display:flex;flex-direction:column}.tm-list .tabs-bar{display:flex;gap:4px;background:var(--bg-section);border-radius:var(--radius-btn);padding:3px;margin-bottom:12px}.tm-list .tabs-bar .tab{padding:6px 14px;font-size:12px;font-weight:400;color:var(--text-secondary);cursor:pointer;border:none;background:transparent;border-radius:var(--radius-btn);transition:all .15s;white-space:nowrap}.tm-list .tabs-bar .tab:hover{background:var(--border);color:var(--text-body)}.tm-list .tabs-bar .tab.active{background:var(--bg-card);color:var(--brand);font-weight:600;box-shadow:var(--shadow-card)}.tm-list .toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-card) var(--radius-card) 0 0}.tm-list .toolbar-actions{display:flex;gap:8px;align-items:center}.tm-list .toolbar-btn{padding:6px 12px!important;border:1px solid var(--border)!important;border-radius:var(--radius-btn)!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important}.tm-list .toolbar-btn:hover:not(.disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.tm-list .toolbar-btn.disabled{opacity:.4!important;cursor:not-allowed!important}.tm-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:hidden;box-shadow:var(--shadow-card)}.tm-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.tm-table th{padding:.4rem 1.5rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.tm-table th:nth-child(1),.tm-table td:nth-child(1){width:40px;text-align:center}.tm-table th:nth-child(2),.tm-table td:nth-child(2){width:140px}.tm-table th:nth-child(3),.tm-table td:nth-child(3){width:100px}.tm-table th:nth-child(4),.tm-table td:nth-child(4){width:100px}.tm-table th:nth-child(5),.tm-table td:nth-child(5){width:120px}.tm-table th:nth-child(6),.tm-table td:nth-child(6){width:100px}.tm-table th:nth-child(7),.tm-table td:nth-child(7){width:100px}.tm-table th:nth-child(8),.tm-table td:nth-child(8){width:95px;text-align:center}.tm-table th:nth-child(9),.tm-table td:nth-child(9){width:70px;text-align:center}.tm-table th:nth-child(10),.tm-table td:nth-child(10){width:110px}.tm-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s}.tm-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.tm-table tbody tr.selected,.tm-table tbody tr.selected:hover{background-color:var(--brand-light)}.tm-table tbody tr:last-child{border-bottom:none}.tm-table td{padding:.4rem 1.5rem;font-size:.8rem;color:var(--text-body);line-height:1.3}.tm-name{font-weight:500;color:var(--brand)}.tm-lang,.tm-domain,.tm-client,.tm-subject{color:var(--text-secondary);font-size:.75rem}.tm-count{color:var(--text-secondary);font-size:.75rem;text-align:center}.tm-date{color:var(--text-placeholder);font-size:.75rem}.tm-list .empty-state{text-align:center;padding:3rem;color:var(--text-placeholder)}.tm-list .empty-state p{margin-bottom:1rem;font-size:1.1rem}.tm-list .empty-state button{padding:.625rem 1.5rem;background:var(--brand);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.95rem}.tm-list .empty-state button:hover{background:var(--brand-hover)}.tm-list .loading-state{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1rem}.tm-list .table-container{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;max-height:calc(100vh - 220px);border-radius:4px;background:var(--bg-card);box-shadow:var(--shadow-card);border:1px solid var(--border)!important;border-bottom:3px solid var(--border-strong)!important;margin-bottom:20px!important;padding-bottom:8px!important;position:relative!important}.tm-list .table-container:after{content:""!important;display:block!important;position:sticky!important;bottom:0!important;left:0!important;right:0!important;height:4px!important;background:var(--border-strong)!important;border-top:2px solid var(--text-secondary)!important;pointer-events:none!important;z-index:100!important;box-shadow:0 -1px 3px #0f172a0f!important}.tm-list .col-select{width:40px;text-align:center;padding:8px 10px!important}.tm-list .col-select input[type=checkbox]{width:16px;height:16px;cursor:pointer}.tm-list .row-number{color:var(--text-placeholder);font-size:12px;display:inline-block;width:16px;text-align:center}.tm-list .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.tm-list .modal-overlay .modal-content select,.tm-list .modal-overlay .modal-content input[type=text],.tm-list .modal-overlay .modal-content input[type=number]{padding:6px 10px;font-size:13px;box-sizing:border-box}.required{color:var(--danger);margin-left:2px}.modal-overlay .modal-content.glossary-modal{overflow:visible!important;max-height:none!important}.modal-overlay .modal-content.glossary-modal .modal-body{overflow:visible!important}.modal-overlay .modal-content.glossary-modal .form-row{display:grid!important;grid-template-columns:1fr 1fr;gap:16px;overflow:visible!important;position:relative;z-index:10;align-items:start}.modal-overlay .modal-content.glossary-modal .form-row .form-group{overflow:visible!important;position:relative;z-index:10;align-self:start}.modal-overlay .modal-content.glossary-modal .form-group{overflow:visible;position:relative}.tm-management{padding:12px!important;height:100%;display:flex;flex-direction:column}.tm-mgmt-header{display:flex;align-items:center;gap:15px!important;margin-bottom:10px!important;padding-bottom:8px!important;border-bottom:2px solid var(--border)}.tm-mgmt-header h2{margin:0;flex:1;font-size:18px!important;color:var(--text-title);line-height:1.3!important}.header-stats{color:var(--text-secondary);font-size:13px!important;line-height:1.3!important}.filter-bar{display:flex;flex-wrap:wrap;gap:8px!important;padding:8px 12px!important;background:var(--bg-section);border:1px solid var(--border);border-radius:4px;margin-bottom:10px!important;line-height:1.2!important;align-items:center}.filter-group{display:flex;align-items:center;gap:6px!important}.filter-group label{font-size:12px!important;color:var(--text-body);white-space:nowrap}.filter-group select,.filter-group input{padding:4px 8px!important;border:1px solid var(--border);border-radius:4px;font-size:12px!important;background:var(--bg-card);line-height:1.3!important}.sort-mode-select{padding:4px 8px!important;border:1px solid var(--border);border-radius:4px;font-size:12px!important;background:var(--bg-card);cursor:pointer;color:var(--text-body);line-height:1.3!important}.toolbar{display:flex;gap:8px!important;margin-bottom:10px!important}.toolbar-btn{padding:6px 12px!important;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:13px!important;color:var(--text-body);transition:all .2s;line-height:1.3!important}.table-container{flex:1;overflow:auto;border:1px solid var(--border);border-radius:4px}.units-table{width:100%;border-collapse:collapse;font-size:14px;font-family:Times New Roman,serif}.units-table th{padding:8px 12px;text-align:left;font-weight:600;color:var(--text-body);border-bottom:2px solid var(--border);border-right:2px solid red;white-space:nowrap}.units-table td{padding:4px 12px;border-bottom:1px solid var(--bg-section);border-right:2px solid red;line-height:1.3}.finalized-badge{display:inline-block;padding:1px 6px;background:var(--warning);color:#fff;font-size:10px;font-weight:600;border-radius:3px;margin-right:6px;vertical-align:middle}.finalized-badge-small{display:inline-block;padding:0 4px;background:var(--warning);color:#fff;font-size:10px;font-weight:500;border-radius:2px;white-space:nowrap}.units-table td.col-select{padding:0!important}.col-select,.col-select-header{width:30px!important;min-width:30px!important;max-width:30px!important;text-align:center;vertical-align:middle;padding:0!important;margin:0}.col-select input[type=checkbox]{margin:0;padding:0;width:14px;height:14px;vertical-align:middle;cursor:pointer}.row-number{color:var(--text-placeholder);font-size:12px;display:inline-block;line-height:1;padding:0;margin:0;vertical-align:middle}.tm-management .col-source{white-space:normal;word-wrap:break-word;line-height:1.3;padding-top:4px!important;padding-bottom:4px!important;text-align:justify!important;text-justify:inter-word!important}.tm-management .col-source,.tm-management .col-source *,.tm-management .col-source>*,.tm-management .col-source div,.tm-management .col-source span,.tm-management .col-source p{text-align:justify!important;text-align-last:left!important}.tm-management .col-source [style*=text-align],.tm-management .col-source div[style],.tm-management .col-source span[style],.tm-management .col-source p[style]{text-align:justify!important;text-align-last:left!important;text-justify:inter-word!important}.tm-management .col-target{white-space:normal;word-wrap:break-word;line-height:1.3;padding-top:4px!important;padding-bottom:4px!important;font-size:12px;text-align:justify!important;text-justify:inter-word!important}.tm-management .col-target,.tm-management .col-target *,.tm-management .col-target>*,.tm-management .col-target div,.tm-management .col-target span,.tm-management .col-target p{text-align:justify!important;text-align-last:left!important}.tm-management .col-target [style*=text-align],.tm-management .col-target div[style],.tm-management .col-target span[style],.tm-management .col-target p[style]{text-align:justify!important;text-align-last:left!important;text-justify:inter-word!important}.target-content{margin-bottom:2px;line-height:1.3;width:100%;max-width:100%;overflow-wrap:break-word;word-break:break-word}.target-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:10px;color:var(--text-placeholder);line-height:1.2;margin-top:0;padding-top:0;width:100%;max-width:100%}.col-actions-header{width:70px!important;min-width:70px!important;max-width:70px!important;text-align:center;padding:8px 4px!important}.col-actions{width:70px!important;min-width:70px!important;max-width:70px!important;text-align:center;padding:4px!important}.action-btn{padding:2px 3px;border:1px solid var(--border);border-radius:2px;background:var(--bg-card);color:var(--text-body);font-size:12px;cursor:pointer;transition:all .2s;display:block;margin:0 auto}.action-btn:hover{background:var(--bg-section);border-color:var(--text-placeholder)}.pagination{display:flex;align-items:center;justify-content:center;gap:6px!important;padding:2px 6px!important;border-top:1px solid var(--border);margin-top:2px!important;margin-bottom:0!important;line-height:1!important}.pagination button{padding:3px 8px!important;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:11px!important;color:var(--text-body);line-height:1.2!important}.page-info{padding:0 8px!important;color:var(--text-secondary);font-size:11px!important;line-height:1.2!important}.notification{position:fixed;top:80px;left:50%;transform:translate(-50%);background:var(--text-title);color:#fff;padding:12px 24px;border-radius:6px;box-shadow:var(--shadow-modal);z-index:10000;animation:slideDown .3s ease-out;font-size:14px;white-space:nowrap;max-width:80%;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.progress-overlay{position:fixed;bottom:20px;right:20px;z-index:9999;animation:slideInUp .3s ease-out}.progress-modal{background:var(--bg-card);padding:20px 24px;border-radius:8px;box-shadow:var(--shadow-modal);min-width:360px;max-width:450px;border:1px solid var(--border)}.progress-title{font-size:14px;font-weight:600;color:var(--text-title);margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.progress-title-text{display:flex;align-items:center;gap:8px}.progress-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:#3b82f6;border-radius:50%;animation:spin .6s linear infinite}.progress-bar-container{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden;position:relative;margin-bottom:8px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,var(--brand));border-radius:4px;transition:width .3s ease}.progress-message{font-size:12px;color:var(--text-secondary);text-align:left}.table-container-virtual{flex:1;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:4px;overflow:hidden}.table-header{background:var(--bg-section);border-bottom:2px solid var(--border);z-index:10;width:100%;box-sizing:border-box;padding-right:6px}.header-row{display:flex;width:100%;font-size:14px;font-weight:600;color:var(--text-body);box-sizing:border-box}.header-row>div{padding:8px 12px;text-align:left;border-right:1px solid var(--border);box-sizing:border-box}.header-row>div:last-child{border-right:none}.header-row .col-select-header{width:30px;min-width:30px;max-width:30px;flex-shrink:0;padding:0!important;display:flex;align-items:center;justify-content:center}.header-row .col-source-header,.header-row .col-target-header{flex:1;min-width:0}.header-row .col-actions-header{width:70px;min-width:70px;max-width:70px;flex-shrink:0;text-align:center}.table-body-virtual{flex:1;position:relative}.virtual-row{display:flex;width:100%;font-size:14px;border-bottom:1px solid var(--bg-section);cursor:pointer;font-family:Times New Roman,serif;box-sizing:border-box}.virtual-row>div{padding:4px 12px;border-right:1px solid var(--border);line-height:1.3;box-sizing:border-box}.virtual-row .col-select{width:30px;min-width:30px;max-width:30px;flex-shrink:0;padding:0!important;display:flex;align-items:center;justify-content:center}.virtual-row .col-source{flex:1;min-width:0;white-space:normal;word-wrap:break-word;line-height:1.3;padding-top:4px!important;padding-bottom:4px!important;overflow:hidden;text-align:justify!important;text-justify:inter-word!important}.virtual-row .col-target{flex:1;min-width:0;white-space:normal;word-wrap:break-word;line-height:1.3;padding-top:4px!important;padding-bottom:4px!important;font-size:12px;overflow:hidden;text-align:justify!important;text-justify:inter-word!important}.virtual-row .col-actions{width:70px;min-width:70px;max-width:70px;flex-shrink:0;padding:0!important;display:flex;align-items:center;justify-content:center}.virtual-row .col-source .editarea-container,.virtual-row .col-target .editarea-container,.virtual-row .col-source .editarea-container *,.virtual-row .col-target .editarea-container *,.virtual-row .col-source div,.virtual-row .col-source span,.virtual-row .col-target div,.virtual-row .col-target span,.virtual-row div[data-block],.virtual-row div[data-contents],.virtual-row span[data-text]{text-align:justify!important;text-justify:inter-word!important}.tm-management .modal-content{width:800px!important;max-width:90%!important;max-height:85vh!important;display:flex;flex-direction:column}.tm-management .modal-header{padding:10px 16px!important;flex-shrink:0}.tm-management .modal-header h3{font-size:15px!important}.tm-management .modal-body{padding:12px 16px!important;overflow-y:auto;flex:1;min-height:0}.tm-management .modal-footer{padding:10px 16px!important;flex-shrink:0;position:relative;z-index:10}.tm-management .form-group{margin-bottom:12px!important}.tm-management .form-group label{margin-bottom:4px!important;font-size:12px!important}.tm-management .checkbox-group-compact{display:flex!important;align-items:center!important;gap:4px!important;justify-content:flex-start!important}.tm-management .checkbox-group-compact input[type=checkbox]{margin:0!important;flex-shrink:0!important;cursor:pointer!important}.tm-management .checkbox-group-compact label{margin:0!important;padding-left:0!important;cursor:pointer!important}.editarea-wrapper{border:1px solid var(--border);border-radius:4px;background:var(--bg-card);min-height:100px;max-height:300px;overflow:auto}.editarea-wrapper .lexical-editarea,.editarea-wrapper [contenteditable]{padding:8px 12px;font-size:14px;line-height:1.5;font-family:Times New Roman,serif;min-height:100px}.inline-edit{font-size:13px!important;min-height:60px}.inline-edit .lexical-editarea,.inline-edit [contenteditable]{min-height:60px;font-size:13px;padding:4px 6px}.virtual-row.current-match{background-color:#fffbea!important;border-left:3px solid var(--warning);animation:highlight-pulse .5s ease-in-out}@keyframes highlight-pulse{0%{background-color:var(--warning-bg)}50%{background-color:#fffbea}to{background-color:#fffbea}}.skeleton-loading{pointer-events:none}.skeleton-row{display:flex;align-items:center;border-bottom:1px solid #f0f0f0}.skeleton-box{background:linear-gradient(90deg,#f0f0f0 25%,var(--border) 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.glossary-list{width:100%;padding:20px;max-width:1400px;margin:0 auto;height:100vh;display:flex;flex-direction:column;position:relative}.glossary-list .toast-notification{position:fixed!important;top:20px!important;right:20px!important;bottom:auto!important;left:auto!important;background:var(--bg-card);color:var(--text-body);padding:12px 20px;border-radius:4px;box-shadow:var(--shadow-dropdown);z-index:10000;font-size:14px;animation:slideInRight .3s ease-out;border-left:4px solid var(--brand)}.glossary-list .tabs-bar{display:flex;gap:4px;background:var(--bg-section);border-radius:var(--radius-btn);padding:3px;margin-bottom:12px}.glossary-list .tabs-bar .tab{padding:6px 14px;font-size:12px;font-weight:400;color:var(--text-secondary);cursor:pointer;border:none;background:transparent;border-radius:var(--radius-btn);transition:all .15s;white-space:nowrap}.glossary-list .tabs-bar .tab:hover{background:var(--border);color:var(--text-body)}.glossary-list .tabs-bar .tab.active{background:var(--bg-card);color:var(--brand);font-weight:600;box-shadow:var(--shadow-card)}.glossary-list .toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-card) var(--radius-card) 0 0}.glossary-list .toolbar-actions{display:flex;gap:8px;align-items:center}.glossary-list .toolbar-btn{padding:6px 12px!important;border:1px solid var(--border)!important;border-radius:var(--radius-btn)!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important}.glossary-list .toolbar-btn:hover:not(.disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.glossary-list .toolbar-btn.disabled{opacity:.4!important;cursor:not-allowed!important}.glossary-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:hidden;box-shadow:var(--shadow-card)}.glossary-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.glossary-table th{padding:.4rem 1.5rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;position:sticky!important;top:0!important;z-index:100!important;background:var(--bg-section)!important;box-shadow:0 1px 3px #0f172a0f!important}.glossary-table th:nth-child(1),.glossary-table td:nth-child(1){width:40px;text-align:center}.glossary-table th:nth-child(2),.glossary-table td:nth-child(2){width:180px}.glossary-table th:nth-child(3),.glossary-table td:nth-child(3){width:120px}.glossary-table th:nth-child(4),.glossary-table td:nth-child(4){width:120px}.glossary-table th:nth-child(5),.glossary-table td:nth-child(5){width:140px}.glossary-table th:nth-child(6),.glossary-table td:nth-child(6){width:140px}.glossary-table th:nth-child(7),.glossary-table td:nth-child(7){width:110px;text-align:center}.glossary-table th:nth-child(8),.glossary-table td:nth-child(8){width:100px;text-align:center}.glossary-table th:nth-child(9),.glossary-table td:nth-child(9){width:140px}.glossary-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s;cursor:pointer}.glossary-table tbody tr:hover,.glossary-table tbody tr.selected,.glossary-table tbody tr.selected:hover{background-color:var(--brand-light)!important}.glossary-table tbody tr:last-child{border-bottom:none}.glossary-table td{padding:.4rem 1.5rem;font-size:.8rem;color:var(--text-body);line-height:1.3}.glossary-name{font-weight:500;color:var(--brand)}.glossary-lang,.glossary-meta{color:var(--text-secondary);font-size:.75rem}.glossary-date{color:var(--text-placeholder);font-size:.75rem}.glossary-list .empty-state{text-align:center;padding:3rem;color:var(--text-placeholder);width:100%}.glossary-list .empty-state p{margin-bottom:1rem;font-size:1.1rem}.glossary-list .table-container{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;max-height:calc(100vh - 220px);border-radius:var(--radius-modal)!important;background:var(--bg-card)!important;box-shadow:var(--shadow-dropdown)!important;margin-bottom:20px!important;border:1px solid var(--border)!important;border-bottom:3px solid var(--border-strong)!important;position:relative!important;padding-bottom:8px!important}.glossary-list .table-container:after{content:""!important;display:block!important;position:sticky!important;bottom:0!important;left:0!important;right:0!important;height:4px!important;background:var(--border-strong)!important;border-top:2px solid var(--text-secondary)!important;pointer-events:none!important;z-index:100!important;box-shadow:0 -1px 3px #0f172a0f!important}.glossary-list .table-container::-webkit-scrollbar{width:10px!important;height:10px!important}.glossary-list .table-container::-webkit-scrollbar-track{background:var(--bg-section)!important;border-radius:5px!important}.glossary-list .table-container::-webkit-scrollbar-thumb{background:var(--border-strong)!important;border-radius:5px!important;border:2px solid var(--bg-section)!important}.glossary-list .table-container::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)!important}.glossary-list .table-container{scrollbar-width:thin!important;scrollbar-color:var(--border-strong) var(--bg-section)!important}.glossary-list .col-select{width:40px;text-align:center;padding:8px 10px!important}.glossary-list .col-select input[type=checkbox]{width:16px;height:16px;cursor:pointer}.glossary-list .row-number{color:var(--text-placeholder);font-size:12px;display:inline-block;width:16px;text-align:center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;overflow:visible;padding:20px 0}.modal-content{background:var(--bg-card);padding:24px;border-radius:var(--radius-modal);width:90%;max-width:500px;max-height:none;overflow:visible;position:relative;margin:auto;display:flex;flex-direction:column}.modal-content h3{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--text-title);position:relative;z-index:1}.form-group{margin-bottom:16px;overflow:visible;position:relative;z-index:10}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;font-family:inherit}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.modal-overlay .glossary-modal .form-row{display:grid!important;grid-template-columns:1fr 1fr;gap:16px;width:100%;overflow:visible!important;position:relative;z-index:10;align-items:start}.modal-overlay .glossary-modal .form-row .form-group{overflow:visible!important;position:relative;z-index:10;align-self:start}.modal-overlay .glossary-modal .form-row .form-group label{display:block;align-items:unset;min-height:unset}.btn-secondary{padding:8px 16px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-secondary:hover{background:var(--bg-section);border-color:var(--text-placeholder)}.btn-primary{padding:8px 16px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-primary:hover{background:var(--bg-section);border-color:var(--text-placeholder)}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.badge-main{background:var(--brand-light);color:var(--brand);border:1px solid var(--brand-border)}.badge-project{background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning)}.badge-unknown{background:var(--bg-page);color:var(--text-placeholder);border:1px solid var(--border)}.glossary-management{padding:20px;height:100%;display:flex;flex-direction:column;overflow:hidden;background-color:var(--bg-page)}.glossary-mgmt-header{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--border)}.glossary-mgmt-header h2{margin:0;flex:1;font-size:20px;color:var(--text-title)}.header-stats{color:var(--text-secondary);font-size:14px}.filter-bar{display:flex;flex-wrap:wrap;gap:15px;padding:15px;background:var(--bg-section);border:1px solid var(--border);border-radius:4px;margin-bottom:15px;align-items:center}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;color:var(--text-body);white-space:nowrap}.filter-group select,.filter-group input{padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:14px;background:var(--bg-card)}.filter-group select{min-width:120px}.search-group{flex:1;min-width:150px}.search-group input{width:100%}.filter-buttons{display:flex;gap:8px;align-items:center}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:15px}.toolbar-title{font-size:14px;font-weight:600;color:var(--text-body);font-family:Microsoft YaHei,Arial,sans-serif}.toolbar-btn{padding:8px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:14px;color:var(--text-body);transition:all .2s}.toolbar-btn-small{padding:6px 12px;font-size:12px}.toolbar-actions .btn-primary,.toolbar-actions button.btn-primary{padding:4px 10px!important;border:1px solid var(--text-body)!important;border-radius:3px!important;cursor:pointer!important;font-size:11px!important;font-family:Microsoft YaHei,Arial,sans-serif!important;transition:all .2s!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001f!important}.toolbar-actions .btn-primary:hover,.toolbar-actions button.btn-primary:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.toolbar-actions .btn-primary.btn-small,.toolbar-actions button.btn-primary.btn-small{font-size:11px!important;padding:4px 10px!important;border:1px solid var(--text-body)!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001f!important}.toolbar-actions .btn-primary.btn-small:hover,.toolbar-actions button.btn-primary.btn-small:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.toolbar-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.toolbar-btn:hover:not(:disabled){background:var(--bg-section);border-color:var(--text-placeholder)}.toolbar-btn.danger{color:var(--danger);border-color:var(--danger)}.toolbar-btn.danger:hover:not(:disabled){background:var(--danger);color:#fff;border-color:var(--danger)}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-spacer{flex:1}.glossary-management .table-container{flex:1;overflow:auto;min-height:0;position:relative;border:1px solid var(--border)!important;border-radius:4px!important;background:var(--bg-card)!important}.glossary-management .units-table{width:100%;background:var(--bg-card);border-collapse:collapse;font-size:11px;font-family:Times New Roman,SimSun,serif;display:table!important}.units-table thead{position:sticky;top:0;background:var(--bg-section);z-index:10}.units-table th{padding:8px 12px;text-align:left;font-weight:600;color:var(--text-body);border-bottom:2px solid var(--border);border-right:none;white-space:nowrap;font-size:11px}.units-table th:last-child{border-right:none}.units-table th.col-select-header{padding:0!important;vertical-align:middle!important}.units-table th.col-select-header input[type=checkbox]{display:block;margin:auto}.units-table td{padding:4px 12px;border-bottom:1px solid var(--bg-section);border-right:none;line-height:1.3;text-align:left}.units-table td:last-child{border-right:none}.units-table td.col-select{padding:0 0 0 15px!important}.unit-row{cursor:pointer}.unit-row:hover{background:var(--bg-section)}.unit-row.selected{background:var(--brand-light)}.common-badge{display:inline-block;padding:1px 6px;background:var(--warning);color:var(--warning);font-size:10px;font-weight:600;border-radius:3px;margin-right:6px;vertical-align:middle}.lang-label{font-size:11px;font-weight:400;color:var(--text-placeholder);margin-left:4px}.source-content{margin-bottom:2px;line-height:1.3}.source-variants{display:flex;flex-wrap:wrap;align-items:center;gap:3px;font-size:9px;margin-top:3px;padding-top:2px;border-top:1px dashed var(--border)}.source-variants .variants-label{color:var(--text-placeholder);font-weight:500;white-space:nowrap;font-size:9px}.source-variants .variant-badge{display:inline-flex;align-items:center;padding:1px 4px;background:var(--brand-light);color:var(--brand);border-radius:3px;font-size:9px;font-weight:500;white-space:nowrap}.target-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:10px;color:var(--text-placeholder);line-height:1.2;margin-top:2px;padding-top:0}.target-meta span{white-space:nowrap}.common-badge-small{display:inline-block;padding:0 4px;background:var(--warning);color:#fff;font-size:10px;font-weight:500;border-radius:2px;white-space:nowrap}.row-number{color:var(--text-placeholder);font-size:12px;display:inline-block;line-height:1}.units-table th:nth-child(4){width:20%!important;min-width:120px}.units-table td:nth-child(4){width:20%!important;min-width:120px;white-space:normal;word-wrap:break-word}.units-table th:nth-child(5){width:90px!important;min-width:90px;text-align:center}.units-table td:nth-child(5){width:90px!important;min-width:90px;text-align:center}.action-btn{padding:4px 12px;border:1px solid var(--text-body)!important;border-radius:4px;background:var(--bg-card)!important;color:var(--text-body)!important;font-size:12px;cursor:pointer;transition:all .2s;display:inline-block;white-space:nowrap;box-shadow:0 1px 3px #0000001f!important}.action-btn:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.pagination{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 15px 20px;border-top:1px solid var(--border);flex-shrink:0;background:var(--bg-card)}.pagination button{padding:6px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:14px;color:var(--text-body)}.pagination button:hover:not(:disabled){background:var(--bg-section);border-color:var(--text-placeholder)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.page-info{padding:0 15px;color:var(--text-secondary);font-size:14px}.empty-state{padding:60px 20px;text-align:center;color:var(--text-placeholder)}td.empty-state{position:relative;width:100%;text-align:center!important;vertical-align:middle;padding:60px 20px!important}.empty-state p{font-size:16px;margin-bottom:20px}.notification{position:fixed;top:20px;right:20px;padding:12px 20px;background:var(--success);color:#fff;border-radius:4px;box-shadow:0 2px 8px #0003;z-index:2000;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.modal-content{background:var(--bg-card);padding:24px;border-radius:8px;width:90%;max-width:500px;max-height:calc(100vh - 40px);overflow-y:auto;position:relative;margin:auto}.form-group input[type=text],.form-group input[type=file],.form-group textarea,.form-group select{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #1976d21a}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.btn-secondary,button.btn-secondary{padding:8px 16px;background:var(--bg-card)!important;color:var(--text-body)!important;border:1px solid var(--text-body)!important;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s;box-shadow:0 1px 3px #0000001f!important}.btn-primary,button.btn-primary{padding:8px 16px;background:var(--bg-card)!important;color:var(--text-body)!important;border:1px solid var(--text-body)!important;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s;box-shadow:0 1px 3px #0000001f!important}.glossary-list tbody tr:hover{background:var(--bg-section)}.glossary-list tbody tr.selected{background:var(--brand-light)}.glossary-list .actions{display:flex;gap:8px}.btn-icon{padding:4px 8px;font-size:12px;border:1px solid var(--border);background:var(--bg-card);border-radius:4px;cursor:pointer;transition:all .15s}.btn-icon:hover{background:var(--bg-section);border-color:var(--text-placeholder)}.btn-icon.btn-danger{color:var(--danger);border-color:var(--danger-border)}.btn-icon.btn-danger:hover{background:var(--danger-bg);border-color:var(--danger-border)}.btn-primary,button.btn-primary{padding:8px 16px;background:var(--bg-card)!important;color:var(--text-body)!important;border:1px solid var(--text-body)!important;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;box-shadow:0 1px 3px #0000001f!important}.btn-primary:hover,button.btn-primary:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.btn-secondary,button.btn-secondary{padding:8px 16px;background:var(--bg-card)!important;color:var(--text-body)!important;border:1px solid var(--text-body)!important;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;box-shadow:0 1px 3px #0000001f!important}.btn-secondary:hover,button.btn-secondary:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;overflow-y:auto;padding:20px 0}.modal-content{background:var(--bg-card);border-radius:12px;padding:24px;width:90%;max-width:500px;max-height:calc(100vh - 40px);overflow-y:auto;position:relative;margin:auto}.modal-content.preview-modal{width:95%!important;max-width:1100px!important;max-height:90vh!important;overflow-y:auto!important}.modal-content h3{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--text-title)}.form-group input[type=text],.form-group input[type=file],.form-group textarea,.form-group select{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;transition:border-color .15s}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #3b82f61a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group input[type=checkbox]{margin-right:8px}.modal-content .form-group.checkbox-group{display:flex!important;flex-direction:row!important;align-items:center!important;gap:0!important;margin-bottom:16px}.modal-content .form-group.checkbox-group label{display:inline-block!important;margin:0 6px 0 0!important;white-space:nowrap;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-body)}.modal-content .form-group.checkbox-group input[type=checkbox]{flex-shrink:0!important;margin:0!important;padding:0!important;cursor:pointer;width:16px;height:16px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.notification{position:fixed;top:20px;right:20px;padding:12px 20px;background:var(--success);color:#fff;border-radius:8px;box-shadow:var(--shadow-modal);z-index:2000;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.modal-content button[title=鍏抽棴]:hover{color:var(--text-title)!important;transform:scale(1.1);transition:all .2s ease}@keyframes highlightTerm{0%{background-color:var(--warning-bg)}to{background-color:transparent}}.highlight-new-term{animation:highlightTerm 2s ease}.table-container{flex:1;overflow-y:auto;overflow-x:hidden;border-radius:4px;position:relative;min-height:0;display:block;background:var(--bg-card);box-shadow:var(--shadow-card)}.table-container::-webkit-scrollbar{width:8px;height:8px}.table-container::-webkit-scrollbar-track{background:var(--bg-section)}.table-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.table-container{scrollbar-width:thin;scrollbar-color:var(--border) var(--bg-section)}.table-header{display:flex;position:sticky;top:0;background:var(--bg-section);z-index:100;border-bottom:2px solid var(--border);font-weight:600;color:var(--text-body);font-size:14px;padding:8px 0;box-shadow:0 2px 4px #0000000d}.table-header>div{padding:0 12px;display:flex;align-items:center}.virtual-row{display:flex;border-bottom:1px solid var(--bg-section);background:var(--bg-card);transition:background-color .1s;min-height:52px}.virtual-row:hover{background:var(--bg-section)}.virtual-row.selected{background:var(--brand-light)}.virtual-row.editing{background:var(--warning-bg)}.virtual-row>div{padding:6px 12px;display:flex;align-items:center!important;border-right:1px solid var(--border);line-height:1.3}.virtual-row>div:last-child{border-right:none}.virtual-row .inline-editor{flex:1;min-height:60px;border:1px solid var(--border);border-radius:4px;padding:4px 8px;background:var(--bg-card)}.virtual-row .inline-editor .editarea-container,.virtual-row .inline-editor .DraftEditor-root{min-height:50px}.virtual-row .inline-editor .public-DraftEditor-content{min-height:50px;padding:4px}.col-select,.col-select-header{width:50px!important;min-width:50px!important;max-width:50px!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important}.col-source{flex:1!important;min-width:200px!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important}.col-source-header,.col-target-header{flex:1!important;min-width:200px!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;white-space:nowrap!important;flex-wrap:nowrap!important}.virtual-row .col-source{align-items:flex-start!important}.virtual-row .col-source .source-content,.virtual-row .col-source .source-variants{width:100%;text-align:left!important}.col-target{flex:1!important;min-width:200px!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important}.col-target .target-content,.col-target .source-variants,.col-target .target-meta{width:100%;text-align:left!important}.col-actions,.col-actions-header{width:80px!important;min-width:80px!important;max-width:80px!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important}.action-btn.save{background:var(--success);color:#fff;border-color:var(--success)}.action-btn.save:hover{background:var(--success);border-color:var(--success)}.action-btn.cancel{background:var(--danger);color:#fff;border-color:var(--danger)}.action-btn.cancel:hover{background:var(--danger);border-color:var(--danger)}.glossary-management .modal-overlay .modal-content .form-group label,.glossary-management .modal-overlay .modal-content label,.glossary-management .add-term-dialog .form-group label,.glossary-management .add-term-dialog label{font-family:Times New Roman,SimSun,瀹嬩綋,serif!important}.glossary-management .modal-overlay .modal-content label span,.glossary-management .add-term-dialog label span{color:var(--text-placeholder)!important;font-size:11px!important;font-weight:400!important}.glossary-management .modal-overlay .modal-content.preview-modal label span{color:inherit!important;font-weight:400!important}.glossary-term-modal{max-width:860px!important;width:860px!important;position:relative}.term-dual-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:16px}.term-dual-column{display:flex;flex-direction:column;gap:0}.term-metadata-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:12px}.term-variants-box{display:flex;flex-direction:column;gap:5px;max-height:160px;overflow-y:auto;padding:6px;background:var(--bg-section);border:1px solid var(--border);border-radius:3px}.term-variant-row{display:flex;align-items:center;gap:5px;padding:4px 6px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px}.term-variant-row input[type=checkbox]:checked~.term-variant-input{background:var(--bg-card)}.term-variant-input{flex:1;padding:3px 6px;border:1px solid var(--border);border-radius:3px;font-size:12px;font-family:Times New Roman,SimSun,serif;line-height:1.3;min-width:0}.term-variant-input:disabled{background:var(--bg-page);color:var(--text-placeholder)}.term-variant-type{font-size:10px;color:var(--text-placeholder);min-width:40px;text-align:right;white-space:nowrap;font-family:Times New Roman,SimSun,serif}.term-variant-del{padding:2px 6px;border:1px solid var(--danger);border-radius:3px;background:var(--bg-card);color:var(--danger);font-size:11px;cursor:pointer;flex-shrink:0;line-height:1.2}.term-variant-del:hover{background:var(--danger-bg)}.term-variant-add-btn{padding:3px 10px;border:1px solid var(--brand);border-radius:3px;background:var(--brand);color:#fff;font-size:11px;cursor:pointer;white-space:nowrap;line-height:1.2}.term-variant-add-btn:disabled{background:var(--bg-page);color:var(--text-placeholder);border-color:var(--border);cursor:not-allowed}.term-variant-add-btn:not(:disabled):hover{background:var(--brand)}.term-list-manage{padding:20px;max-width:1400px;margin:0 auto;height:calc(100vh - 240px);display:flex;flex-direction:column;font-family:Times New Roman,SimSun,瀹嬩綋,serif;overflow:hidden}.term-list-manage .header{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--border)}.term-list-manage .header h2{margin:0;flex:1;font-size:20px;color:var(--text-title)}.term-list-manage .header-stats{color:var(--text-secondary);font-size:14px}.term-list-manage .toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--border);flex-shrink:0}.term-list-manage .toolbar-title{font-size:14px;font-weight:600;color:var(--text-body)}.term-list-manage .toolbar-actions{display:flex;gap:8px;align-items:center}.term-list-manage .toolbar-btn,.term-list-manage .btn-primary,.term-list-manage .btn-secondary{padding:6px 12px!important;border:1px solid var(--text-body)!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:var(--shadow-card)!important}.term-list-manage .toolbar-btn:hover:not(.disabled),.term-list-manage .btn-primary:hover,.term-list-manage .btn-secondary:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.term-list-manage .toolbar-btn.disabled{opacity:.5!important;cursor:not-allowed!important}.term-list-manage .table-container{flex:1;overflow-y:auto;overflow-x:auto;position:relative;display:block;min-height:0}.term-list-manage .units-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:visible;box-shadow:var(--shadow-card);display:table}.term-list-manage .units-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.term-list-manage .units-table th{padding:.4rem .6rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;background:var(--bg-page);position:sticky;top:0;z-index:10}.term-list-manage .units-table th:first-child,.term-list-manage .units-table td:first-child{padding-left:12px!important;text-align:left!important}.term-list-manage .units-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s}.term-list-manage .units-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.term-list-manage .units-table tbody tr.selected,.term-list-manage .units-table tbody tr.selected:hover{background-color:var(--brand-light)}.term-list-manage .units-table tbody tr:last-child{border-bottom:none}.term-list-manage .units-table td{padding:.25rem .6rem;font-size:.8rem;color:var(--text-title);line-height:1.1}.term-list-manage .units-table td input[type=checkbox]{cursor:pointer;width:14px;height:14px}.term-list-manage .units-table th.col-select-header,.term-list-manage .units-table td.col-select{width:50px!important;min-width:50px!important;max-width:50px!important;padding-left:12px!important;text-align:left!important}.term-list-manage .units-table .col-select input[type=checkbox],.term-list-manage .units-table .col-select-header input[type=checkbox]{width:14px!important;height:14px!important;margin:0!important;cursor:pointer!important}.term-list-manage .col-source,.term-list-manage .col-source-header,.term-list-manage .col-target,.term-list-manage .col-target-header{width:25%;min-width:150px}.term-list-manage .col-actions,.term-list-manage .col-actions-header{width:80px;text-align:center}.term-list-manage .row-number{color:var(--text-placeholder);font-size:.75rem}.term-list-manage .variant-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.term-list-manage .variant-tag{display:inline-block;padding:1px 6px;background:var(--brand-light);color:var(--brand);font-size:10px;border-radius:3px}.term-list-manage .action-btn{padding:4px 10px!important;border:1px solid var(--text-body)!important;border-radius:3px!important;font-size:11px!important;cursor:pointer!important;background:var(--bg-card)!important;color:var(--text-body)!important;transition:all .15s ease!important}.term-list-manage .action-btn:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.term-list-manage .empty-state{text-align:center;padding:3rem;color:var(--text-placeholder)}.term-list-manage .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.term-list-manage .modal-content{background:var(--bg-card);border-radius:var(--radius-modal);width:500px;max-width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-modal)}.term-list-manage .modal-content.preview-modal{width:95%!important;max-width:1100px!important}.term-list-manage .modal-content h3{margin:0;padding:16px 20px;border-bottom:1px solid var(--border);font-size:18px;font-weight:600}.term-list-manage .form-group{margin-bottom:16px;padding:0 20px}.term-list-manage .form-group:first-of-type{padding-top:20px}.term-list-manage .term-metadata-grid .form-group:first-of-type{padding-top:0}.term-list-manage .form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--text-body)}.term-list-manage .form-group input,.term-list-manage .form-group select,.term-list-manage .form-group textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;box-sizing:border-box}.term-list-manage .form-group input:focus,.term-list-manage .form-group select:focus,.term-list-manage .form-group textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.term-list-manage .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--border)}.term-list-manage .virtual-row{display:grid;border-bottom:1px solid var(--bg-section);transition:background-color .15s;font-size:.8rem;line-height:1.1;color:var(--text-title)}.term-list-manage .virtual-row:hover,.term-list-manage .virtual-row.selected,.term-list-manage .virtual-row.selected:hover{background-color:var(--brand-light)!important}.term-list-manage .virtual-row .col-select{display:flex;align-items:center;justify-content:flex-start;padding-left:16px}.term-list-manage .virtual-row input[type=checkbox]{cursor:pointer;width:14px;height:14px}.term-list-manage .virtual-row .row-number{color:var(--text-placeholder);font-size:.75rem}.term-list-manage .virtual-row .action-btn{padding:4px 8px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;font-size:11px;cursor:pointer;transition:all .15s}.term-list-manage .virtual-row .action-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.term-list-manage .term-entry-row:hover,.term-list-manage .term-entry-row.selected,.term-list-manage .term-entry-row.selected:hover{background-color:var(--brand-light)!important}.notification-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a4d;z-index:1000;display:flex;justify-content:flex-end;align-items:flex-start;padding-top:60px}.notification-panel{width:400px;max-height:calc(100vh - 80px);background:var(--bg-card);border-radius:8px 0 0 8px;box-shadow:var(--shadow-modal);display:flex;flex-direction:column;animation:notifSlideIn .3s ease-out}@keyframes notifSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.notification-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-title)}.notification-actions{display:flex;gap:10px;align-items:center}.mark-all-read-btn{padding:6px 12px;background:var(--bg-section);border:1px solid var(--border);border-radius:var(--radius-btn);font-size:13px;color:var(--text-secondary);cursor:pointer;transition:background .2s}.mark-all-read-btn:hover{background:var(--bg-hover)}.close-btn{width:32px;height:32px;background:transparent;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-btn);transition:background .2s}.close-btn:hover{background:var(--bg-section)}.notification-list{flex:1;overflow-y:auto;padding:8px}.notification-loading,.notification-empty{padding:40px 20px;text-align:center;color:var(--text-placeholder);font-size:14px}.notification-item{display:flex;gap:12px;padding:10px 12px;margin-bottom:4px;border-radius:var(--radius-input);cursor:pointer;position:relative;transition:background .2s;align-items:flex-start}.notification-item:hover{background:var(--bg-hover)}.notification-item.unread{background:var(--brand-light)}.notification-item.unread:hover{background:#dbeafe}.notification-content{flex:1;min-width:0;padding-right:24px}.notification-message{font-size:13px;color:var(--text-title);line-height:1.5;margin-bottom:4px;word-wrap:break-word}.notification-time{font-size:11px;color:var(--text-placeholder)}.delete-btn{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:20px;height:20px;background:transparent;border:none;font-size:18px;color:var(--text-placeholder);cursor:pointer;border-radius:var(--radius-tag);display:flex;align-items:center;justify-content:center;transition:all .2s;opacity:0;line-height:1}.notification-item:hover .delete-btn{opacity:1}.delete-btn:hover{background:var(--danger-bg);color:var(--danger)}.unread-dot{position:absolute;top:12px;right:36px;width:8px;height:8px;background:var(--brand);border-radius:50%}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:transparent}.notification-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.permissions-page{height:100%;display:flex;flex-direction:column;background-color:var(--bg-page)}.permissions-header{background:var(--bg-card);padding:24px 32px;border-bottom:1px solid var(--border)}.permissions-header h1{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-body)}.permissions-desc{margin:0;font-size:14px;color:var(--text-secondary)}.permissions-notice{margin:8px 0 0;font-size:13px;color:var(--warning);font-weight:500}.permissions-container{flex:1;display:flex;gap:20px;padding:20px;overflow:hidden}.permissions-container-full{flex:1;display:flex;padding:20px;overflow:hidden}.users-panel,.permissions-panel{background:var(--bg-card);border-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden}.users-panel{flex:1;flex-shrink:0}.users-panel-full{flex:1;background:var(--bg-card);border-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden}.permissions-panel{width:480px;flex-shrink:0}.panel-header{padding:20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.btn-action{padding:6px 12px!important;border:1px solid var(--text-body)!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001a!important}.btn-action:hover:not(:disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.btn-action:disabled{opacity:.5;cursor:not-allowed}.btn-action.btn-primary{color:var(--brand);border-color:var(--brand)}.btn-action.btn-primary:hover:not(:disabled){background:var(--brand);color:#fff;border-color:var(--brand)}.toolbar-btn:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.panel-header h2{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-body)}.user-count{font-size:12px;color:var(--text-placeholder);background:var(--bg-section);padding:4px 8px;border-radius:12px}.users-table-container{flex:1;overflow:auto;max-height:calc(100vh - 280px)}.users-table{display:block;width:100%;border-collapse:separate;border-spacing:0;background:var(--bg-card);border-radius:4px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.users-table thead{background:var(--bg-page);border-bottom:2px solid var(--border);display:table;width:100%;table-layout:fixed}.users-table thead tr{display:table-row;width:100%}.users-table th{padding:.4rem .6rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;vertical-align:middle;display:table-cell;background:var(--bg-page)}.users-table tbody{display:block;overflow-y:auto;overflow-x:hidden}.users-table tbody tr{display:table;width:100%;table-layout:fixed;border-bottom:1px solid var(--bg-section);transition:background-color .15s}.users-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.users-table tbody tr.selected,.users-table tbody tr.selected:hover{background-color:var(--brand-light)}.users-table tbody tr.admin-row{font-weight:600}.users-table tbody tr.admin-row .col-username,.users-table tbody tr.admin-row .col-fullname,.users-table tbody tr.admin-row .col-email,.users-table tbody tr.admin-row .col-role,.users-table tbody tr.admin-row .col-status{color:var(--danger)!important;font-weight:600}.users-table tbody tr:last-child{border-bottom:none}.users-table td{padding:.4rem .6rem;font-size:.8rem;color:var(--text-body);line-height:1.3;vertical-align:middle;display:table-cell;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-checkbox{width:60px;text-align:center;cursor:pointer;padding:.4rem 0!important;vertical-align:middle}.col-checkbox input[type=checkbox]{cursor:pointer;width:14px;height:14px;vertical-align:middle;margin:0;position:relative;top:0}.col-username{width:120px;font-weight:500}.col-fullname{width:120px}.col-email{width:240px;color:var(--text-secondary);font-size:.75rem}.col-role{width:140px}.col-status{width:100px}.status-badge{display:inline;padding:0;border-radius:0;font-size:.8rem;font-weight:500;text-transform:none;letter-spacing:0}.status-active{background-color:transparent;color:var(--success)}.status-inactive,.role-admin{background-color:transparent;color:var(--danger)}.role-pm{background-color:transparent;color:var(--brand-hover)}.role-supervisor{background-color:transparent;color:var(--warning)}.role-translator{background-color:transparent;color:#6a1b9a}.role-badge{display:inline;padding:0;border-radius:0;font-size:.8rem;font-weight:500;text-transform:none;letter-spacing:0}.role-text,.status-text{font-size:.8rem;font-weight:500}.role-admin{color:var(--danger);font-weight:600}.role-pm{color:#ff8c00}.role-supervisor{color:var(--brand)}.role-translator,.status-active{color:var(--text-body)}.status-inactive{color:var(--danger)}.users-table td.col-role,.users-table td.col-status,.users-table td.col-status.status-active,.users-table td.col-status.status-inactive{background-color:transparent!important}.users-table td.col-role.role-admin{color:var(--danger)!important}.users-table td.col-role.role-supervisor{color:var(--brand)!important}.users-table td.col-role.role-pm{color:#ff8c00!important}.users-table td.col-role.role-translator,.users-table td.col-status.status-active{color:var(--text-body)!important}.users-table td.col-status.status-inactive{color:var(--danger)!important}.btn-create{padding:8px 16px;background-color:var(--success);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.btn-create:hover{background-color:#45a049}.modal-content{background:var(--bg-card);border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow:auto;box-shadow:0 4px 20px #0f172a1a}.modal-permissions{max-width:700px!important;width:85%!important;max-height:90vh}.modal-header{padding:15px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:14px;font-family:Times New Roman,SimSun,serif;font-weight:600;color:var(--text-body)}.modal-close{width:32px;height:32px;border:none;background:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background-color:var(--bg-page);color:var(--text-secondary)}.modal-body{padding:15px 20px;max-height:calc(90vh - 150px);overflow-y:auto}.checkbox-group{display:flex;align-items:center}.checkbox-label{display:flex;align-items:center;gap:8px;margin:0}.checkbox-text{font-size:14px;color:var(--text-body);margin:0}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--text-body)}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--brand)}.form-hint{display:block;margin-top:4px;font-size:12px;color:var(--text-placeholder)}.modal-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.permission-category{margin-bottom:15px}.permission-category h4{margin:0 0 8px;font-size:12px;font-family:Times New Roman,SimSun,serif;font-weight:600;color:var(--text-body);padding-bottom:4px;border-bottom:2px solid var(--brand);display:flex;align-items:center;justify-content:space-between}.category-select-all{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:400;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.category-select-all input[type=checkbox]{width:14px;height:14px;cursor:pointer}.permission-items{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;column-gap:3px}.permission-item{display:flex;align-items:center;gap:4px;padding:2px 5px;border-radius:3px;cursor:pointer;transition:background-color .2s;white-space:nowrap;overflow:hidden}.permission-item:hover{background-color:var(--bg-page)}.permission-item input[type=checkbox]{width:14px;height:14px;cursor:pointer;flex-shrink:0}.permission-label{font-size:11px;font-family:Times New Roman,SimSun,serif;color:var(--text-body);-webkit-user-select:none;user-select:none;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-info{margin:0;font-size:11px;font-family:Times New Roman,SimSun,serif;color:var(--text-secondary)}.btn-cancel,.btn-save{padding:6px 14px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-family:Times New Roman,SimSun,serif;font-weight:500;transition:all .2s}.btn-cancel{background-color:var(--bg-page);color:var(--text-secondary)}.btn-cancel:hover{background-color:var(--border)}.btn-save{background-color:var(--brand);color:#fff}.btn-save:hover{background-color:var(--brand)}.toast-notification{position:fixed!important;bottom:20px!important;right:20px!important;top:auto!important;left:auto!important;transform:none!important;background-color:var(--bg-card)!important;color:var(--text-body)!important;padding:14px 20px!important;border-radius:6px!important;font-size:14px!important;font-weight:500!important;z-index:99999!important;box-shadow:0 4px 12px #0f172a4d!important;border:1px solid var(--border)!important;min-width:250px!important;max-width:400px!important;width:auto!important;height:auto!important;display:block!important;animation:slideInUp 2s ease-out!important}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid var(--border);background:var(--bg-card)}.pagination-info{font-size:14px;color:var(--text-secondary)}.pagination-buttons{display:flex;align-items:center;gap:8px}.pagination-btn{padding:6px 12px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-body);border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s}.pagination-btn:hover:not(:disabled){background:var(--bg-section);border-color:var(--text-placeholder)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.page-size-select{padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--bg-card);color:var(--text-body);cursor:pointer}.page-size-select:disabled{opacity:.5;cursor:not-allowed}.translation-settings{height:100%;display:flex;flex-direction:column;overflow:hidden}.settings-tabs{display:flex;gap:8px;border-bottom:2px solid var(--border);flex-shrink:0;padding:0 20px}.settings-tabs .tab-button{background:none;border:none;padding:10px 20px;font-size:11px;color:var(--text-secondary);cursor:pointer;position:relative;transition:all .2s;border-bottom:2px solid transparent;margin-bottom:-2px}.settings-tabs .tab-button:hover{color:var(--brand);background:var(--brand-light)}.settings-tabs .tab-button.active{color:var(--brand);font-weight:500;border-bottom-color:var(--brand)}.settings-header{margin-bottom:4px;border-bottom:1px solid var(--border);padding-bottom:3px}.settings-header h2{margin:0;font-size:12px;color:var(--text-body);font-weight:600}.settings-desc{margin:0;color:var(--text-secondary);font-size:9px;line-height:1.2}.settings-message{padding:3px 8px;border-radius:3px;margin-bottom:4px;font-size:10px;line-height:1.4}.settings-message.success{background:var(--success-bg);color:var(--success);border:1px solid var(--success-border)}.settings-message.error{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border)}.settings-content{display:flex;flex-direction:column;gap:4px}.settings-section{background:var(--bg-card);border:1px solid var(--border);border-radius:2px;padding:4px 8px}.settings-section h3{margin:0 0 2px;font-size:11px;color:var(--text-body);font-weight:600;line-height:1.2}.section-desc{margin:0 0 3px;color:var(--text-secondary);font-size:9px;line-height:1.2}.settings-form{display:flex;flex-direction:column;gap:3px}.form-row{display:flex;flex-direction:column;gap:0px}.form-row>label{font-size:10px;color:var(--text-body);margin-bottom:2px;line-height:1.2}.checkbox-label{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:10px;color:var(--text-body);line-height:1.2;padding:1px 0}.checkbox-label input[type=checkbox]{width:12px;height:12px;cursor:pointer;flex-shrink:0;margin:0}.settings-form .radio-group{display:flex!important;flex-direction:row!important;gap:8px;margin:1px 0;flex-wrap:wrap}.settings-form .radio-label{display:inline-flex!important;align-items:center;gap:3px;cursor:pointer;font-size:10px;color:var(--text-body);padding:2px 6px;border:1px solid var(--border);border-radius:2px;transition:all .2s;line-height:1.2;white-space:nowrap}.settings-form .radio-label:hover{border-color:var(--brand);background:var(--brand-light)}.settings-form .radio-label input[type=radio]{width:12px;height:12px;cursor:pointer;accent-color:var(--brand);flex-shrink:0;margin:0}.settings-form .radio-label input[type=radio]:checked+span{color:var(--brand);font-weight:500}.form-hint{color:var(--text-secondary);font-size:9px;margin-left:16px;line-height:1.2;margin-top:0}.priority-row{flex-direction:row;align-items:center;gap:6px;padding:1px 0}.priority-row label{min-width:140px;font-size:10px;color:var(--text-body);line-height:1.2}.priority-input{width:60px;padding:2px 6px;border:1px solid var(--border);border-radius:2px;font-size:10px;text-align:center}.priority-input:focus{outline:none;border-color:var(--brand)}.info-box{background:var(--bg-page);border-radius:2px;padding:4px 8px;font-size:9px;color:var(--text-body);line-height:1.3}.info-box p{margin:0 0 2px}.info-box ul{margin:0;padding-left:14px}.info-box li{margin-bottom:0}.settings-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.translation-settings .btn{padding:4px 12px;border-radius:2px;font-size:10px;cursor:pointer;border:none;transition:all .2s;line-height:1.3}.translation-settings .btn-primary{background:var(--brand);color:#fff}.translation-settings .btn-primary:hover:not(:disabled){background:var(--brand-hover)}.translation-settings .btn-primary:disabled{background:var(--brand-border);cursor:not-allowed}.translation-settings .btn-secondary{background:var(--bg-page);color:var(--text-body);border:1px solid var(--border)}.translation-settings .btn-secondary:hover{background:var(--border)}.translation-settings .loading{text-align:center;padding:48px;color:var(--text-secondary);font-size:16px}.cache-info{display:flex;flex-direction:column;gap:16px}.cache-stats{display:flex;gap:24px;padding:16px;background:var(--brand-light);border-radius:8px;border:1px solid var(--brand-light)}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-value{font-size:20px;font-weight:600;color:var(--brand)}.cache-actions{display:flex;gap:12px}.translation-settings .btn-danger{background:var(--danger);color:#fff;padding:8px 20px;border-radius:4px;font-size:14px;cursor:pointer;border:none;transition:all .2s}.translation-settings .btn-danger:hover:not(:disabled){background:var(--danger)}.translation-settings .btn-danger:disabled{background:var(--danger-border);cursor:not-allowed}.settings-tab-content{flex:1;overflow-y:auto;padding:6px 12px;min-height:0}.settings-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;padding:8px 0}.settings-card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:12px 14px;cursor:pointer;transition:box-shadow .15s,border-color .15s;-webkit-user-select:none;user-select:none}.settings-card:hover{border-color:var(--brand-border);box-shadow:var(--shadow-dropdown)}.settings-card-goto{background:var(--bg-section)}.settings-card-title{font-size:13px;font-weight:600;color:var(--text-title);margin:0 0 4px}.settings-card-desc{font-size:11px;color:var(--text-secondary);margin:0 0 8px;line-height:1.4}.settings-card-summary{font-size:11px;color:var(--brand);background:var(--brand-light);border-radius:3px;padding:2px 8px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-card-modal{width:600px;max-width:94vw}.settings-card-modal .modal-body{max-height:70vh;overflow-y:auto;padding:16px 20px}.settings-card-modal .modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-title)}.settings-card-modal .modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border)}.page-scroll-wrapper{height:100%;overflow-y:auto;overflow-x:hidden}.segmentation-settings{padding:20px;max-width:900px;margin:0 auto;min-height:100%}.settings-header{margin-bottom:20px}.settings-header h2{font-size:20px;font-weight:600;color:var(--text-body);margin:0 0 8px}.settings-description{font-size:13px;color:var(--text-secondary);margin:0}.language-tabs{display:flex;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--border);margin-bottom:20px;flex-wrap:wrap}.language-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-page);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.language-tab:hover{background:var(--border)}.language-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.lang-flag{font-size:16px}.lang-name{font-weight:500}.rules-loading,.rules-empty{text-align:center;padding:40px;color:var(--text-placeholder);font-size:14px}.rules-section{margin-bottom:24px}.rules-table-container{max-height:300px;overflow-y:auto;border:1px solid var(--border);border-radius:4px}.rules-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rules-section-header h3{font-size:14px;font-weight:600;color:var(--text-body);margin:0}.add-rule-btn{padding:6px 16px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer;box-shadow:0 1px 2px #0000001a;transition:all .2s}.add-rule-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 2px 4px #0f172a1a}.export-rule-btn{padding:6px 16px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer;box-shadow:0 1px 2px #0000001a;transition:all .2s}.export-rule-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 2px 4px #0f172a1a}.import-rule-btn{padding:6px 16px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer;box-shadow:0 1px 2px #0000001a;transition:all .2s}.import-rule-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 2px 4px #0f172a1a}.rules-table{width:100%;border-collapse:collapse;font-size:13px}.rules-table th,.rules-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}.rules-table th{background:var(--bg-page);font-weight:600;color:var(--text-secondary);font-size:12px}.rules-table tr:hover{background:var(--bg-section)}.rules-table tr.disabled{opacity:.5;background:var(--bg-page)}.pattern-text{font-family:Consolas,Monaco,monospace;font-weight:600;color:var(--brand);background:var(--brand-light);padding:2px 6px;border-radius:3px}.description-text{color:var(--text-secondary)}.edit-input{width:100%;padding:4px 8px;border:1px solid var(--brand);border-radius:3px;font-size:13px}.toggle-switch{position:relative;display:inline-block;width:36px;height:20px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--text-placeholder);transition:.3s;border-radius:20px}.toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:var(--bg-card);transition:.3s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--success)}input:checked+.toggle-slider:before{transform:translate(16px)}.action-buttons{display:flex;gap:6px}.action-btn{padding:4px 10px;border:none;border-radius:3px;font-size:11px;cursor:pointer}.action-btn.edit{background:var(--brand-light);color:var(--brand)}.action-btn.edit:hover{background:var(--brand-light)}.action-btn.delete{background:var(--danger-bg);color:var(--danger)}.action-btn.delete:hover{background:var(--danger-bg)}.action-btn.delete.disabled{opacity:.4;cursor:not-allowed}.action-btn.save{background:var(--success);color:#fff}.action-btn.cancel{background:var(--border);color:var(--text-body)}.rules-footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--border);text-align:right}.reset-btn{padding:8px 16px;background:var(--bg-page);border:1px solid var(--border);border-radius:4px;font-size:13px;color:var(--text-secondary);cursor:pointer}.reset-btn:hover{background:var(--border);color:var(--text-body)}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog{background:var(--bg-card);border-radius:8px;width:400px;max-width:90%;box-shadow:0 4px 20px #0003}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.dialog-header h3{margin:0;font-size:16px;font-weight:600}.dialog-close{background:none;border:none;font-size:20px;color:var(--text-placeholder);cursor:pointer}.dialog-close:hover{color:var(--text-body)}.dialog-body{padding:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-body)}.form-group input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px}.form-group input:focus{border-color:var(--brand);outline:none}.dialog-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--border);background:var(--bg-section);border-radius:0 0 8px 8px}.btn-cancel{padding:8px 20px;background:var(--bg-page);border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer}.btn-confirm{padding:8px 20px;background:var(--brand);color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer}.btn-confirm:hover:not(:disabled){background:var(--brand-hover)}.btn-confirm:disabled{background:var(--border-strong);cursor:not-allowed}.import-stats{margin-top:16px;padding:12px;background:var(--bg-page);border-radius:4px}.import-stats h4{font-size:13px;font-weight:600;color:var(--text-body);margin:0 0 8px}.import-stats ul{list-style:none;padding:0;margin:0;font-size:12px;color:var(--text-secondary)}.import-stats li{padding:4px 0}.import-preview{margin-top:16px}.import-preview h4{font-size:13px;font-weight:600;color:var(--text-body);margin:0 0 8px}.preview-list{max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:4px;background:var(--bg-card)}.preview-item{padding:6px 12px;font-size:12px;font-family:Consolas,Monaco,monospace;color:var(--brand);border-bottom:1px solid var(--bg-section)}.preview-item:last-child{border-bottom:none}.preview-more{padding:6px 12px;font-size:12px;color:var(--text-placeholder);font-style:italic;text-align:center}.error-hint{color:var(--danger);font-size:12px;margin-top:4px}.language-management{padding:20px;max-width:1200px;margin:0 auto;height:100%;display:flex;flex-direction:column;overflow:hidden}.language-header{margin-bottom:20px;flex-shrink:0}.language-header h2{font-size:24px;margin-bottom:8px;color:var(--text-body)}.language-desc{color:var(--text-secondary);font-size:14px;margin:0}.language-message{padding:12px 16px;border-radius:4px;margin-bottom:16px}.language-message.success{background-color:var(--success-bg);color:var(--success);border:1px solid #c3e6cb}.language-message.error{background-color:#f8d7da;color:var(--danger);border:1px solid #f5c6cb}.language-search{position:relative;margin-bottom:16px;flex-shrink:0}.search-input{width:100%;padding:10px 40px 10px 12px;font-size:14px;border:1px solid var(--border);border-radius:4px;box-sizing:border-box}.search-input:focus{outline:none;border-color:#4a90e2}.btn-clear-search{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:20px;color:var(--text-placeholder);cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.btn-clear-search:hover{color:var(--text-secondary)}.language-stats{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 16px;background-color:var(--bg-page);border-radius:4px;margin-bottom:16px;flex-shrink:0;gap:12px}.language-stats-left{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.favorite-lang-tags{display:flex;flex-wrap:wrap;gap:6px}.favorite-lang-tag{display:inline-block;padding:2px 8px;background-color:var(--brand-light);color:var(--brand);border-radius:12px;font-size:12px;line-height:1.6;white-space:nowrap}.language-stats span{color:var(--text-secondary);font-size:14px}.language-stats strong{color:var(--text-body);font-weight:600}.btn-clear-favorites{padding:6px 12px;font-size:13px;background-color:var(--bg-card);border:1px solid var(--border);border-radius:4px;cursor:pointer;color:var(--text-secondary)}.btn-clear-favorites:hover{background-color:var(--bg-section);color:var(--text-body)}.language-list{border:1px solid var(--border);border-radius:4px;overflow:hidden;margin-bottom:20px;max-height:450px;display:flex;flex-direction:column}.language-list-header{display:grid;grid-template-columns:60px 180px 280px 1fr;background-color:var(--bg-page);border-bottom:1px solid var(--border);font-weight:600;font-size:12px;color:var(--text-secondary);flex-shrink:0}.language-list-header>div{padding:8px 12px}.language-list-body{flex:1;overflow-y:auto;min-height:0}.language-row{display:grid;grid-template-columns:60px 180px 280px 1fr;border-bottom:1px solid var(--bg-section);font-size:13px;transition:background-color .2s}.language-row:hover{background-color:var(--bg-section)}.language-row:last-child{border-bottom:none}.language-row>div{padding:6px 12px;display:flex;align-items:center}.col-favorite{justify-content:center}.favorite-checkbox{width:18px;height:18px;cursor:pointer}.col-code{font-family:Consolas,Monaco,Courier New,monospace;color:var(--danger);font-weight:500}.col-name{color:var(--text-body)}.col-english{color:var(--text-secondary)}.no-results{padding:40px;text-align:center;color:var(--text-placeholder);font-size:14px}.language-actions{display:flex;justify-content:flex-end;padding-top:20px;flex-shrink:0}.loading{padding:40px;text-align:center;color:var(--text-secondary)}.quality-threshold-settings{padding:20px;max-width:1200px;margin:0 auto;max-height:calc(100vh - 120px);overflow-y:auto}.settings-header{margin-bottom:24px}.settings-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-title);font-family:瀹嬩綋,Times New Roman,serif}.settings-desc{margin:0;font-size:14px;color:var(--text-body);line-height:1.6;font-family:瀹嬩綋,Times New Roman,serif}.settings-message{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;font-family:瀹嬩綋,Times New Roman,serif}.settings-message.success{background:var(--brand-light);border:1px solid #67c23a;color:#67c23a}.settings-message.error{background:var(--danger-bg);border:1px solid #f56c6c;color:#f56c6c}.loading{text-align:center;padding:40px;color:var(--text-secondary);font-size:14px;font-family:瀹嬩綋,Times New Roman,serif}.threshold-section{background:var(--bg-card);border:1px solid #e4e7ed;border-radius:8px;padding:24px;margin-bottom:24px}.threshold-section h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-title);font-family:瀹嬩綋,Times New Roman,serif}.section-desc{margin:0 0 20px;font-size:13px;color:var(--text-secondary);font-family:瀹嬩綋,Times New Roman,serif}.threshold-form{background:var(--bg-section);border-radius:6px;padding:16px}.add-form{margin-bottom:20px}.add-form .form-row{display:flex;align-items:center;gap:12px}.add-form .form-row .btn-primary{margin-left:auto}.form-row,.threshold-form .form-row{display:flex;align-items:center;gap:12px}.threshold-form .form-row .btn-primary{margin-left:auto}.form-row label{font-size:14px;font-weight:500;color:var(--text-title);white-space:nowrap;font-family:瀹嬩綋,Times New Roman,serif}.threshold-input{width:120px;height:36px;padding:0 12px;border:1px solid var(--border);border-radius:4px;font-size:16px;font-weight:600;color:var(--text-title);text-align:center;font-family:Times New Roman,serif;transition:border-color .2s}.threshold-input:focus{outline:none;border-color:var(--brand)}.threshold-input-small{width:80px;height:32px;padding:0 8px;border:1px solid var(--border);border-radius:4px;font-size:14px;font-weight:600;color:var(--text-title);text-align:center;font-family:Times New Roman,serif}.threshold-input-small:focus{outline:none;border-color:var(--brand)}.input-unit{font-size:14px;color:var(--text-body);font-family:瀹嬩綋,Times New Roman,serif}.client-select{min-width:180px;height:36px;padding:0 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;color:var(--text-title);background:var(--bg-card);cursor:pointer;font-family:瀹嬩綋,Times New Roman,serif}.client-select:focus{outline:none;border-color:var(--brand)}.client-select:disabled{background:var(--bg-section);cursor:not-allowed;color:var(--text-placeholder)}.btn{padding:8px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .2s;font-family:瀹嬩綋,Times New Roman,serif}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-light)}.btn-primary:disabled{background:var(--brand-border);cursor:not-allowed}.threshold-list{margin-top:20px}.threshold-table{width:100%;border-collapse:collapse;background:var(--bg-card)}.threshold-table th{background:var(--bg-section);padding:12px 16px;text-align:left;font-size:14px;font-weight:600;color:var(--text-title);border-bottom:2px solid #e4e7ed;font-family:瀹嬩綋,Times New Roman,serif}.threshold-table td{padding:12px 16px;font-size:14px;color:var(--text-body);border-bottom:1px solid #ebeef5;font-family:瀹嬩綋,Times New Roman,serif}.threshold-table tbody tr:hover{background:var(--bg-section)}.threshold-value{font-weight:600;color:var(--brand);font-size:16px;font-family:Times New Roman,serif}.qualified-standard{color:#67c23a;font-weight:500}.btn-action{padding:4px 12px;margin-right:8px;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s;font-family:瀹嬩綋,Times New Roman,serif}.btn-edit{background:var(--brand-light);color:var(--brand)}.btn-edit:hover{background:var(--brand-light)}.btn-delete{background:var(--danger-bg);color:#f56c6c}.btn-delete:hover:not(:disabled){background:var(--danger-border)}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.btn-save{background:var(--brand-light);color:#67c23a}.btn-save:hover:not(:disabled){background:var(--success-bg)}.empty-state{text-align:center;padding:40px;color:var(--text-secondary);font-size:14px;background:var(--bg-section);border-radius:6px;font-family:瀹嬩綋,Times New Roman,serif}.system-settings{height:100%;display:flex;flex-direction:column;background-color:var(--bg-page)}.settings-header{background:var(--bg-card);padding:24px 32px;border-bottom:1px solid var(--border)}.settings-header h1{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-body)}.settings-desc{margin:0;font-size:14px;color:var(--text-secondary)}.settings-content{flex:1;padding:10px 16px!important;overflow-y:auto}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:16px;color:var(--text-secondary)}.message{position:fixed;top:80px;right:20px;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #0f172a1a;z-index:9999;min-width:300px;max-width:500px;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.message-success{background:var(--success);color:#fff;border:1px solid var(--success)}.message-error{background:var(--danger);color:#fff;border:1px solid var(--danger)}.settings-section{background:var(--bg-card);border-radius:var(--radius-card);padding:12px 16px!important;box-shadow:var(--shadow-card);border:1px solid var(--border)}.settings-section h2{margin:0 0 4px!important;font-size:16px!important;font-weight:600;color:var(--text-body)}.section-desc{margin:0 0 10px!important;font-size:13px;color:var(--text-secondary);line-height:1.4}.form-group{margin-bottom:10px!important}.form-group:last-child{margin-bottom:0!important}.form-group label{display:block;margin-bottom:4px!important;font-size:13px;font-weight:500;color:var(--text-body)}.webhook-enabled-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-bottom:16px}.webhook-enabled-row input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;cursor:pointer}.webhook-enabled-row label{display:inline;margin:0;font-size:14px;font-weight:500;color:var(--text-body);cursor:pointer;-webkit-user-select:none;user-select:none}.required{color:var(--danger);margin-left:4px}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;font-family:Consolas,Monaco,monospace;transition:border-color .2s,box-shadow .2s}.form-hint{margin:8px 0 0;font-size:12px;color:var(--text-secondary);line-height:1.5}.settings-footer{margin-top:10px;display:flex;gap:10px;justify-content:flex-end}.system-settings .btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.system-settings .btn:disabled{opacity:.5;cursor:not-allowed}.system-settings .btn-primary{background-color:var(--brand);color:#fff}.system-settings .btn-primary:hover:not(:disabled){background-color:var(--brand)}.system-settings .btn-secondary{background-color:var(--bg-section);color:var(--text-body)}.system-settings .btn-secondary:hover:not(:disabled){background-color:var(--border)}.storage-structure{margin-top:12px;padding:12px 16px;background-color:var(--bg-section);border:1px solid var(--border);border-radius:6px}.structure-title{margin:0 0 8px;font-size:12px;font-weight:500;color:var(--text-secondary)}.structure-list{margin:0;padding:0;list-style:none;font-size:13px;font-family:Consolas,Monaco,monospace;color:var(--text-body);line-height:1.8}.structure-list li{margin:2px 0}.hint-text{font-size:11px;color:var(--text-placeholder);font-family:system-ui,-apple-system,sans-serif}.sso-config-container{margin-top:16px}.sso-checkbox-wrapper{padding:12px 16px;background:var(--bg-section);border:1px solid var(--border);border-radius:8px;margin-bottom:12px}.sso-checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.sso-checkbox{width:18px;height:18px;cursor:pointer;flex-shrink:0}.sso-checkbox:disabled{opacity:.5;cursor:not-allowed}.sso-checkbox-text{font-size:14px;color:var(--text-title);font-weight:500;line-height:1.5}.settings-section+.settings-section{margin-top:10px!important}.section-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:6px!important}.section-header h2{margin:0}.index-summary{margin-bottom:16px;padding:12px 16px;background-color:var(--bg-section);border-radius:6px;font-size:14px;color:var(--text-body)}.index-summary strong{color:var(--text-title)}.index-cards-wrapper{display:flex;flex-direction:row;gap:20px;margin-bottom:20px;flex-wrap:wrap}.index-card{flex:1 1 280px;min-width:280px;max-width:350px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);overflow:hidden;position:relative}.index-card-header{padding:12px 16px;background:var(--bg-section);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.index-card-header h4{margin:0;font-size:14px;font-weight:600;color:var(--text-title)}.index-table{font-size:12px;color:var(--text-secondary);font-family:Consolas,Monaco,monospace;background:var(--border);padding:2px 8px;border-radius:4px}.index-card-body{padding:16px;position:relative}.index-progress{margin-bottom:12px;position:relative;z-index:1}.progress-bar{height:24px;background:var(--border);border-radius:4px;overflow:hidden;position:relative;width:100%}.progress-fill{height:100%;background:linear-gradient(90deg,var(--brand),var(--brand-border));border-radius:4px;transition:width .3s ease;position:relative}.progress-percentage{text-align:center;font-size:10px;font-weight:600;color:var(--brand);margin-top:4px}.progress-label{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--text-secondary);white-space:nowrap;z-index:2}.progress-text{display:none}.task-progress{margin:8px 0;padding:8px;background:var(--brand-light);border-radius:4px;text-align:center}.task-progress span{font-size:12px;color:var(--brand);font-weight:500}.index-desc{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5;position:relative;z-index:1;clear:both}.index-card-footer{padding:12px 16px;border-top:1px solid var(--border);background:var(--bg-section)}.index-actions{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.action-hint{margin:12px 0 0;font-size:12px;color:var(--text-secondary)}.index-loading{padding:40px;text-align:center;color:var(--text-secondary);font-size:14px}.system-settings .btn-sm{padding:6px 12px;font-size:13px}.system-settings .btn-outline{background:var(--bg-card);color:var(--brand);border:1px solid var(--brand)}.system-settings .btn-outline:hover:not(:disabled){background:var(--brand-light)}.redis-status-card{background:var(--bg-section);border:1px solid var(--border);border-radius:8px;padding:20px;margin-bottom:24px}.redis-status-item{margin-bottom:16px}.redis-status-item:last-child{margin-bottom:0}.redis-status-item label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:6px}.redis-value{display:flex;align-items:baseline;gap:8px}.redis-value strong{font-size:18px;color:var(--text-title)}.text-muted{font-size:13px;color:var(--text-placeholder)}.usage-percent{font-size:14px;color:var(--success)}.text-warning{color:var(--warning)!important}.redis-progress{margin-top:12px}.redis-progress .progress-bar{height:8px;background-color:var(--border);border-radius:4px;overflow:hidden}.redis-progress .progress-fill{height:100%;background-color:var(--success);transition:width .3s ease,background-color .3s ease}.redis-progress .progress-warning{background-color:var(--warning)}.input-with-hint{display:flex;flex-direction:column}.redis-warning{margin-top:20px;padding:16px;background:var(--warning-bg);border:1px solid var(--warning);border-radius:6px;font-size:13px;color:var(--warning)}.redis-warning strong{display:block;margin-bottom:8px;color:var(--warning)}.redis-warning ul{margin:0;padding-left:20px}.redis-warning li{margin-bottom:4px;line-height:1.5}.redis-warning li:last-child{margin-bottom:0}.config-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;margin:10px 0}.stat-card{background:var(--bg-section);border-radius:6px;padding:8px 10px;text-align:center;transition:all .2s}.stat-card.stat-warning{background:var(--warning-bg);border:1px solid var(--warning)}.stat-label{font-size:11px;color:var(--text-secondary);margin-bottom:4px}.stat-value{font-size:18px;font-weight:700;color:var(--text-body);margin-bottom:2px}.stat-card.stat-warning .stat-value{color:var(--warning)}.stat-hint{font-size:12px;color:var(--text-secondary)}.cleanup-actions{margin-top:24px}.cleanup-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--bg-section);border-radius:8px;margin-bottom:16px}.cleanup-info{flex:1}.cleanup-info h4{margin:0 0 8px;font-size:15px;color:var(--text-body)}.cleanup-info p{margin:0 0 8px;font-size:13px;color:var(--text-secondary)}.cleanup-info .text-warning{color:var(--danger);font-weight:700;font-size:13px}.cleanup-controls{margin-top:8px}.cleanup-controls label{display:flex;align-items:center;font-size:13px;color:var(--text-body)}.cleanup-controls input[type=number]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:13px}.btn-danger{padding:8px 16px;background:var(--danger);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;white-space:nowrap;transition:background .2s}.btn-danger:hover:not(:disabled){background:var(--danger)}.btn-danger:disabled{background:var(--border);cursor:not-allowed}.config-cleanup-hint{margin-top:20px;padding:16px;background:var(--brand-light);border-left:4px solid var(--brand);border-radius:4px;font-size:13px}.config-cleanup-hint strong{display:block;margin-bottom:8px;color:var(--brand)}.config-cleanup-hint ul{margin:0;padding-left:20px}.config-cleanup-hint li{margin-bottom:6px;line-height:1.6;color:var(--text-body)}.config-cleanup-hint li:last-child{margin-bottom:0}.api-warning{padding:12px 16px;background:var(--warning-bg);border:1px solid var(--warning);border-radius:6px;margin-bottom:20px;font-size:13px;color:var(--warning)}.api-warning strong{font-weight:700}.db-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:10px 0}.status-card{background:var(--bg-card);border:2px solid var(--border);border-radius:8px;padding:10px 12px;text-align:center;transition:all .2s}.status-card.status-ok{border-color:var(--success);background:var(--success-bg)}.status-card.status-missing{border-color:var(--danger);background:var(--danger-bg)}.status-card.status-optional{border-color:var(--warning);background:var(--warning-bg)}.status-icon{font-size:16px;margin-bottom:4px}.status-label{font-size:13px;font-weight:700;color:var(--text-body);margin-bottom:4px}.status-desc{font-size:11px;color:var(--text-secondary);line-height:1.3}.db-init-actions{margin-top:24px;text-align:center}.btn-large{padding:14px 32px;font-size:15px;font-weight:700}.action-hint{margin-top:16px;font-size:13px;color:var(--text-secondary);text-align:left;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}.db-optional-actions{margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}.db-optional-actions h4{margin:0 0 16px;font-size:14px;color:var(--text-secondary)}.optional-buttons{display:flex;gap:12px;flex-wrap:wrap}.btn-outline{padding:8px 16px;background:var(--bg-card);color:var(--brand);border:1px solid var(--brand);border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.btn-outline:hover:not(:disabled){background:var(--brand);color:#fff}.btn-outline:disabled{border-color:var(--border);color:var(--border);cursor:not-allowed}.db-config-form{margin-top:20px}.form-row{display:flex;gap:16px;margin-bottom:20px}.form-row .form-group{flex:1}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{padding-right:38px;box-sizing:border-box;width:100%}.db-password-row{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:6px;overflow:hidden}.db-password-input{flex:1;border:none!important;border-radius:0!important;outline:none;box-shadow:none!important;min-width:0}.db-password-row:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.db-password-toggle{flex-shrink:0;width:36px;padding:0;background:transparent;border:none;border-left:1px solid var(--border);cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.db-password-toggle:hover{background:var(--bg-page);color:var(--brand)}.db-password-input::-ms-reveal,.db-password-input::-ms-clear{display:none}.password-toggle{position:absolute;right:1px;top:1px;bottom:1px;width:32px;padding:0;background:transparent;border:none;border-left:1px solid var(--border);border-radius:0 5px 5px 0;cursor:pointer;color:var(--text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center}.password-toggle:hover{background:var(--bg-page);color:var(--brand)}.db-config-hint{margin-top:24px;padding:16px;background:var(--brand-light);border-left:4px solid var(--brand);border-radius:4px;font-size:13px}.db-config-hint strong{display:block;margin-bottom:8px;color:var(--brand)}.db-config-hint ul{margin:0;padding-left:20px}.db-config-hint li{margin-bottom:6px;line-height:1.6;color:var(--text-body)}.db-config-hint code{padding:2px 6px;background:var(--bg-page);border:1px solid var(--border);border-radius:3px;font-family:Courier New,monospace;font-size:12px;color:var(--danger)}.config-templates{margin-bottom:1.5rem;padding:1rem;background:var(--bg-section);border-radius:var(--radius-input)}.config-templates h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-title)}.template-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.template-btn{padding:.875rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-btn);cursor:pointer;transition:all .2s;text-align:left}.template-btn:hover{border-color:var(--brand-border);box-shadow:var(--shadow-dropdown);transform:translateY(-1px)}.template-btn.template-recommended{border-color:var(--success)}.template-btn.template-recommended:hover{border-color:var(--success);box-shadow:var(--shadow-dropdown)}.template-btn.template-active{border-color:var(--brand);background:var(--brand-light);box-shadow:0 0 0 3px #2563eb1a}.template-btn.template-active:hover{border-color:var(--brand-hover);box-shadow:0 0 0 3px #1d4ed826}.template-btn.template-active .template-name{color:var(--brand)}.template-btn.template-active .template-desc{color:var(--brand-hover)}.template-name{font-weight:600;font-size:.95rem;color:var(--text-title);margin-bottom:.25rem}.template-recommended .template-name{color:var(--text-title)}.template-desc{font-size:.825rem;color:var(--text-secondary)}.config-section{margin-bottom:4px;padding:10px 12px;border:1px solid var(--border);border-radius:6px}.config-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-body);padding-bottom:.5rem;border-bottom:2px solid var(--border)}.form-hint{margin:.25rem 0 0;font-size:.8rem;color:var(--text-secondary);font-style:italic}.config-hint{margin-top:1rem;padding:1rem;background:var(--bg-section);border-radius:4px;font-size:.9rem}.config-hint strong{color:var(--text-body)}.config-hint ul{margin:.5rem 0 0;padding-left:1.5rem}.config-hint li{margin:.25rem 0;color:var(--text-secondary)}.performance-analysis{margin-top:1rem}.analysis-section{margin-bottom:1.5rem;padding:1rem;background:var(--bg-section);border-radius:6px}.analysis-section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-body)}.analysis-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.stat-item{display:flex;flex-direction:column;padding:.75rem;background:var(--bg-card);border-radius:4px;border-left:3px solid var(--brand)}.stat-label{font-size:.825rem;color:var(--text-secondary);margin-bottom:.25rem}.stat-value{font-size:1.25rem;font-weight:600;color:var(--text-title)}.recommendation-card{padding:10px 12px;background:var(--bg-card);border-radius:6px;margin-bottom:8px;border-left:4px solid var(--text-secondary)}.recommendation-card.urgent{border-left-color:var(--danger);background:linear-gradient(135deg,var(--danger-bg) 0%,#ffe5e5 100%)}.recommendation-card.warning{border-left-color:var(--warning);background:linear-gradient(135deg,var(--bg-card)df0 0%,var(--bg-card)9e5 100%)}.recommendation-card.info{border-left-color:var(--brand);background:linear-gradient(135deg,#f0f9ff,#e5f5ff)}.recommendation-card.success{border-left-color:var(--success);background:linear-gradient(135deg,#f0fff4,#e8f9ed)}.recommendation-icon{display:none}.recommendation-content{flex:1;min-width:0}.recommendation-content h5{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--danger);line-height:1.5}.recommendation-content h5.rec-title-success{color:var(--success)}.recommendation-card.warning .recommendation-content h5{color:var(--warning)}.recommendation-content p{margin:4px 0;font-size:13px;color:var(--text-body)}.recommendation-hint{margin-top:4px;font-size:12px;color:var(--text-secondary);font-style:italic}.recommendations-list{margin:0;padding-left:1.2rem}.recommendations-list li{margin:4px 0;font-size:13px;color:var(--text-body)}.no-analysis{padding:1rem;text-align:center;color:var(--text-secondary);font-style:italic}.db-monitor-section{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.section-sub-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-sub-header h4{margin:0;font-size:15px;font-weight:600;color:var(--text-body);font-family:瀹嬩綋,Times New Roman,serif}.metric-cards{display:grid;gap:8px;margin-bottom:12px}.metric-cards.db-monitor-cards{grid-template-columns:repeat(4,1fr)}.metric-card{padding:10px 12px;background:var(--bg-section);border:1px solid var(--border);border-radius:6px;transition:box-shadow .2s}.metric-card:hover{box-shadow:0 2px 8px #00000014}.metric-card.success{background:var(--success-bg);border-color:var(--success)}.metric-card.danger{background:var(--danger-bg);border-color:var(--danger)}.metric-label{font-size:12px;color:var(--text-secondary);margin-bottom:4px;font-family:瀹嬩綋,Times New Roman,serif}.metric-value{font-size:20px;font-weight:600;color:var(--text-title);margin-bottom:2px;font-family:瀹嬩綋,Times New Roman,serif}.metric-detail{font-size:11px;color:var(--text-secondary);margin-top:2px;font-family:瀹嬩綋,Times New Roman,serif}.db-monitor-detail{margin-bottom:12px}.resource-subtitle{font-size:14px;font-weight:600;color:var(--text-body);margin-bottom:12px;font-family:瀹嬩綋,Times New Roman,serif}.connection-pool-info{display:flex;gap:16px;flex-wrap:wrap;padding:12px 0}.pool-item{font-size:13px;color:var(--text-body);background:var(--bg-section);padding:8px 16px;border-radius:6px;font-family:瀹嬩綋,Times New Roman,serif}.db-uptime-info{padding:12px 0;font-size:12px;color:var(--text-secondary);font-family:瀹嬩綋,Times New Roman,serif;border-top:1px solid var(--border);margin-top:12px}.restart-service-box{background:var(--bg-section);border:1px solid var(--border);border-radius:8px;padding:20px}.restart-service-items{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.restart-service-item{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;flex:1;min-width:180px}.restart-service-icon{font-size:18px;line-height:1}.restart-service-label{font-size:13px;font-weight:600;color:var(--text-title);white-space:nowrap}.restart-service-desc{font-size:12px;color:var(--text-secondary)}.restart-countdown{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:6px;font-size:13px;color:var(--warning);margin-bottom:12px}.restart-countdown-spinner{width:16px;height:16px;border:2px solid var(--warning-border);border-top-color:var(--warning);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.btn-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:var(--bg-card);border-radius:50%;animation:spin .8s linear infinite;margin-right:6px;vertical-align:middle}.custom-config-header{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.custom-config-title{font-size:13px;font-weight:600;color:var(--text-body)}.custom-config-label{font-size:11px;color:var(--bg-card);background:var(--text-secondary);padding:1px 7px;border-radius:10px;font-weight:500}.custom-config-grid{display:flex;flex-direction:column;gap:6px}.custom-config-labels,.custom-config-inputs{display:grid;gap:8px}.custom-config-inputs .form-input{width:100%;padding:5px 8px;font-size:13px;height:30px}.pool-config-grid .custom-config-labels,.pool-config-grid .custom-config-inputs{grid-template-columns:repeat(5,1fr)}.thread-config-grid .custom-config-labels,.thread-config-grid .custom-config-inputs{grid-template-columns:repeat(3,1fr)}.custom-config-labels span{font-size:12px;font-weight:600;color:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-section-title{font-size:13px;font-weight:600;color:var(--text-body);margin:14px 0 6px;padding:0}.pool-status-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 12px;background:var(--bg-section);border:1px solid var(--border);border-radius:6px;margin-bottom:10px}.pool-status-title{font-size:12px;font-weight:600;color:var(--text-body);margin-right:4px;white-space:nowrap}.pool-status-cards{display:flex;gap:6px}.pool-status-card{display:flex;flex-direction:column;align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:5px;padding:4px 14px;min-width:52px}.pool-card-label{font-size:11px;color:var(--text-secondary);line-height:1.2}.pool-card-value{font-size:15px;font-weight:600;color:var(--text-body);line-height:1.3}.pool-status-bar .pool-item{padding:3px 10px;font-size:12px}.embedding-config-form .form-row{display:flex;align-items:flex-start;gap:16px;margin-bottom:18px}.embedding-config-form .form-label{min-width:110px;font-size:14px;font-weight:500;color:var(--text-body);padding-top:8px}.embedding-config-form .form-control{flex:1}.embedding-config-form .form-control-inline{display:flex;align-items:center;gap:12px}.embedding-config-form .form-input{width:100%;padding:7px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;box-sizing:border-box;transition:border-color .15s}.embedding-config-form .form-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.embedding-config-form .form-input-sm{width:100px}.embedding-config-form .form-select{padding:7px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;background:var(--bg-card);min-width:260px}.embedding-config-form .field-hint{margin:4px 0 0;font-size:12px;color:var(--text-placeholder)}.embedding-config-form .form-hint{font-size:13px}.preset-buttons{display:flex;flex-wrap:wrap;gap:8px}.form-actions{display:flex;align-items:center;padding-top:8px;border-top:1px solid var(--bg-section);margin-top:8px}.alert{padding:10px 14px;border-radius:6px;font-size:14px}.alert-success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success)}.alert-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger)}.embedding-tm-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.embedding-tm-table-wrap{overflow-x:auto}.embedding-tm-table{width:100%;border-collapse:collapse;font-size:14px}.embedding-tm-table th{background:var(--bg-section);padding:10px 14px;font-weight:600;color:var(--text-body);border-bottom:2px solid var(--border);white-space:nowrap}.embedding-tm-table td{padding:10px 14px;border-bottom:1px solid var(--bg-section);vertical-align:middle}.embedding-tm-table tr:hover td{background:var(--bg-section)}.progress-bar-mini{width:60px;height:6px;background:var(--border);border-radius:3px;overflow:hidden;flex-shrink:0}.progress-bar-fill{height:100%;background:var(--brand);border-radius:3px;transition:width .4s ease}.empty-state{text-align:center;padding:32px;color:var(--text-placeholder);font-size:14px}.loading-sm{padding:16px;color:var(--text-placeholder);font-size:14px}.settings-card-modal-body .settings-content .settings-section,.settings-card-modal-body .settings-content>div[data-card]{display:none}.settings-card-modal-body .settings-content[data-active=sso] .settings-section[data-card=sso],.settings-card-modal-body .settings-content[data-active=paths] .settings-section[data-card=paths],.settings-card-modal-body .settings-content[data-active=https] .settings-section[data-card=https],.settings-card-modal-body .settings-content[data-active=dbConfig] .settings-section[data-card=dbConfig],.settings-card-modal-body .settings-content[data-active=dbInit] .settings-section[data-card=dbInit],.settings-card-modal-body .settings-content[data-active=embedding] .settings-section[data-card=embedding],.settings-card-modal-body .settings-content[data-active=indexMgmt] .settings-section[data-card=indexMgmt],.settings-card-modal-body .settings-content[data-active=concPool] .settings-section[data-card=concPool],.settings-card-modal-body .settings-content[data-active=redis] .settings-section[data-card=redis],.settings-card-modal-body .settings-content[data-active=perfAnalysis] .settings-section[data-card=perfAnalysis],.settings-card-modal-body .settings-content[data-active=security] .settings-section[data-card=security],.settings-card-modal-body .settings-content[data-active=userConfig] .settings-section[data-card=userConfig],.settings-card-modal-body .settings-content[data-active=epo] .settings-section[data-card=epo],.settings-card-modal-body .settings-content[data-active=restart] .settings-section[data-card=restart],.settings-card-modal-body .settings-content[data-active=email]>div[data-card=email],.settings-card-modal-body .settings-content[data-active=webhook]>div[data-card=webhook]{display:block}.settings-card-modal-lg{width:860px;max-width:96vw}.settings-card-modal-body{max-height:80vh;overflow-y:auto;padding:0}.settings-card-modal-body .settings-content{padding:8px 16px}.checklist-management{height:100%;display:flex;flex-direction:column;background:var(--bg-page);font-size:11px}.header-actions{display:flex;gap:8px;align-items:center}.message{padding:6px 12px;margin:8px 15px;border-radius:3px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.checklist-layout{flex:1;display:flex;gap:10px;padding:10px;overflow:hidden}.checklist-list-panel{width:280px;min-width:280px;background:var(--bg-card);border:1px solid var(--border);display:flex;flex-direction:column}.checklist-list-panel h2{font-size:12px;margin:0;padding:8px 10px;background:var(--bg-section);border-bottom:1px solid var(--border);font-weight:600}.panel-header-with-actions{padding:8px 10px;background:var(--bg-section);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.panel-header-with-actions h2{font-size:12px;margin:0;font-weight:600;padding:0;background:none;border:none}.panel-header-with-actions .header-actions{display:flex;gap:6px;align-items:center}.checklist-list{flex:1;overflow-y:auto;padding:4px}.checklist-item{padding:6px 8px;margin-bottom:4px;border:1px solid var(--border);border-radius:3px;cursor:pointer;transition:all .2s}.checklist-item:hover{background:var(--bg-section);border-color:#7c3aed}.checklist-item.active{background:#f5f3ff;border-color:#7c3aed}.checklist-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}.checklist-name{font-weight:600;font-size:11px}.checklist-item-meta{font-size:10px;color:var(--text-secondary);margin-bottom:4px;font-family:Times New Roman,瀹嬩綋,SimSun,serif}.checklist-item-actions{display:flex;gap:4px}.checklist-item-actions button{font-size:10px;padding:2px 6px;border:1px solid var(--text-body)!important;background:var(--bg-card)!important;color:var(--text-body)!important;border-radius:2px;cursor:pointer;box-shadow:0 1px 3px #0f172a14!important;transition:all .2s!important}.checklist-item-actions button:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.checklist-entries-panel{flex:1;background:var(--bg-card);border:1px solid var(--border);display:flex;flex-direction:column}.entries-header{padding:8px 10px;background:var(--bg-section);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.entries-header h2{font-size:12px;margin:0;font-weight:600}.entries-table{flex:1;overflow:auto;padding:8px}.entries-table table{width:100%;border-collapse:collapse;font-size:11px;table-layout:fixed;font-family:Times New Roman,瀹嬩綋,SimSun,serif}.entries-table th:nth-child(1),.entries-table td:nth-child(1){width:35%}.entries-table th:nth-child(2),.entries-table td:nth-child(2){width:35%}.entries-table th:nth-child(3),.entries-table td:nth-child(3){width:12%}.entries-table th:nth-child(4),.entries-table td:nth-child(4){width:8%}.entries-table th:nth-child(5),.entries-table td:nth-child(5){width:10%;padding-right:15px}.entries-table td:nth-child(5){text-align:left}.entries-table th{background:var(--bg-section);padding:5px 8px;text-align:left;border-bottom:2px solid var(--border);font-weight:600;font-size:10px;white-space:nowrap}.entries-table td{padding:5px 8px;border-bottom:1px solid var(--border-disabled);vertical-align:middle}.entries-table tr:hover{background:var(--bg-section)}.variant-count{color:var(--text-secondary);margin-right:8px}.entries-table td button{font-size:10px;padding:2px 6px;margin-right:4px;border:1px solid var(--text-body)!important;background:var(--bg-card)!important;color:var(--text-body)!important;border-radius:2px;cursor:pointer;box-shadow:0 1px 3px #0f172a14!important;transition:all .2s!important}.entries-table td button:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.variant-row{background:var(--bg-section)}.variants-list{padding:6px 8px;font-size:10px}.variants-list strong{margin-right:8px;color:var(--text-secondary)}.entry-with-variants{display:flex;flex-direction:column;gap:4px}.entry-main-text{font-size:11px;color:var(--text-body)}.entry-variants{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.variant-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;background:#f5f3ff;border:1px solid #c5cae9;border-radius:3px;font-size:10px;color:var(--text-body)}.variant-delete-btn{background:none;border:none;color:#7c3aed;cursor:pointer;padding:0;font-size:12px;font-weight:700;line-height:1;margin-left:2px}.variant-delete-btn:hover{color:var(--brand)}.variant-type{color:var(--text-secondary);font-size:9px}.status-badge.disabled{background:var(--warning);color:var(--text-title)}.modal-form{background:var(--bg-card);border-radius:4px;width:500px;max-width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 8px #0003}.modal-form.modal-small{width:400px}.form-field input[type=text],.form-field input[type=number],.form-field select,.form-field textarea{width:100%;padding:4px 6px;border:1px solid var(--border);border-radius:3px;font-size:11px;font-family:inherit;height:30px;box-sizing:border-box}.form-field textarea{min-height:50px;height:auto;resize:vertical}.form-field input[type=checkbox]{margin-right:5px;width:13px;height:13px;cursor:pointer;vertical-align:middle}.form-row{display:flex;gap:10px}.form-row .form-field{flex:1}.modal-form.modal-wide{width:520px;max-width:95vw}.input-with-action{display:flex;gap:8px;align-items:center}.input-with-action input{flex:1}.btn-suggest{padding:0 10px;height:30px;background:var(--brand-light);color:var(--brand);border:1px solid #b3d7ff;border-radius:3px;cursor:pointer;font-size:11px;white-space:nowrap;box-sizing:border-box;flex-shrink:0}.btn-suggest:hover:not(:disabled){background:var(--brand-light)}.btn-suggest:disabled{opacity:.5;cursor:not-allowed}.variant-suggestions{background:var(--bg-section);border:1px solid #e9ecef;border-radius:4px;padding:8px;margin:8px 0}.suggestions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;font-weight:500}.suggestions-hint{color:var(--text-placeholder);font-weight:400}.suggestions-list-editable{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.suggestion-item-editable{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;font-size:11px}.suggestion-item-editable input[type=checkbox]{margin:0;cursor:pointer;flex-shrink:0}.suggestion-text-input{flex:1;padding:3px 6px;border:1px solid var(--border);border-radius:2px;font-size:11px;font-family:Times New Roman,瀹嬩綋,SimSun,serif;min-width:0}.suggestion-text-input:focus{outline:none;border-color:var(--brand)}.suggestion-type-label{color:var(--text-secondary);font-size:10px;padding:2px 6px;background:var(--bg-section);border-radius:2px;white-space:nowrap;flex-shrink:0}.btn-delete-suggestion{background:none;border:none;color:var(--danger);cursor:pointer;font-size:16px;font-weight:700;padding:0 4px;line-height:1;flex-shrink:0}.btn-delete-suggestion:hover{color:var(--danger)}.suggestions-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.suggestion-item{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;cursor:pointer;font-size:11px;transition:all .15s}.suggestion-item:hover{border-color:var(--brand)}.suggestion-item.selected{background:var(--brand-light);border-color:var(--brand)}.suggestion-text{color:var(--text-body)}.suggestion-type{color:var(--text-placeholder);font-size:10px}.custom-variant-input{display:flex;gap:4px}.custom-variant-input input{flex:1;padding:4px 6px;border:1px solid var(--border);border-radius:3px;font-size:11px}.custom-variant-input button{padding:4px 8px;background:var(--brand);color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:12px}.custom-variant-input button:hover{background:var(--brand)}.nt-management{padding:10px;font-size:11px;height:100%;display:flex;flex-direction:column;font-family:Microsoft YaHei,Arial,sans-serif}.nt-layout{display:flex;gap:10px;flex:1;overflow:hidden}.nt-list-panel{width:280px;min-width:280px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;display:flex;flex-direction:column}.nt-entry-panel{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;display:flex;flex-direction:column;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg-section)}.panel-header h3{font-size:12px;margin:0;font-weight:600}.header-actions{display:flex;gap:6px;align-items:center}.import-btn{cursor:pointer;margin:0}.list-items{flex:1;overflow-y:auto}.list-item{padding:8px 10px;border-bottom:1px solid var(--border-disabled);cursor:pointer;display:flex;flex-direction:column;gap:4px}.list-item:hover{background:var(--bg-section)}.list-item.active{background:#f5f3ff;border-left:3px solid #7C3AED}.list-item-header{display:flex;justify-content:space-between;align-items:center;width:100%}.list-name{font-weight:500;font-size:11px;font-family:Times New Roman,SimSun,serif}.list-entry-count{font-size:10px;color:var(--text-placeholder);font-family:Times New Roman,SimSun,serif}.list-code{font-size:9px;color:var(--text-secondary);background:var(--border-disabled);padding:1px 4px;border-radius:2px}.list-actions{display:flex;gap:4px;margin-top:2px}.list-actions button{font-size:9px;padding:2px 5px;border:1px solid var(--text-body)!important;background:var(--bg-card)!important;color:var(--text-body)!important;border-radius:2px;cursor:pointer;box-shadow:0 1px 3px #0f172a14!important;transition:all .2s!important}.list-actions button:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.btn-small{font-size:11px;padding:4px 10px}.btn-primary,.btn-secondary,button.btn-primary,button.btn-secondary{padding:4px 10px!important;border:1px solid var(--text-body)!important;border-radius:3px!important;cursor:pointer!important;font-size:11px!important;transition:all .2s!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0f172a14!important}.btn-primary:hover,.btn-secondary:hover,button.btn-primary:hover,button.btn-secondary:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.btn-primary.btn-small,.btn-secondary.btn-small,button.btn-primary.btn-small,button.btn-secondary.btn-small{padding:4px 10px!important;font-size:11px!important;border:1px solid var(--text-body)!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0f172a14!important}.btn-primary.btn-small:hover,.btn-secondary.btn-small:hover,button.btn-primary.btn-small:hover,button.btn-secondary.btn-small:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.nt-table-container,.entry-table-container{background:var(--bg-card);overflow:auto;flex:1}.nt-table{width:100%;border-collapse:collapse;font-size:11px;font-family:Times New Roman,SimSun,serif}.nt-table th{background:var(--bg-section);padding:6px 8px;text-align:left;border-bottom:2px solid var(--border);font-weight:600;font-size:10px;white-space:nowrap;position:sticky;top:0;z-index:1}.nt-table td{padding:5px 8px;border-bottom:1px solid var(--border-disabled);vertical-align:middle;font-family:Times New Roman,SimSun,serif}.nt-table tr:hover{background:var(--bg-section)}.nt-text{font-weight:600;font-family:monospace}.variant-cell-text{font-size:11px;line-height:1.5;word-wrap:break-word;white-space:normal}.btn-link{background:none;border:none;color:#7c3aed;cursor:pointer;font-size:10px;text-decoration:underline;padding:0}.btn-link:hover{color:var(--brand)}.nt-table td button{font-size:10px;padding:2px 6px;margin-right:4px;border:1px solid var(--text-body)!important;background:var(--bg-card)!important;color:var(--text-body)!important;border-radius:2px;cursor:pointer;box-shadow:0 1px 3px #0f172a14!important;transition:all .2s!important}.nt-table td button:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.status-badge{font-size:9px;padding:2px 5px;border-radius:2px;font-weight:500}.status-badge.disabled{background:#ffc107;color:var(--text-title)}.empty-state{padding:30px;text-align:center;color:var(--text-placeholder);font-size:11px}.message{padding:6px 12px;margin-bottom:10px;border-radius:3px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.message.success{background:var(--success-bg);color:var(--success);border:1px solid #c3e6cb}.message.error{background:var(--danger-bg);color:var(--danger);border:1px solid #f5c6cb}.message button{background:none;border:none;font-size:16px;cursor:pointer;padding:0 4px;color:inherit}.modal-form{background:var(--bg-card);border-radius:4px;width:450px;max-width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 8px #0003}.modal-form.modal-small{width:350px}.modal-form h3{font-size:13px;margin:0;padding:10px 15px;background:var(--bg-section);border-bottom:1px solid var(--border);font-weight:600}.modal-form form{padding:12px 15px}.form-field{margin-bottom:10px}.form-field label{display:block;margin-bottom:3px;font-size:10px;font-weight:600;color:var(--text-body)}.form-field input[type=text],.form-field select,.form-field textarea{width:100%;padding:4px 6px;border:1px solid var(--border);border-radius:3px;font-size:11px;font-family:inherit}.form-field textarea{min-height:50px;resize:vertical}.form-field input[type=checkbox]{margin-right:5px;vertical-align:middle}.form-field label:has(input[type=checkbox]){display:inline-flex;align-items:center;gap:4px;margin-bottom:0;white-space:nowrap}.form-field label:has(input[type=checkbox]) input[type=checkbox]{margin-right:0;flex-shrink:0}.form-row .form-field:has(input[type=checkbox]){flex:0 0 auto;width:auto}.modal-overlay .modal-form .form-row{display:grid!important;grid-template-columns:1fr 1fr;gap:20px;width:100%;align-items:flex-start}.form-actions{margin-top:15px;display:flex;justify-content:flex-end;gap:8px;padding-top:10px;border-top:1px solid var(--border-disabled)}.variants-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.variant-item{display:flex;align-items:center;gap:8px}.variant-item input[type=checkbox]{flex-shrink:0;width:16px;height:16px;cursor:pointer;margin:0}.variant-text-input{flex:1;padding:4px 8px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-card);min-width:0}.variant-text-input:disabled{background:var(--bg-page);color:var(--text-placeholder)}.variant-item button{flex-shrink:0;padding:4px 8px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-secondary);font-size:11px;white-space:nowrap}.variant-item button:hover{background:var(--bg-page);border-color:var(--text-placeholder)}.list-meta{width:100%;font-size:11px;color:var(--text-secondary);display:flex;gap:8px;margin-top:3px;font-family:Times New Roman,SimSun,serif}.list-info{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:3px;font-size:9px;color:var(--text-secondary)}.list-lang{flex:1;font-size:11px;color:var(--text-secondary);font-family:Times New Roman,SimSun,serif}.list-count{font-size:11px;color:var(--text-placeholder);background:var(--bg-section);padding:1px 4px;border-radius:2px;font-family:Times New Roman,SimSun,serif}.list-footer{padding:8px 10px;border-top:1px solid var(--border);background:var(--bg-section)}.qa-config-page{height:100%;display:flex;flex-direction:column;background:var(--bg-page);font-size:11px}.qa-config-header{background:var(--bg-card);padding:8px 15px;border-bottom:1px solid var(--border)}.qa-config-header h1{font-size:14px;margin:0;font-weight:600}.qa-config-tabs{background:var(--bg-card);padding:0 15px;border-bottom:1px solid var(--border);display:flex;gap:0}.qa-tab-button{padding:8px 16px;border:none;background:transparent;cursor:pointer;font-size:11px;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;transition:all .2s}.qa-tab-button:hover{color:#7c3aed}.qa-tab-button.active{color:#7c3aed;border-bottom-color:#7c3aed;font-weight:600}.qa-config-content{flex:1;overflow:auto}.mt-engine-list{padding:20px;max-width:1400px;margin:0 auto;height:calc(100vh - 240px);display:flex;flex-direction:column;font-family:Times New Roman,SimSun,瀹嬩綋,serif;overflow:hidden}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--border)}.mt-engine-list .toolbar-btn{padding:6px 12px!important;border:1px solid var(--text-body)!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001a!important}.mt-engine-list .toolbar-btn:hover:not(.disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.mt-engine-list .toolbar-btn.disabled{opacity:.5!important;cursor:not-allowed!important}.mt-engine-list .toolbar-btn.primary{background:var(--bg-card)!important;color:var(--text-body)!important;border-color:var(--text-body)!important}.mt-engine-list .toolbar-btn.primary:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.table-container{flex:1;overflow-y:auto;overflow-x:auto;position:relative;display:block}.engine-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:visible;box-shadow:0 1px 3px #0000001a;display:table}.engine-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.engine-table th{padding:.4rem .6rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;background:var(--bg-page);position:sticky;top:0;z-index:10}.engine-table th:nth-child(1),.engine-table td:nth-child(1){width:40px;text-align:center}.engine-table th:nth-child(2),.engine-table td:nth-child(2){width:auto;min-width:150px}.engine-table th:nth-child(3),.engine-table td:nth-child(3){width:150px}.engine-table th:nth-child(4),.engine-table td:nth-child(4){width:auto;min-width:200px}.engine-table th:nth-child(5),.engine-table td:nth-child(5){width:80px}.engine-table th:nth-child(6),.engine-table td:nth-child(6){width:50px}.engine-table th:nth-child(7),.engine-table td:nth-child(7){width:120px}.engine-table th:nth-child(8),.engine-table td:nth-child(8){width:100px}.engine-table th:nth-child(9),.engine-table td:nth-child(9){width:60px}.engine-table th:nth-child(10),.engine-table td:nth-child(10){width:70px}.engine-table th:nth-child(11),.engine-table td:nth-child(11){width:80px}.engine-table th:nth-child(12),.engine-table td:nth-child(12){width:60px}.engine-table th:nth-child(13),.engine-table td:nth-child(13){width:100px}.engine-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s}.engine-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.engine-table tbody tr.selected,.engine-table tbody tr.selected:hover{background-color:var(--brand-light)}.engine-table tbody tr:last-child{border-bottom:none}.engine-table td{padding:.4rem .6rem;font-size:.8rem;color:var(--text-body);line-height:1.3}.engine-table td input[type=checkbox]{cursor:pointer;width:14px;height:14px}.engine-name{font-weight:500;color:var(--brand)}.engine-type{color:var(--text-secondary)}.engine-table td.engine-type{background:inherit!important}.engine-desc{color:var(--text-secondary);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.engine-date{color:var(--text-placeholder);font-size:.75rem}.import-dialog{background:var(--bg-card);border-radius:8px;padding:24px;min-width:400px;max-width:500px;box-shadow:0 4px 12px #0f172a1a}.import-dialog h3{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--text-body)}.import-dialog .form-group{margin-bottom:20px}.import-dialog .form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-body)}.import-dialog .form-group input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;box-sizing:border-box}.import-dialog .form-group input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1a}.import-dialog .error-hint{margin-top:6px;font-size:12px;color:var(--danger)}.import-dialog .dialog-buttons{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.import-dialog .btn-cancel,.import-dialog .btn-confirm{padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.import-dialog .btn-cancel{background:var(--bg-page);color:var(--text-secondary)}.import-dialog .btn-cancel:hover{background:var(--border)}.import-dialog .btn-confirm{background:var(--brand);color:#fff}.import-dialog .btn-confirm:hover{background:var(--brand-hover)}.mt-engine-config-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center}.mt-engine-config-modal .modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f172a73;z-index:-1}.mt-engine-config{width:1000px;max-width:95vw;max-height:90vh;background-color:var(--bg-card);border-radius:8px;display:flex;flex-direction:column;box-shadow:0 4px 20px #0f172a1a;font-family:Times New Roman,瀹嬩綋,SimSun,serif;font-size:12px;line-height:1.4}.mt-engine-config .config-header .btn-close{width:28px!important;height:28px!important;border:1px solid var(--text-body)!important;background-color:var(--bg-card)!important;color:var(--text-body)!important;font-size:18px!important;cursor:pointer!important;border-radius:4px!important;transition:all .2s!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 1px 3px #0000001a!important}.mt-engine-config .config-header .btn-close:hover{background-color:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.config-section h3,.config-section h4{margin:0 0 8px;font-size:12px;color:var(--text-secondary);font-weight:600;font-family:Microsoft YaHei,Arial,sans-serif!important}.mt-engine-config .form-group{margin-bottom:10px}.mt-engine-config .form-group label{display:block;margin-bottom:4px;font-size:11px;color:var(--text-body);font-weight:500;line-height:1.3}.mt-engine-config .required{color:#f44;margin-left:4px}.mt-engine-config .form-group input[type=text],.mt-engine-config .form-group input[type=number],.mt-engine-config .form-group select,.mt-engine-config .form-group textarea{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:3px;font-size:11px;font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;color:var(--text-body);transition:border-color .2s;box-sizing:border-box;line-height:1.3}.mt-engine-config input::placeholder,.mt-engine-config textarea::placeholder{font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;font-size:11px!important;color:var(--text-placeholder)!important;opacity:1!important}.mt-engine-config input::-webkit-input-placeholder,.mt-engine-config textarea::-webkit-input-placeholder{font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;font-size:11px!important;color:var(--text-placeholder)!important;opacity:1!important}.mt-engine-config input::-moz-placeholder,.mt-engine-config textarea::-moz-placeholder{font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;font-size:11px!important;color:var(--text-placeholder)!important;opacity:1!important}.mt-engine-config input:-ms-input-placeholder,.mt-engine-config textarea:-ms-input-placeholder{font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;font-size:11px!important;color:var(--text-placeholder)!important;opacity:1!important}.mt-engine-config .form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"%3e%3cpath fill="%23666" d="M6 9L1 4h10z"/%3e%3c/svg%3e');background-repeat:no-repeat;background-position:right 8px center;background-size:10px;padding-right:28px}.mt-engine-config .form-group input[type=text]:focus,.mt-engine-config .form-group input[type=number]:focus,.mt-engine-config .form-group select:focus,.mt-engine-config .form-group textarea:focus{outline:none;border-color:var(--brand)}.mt-engine-config .form-group textarea{resize:vertical;font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;line-height:1.3}.mt-engine-config .form-hint{display:block;margin-top:2px;font-size:10px!important;color:var(--text-placeholder);line-height:1.2}.mt-engine-config .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:start}.mt-engine-config .form-row.two-col{grid-template-columns:repeat(2,1fr)}.mt-engine-config .config-footer .btn-cancel,.mt-engine-config .config-footer .btn-test,.mt-engine-config .config-footer .btn-save{padding:5px 16px!important;border:1px solid var(--text-body)!important;border-radius:3px!important;cursor:pointer!important;font-size:11px!important;font-family:Times New Roman,瀹嬩綋,SimSun,serif!important;transition:all .2s!important;background-color:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001a!important}.mt-engine-config .config-footer .btn-cancel:hover:not(:disabled),.mt-engine-config .config-footer .btn-test:hover:not(:disabled),.mt-engine-config .config-footer .btn-save:hover:not(:disabled){background-color:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.mt-engine-config .config-footer .btn-cancel:disabled,.mt-engine-config .config-footer .btn-test:disabled,.mt-engine-config .config-footer .btn-save:disabled{opacity:.5!important;cursor:not-allowed!important}.mt-engine-config .form-group select optgroup{font-weight:600;font-size:11px;color:var(--text-body);background-color:var(--bg-page)}.mt-engine-config .form-group select option{font-weight:400;font-size:11px;padding:2px 6px}.prompt-template-list{padding:20px;max-width:1400px;margin:0 auto;height:calc(100vh - 240px);display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box;font-family:Times New Roman,SimSun,瀹嬩綋,serif}.toolbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border)}.toolbar-title h2{margin:0 0 5px;font-size:20px;font-weight:600;color:var(--text-body)}.toolbar-desc{margin:0;font-size:13px;color:var(--text-secondary)}.toolbar-actions{display:flex;gap:10px;align-items:center}.category-filter{display:flex;gap:5px;background:var(--bg-page);padding:4px;border-radius:6px}.filter-btn{padding:6px 14px;background:transparent;border:none;border-radius:4px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .2s;white-space:nowrap}.filter-btn:hover{background:#fff9;color:var(--text-body)}.filter-btn.active{background:var(--bg-card);color:var(--brand);font-weight:500;box-shadow:0 1px 3px #0000001a}.toolbar-btn{padding:8px 16px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-body);border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s;white-space:nowrap}.toolbar-btn:hover{background:var(--bg-page);border-color:var(--text-placeholder)}.toolbar-btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.toolbar-btn.primary:hover{background:var(--brand-hover)}.toolbar-btn.disabled,.toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.empty-state{text-align:center;padding:60px 20px;color:var(--text-placeholder)}.empty-state p{margin-bottom:20px;font-size:15px}.btn-create-first{padding:10px 24px;background:var(--brand);color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer}.btn-create-first:hover{background:var(--brand-hover)}.table-container{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;display:block}.template-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:visible;box-shadow:0 1px 3px #0000001a;display:table}.template-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.template-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:13px;color:var(--text-secondary);white-space:nowrap;background:var(--bg-page);position:sticky;top:0;z-index:10}.template-table th:first-child{width:60px;text-align:center}.template-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s}.template-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.template-table tbody tr.selected{background-color:var(--brand-light)}.template-table td{padding:12px 16px;font-size:14px;color:var(--text-body)}.template-table td:first-child{text-align:center;color:var(--text-placeholder);font-size:13px}.template-table td:first-child input[type=checkbox]{cursor:pointer}.template-name{font-weight:500;color:var(--brand);display:flex;align-items:center;gap:8px}.template-type{color:var(--text-secondary);font-size:13px}.template-table td.template-desc{color:var(--text-secondary);max-width:300px;font-size:12px!important;line-height:1.4;white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.template-date{color:var(--text-placeholder);font-size:13px}.badge-system{display:inline-block;padding:2px 8px;background:var(--warning);color:#fff;font-size:11px;border-radius:10px;font-weight:500}.category-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500}.category-badge.translation{background:var(--brand-light);color:var(--brand)}.category-badge.review{background:#f5f3ff;color:#7c3aed}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.enabled{background:var(--success-bg);color:var(--success)}.status-badge.disabled{background:var(--danger-bg);color:var(--danger)}.template-editor-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f172a73}.template-editor-modal .modal-content{position:relative;background:var(--bg-card);border-radius:8px;width:95%!important;max-width:1200px!important;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0f172a4d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-body)}.btn-close{background:none;border:none;font-size:28px;color:var(--text-placeholder);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close:hover{background:var(--bg-page);color:var(--text-body)}.modal-body{padding:20px 24px;overflow-y:auto;flex:1;font-family:瀹嬩綋,Times New Roman,serif}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px}.form-group{margin-bottom:12px}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--text-body);line-height:1.3}.form-group input[type=text],.form-group select,.form-group textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;font-family:瀹嬩綋,Times New Roman,serif;transition:border-color .2s;line-height:1.4}.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--brand)}.form-group input[type=text]:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--bg-page);color:var(--text-placeholder);cursor:not-allowed}.form-group textarea{resize:vertical}.prompt-content{font-family:Consolas,Monaco,monospace;font-size:13px;min-height:280px;resize:vertical}.variables-hint{margin-bottom:6px;padding:4px 8px;background:#fff3cd;border:1px solid #ffecb5;border-radius:4px;font-size:10px;color:var(--warning);line-height:1.3}.checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{cursor:pointer}.checkbox-label span{font-weight:400}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border)}.btn-cancel,.btn-save{padding:10px 24px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s}.btn-cancel{background:var(--bg-page);color:var(--text-secondary)}.btn-save{background:var(--brand);color:#fff}.btn-save:hover{background:var(--brand-hover)}.btn-save:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:40px;color:var(--text-placeholder);font-size:14px}.mt-term-list{padding:20px;max-width:1400px;margin:0 auto;height:calc(100vh - 240px);display:flex;flex-direction:column;font-family:Times New Roman,SimSun,宋体,serif;overflow:hidden}.mt-term-list .toolbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--border);flex-shrink:0}.mt-term-list .toolbar-title h2{margin:0 0 5px;font-size:20px;font-weight:600;color:var(--text-body)}.mt-term-list .toolbar-actions{display:flex;gap:8px;align-items:center}.mt-term-list .toolbar-btn{padding:6px 12px!important;border:1px solid var(--text-body)!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:var(--shadow-card)!important}.mt-term-list .toolbar-btn:hover:not(.disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.mt-term-list .toolbar-btn.primary{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.mt-term-list .toolbar-btn.primary:hover{background:var(--brand-hover)!important}.mt-term-list .toolbar-btn.disabled{opacity:.5!important;cursor:not-allowed!important}.mt-term-list .table-container{flex:1;overflow-y:auto;overflow-x:auto;position:relative;display:block;min-height:0}.mt-term-list .table-header{display:flex;align-items:center;background:var(--bg-page);border-bottom:2px solid var(--border);padding:.4rem 0;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;position:sticky;top:0;z-index:10}.mt-term-list .table-header input[type=checkbox]{cursor:pointer;width:14px;height:14px}.mt-term-list .term-list-body{width:100%}.mt-term-list .term-row{display:flex;align-items:center;cursor:pointer;background:var(--bg-card);border-bottom:1px solid var(--border);font-size:.8rem;line-height:1.4;padding:6px 0;transition:background-color .15s}.mt-term-list .term-row:hover,.mt-term-list .term-row.selected,.mt-term-list .term-row.selected:hover{background-color:var(--brand-light)}.mt-term-list .term-row input[type=checkbox]{cursor:pointer;width:14px;height:14px}.mt-term-list .term-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:visible;box-shadow:var(--shadow-card);display:table}.mt-term-list .term-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.mt-term-list .term-table th{padding:.4rem .6rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;background:var(--bg-page);position:sticky;top:0;z-index:10}.mt-term-list .term-table th:nth-child(1),.mt-term-list .term-table td:nth-child(1){width:50px;text-align:left;padding-left:12px}.mt-term-list .term-table th:nth-child(2),.mt-term-list .term-table td:nth-child(2){width:180px}.mt-term-list .term-table th:nth-child(3),.mt-term-list .term-table td:nth-child(3){width:130px}.mt-term-list .term-table th:nth-child(4),.mt-term-list .term-table td:nth-child(4){width:130px}.mt-term-list .term-table th:nth-child(5),.mt-term-list .term-table td:nth-child(5){width:200px}.mt-term-list .term-table th:nth-child(6),.mt-term-list .term-table td:nth-child(6){width:70px}.mt-term-list .term-table th:nth-child(7),.mt-term-list .term-table td:nth-child(7){width:110px}.mt-term-list .term-table td{display:table-cell;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mt-term-list .term-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s}.mt-term-list .term-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.mt-term-list .term-table tbody tr.selected,.mt-term-list .term-table tbody tr.selected:hover{background-color:var(--brand-light)}.mt-term-list .term-table tbody tr:last-child{border-bottom:none}.mt-term-list .term-table td{padding:.25rem .6rem;font-size:.8rem;color:var(--text-title);line-height:1.1}.mt-term-list .term-table td input[type=checkbox]{cursor:pointer;width:14px;height:14px}.mt-term-list .term-name{font-weight:500;color:var(--brand)}.mt-term-list .term-lang,.mt-term-list .term-meta{color:var(--text-secondary);font-size:.75rem}.mt-term-list .term-date,.mt-term-list .row-number{color:var(--text-placeholder);font-size:.75rem}.mt-term-list .status-badge{display:inline-block;padding:2px 8px;border-radius:3px;font-size:.7rem;font-weight:500}.mt-term-list .status-badge.enabled{background:var(--success-bg);color:var(--success)}.mt-term-list .status-badge.disabled{background:var(--bg-section);color:var(--text-placeholder)}.mt-term-list .empty-state{text-align:center;padding:3rem;color:var(--text-placeholder)}.mt-term-list .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;overflow:visible}.mt-term-list .modal-content{background:var(--bg-card);border-radius:var(--radius-modal);width:500px;max-width:90%;max-height:none;overflow:visible;box-shadow:var(--shadow-modal);display:flex;flex-direction:column}.mt-term-list .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.mt-term-list .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-body)}.mt-term-list .modal-close{background:none;border:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;padding:0;line-height:1}.mt-term-list .modal-close:hover{color:var(--text-body)}.mt-term-list .modal-body{padding:20px;overflow:visible}.mt-term-list .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--border)}.mt-term-list .form-group{margin-bottom:16px}.mt-term-list .form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:600;color:var(--text-body);font-family:Times New Roman,SimSun,宋体,serif!important}.mt-term-list .form-group input,.mt-term-list .form-group textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px;box-sizing:border-box}.mt-term-list .form-group select{width:100%;padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:11px;box-sizing:border-box}.mt-term-list .form-group input:focus,.mt-term-list .form-group select:focus,.mt-term-list .form-group textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.mt-term-list .form-row{display:flex;gap:16px;overflow:visible;align-items:flex-start}.mt-term-list .form-row .form-group{flex:1;overflow:visible;align-self:flex-start}.mt-term-list .form-row .form-group label{display:block!important;align-items:unset!important;min-height:unset!important}.modal-overlay .modal-content.mt-termlist-modal{overflow:visible!important;max-height:none!important}.modal-overlay .modal-content.mt-termlist-modal .modal-body{overflow:visible!important}.modal-overlay .modal-content.mt-termlist-modal .form-row{display:grid!important;grid-template-columns:1fr 1fr;gap:16px;overflow:visible!important;align-items:start;position:relative;z-index:10}.modal-overlay .modal-content.mt-termlist-modal .form-row .form-group{overflow:visible!important;align-self:start;position:relative;z-index:10}.modal-overlay .modal-content.mt-termlist-modal .form-row .form-group label{display:block!important;align-items:unset!important;min-height:unset!important}.modal-overlay .modal-content.mt-termlist-modal .form-group{overflow:visible;position:relative}.mt-term-list .btn-primary{padding:8px 20px;background:var(--brand);color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer}.mt-term-list .btn-primary:hover{background:var(--brand-hover)}.mt-term-list .btn-secondary{padding:8px 20px;background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);border-radius:4px;font-size:14px;cursor:pointer}.mt-term-list .btn-secondary:hover{background:var(--bg-page)}.mt-term-list .virtual-row{display:flex;border-bottom:1px solid var(--bg-section);transition:background-color .15s;cursor:pointer;font-size:.8rem;line-height:1.1;color:var(--text-title)}.mt-term-list .virtual-row:hover,.mt-term-list .virtual-row.selected,.mt-term-list .virtual-row.selected:hover{background-color:var(--brand-light)!important}.mt-term-list .virtual-row .col-select{display:flex;align-items:center;justify-content:flex-start;padding-left:16px}.mt-term-list .virtual-row input[type=checkbox]{cursor:pointer;width:14px;height:14px}.mt-term-list .virtual-row .row-number{color:var(--text-placeholder);font-size:.75rem}.mt-term-list .virtual-row .term-name{font-weight:500;color:var(--brand);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mt-term-list .virtual-row .term-meta,.mt-term-list .virtual-row .term-lang{color:var(--text-secondary);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mt-term-list .error-hint{color:var(--danger);font-size:12px;margin-top:5px;font-weight:500}.token-usage-stats{padding:8px 16px 16px;height:calc(100vh - 240px);display:flex;flex-direction:column;overflow:hidden}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.stats-header h2{margin:0;font-size:16px;font-weight:600}.view-toggle{display:flex;gap:0;border:1px solid var(--border);border-radius:4px;overflow:hidden}.view-toggle button{padding:6px 14px;border:none;background:var(--bg-card);cursor:pointer;font-size:13px;color:var(--text-secondary);transition:all .3s}.view-toggle button.active{background:var(--brand);color:#fff}.view-toggle button:hover:not(.active){background:var(--bg-section)}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:12px}.overview-card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:10px 14px}.card-content .value{font-size:18px;font-weight:600;color:var(--text-body);margin-bottom:3px}.card-content .label{font-size:12px;color:var(--text-placeholder)}.stats-table-container{flex:1;overflow:hidden;background:var(--bg-page);border-radius:6px;min-height:0;display:flex;flex-direction:column;border:1px solid var(--border)}.stats-table-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;display:block;min-height:0;padding-bottom:12px}.token-stats-table{width:100%;background:var(--bg-card);border-collapse:collapse;font-size:13px;table-layout:auto;border-radius:4px;overflow:visible;box-shadow:0 1px 3px #0000001a;display:table}.token-stats-table thead{background:var(--bg-page);border-bottom:2px solid var(--border)}.token-stats-table thead th{position:sticky;top:0;z-index:10;background:var(--bg-page)}.token-stats-table th{padding:8px 12px;text-align:left;font-weight:600;color:var(--text-secondary);font-size:12px;white-space:nowrap;background:var(--bg-page)}.token-stats-table tbody tr{transition:background-color .15s}.token-stats-table tbody td{border-bottom:1px solid var(--bg-section)}.token-stats-table th:nth-child(1),.token-stats-table td:nth-child(1){width:130px;min-width:130px}.token-stats-table th:nth-child(2),.token-stats-table td:nth-child(2){width:200px;min-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.token-stats-table th:nth-child(3),.token-stats-table td:nth-child(3){width:120px;min-width:120px;text-align:right}.token-stats-table th:nth-child(4),.token-stats-table td:nth-child(4){width:120px;min-width:120px;text-align:right}.token-stats-table th:nth-child(5),.token-stats-table td:nth-child(5){width:120px;min-width:120px;text-align:right}.token-stats-table th:nth-child(6),.token-stats-table td:nth-child(6){width:100px;min-width:100px;text-align:right}.token-stats-table th:nth-child(7),.token-stats-table td:nth-child(7){width:100px;min-width:100px;text-align:right}.token-stats-table td{padding:8px 12px;font-size:12px;color:var(--text-body)}.token-stats-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.token-stats-table tbody tr:last-child td{border-bottom:1px solid var(--border)}.loading{padding:40px;text-align:center;color:var(--text-placeholder);font-size:13px}.stats-controls,.month-selector{display:flex;align-items:center}.delete-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-confirm-modal{background:var(--bg-card);padding:20px 24px;border-radius:8px;min-width:320px;box-shadow:0 4px 12px #0f172a1a}.delete-confirm-modal h3{margin:0 0 16px;font-size:16px;font-weight:600}.delete-options label{cursor:pointer;font-size:13px}.delete-options input[type=radio]{margin-right:4px}.ai-review-config-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center}.ai-review-config-modal .modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f172a73;z-index:-1}.ai-review-config{width:1000px;max-width:95vw;max-height:90vh;background-color:var(--bg-card);border-radius:8px;display:flex;flex-direction:column;box-shadow:0 4px 20px #0f172a1a;font-family:Times New Roman,瀹嬩綋,SimSun,serif;font-size:12px;line-height:1.4}.config-header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.config-header h2{margin:0;font-size:14px;color:var(--text-body);font-weight:600}.btn-close{width:32px;height:32px;border:1px solid var(--text-body)!important;background-color:var(--bg-card)!important;color:var(--text-body)!important;font-size:18px;cursor:pointer;border-radius:4px;transition:all .15s ease!important;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a!important}.btn-close:hover{background-color:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.config-body{flex:1;overflow-y:auto;padding:12px 16px}.config-section{margin-top:12px;padding-top:12px;border-top:1px solid var(--bg-section)}.config-section:first-child{margin-top:0;padding-top:0;border-top:none}.config-section h3{margin:0 0 8px;font-size:12px;color:var(--text-secondary);font-weight:600}.ai-review-config .form-group{margin-bottom:10px}.ai-review-config .form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-items:start}.ai-review-config .form-row.three-col{grid-template-columns:repeat(3,1fr)}.ai-review-config .form-group label{display:block;margin-bottom:4px;font-size:11px;color:var(--text-body);font-weight:500;line-height:1.3}.ai-review-config .required{color:#f44;margin-left:4px}.ai-review-config .form-group input[type=text],.ai-review-config .form-group input[type=number],.ai-review-config .form-group select,.ai-review-config .form-group textarea{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:3px;font-size:11px;font-family:Times New Roman,瀹嬩綋,SimSun,serif;color:var(--text-body);transition:border-color .2s;box-sizing:border-box;line-height:1.3}.ai-review-config .form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;charset=UTF-8,%3csvg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"%3e%3cpath fill="%23666" d="M6 9L1 4h10z"/%3e%3c/svg%3e');background-repeat:no-repeat;background-position:right 8px center;background-size:10px;padding-right:28px}.ai-review-config .form-group input[type=text]:focus,.ai-review-config .form-group input[type=number]:focus,.ai-review-config .form-group select:focus,.ai-review-config .form-group textarea:focus{outline:none;border-color:var(--brand)}.ai-review-config .form-group textarea{resize:vertical;font-family:Times New Roman,瀹嬩綋,SimSun,serif;line-height:1.3}.ai-review-config .form-hint{display:block;margin-top:2px;font-size:10px;color:var(--text-placeholder);line-height:1.2}.ai-review-config .form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:14px;height:14px;cursor:pointer}.checkbox-label span{font-weight:400;font-size:11px}.config-footer{padding:10px 16px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}.btn-cancel,.btn-test,.btn-save{padding:6px 12px!important;border:1px solid var(--text-body)!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001a!important;font-family:Times New Roman,瀹嬩綋,SimSun,serif!important}.btn-cancel:hover:not(:disabled),.btn-test:hover:not(:disabled),.btn-save:hover:not(:disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.btn-cancel:disabled,.btn-test:disabled,.btn-save:disabled{opacity:.5!important;cursor:not-allowed!important}.ai-config{background-color:#f8f9ff;border-radius:6px;padding:12px!important;margin:12px -4px!important;border:1px solid #e8eeff}.ai-config h3{color:#4a6ee0;font-size:11px;margin-bottom:6px}.ai-options{grid-template-columns:repeat(2,1fr)}.ai-options .form-group{margin-bottom:4px}.ai-options .form-hint{margin-top:1px}.ai-review-config .form-group select optgroup{font-weight:600;font-size:11px;color:var(--text-body);background-color:var(--bg-page)}.ai-review-config .form-group select option{font-weight:400;font-size:11px;padding:2px 6px}.error-hint{margin-top:4px;font-size:11px;color:var(--danger);line-height:1.4}.ai-review-list{padding:20px;max-width:1400px;margin:0 auto;height:calc(100vh - 240px);display:flex;flex-direction:column;font-family:Times New Roman,SimSun,瀹嬩綋,serif;overflow:hidden}.review-tabs{display:flex;gap:0;background:var(--bg-section);border-bottom:2px solid #dee2e6;padding:0 20px}.review-tabs .tab-button{padding:12px 24px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.review-tabs .tab-button:hover{color:var(--text-body);background:var(--bg-section)}.review-tabs .tab-button.active{color:var(--brand);border-bottom-color:var(--brand);background:var(--bg-card)}.tab-content{flex:1;overflow:auto}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--border);flex-shrink:0}.toolbar-title h2{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-body)}.toolbar-desc{margin:0;font-size:12px;color:var(--text-placeholder)}.toolbar-actions{display:flex;gap:8px;align-items:center}.toolbar-btn{padding:6px 12px!important;border:1px solid var(--text-body)!important;border-radius:4px!important;font-size:12px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;background:var(--bg-card)!important;color:var(--text-body)!important;box-shadow:0 1px 3px #0000001a!important}.toolbar-btn:hover:not(.disabled){background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.toolbar-btn.disabled{opacity:.5!important;cursor:not-allowed!important}.toolbar-btn.primary{background:var(--bg-card)!important;color:var(--text-body)!important;border-color:var(--text-body)!important}.toolbar-btn.primary:hover{background:var(--brand)!important;color:var(--bg-card)!important;border-color:var(--brand)!important}.table-container{flex:1;overflow-y:auto;overflow-x:auto;min-height:0;position:relative;display:block}.config-table{width:100%;background:var(--bg-card);border-collapse:collapse;border-radius:4px;overflow:visible;box-shadow:0 1px 3px #0000001a;display:table}.config-table thead{background:var(--bg-page);border-bottom:2px solid var(--border);position:sticky;top:0;z-index:10}.config-table th{padding:.4rem .6rem;text-align:left;font-weight:600;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;background:var(--bg-page);position:sticky;top:0;z-index:10}.config-table th:nth-child(1),.config-table td:nth-child(1){width:40px;text-align:center}.config-table th:nth-child(2),.config-table td:nth-child(2){width:150px;min-width:120px}.config-table th:nth-child(3),.config-table td:nth-child(3){width:150px}.config-table th:nth-child(4),.config-table td:nth-child(4){width:140px}.config-table th:nth-child(5),.config-table td:nth-child(5){width:60px}.config-table th:nth-child(6),.config-table td:nth-child(6){width:200px}.config-table th:nth-child(7),.config-table td:nth-child(7){width:80px}.config-table th:nth-child(8),.config-table td:nth-child(8){width:60px}.config-table th:nth-child(9),.config-table td:nth-child(9){width:90px}.config-table tbody tr{border-bottom:1px solid var(--bg-section);transition:background-color .15s}.config-table tbody tr:hover{background-color:var(--brand-light);cursor:pointer}.config-table tbody tr.selected,.config-table tbody tr.selected:hover{background-color:var(--brand-light)}.config-table tbody tr:last-child{border-bottom:none}.config-table td{padding:.4rem .6rem;font-size:.8rem;color:var(--text-body);line-height:1.3}.config-table td input[type=checkbox]{cursor:pointer;width:14px;height:14px}.config-name{font-weight:500;color:var(--brand)}.engine-type{color:var(--text-secondary);background:transparent!important}.config-date{color:var(--text-placeholder);font-size:.75rem}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.status-badge.enabled{background-color:var(--success-bg);color:var(--success)}.status-badge.disabled{background-color:#ffebee;color:var(--danger)}.empty-state{text-align:center;padding:60px 20px;background:var(--bg-card);border-radius:8px;box-shadow:0 1px 3px #0000001a}.empty-state p{margin:0 0 20px;color:var(--text-placeholder);font-size:14px}.btn-create-first{padding:8px 16px;background-color:var(--brand);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.btn-create-first:hover{background-color:var(--brand-hover)}.loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.error-hint{margin-top:6px;font-size:12px;color:var(--danger);line-height:1.4}.ai-cache-management{padding:16px;background:var(--bg-page);height:100%;box-sizing:border-box;overflow-y:auto}.cache-header{margin-bottom:16px}.cache-header h2{font-size:16px;font-weight:600;color:var(--text-title);margin:0 0 6px}.cache-desc{font-size:12px;color:var(--text-secondary);margin:0}.ai-cache-loading{padding:40px;text-align:center;color:var(--text-placeholder);font-size:13px}.cache-message{padding:10px 14px;border-radius:4px;margin-bottom:16px;font-size:13px}.cache-message.success{background:var(--brand-light);border:1px solid #0ea5e9;color:var(--brand)}.cache-message.error{background:var(--danger-bg);border:1px solid var(--danger);color:#991b1b}.cache-content{background:var(--bg-card);border-radius:6px;padding:20px}.cache-stats-box{background:var(--bg-section);border-radius:6px;padding:16px;margin-bottom:20px}.stats-row{display:flex;gap:16px;justify-content:space-around}.stat-card{flex:1;text-align:center;padding:14px;background:var(--bg-card);border-radius:4px;box-shadow:0 1px 3px #0000001a}.stat-label{font-size:12px;color:var(--text-secondary);margin-bottom:6px}.stat-value{font-size:20px;font-weight:600;color:var(--text-title)}.cache-actions{display:flex;gap:10px;margin-bottom:20px}.ai-cache-management .btn{padding:8px 16px;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.ai-cache-management .btn:disabled{opacity:.5;cursor:not-allowed}.ai-cache-management .btn-danger{background:var(--danger);color:#fff}.ai-cache-management .btn-danger:hover:not(:disabled){background:var(--danger)}.ai-cache-management .btn-secondary{background:var(--border);color:var(--text-secondary)}.ai-cache-management .btn-secondary:hover:not(:disabled){background:var(--border)}.cache-tips{background:var(--warning-bg);border:1px solid var(--warning);border-radius:4px;padding:14px}.cache-tips h4{font-size:13px;font-weight:600;color:var(--warning);margin:0 0 8px}.cache-tips ul{margin:0;padding-left:18px;color:var(--warning);font-size:12px;line-height:1.6}.cache-tips li{margin-bottom:3px}.cache-table-container{margin-top:16px;border:1px solid var(--border);border-radius:6px;overflow:hidden}.cache-table{width:100%;border-collapse:collapse;font-size:13px}.cache-table thead{background:var(--bg-section)}.cache-table th{padding:10px 12px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border)}.cache-table td{padding:10px 12px;border-bottom:1px solid #f1f5f9;color:var(--text-body)}.cache-table tbody tr:last-child td{border-bottom:none}.cache-table tbody tr:hover{background:var(--bg-section)}.project-name-cell{vertical-align:top;border-right:1px solid #f1f5f9}.project-name-cell .project-name{display:block;font-weight:500;margin-bottom:6px}.file-name-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-cache-management .btn-sm{padding:4px 10px;font-size:12px}.ai-cache-management .btn-outline-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.ai-cache-management .btn-outline-danger:hover:not(:disabled){background:var(--danger);color:#fff}.cache-empty{text-align:center;padding:40px;color:var(--text-placeholder);font-size:13px}.mt-management{min-height:100vh;background:var(--bg-page)}.mt-management-header{background:var(--bg-card);padding:24px 32px;border-bottom:1px solid var(--border)}.mt-management-header h1{margin:0 0 8px;font-size:28px;font-weight:600;color:var(--text-body)}.mt-management-header .subtitle{margin:0;font-size:14px;color:var(--text-placeholder)}.mt-management-tabs{background:var(--bg-card);display:flex;gap:0;border-bottom:2px solid var(--border);padding:0 32px}.mt-management-tabs>button{display:inline-flex;align-items:center;gap:8px;padding:16px 24px;border:none;background:transparent;cursor:pointer;font-size:15px;color:var(--text-secondary);border-bottom:3px solid transparent;margin-bottom:-2px;outline:none;-webkit-tap-highlight-color:transparent}.mt-management-tabs>button:hover{color:var(--brand);background:var(--brand-light)}.mt-management-tabs>button.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:500}.mt-management-tabs .tab-icon{font-size:18px}.mt-management-content{max-width:1400px;margin:0 auto;padding:24px 32px}.review-config-placeholder{background:var(--bg-card);padding:60px;border-radius:8px;text-align:center}.review-config-placeholder h2{margin:0 0 16px;font-size:24px;color:var(--text-body)}.review-config-placeholder p{margin:0;font-size:14px;color:var(--text-placeholder)}.global-progress-container{position:fixed;right:20px;bottom:0;z-index:9990;pointer-events:none}.global-progress-item{position:absolute;right:0;animation:slideInUp .3s ease-out;pointer-events:auto}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.global-progress-modal{background:var(--bg-card);padding:20px 24px;border-radius:8px;box-shadow:0 4px 20px #0f172a1a;min-width:360px;max-width:450px;border:1px solid var(--border)}.global-progress-title{font-size:14px;font-weight:600;color:var(--text-title);margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.global-progress-title-text{display:flex;align-items:flex-start;gap:8px;max-width:100%;overflow:hidden;flex:1;min-width:0}.global-progress-title-text span{word-break:break-all;white-space:pre-wrap;line-height:1.4;flex:1;min-width:0}.global-progress-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}.global-progress-bar-container{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden;position:relative;margin-bottom:8px}.global-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--brand),var(--brand));border-radius:4px;transition:width .3s ease,background .3s ease}.global-progress-bar-fill.success{background:linear-gradient(90deg,#22c55e,var(--success))}.global-progress-bar-fill.error{background:linear-gradient(90deg,var(--danger),var(--danger))}.global-progress-title-text .global-progress-icon{flex:none;font-size:14px;font-weight:700;line-height:1.4}.global-progress-icon.success{color:#22c55e}.global-progress-icon.error{color:var(--danger)}.global-progress-message{font-size:12px;color:var(--text-secondary);text-align:left}.global-progress-cancel-btn{background:var(--danger);color:#fff;border:none;padding:4px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:background .2s;flex-shrink:0}.global-progress-cancel-btn:hover,.global-progress-cancel-btn:active{background:var(--danger)}.global-progress-close-btn{background:var(--text-secondary);color:#fff;border:none;width:24px;height:24px;border-radius:4px;font-size:16px;cursor:pointer;transition:background .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;line-height:1}.global-progress-close-btn:hover,.global-progress-close-btn:active{background:var(--text-body)}.pretranslate-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:1000}.pretranslate-modal{background:var(--bg-card);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal);width:520px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto}.pretranslate-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--bg-card);-webkit-user-select:none;user-select:none}.pretranslate-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-body)}.pretranslate-header .close-btn{width:28px;height:28px;border:none;background:transparent;font-size:20px;color:var(--text-secondary);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center}.pretranslate-header .close-btn:hover:not(:disabled){background:var(--border);color:var(--text-body)}.pretranslate-body{flex:1;padding:20px;overflow-y:auto}.file-info{margin-bottom:20px;padding:12px 16px;background:var(--bg-page);border-radius:6px}.file-info .label{color:var(--text-secondary);font-size:13px}.file-info .value{color:var(--text-body);font-weight:500}.settings-section{display:flex;flex-direction:column;gap:20px}.setting-row{display:flex;flex-direction:column;gap:8px}.setting-label{font-size:14px;font-weight:500;color:var(--text-body)}.match-rate-input-container{display:flex;align-items:center;gap:4px}.match-rate-input{width:80px;padding:8px 12px;font-size:16px;font-weight:600;color:var(--brand);border:1px solid var(--border);border-radius:4px;text-align:center;outline:none;transition:border-color .15s}.match-rate-input:focus{border-color:var(--brand)}.match-rate-input:disabled{background:var(--bg-page);color:var(--text-placeholder)}.match-rate-percent{font-size:16px;font-weight:600;color:var(--brand)}.match-rate-range{font-size:12px;color:var(--text-secondary);margin-left:8px}.match-rate-input-error{border-color:var(--danger)!important}.match-rate-error{font-size:12px;color:var(--danger);margin-top:4px}.match-rate-input::-webkit-outer-spin-button,.match-rate-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.match-rate-input[type=number]{-moz-appearance:textfield}.setting-hint{font-size:12px;color:var(--text-secondary)}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-body);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.match-rate-guide{margin-top:10px;padding:12px 16px;background:var(--bg-section);border-radius:6px;border:1px solid var(--border-disabled)}.guide-title{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.guide-item{display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:4px}.guide-item .rate{display:inline-block;min-width:50px;padding:2px 6px;border-radius:3px;font-weight:500;text-align:center}.guide-item .rate.exact{background:var(--success-bg);color:var(--success)}.guide-item .rate.high{background:var(--success-bg);color:#558b2f}.guide-item .rate.medium{background:#fff9c4;color:var(--warning)}.guide-item .rate.low{background:var(--warning-bg);color:var(--warning)}.guide-item .desc{color:var(--text-secondary)}.progress-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px}.progress-bar-container{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--brand) 0%,#42a5f5 100%);border-radius:4px;transition:width .3s ease-out}.progress-stats{display:flex;gap:20px;font-size:13px;color:var(--text-secondary)}.progress-stats span{display:flex;align-items:center;gap:4px}.progress-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite}.progress-text{font-size:16px;font-weight:500;color:var(--text-body)}.progress-hint{font-size:13px;color:var(--text-secondary)}.result-section{display:flex;flex-direction:column;gap:16px}.result-header{font-size:16px;font-weight:600;color:var(--success);text-align:center;padding:8px}.result-stats{display:flex;justify-content:space-around;padding:16px;background:var(--bg-page);border-radius:8px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-value{font-size:24px;font-weight:600;color:var(--text-body)}.stat-value.success{color:var(--success)}.stat-value.error{color:var(--danger)}.stat-label{font-size:12px;color:var(--text-secondary)}.result-info{display:flex;justify-content:center;gap:20px;font-size:13px;color:var(--text-secondary)}.result-details{margin-top:8px}.details-header{font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.details-list{max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.detail-item{padding:10px 12px;border-bottom:1px solid var(--bg-section)}.detail-item:last-child{border-bottom:none}.detail-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.detail-position{font-size:11px;color:var(--text-placeholder);min-width:40px}.detail-rate{font-size:12px;font-weight:600;color:var(--brand);padding:2px 6px;background:var(--brand-light);border-radius:4px}.detail-memory{font-size:11px;color:var(--text-secondary);flex:1;text-align:right}.detail-source{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.detail-target{font-size:12px;color:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.error-section{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px;background:var(--danger-bg);border-radius:6px}.error-icon{font-size:24px;color:var(--danger)}.error-text{font-size:14px;color:var(--danger)}.pretranslate-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--border);background:var(--bg-card)}.pretranslate-footer button{padding:8px 20px;font-size:14px;border-radius:4px;cursor:pointer;transition:all .15s}.btn-cancel{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary)}.btn-cancel:hover:not(:disabled){background:var(--bg-page);border-color:var(--border-strong)}.btn-execute{background:var(--brand);border:1px solid var(--brand);color:#fff}.btn-execute:hover:not(:disabled){background:var(--brand-hover)}.btn-execute:disabled{opacity:.6;cursor:not-allowed}.btn-again{background:var(--bg-card);border:1px solid var(--brand);color:var(--brand)}.btn-again:hover{background:var(--brand-light)}.btn-close{background:var(--brand);border:1px solid var(--brand);color:#fff}.btn-close:hover{background:var(--brand-hover)}.nonblocking-hint{margin-top:8px;padding:12px 16px;background:var(--brand-light);border-radius:6px;border-left:3px solid var(--brand);font-size:13px;color:var(--brand-hover);line-height:1.5}.clear-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:1000}.clear-modal{background:var(--bg-card);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal);width:420px;max-width:90vw;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto}.clear-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 14px;border-bottom:1px solid var(--border);background:var(--bg-card);-webkit-user-select:none;user-select:none}.clear-modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-body)}.clear-modal-header .close-btn{width:28px;height:28px;border:none;background:transparent;font-size:20px;color:var(--text-secondary);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center}.clear-modal-header .close-btn:hover:not(:disabled){background:var(--border);color:var(--text-body)}.clear-modal-body{padding:20px}.clear-modal-body .file-info{margin-bottom:20px;padding:12px 16px;background:var(--bg-page);border-radius:6px}.clear-modal-body .file-info .label{color:var(--text-secondary);font-size:13px}.clear-modal-body .file-info .value{color:var(--text-body);font-weight:500}.scope-section{margin-bottom:16px}.scope-section-simple{display:flex;flex-direction:column;gap:8px}.scope-option-simple{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-section);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:all .15s;font-size:13px;color:var(--text-body)}.scope-option-simple:hover{background:var(--brand-light);border-color:var(--brand)}.scope-option-simple input[type=radio]{width:16px;height:16px;cursor:pointer}.scope-title{font-size:14px;font-weight:500;color:var(--text-body);margin-bottom:12px}.scope-option{display:flex;align-items:flex-start;gap:8px;padding:6px 12px;background:var(--bg-section);border:1px solid var(--border);border-radius:4px;margin-bottom:8px;cursor:pointer;transition:all .15s}.scope-option:hover{background:var(--brand-light);border-color:var(--brand)}.scope-option input[type=radio]{margin-top:2px;width:16px;height:16px;cursor:pointer}.scope-content{display:flex;flex-direction:column;gap:4px}.scope-name{font-size:14px;font-weight:500;color:var(--text-body)}.scope-desc{font-size:12px;color:var(--text-secondary)}.warning-hint{padding:12px 16px;background:var(--brand-light);border-radius:6px;border-left:3px solid var(--brand);font-size:13px;color:var(--brand-hover);line-height:1.5}.warning-hint.danger{background:var(--danger-bg);border-left-color:var(--danger);color:var(--danger)}.clear-modal-body .result-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px;gap:12px}.clear-modal-body .result-icon{width:48px;height:48px;background:var(--success-bg);color:var(--success);font-size:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.clear-modal-body .result-text{font-size:15px;color:var(--text-body)}.clear-modal-body .result-text strong{color:var(--success);font-size:18px}.clear-modal-body .error-section{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px;background:var(--danger-bg);border-radius:6px;margin-top:16px}.clear-modal-body .error-icon{font-size:24px;color:var(--danger)}.clear-modal-body .error-text{font-size:14px;color:var(--danger)}.clear-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:14px 20px;border-top:1px solid var(--border);background:var(--bg-card)}.clear-modal-footer button{padding:8px 20px;font-size:14px;border-radius:4px;cursor:pointer;transition:all .15s}.clear-modal-footer .btn-cancel{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary)}.clear-modal-footer .btn-cancel:hover:not(:disabled){background:var(--bg-page);border-color:var(--border-strong)}.clear-modal-footer .btn-clear{background:var(--brand);border:1px solid var(--brand);color:#fff}.clear-modal-footer .btn-clear:hover:not(:disabled){background:var(--brand-hover)}.clear-modal-footer .btn-clear.danger{background:var(--danger);border-color:var(--danger)}.clear-modal-footer .btn-clear.danger:hover:not(:disabled){background:var(--danger)}.clear-modal-footer .btn-clear:disabled{opacity:.6;cursor:not-allowed}.clear-modal-footer .btn-close{background:var(--brand);border:1px solid var(--brand);color:#fff}.clear-modal-footer .btn-close:hover{background:var(--brand-hover)}.concordance-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999}.concordance-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;pointer-events:none}.concordance-dialog-container{position:fixed;top:0;left:0;right:0;bottom:0;overflow-y:auto;pointer-events:none}.concordance-dialog-inner{display:flex;min-height:100%;align-items:center;justify-content:center;padding:16px}.concordance-modal-content{background:var(--bg-card);border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-width:900px;width:100%;max-height:80vh;display:flex;flex-direction:column;pointer-events:auto}.concordance-modal-content.is-dragging{-webkit-user-select:none;user-select:none}.concordance-modal-content.is-dragging *{-webkit-user-select:none!important;user-select:none!important;pointer-events:none}.concordance-modal-content.is-dragging .concordance-modal-header,.concordance-modal-content.is-dragging .concordance-modal-header *{pointer-events:auto}.concordance-modal-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;border-bottom:1px solid var(--border);cursor:move;-webkit-user-select:none;user-select:none}.concordance-modal-header h2{margin:0;font-size:15px;font-weight:600;color:var(--text-body)}.close-btn{background:none;border:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.close-btn:hover{background:var(--bg-page);color:var(--text-body)}.concordance-search-form{padding:8px 16px;border-bottom:1px solid var(--border);background:var(--bg-section)}.search-top-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.search-type-tabs{display:flex;gap:4px;flex-shrink:0}.type-tab{padding:3px 14px;border:1px solid var(--border);background:var(--bg-card);cursor:pointer;font-size:12px;transition:all .2s;border-radius:3px;white-space:nowrap}.type-tab:hover{border-color:var(--brand);color:var(--brand)}.type-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.memory-scope-select{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.memory-scope-select label{font-size:12px;color:var(--text-secondary);white-space:nowrap}.scope-select{flex:1;padding:2px 6px;border:1px solid var(--border);border-radius:3px;font-size:12px;background:var(--bg-card);cursor:pointer}.scope-select:hover{border-color:var(--brand)}.scope-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.search-input-row{display:flex;gap:8px}.concordance-input{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:3px;font-size:13px;outline:none;transition:border-color .2s}.concordance-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.concordance-search-btn{padding:4px 16px;background:var(--brand);color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s}.concordance-search-btn:hover:not(:disabled){background:var(--brand)}.concordance-search-btn:disabled{opacity:.5;cursor:not-allowed}.concordance-results{flex:1;overflow:hidden;padding:0 16px 8px;min-height:0;display:flex;flex-direction:column}.concordance-error,.concordance-empty,.concordance-loading{padding:40px 20px;text-align:center;color:var(--text-placeholder);font-size:14px}.concordance-error{color:var(--danger)}.concordance-result-list{flex:1;display:flex;flex-direction:column;min-height:0}.concordance-result-header{font-size:12px;color:var(--text-secondary);padding:6px 0 4px;border-bottom:1px solid var(--bg-section);margin-bottom:4px;flex-shrink:0}.concordance-result-item{padding:12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-section);transition:all .2s}.concordance-result-item:hover{border-color:var(--brand);background:var(--brand-light)}.result-source,.result-target{display:flex;margin-bottom:8px;gap:8px;font-family:var(--corpus-font, "Times New Roman", "SimSun", serif)}.result-label{font-weight:500;color:var(--text-secondary);min-width:40px;flex-shrink:0;font-size:13px}.result-text{flex:1;color:var(--text-body);font-size:13px;line-height:1.6;word-break:break-word}.concordance-lexical-display{min-height:20px}.concordance-lexical-display .editarea-container{padding:0;border:none;background:transparent}.concordance-lexical-display .editarea-content{padding:0!important;min-height:auto!important;line-height:1.6!important;font-size:13px!important}.concordance-lexical-display .lexical-content-editable{padding:0!important;min-height:auto!important}.concordance-highlight{background:#fef08a;padding:0;border-radius:0;font-weight:500}.filter-keyword-highlight{background:#fef08a;font-weight:500;padding:0;border-radius:2px}.concordance-virtual-container{flex:1;min-height:0;overflow:auto;width:100%}.concordance-virtual-container::-webkit-scrollbar{width:8px}.concordance-virtual-container::-webkit-scrollbar-track{background:var(--bg-section)}.concordance-virtual-container::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}.concordance-virtual-container::-webkit-scrollbar-thumb:hover{background:var(--text-body)}.result-meta{display:flex;flex-wrap:wrap;gap:12px;padding-top:8px;border-top:1px solid var(--border);margin-top:4px}.meta-item{font-size:12px;color:var(--text-secondary)}.meta-label{color:var(--text-secondary);font-weight:500}.concordance-filter-toggle{display:flex;align-items:center;gap:10px;margin-top:6px}.filter-toggle-btn{background:none;border:none;cursor:pointer;font-size:11px;color:var(--text-secondary);padding:2px 0;display:flex;align-items:center;gap:4px;transition:color .2s}.filter-toggle-btn:hover{color:var(--brand)}.filter-arrow{font-size:10px;transition:transform .2s;display:inline-block}.filter-arrow.expanded{transform:rotate(90deg)}.filter-active-badge{font-size:10px;background:var(--brand-light);color:var(--brand);padding:1px 6px;border-radius:10px;border:1px solid var(--brand-border)}.filter-clear-btn{background:none;border:none;cursor:pointer;font-size:11px;color:var(--text-placeholder);padding:2px 4px;transition:color .2s}.filter-clear-btn:hover{color:var(--danger)}.concordance-filters{margin-top:4px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;display:flex;flex-direction:column;gap:4px}.filter-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.filter-label{font-size:11px;color:var(--text-secondary);font-weight:500;min-width:24px;text-align:right;flex-shrink:0}.filter-input,.filter-select{flex:1;min-width:70px;max-width:160px;padding:1px 4px;border:1px solid var(--border);border-radius:3px;font-size:11px;outline:none;transition:border-color .2s;background:var(--bg-card);cursor:pointer}.filter-input:focus,.filter-select:focus{border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.filter-select:hover{border-color:var(--brand)}.kb-search-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999}.kb-search-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;pointer-events:none}.kb-search-dialog-container{position:fixed;top:0;left:0;right:0;bottom:0;overflow-y:auto;pointer-events:none}.kb-search-dialog-inner{display:flex;min-height:100%;align-items:center;justify-content:center;padding:16px}.kb-search-modal-content{background:var(--bg-card);border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-width:860px;width:100%;max-height:80vh;display:flex;flex-direction:column;pointer-events:auto}.kb-search-modal-content.is-dragging{-webkit-user-select:none;user-select:none}.kb-search-modal-content.is-dragging *{-webkit-user-select:none!important;user-select:none!important;pointer-events:none}.kb-search-modal-content.is-dragging .kb-search-modal-header,.kb-search-modal-content.is-dragging .kb-search-modal-header *{pointer-events:auto}.kb-search-modal-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;border-bottom:1px solid var(--border);cursor:move;-webkit-user-select:none;user-select:none}.kb-search-modal-header h2{margin:0;font-size:15px;font-weight:600;color:var(--text-body)}.kb-search-modal-header .close-btn{background:none;border:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.kb-search-modal-header .close-btn:hover{background:var(--bg-page);color:var(--text-body)}.kb-search-form{padding:8px 16px;border-bottom:1px solid var(--border);background:var(--bg-section)}.kb-search-top-row{display:flex;align-items:center;gap:16px;margin-bottom:6px}.kb-client-select-group,.kb-type-select-group{display:flex;align-items:center;gap:6px;min-width:0}.kb-client-select-group{flex:1.4}.kb-type-select-group{flex:1}.kb-client-select-group label,.kb-type-select-group label{font-size:12px;color:var(--text-secondary);white-space:nowrap}.kb-client-select,.kb-type-select{flex:1;padding:2px 6px;border:1px solid var(--border);border-radius:3px;font-size:12px;background:var(--bg-card);cursor:pointer}.kb-client-select:hover,.kb-type-select:hover{border-color:var(--brand)}.kb-client-select:focus,.kb-type-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.kb-search-input-row{display:flex;gap:8px}.kb-search-input{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:3px;font-size:13px;outline:none;transition:border-color .2s}.kb-search-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.kb-search-input:disabled{background:var(--bg-page);cursor:not-allowed}.kb-search-btn{padding:4px 16px;background:var(--brand);color:#fff;border:none;border-radius:3px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s}.kb-search-btn:hover:not(:disabled){background:var(--brand)}.kb-search-btn:disabled{opacity:.5;cursor:not-allowed}.kb-search-hint{margin-top:4px;font-size:11px;color:var(--warning)}.kb-search-results{flex:1;overflow:hidden;padding:0 16px 8px;min-height:0;display:flex;flex-direction:column}.kb-search-error,.kb-search-empty,.kb-search-loading{padding:40px 20px;text-align:center;color:var(--text-placeholder);font-size:14px}.kb-search-error{color:var(--danger)}.kb-result-list{flex:1;display:flex;flex-direction:column;min-height:0}.kb-result-header{font-size:12px;color:var(--text-secondary);padding:6px 0 4px;border-bottom:1px solid var(--bg-section);margin-bottom:4px;flex-shrink:0}.kb-result-scroll{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:8px;padding-bottom:4px}.kb-result-scroll::-webkit-scrollbar{width:8px}.kb-result-scroll::-webkit-scrollbar-track{background:var(--bg-section)}.kb-result-scroll::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}.kb-result-card{padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-section);transition:all .2s}.kb-result-card:hover{border-color:var(--brand);background:var(--brand-light)}.kb-card-title-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.kb-card-title{flex:1;font-size:13px;font-weight:600;color:var(--text-body);word-break:break-word}.kb-type-badge{flex-shrink:0;font-size:11px;padding:1px 8px;border-radius:10px;background:var(--brand-light);color:var(--brand);border:1px solid var(--brand-border);white-space:nowrap}.kb-type-badge.kb-type-ERROR_EXAMPLE{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}.kb-type-badge.kb-type-TERM_KNOWLEDGE{background:var(--success-bg);color:var(--success);border-color:var(--success-border)}.kb-type-badge.kb-type-STYLE_GUIDE{background:#f5f3ff;color:#7c3aed;border-color:#c084fc}.kb-type-badge.kb-type-REQUIREMENT{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.kb-copy-btn{flex-shrink:0;padding:1px 10px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all .2s}.kb-copy-btn:hover{border-color:var(--brand);color:var(--brand)}.kb-card-body{display:flex;flex-direction:column;gap:4px;font-family:var(--kb-font, "Times New Roman", "SimSun", serif)}.kb-field{font-size:13px;color:var(--text-body);line-height:1.6;word-break:break-word}.kb-field-label{font-weight:500;color:var(--text-secondary);margin-right:6px;font-size:12px;flex-shrink:0}.kb-content-text{font-size:13px;color:var(--text-body);line-height:1.6;word-break:break-word;white-space:pre-wrap;max-height:160px;overflow:auto}.kb-term-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kb-term{font-size:13px;font-weight:600;color:var(--text-body)}.kb-term-arrow{color:var(--text-placeholder);flex-shrink:0}.kb-term-translation{font-size:13px;font-weight:600;color:var(--brand)}.kb-error-compare{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.kb-error-wrong,.kb-error-correct{font-size:13px;line-height:1.6;word-break:break-word}.kb-wrong-text{color:var(--danger);text-decoration:line-through}.kb-correct-text{color:var(--success);font-weight:500}.kb-highlight{background:#fef08a;padding:0;border-radius:0;font-weight:500}.kb-card-meta{display:flex;flex-wrap:wrap;gap:12px;padding-top:6px;border-top:1px solid var(--border);margin-top:6px}.kb-meta-item{font-size:11px;color:var(--text-secondary)}.kb-meta-item.kb-lang-match{color:var(--success);background:var(--success-bg);padding:0 4px;border-radius:2px;cursor:default}.kb-meta-item.kb-lang-mismatch{color:var(--danger);background:var(--danger-bg);padding:0 4px;border-radius:2px;cursor:help}.kb-page{display:flex;width:100%;height:100%;flex:1;overflow:hidden;background:var(--bg-page);position:relative}.kb-message{position:absolute;top:12px;left:50%;transform:translate(-50%);padding:6px 20px;border-radius:4px;font-size:13px;z-index:1000;box-shadow:0 2px 8px #0f172a1a}.kb-message-success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success)}.kb-message-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger)}.kb-sidebar{width:220px;flex-shrink:0;background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.kb-sidebar-header{padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.kb-sidebar-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text-body)}.kb-client-list{flex:1;overflow-y:auto;padding:8px 0}.kb-client-item{padding:7px 16px;font-size:13px;color:var(--text-body);cursor:pointer;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kb-client-item:hover{background:var(--brand-light);color:var(--brand)}.kb-client-item.active{background:var(--brand-light);color:var(--brand);font-weight:500;border-right:2px solid var(--brand)}.kb-main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:12px 16px;min-width:0}.kb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}.kb-type-tabs{display:flex;gap:4px;flex-wrap:wrap}.kb-type-tab{padding:4px 14px;border:1px solid #d9d9d9;background:var(--bg-card);cursor:pointer;font-size:12px;transition:all .2s;border-radius:3px;white-space:nowrap}.kb-type-tab:hover{border-color:var(--brand);color:var(--brand)}.kb-type-tab.active{background:var(--brand);border-color:var(--brand);color:var(--bg-card)}.kb-toolbar-right{display:flex;align-items:center;gap:8px}.kb-filter-form{display:flex;gap:6px;align-items:center}.kb-filter-input{width:200px;padding:4px 8px;border:1px solid #d9d9d9;border-radius:3px;font-size:12px;outline:none;transition:border-color .2s}.kb-filter-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.kb-btn{padding:4px 12px;border:1px solid #d9d9d9;background:var(--bg-card);color:var(--text-body);border-radius:3px;cursor:pointer;font-size:12px;transition:all .2s;white-space:nowrap}.kb-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.kb-btn:disabled{opacity:.5;cursor:not-allowed}.kb-btn-primary{background:var(--brand);border-color:var(--brand);color:var(--bg-card)}.kb-btn-primary:hover:not(:disabled){background:var(--brand);border-color:var(--brand);color:var(--bg-card)}.kb-table-wrap{flex:1;overflow:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;min-height:0}.kb-table{width:100%;border-collapse:collapse;font-size:13px}.kb-table th{position:sticky;top:0;background:var(--bg-section);padding:8px 12px;text-align:left;font-weight:600;color:var(--text-body);border-bottom:1px solid var(--border);white-space:nowrap;z-index:1}.kb-table td{padding:7px 12px;border-bottom:1px solid #f0f0f0;color:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.kb-table tbody tr:hover{background:var(--brand-light)}.kb-table-empty{text-align:center;color:var(--text-placeholder);padding:40px 0!important}.kb-td-title{font-weight:500}.kb-attach-icon{margin-right:4px;font-size:12px}.kb-row-actions{display:flex;gap:8px}.kb-link-btn{background:none;border:none;color:var(--brand);cursor:pointer;font-size:12px;padding:0;transition:color .2s}.kb-link-btn:hover{color:var(--brand)}.kb-link-btn.kb-link-danger,.kb-link-btn.kb-link-danger:hover{color:var(--danger)}.kb-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:10px;flex-shrink:0}.kb-page-info{font-size:12px;color:var(--text-secondary)}.kb-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:99999}.kb-modal{background:var(--bg-card);border-radius:8px;box-shadow:0 20px 25px -5px #0f172a1a;width:640px;max-width:92vw;max-height:86vh;display:flex;flex-direction:column}.kb-modal.is-dragging{-webkit-user-select:none;user-select:none}.kb-modal.is-dragging *{-webkit-user-select:none!important;user-select:none!important;pointer-events:none}.kb-modal.is-dragging .kb-modal-header,.kb-modal.is-dragging .kb-modal-header *{pointer-events:auto}.kb-modal-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border);cursor:move;-webkit-user-select:none;user-select:none;flex-shrink:0}.kb-modal-header h3{margin:0;font-size:15px;font-weight:600;color:var(--text-body)}.kb-modal-header .close-btn{background:none;border:none;font-size:22px;color:var(--text-placeholder);cursor:pointer;padding:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.kb-modal-header .close-btn:hover{background:var(--bg-page);color:var(--text-body)}.kb-modal-body{flex:1;overflow-y:auto;padding:14px 16px;min-height:0}.kb-form-row{display:flex;gap:12px}.kb-form-row .kb-form-field{flex:1;min-width:0}.kb-form-field{margin-bottom:10px;display:flex;flex-direction:column;gap:4px}.kb-form-field label{font-size:12px;color:var(--text-secondary);font-weight:500}.kb-required{color:var(--danger)}.kb-field-tip{color:var(--text-placeholder);font-weight:400;font-size:11px}.kb-form-field input[type=text],.kb-form-field select,.kb-form-field textarea{padding:5px 8px;border:1px solid #d9d9d9;border-radius:3px;font-size:13px;outline:none;transition:border-color .2s;font-family:inherit;background:var(--bg-card)}.kb-form-field input[type=text]:focus,.kb-form-field select:focus,.kb-form-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.kb-form-field select:disabled{background:var(--bg-page);cursor:not-allowed}.kb-form-field textarea{resize:vertical}.kb-form-field input[type=file]{font-size:12px}.kb-symbol-bar{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.kb-symbol-btn{background:var(--bg-section);border:1px solid var(--border);border-radius:3px;padding:2px 6px;font-size:14px;line-height:1.4;cursor:pointer;transition:background .2s,border-color .2s}.kb-symbol-btn:hover{background:var(--brand-light);border-color:var(--brand-border)}.kb-fmt-btn{background:var(--bg-section);border:1px solid var(--border);border-radius:3px;padding:2px 6px;min-width:26px;font-size:13px;line-height:1.4;cursor:pointer;transition:background .2s,border-color .2s}.kb-fmt-btn:hover{background:var(--brand-light);border-color:var(--brand-border)}.kb-color-btn{width:18px;height:18px;border:1px solid #d9d9d9;border-radius:3px;cursor:pointer;align-self:center;padding:0;transition:transform .1s,border-color .2s}.kb-color-btn:hover{border-color:var(--brand);transform:scale(1.15)}.kb-toolbar-sep{width:1px;height:18px;background:var(--border);margin:0 4px;align-self:center}.kb-rich-editor{min-height:220px;max-height:420px;overflow-y:auto;resize:vertical;padding:8px 10px;border:1px solid #d9d9d9;border-radius:3px;font-size:13px;line-height:1.6;outline:none;background:var(--bg-card);transition:border-color .2s}.kb-rich-editor:focus{border-color:var(--brand);box-shadow:0 0 0 2px #1890ff1a}.kb-rich-editor:empty:before{content:attr(data-placeholder);color:var(--border-strong);pointer-events:none}.kb-structured-section{border:1px dashed #d9d9d9;border-radius:4px;padding:10px 12px 2px;margin-bottom:10px;background:var(--bg-section)}.kb-attachment-current{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--bg-section);border:1px solid #f0f0f0;border-radius:3px;margin-bottom:6px}.kb-attachment-name{font-size:12px;color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.kb-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:10px 16px;border-top:1px solid var(--border);flex-shrink:0}.add-abbr-dialog{max-width:450px}.add-abbr-dialog .modal-header{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.add-abbr-dialog .modal-header h3{margin:0;font-size:16px;font-weight:600}.add-abbr-dialog .modal-close{background:none;border:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;padding:0;width:24px;height:24px;line-height:24px;display:flex;align-items:center;justify-content:center}.add-abbr-dialog .modal-close:hover{color:var(--text-secondary)}.form-info{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--brand-light);border-radius:4px;margin-bottom:16px;font-size:13px}.info-label{color:var(--brand);font-weight:500}.info-value{color:var(--text-body)}.add-abbr-dialog .form-group{margin-bottom:16px}.add-abbr-dialog .form-group label{display:block;margin-bottom:4px;font-size:12px;font-weight:500;color:var(--text-body)}.add-abbr-dialog .form-input{width:100%;padding:8px 10px;font-size:13px;border:1px solid var(--border);border-radius:4px;box-sizing:border-box}.add-abbr-dialog .form-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2563eb1a}.add-abbr-dialog .form-hint{margin-top:6px;font-size:11px;color:var(--text-secondary)}.add-abbr-dialog .modal-body{padding:20px 20px 16px}.add-abbr-dialog .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;margin:0;border-top:1px solid var(--border);background:var(--bg-card);border-radius:0 0 var(--radius-modal) var(--radius-modal)}.add-abbr-dialog .btn{padding:8px 16px;font-size:13px;border-radius:4px;cursor:pointer;border:none;transition:all .2s;font-family:Microsoft YaHei,Arial,sans-serif}.add-abbr-dialog .btn-primary{background:var(--brand);color:#fff}.add-abbr-dialog .btn-primary:hover:not(:disabled){background:var(--brand-hover)}.add-abbr-dialog .btn-secondary{background:var(--bg-page);color:var(--text-body);border:1px solid var(--border)}.add-abbr-dialog .btn-secondary:hover:not(:disabled){background:var(--border)}.add-abbr-dialog .btn:disabled{opacity:.5;cursor:not-allowed}.copy-source-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:1000}.copy-source-dialog{background:var(--bg-card);pointer-events:auto;border-radius:8px;box-shadow:0 4px 12px #0f172a1a;min-width:450px;max-width:600px}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.dialog-header h3{margin:0;font-size:16px;font-weight:500}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-btn:hover{background:var(--bg-section);color:var(--text-body)}.dialog-body{padding:16px}.copy-source-dialog .mode-selection{display:flex!important;flex-direction:column!important;gap:8px!important;margin:0!important;padding:0!important}.copy-source-dialog .radio-label{display:flex!important;align-items:center!important;gap:6px!important;cursor:pointer;padding:4px 10px!important;border:1px solid var(--border)!important;border-radius:4px!important;background:var(--bg-card);transition:all .2s;font-size:14px!important;margin:0!important}.copy-source-dialog .radio-label:hover{background-color:var(--bg-section)}.copy-source-dialog .radio-label.selected{border:2px solid var(--brand)!important;background-color:var(--brand-light)}.copy-source-dialog .radio-label input[type=radio]{cursor:pointer;margin:0}.copy-source-dialog .radio-label span{font-size:13px;color:var(--text-body)}.copy-source-dialog .shortcut-hint{margin-left:auto;font-size:11px;color:var(--text-secondary);background:var(--bg-section);border:1px solid var(--border);border-radius:3px;padding:1px 6px;font-family:monospace;white-space:nowrap}.range-input-section{margin-top:12px;padding:12px;background:var(--bg-section);border-radius:4px}.range-input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;box-sizing:border-box}.range-input:focus{outline:none;border-color:var(--brand)}.dialog-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:12px}.btn-cancel,.btn-confirm{padding:8px 20px;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s}.btn-cancel{background:var(--bg-page);border:1px solid var(--border);color:var(--text-body)}.btn-cancel:hover{background:var(--border)}.btn-confirm{background:var(--brand);border:none;color:#fff}.btn-confirm:hover{background:var(--brand-hover)}.preview-drawer{position:fixed;bottom:0;z-index:1200;background:var(--bg-card);border-top:2px solid #cbd5e0;box-shadow:0 -4px 16px #0f172a14;display:flex;flex-direction:column;border-radius:6px 6px 0 0}.preview-drawer-handle{height:10px;cursor:row-resize;display:flex;align-items:center;justify-content:center;background:var(--bg-section);border-radius:6px 6px 0 0;flex-shrink:0;-webkit-user-select:none;user-select:none}.preview-drawer-handle:hover{background:var(--border)}.preview-drawer-handle-icon{display:block;width:32px;height:3px;background:var(--text-placeholder);border-radius:3px}.preview-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-bottom:1px solid var(--border);background:var(--bg-section);flex-shrink:0;height:32px}.preview-drawer-title{font-size:13px;font-weight:600;color:var(--text-title);letter-spacing:.02em}.preview-drawer-actions{display:flex;gap:6px}.preview-btn-refresh,.preview-btn-close{border:none;background:transparent;cursor:pointer;padding:2px 6px;border-radius:4px;font-size:14px;color:var(--text-secondary);line-height:1;transition:background .15s,color .15s}.preview-btn-refresh:hover{background:var(--border);color:var(--brand)}.preview-btn-close:hover{background:var(--danger-bg);color:var(--danger)}.preview-drawer-body{flex:1;overflow:hidden;position:relative}.preview-iframe{width:100%;height:100%;border:none;display:block}.preview-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-secondary);font-size:13px;background:#ffffffeb}.preview-loading-spinner{display:block;width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:preview-spin .8s linear infinite}@keyframes preview-spin{to{transform:rotate(360deg)}}.office-preview-container{width:100%;height:100%;overflow-y:auto;padding:20px 16px;box-sizing:border-box;background:var(--border-strong);display:flex;flex-direction:column;align-items:center}.office-preview-docx-wrapper{background:transparent;border:none;border-radius:0;padding:0;min-height:200px;box-shadow:none;width:calc(100% - 48px);display:flex;flex-direction:column;align-items:stretch;gap:16px}.office-preview-docx-wrapper .docx-preview{width:100%}.office-preview-docx-wrapper article,.office-preview-docx-wrapper .docx-wrapper>section,.office-preview-docx-wrapper .docx{background:var(--bg-card)!important;box-shadow:0 2px 10px #00000047!important;margin:0!important;padding:32px 40px!important;box-sizing:border-box!important;width:100%!important;display:block}.office-preview-xlsx-wrapper{display:flex;flex-direction:column;gap:20px}.office-preview-sheet-title{font-size:13px;font-weight:600;color:var(--text-title);padding:4px 8px;background:var(--border-disabled);border-radius:4px;border-left:3px solid var(--brand)}.office-preview-table-wrapper{overflow-x:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:8px}.office-preview-table-wrapper table{border-collapse:collapse;width:max-content;min-width:100%;font-size:12px;border:1px solid #cbd5e0}.office-preview-table-wrapper table td,.office-preview-table-wrapper table th{border:1px solid #cbd5e0;padding:6px 10px;white-space:nowrap;background:var(--bg-card)}.office-preview-table-wrapper table th{background:var(--border-disabled);font-weight:600;color:var(--text-title)}.office-preview-table-wrapper table tr:first-child td,.office-preview-table-wrapper table tr:first-child th{border-top:1px solid #cbd5e0}.office-preview-table-wrapper table tr td:first-child,.office-preview-table-wrapper table tr th:first-child{border-left:1px solid #cbd5e0}.office-preview-pptx-wrapper{width:100%;min-height:400px;background:var(--bg-page);display:block!important;align-self:stretch}.pptx-preview-wrapper{background:var(--bg-page)!important;width:100%!important;height:auto!important;min-height:400px!important;position:relative!important;overflow:visible!important;padding:20px 0}.pptx-preview-slide-wrapper{background:var(--bg-card)!important;border-radius:4px;box-shadow:0 2px 8px #0000001a;margin:0 auto 16px!important;position:relative!important;display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important}.pptx-preview-slide-wrapper .slide-background{z-index:1!important}.pptx-preview-slide-wrapper .slide-wrapper,.pptx-preview-slide-wrapper .slide-layout-wrapper,.pptx-preview-slide-wrapper .slide-master-wrapper{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;z-index:2!important}.pdf-preview-loading,.pdf-preview-error{padding:40px;text-align:center;color:var(--text-secondary)}.pdf-pages-container{display:flex;flex-direction:column;gap:20px;padding:20px;background:var(--bg-page)}.pdf-page{background:var(--bg-card);border-radius:4px;box-shadow:0 2px 8px #0000001a;overflow:hidden;position:relative}.pdf-page canvas{display:block;width:100%;height:auto}.pdf-text-layer{position:absolute;top:0;left:0;pointer-events:none;overflow:hidden}.pdf-text-layer span{position:absolute;color:transparent;white-space:pre;cursor:default;transform-origin:0 0}.pdf-text-layer span.pdf-highlight-current{outline:2px solid #e53e3e!important;outline-offset:1px;border-radius:2px;background:#e53e3e14}.pdf-text-layer.pdf-highlight-current{outline:2px solid #e53e3e!important;outline-offset:2px;border-radius:2px}.pdf-page-label{padding:8px 16px;background:var(--bg-section);border-top:1px solid #e9ecef;font-size:12px;color:var(--text-secondary);text-align:center}.office-preview-slide{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:16px 20px;box-shadow:0 1px 3px #0000000f}.office-preview-slide-num{font-size:11px;color:var(--text-placeholder);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;border-bottom:1px solid var(--bg-section);padding-bottom:4px}.office-preview-slide-content{font-size:13px;color:var(--text-title);line-height:1.6}.office-preview-slide-empty{font-size:12px;color:var(--text-placeholder);font-style:italic}.office-preview-container:has(.office-html-iframe){padding:0;background:var(--bg-card);align-items:stretch}.office-html-iframe{width:100%;height:100%;min-height:400px;border:none;display:block;background:var(--bg-card);flex:1}.office-preview-loading{display:flex;align-items:center;justify-content:center;min-height:80px;color:var(--text-secondary);font-size:13px}.office-preview-error{padding:12px 16px;background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-bg);border-radius:4px;font-size:13px}.pm-dashboard,.translator-dashboard{--dashboard-surface: rgba(255, 255, 255, .9);--dashboard-border: rgba(210, 222, 237, .86);--dashboard-shadow: 0 10px 28px rgba(39, 71, 112, .06);width:100%;min-height:100%;padding:16px 20px;background:var(--bg-page-gradient);box-sizing:border-box}.dashboard-title{font-size:18px;font-weight:600;color:var(--text-title);margin-bottom:16px}.dashboard-section{background:var(--dashboard-surface);border-radius:var(--radius-card);padding:16px;margin-bottom:14px;border:1px solid var(--dashboard-border);box-shadow:var(--dashboard-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:visible}.section-title{font-size:14px;font-weight:600;color:var(--text-title);margin-bottom:12px}.metric-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;width:100%;margin-bottom:14px}.metric-cards.pm-overview-cards{grid-template-columns:repeat(6,1fr);overflow:visible;padding-bottom:8px}.metric-cards.three-cols{grid-template-columns:repeat(3,1fr)}.metric-cards.workload-cards,.metric-cards.translator-quality-cards{grid-template-columns:repeat(3,1fr);gap:12px}.metric-cards.translator-quality-cards .metric-card{padding:12px 8px;min-height:80px}.metric-card.workload-card{padding:12px 8px;min-height:100px}.metric-breakdown{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:8px;font-size:11px;color:var(--text-secondary)}.breakdown-item{white-space:nowrap}.breakdown-separator{color:var(--border)}.pie-charts-row{display:flex;gap:20px;justify-content:flex-start;flex-wrap:wrap}.task-pie-chart{flex:0 0 calc(50% - 10px);background:var(--bg-section);border-radius:var(--radius-input);padding:12px;border:1px solid var(--border);display:flex;flex-direction:column;align-items:center;min-width:280px}.chart-title{font-size:13px;font-weight:600;color:var(--text-title);margin-bottom:8px;text-align:center}.chart-summary{text-align:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--border);width:100%}.summary-text{font-size:13px;color:var(--text-secondary);font-weight:500}.metric-card{background:linear-gradient(145deg,#fffffff0,#f1f6fceb);border-radius:var(--radius-input);padding:6px 4px;text-align:center;border:1px solid rgba(220,230,241,.72);box-shadow:0 2px 8px #37537606;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;position:relative;min-height:60px;min-width:0;max-width:100%;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}.metric-card:hover{transform:translateY(-1px);box-shadow:0 8px 18px #2d4f761a;border-color:#a7c1dde6}.metric-card.alert{border-color:var(--danger-border);background:var(--danger-bg)}.metric-card.warning{border-color:var(--warning-border);background:var(--warning-bg)}.metric-card.success{border-color:var(--success-border);background:var(--success-bg)}.metric-label{font-size:11px;color:var(--text-secondary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.metric-value{font-size:16px;font-weight:700;color:var(--text-title);line-height:1;word-break:break-all}.metric-unit{font-size:11px;color:var(--text-placeholder);margin-top:3px}.metric-value.highlight-red{color:var(--danger)}.metric-value.highlight-orange{color:var(--warning)}.metric-value.highlight-blue{color:var(--brand)}.metric-value.highlight-green{color:var(--success)}.metric-badge{position:absolute;top:4px;right:4px;font-size:14px}.online-users-tooltip{position:fixed;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-input);padding:10px;box-shadow:var(--shadow-dropdown);z-index:99999;min-width:150px;max-width:280px;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}.metric-card:hover .online-users-tooltip{opacity:1;visibility:visible}.online-users-tooltip .tooltip-title{font-size:13px;font-weight:600;color:var(--text-title);margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--border)}.online-users-tooltip .tooltip-item{font-size:13px;color:var(--text-secondary);padding:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.online-users-tooltip .tooltip-item:hover{color:var(--brand);background:var(--brand-light);padding-left:4px;border-radius:var(--radius-tag)}.unqualified-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-input);box-shadow:var(--shadow-dropdown);z-index:1000;min-width:250px;max-width:350px}.unqualified-dropdown .dropdown-header{font-size:13px;font-weight:600;color:var(--text-title);padding:10px 12px;border-bottom:1px solid var(--border);background:var(--bg-section);border-radius:var(--radius-input) var(--radius-input) 0 0}.unqualified-dropdown .dropdown-content{max-height:300px;overflow-y:auto;padding:6px 0}.unqualified-dropdown .dropdown-item{padding:8px 12px;display:flex;flex-direction:column;gap:4px;transition:background .15s;cursor:pointer}.unqualified-dropdown .dropdown-item:hover{background:var(--bg-hover)}.unqualified-dropdown .dropdown-item .project-name{font-size:13px;font-weight:600;color:var(--text-title)}.unqualified-dropdown .dropdown-item .file-name{font-size:12px;color:var(--text-secondary);padding-left:8px}.risk-projects-list,.urgent-tasks-list,.pending-tasks-list,.overdue-tasks-list,.todo-tasks-list{display:flex;flex-direction:column;gap:10px}.todo-tasks-list{padding-right:6px}.risk-project-card,.urgent-task-card,.pending-task-card,.overdue-task-card{background:var(--bg-section);border-radius:var(--radius-input);padding:12px;border-left:3px solid var(--warning);transition:all .15s}.urgent-task-card.urgency-next{border-left-color:var(--brand);background:var(--brand-light)}.risk-project-card:hover,.urgent-task-card:hover,.pending-task-card:hover,.overdue-task-card:hover{background:var(--bg-card);box-shadow:var(--shadow-card);border-color:var(--border-strong)}.risk-project-card.risk-high,.urgent-task-card.urgency-overdue,.urgent-task-card.urgency-high,.overdue-task-card{border-left-color:var(--danger);background:var(--danger-bg)}.risk-project-card.risk-medium,.urgent-task-card.urgency-medium{border-left-color:var(--warning);background:var(--warning-bg)}.risk-header,.task-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.risk-header-left{display:flex;align-items:center;gap:8px;flex:1}.action-btn-top-right{flex-shrink:0;margin-top:0}.risk-badge,.urgency-badge,.task-badge{font-size:12px;font-weight:600;padding:2px 6px;border-radius:var(--radius-tag);background:#0000000d;color:var(--text-secondary)}.project-name,.task-name{font-size:13px;font-weight:600;color:var(--text-title);flex:1}.risk-details,.task-details{margin-bottom:0}.risk-table-container{max-height:300px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-input)}.risk-table{width:100%;border-collapse:collapse;font-size:13px}.risk-table thead{background:var(--bg-section);position:sticky;top:0;z-index:1}.risk-table th{text-align:left;padding:8px 12px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border)}.risk-table td{padding:7px 12px;border-bottom:1px solid var(--border);color:var(--text-body)}.risk-table tbody tr:hover{background:var(--bg-hover)}.risk-table tbody tr:last-child td{border-bottom:none}.risk-row.risk-high,.risk-row.risk-high:hover{background:var(--danger-bg)}.risk-row.risk-medium,.risk-row.risk-medium:hover{background:var(--warning-bg)}.risk-level-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--radius-tag);font-size:11px;font-weight:600}.risk-level-badge.high{background:var(--danger);color:#fff}.risk-level-badge.medium{background:var(--warning);color:#fff}.project-cell{font-weight:500;color:var(--text-title)}.assignee-cell{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.overdue-text{color:var(--danger);font-weight:500}.action-btn-small{padding:3px 10px;font-size:12px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);border-radius:var(--radius-tag);cursor:pointer;transition:all .15s}.action-btn-small:hover{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand)}.risk-info,.task-info{font-size:12px;color:var(--text-secondary);margin-bottom:3px}.risk-actions,.task-actions{display:flex;gap:8px;flex-wrap:wrap}.action-btn{padding:4px 12px;font-size:12px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-body);border-radius:var(--radius-tag);cursor:pointer;transition:all .15s}.action-btn:hover{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand)}.action-btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.action-btn.primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.next-task-card{background:var(--bg-card);border-radius:var(--radius-card);padding:16px;border:1px solid var(--border)}.next-task-card .task-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.next-task-card .task-title{font-size:15px;font-weight:600;color:var(--text-title);flex:1}.next-task-card .task-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:10px;display:flex;align-items:center;gap:8px}.role-badge{display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;padding:2px 6px;border-radius:var(--radius-tag);color:#fff;min-width:24px;cursor:help;transition:all .15s}.role-badge:hover{transform:scale(1.05);box-shadow:var(--shadow-card)}.role-badge.role-translator{background:var(--brand)}.role-badge.role-proofreader1{background:var(--warning)}.role-badge.role-proofreader2{background:var(--success)}.next-task-card .task-info{margin-bottom:12px}.next-task-card .info-item{font-size:13px;color:var(--text-secondary)}.next-task-card .task-actions{display:flex;gap:8px}.next-task-card .action-btn{background:var(--bg-card);color:var(--text-body);border:1px solid var(--border);font-weight:500}.next-task-card .action-btn:hover{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand)}.next-task-card .action-btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.next-task-card .action-btn.primary:hover{background:var(--brand-hover)}.empty-state{text-align:center;padding:40px 20px;color:var(--text-placeholder)}.empty-state p{font-size:13px;margin:6px 0}.dashboard-loading,.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.dashboard-loading .loading-spinner{width:36px;height:36px;border:3px solid var(--border);border-top:3px solid var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-loading p,.dashboard-error p{font-size:13px;color:var(--text-secondary)}.dashboard-error button{padding:6px 20px;font-size:13px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-btn);cursor:pointer}.dashboard-error button:hover{background:var(--brand-hover)}@media (max-width: 768px){.pm-dashboard,.translator-dashboard{padding:12px}.dashboard-title{font-size:16px}.metric-cards{grid-template-columns:repeat(3,1fr);gap:6px}.metric-value{font-size:15px}}.resource-subtitle{font-size:13px;font-weight:600;color:var(--text-title);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.resource-table{margin-bottom:16px}.stats-table{width:100%;border-collapse:collapse;font-size:13px}.stats-table thead{background:var(--bg-section)}.stats-table th{text-align:left;padding:8px 12px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border)}.stats-table td{padding:7px 12px;border-bottom:1px solid var(--border);color:var(--text-body)}.stats-table tbody tr:hover{background:var(--bg-hover)}.stats-table tbody tr:last-child td{border-bottom:none}.qa-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.qa-modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal);width:480px;max-height:90vh;display:flex;flex-direction:column;font-family:寰蒋闆呴粦,Microsoft YaHei,Arial,sans-serif;font-size:11px}.qa-modal-content *{font-family:寰蒋闆呴粦,Microsoft YaHei,Arial,sans-serif}.qa-modal-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:var(--bg-card);border-bottom:1px solid var(--border)}.qa-modal-header h3{margin:0;font-size:12px;font-weight:700}.qa-modal-close{border:none;background:none;font-size:18px;cursor:pointer;color:var(--text-secondary);padding:0;width:20px;height:20px;line-height:18px}.qa-modal-close:hover{color:var(--text-title)}.qa-info-text{padding:8px 10px;background:var(--brand-light);border-left:3px solid var(--brand);border-radius:3px;color:var(--text-body);font-size:11px;line-height:1.5}.qa-info-text ul{list-style:none;padding-left:0}.qa-info-text li{margin:3px 0}.qa-modal-body{flex:1;overflow-y:auto;padding:10px 12px}.qa-form-group{margin-bottom:12px}.qa-form-label{display:block;font-size:11px;font-weight:700;margin-bottom:4px}.qa-radio-group{display:flex;gap:12px}.qa-radio-label{display:flex;align-items:center;gap:4px;font-size:11px;cursor:pointer}.qa-radio-label input[type=radio]{margin:0}.qa-radio-label input[type=radio]:disabled{cursor:not-allowed}.qa-rules-list{border:1px solid var(--border);background:var(--bg-section);padding:6px}.qa-rule-item-wrapper{border-bottom:1px solid var(--border)}.qa-rule-item-wrapper:last-child{border-bottom:none}.qa-rule-item{padding:4px 0}.qa-checkbox-label{display:flex;align-items:flex-start;gap:6px;cursor:pointer;font-size:11px}.qa-checkbox-label input[type=checkbox]{margin-top:2px;flex-shrink:0}.qa-checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.qa-rule-info{display:flex;flex-direction:column;gap:2px}.qa-rule-name{font-weight:700;color:var(--text-body)}.qa-rule-desc{font-size:10px;color:var(--text-secondary)}.qa-modal-footer{display:flex;justify-content:flex-end;gap:6px;padding:8px 10px;background:var(--bg-card);border-top:1px solid var(--border)}.qa-btn-primary,.qa-btn-secondary{padding:4px 12px;border:1px solid var(--text-placeholder);cursor:pointer;font-size:11px}.qa-btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}.qa-btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.qa-btn-secondary{background:var(--bg-card);color:var(--text-body)}.qa-btn-secondary:hover{background:var(--bg-section)}.qa-modal-body::-webkit-scrollbar{width:8px}.qa-modal-body::-webkit-scrollbar-track{background:var(--bg-section)}.qa-modal-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.qa-modal-body::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.qa-select{width:100%;padding:4px 6px;border:1px solid var(--text-placeholder);font-size:11px;background:var(--bg-card)}.qa-select:focus{outline:none;border-color:var(--brand)}.qa-warning-text{display:inline-block;margin-top:4px;font-size:10px;color:var(--danger)}.qa-inline-select{margin-top:6px;margin-left:22px;margin-bottom:6px}.qa-inline-select .qa-select{width:calc(100% - 22px)}.qa-inline-select .qa-warning-text{display:block;margin-left:0}.qa-input{width:100%;padding:4px 6px;border:1px solid var(--text-placeholder);font-size:11px;background:var(--bg-card)}.qa-input:focus{outline:none;border-color:var(--brand)}.account-settings-modal{width:640px;max-width:90vw;max-height:92vh;overflow-y:auto}.settings-tabs{display:flex;border-bottom:2px solid var(--border);background:var(--bg-page)}.settings-tabs .tab-btn{flex:1;padding:14px 20px;border:none;background:transparent;font-size:15px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .3s ease;position:relative}.settings-tabs .tab-btn:hover{color:var(--brand);background:var(--bg-section)}.settings-tabs .tab-btn.active{color:var(--brand);background:var(--bg-card)}.settings-tabs .tab-btn.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:var(--brand)}.account-settings-modal .form-field{margin-bottom:20px}.account-settings-modal .form-field label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-body);font-size:14px}.account-settings-modal .form-field label .required{color:var(--danger);margin-left:2px}.account-settings-modal .form-field input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;transition:border-color .3s;box-sizing:border-box}.account-settings-modal .form-field input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.account-settings-modal .form-field input:disabled{background-color:var(--bg-page);color:var(--text-placeholder);cursor:not-allowed}.account-settings-modal .form-field .readonly-input{background-color:var(--bg-section);border-color:var(--border)}.account-settings-modal .field-hint{margin-top:6px;font-size:12px;color:var(--text-secondary);line-height:1.5}.account-settings-modal .error-message{padding:12px 16px;margin-bottom:20px;background-color:var(--danger-bg);border:1px solid var(--danger-border);border-radius:4px;color:var(--danger);font-size:14px;display:flex;align-items:center}.account-settings-modal .error-message:before{content:"鈿狅笍";margin-right:8px;font-size:16px}.account-settings-modal .success-message{padding:12px 16px;margin-bottom:20px;background-color:var(--success-bg);border:1px solid var(--success-border);border-radius:4px;color:var(--success);font-size:14px;display:flex;align-items:center}.account-settings-modal .success-message:before{content:"✓";margin-right:8px;font-size:16px}.account-settings-modal .password-hint{margin-top:20px;padding:15px;background-color:var(--brand-light);border:1px solid var(--brand-border);border-radius:4px;font-size:13px;color:var(--text-body)}.account-settings-modal .password-hint strong{display:block;margin-bottom:10px;color:var(--brand);font-size:14px}.account-settings-modal .password-hint ul{margin:0;padding-left:20px}.account-settings-modal .password-hint li{margin:6px 0;line-height:1.6}.account-settings-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--bg-section)}.account-settings-modal .btn-cancel,.account-settings-modal .btn-confirm{padding:8px 24px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.account-settings-modal .btn-cancel{background-color:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.account-settings-modal .btn-cancel:hover:not(:disabled){color:var(--brand);border-color:var(--brand)}.account-settings-modal .btn-confirm{background-color:var(--brand);color:#fff}.account-settings-modal .btn-confirm:hover:not(:disabled){background-color:var(--brand-hover);box-shadow:0 2px 8px #2563eb40}.account-settings-modal .btn-cancel:disabled,.account-settings-modal .btn-confirm:disabled{opacity:.6;cursor:not-allowed}.account-settings-modal .modal-body{padding:24px}.account-settings-modal .modal-header{padding:16px 24px;border-bottom:1px solid var(--bg-section)}.account-settings-modal .modal-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-title)}.account-settings-modal .close-btn{background:none;border:none;font-size:24px;color:var(--text-placeholder);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .3s}.account-settings-modal .close-btn:hover{background-color:var(--bg-hover);color:var(--text-title)}.font-prefs-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:8px}@media (max-width: 560px){.font-prefs-grid{grid-template-columns:1fr}}.font-prefs-panel{border:1px solid var(--border);border-radius:6px;padding:14px 16px;background:var(--bg-section);min-width:0}.font-prefs-panel-title{font-size:13px;font-weight:600;color:var(--brand);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.account-settings-modal .form-field .custom-select{width:100%}.account-settings-modal .form-field .custom-select-trigger{background:var(--bg-card)}.account-settings-modal .modal-body .email-notify-options{display:flex;flex-direction:column;gap:10px}.account-settings-modal .modal-body .email-notify-item{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start}.account-settings-modal .modal-body .email-notify-item input[type=checkbox]{margin-top:3px}.account-settings-modal .modal-body .email-notify-item label{display:block;min-width:0;line-height:1.4;word-break:normal;cursor:pointer;font-weight:400;color:var(--text-body);margin-bottom:0}.account-settings-modal-wide{width:680px;max-width:96vw}.font-prefs-accordion{border:1px solid var(--border);border-radius:6px;margin-bottom:8px;overflow:hidden}.font-prefs-accordion-header{display:flex;align-items:center;gap:8px;padding:10px 14px;cursor:pointer;background:var(--bg-section, #f5f5f5);-webkit-user-select:none;user-select:none;transition:background .15s}.font-prefs-accordion-header:hover{background:var(--bg-hover, #ebebeb)}.font-prefs-accordion-arrow{font-size:10px;color:var(--text-secondary);flex-shrink:0}.font-prefs-accordion-title{font-weight:600;font-size:14px;color:var(--text-title)}.font-prefs-accordion-summary{margin-left:auto;font-size:12px;color:var(--text-secondary)}.font-prefs-accordion-body{padding:12px 14px;border-top:1px solid var(--border);background:var(--bg-card, #fff)}.font-prefs-accordion-body .form-field{margin-bottom:10px}.font-prefs-accordion-body .form-field:last-child{margin-bottom:0}.font-prefs-accordion-body label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px}.font-preview{font-size:14px;color:var(--text-body)}.custom-select{position:relative;width:100%;font-size:13px}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text-body);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.custom-select-trigger:hover{border-color:var(--brand)}.custom-select.open .custom-select-trigger{border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.custom-select.disabled .custom-select-trigger{background:var(--bg-section);color:var(--text-muted);cursor:not-allowed}.custom-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-arrow{margin-left:8px;font-size:10px;color:var(--text-muted);flex-shrink:0}.custom-select-dropdown{position:fixed;top:-9999px;left:-9999px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;box-shadow:var(--shadow-dropdown, 0 4px 12px rgba(0, 0, 0, .12));max-height:320px;overflow-y:auto;padding:4px 0;box-sizing:border-box}.custom-select-option{padding:7px 12px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background-color .12s}.custom-select-option:hover,.custom-select-option.highlighted{background:var(--bg-hover)}.custom-select-option.selected{background:#2563eb14;color:var(--brand);font-weight:500}.batch-task-management{padding:20px 40px;width:100%;box-sizing:border-box;height:calc(100vh - 100px);display:flex;flex-direction:column}.no-permission{text-align:center;padding:60px 20px}.no-permission h2{color:var(--text-secondary);margin-bottom:16px}.no-permission p{color:var(--text-placeholder);font-size:14px}.no-permission-hint{color:var(--text-placeholder);font-size:13px;font-style:italic}.batch-task-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}.header-title-row{display:flex;align-items:baseline;gap:12px}.batch-task-header h2{margin:0;font-size:20px;color:var(--text-body)}.header-actions{display:flex;align-items:center;gap:16px}.auto-apply-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;color:var(--text-body)}.auto-apply-checkbox input[type=checkbox]{cursor:pointer;width:14px;height:14px;margin:0}.auto-apply-checkbox span{white-space:nowrap;cursor:pointer}.total-count{color:var(--text-secondary);font-size:14px;white-space:nowrap}.batch-action-buttons{display:flex;align-items:center;gap:6px;margin-left:8px}.batch-action-btn,.refresh-all-btn{padding:7px 16px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text-body);cursor:pointer;font-size:13px;transition:all .2s;white-space:nowrap;box-shadow:0 1px 2px #0000000f}.batch-action-btn:hover,.refresh-all-btn:hover:not(:disabled){background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 2px 4px #1890ff4d}.refresh-all-btn:disabled{color:var(--border-strong);background:var(--bg-section);border-color:var(--border);box-shadow:none;cursor:not-allowed}.loading,.empty-state{text-align:center;padding:60px 20px;color:var(--text-placeholder)}.empty-state p{margin:8px 0}.empty-state .hint{font-size:13px;color:var(--border-strong)}.empty-state.error-state p{color:var(--danger)}.retry-btn{margin-top:16px;padding:8px 24px;background:var(--brand);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.retry-btn:hover{background:var(--brand)}.batch-task-table-container{flex:1;overflow:auto;background:var(--bg-card);border-radius:8px;box-shadow:0 1px 3px #0000001a}.batch-task-table{width:100%;border-collapse:collapse;table-layout:fixed}.batch-task-table th,.batch-task-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--bg-section)}.batch-task-table th{background:var(--bg-section);font-weight:500;color:var(--text-body);font-size:12px}.batch-task-table td{font-size:12px;color:var(--text-body)}.task-name{word-wrap:break-word;word-break:break-all;white-space:normal;line-height:1.4;font-weight:400!important;font-size:11px!important}.provider-cell,.status-cell{word-wrap:break-word;white-space:normal;line-height:1.4}.task-type{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px}.task-type.translation{background:var(--brand-light);color:var(--brand)}.task-type.review{background:var(--success-bg);color:var(--success)}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-pending{background:var(--bg-page);color:var(--text-placeholder)}.status-uploading{background:var(--warning-bg);color:var(--warning)}.status-submitted{background:var(--brand-light);color:var(--brand)}.status-processing{background:var(--brand-light);color:var(--brand);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.status-completed{background:var(--success-bg);color:var(--success)}.status-failed{background:var(--danger-bg);color:var(--danger)}.status-cancelled{background:var(--bg-page);color:var(--text-placeholder)}.progress-cell{width:80%}.progress-bar{position:relative;width:100%;height:16px;background:var(--bg-section);border-radius:3px;overflow:hidden}.progress-fill{position:absolute;left:0;top:0;height:100%;background:var(--success);border-radius:3px;transition:width .3s ease}.progress-text{position:absolute;left:0;right:0;top:0;bottom:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text-body);z-index:1}.result-cell{font-size:10px!important}.result-summary{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%}.result-summary .success{color:var(--success);font-size:10px!important}.result-summary .failed{color:var(--danger);font-size:10px!important}.result-summary.error-hint{color:var(--danger);font-size:10px!important;cursor:help;text-decoration:underline dotted}.select-col-header{text-align:center!important}.select-col-header input[type=checkbox]{cursor:pointer;width:15px;height:15px;margin:0}.select-col{position:relative;text-align:center!important;width:36px;cursor:pointer}.row-index{font-size:12px;color:var(--text-placeholder);-webkit-user-select:none;user-select:none}.row-index.hidden{display:none}.row-checkbox{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;cursor:pointer;width:15px;height:15px;margin:0}.row-checkbox.visible{opacity:1}.batch-task-table tbody tr:hover .row-index:not(.hidden){display:none}.batch-task-table tbody tr:hover .row-checkbox{opacity:1}.batch-task-table tbody tr.row-selected,.batch-task-table tbody tr.row-selected:hover{background:var(--brand-light)}.apply-status-cell{white-space:nowrap}.apply-status{display:inline-block;padding:2px 8px;border-radius:3px;font-size:12px;font-weight:500}.apply-status.applied{background:var(--success-bg);color:var(--success)}.apply-status.unapplied{background:var(--warning-bg);color:var(--warning)}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px;padding:16px 0}.pagination button{padding:6px 16px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);cursor:pointer;font-size:14px}.pagination button:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.pagination button:disabled{color:var(--text-placeholder);cursor:not-allowed}.pagination span{color:var(--text-secondary);font-size:14px}.about-page{width:100%;height:100%;background:var(--bg-page);overflow-y:auto;padding:40px 20px;box-sizing:border-box}.about-container{max-width:900px;margin:0 auto;background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-modal);overflow:hidden;border:1px solid var(--border)}.about-header{background:var(--bg-card);border-bottom:1px solid var(--border);padding:28px 40px 24px;display:flex;align-items:center;gap:20px}.about-logo{display:flex;align-items:center;gap:16px;flex-shrink:0}.logo-icon{width:48px;height:48px;background:var(--brand-light);border-radius:var(--radius-card);display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;color:var(--brand)}.about-logo-img{width:48px;height:48px;border-radius:var(--radius-card);object-fit:cover}.about-header-text{flex:1}.about-header h1{margin:0 0 4px;font-size:22px;font-weight:700;color:var(--text-title);letter-spacing:-.3px}.about-subtitle{margin:0;font-size:14px;color:var(--text-secondary);font-weight:400}.about-content{padding:40px}.about-section{margin-bottom:40px}.about-section:last-child{margin-bottom:0}.about-section h2{font-size:20px;font-weight:600;color:var(--text-title);margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--border)}.info-grid{display:grid;gap:16px}.info-item{display:flex;align-items:center;padding:12px;background:var(--bg-section);border-radius:var(--radius-input);border-left:3px solid var(--brand)}.info-label{font-weight:500;color:var(--text-secondary);min-width:100px}.info-value{color:var(--text-title);font-weight:600}.feature-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.feature-list li{padding:12px 16px;background:var(--bg-section);border-radius:8px;color:var(--text-body);font-size:14px;line-height:1.6;transition:all .2s}.feature-list li:hover{background:var(--bg-section);transform:translate(4px)}.oss-section{margin-bottom:24px;border-top:1px solid var(--border);padding-top:20px}.oss-title{font-size:16px!important;font-weight:600!important;color:var(--text-title)!important;margin:0 0 8px!important;padding-bottom:10px!important;border-bottom:2px solid var(--border)!important;letter-spacing:.3px}.oss-intro{font-size:13px;color:var(--text-secondary);margin:0 0 10px;line-height:1.5}.oss-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.oss-group{background:var(--bg-section);border-radius:var(--radius-tag);border:1px solid var(--border);padding:12px 14px}.oss-group-title{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:8px;letter-spacing:.3px}.oss-list{list-style:none;padding:0;margin:0}.oss-list li{font-size:12px;color:var(--text-body);line-height:1.9;padding:0;background:none}.oss-license{font-size:11px;color:var(--text-secondary)}.tech-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.tech-item{padding:20px;background:var(--bg-section);border-radius:8px;border:1px solid var(--border)}.tech-item strong{display:block;color:var(--brand);font-size:15px;margin-bottom:8px}.tech-item p{margin:0;color:var(--text-secondary);font-size:14px}.license-text{display:none}.contact-section{background:var(--bg-section);padding:24px;border-radius:8px;margin-top:32px}.contact-info{display:grid;gap:12px}.contact-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-card);border-radius:8px;font-size:14px;color:var(--text-body)}.contact-icon{font-size:20px}.about-footer{padding:24px 40px;background:var(--bg-section);border-top:1px solid var(--border);text-align:center}.about-footer p{margin:0;color:var(--text-secondary);font-size:13px}@media (max-width: 768px){.about-page{padding:20px 10px}.about-header{padding:32px 24px}.about-content{padding:24px}.tech-grid,.oss-grid{grid-template-columns:1fr}.about-header h1{font-size:28px}}.web-sidebar{--sidebar-width: 200px;--sidebar-collapsed-width: 52px;--transition-speed: .2s;background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative;z-index:100}.web-sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);flex-shrink:0;min-height:52px;box-sizing:border-box;background:var(--bg-card)}.web-sidebar-brand-info{display:flex;flex-direction:column;gap:2px;overflow:hidden;min-width:0}.web-sidebar-brand-row1{display:flex;align-items:center;gap:7px;line-height:1}.web-sidebar-brand-row1 img{width:22px;height:22px;border-radius:4px;object-fit:cover;flex-shrink:0}.web-sidebar-brand-name{font-size:16px;font-weight:700;font-family:Times New Roman,serif!important;letter-spacing:.5px;color:var(--text-title);white-space:nowrap;line-height:1;transition:opacity var(--transition-speed),width var(--transition-speed)}.web-sidebar-brand-subtitle{font-size:11px;font-weight:500;color:var(--text-secondary);white-space:nowrap;letter-spacing:.2px;line-height:1;transition:opacity var(--transition-speed),width var(--transition-speed)}.web-sidebar.collapsed .web-sidebar-brand{padding:10px 0;justify-content:center}.web-sidebar.collapsed .web-sidebar-brand-name,.web-sidebar.collapsed .web-sidebar-brand-subtitle{opacity:0;width:0;height:0;overflow:hidden}.web-sidebar.collapsed .web-sidebar-brand-info{flex:0 0 auto}.web-sidebar-toggle{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-tag);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-speed);font-size:13px;flex-shrink:0;padding:0}.web-sidebar-toggle:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-body)}.web-sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:6px 0}.web-sidebar-nav::-webkit-scrollbar{width:3px}.web-sidebar-nav::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.web-sidebar-group-label{padding:10px 14px 4px;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text-placeholder);white-space:nowrap;overflow:hidden;transition:opacity var(--transition-speed)}.web-sidebar.collapsed .web-sidebar-group-label{opacity:0;height:0;padding:0}.web-sidebar-item{display:flex;align-items:center;gap:8px;padding:7px 12px;margin:1px 6px;border-radius:var(--radius-btn);cursor:pointer;color:var(--text-body);font-size:13px;font-weight:400;transition:background var(--transition-speed),color var(--transition-speed);white-space:nowrap;overflow:hidden;position:relative;border:none;background:transparent;width:calc(100% - 12px);text-align:left;border-left:2px solid transparent}.web-sidebar-item:hover{background:var(--bg-hover);color:var(--text-body)}.web-sidebar-item.active{background:var(--brand-light);color:var(--brand);font-weight:600;border-left-color:var(--brand)}.web-sidebar-item.active .web-sidebar-icon{color:var(--brand);opacity:1}.web-sidebar-icon{width:16px;height:16px;flex-shrink:0;display:block;color:var(--text-secondary);opacity:.8;transition:opacity var(--transition-speed)}.web-sidebar-item:hover .web-sidebar-icon{opacity:1;color:var(--text-body)}.web-sidebar-label{flex:1;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--transition-speed),width var(--transition-speed)}.web-sidebar-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.web-sidebar.collapsed .web-sidebar-label{opacity:0;width:0;overflow:hidden}.web-sidebar.collapsed .web-sidebar-badge{position:absolute;top:2px;right:4px;min-width:14px;height:14px;padding:0 3px;font-size:9px;border-radius:7px;z-index:1}.web-sidebar.collapsed .web-sidebar-item{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;padding:7px 0!important;margin:1px 4px 1px 6px!important;width:calc(100% - 10px)!important;gap:0!important;overflow:visible;border-left-color:transparent!important}.web-sidebar.collapsed .web-sidebar-item.active{background:var(--brand-light);border-radius:var(--radius-btn)}.web-sidebar.collapsed .web-sidebar-icon{margin:0 auto;flex-shrink:0;display:block}.web-sidebar-divider{height:1px;background:var(--border);margin:6px 10px}.web-sidebar-footer{border-top:1px solid var(--border);padding:6px 8px;flex-shrink:0;display:flex;flex-direction:column;gap:2px;position:relative;z-index:101;background:var(--bg-card)}.web-sidebar-user-item{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:var(--radius-btn);cursor:pointer;transition:background var(--transition-speed);white-space:nowrap;overflow:hidden;position:relative;border:none;background:transparent;width:100%;text-align:left}.web-sidebar-user-item:hover{background:var(--bg-hover)}.web-sidebar-user-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.web-sidebar-user-info{display:flex;flex-direction:column;overflow:hidden;flex:1;min-width:0}.web-sidebar-user-name{font-size:12px;font-weight:600;color:var(--text-body);overflow:hidden;text-overflow:ellipsis;transition:opacity var(--transition-speed)}.web-sidebar-user-role{font-size:10px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis}.web-sidebar.collapsed .web-sidebar-user-name,.web-sidebar.collapsed .web-sidebar-user-role{opacity:0;width:0}.web-sidebar.collapsed .web-sidebar-user-item{justify-content:center;padding:7px 0;overflow:visible}.web-sidebar.collapsed .web-sidebar-user-info{display:none}.web-sidebar-user-menu{position:fixed;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-dropdown);min-width:140px;padding:4px 0;z-index:10000}.web-sidebar-user-menu-item{padding:8px 14px;font-size:13px;cursor:pointer;color:var(--text-body);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background var(--transition-speed)}.web-sidebar-user-menu-item:hover{background:var(--bg-hover);color:var(--brand)}.web-sidebar-notify-btn{position:relative}.web-sidebar-tooltip{position:fixed;background:var(--text-title);color:#fff;font-size:12px;padding:5px 10px;border-radius:var(--radius-tag);z-index:10001;pointer-events:none;transform:translateY(-50%);white-space:nowrap;box-shadow:var(--shadow-card)}.file-server-page{height:100%;min-height:0;display:flex;flex-direction:column;padding:20px;box-sizing:border-box;background:#f6f8fb;color:#243247}.file-server-page-header,.file-server-file-toolbar,.file-server-panel-header,.file-server-modal-header,.file-server-modal-footer,.file-server-preview-toolbar,.file-server-dual-selectors{display:flex;align-items:center}.file-server-page-header{justify-content:space-between;gap:20px;margin-bottom:16px}.file-server-page-header h2{margin:0;font-size:22px;color:#1e293b}.file-server-page-header p{margin:5px 0 0;color:#64748b;font-size:13px}.file-server-project-select,.file-server-dual-selectors label{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569}.file-server-project-select select,.file-server-dual-selectors select{min-width:220px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:6px;color:#1e293b;background:#fff}.file-server-workspace{min-height:0;flex:1;display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);overflow:hidden;border:1px solid #dbe3ee;border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a0d}.file-server-tree-panel{display:flex;min-height:0;flex-direction:column;border-right:1px solid #dbe3ee;background:#fbfcfe}.file-server-panel-header{justify-content:space-between;min-height:45px;padding:0 12px;border-bottom:1px solid #e5eaf1;font-size:13px;font-weight:600}.file-server-panel-header button,.file-server-toolbar-actions button,.file-server-row-actions button,.file-server-preview-toolbar button,.file-server-dual-selectors button,.file-server-modal-footer button{padding:6px 10px;border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#334155;cursor:pointer;font-size:12px}.file-server-panel-header button,.file-server-toolbar-actions button:last-of-type,.file-server-modal-footer .primary{border-color:#2563eb;background:#2563eb;color:#fff}.file-server-panel-header button:hover,.file-server-toolbar-actions button:hover,.file-server-row-actions button:hover,.file-server-preview-toolbar button:hover,.file-server-dual-selectors button:hover,.file-server-modal-footer button:hover{filter:brightness(.96)}.file-server-panel-header button:disabled,.file-server-toolbar-actions button:disabled,.file-server-modal-footer button:disabled{cursor:not-allowed;opacity:.55}.file-server-tree-content{min-height:0;flex:1;overflow:auto;padding:8px 0}.file-server-tree-node{display:flex;align-items:center;min-height:30px;padding-right:10px;cursor:pointer;font-size:13px;white-space:nowrap;-webkit-user-select:none;user-select:none}.file-server-tree-node:hover{background:#edf4ff}.file-server-tree-node.active{background:#dbeafe;color:#1d4ed8}.file-server-tree-toggle{width:20px;min-width:20px;padding:0;border:0;color:#64748b;background:transparent;cursor:pointer}.file-server-folder-icon{margin-right:6px;font-size:15px}.file-server-tree-message{padding:18px 14px;color:#94a3b8;font-size:13px;line-height:1.6}.file-server-file-panel{display:flex;min-width:0;min-height:0;flex-direction:column}.file-server-file-toolbar{min-height:45px;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid #e5eaf1}.file-server-breadcrumb{min-width:0;overflow:hidden;color:#64748b;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.file-server-breadcrumb b{margin:0 7px;color:#94a3b8}.file-server-breadcrumb strong{color:#334155;font-weight:600}.file-server-toolbar-actions{display:flex;flex-shrink:0;gap:8px}.file-server-file-list{min-height:0;flex:1;overflow:auto}.file-server-file-list.drop-enabled{outline-offset:-3px}.file-server-file-list.drop-enabled:has(input:focus){outline:2px dashed #60a5fa}.file-server-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px}.file-server-table th,.file-server-table td{padding:11px 12px;border-bottom:1px solid #eef2f6;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.file-server-table th{color:#64748b;background:#f8fafc;font-size:12px;font-weight:600}.file-server-table th:first-child{width:35%}.file-server-table th:nth-child(2){width:10%}.file-server-table th:nth-child(3){width:14%}.file-server-table th:nth-child(4){width:20%}.file-server-table tr:hover{background:#f8fbff}.file-server-filename{color:#1e40af;cursor:pointer}.file-server-row-actions{display:flex;gap:5px}.file-server-row-actions .danger,.file-server-context-menu .danger{color:#dc2626}.file-server-empty,.file-server-empty-page{display:grid;min-height:180px;place-items:center;padding:20px;color:#94a3b8;text-align:center;font-size:13px}.file-server-empty-page{flex:1;border:1px dashed #cbd5e1;border-radius:8px;background:#fff}.file-server-context-menu{position:fixed;z-index:1100;min-width:145px;overflow:hidden;border:1px solid #d7dee8;border-radius:6px;background:#fff;box-shadow:0 8px 24px #0f172a2e}.file-server-context-menu button{display:block;width:100%;padding:9px 12px;border:0;background:#fff;text-align:left;cursor:pointer;font-size:13px}.file-server-context-menu button:hover{background:#eff6ff}.file-server-modal-overlay{position:fixed;z-index:1200;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:8px;background:#0f172a85}.file-server-preview-modal,.file-server-dual-modal,.file-server-visibility-modal{display:flex;max-height:calc(100vh - 16px);flex-direction:column;overflow:hidden;border-radius:9px;background:#fff;box-shadow:0 18px 50px #0f172a52}.file-server-preview-modal{width:min(1400px,98vw);height:calc(100vh - 16px)}.file-server-dual-modal{width:calc(100vw - 16px);height:calc(100vh - 16px)}.file-server-visibility-modal{width:min(520px,94vw)}.file-server-modal-header{min-height:40px;justify-content:space-between;padding:0 12px;border-bottom:1px solid #e2e8f0;color:#1e293b}.file-server-modal-header button{border:0;background:transparent;color:#64748b;cursor:pointer;font-size:24px;line-height:1}.file-server-preview{display:flex;min-height:0;flex:1;flex-direction:column;position:relative}.file-server-preview-toolbar{flex-shrink:0;gap:7px;padding:4px 8px;border-bottom:1px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:12px}.file-server-preview-toolbar button.active{border-color:#2563eb;background:#dbeafe;color:#1d4ed8}.file-server-preview-canvas{min-height:0;flex:1;overflow:auto;padding:0;background:#eef2f7}.file-server-preview-loading,.file-server-preview-error,.file-server-preview-unsupported{padding:16px;color:#64748b;text-align:center;font-size:13px}.file-server-preview-error{color:#dc2626}.file-server-preview .office-preview-docx-wrapper,.file-server-preview .office-preview-xlsx-wrapper,.file-server-preview .office-preview-pptx-wrapper{min-height:100%;padding:0;background:#fff}.file-server-preview .office-html-iframe{min-height:calc(100vh - 80px)!important;background:#fff}.file-server-preview .pdf-pages-container{display:flex;align-items:center;flex-direction:column;gap:10px}.file-server-preview .pdf-page{box-shadow:0 1px 8px #0f172a38;background:#fff}.file-server-preview ins{color:#00f!important;text-decoration:underline!important;text-decoration-color:#00f!important}.file-server-preview del{color:#cf222e!important;text-decoration:line-through!important;text-decoration-color:#cf222e!important}.file-server-preview section.docx-preview{margin:0!important;padding:10px 20px!important;width:100%!important;min-height:auto!important;border:none!important;box-shadow:none!important;background:#fff!important;box-sizing:border-box!important}.file-server-preview section.docx-preview article{padding:4px 8px!important;margin:0!important;min-height:0!important}.file-server-dual-selectors{flex-shrink:0;justify-content:center;gap:12px;padding:10px 16px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.file-server-dual-selectors label{flex:1;min-width:0}.file-server-dual-selectors select{width:100%;min-width:0}.file-server-dual-content{display:grid;min-height:0;flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.file-server-dual-content>div{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden}.file-server-dual-content>div+div{border-left:1px solid #cbd5e1}.file-server-dual-content .file-server-preview-canvas{padding:0}.file-server-visibility-tip{margin:14px 16px 8px;color:#64748b;font-size:12px;line-height:1.5}.file-server-user-list{min-height:100px;max-height:400px;overflow:auto;padding:0 16px 12px}.file-server-user-row{display:flex;align-items:center;gap:8px;padding:9px 4px;border-bottom:1px solid #f1f5f9;cursor:pointer;font-size:13px}.file-server-user-row small{color:#94a3b8}.file-server-modal-footer{justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #e2e8f0}@media (max-width: 840px){.file-server-page{padding:12px}.file-server-page-header{align-items:flex-start;flex-direction:column}.file-server-project-select{width:100%}.file-server-project-select select{flex:1}.file-server-workspace{grid-template-columns:minmax(165px,36%) minmax(0,1fr)}.file-server-table th:nth-child(3),.file-server-table td:nth-child(3),.file-server-table th:nth-child(4),.file-server-table td:nth-child(4){display:none}.file-server-table th:first-child{width:55%}.file-server-dual-selectors{align-items:stretch;flex-direction:column}.file-server-dual-content{grid-template-columns:1fr;overflow:auto}.file-server-dual-content>div{min-height:420px}.file-server-dual-content>div+div{border-top:1px solid #cbd5e1;border-left:0}}.batch-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:10000}.batch-confirm-dialog{background:var(--bg-card);pointer-events:auto;border-radius:8px;width:560px;max-width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-modal)}.batch-confirm-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border)}.batch-confirm-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-body)}.batch-confirm-content{padding:16px;overflow-y:auto;flex:1}.batch-confirm-content .form-group{margin-bottom:16px}.batch-confirm-content .form-group label{display:block;margin-bottom:6px;font-size:13px;color:var(--text-body);font-weight:500}.batch-confirm-content .radio-group{display:flex;flex-direction:column;gap:8px}.batch-confirm-content .radio-group label{display:flex;align-items:center;gap:6px;font-weight:400;cursor:pointer;font-size:13px;margin-bottom:0}.batch-confirm-content .radio-group input[type=radio]{margin:0}.batch-confirm-content .form-input{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px;box-sizing:border-box}.batch-confirm-content .form-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #2196f31a}.batch-confirm-content .form-input.error{border-color:var(--danger)}.error-message{margin-top:6px;color:var(--danger);font-size:12px}.notice-box{background:var(--brand-light);border:1px solid var(--brand-light);border-radius:4px;padding:12px 16px;margin-top:24px}.notice-box strong{color:#0050b3;display:block;margin-bottom:8px}.notice-box ul{margin:0;padding-left:20px}.notice-box li{color:#0050b3;font-size:13px;line-height:1.8}.batch-confirm-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border);background:var(--bg-section)}.btn-cancel,.btn-confirm{padding:8px 24px;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s;border:none;font-weight:500}.btn-cancel{background:var(--bg-card);border:1px solid var(--border);color:var(--text-body)}.btn-cancel:hover{background:var(--bg-section);border-color:var(--brand);color:var(--brand)}.btn-confirm{background:var(--brand);color:#fff}.btn-confirm:hover{background:var(--brand)}.btn-confirm:active{background:#096dd9}*{margin:0;padding:0;box-sizing:border-box}body{font-size:13px;line-height:1.6;color:var(--text-body);background:var(--bg-page-gradient);overflow:hidden;height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--text-title)}.app{--sidebar-width: 200px;--sidebar-collapsed-width: 52px;--sidebar-transition: .2s ease;height:100vh;display:grid;grid-template-columns:var(--sidebar-width) 1fr;overflow:hidden;transition:grid-template-columns var(--sidebar-transition);background:var(--bg-page-gradient)}.app.sidebar-collapsed{grid-template-columns:var(--sidebar-collapsed-width) 1fr}.app-main{display:flex;flex-direction:column;overflow:hidden;min-width:0;min-height:0;background:transparent}.app-header{background:var(--bg-card);color:var(--text-body);padding:0 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;position:relative;overflow:visible;height:52px;flex-shrink:0}.app-brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;flex-shrink:0}.app-brand-row1{display:flex;align-items:center;gap:6px;line-height:1}.header-logo{width:20px;height:20px;border-radius:4px;object-fit:cover;flex-shrink:0}.brand-name{font-size:17px;font-weight:700;font-family:Times New Roman,serif!important;letter-spacing:.5px;color:var(--text-title);white-space:nowrap;line-height:1}.brand-subtitle{font-size:11px;font-weight:500;color:var(--text-secondary);white-space:nowrap;letter-spacing:.3px;line-height:1;margin-top:3px;padding-left:26px}.app-header h1{font-size:14px;font-weight:700;color:var(--text-title);margin:0;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:2px;margin-left:24px;flex:1}.nav-item{position:relative;padding:6px 14px;cursor:pointer;font-size:13px;font-weight:500;transition:all .15s;border-radius:var(--radius-btn);border:none;background:transparent;color:var(--text-secondary);text-decoration:none}.nav-item:hover{background:var(--bg-hover);color:var(--text-body)}.nav-item.active{background:var(--brand-light);color:var(--brand);font-weight:600}.nav-dropdown{position:relative}.nav-item-text{-webkit-user-select:none;user-select:none}.nav-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-dropdown);min-width:130px;overflow:hidden;z-index:1000}.nav-dropdown-item{padding:9px 16px;font-size:13px;cursor:pointer;color:var(--text-body);transition:background .15s}.nav-dropdown-item:hover{background:var(--bg-hover)}.header-right{display:flex;align-items:center;gap:8px}.notification-icon{font-size:18px;cursor:pointer;padding:7px;border-radius:50%;transition:all .2s;position:relative;color:var(--text-secondary)}.notification-icon:hover{background:var(--bg-hover);color:var(--text-body)}.notification-badge{position:absolute;top:3px;right:3px;background:var(--danger);color:#fff;font-size:9px;font-weight:700;padding:1px 4px;border-radius:8px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center}.user-menu-wrapper{position:relative;display:flex;align-items:center}.user-name{color:var(--text-body);font-size:13px;font-weight:500;padding:6px 12px;border-radius:var(--radius-btn);cursor:pointer;transition:background .15s;background:transparent;border:1px solid transparent;min-width:80px;text-align:center;white-space:nowrap}.user-menu-wrapper:hover .user-name{background:var(--bg-hover);border-color:var(--border)}.user-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-dropdown);z-index:10000;overflow:hidden;min-width:130px;animation:menuSlideIn .18s ease-out}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.user-menu-item{padding:9px 16px;color:var(--text-body);font-size:13px;cursor:pointer;transition:background .15s}.user-menu-item:hover{background:var(--bg-hover);color:var(--brand)}.user-role{font-size:11px;background:var(--brand-light);color:var(--brand);padding:2px 6px;border-radius:var(--radius-tag)}.btn-logout{background:transparent;border:1px solid var(--border);color:var(--text-body);padding:4px 12px;border-radius:var(--radius-btn);cursor:pointer;font-size:12px;transition:all .15s}.btn-logout:hover{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-page-gradient)}.loading-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-loading p{margin-top:14px;color:var(--text-secondary);font-size:14px}.app-content{flex:1;padding:0;width:100%;background:transparent;overflow:hidden;display:flex;flex-direction:column}.tabs-bar{display:flex;align-items:flex-end;background:var(--bg-card);border-bottom:1px solid var(--border);padding:0 0 0 8px;overflow:hidden;flex-wrap:nowrap;flex-shrink:0}.tab{display:flex;align-items:center;padding:6px 10px 5px;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap;color:var(--text-secondary);font-size:12px;flex-shrink:1;min-width:40px;overflow:hidden;border-right:1px solid var(--border);background:var(--bg-section);border-radius:6px 6px 0 0;margin-right:2px;margin-top:4px}.tab.tab-level-1{padding:6px 12px 5px;font-size:12px;font-weight:500;background:var(--bg-section)}.tab.tab-level-2{padding:5px 10px 4px;font-size:11.5px;background:var(--bg-hover)}.tab.tab-level-3{padding:4px 8px 3px;font-size:11px;background:var(--bg-page)}.tab:hover{background:var(--border);color:var(--text-body)}.tab.active{background:var(--bg-card);color:var(--brand);border-bottom-color:var(--brand);border-right-color:var(--border);font-weight:600}.tab:last-child{border-right:none;margin-right:0}.tab-group-divider{width:1px;height:18px;background:var(--border-strong);align-self:center;flex-shrink:0;margin:0 3px}.tab-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-right:5px}.tab-file-sep,.tab-group-sep{color:var(--text-placeholder);font-size:12px;padding:0 2px;align-self:center;flex-shrink:0;line-height:1}.tab-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-close{margin-left:6px;width:14px;height:14px;padding:0;border-radius:50%;background:transparent;color:var(--text-placeholder);font-size:13px;line-height:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;cursor:pointer;transition:background .15s}.tab-close:hover{background:var(--border-strong);color:var(--text-body)}.editor-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.ribbon-menu{background:var(--bg-card);border-bottom:1px solid var(--border);flex-shrink:0;z-index:100;overflow-x:auto;overflow-y:hidden}.ribbon-row{padding:3px 8px;border-bottom:1px solid var(--border);display:flex;align-items:center;min-width:fit-content}.ribbon-row:last-child{border-bottom:none}.ribbon-group{display:flex;gap:2px;align-items:center}.ribbon-separator{width:1px;height:16px;background:var(--border-strong);margin:0 3px}.ribbon-placeholder{color:var(--text-placeholder);font-size:11px;font-style:italic}.ribbon-btn{padding:2px 6px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-tag);cursor:pointer;font-size:11px;color:var(--text-body);transition:all .12s;min-height:22px;line-height:1.4;white-space:nowrap;flex-shrink:0}.ribbon-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.ribbon-btn:active{background:var(--brand-hover)}.ribbon-btn.ribbon-btn-active{background:var(--brand);color:#fff;border-color:var(--brand)}.format-btn{font-family:Times New Roman,serif!important;font-size:12px!important;min-width:24px!important;padding:2px 4px!important;text-align:center}.format-btn:hover{background:var(--brand-light);border-color:var(--brand-border);color:var(--brand)}.format-btn.active{background:var(--brand);color:#fff;border-color:var(--brand-hover)}.space-visible{vertical-align:baseline}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-overlay.nonblocking{background:transparent!important;pointer-events:none!important}.modal-overlay.nonblocking>.modal-content,.modal-overlay.nonblocking>*{pointer-events:auto!important}.modal-content{background:var(--bg-card);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal);width:440px;max-width:92vw}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 14px;border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none}.modal-header h3{margin:0;font-size:15px;font-weight:600;color:var(--text-title)}.modal-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary);padding:2px;line-height:1;border-radius:var(--radius-tag);transition:all .15s}.modal-close:hover{color:var(--text-body);background:var(--bg-hover)}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}.close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;border-radius:var(--radius-tag);font-size:18px;line-height:1;color:var(--text-placeholder);cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}.close-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-title)}.close-btn:disabled{opacity:.4;cursor:not-allowed}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:13px;color:var(--text-body);font-weight:500}.form-input{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-input);font-size:13px;box-sizing:border-box;background:var(--bg-card);color:var(--text-body);transition:border-color .15s,box-shadow .15s}.form-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.form-input::placeholder{color:var(--text-placeholder)}.form-hint{margin:5px 0 0;font-size:12px;color:var(--text-secondary)}.radio-group{display:flex;flex-direction:column;gap:8px}.radio-group label{display:flex;align-items:center;gap:6px;font-weight:400;cursor:pointer}.radio-group input[type=radio]{margin:0;accent-color:var(--brand)}.btn{padding:7px 16px;border-radius:var(--radius-btn);font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .15s;display:inline-flex;align-items:center;gap:5px;line-height:1.5}.btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.btn-secondary{background:var(--bg-card);color:var(--text-body);border-color:var(--border)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-danger{background:var(--bg-card);color:var(--danger);border-color:var(--danger-border)}.btn-danger:hover{background:var(--danger-bg);border-color:var(--danger)}button{cursor:pointer;border:none;border-radius:var(--radius-btn);font-size:13px;font-weight:500;transition:all .15s}button:active{transform:scale(.98)}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-input);padding:7px 10px;font-size:13px;transition:border-color .15s;background:var(--bg-card);color:var(--text-body)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}.card{background:var(--bg-card);border-radius:var(--radius-card);border:1px solid var(--border);padding:16px}.status-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--radius-tag);font-size:12px;font-weight:500;border:1px solid transparent}.status-active,.status-new{background:var(--brand-light);color:var(--brand);border-color:var(--brand-border)}.status-translated{background:var(--success-bg);color:var(--success);border-color:var(--success-border)}.status-approved{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.status-locked{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state p{margin-bottom:16px;font-size:15px}.loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary)}.loading:before{content:"";width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite;margin-right:10px}.error-message{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);padding:10px 14px;border-radius:var(--radius-input);margin-bottom:12px;font-size:13px}.success-message{background:var(--success-bg);color:var(--success);border:1px solid var(--success-border);padding:10px 14px;border-radius:var(--radius-input);margin-bottom:12px;font-size:13px}.home-page{flex:1;display:flex;flex-direction:column;background:var(--bg-page-gradient);overflow-y:auto}.home-content{text-align:center;padding:60px;background:var(--bg-card);border-radius:var(--radius-card);border:1px solid var(--border)}.home-content h2{font-size:22px;color:var(--text-title);margin-bottom:14px}.home-content p{font-size:14px;color:var(--text-secondary)}.editor-header{padding:8px 16px;background:var(--bg-card);border-bottom:1px solid var(--border);flex-shrink:0}.file-info{font-size:12px;color:var(--text-secondary)}@media (max-width: 768px){.app-content{padding:10px}.app-header{padding:0 14px}}:root{--brand: #2563EB;--brand-hover: #1D4ED8;--brand-light: #EFF6FF;--brand-border: #BFDBFE;--bg-page: #FAF8F5;--bg-page-gradient: radial-gradient(900px 520px at -10% -20%, rgba(251, 191, 160, .16), transparent 60%), radial-gradient(840px 560px at 110% 0%, rgba(221, 214, 254, .14), transparent 58%), linear-gradient(135deg, #FFFCF8 0%, #FAF6F0 50%, #FCFAF7 100%);--bg-card: #FFFFFF;--bg-section: #F5F7FA;--bg-hover: #F1F5F9;--border: #E2E8F0;--border-strong: #CBD5E1;--border-disabled:#EDF2F7;--text-title: #0F172A;--text-body: var(--text-body);--text-secondary: #64748B;--text-placeholder:#94A3B8;--text-disabled: #CBD5E1;--success: #059669;--success-bg: #ECFDF5;--success-border: #A7F3D0;--warning: #D97706;--warning-bg: #FFFBEB;--warning-border: #FDE68A;--danger: #DC2626;--danger-bg: #FEF2F2;--danger-border: #FECACA;--info: var(--text-secondary);--info-bg: #F8FAFC;--radius-card: 10px;--radius-modal: 12px;--radius-input: 8px;--radius-btn: 6px;--radius-tag: 4px;--shadow-card: 0 1px 3px rgba(15,23,42,.06);--shadow-modal: 0 8px 32px rgba(15,23,42,.12), 0 2px 8px rgba(15,23,42,.06);--shadow-dropdown:0 4px 16px rgba(15,23,42,.1);--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "寰蒋闆呴粦", sans-serif;--font-serif: "Times New Roman", SimSun, "瀹嬩綋", serif;--font-mono: "Consolas", "Monaco", "Courier New", monospace}html,body{margin:0;padding:0;width:100%;height:100%}#root{width:100%;height:100%}body{font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-body);background:var(--bg-page-gradient)}*{font-family:var(--font-ui)}code,pre,.monospace{font-family:var(--font-mono)!important}.brand-name,.web-sidebar-brand-name{font-family:var(--font-serif)!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.btn-primary,.btn-submit,.btn-confirm,.add-segment-btn,.file-upload-button{background:var(--brand)!important;color:#fff!important;border:1px solid var(--brand)!important;border-radius:var(--radius-btn)!important;cursor:pointer;transition:background .2s,box-shadow .15s}.btn-primary:hover:not(:disabled),.btn-submit:hover:not(:disabled),.btn-confirm:hover:not(:disabled),.add-segment-btn:hover:not(:disabled),.file-upload-button:hover:not(:disabled){background:var(--brand-hover)!important;border-color:var(--brand-hover)!important}.btn-primary:disabled,.btn-submit:disabled,.btn-confirm:disabled{opacity:.55;cursor:not-allowed}.btn-secondary,.btn-cancel,.cancel-btn{background:var(--bg-card)!important;color:var(--text-body)!important;border:1px solid var(--border)!important;border-radius:var(--radius-btn)!important;cursor:pointer;transition:background .2s}.btn-secondary:hover:not(:disabled),.btn-cancel:hover:not(:disabled),.cancel-btn:hover:not(:disabled){background:var(--bg-hover)!important}.btn-danger,.btn-delete{background:var(--bg-card)!important;color:var(--danger)!important;border:1px solid var(--danger-border)!important;border-radius:var(--radius-btn)!important;cursor:pointer;transition:background .2s}.btn-danger:hover:not(:disabled),.btn-delete:hover:not(:disabled){background:var(--danger-bg)!important;border-color:var(--danger)!important}.modal-overlay,.modal-backdrop,[class*=-overlay]:not(.notification-panel-overlay):not(.project-requirements-modal-overlay):not(.pr-template-form-overlay){background:#0f172a73!important}.modal-content,.modal-panel,.dialog-panel,[class*=-modal]:not([class*=overlay]):not([class*=body]):not([class*=header]):not([class*=footer]):not([class*=section]):not([class*=btn]):not([class*=input]):not([class*=table]):not([class*=item]):not([class*=row]):not([class*=col]):not(.project-requirements-modal-container):not(.project-requirements-modal-wrapper){background:var(--bg-card)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea,select{border:1px solid var(--border);border-radius:var(--radius-input);background:var(--bg-card);color:var(--text-body);transition:border-color .2s,box-shadow .2s}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus,textarea:focus,select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1a}input::placeholder,textarea::placeholder{color:var(--text-placeholder)}.badge,.status-badge,.tag{border-radius:var(--radius-tag);font-size:12px;padding:2px 8px;font-weight:500}.badge-success,.status-success{background:var(--success-bg);color:var(--success);border:1px solid var(--success-border)}.badge-warning,.status-warning{background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning-border)}.badge-danger,.status-danger{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border)}.badge-info,.status-info{background:var(--info-bg);color:var(--info);border:1px solid var(--border)}
