.parking-page .dp-right{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0}.parking-page>.dp-right>.toolbar.el-col{float:none;width:100%}.parking-page>.dp-right>.toolbar{padding-bottom:4px!important}.parking-page>.dp-right>.toolbar .el-form{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.parking-page>.dp-right>.toolbar .el-form-item{margin-bottom:10px;margin-right:14px}.parking-page>.dp-right>.toolbar .el-form-item__label{padding-right:8px;font-size:13px;color:#64748b}.parking-page.free-vehicle-page>.dp-right>.toolbar .el-form-item__content>.el-input:not(.el-date-editor){width:132px}.parking-page.free-vehicle-page>.dp-right>.toolbar .el-form-item__content>.el-select{width:118px}.parking-page.access-record-page>.dp-right>.toolbar .el-form-item__content>.el-input:not(.el-date-editor){width:132px}.parking-page.access-record-page>.dp-right>.toolbar .el-form-item__content>.el-select{width:108px}.parking-page.access-record-page>.dp-right>.toolbar .el-date-editor.el-input{width:196px!important}.parking-page.access-record-page>.dp-right>.toolbar .el-date-editor .el-input__inner{padding-left:28px;padding-right:24px}.parking-page .parking-stat-wrap{clear:both;width:100%;min-height:0;margin-bottom:10px;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.parking-page .parking-stat-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%}.parking-page .parking-stat-cards.is-summary-loading{opacity:.55;pointer-events:none}.parking-page .parking-stat-card{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;-webkit-box-shadow:0 1px 3px rgba(15,23,42,.05);box-shadow:0 1px 3px rgba(15,23,42,.05);-webkit-transition:border-color .2s ease,-webkit-box-shadow .2s ease,-webkit-transform .2s ease;transition:border-color .2s ease,-webkit-box-shadow .2s ease,-webkit-transform .2s ease;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,-webkit-box-shadow .2s ease,-webkit-transform .2s ease;min-height:0}.parking-page .parking-stat-card.clickable{cursor:pointer}.parking-page .parking-stat-card.clickable:hover{-webkit-transform:translateY(-1px);transform:translateY(-1px);-webkit-box-shadow:0 4px 12px rgba(15,23,42,.08);box-shadow:0 4px 12px rgba(15,23,42,.08)}.parking-page .parking-stat-card.active{border-color:#93c5fd;-webkit-box-shadow:0 0 0 1px #93c5fd,0 4px 12px rgba(37,99,235,.1);box-shadow:0 0 0 1px #93c5fd,0 4px 12px rgba(37,99,235,.1)}.parking-page .parking-stat-card.stat-total.active{border-color:#93c5fd;-webkit-box-shadow:0 0 0 1px #93c5fd,0 4px 12px rgba(37,99,235,.12);box-shadow:0 0 0 1px #93c5fd,0 4px 12px rgba(37,99,235,.12)}.parking-page .parking-stat-card.stat-pending.active{border-color:#cbd5e1;-webkit-box-shadow:0 0 0 1px #cbd5e1,0 4px 12px rgba(100,116,139,.1);box-shadow:0 0 0 1px #cbd5e1,0 4px 12px rgba(100,116,139,.1)}.parking-page .parking-stat-card.stat-entry.active,.parking-page .parking-stat-card.stat-synced.active{border-color:#86efac;-webkit-box-shadow:0 0 0 1px #86efac,0 4px 12px rgba(22,163,74,.12);box-shadow:0 0 0 1px #86efac,0 4px 12px rgba(22,163,74,.12)}.parking-page .parking-stat-card.stat-failed.active{border-color:#fca5a5;-webkit-box-shadow:0 0 0 1px #fca5a5,0 4px 12px rgba(220,38,38,.1);box-shadow:0 0 0 1px #fca5a5,0 4px 12px rgba(220,38,38,.1)}.parking-page .parking-stat-card.stat-update.active{border-color:#fcd34d;-webkit-box-shadow:0 0 0 1px #fcd34d,0 4px 12px rgba(217,119,6,.1);box-shadow:0 0 0 1px #fcd34d,0 4px 12px rgba(217,119,6,.1)}.parking-page .parking-stat-card.stat-exit.active{border-color:#fdba74;-webkit-box-shadow:0 0 0 1px #fdba74,0 4px 12px rgba(234,88,12,.12);box-shadow:0 0 0 1px #fdba74,0 4px 12px rgba(234,88,12,.12)}.parking-page .stat-card-head{-ms-flex-align:center;gap:6px;margin-bottom:0;min-width:0;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.parking-page .stat-card-head,.parking-page .stat-card-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}.parking-page .stat-card-icon{width:26px;height:26px;border-radius:6px;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:13px;-ms-flex-negative:0;flex-shrink:0}.parking-page .parking-stat-card.stat-total .stat-card-icon{background:#eff6ff;color:#2563eb}.parking-page .parking-stat-card.stat-pending .stat-card-icon{background:#f8fafc;color:#64748b}.parking-page .parking-stat-card.stat-entry .stat-card-icon,.parking-page .parking-stat-card.stat-synced .stat-card-icon{background:#f0fdf4;color:#16a34a}.parking-page .parking-stat-card.stat-failed .stat-card-icon{background:#fef2f2;color:#dc2626}.parking-page .parking-stat-card.stat-update .stat-card-icon{background:#fffbeb;color:#d97706}.parking-page .parking-stat-card.stat-exit .stat-card-icon{background:#fff7ed;color:#ea580c}.parking-page .parking-stat-card.stat-plates .stat-card-icon{background:#eef2ff;color:#6366f1}.parking-page .parking-stat-card.stat-duration .stat-card-icon{background:#f0fdfa;color:#0d9488}.parking-page .stat-card-label{font-size:12px;color:#64748b;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parking-page .stat-tip-icon{margin-left:2px;font-size:12px;color:#cbd5e1;cursor:help;vertical-align:middle}.parking-page .stat-tip-icon:hover{color:#94a3b8}.parking-page .stat-card-value{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;font-size:18px;font-weight:700;color:#0f172a;line-height:1.2;font-variant-numeric:tabular-nums}.parking-page .stat-card-value.is-text{font-size:14px;font-weight:600}@media (max-width:1200px){.parking-page .parking-stat-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.parking-page .parking-stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.parking-page .parking-table-panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;-webkit-box-shadow:0 1px 2px rgba(15,23,42,.04);box-shadow:0 1px 2px rgba(15,23,42,.04);-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-height:0;height:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.parking-page .parking-table-panel .tbl-scroll-host{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-height:0;height:0;width:100%;overflow:hidden}.parking-page .parking-table-panel .tbl-scroll-host>.el-table{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden}.parking-page .parking-table-panel .tbl-scroll-host>.el-table .el-table__header-wrapper{-ms-flex-negative:0;flex-shrink:0}.parking-page .parking-table-panel .tbl-scroll-host>.el-table .el-table__body-wrapper{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;min-height:0;overflow-x:auto!important;overflow-y:auto!important}.parking-page .parking-table-panel .panel-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:10px 14px;border-bottom:1px solid #f1f5f9;-ms-flex-negative:0;flex-shrink:0}.parking-page .parking-table-panel .panel-title{font-size:14px;font-weight:600;color:#334155}.parking-page .parking-table-panel .panel-title .count{margin-left:8px;font-size:12px;font-weight:400;color:#94a3b8}.parking-page .parking-table-panel .panel-actions .el-button{padding:7px 12px}.parking-page .parking-table-panel .el-table{border:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}.parking-page .parking-table-panel .el-table th{background:#fafbfc!important;color:#64748b!important;font-weight:500!important;font-size:13px}.parking-page .parking-table-panel .el-table__row:hover>td{background:#f8fafc!important}.parking-page .parking-table-panel .toolbar{padding:8px 14px 10px;border-top:1px solid #f1f5f9;-ms-flex-negative:0;flex-shrink:0}.parking-page .parking-table-panel>.el-col.toolbar:has(>.el-pagination),.parking-page .parking-table-panel>.toolbar:has(>.el-pagination){padding:8px 14px 10px!important;margin-top:0!important}.parking-page .plate-no-badge{display:inline-block;padding:2px 8px;background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe;border-radius:4px;font-weight:600;font-size:13px;letter-spacing:.5px}.parking-page .time-text{font-size:13px;color:#475569;font-variant-numeric:tabular-nums}.parking-page .text-muted{color:#cbd5e1;font-size:13px}.parking-page .parking-stat-cards.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.parking-page .panel-header .panel-tip{font-size:12px;color:#94a3b8}.parking-page .plate-list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:4px 6px}.parking-page .plate-change__line{font-size:13px;line-height:20px}.parking-page .plate-change__line--add{color:#16a34a}.parking-page .plate-change__line--remove{color:#dc2626;text-decoration:line-through}.parking-page .sub-text{display:block;font-size:12px;color:#94a3b8;line-height:1.4}.parking-page .el-button--text.is-danger,.parking-page .el-button--text.is-danger:hover{color:#ef4444}.parking-page .subject-tag{display:inline-block;font-size:12px;padding:1px 8px;border-radius:10px;font-weight:500}.parking-page .subject-tag.is-parent{color:#2563eb;background:#eff6ff;border:1px solid #dbeafe}.parking-page .subject-tag.is-teacher{color:#7c3aed;background:#f5f3ff;border:1px solid #ede9fe}.parking-page .subject-tag.is-visitor{color:#0d9488;background:#f0fdfa;border:1px solid #ccfbf1}.parking-picked-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;-ms-flex-wrap:wrap;flex-wrap:wrap}.parking-picked-row .picked-name{color:#1f2937;font-weight:600}.parking-picked-row .picked-empty{color:#94a3b8}.parking-form-tip{color:#94a3b8;font-size:12px;line-height:20px}.parking-plate-edit-row{display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;margin-bottom:10px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.parking-plate-edit-row .plate-input{-webkit-box-flex:1;-ms-flex:1;flex:1}