:root{color:#14232d;background:#eef4f7;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}.page-loading{align-items:center;background:#f4f8fa;display:flex;flex-direction:column;gap:18px;justify-content:center;min-height:100vh}.brand-mark{align-items:center;background:#006fba;border-radius:11px;box-shadow:0 10px 24px #006fba3d;color:#fff;display:inline-flex;flex:0 0 auto;font-size:24px;height:48px;justify-content:center;width:48px}.brand-mark-large{font-size:34px;height:68px;width:68px}.brand-mark-small{border-radius:8px;box-shadow:none;font-size:17px;height:32px;width:32px}.auth-page{align-items:center;background:#eef4f7;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:28px 18px;position:relative}.auth-glow{border-radius:50%;filter:blur(1px);height:280px;opacity:.75;pointer-events:none;position:absolute;width:280px}.auth-glow-top{background:#cbeef1;right:-90px;top:-75px}.auth-glow-bottom{background:#dbe8f8;bottom:-120px;left:-100px}.auth-panel{background:#fffffff0;border:1px solid rgba(209,222,229,.9);border-radius:18px;box-shadow:0 22px 60px #1c3e4e1f;max-width:430px;padding:34px;position:relative;width:100%;z-index:1}.auth-brand,.sider-brand,.mobile-brand{align-items:center;display:flex;gap:12px}.auth-brand{margin-bottom:38px}.brand-name,.sider-brand-name{color:#14232d;display:block;font-size:18px;font-weight:800;line-height:1.2}.auth-panel h1.ant-typography{font-size:30px;margin:0 0 8px}.auth-form .ant-form-item{margin-bottom:18px}.auth-form .ant-btn{box-shadow:0 8px 16px #006fba33;margin-top:6px}.app-layout{min-height:100vh}.desktop-sider{background:#092f44!important;box-shadow:8px 0 24px #14344114;position:relative;z-index:2}.sider-brand{color:#fff;padding:30px 24px 26px}.sider-brand .brand-mark{background:#1285ca;box-shadow:0 8px 16px #00000024}.sider-brand-name{color:#fff}.sider-menu.ant-menu{background:transparent;border-inline-end:0;color:#c6d8de;padding:8px 12px}.sider-menu.ant-menu .ant-menu-item{border-radius:8px;color:#c6d8de;margin:5px 0}.sider-menu.ant-menu .ant-menu-item .ant-menu-item-icon{color:#9fbcc7}.sider-menu.ant-menu .ant-menu-item-selected{background:#0c6b9e;color:#fff}.sider-menu.ant-menu .ant-menu-item:hover{color:#fff}.app-header{align-items:center;background:#ffffffe6;border-bottom:1px solid #dce7ec;display:flex;height:72px;padding:0 34px;position:sticky;top:0;z-index:1}.header-spacer{flex:1}.mobile-brand,.mobile-nav-button{display:none}.account-button{color:#314b59}.account-name{margin-left:4px}.app-content{background:#eef4f7;padding:36px clamp(18px,4vw,56px) 50px}.records-page{margin:0 auto;max-width:1180px}.page-heading{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:26px}.page-heading h2.ant-typography{font-size:clamp(26px,3vw,34px);letter-spacing:0;margin:0 0 6px}.page-actions .ant-btn{background:#ffffffb8}.page-actions .ant-btn-primary,.page-actions .ant-btn-primary:hover,.page-actions .ant-btn-primary:focus,.page-actions .ant-btn-primary:active{background:#006fba;border-color:#006fba;color:#fff}.page-actions .ant-btn-primary:disabled,.page-actions .ant-btn-primary.ant-btn-disabled{background:#8bbfda;border-color:#8bbfda;color:#fff;opacity:1}.filter-panel.ant-card{background:#fff;border:1px solid #dce7ec;box-shadow:0 12px 28px #2846520d;margin-bottom:24px}.selection-toolbar{align-items:center;background:#f5f9fb;border:1px solid #dce7ec;border-radius:8px;display:flex;gap:16px;justify-content:flex-start;margin-bottom:12px;padding:10px 14px}.selection-toolbar .ant-btn{margin-left:auto}.filter-grid{align-items:flex-end;display:grid;gap:14px;grid-template-columns:minmax(180px,1.1fr) minmax(280px,1.4fr) auto}.filter-grid .ant-form-item{margin-bottom:0}.filter-buttons{display:flex;gap:10px}.full-width{width:100%}.record-list.ant-list .ant-list-items{display:grid;gap:8px}.record-list .ant-list-item{border-block-end:0;padding:0}.record-card{background:#fff;border:1px solid #dce7ec;border-radius:8px;box-shadow:0 4px 12px #28465209;padding:13px 16px;width:100%}.record-main{align-items:center;display:flex;gap:12px}.record-icon{align-items:center;background:#e4f2fb;border-radius:8px;color:#006fba;display:flex;flex:0 0 auto;font-size:20px;height:40px;justify-content:center;width:40px}.record-info{flex:1;min-width:0}.record-barcode{color:#14232d;display:block;font-size:17px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.record-meta{flex-wrap:wrap;margin-top:5px}.record-actions{display:flex;gap:8px;margin-left:auto}.detail-barcode{align-items:center;color:#14232d;display:flex;font-size:20px;font-weight:800;gap:9px;overflow-wrap:anywhere}.detail-barcode .anticon{color:#006fba}.detail-summary{margin-top:22px}.detail-summary .ant-descriptions-view{background:#f5f9fb;border-radius:8px;padding:10px 14px}.detail-photos-heading{margin:0}.detail-photo-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.detail-photo-grid .ant-image{background:#e9f0f3;border:1px solid #dce7ec;border-radius:6px;display:block;height:64px;overflow:hidden;width:64px}.detail-photo-grid .detail-photo-thumb{height:100%;object-fit:cover;width:100%}.image-review{margin:0 auto;max-width:1280px}.review-heading{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:22px}.review-heading h3.ant-typography{display:inline-block;font-size:28px;margin:0 0 0 14px;vertical-align:middle}.review-progress{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.review-workspace{align-items:stretch;display:grid;gap:18px;grid-template-columns:minmax(230px,280px) minmax(0,1fr)}.review-sidebar,.review-main{background:#fff;border:1px solid #dce7ec;border-radius:8px;box-shadow:0 8px 22px #2846520b}.review-sidebar{display:flex;flex-direction:column;min-height:620px;overflow:hidden}.review-sidebar-heading{align-items:center;border-bottom:1px solid #edf2f4;display:flex;justify-content:space-between;padding:17px 18px}.review-record-list{flex:1;min-height:0;overflow-y:auto;padding:8px}.review-record-row{align-items:flex-start;background:transparent;border:0;border-radius:6px;color:#14232d;cursor:pointer;display:flex;gap:10px;padding:12px 10px;text-align:left;width:100%}.review-record-row:hover{background:#f2f8fb}.review-record-row.is-selected{background:#e4f2fb;color:#005f9f}.review-record-index{color:#7b8e98;flex:0 0 24px;font-size:12px;line-height:20px;text-align:center}.review-record-row.is-selected .review-record-index{color:#006fba;font-weight:700}.review-record-copy{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.review-record-barcode{font-size:14px;font-weight:700;overflow-wrap:anywhere}.review-record-meta{color:#73858f;font-size:12px}.review-page-actions{border-top:1px solid #edf2f4;display:grid;gap:8px;grid-template-columns:1fr 1fr;padding:12px}.review-page-actions .ant-btn{padding-inline:8px}.review-main{display:flex;flex-direction:column;min-height:620px;padding:24px}.review-loading,.review-empty-photo{align-items:center;display:flex;flex:1;justify-content:center;min-height:360px}.review-record-heading{align-items:flex-start;border-bottom:1px solid #edf2f4;display:flex;gap:18px;justify-content:space-between;padding-bottom:18px}.review-record-title{align-items:center;color:#006fba;display:flex;gap:9px;min-width:0}.review-record-title .ant-typography{color:#14232d;font-size:19px;overflow-wrap:anywhere}.review-photo-stage{align-items:center;background:#f1f5f7;border:1px solid #e0e9ed;border-radius:6px;display:flex;justify-content:center;margin-top:20px;min-height:420px;overflow:hidden;padding:18px}.review-photo-stage .ant-image{align-items:center;display:flex;height:100%;justify-content:center;max-height:560px;max-width:100%;width:100%}.review-primary-photo .ant-image-img{display:block;max-height:520px;max-width:100%;object-fit:contain;width:auto}.review-photo-footer{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-top:14px}.review-photo-thumbs{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.review-photo-thumb{background:#edf3f5;border:2px solid transparent;border-radius:5px;cursor:pointer;height:52px;overflow:hidden;padding:0;width:52px}.review-photo-thumb:hover,.review-photo-thumb.is-selected{border-color:#006fba}.review-photo-thumb img{height:100%;object-fit:cover;width:100%}.review-navigation{align-items:center;border-top:1px solid #edf2f4;display:flex;gap:12px;justify-content:space-between;margin-top:auto;padding-top:20px}.pagination-row{display:flex;justify-content:flex-end;padding:24px 0 0}.backup-panel.ant-card{background:#fff;border:1px solid #dce7ec;box-shadow:0 12px 28px #2846520d}.backup-panel .ant-list-item{align-items:center;gap:20px;padding:16px 4px}.backup-info{align-items:center;display:flex;gap:14px;min-width:0}.backup-icon{align-items:center;background:#e4f2fb;border-radius:8px;color:#006fba;display:flex;flex:0 0 auto;font-size:20px;height:40px;justify-content:center;width:40px}.backup-details{display:flex;flex-direction:column;gap:4px;min-width:0}.backup-name{color:#14232d;font-weight:700;overflow-wrap:anywhere}.backup-actions{margin-left:auto}.backup-create-button,.backup-import-button{min-width:112px}.backup-create-button.ant-btn-primary,.backup-create-button.ant-btn-primary:hover,.backup-create-button.ant-btn-primary:focus{background:#006fba;border-color:#006fba;color:#fff}.backup-create-button.ant-btn-primary.ant-btn-loading,.backup-create-button.ant-btn-primary.ant-btn-disabled{background:#006fba;border-color:#006fba;color:#fff;opacity:.68}.page-actions .ant-upload{display:inline-flex}@media(max-width:991px){.desktop-sider{display:none}.mobile-brand{display:flex}.mobile-nav-button{display:inline-flex;margin-right:8px}.app-header{padding:0 18px}}@media(max-width:700px){.auth-panel{border-radius:14px;padding:26px 20px}.auth-brand{margin-bottom:28px}.app-header{height:62px}.account-name{display:none}.app-content{padding:24px 14px 36px}.page-heading{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:20px}.page-actions{width:100%}.backup-page-actions{display:grid!important;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.backup-page-actions .ant-space-item,.backup-page-actions .ant-upload{min-width:0;width:100%}.page-actions .ant-btn,.page-actions .ant-upload{flex:1}.page-actions .ant-upload .ant-btn{width:100%}.filter-panel.ant-card .ant-card-body{padding:16px}.review-heading{align-items:flex-start;flex-direction:column;gap:14px}.review-heading h3.ant-typography{font-size:25px}.review-progress{align-items:flex-start;flex-direction:row;gap:12px}.review-workspace{grid-template-columns:1fr}.review-sidebar{min-height:0}.review-record-list{max-height:220px}.review-main{min-height:520px;padding:16px}.review-record-heading{flex-direction:column;gap:8px}.review-photo-stage{min-height:300px;padding:10px}.review-photo-footer{align-items:flex-start;flex-direction:column;gap:12px}.review-photo-thumbs{justify-content:flex-start}.review-navigation .ant-btn{min-width:98px}.filter-grid{grid-template-columns:1fr}.filter-buttons{display:grid;grid-template-columns:1fr 1fr}.record-card{padding:14px}.record-main{flex-wrap:wrap}.record-info{flex:1 1 calc(100% - 96px)}.record-actions{flex-wrap:wrap;margin:4px 0 0 88px;width:calc(100% - 88px)}.record-actions .ant-btn{flex:1 1 calc(50% - 4px)}.record-detail-drawer .ant-drawer-content-wrapper{width:100%!important}.detail-photo-grid .ant-image{height:58px;width:58px}.pagination-row{justify-content:center}.backup-panel .ant-card-body{padding:12px 16px}.backup-panel .ant-list-item{align-items:flex-start;flex-direction:column;gap:12px}.backup-info{width:100%}.selection-toolbar{align-items:flex-start;flex-wrap:wrap;gap:8px 14px}.selection-toolbar .ant-btn{margin-left:0;width:100%}.backup-actions{margin-left:54px;width:calc(100% - 54px)}.backup-actions .ant-btn{flex:1}}
