.global-tab{display:flex;align-items:center;padding:0 var(--spacing-2);background:var(--container-color, #fff);overflow-x:auto;overflow-y:hidden;white-space:nowrap;gap:var(--spacing-1);flex-shrink:0;border-bottom:1px solid var(--color-border, #f0f0f0)}.global-tab::-webkit-scrollbar{height:0}.global-tab__item{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:0 var(--spacing-3);font-size:var(--font-size-sm);cursor:pointer;border:1px solid transparent;border-radius:var(--radius-sm);transition:all .2s;flex-shrink:0;color:var(--base-text-color, #333);background:transparent;height:calc(100% - var(--spacing-2));line-height:1}.global-tab__item:hover{background:#0000000a}.global-tab__item--active{background:var(--container-color, #fff);border-color:var(--primary-color, #5B9A8B);font-weight:500}.global-tab--chrome .global-tab__item{border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:none}.global-tab--chrome .global-tab__item--active{border-color:var(--primary-color, #5B9A8B);position:relative}.global-tab--chrome .global-tab__item--active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--container-color, #fff)}.global-tab--button .global-tab__item{border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.1)}.global-tab--button .global-tab__item--active{border-color:var(--primary-color, #5B9A8B);background:#5b9a8b14}.global-tab--slider .global-tab__item{border-radius:var(--radius-sm);border:none}.global-tab--slider .global-tab__item--active{background:var(--primary-color, #5B9A8B);color:var(--color-on-primary)}.global-tab__item-label{max-width:120px;overflow:hidden;text-overflow:ellipsis}.global-tab__item-close{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:var(--radius-full);font-size:var(--font-size-xs);transition:all .2s;line-height:1}.global-tab__item-close:hover{background:#0000001f;color:var(--color-error)}html.dark .global-tab__item:hover{background:#ffffff14}html.dark .global-tab--button .global-tab__item{border-color:#ffffff1f}html.dark .global-tab--button .global-tab__item--active{background:#5b9a8b33}html.dark .global-tab__item-close:hover{background:#ffffff26}.base-layout{transition:all .2s ease;height:100vh;overflow:hidden}.base-layout .ant-layout{height:100%;overflow:hidden}.base-layout .ant-layout>.ant-layout{flex-direction:column;gap:0}.base-layout .ant-layout-header{flex-shrink:0;height:auto!important;min-height:auto}.base-layout .ant-layout-sider{transition:all .2s ease;height:100%;overflow:auto}.base-layout .ant-layout-sider .ant-menu{transition:all .2s ease}.base-layout__content{flex:1;min-height:0;padding:10px 16px 16px!important;overflow:auto}html.dark .base-layout__content{background:var(--layout-color, #141414)}html.dark .base-layout,html.dark .ant-layout{background:#141414}.admin-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:linear-gradient(135deg,var(--color-background) 0%,var(--color-background-alt) 50%,var(--color-secondary-light) 100%)}.top-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-6);height:var(--header-height);background:var(--color-surface-solid);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);box-shadow:0 2px 10px #2d8a6e0d;position:sticky;top:0;z-index:100}.top-header__logo{display:flex;align-items:center;gap:var(--spacing-2);white-space:nowrap;flex-shrink:0;padding:0 var(--spacing-5)}.top-header__logo-icon{font-size:1.5rem}.top-header__logo-text{font-size:var(--font-size-lg);font-weight:700;white-space:nowrap;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.top-header__nav{display:flex;align-items:center;gap:var(--spacing-1);padding:0 var(--spacing-4)}.top-nav-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.top-nav-item:hover{background:var(--color-primary-50);color:var(--color-primary)}.top-nav-item.active{background:var(--color-primary-100);color:var(--color-primary);font-weight:600}.top-nav-item__icon{font-size:1rem}.top-nav-item__label{font-size:var(--font-size-sm)}.top-header__right{display:flex;align-items:center;gap:var(--spacing-4);margin-left:auto;padding-left:var(--spacing-6)}.top-header__user{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.admin-body{display:flex;flex:1;min-height:0;overflow:hidden}.sidebar{width:200px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--glass-border);box-shadow:4px 0 20px #2d8a6e0d;display:flex;flex-direction:column;transition:width var(--transition-normal);position:relative;z-index:10}.sidebar__nav{flex:1;padding:var(--spacing-1) 0;overflow-y:auto}.nav-item__child{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-base);line-height:2;transition:all var(--transition-fast);border-left:3px solid transparent;min-height:44px}.nav-item__child-icon{font-size:1rem;width:1.2rem;text-align:center;flex-shrink:0}.nav-item__child:hover{color:var(--color-primary);background:var(--color-primary-50)}.nav-item__child.active{color:var(--color-primary);background:var(--color-primary-100);font-weight:600;border-left-color:var(--color-primary)}.nav-item__parent{cursor:pointer;justify-content:flex-start}.nav-item__parent .nav-item__child-label{flex:1;text-align:left}.nav-item__parent:hover{background:var(--color-primary-50)}.nav-item__child-label{flex:1}.nav-item__child-arrow{font-size:.7rem;color:var(--color-text-light);margin-left:auto}.nav-item__sub{overflow:hidden}.nav-item__sub-item{font-size:var(--font-size-sm);padding-left:var(--spacing-8);min-height:40px;line-height:2;position:relative}.nav-item__sub-item:before{content:"";position:absolute;left:var(--spacing-4);top:50%;transform:translateY(-50%);width:4px;height:4px;border-radius:50%;background:var(--color-text-light);transition:all var(--transition-fast)}.nav-item__sub-item:hover:before{background:var(--color-primary)}.nav-item__sub-item.active:before{background:var(--color-primary)}.main-content{flex:1;display:flex;flex-direction:column;overflow:auto;min-height:0}.main-content__header{padding:var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--color-border);background:var(--glass-bg)}.main-content__title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text)}.main-content__body{padding:0;flex:1;min-height:0;display:flex;flex-direction:column}.tab-bar{display:flex;align-items:center;gap:0;background:var(--glass-bg);border-bottom:none;padding:0;overflow-x:auto;flex-shrink:0;margin-bottom:0;height:auto;min-height:0}.tab-item{display:flex;align-items:center;gap:var(--spacing-2);padding:2px var(--spacing-3);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);border-bottom:2px solid transparent;white-space:nowrap;height:auto;min-height:0}.tab-item:hover{background:var(--color-primary-50);color:var(--color-primary)}.tab-item.active{color:var(--color-primary);font-weight:600;border-bottom-color:var(--color-primary);background:var(--color-primary-50)}.tab-item__close{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:1rem;line-height:1;color:var(--color-text-light);transition:all var(--transition-fast)}.tab-item__close:hover{background:var(--color-error-bg-soft);color:var(--color-error)}.page-container{display:flex;flex-direction:column;gap:4px;height:100%;overflow:auto;margin:0!important;padding-top:0!important}.toolbar{display:flex;align-items:center;gap:12px;padding:6px 12px;background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);flex-wrap:wrap;flex-shrink:0}.toolbar__left{display:flex;align-items:center;gap:12px}.toolbar__right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar__right .form-select{width:130px;min-width:130px}.toolbar__right .form-input{width:120px;min-width:120px}.toolbar__right .form-input[type=date],.toolbar__right .form-input[type=datetime-local]{width:170px;min-width:170px}.el-date-picker{position:relative;display:inline-block}.el-date-picker__input{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);height:var(--input-height-sm);padding:0 8px;cursor:pointer;background:var(--color-surface-solid);transition:border-color .2s}.el-date-picker__input:hover{border-color:var(--color-text-light)}.el-date-picker__input:focus-within,.el-date-picker__input--active{border-color:var(--color-primary)}.el-date-picker__inner{border:none;outline:none;background:transparent;font-size:var(--font-size-xs);color:var(--color-text-secondary);width:108px;cursor:pointer;text-align:center;padding:0;line-height:32px}.el-date-picker__inner::placeholder{color:var(--color-text-light)}.el-date-picker__sep{color:var(--color-text-secondary);font-size:var(--font-size-xs);margin:0 2px;line-height:1}.el-date-picker__icon{display:flex;align-items:center;color:var(--color-text-light);margin-left:4px}.table-wrapper{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm);overflow:auto;flex:1;min-height:0}.admin-table{width:100%;border-collapse:collapse}.admin-table thead{background:var(--color-primary-50)}.admin-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:2px solid var(--color-primary-100)}.admin-table td{padding:12px 16px;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text)}.admin-table tbody tr{transition:background var(--transition-fast)}.admin-table tbody tr:hover{background:var(--color-primary-50)}.admin-table__actions,.table-actions{display:flex;gap:6px 8px;flex-wrap:wrap;align-items:center;min-width:160px;max-width:260px}.table-actions--nowrap{flex-wrap:nowrap;max-width:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-overlay-mask);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-4)}.modal{background:var(--color-surface-solid);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);border:1px solid var(--glass-border);width:100%;max-width:600px;max-height:90vh;overflow-y:auto}.modal--lg{max-width:800px}.modal--sm{max-width:420px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.modal__title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text)}.modal__close{background:none;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-1)}.modal__close:hover{color:var(--color-text)}.modal__body{padding:20px;overflow:visible}.modal__footer{display:flex;justify-content:flex-end;gap:12px;padding:12px 20px;border-top:1px solid var(--color-border)}.form-section{margin-bottom:20px}.form-section__title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.terminal-form-modal .ant-form-item{margin-bottom:12px}.terminal-form-modal .ant-form-item-extra{margin-top:2px;line-height:1.4;font-size:var(--font-size-xs)}.terminal-form-modal .form-section{margin-bottom:12px}.terminal-form-modal .form-section__title{margin-bottom:8px;padding-bottom:4px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-row--5{grid-template-columns:repeat(5,1fr)}.form-row--3{grid-template-columns:repeat(3,1fr)}.form-row--4{grid-template-columns:repeat(4,1fr)}.form-row--dashed-top{border-top:1px dashed var(--color-border);padding-top:16px}.form-group{margin-bottom:16px}.field-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:4px;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);line-height:1;color:var(--color-text-secondary);cursor:help;vertical-align:middle}.field-tip:hover:after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);width:max-content;max-width:260px;padding:var(--spacing-2) var(--spacing-3);background:var(--color-text);color:var(--color-surface);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:400;line-height:1.5;text-align:left;white-space:normal;z-index:20}.field-inline{display:flex;align-items:center;gap:8px}.field-inline .mode-switch{flex-shrink:0}.field-inline__input{flex:1;min-width:0}.mode-switch{display:flex;gap:12px}.mode-switch__item{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}.mode-switch__item--active{color:var(--color-primary);font-weight:500}.input-suffix-wrap{display:flex;align-items:center;gap:6px;min-width:0}.input-suffix-wrap .form-input{flex:1;min-width:0}.input-suffix{flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap}.form-label{display:block;margin-bottom:6px;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:500}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pagination__info{margin-right:var(--spacing-2)}.pagination__btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:var(--input-height-sm);padding:0 var(--spacing-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.pagination__btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-50)}.pagination__btn--active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.pagination__btn--active:hover{background:var(--color-primary-dark);color:var(--color-on-primary)}.pagination__btn:disabled{opacity:.5;cursor:not-allowed}.pagination__jump{display:flex;align-items:center;gap:var(--spacing-1);margin-left:var(--spacing-2)}.pagination__jump-input{width:48px;height:var(--input-height-sm);text-align:center;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.auth-matrix{display:flex;flex-direction:column;gap:2px}.auth-matrix__section{display:flex;flex-direction:column}.auth-matrix__row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:var(--radius-md);transition:background .15s;min-height:40px}.auth-matrix__row:hover{background:#00000005}.auth-matrix__menu-label{display:flex;align-items:center;gap:8px;font-weight:500;font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;white-space:nowrap;min-width:120px}.auth-matrix__menu-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.auth-matrix__actions{display:flex;flex-wrap:wrap;gap:12px;margin-left:auto}.auth-matrix__action{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}.auth-matrix__action input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--color-primary)}.form-input{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);transition:all var(--transition-fast);height:var(--input-height-md);box-sizing:border-box}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-100);outline:none}.form-select{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);height:var(--input-height-md);box-sizing:border-box}.form-textarea{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);resize:vertical;min-height:60px}.form-value{padding:var(--spacing-2) 0;color:var(--color-text);font-size:var(--font-size-sm)}@media (max-width: 1200px){.form-row--5{grid-template-columns:repeat(3,1fr)}.form-row--4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.top-header__nav{overflow-x:auto;-webkit-overflow-scrolling:touch}.top-nav-item__label{display:none}.sidebar{position:fixed;left:-200px;top:56px;bottom:0;z-index:100}.sidebar.open{left:0}.form-row,.form-row--5{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.toolbar__left,.toolbar__right{width:auto}}.date-picker{position:relative;display:inline-block}.date-picker__input{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);height:36px;padding:0 10px;cursor:pointer;background:var(--color-surface-solid);transition:border-color .2s}.date-picker__input:hover{border-color:var(--color-text-light)}.date-picker__inner{border:none;outline:none;background:transparent;font-size:var(--font-size-sm);color:var(--color-text-secondary);width:100%;cursor:pointer;text-align:left;padding:0;line-height:36px}.date-picker__inner::placeholder{color:var(--color-text-light)}.date-picker__icon{display:flex;align-items:center;color:var(--color-text-light);margin-left:4px;flex-shrink:0}.date-picker__dropdown{background:var(--color-surface-solid);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 2px 12px #0000001a}.date-picker__dropdown--range{width:620px}.date-picker__dropdown--single{width:300px}.date-picker__content{display:flex}.date-picker__shortcuts{width:110px;border-right:1px solid var(--color-border);padding:6px 0;background:var(--color-surface-alt);flex-shrink:0}.date-picker__shortcut-btn{display:block;width:100%;padding:8px 16px;border:none;background:transparent;text-align:left;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.date-picker__shortcut-btn:hover{color:var(--color-primary);background:var(--color-primary-50)}.date-picker__panels{display:flex;flex:1;padding:12px;gap:16px}.date-picker__panel{flex:1;min-width:0}.date-picker__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;height:28px}.date-picker__header--single{margin-bottom:0;padding:12px 12px 8px;height:36px}.date-picker__header-title{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);text-align:center;flex:1}.date-picker__arrow{width:24px;height:24px;border:none;background:transparent;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s}.date-picker__arrow:hover{color:var(--color-primary)}.date-picker__weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.date-picker__weekdays--single{padding:0 12px}.date-picker__wd{text-align:center;font-size:var(--font-size-xs);color:var(--color-text-light);padding:var(--spacing-1) 0;font-weight:500}.date-picker__days{display:grid;grid-template-columns:repeat(7,1fr)}.date-picker__days--single{padding:0 12px 8px}.date-picker__cell{text-align:center;padding:0;font-size:var(--font-size-xs);cursor:pointer;border-radius:0;transition:all .1s;color:var(--color-text-secondary);width:32px;height:30px;display:flex;align-items:center;justify-content:center;margin:1px auto}.date-picker__cell:hover{color:var(--color-primary)}.date-picker__cell--empty{cursor:default}.date-picker__cell--empty:hover{color:var(--color-text-secondary)}.date-picker__cell--today{color:var(--color-primary);font-weight:700}.date-picker__cell--start{background:var(--color-primary)!important;color:var(--color-on-primary)!important;border-radius:15px 0 0 15px}.date-picker__cell--end{background:var(--color-primary)!important;color:var(--color-on-primary)!important;border-radius:0 15px 15px 0}.date-picker__cell--in-range{background:var(--color-primary-50, #e8f4f0)!important;color:var(--color-primary)!important;border-radius:0}.date-picker__cell--selected{background:var(--color-primary)!important;color:var(--color-on-primary)!important;border-radius:15px}.date-picker__time-bar{display:flex;align-items:center;justify-content:center;gap:24px;padding:8px 12px;border-top:1px solid var(--color-border);background:var(--color-surface-alt)}.date-picker__time-bar--single{gap:4px}.date-picker__time-group{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.date-picker__time-label{font-weight:500;color:var(--color-text-light);min-width:28px}.date-picker__time-sel{height:26px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);padding:0 2px;background:var(--color-surface-solid);cursor:pointer;color:var(--color-text-secondary);outline:none}.date-picker__time-sel:focus{border-color:var(--color-primary)}.date-picker__time-colon{color:var(--color-text-light);font-weight:500}.date-picker__footer{display:flex;justify-content:flex-end;gap:8px;padding:8px 12px;border-top:1px solid var(--color-border);background:var(--color-surface-alt)}.date-picker__footer--single{align-items:center;justify-content:space-between}.date-picker__footer-right{display:flex;gap:8px}.date-picker__btn{height:28px;padding:0 16px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;border:1px solid var(--color-border);transition:all .15s}.date-picker__btn--plain{background:var(--color-surface-solid);color:var(--color-text-secondary)}.date-picker__btn--plain:hover{color:var(--color-primary);border-color:var(--color-primary)}.date-picker__btn--primary{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.date-picker__btn--primary:hover{opacity:.85}.date-picker__btn--today{background:var(--color-surface-solid);color:var(--color-text-secondary);border-color:var(--color-border)}.date-picker__btn--today:hover{color:var(--color-primary);border-color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-weight:500;font-size:var(--font-size-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;border:none;height:var(--btn-height-md);white-space:nowrap;box-sizing:border-box;min-width:auto;width:auto;overflow:visible}.btn--sm{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);height:var(--btn-height-sm);min-width:auto;width:auto;overflow:visible}.btn--lg{padding:var(--spacing-3) var(--spacing-4);height:var(--btn-height-lg);font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-lg)}.btn--primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:var(--color-on-primary);box-shadow:var(--shadow-sm)}.btn--primary:hover{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary));box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--outline{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.btn--outline:hover{background:var(--color-primary-50)}.btn--secondary{background:var(--color-secondary-light);color:var(--color-primary-dark)}.btn--secondary:hover{background:var(--color-secondary)}.btn--danger{background-color:var(--color-error);color:var(--color-on-primary);border:1px solid var(--color-error);transition:all var(--transition-fast)}.btn--danger:hover{background-color:var(--color-error-dark);border-color:var(--color-error-dark);color:var(--color-on-primary)}.btn--block{width:100%}.header{position:sticky;top:0;z-index:100;padding:var(--spacing-4) 0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.header .container{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-8);max-width:1200px;margin:0 auto;padding:0 var(--spacing-6)}.header__brand a{text-decoration:none}.header__logo{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header__nav{display:flex;align-items:center;gap:var(--spacing-2);flex:1;justify-content:center}.header__nav-item{padding:var(--spacing-3) var(--spacing-5);color:var(--color-text-secondary);text-decoration:none;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-normal)}.header__nav-item:hover{color:var(--color-primary);background:var(--color-primary-50)}.header__nav-item.active{color:var(--color-primary);background:var(--color-primary-100)}.header__actions{display:flex;align-items:center;gap:var(--spacing-4)}.header__user{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.header__menu-btn{display:none;flex-direction:column;gap:var(--spacing-1);background:none;padding:var(--spacing-2)}.header__menu-btn span{display:block;width:24px;height:2px;background:var(--color-primary);transition:all var(--transition-normal)}.main{flex:1;padding:var(--spacing-8) 0;min-height:calc(100vh - 200px)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-6)}.footer{padding:var(--spacing-6) 0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--glass-border);text-align:center;color:var(--color-text-secondary)}.glass{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border)}.card{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--spacing-6);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.neumorphic{background:var(--color-background);border-radius:var(--radius-lg);box-shadow:5px 5px 10px var(--neumorphic-dark),-5px -5px 10px var(--neumorphic-light)}.input{width:100%;padding:var(--spacing-3) var(--spacing-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-normal)}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-100)}.form-group{margin-bottom:var(--spacing-5)}.form-group label{display:block;margin-bottom:var(--spacing-2);color:var(--color-text-secondary);font-weight:500;font-size:var(--font-size-sm)}.badge{display:inline-block;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600}.badge--success{background:var(--color-success);color:var(--color-on-primary)}.badge--warning{background:var(--color-warning);color:var(--color-on-primary)}.badge--error{background:var(--color-error);color:var(--color-on-primary)}.badge--info{background:var(--color-info);color:var(--color-on-primary)}@media (max-width: 768px){.header__nav{position:fixed;top:70px;left:0;right:0;flex-direction:column;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:var(--spacing-4);gap:var(--spacing-2);transform:translateY(-100%);opacity:0;transition:all var(--transition-normal);pointer-events:none}.header__nav.open{transform:translateY(0);opacity:1;pointer-events:auto}.header__menu-btn{display:flex}.header__user{display:none}}:root{--color-primary: #5B9A8B;--color-primary-light: #3DAF87;--color-primary-dark: #1F6B54;--color-on-primary: #FFFFFF;--color-on-primary-light: #2C3E37;--color-primary-50: rgba(91, 154, 139, .05);--color-primary-100: rgba(91, 154, 139, .1);--color-primary-200: rgba(91, 154, 139, .2);--color-secondary: #A8E6CF;--color-secondary-light: #C5F0DE;--color-secondary-dark: #8BD4B3;--color-accent: #6BC5A5;--color-tertiary: #4CAF7D;--color-neutral: #F5FAF8;--color-background: #F5FAF8;--color-background-alt: #EDF6F1;--color-surface: rgba(255, 255, 255, .8);--color-surface-solid: #FFFFFF;--color-text: #2C3E37;--color-text-secondary: #6B7C75;--color-text-light: #9BA8A3;--color-border: rgba(91, 154, 139, .12);--color-shadow: rgba(91, 154, 139, .08);--color-shadow-strong: rgba(91, 154, 139, .15);--color-success: #4CAF7D;--color-warning: #F5A623;--color-error: #E85D75;--color-info: #5BA4CF;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: "Fira Code", "Cascadia Code", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px var(--color-shadow);--shadow-md: 0 4px 6px var(--color-shadow);--shadow-lg: 0 10px 15px var(--color-shadow);--shadow-xl: 0 20px 25px var(--color-shadow-strong);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .3);--glass-shadow: 0 8px 32px rgba(91, 154, 139, .1);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--header-height: 56px;--tab-height: 36px;--btn-height-sm: 28px;--btn-height-md: 36px;--btn-height-lg: 48px;--input-height-sm: 30px;--input-height-md: 36px;--pagination-height: 28px;--font-size-2xs: .625rem;--font-size-xxs: .6875rem;--color-success-bg-soft: rgba(76, 175, 125, .15);--color-warning-bg-soft: rgba(245, 166, 35, .15);--color-error-bg-soft: rgba(232, 93, 117, .15);--color-info-bg-soft: rgba(91, 164, 207, .15);--color-accent-bg-soft: rgba(107, 197, 165, .15);--color-error-dark: #d63346;--color-success-dark: #389e0d;--color-info-dark: #4a8abf;--color-warning-dark: #d48806;--color-success-border-soft: #b7eb8f;--color-warning-border-soft: #ffe58f;--color-error-border-soft: #ffccc7;--color-info-border-soft: #91caff;--radius-plate: 3px;--radius-plate-inner: 2px;--color-plate-blue-bg: linear-gradient(180deg, #3B72C6 0%, #1D4E9C 55%, #17408A 100%);--color-plate-blue-text: #FFFFFF;--color-plate-green-bg: linear-gradient(180deg, #EAF9E9 0%, #9BDCA6 38%, #2FB45F 100%);--color-plate-green-text: #10321C;--color-plate-border: #FFFFFF;--color-plate-green-border: #000000;--color-plate-emboss-light: rgba(255, 255, 255, .45);--color-plate-emboss-dark: rgba(0, 0, 0, .45);--color-plate-shadow: rgba(0, 0, 0, .25);--color-plate-emblem-bg: #FFFFFF;--color-plate-emblem-ring: #2FB45F;--color-plate-emblem-bars: linear-gradient(180deg, #1E7FD0 0 22%, #E84C3D 22% 45%, #F5C33B 45% 68%, #2FB45F 68% 100%);--color-overlay-mask: rgba(0, 0, 0, .45);--color-image-del-bg: rgba(0, 0, 0, .6);--color-surface-alt: #f5f7fa;--color-disabled-bg: #f5f7fa;--image-thumb-sm: 64px;--image-thumb-md: 80px;--icon-del-size: 18px;--icon-upload-size: 24px;--modal-sm-width: 450px;--modal-md-width: 700px;--modal-lg-width: 800px;--modal-xl-width: 1100px;--modal-2xl-width: 1500px;--modal-order-height: 820px}html.dark{--color-primary: #6BBFAD;--color-primary-light: #8ED4C4;--color-primary-dark: #4A9A88;--color-primary-50: rgba(107, 191, 173, .05);--color-primary-100: rgba(107, 191, 173, .1);--color-primary-200: rgba(107, 191, 173, .2);--color-secondary: #2A5A4E;--color-secondary-light: #3A7A6A;--color-secondary-dark: #1E4A3E;--color-neutral: #1a1a1a;--color-background: #141414;--color-background-alt: #1c1c1c;--color-surface: rgba(40, 40, 40, .8);--color-surface-solid: #1e1e1e;--color-text: #e0e0e0;--color-text-secondary: #a0a0a0;--color-text-light: #707070;--color-border: rgba(107, 191, 173, .15);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-strong: rgba(0, 0, 0, .5);--color-success: #52c41a;--color-warning: #f0a020;--color-error: #e04040;--color-info: #3a8fd4;--glass-bg: rgba(30, 30, 30, .7);--glass-border: rgba(60, 60, 60, .3);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3);--color-success-bg-soft: rgba(82, 196, 26, .2);--color-warning-bg-soft: rgba(240, 160, 32, .2);--color-error-bg-soft: rgba(224, 64, 64, .2);--color-info-bg-soft: rgba(58, 143, 212, .2);--color-accent-bg-soft: rgba(107, 197, 165, .2);--color-error-dark: #ff4d4f;--color-success-dark: #73d13d;--color-info-dark: #69b1ff;--color-warning-dark: #ffc53d;--color-success-border-soft: rgba(82, 196, 26, .3);--color-warning-border-soft: rgba(240, 160, 32, .3);--color-error-border-soft: rgba(224, 64, 64, .3);--color-info-border-soft: rgba(58, 143, 212, .3);--color-surface-alt: #1c1c1c;--color-disabled-bg: #2a2a2a}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);background:linear-gradient(135deg,var(--color-background) 0%,var(--color-background-alt) 100%);height:100%;overflow:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}#root{height:100%;overflow:hidden}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}button{cursor:pointer;font-family:inherit;border:none;outline:none}input,textarea,select{font-family:inherit;outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background-alt)}::-webkit-scrollbar-thumb{background:var(--color-primary-100);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}html.dark ::-webkit-scrollbar-track{background:#1c1c1c}html.dark ::-webkit-scrollbar-thumb{background:#6bbfad4d}html.dark ::-webkit-scrollbar-thumb:hover{background:#6bbfad80}.ant-btn{min-width:auto!important;width:auto!important;overflow:visible!important;white-space:nowrap!important;padding:4px 15px!important}.admin-table__actions .btn,.admin-table__actions .ant-btn,.table-actions .btn,.table-actions .ant-btn{min-width:auto!important;width:auto!important;overflow:visible!important;flex-shrink:0}.amap-qipao{background:#fff;border-radius:6px;padding:0;box-shadow:0 2px 12px #00000026;font-size:13px;color:#1d2129;position:relative;line-height:1.5}.amap-qipao-arrow{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #fff}.order-table-wrapper{overflow:hidden}.vehicle-management-page .order-table-wrapper .ant-table-wrapper,.fixed-table-page .order-table-wrapper .ant-table-wrapper,.vehicle-management-page .order-table-wrapper .ant-table-wrapper .ant-spin-nested-loading,.vehicle-management-page .order-table-wrapper .ant-table-wrapper .ant-spin-nested-loading .ant-spin-container,.fixed-table-page .order-table-wrapper .ant-table-wrapper .ant-spin-nested-loading,.fixed-table-page .order-table-wrapper .ant-table-wrapper .ant-spin-nested-loading .ant-spin-container{flex:1;min-height:0;display:flex;flex-direction:column}.vehicle-management-page .order-table-wrapper .ant-table,.fixed-table-page .order-table-wrapper .ant-table{border-radius:var(--radius-xl);flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.vehicle-management-page .order-table-wrapper .ant-table-container,.fixed-table-page .order-table-wrapper .ant-table-container{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.vehicle-management-page .order-table-wrapper .ant-table-body,.fixed-table-page .order-table-wrapper .ant-table-body{flex:1;min-height:0;overflow:auto!important}.vehicle-management-page .order-table-wrapper .ant-table-pagination,.fixed-table-page .order-table-wrapper .ant-table-pagination{flex-shrink:0;padding:8px 16px;margin:0}.fixed-table-page{overflow:hidden!important}.geofence-report-page>.ant-tabs .ant-tabs-nav{margin-bottom:0}.terminal-management-page>.ant-tabs .ant-tabs-nav{margin-bottom:0}.message-tabs{flex:1;min-height:0;display:flex;flex-direction:column}.message-tabs>.ant-tabs-nav,.message-tabs>div>.ant-tabs-nav{flex:none;margin-bottom:4px}.message-tabs .ant-tabs-content-holder{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.message-tabs .ant-tabs-content-holder .ant-tabs-content{flex:1;min-height:0;display:flex;flex-direction:column}.message-tabs .ant-tabs-content-holder .ant-tabs-tabpane{flex:1;min-height:0;overflow:hidden}.message-tabs .ant-tabs-tabpane>.message-tabs{height:100%}.fixed-table-page>.table-wrapper{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.page-container.fixed-table-page{min-height:220px}.page-container.fixed-table-page>.table-wrapper{min-height:180px}.order-table-wrapper .ant-table-thead>tr>th{background:var(--color-primary-50);font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:2px solid var(--color-primary-100);white-space:nowrap;padding:14px 16px;-webkit-user-select:none;user-select:none;position:relative}.order-table-wrapper .ant-table-thead>tr>th.ant-table-cell-fix-right{background:#f0f5f3;z-index:12}.order-table-wrapper .ant-table-tbody>tr>td.ant-table-cell-fix-right{background:#fff;z-index:2}.order-table-wrapper .ant-table-tbody>tr:hover>td.ant-table-cell-fix-right{background:#f0f5f3;z-index:2}.order-table-wrapper .ant-table-thead>tr>th:before{display:none}.order-table-wrapper .ant-table-tbody>tr>td{padding:14px 16px;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text)}.order-table-wrapper .ant-table-tbody>tr:hover>td{background:var(--color-primary-50)}.order-table-wrapper .ant-table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-table-wrapper .ant-table-selection-column,.order-table-wrapper .ant-table-thead>tr>th.ant-table-selection-column,.order-table-wrapper .ant-table-tbody>tr>td.ant-table-selection-column{padding-left:8px!important;padding-right:8px!important}.order-table-wrapper .ant-table-cell-ellipsis,.order-table-wrapper .ant-table-cell-ellipsis .ant-table-cell-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-table-wrapper .ant-pagination{padding:12px 16px;margin:0}.resizable-handle{position:absolute;right:-2px;bottom:0;top:0;width:6px;cursor:col-resize;z-index:1;background:transparent;transition:background .2s}.resizable-handle:hover{background:var(--color-primary-100)}.table-actions{display:flex;gap:6px 8px;flex-wrap:nowrap;align-items:center;min-width:80px}.main-content,.main-content__body{padding:0!important;margin:0!important}.page-container,.vehicle-management,.vehicle-management-page,.order-management,.order-management-page,.customer-management,.customer-management-page,.product-management,.product-management-page,.insurance-management,.insurance-management-page,.repair-management,.repair-management-page,.inspection-management,.inspection-management-page,.accident-management,.accident-management-page,.violation-management,.violation-management-page{gap:4px!important;margin:0!important;padding:0!important}.filter-bar,.toolbar{padding:6px 12px!important;margin-top:0!important;margin-bottom:0!important}.filter-bar .filter-item,.toolbar .filter-item{gap:2px!important}.filter-bar .filter-item label,.toolbar .filter-item label{font-size:12px!important;margin-bottom:0!important}.filter-bar .form-input,.filter-bar .form-select,.toolbar .form-input,.toolbar .form-select{padding:4px 8px!important;height:30px!important;font-size:var(--font-size-sm)!important}.filter-bar .btn,.filter-bar .ant-btn,.toolbar .btn,.toolbar .ant-btn{height:30px!important;padding:4px 12px!important;font-size:var(--font-size-sm)!important}.tab-bar{padding:0!important;margin-bottom:0!important;height:auto!important;line-height:1!important;min-height:0!important;border-bottom:none!important}.tab-item{padding:1px 6px!important;font-size:12px!important;height:auto!important;line-height:1.2!important;min-height:0!important;border-bottom:none!important}.tab-item__close{width:14px!important;height:14px!important;font-size:10px!important;line-height:1!important}.page-header{margin-bottom:0!important;padding-bottom:0!important}.admin-table td,.admin-table th{padding:8px 12px!important;font-size:13px!important;line-height:22px!important}.ant-table-tbody>tr>td,.ant-table-thead>tr>th{padding:8px 12px!important}.ant-table-tbody>tr>td .ant-tag{margin:0!important;padding:1px 6px!important;font-size:12px!important}.ant-pagination{padding:4px 0!important;margin:0!important}.ant-pagination .ant-pagination-item,.ant-pagination .ant-pagination-prev,.ant-pagination .ant-pagination-next,.ant-pagination .ant-pagination-jump-prev,.ant-pagination .ant-pagination-jump-next{min-width:28px!important;height:28px!important;line-height:28px!important}.ant-pagination .ant-pagination-item a{font-size:var(--font-size-sm)!important}.ant-pagination .ant-pagination-options{margin-left:8px!important}.ant-pagination .ant-pagination-options .ant-select{height:28px!important}.ant-pagination .ant-pagination-options .ant-select-selector{height:28px!important;padding:0 8px!important;font-size:var(--font-size-sm)!important}.ant-pagination .ant-pagination-total-text{font-size:var(--font-size-sm)!important;margin-right:8px!important}.table-wrapper{padding-bottom:4px!important}.ant-table-wrapper .ant-spin-nested-loading,.ant-table-wrapper .ant-spin-container{margin-bottom:0!important}.ant-table-wrapper .noti-row--read>td{opacity:.55}
