.carcass-page{min-width:1080px}
.import-top{height:68px;padding:0 32px;display:flex;gap:30px;align-items:center;background:white;border-bottom:1px solid var(--line)}
.import-top>span{flex:1;color:var(--muted)}
.import-brand{font-size:18px;font-weight:700;color:var(--navy)}
.import-brand small{font-size:12px;color:var(--muted);margin-left:12px}
.import-main{padding:28px 30px 40px;max-width:1920px;margin:auto}
.import-heading{margin-bottom:24px}
.import-heading h1{font-size:25px}
.import-heading p,.login-panel p{color:var(--muted);margin-top:6px}
.import-picker{display:flex;align-items:end;gap:16px;background:white;border:1px solid var(--line);border-radius:12px;padding:16px}
.import-picker form{display:flex;align-items:end;gap:10px}
.import-picker label,.login-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600}
.import-picker input,.import-picker select,.login-panel input{padding:10px 12px;border:1px solid #d6dde7;border-radius:6px;background:white;min-height:42px}
.import-picker input{width:240px}
.batch-selector{flex:1;min-width:0}
.batch-selector select{width:100%}
.batch-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 0 14px;font-size:12px;color:var(--muted)}
.batch-heading>div{display:flex;align-items:center;gap:14px}
.batch-heading strong{color:var(--text);font-size:17px}
.review-grid{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(550px,1.08fr);gap:20px;align-items:start}
.photo-panel,.data-panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.photo-panel{position:sticky;top:18px}
.photo-toolbar{display:flex;gap:8px;align-items:center;padding:14px;border-bottom:1px solid var(--line)}
.photo-toolbar select{flex:1;min-width:0;padding:6px;border:1px solid var(--line);border-radius:5px}
.photo-toolbar button{padding:6px 12px;border:1px solid var(--line);border-radius:5px;background:white}
.photo-view{height:calc(100vh - 310px);min-height:420px;overflow:auto;background:#e9edf2;display:flex;align-items:flex-start}
.photo-view img{width:100%;height:auto;display:block;flex-shrink:0}
.photo-state{padding:12px 16px;min-height:48px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.summary-header{display:grid;grid-template-columns:1.6fr 1fr 1fr;padding:18px 22px;background:#f8faff;border-bottom:1px solid var(--line)}
.summary-header>div{display:flex;flex-direction:column;padding-left:18px;border-left:1px solid #e0e6f0}
.summary-header>div:first-child{padding-left:0;border:0}
.summary-header span{font-size:12px;color:var(--muted)}
.summary-header strong{font-size:29px;color:var(--navy);line-height:1.5;font-variant-numeric:tabular-nums}
.summary-header small{font-size:13px;font-weight:400}
#provisional{color:var(--red)}
.review-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;gap:8px}
.review-toolbar>span{font-size:11px;color:var(--muted)}
.review-toolbar .button{white-space:nowrap;font-size:12px}
.entry-list{padding:0 16px 12px;max-height:calc(100vh - 460px);min-height:230px;overflow:auto}
.entry{border:1px solid var(--line);border-radius:8px;margin:0 0 10px;padding:12px;background:white}
.entry.yellow{border:2px solid #e3b343;background:#fffcf3;padding:11px}
.entry.red{border:2px solid #db646b;background:#fff8f8;padding:11px}
.entry.selected{box-shadow:0 0 0 2px #7195e3}
.entry.deleted{opacity:.6;background:#f0f2f5}
.entry-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.entry-top span{font-size:11px;color:var(--muted)}
.entry-top button{border:0;background:transparent;color:var(--blue);font-size:12px;padding:0 4px}
.entry-fields{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px}
.entry-fields label{font-size:11px;font-weight:600}
.entry-fields input{display:block;width:100%;padding:7px 8px;margin-top:3px;border:1px solid #d5dce7;border-radius:5px;background:white;font-size:14px}
.entry-fields input[data-field="weight_kg"]{text-align:right;font-variant-numeric:tabular-nums}
.entry-reasons{color:#b34b32;font-size:11px;margin-top:8px}
.entry-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;color:var(--muted);gap:8px}
.entry-bottom label{white-space:nowrap}
.entry-bottom input,.save-bar input{vertical-align:middle}
.entry-original{overflow-wrap:anywhere}
.save-bar{padding:16px 18px;border-top:1px solid var(--line);background:white}
.save-bar>label{display:block;font-size:12px;margin-bottom:14px}
.save-bar>div{display:flex;align-items:center;justify-content:flex-end;gap:10px}
#dirty-state{flex:1;font-size:11px;color:var(--muted)}
.processing{padding:16px;margin:0 16px 12px;border-radius:8px;background:#eef3ff;font-size:13px}
.processing button{margin-top:10px}
.import-empty{padding:50px;text-align:center;color:var(--muted)}
.import-message{position:fixed;bottom:20px;right:24px;max-width:600px;padding:14px 20px;background:#193c70;color:white;border-radius:8px;z-index:10;box-shadow:0 4px 24px #193c7026}
.import-message.error{background:#a83d48}
.login-panel{max-width:540px;margin:70px auto;padding:36px;border:1px solid var(--line);border-radius:14px;background:white}
.login-panel h1{font-size:24px}
.login-panel form{margin-top:24px}
.login-panel input{margin-bottom:18px}
.login-panel .button{margin-top:20px;width:100%;justify-content:center}
[hidden]{display:none!important}

.review-grid{height:calc(100vh - 410px);min-height:480px}
.photo-panel,.data-panel{height:100%;display:flex;flex-direction:column}
.photo-panel{position:static}
.photo-view{flex:1;min-height:0;height:auto}
.photo-toolbar,.photo-state,.summary-header,.review-toolbar,.save-bar{flex-shrink:0}
.entry-list{flex:1;min-height:0;max-height:none}
.list-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.list-filters form{width:100%;flex-wrap:wrap}
.list-filters input[type="date"]{width:160px}
.list-filters select{min-width:140px}
.import-list-panel{margin-top:22px;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.list-overview{display:flex;align-items:center;gap:22px;padding:20px 22px 10px}
.list-overview label,.list-overview>span{font-size:12px;color:var(--muted)}
.list-overview>span{margin-left:auto}
.list-note{font-size:12px;color:var(--muted);padding:0 22px 20px}
.import-table{width:100%}
.import-table td{vertical-align:middle}
.import-table th,.import-table td{white-space:nowrap}
.import-row{cursor:pointer}
.import-row:hover{background:#f4f7fe}
.import-row:focus-within{outline:2px solid #7195e3;outline-offset:-2px;background:#f4f7fe}
.import-id{font-size:10px;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.list-pagination{padding:18px 22px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.list-pagination>div{display:flex;gap:10px}
.review-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.review-heading>div:last-child{display:flex;gap:10px}
.review-page .review-grid{height:calc(100vh - 320px)}
.batch-heading{gap:12px;flex-wrap:wrap}
#saved-summary{max-width:100%;overflow-wrap:anywhere}


.import-table .red-text{color:var(--red)}

/* List-page sidebar and responsive layout. */
.carcass-list-page{min-width:320px}
.carcass-list-page .main-shell{min-width:0}
.carcass-list-page .import-top{height:72px;padding:0 30px;gap:18px}
.carcass-list-page .import-top>span{font-size:13px;color:var(--navy);font-weight:600}
.carcass-list-page .sidebar-bottom{padding:16px 0 22px}
.carcass-list-page .sidebar-bottom .button{width:100%;justify-content:center}
.carcass-list-page #navigation{min-height:0}
.carcass-list-page .list-filters form{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(135px,1fr)) auto auto;gap:12px}
.carcass-list-page .list-filters label{min-width:0}
.carcass-list-page .list-filters input,.carcass-list-page .list-filters select{width:100%;min-width:0;max-width:100%}
.carcass-list-page .list-filters button{justify-content:center}
.carcass-list-page .import-table{min-width:1050px}
@media(max-width:1200px){
  .carcass-list-page .list-filters form{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1000px){
  .carcass-list-page .list-filters form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .carcass-list-page .list-overview{flex-wrap:wrap;gap:12px}
  .carcass-list-page .list-overview>span{margin-left:0}
}
@media(max-width:760px){
  .carcass-list-page .import-top{height:60px;padding:0 16px;gap:10px}
  .carcass-list-page .import-top>span{font-size:12px}
  .carcass-list-page .import-top>.button{padding:8px 10px;font-size:11px;white-space:nowrap}
  .carcass-list-page .import-main{padding:25px 16px 32px}
  .carcass-list-page .import-heading h1{font-size:23px}
  .carcass-list-page .list-heading{align-items:flex-start;flex-wrap:wrap;gap:14px}
  .carcass-list-page .list-filters form>label:first-child{grid-column:1/-1}
  .carcass-list-page .list-overview{padding:18px 16px 10px}
  .carcass-list-page .list-note{padding:0 16px 18px}
  .carcass-list-page .list-pagination{padding:16px;align-items:flex-start;flex-direction:column;gap:12px}
  .carcass-list-page .list-pagination>div{width:100%;justify-content:flex-end}
  .carcass-list-page .login-panel{padding:24px;margin:40px auto}
  .carcass-list-page .import-message{left:16px;right:16px;bottom:16px;max-width:none}
}
