*{box-sizing:border-box;margin:0;padding:0}html{background:#f5f5f7;min-width:320px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f7;min-width:320px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow-x:hidden}#root{min-height:100vh}img,svg,canvas{max-width:100%}.app-shell,.app-main,.app-content{min-width:0}.app-sidebar{flex:none}.app-content>*{min-width:0;max-width:100%}.ant-card,.ant-card-body,.ant-tabs,.ant-tabs-content-holder,.ant-tabs-content,.ant-tabs-tabpane{min-width:0}.app-header{z-index:100;position:sticky;top:0}.route-dock{z-index:90;background:#f5f5f7;border-bottom:1px solid #e5e5e7;min-width:0;height:44px;padding:6px 12px;position:sticky;top:64px;overflow:hidden}.route-dock .ant-tabs{height:32px}.route-dock .ant-tabs-nav{height:32px;margin:0}.route-dock .ant-tabs-nav:before{border-bottom:0}.route-dock .ant-tabs-tab{min-width:112px;max-width:220px;height:32px;overflow:hidden;background:#ffffff94!important;border:1px solid #0000!important;border-radius:7px!important;margin:0 6px 0 0!important;padding:0 10px 0 12px!important;transition:background-color .16s,border-color .16s,box-shadow .16s!important}.route-dock .ant-tabs-tab:hover{background:#ffffffe6!important;border-color:#dedee2!important}.route-dock .ant-tabs-tab-active{box-shadow:inset 0 2px #1677ff,0 2px 7px #1d1d1f14;background:#fff!important;border-color:#d8d8dc!important}.route-dock .ant-tabs-tab-btn{color:#4d4d4d;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.route-dock .ant-tabs-tab-remove{border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-left:8px;transition:background-color .14s;display:inline-flex}.route-dock .ant-tabs-tab-remove:hover{background:#ededf0}.route-dock .ant-tabs-content-holder{display:none}.responsive-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.responsive-toolbar__group{flex-wrap:wrap;gap:8px;display:flex}.student-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;display:grid}.student-form-grid .ant-form-item{min-width:0}@media (width<=575px){.student-form-grid{grid-template-columns:1fr}}.ant-drawer-content-wrapper{max-width:100vw!important}.ant-pagination{row-gap:8px}.ant-table-wrapper{width:100%;min-width:0;max-width:100%}.ant-table-wrapper .ant-table-content{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-color:transparent transparent;scrollbar-width:thin;overflow-x:auto}.ant-table-wrapper .ant-table-content::-webkit-scrollbar{height:6px}.ant-table-wrapper .ant-table-content::-webkit-scrollbar-track{background:0 0}.ant-table-wrapper .ant-table-content::-webkit-scrollbar-thumb{background:0 0;border-radius:999px}.ant-table-wrapper:hover .ant-table-content,.ant-table-wrapper:focus-within .ant-table-content{scrollbar-color:#c8c8cc transparent}.ant-table-wrapper:hover .ant-table-content::-webkit-scrollbar-thumb{background:#c8c8cc}.ant-table-wrapper:focus-within .ant-table-content::-webkit-scrollbar-thumb{background:#c8c8cc}.table-cell-ellipsis .ant-table-thead>tr>th,.table-cell-ellipsis .ant-table-tbody>tr>td{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ant-table-wrapper .ant-table-cell .ant-space{flex-wrap:nowrap}.room-card-tag-wrapper{overflow:hidden}.room-card-tag-wrapper .ant-tag{text-overflow:ellipsis;white-space:nowrap;align-items:center;max-width:100%;display:inline-flex;overflow:hidden}.room-card-tag-wrapper .ant-tag .anticon{flex-shrink:0}.app-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.app-page-header-main{min-width:0}.app-page-header-title{color:#1d1d1f;margin:0;font-size:20px;font-weight:600;line-height:28px}.app-page-header-desc{color:#00000073;margin:4px 0 0;font-size:13px;line-height:20px}.app-page-header-extra{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app-page-loading{max-width:960px;margin:24px auto}@media (width<=575px){.app-header{height:56px;line-height:56px;padding-inline:8px!important}.route-dock{height:42px;padding:5px 8px;top:56px}.route-dock .ant-tabs-tab{min-width:104px}.app-header .ant-btn{width:40px;min-height:40px;padding-inline:0}.app-content{min-height:calc(100dvh - 72px);border-radius:10px!important;margin:8px!important;padding:12px!important}.app-navigation-drawer .ant-drawer-header{padding-inline:16px}.responsive-toolbar{flex-direction:column;align-items:stretch;margin-bottom:12px}.responsive-toolbar__group,.responsive-toolbar>.ant-space{width:100%}.responsive-toolbar__group>.ant-space-item,.responsive-toolbar>.ant-space>.ant-space-item{flex:140px;max-width:100%}.responsive-toolbar .ant-input,.responsive-toolbar .ant-input-affix-wrapper,.responsive-toolbar .ant-input-search,.responsive-toolbar .ant-picker,.responsive-toolbar .ant-select,.responsive-toolbar .ant-upload,.responsive-toolbar .ant-upload-wrapper,.responsive-toolbar .ant-btn{width:100%!important}.ant-btn:not(.ant-btn-sm),.ant-input-affix-wrapper,.ant-input-search-button,.ant-picker,.ant-select-single .ant-select-selector{min-height:40px}.ant-table{font-size:13px}.ant-table-cell{padding:8px 6px!important}.ant-descriptions-item-label,.ant-descriptions-item-content{font-size:13px}.ant-modal{padding-bottom:12px;top:12px;max-width:calc(100vw - 16px)!important;margin:0 auto!important}.ant-modal .ant-modal-content{padding:16px}.ant-modal .ant-modal-body{overscroll-behavior:contain;max-height:calc(100dvh - 180px);overflow-y:auto}.ant-modal .ant-modal-footer{display:flex}.ant-modal .ant-modal-footer .ant-btn{flex:1;min-height:40px}.ant-drawer .ant-drawer-header{padding:14px 16px}.ant-drawer .ant-drawer-body{overscroll-behavior:contain;padding:16px}.ant-popover,.ant-picker-dropdown{max-width:calc(100vw - 16px)}.ant-pagination{justify-content:center}.ant-pagination .ant-pagination-options{margin-inline-start:0}.ant-alert{padding:10px 12px}h1{font-size:22px!important}h2{font-size:18px!important}.ant-card{margin-bottom:8px}.ant-card .ant-card-body{padding:14px}.ant-card-head{flex-direction:column;align-items:flex-start;gap:8px;padding-block:12px}.ant-card-head-wrapper{width:100%;min-width:0}.ant-card-extra{max-width:100%;margin-inline-start:0}.ant-card-extra>.ant-space{flex-wrap:wrap}.ant-form-item-control,.ant-form-item-control-input,.ant-form-item-control-input-content,.ant-picker-range{min-width:0;max-width:100%}.ant-statistic-content{overflow-wrap:anywhere}}@media (width<=991px){.app-content{overflow:hidden}}@media (width>=576px) and (width<=991px){.ant-modal{max-width:calc(100vw - 48px)!important}}.notifications-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.notifications-filter{width:100%;margin-bottom:12px}@media (width<=575px){.notifications-layout,.notifications-content{min-width:0}.notifications-header{margin-bottom:12px}.notifications-content .ant-list-item{align-items:flex-start;padding:14px 6px!important}.notifications-content .ant-list-item-meta-avatar{margin-inline-end:10px}.notifications-content .ant-list-item-meta-title{margin-bottom:4px}.ant-table-wrapper:before{content:"表格可左右滑动查看";color:#8c8c8c;text-align:right;margin-bottom:6px;font-size:11px;display:block}.ant-table-wrapper .ant-table-content{scrollbar-width:thin}.ant-table-wrapper .ant-table-cell-fix-left,.ant-table-wrapper .ant-table-cell-fix-right{box-shadow:2px 0 5px #0000000d}}.responsive-toolbar--single{justify-content:flex-start}@media (width<=575px){.responsive-toolbar .ant-input-search>.ant-input-affix-wrapper{flex:auto;min-width:0;width:auto!important}.responsive-toolbar .ant-input-search>.ant-input-search-btn{flex:0 0 40px;min-width:40px;padding-inline:0;width:40px!important}}html{scroll-behavior:smooth}::selection{background:#007aff2e}:focus-visible{outline-offset:2px;outline:2px solid #007aff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#00000029 padding-box content-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background-color:#00000047}@media (width<=575px){.route-dock{padding:6px 8px}.route-dock .ant-tabs-tab{min-width:88px;max-width:160px;padding:0 8px 0 10px!important}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
