html{overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#94a689 #f4f7f2}
body{width:100%;margin:0;overflow:visible}.app-shell{width:100%}
.topbar{height:64px}.main{padding-top:22px}.page-head{margin-bottom:18px}.page-head h1{font-size:27px}.page-head p{margin-top:6px}
.flow{padding:16px 22px 12px}.flow-step{padding-top:12px}.tab{padding-top:12px;padding-bottom:11px}
.main>section.panel{margin-bottom:18px}
.production-gate{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 20px;border:1px solid #dce6d1;border-radius:9px;background:#f1f6e9;margin:0 0 28px}
.gate-copy{min-width:0}.gate-copy h2{font-size:14px;font-weight:650;margin:0 0 5px;color:#36512e}.gate-copy>p{font-size:11px;line-height:1.6;margin:0;color:#647559;max-width:610px}
.gate-checks{display:flex;gap:10px 22px;list-style:none;padding:0;margin:10px 0 0;font-size:10px;color:#6e7d63}.gate-checks li{display:flex;align-items:center;gap:6px}.gate-checks b{font-weight:500;color:#8c7961;margin-left:7px}.requirement-icon{font-size:15px;line-height:1;color:#8b9d7b}.gate-checks .is-met,.gate-checks .is-met b,.is-met .requirement-icon{color:#426b39}
.gate-action{flex-shrink:0;text-align:center}.gate-action .btn{font-size:11px;min-height:35px}.gate-action small{display:block;font-size:9px;color:#7b8970;margin-top:7px}.gate-action .btn:disabled{cursor:not-allowed;opacity:1;background:#e1e8d8;border-color:#d5dec9;color:#7c896e;box-shadow:none}
.production-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 28px;align-items:start;margin-top:28px}
.production-card{position:relative;margin:0;min-width:0;overflow:visible}
.production-card>.panel-header{padding:15px 20px;min-height:57px;gap:12px}
.card-title{display:flex;align-items:center;gap:11px}.card-title h2{font-size:16px}
.production-card>.panel-body{padding:16px 20px 18px}
.record-empty{min-height:84px}.record-empty>strong{font-size:12px;font-weight:550;color:#67795c;display:block}.record-empty>p{font-size:11px;line-height:1.6;color:#88937e;margin:6px 0 12px;max-width:340px}.record-empty .btn{font-size:11px;padding:6px 10px}.record-empty .btn>span{font-size:16px;line-height:1}
.file-reference{display:flex;gap:9px;align-items:center;font-size:12px;line-height:1.5;color:#365344;margin-bottom:12px}
.file-reference svg{width:17px;height:17px;flex-shrink:0;stroke:#728668}
.file-reference small{display:block;font-size:10px;color:#83907a;margin-top:2px}
.file-reference>div{min-width:0;overflow-wrap:anywhere}.add-proof-version{display:block;margin-top:14px}.add-proof-version:disabled{cursor:default}
.payment-checks{display:grid;gap:8px;margin:12px 0 9px}
.payment-checks label{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.5;color:#365344;cursor:pointer}
.payment-checks input{width:15px;height:15px;margin:0;accent-color:#648545;cursor:pointer}
.microcopy{font-size:10px;line-height:1.65;color:#7b8772;margin:0}
.record-fields{display:grid;grid-template-columns:94px minmax(0,1fr);gap:10px 12px;margin:0;font-size:12px;line-height:1.5}
.record-fields dt{color:#829078}.record-fields dd{margin:0;color:#365344}
.review-row{display:flex;align-items:center;gap:16px;justify-content:space-between;margin:7px 0 10px}
.review-row>label{font-size:11px;color:#6d7e62}
.review-row select{font-family:inherit;font-size:12px;font-weight:500;color:#365344;background:#fff;border:1px solid #dce5d5;border-radius:5px;min-width:163px;padding:7px 9px}
.review-notes{display:block;margin:12px 0 8px;font-size:11px;color:#65795a}
.review-notes textarea{display:block;box-sizing:border-box;width:100%;min-height:58px;margin-top:6px;border:1px solid #dce5d5;border-radius:5px;padding:8px 10px;font:12px/1.5 Arial,sans-serif;resize:vertical;color:#365344;background:#fff}
.review-notes[hidden]{display:none}.review-notes textarea[aria-invalid=true]{border-color:#b36d58}
.review-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.review-actions .btn{font-size:11px;padding:7px 11px}.review-feedback{font-size:10px;line-height:1.5;margin:6px 0 0;color:#8f523e}.review-feedback:empty{display:none}
.proof-history{border-top:1px solid #e5eadd;margin-top:14px;padding-top:11px;font-size:11px}
.proof-history summary{cursor:pointer;color:#526b43;line-height:1.5}.history-entry{margin-top:12px;padding:12px;background:#f6f8f2;border:1px solid #e5eadd;border-radius:5px}
.history-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.history-topline strong{font-weight:600;font-size:12px}
.history-entry p{font-size:11px;line-height:1.65;margin:8px 0 0;color:#65745b}.history-entry p strong{display:block;color:#49623d;font-size:10px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.history-entry time{font-size:10px;color:#849179}.proof-latest{font-size:10px;color:#839079}
.shipping-progress{display:flex;gap:14px;margin:2px 0 18px;padding-bottom:13px;border-bottom:1px solid #e8ecdf;list-style:none;font-size:10px;color:#8d9885}
.shipping-progress li{display:flex;align-items:center;gap:7px;flex:1}.shipping-progress li:before{content:'';display:block;width:7px;height:7px;border-radius:50%;background:#dce4d3}.shipping-progress li[aria-current=step]{color:#4b693c}.shipping-progress li[aria-current=step]:before{background:#7d995e}
.board-demo-note{margin:14px 2px 0;font-size:10px;color:#86927c;line-height:1.6}
input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.btn:focus-visible{outline:2px solid #648545;outline-offset:3px}
.record-dialog{width:440px;max-width:calc(100vw - 48px);max-height:90vh;margin:auto;padding:0;border:1px solid #d8e1cf;border-radius:12px;overflow:auto;background:white}.record-dialog::backdrop{background:#263c2f70;backdrop-filter:blur(2px)}
.record-dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid #e5ebde}.record-dialog h2{font-size:18px;margin:0}.dialog-close{border:0;background:transparent;color:#718363;font:24px/1 Arial;cursor:pointer;padding:2px 6px}.record-form-fields{display:grid;gap:16px;padding:22px 24px}.record-form-fields .field{display:grid;gap:7px;font-size:12px}.record-form-fields input{width:100%;padding:9px 11px;border:1px solid #dce5d4;border-radius:6px;font-family:inherit;font-size:13px;background:white;color:#3e5338}.record-dialog footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e5ebde;background:#fafcf7}.confirmation-copy{padding:18px 24px;font-size:13px;line-height:1.8;color:#61745b}.confirmation-copy p{margin:0 0 12px}.confirmation-copy p:last-child{margin-bottom:0}
