:root{--bg: #f4f7fb;--panel: #ffffff;--line: #d8e0eb;--ink: #172033;--muted: #667085;--blue: #2563eb;--green: #16845b;--amber: #b76e00;--red: #c0392b}.access-page{padding:24px;display:grid;gap:16px}.access-user-list{display:grid;gap:12px}.access-summary{display:flex;align-items:center;gap:18px;padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--muted)}.access-summary strong{color:var(--text)}.access-summary input{margin-left:auto;width:min(360px,36vw)}.access-user-card{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(360px,2fr) 140px auto;gap:16px;align-items:center;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:#fff}.access-user-identity{display:grid;gap:4px;min-width:0}.access-user-identity span,.access-user-identity small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-role-options{display:flex;flex-wrap:wrap;gap:8px}.access-role-options label{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:9px;background:#f4f7fb;font-size:13px}.access-save-cell{display:grid;justify-items:stretch;gap:5px;min-width:118px}.access-save-message{font-size:12px;text-align:center;white-space:nowrap}.access-save-message.success{color:#15803d}.access-save-message.error{color:#b91c1c}.access-toast{position:fixed;right:28px;bottom:28px;z-index:1000;display:flex;align-items:center;gap:9px;max-width:420px;padding:13px 16px;border-radius:12px;color:#fff;box-shadow:0 14px 38px #0f172a38}.access-toast.success{background:#15803d}.access-toast.error{background:#b91c1c}.issue-choice-group{border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin:0}.issue-choice-group legend{padding:0 6px;font-weight:700;color:var(--text)}.issue-choice-group>div,.issue-evidence-options{display:flex;flex-wrap:wrap;gap:8px}.choice-chip{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:6px;width:auto!important;padding:7px 10px;border-radius:9px;background:#f4f7fb;font-size:13px}.choice-chip input{width:auto!important;margin:0}.issue-choice-group small,.issue-confirmation-split small{display:block;margin-top:8px;color:var(--muted)}.issue-confirmation-split{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;padding:12px 14px;border:1px solid var(--border);border-radius:12px}.issue-confirmation-split small{grid-column:1 / -1}.issue-strategy-group{border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin:0}.issue-strategy-group legend{padding:0 6px;font-weight:700}.issue-strategy-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.issue-strategy-options label{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#fff;cursor:pointer}.issue-strategy-options label.selected{border-color:#2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb}.issue-strategy-options input{width:auto!important;margin-top:3px}.issue-strategy-options span{display:grid;gap:3px}.issue-strategy-options small,.issue-strategy-group p{color:var(--muted)}.issue-strategy-group p{margin:10px 0 0;font-size:13px}.expanded-sample-input{display:grid;grid-template-columns:auto 140px 1fr;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border-radius:10px;background:#eff6ff}.expanded-sample-input input{width:140px}@media(max-width:1100px){.issue-strategy-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.ng-group-review{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;border:1px solid #b9cdf5;border-radius:12px;background:#f7faff}.ng-group-review>div:first-child{display:grid;gap:3px}.ng-group-review>div:first-child span{color:var(--muted);font-size:12px}.ng-group-review>div:last-child{display:flex;flex-wrap:wrap;gap:7px}.ng-group-review button{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--border);border-radius:9px;background:#fff}.ng-group-review button.active{color:#1d4ed8;border-color:#2563eb;background:#eff6ff}.ng-group-review button small{padding:1px 5px;border-radius:99px;background:#2563eb1a}.inspection-adjustment-summary{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #bfd2f4;border-radius:10px;background:#f6f9ff}.inspection-adjustment-summary>div{display:grid;gap:2px;padding:6px 10px;border-radius:8px;background:#fff}.inspection-adjustment-summary small{color:var(--muted)}@media(max-width:1050px){.access-user-card{grid-template-columns:1fr;align-items:stretch}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif}button{font:inherit;cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:72px minmax(0,1fr)}.sidebar{position:relative;z-index:30;background:#101827;padding:16px 10px;display:grid;align-content:start;justify-items:center;gap:12px}.brand,.sidebar button{width:44px;height:44px;border:0;border-radius:8px;display:grid;place-items:center}.brand{background:#e7f0ff;color:#123b77;font-weight:900}.sidebar button{position:relative;color:#dbeafe;background:#172235}.sidebar button.active{background:#2563eb;color:#fff}.sidebar button[aria-label]:after{content:attr(aria-label);position:absolute;left:calc(100% + 12px);top:50%;z-index:100;transform:translate(6px,-50%);min-width:max-content;padding:8px 11px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#111827;color:#fff;box-shadow:0 10px 28px #0f172a3d;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s ease}.sidebar button[aria-label]:before{content:"";position:absolute;left:calc(100% + 7px);top:50%;z-index:101;width:8px;height:8px;transform:translate(6px,-50%) rotate(45deg);background:#111827;opacity:0;visibility:hidden;transition:opacity .14s ease,transform .14s ease,visibility .14s ease}.sidebar button[aria-label]:hover:after,.sidebar button[aria-label]:focus-visible:after{opacity:1;visibility:visible;transform:translateY(-50%)}.sidebar button[aria-label]:hover:before,.sidebar button[aria-label]:focus-visible:before{opacity:1;visibility:visible;transform:translateY(-50%) rotate(45deg)}.workspace{padding:20px;display:grid;gap:14px}.topbar,.status-tabs,.panel-head,.detail-hero{display:flex;align-items:center;justify-content:space-between;gap:16px}h1,h2,h3,h4,p{margin:0}.topbar p,.detail-hero p,.detail-hero span,.order-card span,.order-card small,.summary-grid span,.section-grid p{color:var(--muted)}.actions{display:flex;gap:10px}.actions button,.detail-hero button,.status-tabs button{min-height:38px;border-radius:8px;border:1px solid var(--line);background:#fff;padding:0 12px;display:inline-flex;align-items:center;gap:7px;font-weight:700}.ghost{background:#fff!important;color:var(--ink);border-color:var(--line)!important}.primary{background:var(--blue)!important;color:#fff;border-color:var(--blue)!important}.status-tabs{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px;justify-content:flex-start;overflow-x:auto}.order-search-bar{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.4fr) auto auto auto;gap:8px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.order-search-bar input{min-height:36px}.order-search-bar>span{color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.sync-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.sync-summary.compact{align-items:center;gap:10px;padding:9px 12px}.sync-summary.review{border-color:#fde68a;background:#fffbeb}.sync-summary.error{border-color:#fecaca;background:#fef2f2}.sync-main,.sync-summary div{display:grid;gap:4px}.sync-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.sync-summary p{margin:0;color:#475569;font-size:13px}.sync-compact-facts{display:flex;flex-wrap:wrap;gap:6px}.sync-compact-facts span{color:#475569;font-size:12px;font-weight:800;line-height:1.2}.sync-compact-facts span+span{padding-left:6px;border-left:1px solid rgba(100,116,139,.28)}.work-item-panel{display:grid;gap:10px;border:1px solid #c7d2fe;border-radius:8px;background:#fff;padding:10px 12px}.work-item-head{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:12px}.work-item-head h2{margin:2px 0;font-size:18px}.work-item-head p{margin:0;color:var(--muted);font-size:12px}.work-item-stats{display:grid;grid-template-columns:repeat(3,minmax(64px,auto));gap:6px}.work-item-stats div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:6px 10px}.work-item-stats span,.work-item-meta span{color:var(--muted);font-size:11px;font-weight:700}.work-item-stats strong{display:block;margin-top:2px;font-size:16px}.work-item-list{display:grid;gap:6px}.work-item-filterbar{display:flex;flex-wrap:wrap;gap:6px}.work-item-filterbar input{min-width:min(280px,100%);min-height:28px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:0 12px;color:var(--ink);font-size:12px}.work-item-filterbar button{min-height:28px;border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:#475569;padding:0 9px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:850;cursor:pointer}.work-item-filterbar button.active{border-color:#93c5fd;background:#eff6ff;color:var(--blue)}.work-item-filterbar strong{font-size:12px}.work-item-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-left:4px solid #94a3b8;border-radius:8px;background:#f8fafc;padding:8px 10px}.work-item-card.critical{border-left-color:var(--red)}.work-item-card.high{border-left-color:var(--amber)}.work-item-card.medium{border-left-color:var(--blue)}.work-item-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.work-item-title-row strong{font-size:14px}.work-item-title-row em{color:var(--muted);font-size:12px;font-style:normal}.work-item-main p{margin:4px 0 6px;color:#334155;font-size:12px;line-height:1.45}.work-item-meta{display:flex;flex-wrap:wrap;gap:6px 10px}.work-item-actions{display:flex;gap:6px;align-items:center}.work-item-actions button{min-height:32px;white-space:nowrap}.work-item-more-row{display:flex;align-items:center;justify-content:flex-end;gap:10px}.work-item-more-row span{color:var(--muted);font-size:12px}.danger-text{color:var(--red)!important}.admin-cleanup-panel{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px 14px;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fff7f7}.admin-cleanup-panel p,.admin-cleanup-panel em{margin:0;color:#64748b;font-size:12px}.admin-cleanup-panel em{color:#991b1b;font-style:normal}.cleanup-actions{display:flex;align-items:center;gap:8px}.cleanup-buckets{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.cleanup-buckets article{display:grid;gap:4px;min-width:0;padding:8px;border:1px solid #fee2e2;border-radius:8px;background:#fff}.cleanup-buckets strong{display:flex;justify-content:space-between;gap:8px;font-size:13px}.cleanup-buckets small{color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-tabs button.active{color:var(--blue);background:#eef4ff;border-color:#bfdbfe}.status-tabs strong{min-width:22px;min-height:22px;border-radius:999px;display:grid;place-items:center;background:#edf2f7}.order-list,.detail,.table-card,.report-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden}.page-panel{min-height:calc(100vh - 176px)}.panel-head,.detail-hero{padding:14px;border-bottom:1px solid var(--line)}.order-grid{padding:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(430px,1fr));gap:10px}.load-more-row{display:grid;place-items:center;padding:6px 12px 14px}.order-card{width:100%;text-align:left;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px}.order-card:hover{background:#f3f7ff}.part-thumb{width:58px;height:58px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,rgba(37,99,235,.12),transparent 48%),repeating-linear-gradient(45deg,#eef2f7,#eef2f7 9px,#f8fafc 9px,#f8fafc 18px);display:grid;place-items:center;color:#475569;font-size:12px;font-weight:900;overflow:hidden}.part-thumb img{width:100%;height:100%;object-fit:cover}.part-thumb.has-file-id{background:linear-gradient(135deg,rgba(14,165,233,.16),transparent 48%),repeating-linear-gradient(45deg,#ecfeff,#ecfeff 9px,#f8fafc 9px,#f8fafc 18px);color:#0369a1}.part-thumb.large{width:86px;height:86px;font-size:15px}.order-card-main{display:grid;gap:7px}.order-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.order-card h3{font-size:15px}.order-card em{flex:0 0 auto;border-radius:999px;padding:3px 8px;font-style:normal;font-size:12px;font-weight:800;background:#eef2ff;color:#3340a0}.order-card em.danger{background:#fee2e2;color:var(--red)}.order-card em.warn{background:#fff7df;color:var(--amber)}.order-card em.prepare{background:#e0f2fe;color:#0369a1}.order-card em.good{background:#e6f7ef;color:var(--green)}.flag-row,.tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.flag-row span,.tag-row span{min-height:20px;border-radius:999px;padding:2px 7px;background:#eef4ff;color:var(--blue);font-size:11px;font-weight:800}.tag-row span{background:#f1f5f9;color:#475569}.order-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.order-facts div{display:grid;gap:1px}.order-facts span{color:var(--muted);font-size:11px;font-weight:650}.order-facts strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.detail{min-height:680px}.detail-hero{position:relative;padding:18px 22px 18px 172px;background:linear-gradient(180deg,#fff,#f8fbff)}.back-button{position:absolute;left:14px;top:14px}.eyebrow{display:block;color:var(--blue)!important;font-size:12px;font-weight:850;margin-bottom:6px}.detail-hero h2{font-size:22px}.detail-status-stack{min-width:120px;display:grid;justify-items:end;gap:7px}.detail-status-stack em{border-radius:999px;padding:4px 9px;font-style:normal;font-size:12px;font-weight:850;background:#eef2ff;color:#3340a0}.detail-status-stack em.danger{background:#fee2e2;color:var(--red)}.detail-status-stack em.warn{background:#fff7df;color:var(--amber)}.detail-status-stack em.prepare{background:#e0f2fe;color:#0369a1}.detail-status-stack em.good{background:#e6f7ef;color:var(--green)}.detail-status-stack strong{font-size:13px}.detail-tabs{display:flex;gap:2px;padding:0 16px;border-bottom:1px solid var(--line);background:#fff;overflow-x:auto}.detail-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;min-height:48px;padding:0 12px;color:var(--muted);font-weight:760}.detail-tabs button.active{color:var(--blue);border-bottom-color:var(--blue)}.quality-guide{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.6fr);gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:#f8fafc}.quality-guide-main{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px;display:grid;align-content:center;gap:4px}.quality-guide-main p{color:var(--muted);font-size:12px;line-height:1.45}.quality-guide-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.quality-guide-steps button{min-height:74px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-rows:auto auto;gap:2px 8px;text-align:left}.quality-guide-steps button>span{grid-row:1 / span 2;width:24px;height:24px;border-radius:999px;background:#e2e8f0;color:#475569;display:grid;place-items:center;font-size:12px;font-weight:900}.quality-guide-steps strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.quality-guide-steps small{color:var(--muted);font-size:11px;font-weight:750}.quality-guide-steps .done{border-color:#bbf7d0;background:#f0fdf4}.quality-guide-steps .done>span{background:#dcfce7;color:var(--green)}.quality-guide-steps .active,.quality-guide-steps .active-tab{border-color:#bfdbfe;background:#eff6ff}.quality-guide-steps .active>span,.quality-guide-steps .active-tab>span{background:#dbeafe;color:var(--blue)}.quality-guide-steps .blocked{border-color:#fecaca;background:#fff7f7}.quality-guide-steps .blocked>span{background:#fee2e2;color:var(--red)}.detail-content{padding:18px 20px 22px}.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.overview-page{display:grid;gap:14px}.overview-decision-band{border:1px solid var(--line);border-radius:8px;background:#fff;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(260px,1.15fr);overflow:hidden}.overview-decision-cell,.overview-next-action{min-height:130px;padding:16px;display:grid;align-content:start;gap:6px;border-right:1px solid var(--line)}.overview-decision-cell{box-shadow:inset 0 3px #cbd5e1}.overview-decision-cell.good{box-shadow:inset 0 3px 0 var(--green)}.overview-decision-cell.warn{box-shadow:inset 0 3px 0 var(--amber)}.overview-decision-cell.blocked{box-shadow:inset 0 3px 0 var(--red)}.overview-decision-cell>span,.overview-next-action>span{color:var(--muted);font-size:12px;font-weight:800}.overview-decision-cell>strong,.overview-next-action>strong{color:var(--ink);font-size:20px;line-height:1.2}.overview-decision-cell>p,.overview-next-action>p{color:#475569;font-size:12px;line-height:1.45}.overview-next-action{border-right:0;background:#f8fafc;grid-template-rows:auto auto 1fr auto}.overview-next-action button{min-height:38px;justify-self:start;border:1px solid var(--blue);border-radius:7px;padding:0 13px;font-weight:850}.overview-order-strip{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 14px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.overview-order-strip div{min-width:0;border-right:1px solid #e2e8f0;padding-right:10px}.overview-order-strip div:last-child{border-right:0}.overview-order-strip span,.overview-order-strip strong{display:block}.overview-order-strip span{color:var(--muted);font-size:11px;font-weight:800}.overview-order-strip strong{margin-top:3px;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.overview-section{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.overview-section-head{min-height:62px;padding:11px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.overview-section-head h3{font-size:16px}.overview-section-head p{margin-top:3px;color:var(--muted);font-size:12px}.overview-section-head>button,.workflow-head-actions button{min-height:32px;border:1px solid var(--line);border-radius:7px;padding:0 9px;font-size:12px;font-weight:800}.overview-section-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.overview-part-list{display:grid}.overview-part-list article{min-height:72px;padding:8px 14px;border-bottom:1px solid #e8edf4;display:grid;grid-template-columns:64px minmax(240px,1.4fr) minmax(120px,.7fr) minmax(120px,.7fr) 80px 110px;align-items:center;column-gap:16px;row-gap:10px}.overview-part-list article.has-issue{background:#fff7f7}.overview-part-list article:last-child{border-bottom:0}.overview-part-name{min-width:0}.overview-part-list strong,.overview-part-list span{display:block}.overview-part-list strong{overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.overview-part-list span{color:var(--muted);font-size:12px}.overview-part-list span small{display:block;margin-bottom:2px;color:#94a3b8;font-size:10px;font-weight:900}.overview-part-list em{justify-self:end;border-radius:999px;padding:4px 8px;background:#f1f5f9;color:#475569;font-size:12px;font-style:normal;font-weight:850;white-space:nowrap}.overview-part-list em.good{background:#dcfce7;color:#15803d}.overview-part-list em.danger{background:#fee2e2;color:#b91c1c}.overview-gate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.overview-gate-list>button{min-height:70px;border:0;border-right:1px solid #e8edf4;border-bottom:1px solid #e8edf4;background:#fff;padding:11px 14px;display:grid;grid-template-columns:64px minmax(130px,.55fr) minmax(220px,1fr) 72px;align-items:center;gap:10px;color:var(--ink);text-align:left}.overview-gate-list>button:hover{background:#f8fafc}.overview-gate-list>button:disabled{cursor:default;opacity:1}.overview-gate-list p{color:#475569;font-size:12px;line-height:1.4}.overview-gate-list em{justify-self:end;color:var(--muted);font-size:11px;font-style:normal;font-weight:800}.overview-gate-state{border-radius:999px;padding:4px 7px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:850;text-align:center}.overview-gate-state.pass{background:#dcfce7;color:#15803d}.overview-gate-state.warn{background:#fef3c7;color:#a16207}.overview-gate-state.fail{background:#fee2e2;color:#b91c1c}.workflow-head-actions{display:flex;align-items:center;gap:6px}.workflow-head-actions select{min-height:32px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 8px;font-size:12px}.workflow-section.compact .workflow-timeline article{padding:10px 14px}.wide{grid-column:1 / -1}.info-block{border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px;display:grid;gap:10px}.gate-score{min-height:70px;padding:14px;border:1px solid var(--line);border-radius:8px;display:grid;gap:4px}.gate-score strong{font-size:24px}.gate-score span{color:var(--muted);font-weight:700}.gate-score.blocked{background:#fff6f3;border-color:#ffd6cf}.gate-score.blocked strong{color:var(--red)}.gate-score.prepare{background:#eff6ff;border-color:#bfdbfe}.gate-score.prepare strong{color:#0369a1}.gate-score.allowed{background:#f0fdf7;border-color:#c8f0dc}.gate-score.allowed strong{color:var(--green)}.gate-score.checking{background:#fffaf0;border-color:#fde68a}.gate-score.checking strong{color:var(--amber)}.kv-grid,.focus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.focus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.kv-grid div,.focus-grid div{min-height:58px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;display:grid;align-content:center;gap:4px}.kv-grid span,.focus-grid span{color:var(--muted);font-size:12px;font-weight:650}.kv-grid strong,.focus-grid strong{font-size:13px}.child-order-strip{margin-top:12px;padding:10px 12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;display:grid;gap:8px}.child-order-strip>span{color:#1e40af;font-size:12px;font-weight:700}.child-order-strip>div{display:flex;flex-wrap:wrap;gap:8px}.child-order-strip b{max-width:360px;padding:5px 8px;border:1px solid #dbeafe;border-radius:6px;background:#fff;color:#172033;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-list{display:grid;gap:10px}.action-list div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.action-list div strong,.action-list div p{grid-column:2}.action-list div>span{grid-row:1 / 3}.action-list div>span{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:#eef4ff;color:var(--blue);font-size:12px;font-weight:900}.action-list p,.info-block p{color:var(--muted);line-height:1.5}.mes-context,.inspection-tab{display:grid;gap:14px}.requirement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.requirement-grid article{padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;display:grid;gap:6px}.chip-row,.attachment-row,.report-status-strip,.actions-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.requirement-chip,.attachment-pill,.mini-pill,.status-badge{min-height:24px;border-radius:999px;padding:3px 9px;display:inline-flex;align-items:center;background:#eef4ff;color:var(--blue);font-size:12px;font-weight:800}.attachment-pill,.mini-pill{background:#f1f5f9;color:#475569}.status-badge.danger{background:#fee2e2;color:var(--red)}.status-badge.warn{background:#fff7df;color:var(--amber)}.status-badge.prepare{background:#e0f2fe;color:#0369a1}.status-badge.good{background:#e6f7ef;color:var(--green)}.status-badge.muted{background:#f1f5f9;color:#64748b}.health-hero{padding:14px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:12px;border-bottom:1px solid var(--line)}.health-score{border:1px solid var(--line);border-radius:8px;padding:14px;background:#f8fafc;display:grid;align-content:center;gap:8px}.health-score strong{font-size:32px;line-height:1}.health-score.good{background:#ecfdf5;border-color:#b7e4cf}.health-score.warn{background:#fff8e7;border-color:#f3d58a}.health-score.danger{background:#fff1f2;border-color:#fecdd3}.health-score span,.health-score small,.health-meta-grid span,.health-check-card em,.health-check-card small,.health-boundary p{color:var(--muted)}.health-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.health-meta-grid div,.health-metrics div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;gap:4px}.health-meta-grid .wide{grid-column:span 2}.health-meta-grid strong{word-break:break-word}.health-metrics{padding:12px 14px}.mes-write-boundary-strip{margin:0 14px 12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:10px 12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.mes-write-boundary-strip strong{color:#1d4ed8;font-size:13px}.mes-write-boundary-strip span{color:#475569;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-check-grid{padding:0 14px 14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.health-check-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;gap:8px}.health-check-card.good{border-left:4px solid var(--green)}.health-check-card.warn{border-left:4px solid var(--amber)}.health-check-card.danger{border-left:4px solid var(--red)}.health-check-card>div,.health-boundary{display:flex;align-items:center;justify-content:space-between;gap:10px}.health-check-card p{color:#344054}.health-boundary{margin:0 14px 14px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:14px}.quality-gate-panel{display:grid;gap:12px}.quality-gate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}.quality-gate-check{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;gap:7px;border-left-width:4px}.quality-gate-check.pass{border-left-color:var(--green)}.quality-gate-check.warn{border-left-color:var(--amber)}.quality-gate-check.fail{border-left-color:var(--red)}.quality-gate-check>div,.quality-gate-footer{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quality-gate-check p{color:#344054}.quality-gate-check small,.quality-gate-footer{color:var(--muted)}.quality-gate-footer{border-top:1px solid var(--line);padding-top:10px;font-size:13px}.summary-strip,.qc-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.summary-strip div,.qc-result-grid div{min-height:58px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:grid;align-content:center;gap:3px}.summary-strip span,.qc-result-grid span,.attachment-card span,.report-preview span,.muted{color:var(--muted);font-size:12px;font-weight:650}.issue-note{padding:12px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;line-height:1.55;color:#713f12}.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px}.qc-part-list{display:grid;gap:10px}.qc-part-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:12px}.qc-part-main,.qc-part-head{display:grid;gap:10px}.qc-part-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.qc-part-head p{color:var(--muted);font-size:12px;margin-top:3px}.qc-part-facts,.qc-note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.qc-note-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qc-part-facts div,.qc-note-grid div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:9px;display:grid;gap:3px}.qc-part-facts span,.qc-note-grid span{color:var(--muted);font-size:11px;font-weight:700}.qc-part-facts strong,.qc-note-grid strong{font-size:12px}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title-row>span{color:var(--muted);font-size:12px;font-weight:800}.mes-part-summary{display:grid;grid-template-columns:1.2fr 1.2fr repeat(2,.8fr);gap:8px}.mes-part-summary div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:9px 10px;display:grid;gap:3px}.mes-part-summary span,.mes-part-detail span{color:var(--muted);font-size:11px;font-weight:800}.mes-part-summary strong,.mes-part-detail strong{min-width:0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-part-table{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.mes-part-header,.mes-part-row-main{display:grid;grid-template-columns:minmax(300px,2fr) 58px minmax(150px,1.05fr) minmax(110px,.85fr) minmax(110px,.85fr) minmax(96px,.75fr) 76px 82px;align-items:center;gap:10px}.mes-part-header{min-height:36px;padding:0 12px;background:#f8fafc;color:var(--muted);font-size:11px;font-weight:900;border-bottom:1px solid var(--line)}.mes-part-row{border-bottom:1px solid var(--line)}.mes-part-row:last-child{border-bottom:0}.mes-part-row-main{width:100%;min-height:76px;border:0;background:#fff;padding:8px 12px;text-align:left;color:var(--ink)}.mes-part-row-main:hover{background:#f8fbff}.mes-part-row-main>span{min-width:0;overflow:hidden;color:#334155;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.mes-part-identity{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;min-width:0}.part-model-thumb-button{width:48px;height:48px;border:0;border-radius:8px;background:transparent;padding:0;display:grid;place-items:center;cursor:zoom-in}.part-model-thumb-button:hover:not(:disabled) .part-thumb{border-color:#2563eb73;box-shadow:0 0 0 3px #2563eb1a}.part-model-thumb-button:disabled{cursor:not-allowed;opacity:.72}.mes-part-name-block{min-width:0;display:grid;gap:4px}.mes-part-name-block strong,.mes-part-name-block span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-part-name-block span{color:var(--muted);font-size:11px;font-weight:700}.mes-part-detail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 12px 12px 72px;background:#fbfdff}.mes-part-detail div{min-width:0;display:grid;gap:3px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 10px}.mes-file-tabs{display:flex;align-items:center;gap:6px;overflow-x:auto;padding-bottom:2px}.mes-file-tabs button{min-height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#334155;padding:0 10px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:850;white-space:nowrap}.mes-file-tabs button.active{border-color:#2563eb59;background:#eff6ff;color:var(--blue)}.mes-file-tabs small{min-width:20px;border-radius:99px;background:#0f172a0f;padding:1px 6px;font-size:11px;line-height:18px;text-align:center}.mes-file-list{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.mes-file-row{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(160px,1fr) 80px 80px 120px;align-items:center;gap:10px;min-height:54px;padding:7px 10px;border-bottom:1px solid var(--line)}.mes-file-row:last-child{border-bottom:0}.mes-file-row>span{min-width:0;overflow:hidden;color:#475569;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.mes-file-name{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px}.mes-file-name>svg,.mes-file-thumb{width:34px;height:34px;border:1px solid var(--line);border-radius:7px;background:#f8fafc;object-fit:cover;color:#64748b;padding:7px;box-sizing:border-box}.mes-file-thumb{padding:0}.mes-file-name div{min-width:0;display:grid;gap:2px}.mes-file-name strong,.mes-file-name span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-file-name span{color:var(--muted);font-size:11px;font-weight:700}.mes-file-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.mes-file-actions button,.mes-file-actions a{border:0;background:transparent;color:var(--blue);padding:0;font-size:12px;font-weight:900;text-decoration:none;cursor:pointer}.mes-file-actions em{color:var(--muted);font-size:12px;font-style:normal;font-weight:750}.model-viewer-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px}.model-viewer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a9e}.model-viewer-panel{position:relative;z-index:1;width:min(1180px,96vw);height:min(780px,92vh);overflow:hidden;border:1px solid rgba(226,232,240,.8);border-radius:10px;background:#fff;box-shadow:0 28px 70px #0f172a47;display:grid;grid-template-rows:auto minmax(0,1fr)}.model-viewer-panel header{min-height:58px;border-bottom:1px solid var(--line);padding:10px 12px 10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.model-viewer-panel header>div{min-width:0;display:grid;gap:2px}.model-viewer-panel strong,.model-viewer-panel small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-viewer-panel small{color:var(--muted);font-size:12px;font-weight:700}.model-viewer-panel iframe{width:100%;height:100%;border:0;background:#f8fafc}.attachment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.attachment-card{min-height:82px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:grid;gap:5px;color:inherit;text-decoration:none}.attachment-card.clickable:hover{border-color:#2563eb59;background:#eff6ff}.mes-attachment-thumb{width:100%;height:92px;object-fit:contain;border-radius:6px;background:#fff;border:1px solid var(--line)}.mes-attachment-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mes-attachment-actions button,.mes-attachment-actions a{border:0;background:transparent;color:var(--blue);font-size:12px;font-weight:850;padding:0;text-decoration:none;cursor:pointer}.mes-pdf-preview{width:min(100%,1100px);height:min(72vh,820px);border:0;background:#fff;border-radius:8px}.cnc-tool-page{display:grid;gap:14px}.cnc-tool-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:end}.cnc-tool-meta label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:750}.cnc-tool-meta input{height:38px;border:1px solid var(--line);border-radius:8px;padding:0 11px;color:var(--ink);background:#fff}.cnc-tool-workspace{display:grid;grid-template-columns:minmax(460px,1.15fr) minmax(460px,.85fr);gap:14px;align-items:start}.cnc-tool-preview,.cnc-tool-items,.cnc-tool-history{border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px}.cnc-tool-preview-canvas{position:relative;overflow:auto;max-height:72vh;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.cnc-tool-preview-canvas img{display:block;width:100%;min-width:720px;height:auto}.cnc-tool-bubble{position:absolute;transform:translate(-50%,-50%);min-width:24px;height:24px;border:1px solid rgba(37,99,235,.35);border-radius:999px;background:#eff6ffe6;color:var(--blue);font-size:11px;font-weight:850;cursor:pointer}.cnc-tool-bubble.active{background:var(--blue);color:#fff;box-shadow:0 0 0 4px #2563eb2e}.cnc-tool-item-list{display:grid;gap:10px;max-height:72vh;overflow:auto;padding-right:4px}.candidate-action-strip.standalone{margin:8px 0 10px}.candidate-list-wrap.standalone{max-height:42vh;overflow:auto}.standalone-preview{margin-bottom:10px}.cnc-tool-active-editor{margin-top:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:11px}.cnc-tool-item{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:11px}.cnc-tool-item.active{border-color:#2563eb73;background:#eff6ff}.cnc-tool-item.excluded{opacity:.62}.cnc-tool-item-head{display:flex;align-items:center;gap:8px}.cnc-tool-item-head label{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:800;color:var(--ink)}.cnc-tool-edit-grid{display:grid;grid-template-columns:80px minmax(160px,1fr) 120px 110px;gap:8px}.cnc-tool-edit-grid.compact{grid-template-columns:80px minmax(160px,1fr) 120px 110px}.cnc-tool-edit-grid label{display:grid;gap:4px;color:var(--muted);font-size:11px;font-weight:750}.cnc-tool-edit-grid label.wide{grid-column:span 2}.cnc-tool-edit-grid input{height:34px;border:1px solid var(--line);border-radius:7px;padding:0 9px;background:#fff;color:var(--ink);min-width:0}.cnc-tool-history>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cnc-tool-history article{border:1px solid var(--line);border-radius:8px;padding:10px;display:grid;gap:5px;background:#f8fafc}.cnc-tool-history span,.cnc-tool-history em{color:var(--muted);font-size:12px;font-style:normal}.issue-workflow,.issue-grid,.report-release-stack{display:grid;gap:14px}.issue-grid{grid-template-columns:1fr}.issue-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px;display:grid;gap:12px}.issue-card.closed{border-color:#bbf7d0;background:#fbfffd}.issue-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.issue-card-head small{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}.issue-card-head em{border-radius:999px;padding:3px 9px;background:#f1f5f9;color:#475569;font-style:normal;font-size:12px;font-weight:800}.issue-command-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.issue-command-strip div{min-height:72px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:grid;gap:3px}.issue-command-strip span,.issue-command-strip small{color:var(--muted);font-size:12px;font-weight:700}.issue-command-strip strong{font-size:22px}.issue-flow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.issue-flow-steps span{min-height:30px;border:1px solid var(--line);border-radius:7px;background:#f8fafc;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;color:var(--muted);font-size:12px;font-weight:850;text-align:center}.issue-flow-steps .done{border-color:#bbf7d0;background:#ecfdf5;color:var(--green)}.issue-flow-steps .active{border-color:#bfdbfe;background:#eef4ff;color:var(--blue)}.issue-flow-steps .blocked{border-color:#fecaca;background:#fef2f2;color:var(--red)}.issue-evidence-strip{display:flex;align-items:center;gap:8px;min-height:34px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.issue-evidence-strip>span{color:var(--muted);font-size:12px;font-weight:800}.issue-create-form{display:grid;grid-template-columns:140px 160px 120px minmax(160px,auto);gap:10px;align-items:end;margin-top:12px}.issue-create-form label{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:800}.issue-create-form .wide{grid-column:span 2}.issue-create-form textarea{min-height:64px}.release-blockers{border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;padding:10px;display:grid;gap:6px}.release-blockers strong{color:#9a3412;font-size:12px}.release-blockers span{color:#7c2d12;font-size:12px}.release-warnings{border:1px solid #fde68a;border-radius:8px;background:#fffbeb;padding:10px;display:grid;gap:6px}.release-warnings strong{color:#92400e;font-size:12px}.release-warnings span{color:#713f12;font-size:12px;line-height:1.45}.shipping-missing-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.shipping-missing-actions button,.inline-upload,.mini-upload{border:1px solid #fdba74;border-radius:8px;background:#fff}.shipping-missing-actions button{padding:8px 10px;display:grid;gap:3px;text-align:left;cursor:pointer}.shipping-missing-actions button span{color:#9a3412;font-size:13px;font-weight:850}.shipping-missing-actions button em{color:#7c2d12;font-size:12px;font-style:normal}.inline-upload,.mini-upload{min-height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;color:#9a3412;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}.inline-upload input,.mini-upload input{display:none}.inline-upload.disabled,.mini-upload.disabled{opacity:.55;cursor:not-allowed}.shipping-package-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mini-upload{min-height:28px;border-color:var(--line);color:var(--blue)}.workflow-timeline{display:grid}.workflow-timeline article{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}.workflow-timeline article:last-child{border-bottom:0}.workflow-timeline article>span{color:var(--muted);font-size:12px;font-weight:750}.workflow-timeline strong{display:block;font-size:13px}.workflow-timeline p{margin-top:4px;color:#475569;font-size:12px}.workflow-timeline em{display:block;margin-top:5px;color:var(--muted);font-size:11px;font-style:normal}.attachment-card em{color:var(--blue);font-style:normal;font-size:12px;font-weight:850}.gauge-page{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden}.gauge-head{align-items:flex-start}.gauge-head p{margin-top:4px;color:var(--muted)}.gauge-stat-grid{padding:12px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;background:#f8fafc}.hidden-file-input{display:none}.gauge-import-result{margin:12px 12px 0;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:10px 12px;display:grid;gap:4px}.gauge-import-result div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.gauge-import-result strong{color:#1d4ed8;font-size:13px}.gauge-import-result span,.gauge-import-result p{color:#334155;font-size:12px;line-height:1.45}.gauge-stat-grid div{min-height:72px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;align-content:center;gap:4px}.gauge-stat-grid span{color:var(--muted);font-size:12px;font-weight:750}.gauge-stat-grid strong{font-size:24px}.gauge-layout{padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.document-template-layout{padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}.document-template-table td small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.document-template-editor{position:sticky;top:12px}.gauge-table td small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.gauge-side{display:grid;gap:14px}.rule-list{display:grid;gap:10px}.rule-list div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:grid;gap:4px}.rule-list p{color:var(--muted);font-size:12px;line-height:1.45}.gauge-chip-cloud{display:flex;flex-wrap:wrap;gap:8px}.gauge-chip-cloud span{min-height:24px;border-radius:999px;padding:3px 9px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:800}.online-qc-head{min-height:78px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.online-qc{display:grid;gap:14px}.qc-section-nav{position:sticky;top:0;z-index:12;min-height:50px;border:1px solid var(--line);border-radius:8px;background:#fffffff7;box-shadow:0 4px 12px #0f172a0f;padding:6px;display:flex;align-items:center;gap:4px;overflow:visible}.qc-section-links{min-width:0;display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:thin}.qc-section-links>button{flex:0 0 auto;min-height:36px;border:0;border-radius:6px;background:transparent;color:#475569;padding:0 10px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px;font-weight:800}.qc-section-links>button:hover{background:#f1f5f9;color:var(--ink)}.qc-section-links>button strong{border-radius:999px;background:#eef2f7;padding:2px 6px;color:#475569;font-size:11px}.qc-revision-actions{margin-left:auto;display:flex;align-items:center;gap:6px;padding-left:8px;border-left:1px solid var(--line)}.qc-revision-actions button{min-height:36px;border-radius:7px;border:1px solid var(--line);padding:0 11px;font-size:12px;font-weight:850;white-space:nowrap}.qc-final-nav-actions .report-action-button{min-height:36px;font-size:12px}.qc-section-nav .report-more-menu{top:calc(100% + 7px);right:0;bottom:auto;left:auto}.qc-anchor-section{scroll-margin-top:66px}.inspection-edit-scope{border:0;padding:0;margin:0;display:grid;gap:14px;min-inline-size:0}.inspection-edit-scope.readonly{position:relative}.inspection-edit-scope.readonly input,.inspection-edit-scope.readonly textarea,.inspection-edit-scope.readonly select{background:#f8fafc;color:#334155;border-color:#e2e8f0}.inspection-state-panel{border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;display:flex;justify-content:space-between;gap:16px;align-items:center}.inspection-state-panel h3{margin:2px 0 6px;font-size:17px}.inspection-state-panel p{margin:0;max-width:760px;color:var(--muted);font-size:13px;line-height:1.55}.inspection-state-panel.clean{min-height:118px;padding:18px 20px}.inspection-state-panel.clean h3{font-size:18px}.inspection-state-panel.clean p{max-width:520px}.inspection-state-panel.clean .primary{min-width:150px;min-height:40px}.mini-pill.mode.editing{background:#ecfdf5;color:#047857}.mini-pill.mode.readonly{background:#f1f5f9;color:#475569}.mini-pill.mode.prepare{background:#fff7ed;color:#9a3412}.mini-pill.action-hint{background:#f8fafc;color:#64748b}.report-card-hint{max-width:150px;color:#64748b;font-size:11px;line-height:1.35;text-align:right}.button-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.report-matrix-panel{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;gap:10px}.report-matrix-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.report-matrix-head h3{margin:2px 0 4px;font-size:15px}.report-matrix-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.report-matrix-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.report-matrix-advanced{border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;padding:8px 10px;display:flex;justify-content:space-between;gap:12px;align-items:center}.report-matrix-advanced span{color:var(--muted);font-size:12px;line-height:1.4}.report-scope-card{min-height:78px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:flex;justify-content:space-between;gap:10px;align-items:center}.report-scope-card.active{border-color:#0f766e;background:#ecfdf5;box-shadow:inset 3px 0 #0f766e}.report-scope-card div{display:grid;gap:4px;min-width:0}.report-scope-card strong{color:#0f172a;font-size:13px;line-height:1.25;overflow-wrap:anywhere}.report-scope-card span,.report-scope-card em{color:var(--muted);font-size:11px;line-height:1.3;font-style:normal;overflow-wrap:anywhere}.report-scope-card em{color:#0f766e;font-weight:800}.process-mode-panel{border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px;display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(320px,1fr);gap:14px;align-items:center}.process-mode-panel h3{margin:2px 0 5px;font-size:16px}.process-mode-panel p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.process-mode-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.process-mode-steps div{min-height:46px;border:1px solid #dbeafe;border-radius:8px;background:#f8fafc;padding:8px;display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center}.process-mode-panel.printing .process-mode-steps div{border-color:#bbf7d0;background:#f0fdf4}.process-mode-panel.sheet .process-mode-steps div{border-color:#fed7aa;background:#fff7ed}.process-mode-steps b{width:24px;height:24px;border-radius:999px;background:#0f172a;color:#fff;display:inline-grid;place-items:center;font-size:12px}.process-mode-steps span{color:#0f172a;font-size:12px;font-weight:750;line-height:1.35}button.compact{min-height:30px;padding:5px 10px;font-size:12px;white-space:nowrap}.inspection-focus-panel{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;gap:10px}.inspection-focus-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.inspection-focus-head h3{font-size:15px}.inspection-focus-head span,.inspection-focus-card em{color:var(--muted);font-size:12px;font-style:normal}.inspection-focus-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:8px}.inspection-focus-card{border:1px solid var(--line);border-left:3px solid #94a3b8;border-radius:8px;background:#f8fafc;padding:9px 10px;min-height:116px;display:grid;gap:5px;align-content:start}.inspection-focus-card.high{border-left-color:var(--red);background:#fff7f5}.inspection-focus-card.medium{border-left-color:var(--amber)}.inspection-focus-card.low{border-left-color:#64748b}.focus-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.focus-card-top span,.focus-card-top b{font-size:11px;font-weight:850}.focus-card-top span{color:#475569}.focus-card-top b{min-width:22px;height:20px;border-radius:999px;background:#e2e8f0;color:#334155;display:grid;place-items:center}.inspection-focus-card.high .focus-card-top b{background:#fee2e2;color:var(--red)}.inspection-focus-card.medium .focus-card-top b{background:#fff7df;color:var(--amber)}.inspection-focus-card strong{font-size:13px;line-height:1.25}.inspection-focus-card p{margin:0;color:#334155;font-size:12px;line-height:1.4}.focus-message{padding:9px 10px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:750}.drawing-recognition{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:visible;position:relative;z-index:5}.recognition-head{padding:14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.recognition-head h3{font-size:15px}.recognition-head p{color:var(--muted);margin-top:4px;font-size:13px}.recognition-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.upload-drawing-btn{min-height:38px;border-radius:8px;border:1px solid var(--line);background:#fff;padding:0 12px;display:inline-flex;align-items:center;font-weight:800;cursor:pointer}.upload-drawing-btn.secondary{background:#f8fafc;color:#334155}.upload-drawing-btn input{display:none}.upload-drawing-btn.disabled,button:disabled{opacity:.55;cursor:not-allowed}.cnc-error{margin:12px 14px 0;padding:10px 12px;border:1px solid #ffc8c0;border-radius:8px;background:#fff6f3;color:var(--red);font-size:13px}.cnc-feedback-message{margin:10px 14px 0;padding:9px 12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-size:13px;font-weight:750}.cnc-import-guardrail{margin:10px 14px 0;padding:9px 12px;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;color:#7c2d12;display:flex;gap:10px;align-items:center;font-size:13px}.cnc-import-guardrail strong{white-space:nowrap}.cnc-import-guardrail span{line-height:1.45}.cnc-compare-strip{margin:10px 14px 0;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;padding:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto minmax(220px,1.3fr);gap:8px;align-items:stretch}.cnc-compare-strip div{border:1px solid var(--line);border-radius:7px;background:#fff;padding:7px 9px;display:grid;gap:2px}.cnc-compare-strip span{color:var(--muted);font-size:11px;font-weight:800}.cnc-compare-strip strong{font-size:18px}.cnc-compare-strip p{color:#1e40af;font-size:12px;line-height:1.45;font-weight:750;align-self:center}.compare-switch{display:inline-grid!important;grid-template-columns:repeat(2,minmax(56px,auto));gap:4px!important;padding:4px!important;align-self:center}.compare-switch button{min-height:30px;border:1px solid var(--line);border-radius:6px;background:#f8fafc;padding:0 10px;font-size:12px;font-weight:850}.compare-switch button.active{border-color:#93c5fd;background:#eff6ff;color:var(--blue)}.cnc-rule-status-strip{margin:8px 14px 0;min-height:32px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;padding:5px 8px;display:flex;align-items:center;gap:8px;color:#334155;font-size:11px;font-weight:800;overflow:hidden}.cnc-rule-status-strip.disabled{border-color:#e5e7eb;background:#f8fafc}.cnc-rule-status-strip b{color:#1d4ed8;white-space:nowrap}.cnc-rule-status-strip.disabled b{color:#64748b}.cnc-rule-status-strip span,.cnc-rule-status-strip small{color:var(--muted);white-space:nowrap}.cnc-rule-chips{min-width:0;display:flex;align-items:center;gap:5px;overflow:hidden}.cnc-rule-chips em,.cnc-rule-chips i{max-width:180px;border:1px solid #bfdbfe;border-radius:999px;background:#fff;padding:3px 7px;color:#1e40af;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cnc-rule-chips i{flex:0 0 auto;max-width:none}.recognition-body{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(360px,.85fr);grid-template-areas:"drawing list";gap:12px;padding:10px;background:#f8fafc;align-items:start}.review-summary-strip{padding:10px 14px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;background:#fff}.review-summary-strip div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:8px 10px;display:grid;gap:2px}.review-summary-strip span{color:var(--muted);font-size:12px;font-weight:750}.review-summary-strip strong{font-size:18px}.drawing-reviewer{grid-area:drawing;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;display:grid;grid-template-rows:auto minmax(640px,calc(100vh - 280px))}.drawing-toolbar{min-height:36px;border-bottom:1px solid var(--line);padding:5px 8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:#fff}.drawing-toolbar button{min-height:28px;border-radius:8px;border:1px solid var(--line);padding:0 8px;font-size:11px;font-weight:800}.bubble-mode-control{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:2px;display:inline-grid;grid-template-columns:repeat(3,minmax(42px,auto));gap:2px}.bubble-mode-control button{min-height:24px;border:1px solid transparent;border-radius:6px;background:transparent;padding:0 8px;color:var(--muted);font-size:11px}.bubble-mode-control button.active{border-color:#bfdbfe;background:#fff;color:var(--blue);box-shadow:0 1px 4px #0f172a14}.drawing-toolbar span{margin-left:auto;color:var(--muted);font-size:11px;font-weight:750;max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.drawing-image-wrap{position:relative;min-height:640px;height:calc(100vh - 280px);border:0;border-radius:0;background:linear-gradient(90deg,rgba(148,163,184,.15) 1px,transparent 1px),linear-gradient(rgba(148,163,184,.15) 1px,transparent 1px),#eef2f7;background-size:24px 24px;overflow:hidden;display:grid;place-items:center;padding:8px}.drawing-canvas{position:relative;width:100%;height:100%;transform-origin:center center;transition:transform .18s ease;display:grid;place-items:center}.drawing-canvas img{width:100%;height:100%;object-fit:contain;display:block;filter:contrast(1.08) saturate(.92)}.drawing-empty{min-height:640px;height:calc(100vh - 280px);border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;display:grid;place-items:center;align-content:center;gap:6px;color:var(--muted);text-align:center}.drawing-empty strong{color:var(--ink)}.cnc-balloon-dot{position:absolute;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--amber);border:2px solid rgba(255,255,255,.95);box-shadow:0 2px 7px #0f172a3d;font-size:9px;font-weight:900;cursor:pointer;opacity:.82;z-index:3;padding:0}.cnc-balloon-dot.accepted{background:var(--green)}.cnc-balloon-dot.excluded{background:#64748b;opacity:.38}.cnc-balloon-dot.review{background:var(--amber)}.cnc-balloon-dot.dot{width:8px;height:8px;border:1px solid #ffffff;color:transparent;box-shadow:0 1px 4px #0f172a33}.cnc-balloon-dot.focused,.cnc-balloon-dot.active{width:24px;height:24px;opacity:1;z-index:8;outline:3px solid rgba(37,99,235,.2);background:var(--blue);font-size:10px}.cnc-balloon-dot.dot.focused,.cnc-balloon-dot.dot.active{color:#fff}.candidate-crosshair{position:absolute;left:50%;top:50%;width:46px;height:46px;transform:translate(-50%,-50%);pointer-events:none;z-index:7}.candidate-crosshair:before,.candidate-crosshair:after{content:"";position:absolute;background:#2563ebd1;box-shadow:0 0 0 2px #ffffffc7}.candidate-crosshair:before{left:50%;top:0;bottom:0;width:1px}.candidate-crosshair:after{top:50%;left:0;right:0;height:1px}.candidate-list-wrap{min-height:0;height:100%;position:relative;overflow:visible}.candidate-list{position:relative;min-height:0;max-height:none;height:100%;overflow:auto;display:grid;align-content:start;gap:8px;padding-right:2px}.candidate-list.compact{max-height:none}.candidate-review-panel{grid-area:list;display:grid;grid-template-rows:auto auto minmax(0,1fr);height:calc(100vh - 243px);min-height:677px;gap:8px;align-content:start;position:relative;z-index:20}.candidate-action-strip{border:1px solid var(--line);border-radius:8px;background:#fff;padding:6px;display:grid;gap:6px;justify-items:start}.candidate-action-title{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center}.candidate-action-title strong,.candidate-float-head strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.candidate-action-title small,.candidate-float-head small{display:block;margin-top:2px;color:var(--muted);font-size:11px}.active-candidate-card{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.active-candidate-head{padding:12px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:start}.active-candidate-head h4{font-size:15px;line-height:1.35}.active-candidate-head p{margin-top:3px;color:var(--muted);font-size:12px}.candidate-balloon{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:#eef4ff;color:var(--blue);font-weight:900}.candidate-balloon.large{width:36px;height:36px;font-size:16px}.candidate-review-note{margin:0 12px 8px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;padding:8px 10px;color:#713f12;font-size:12px;line-height:1.45;font-weight:750}.candidate-local-preview{margin:0 12px 8px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;display:grid;grid-template-rows:auto auto;gap:6px;text-align:center;color:var(--muted);font-size:12px;overflow:hidden}.local-preview-canvas{position:relative;min-height:104px;max-height:168px;overflow:hidden;background:#fff}.local-preview-canvas img{position:absolute;max-width:none;object-fit:fill;filter:contrast(1.12)}.local-preview-badge{position:absolute;left:8px;top:8px;z-index:5;min-height:22px;border-radius:999px;padding:2px 8px;display:inline-flex;align-items:center;background:#2563ebeb;color:#fff;border:1px solid rgba(255,255,255,.9);box-shadow:0 1px 5px #0f172a33;font-size:12px;font-weight:900}.local-crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;pointer-events:none;z-index:4}.local-crosshair:before,.local-crosshair:after{content:"";position:absolute;background:#2563eb57}.local-crosshair:before{left:50%;top:-8px;bottom:-8px;width:2px}.local-crosshair:after{top:50%;left:-8px;right:-8px;height:2px}.local-crosshair{border:2px solid rgba(37,99,235,.34);border-radius:50%;background:#ffffff47;mix-blend-mode:multiply}.candidate-local-preview p{padding:0 10px 8px;line-height:1.45}.review-actions{padding:10px 12px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.review-actions.compact{padding:0;border-top:0;grid-template-columns:repeat(5,auto);justify-content:start;gap:4px}.review-actions.compact button{min-width:52px;min-height:26px;border-radius:6px;padding:0 7px;font-size:11px}.review-actions button{min-height:34px}.bubble-link-btn{min-height:30px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:var(--blue);padding:0 10px;font-size:12px;font-weight:850}.candidate-feedback-box{border-top:1px solid var(--line);padding:8px 12px;display:grid;gap:8px;background:#fbfdff}.candidate-feedback-box.compact{padding:0;border-top:0;background:transparent}.candidate-feedback-box.compact .feedback-collapse-toggle{min-height:30px;border:1px solid var(--line);border-radius:7px;padding:0 8px;background:#f8fafc}.candidate-feedback-box.compact textarea{min-height:54px}.candidate-float-preview{position:absolute;right:calc(100% + 12px);width:min(560px,52vw);max-height:min(560px,calc(100vh - 190px));overflow:auto;border:1px solid #bfdbfe;border-radius:8px;background:#fff;box-shadow:0 14px 38px #0f172a2e;padding:8px;z-index:60}.candidate-preview-close{position:absolute;top:8px;right:8px;width:26px;height:26px;min-height:26px;border:1px solid #cbd5e1;border-radius:999px;background:#fffffff0;color:#475569;padding:0;display:grid;place-items:center;z-index:2}.candidate-preview-close:hover{border-color:#93c5fd;color:var(--blue);background:#eff6ff}.candidate-float-preview:after{content:"";position:absolute;right:-8px;top:28px;width:14px;height:14px;border-top:1px solid #bfdbfe;border-right:1px solid #bfdbfe;background:#fff;transform:rotate(45deg)}.candidate-float-head{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;align-items:center;margin-bottom:8px;padding-right:34px}.candidate-float-preview .candidate-review-note{margin:0 0 8px}.candidate-local-preview.float-preview{margin:0;padding:0}.candidate-local-preview.float-preview .local-preview-canvas{min-height:300px;max-height:360px}.candidate-feedback-box.collapsed{padding-bottom:8px}.feedback-collapse-toggle,.feedback-title-row{display:flex;justify-content:space-between;gap:8px;align-items:center}.feedback-collapse-toggle{width:100%;min-height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 10px;text-align:left}.feedback-collapse-toggle span{color:var(--blue);font-size:11px;font-weight:850}.feedback-title-row strong{font-size:13px}.feedback-title-row span,.feedback-upload-row span{color:var(--muted);font-size:11px;font-weight:750}.candidate-feedback-box textarea{min-height:72px}.feedback-screenshot-preview{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:8px;align-items:center}.feedback-screenshot-preview img{width:64px;height:48px;border:1px solid #dbe3ee;border-radius:6px;object-fit:cover}.feedback-screenshot-preview span,.feedback-paste-hint{color:var(--muted);font-size:11px;font-weight:750}.feedback-screenshot-preview button{min-height:30px;border-radius:8px;border:1px solid var(--line);padding:0 10px;font-size:12px;font-weight:850}.feedback-paste-hint{border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;padding:8px}.feedback-upload-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.feedback-upload-row .upload-drawing-btn{min-height:32px;font-size:12px}.candidate-filterbar{border:1px solid var(--line);border-radius:8px;background:#fff;padding:6px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.candidate-filterbar button{min-height:30px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);font-size:12px;font-weight:850}.candidate-filterbar button.active{border-color:#bfdbfe;background:#eef4ff;color:var(--blue)}.confidence{color:var(--green);font-size:12px;font-weight:900}.confidence.low{color:var(--amber)}.candidate-empty{min-height:140px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;display:grid;place-items:center;align-content:center;gap:6px;color:var(--muted);text-align:center}.candidate-empty.compact-empty{min-height:72px}.candidate-row{width:100%;min-height:58px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;display:grid;grid-template-columns:30px minmax(0,1fr) 72px;align-items:center;gap:8px;text-align:left}.candidate-row:hover,.candidate-row.hovered,.candidate-row.active{border-color:#93c5fd;background:#f3f7ff}.candidate-row.hovered{box-shadow:0 0 0 2px #93c5fd47}.candidate-row.excluded{opacity:.58}.rule-page{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden}.rule-summary-grid{padding:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-bottom:1px solid var(--line)}.rule-summary-grid div,.rule-preview-box{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:grid;gap:4px}.rule-summary-grid span,.rule-feedback-card span,.rule-draft-card span,.rule-preview-box span{color:var(--muted);font-size:11px;font-weight:750}.rule-summary-grid strong{font-size:22px}.rule-layout{padding:12px;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr) minmax(280px,.8fr);gap:12px;align-items:start}.rule-suggestion-panel,.rule-feedback-panel,.rule-draft-panel{min-height:520px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;align-content:start;gap:10px}.rule-suggestion-list,.rule-feedback-list,.rule-draft-list{display:grid;gap:8px;max-height:calc(100vh - 330px);overflow:auto}.rule-suggestion-card,.rule-feedback-card,.rule-draft-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;text-align:left;display:grid;gap:7px}.rule-suggestion-card{grid-template-columns:minmax(0,1fr) auto}.rule-suggestion-card.active{border-color:#93c5fd;background:#f3f7ff}.rule-suggestion-card strong,.rule-feedback-card strong,.rule-draft-card strong,.rule-preview-box strong{font-size:13px}.rule-suggestion-card span,.rule-suggestion-card p,.rule-feedback-card p,.rule-draft-card p,.rule-preview-box p{color:var(--muted);font-size:12px;line-height:1.45}.rule-suggestion-card p{grid-column:1 / -1}.rule-suggestion-card em,.rule-draft-card em{color:var(--blue);font-size:11px;font-style:normal;font-weight:850}.rule-suggestion-card em.danger{color:var(--red)}.wide-action{width:100%;min-height:38px;border-radius:8px;border:1px solid var(--blue)}.feedback-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.feedback-card-meta{display:flex;flex-wrap:wrap;gap:6px}.feedback-card-meta span{max-width:100%;border-radius:999px;background:#eef2f7;padding:4px 7px}.rule-feedback-card code{border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;padding:6px;color:#334155;font-size:12px;white-space:normal}.rule-feedback-card a{color:var(--blue);font-size:12px;font-weight:850}.rule-draft-card{background:#fbfdff}.rule-draft-card.approved{border-color:#b7e4cf;background:#f4fbf7}.rule-draft-meta,.rule-draft-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.rule-draft-actions button{min-height:34px;border-radius:8px;border:1px solid var(--line);padding:0 10px;font-size:12px;font-weight:850}.rule-draft-actions button:disabled{cursor:not-allowed;opacity:.62}@media(max-width:1280px){.rule-layout{grid-template-columns:1fr}.rule-suggestion-list,.rule-feedback-list,.rule-draft-list{max-height:none}}.candidate-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.candidate-row small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.candidate-row em,.candidate-row em.confidence-chip{border-radius:999px;padding:3px 7px;background:#e6f7ef;color:var(--green);font-style:normal;font-size:11px;font-weight:900;text-align:center;white-space:nowrap}.candidate-row em.low,.candidate-row em.confidence-chip.low{background:#fff7df;color:var(--amber)}.candidate-row em.confidence-chip.high,.candidate-row.accepted em.confidence-chip{background:#e6f7ef;color:var(--green)}.candidate-row.excluded em.confidence-chip{background:#f1f5f9;color:#64748b}.candidate-empty strong{color:var(--ink)}.mini-pill.warn{background:#fff7df;color:var(--amber)}.qc-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.report-header-grid{display:grid;grid-template-columns:minmax(360px,1.2fr) minmax(420px,1fr);gap:14px;align-items:start}.report-readonly-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.report-readonly-summary div{min-height:54px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:8px 10px;display:grid;align-content:center;gap:3px}.report-readonly-summary span,.report-edit-fields label{color:var(--muted);font-size:12px;font-weight:750}.report-readonly-summary strong{color:var(--ink);font-size:13px;line-height:1.25;overflow-wrap:anywhere}.report-edit-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-edit-fields label{display:grid;gap:5px}.qc-summary-grid label,.signature-grid label{color:var(--muted);font-size:12px;font-weight:750;display:grid;gap:5px}input,select,textarea{width:100%;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:6px 8px;color:var(--ink);font:inherit;font-size:12px}textarea{min-height:86px;resize:vertical}.table-box{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.table-box h3{padding:12px 14px;border-bottom:1px solid var(--line)}.table-title-row{padding:12px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.table-title-row h3{padding:0;border:0}.table-title-row h3 small{margin-left:6px;color:var(--muted);font-size:12px;font-weight:700}.table-title-row p{margin-top:4px;color:var(--muted);font-size:12px}.sync-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.sync-facts span,.mini-pill{border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--muted);padding:4px 8px;font-size:12px;font-weight:700}.sync-coverage{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.sync-coverage span{border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#475569;padding:3px 6px;font-size:11px;font-weight:800}.sync-last-event{margin-top:6px;border:1px solid rgba(148,163,184,.5);border-radius:8px;background:#ffffffb8;padding:8px 10px;display:grid;gap:2px}.sync-last-event span,.sync-last-event small{color:var(--muted);font-size:12px;font-weight:700}.sync-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:8px}.sync-result-grid div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;display:grid;gap:3px}.sync-result-grid div.error{border-color:#fecaca;background:#fff7f7}.sync-result-grid span,.sync-result-grid small,.sync-result-grid em{color:var(--muted);font-size:11px;font-style:normal;line-height:1.35}.sync-result-grid em{color:var(--red)}.mini-pill.good{border-color:#bbf7d0;background:#f0fdf4;color:var(--green)}.mini-pill.warn{border-color:#fde68a;background:#fffbeb;color:#a16207}.sync-review-strip{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.sync-review-strip button{display:grid;gap:2px;text-align:left;border:1px solid #fde68a;background:#fffbeb;color:var(--ink);border-radius:8px;padding:8px 10px}.sync-review-strip span{color:var(--muted);font-size:12px}.mes-review-panel{border-color:#fde68a}.mes-review-list{display:grid;gap:8px;padding:10px}.mes-review-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px}.mes-review-list p{margin:4px 0;color:var(--muted);font-size:12px}.mes-review-list em{color:var(--muted);font-size:12px;font-style:normal}.mes-diff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.mes-diff-grid div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:7px 8px}.mes-diff-grid .wide{grid-column:1 / -1}.mes-diff-grid span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.mes-diff-grid strong{display:block;color:var(--ink);font-size:12px;line-height:1.45}.mes-diff-cards{display:grid;gap:8px;margin-top:8px}.mes-diff-card{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:8px;display:grid;gap:7px}.mes-diff-card.high{border-color:#fecaca;background:#fff7f7}.mes-diff-card.medium{border-color:#fde68a;background:#fffbeb}.mes-diff-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.mes-diff-card-head strong{font-size:13px}.mes-diff-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.mes-diff-compare div{border:1px solid rgba(148,163,184,.32);border-radius:7px;background:#fff;padding:7px;min-width:0}.mes-diff-compare span{display:block;color:var(--muted);font-size:11px;font-weight:850;margin-bottom:3px}.mes-diff-compare p,.mes-diff-card footer{color:var(--ink);font-size:12px;line-height:1.45;overflow-wrap:anywhere}.mes-diff-card footer{color:#475569}.mes-review-actions{display:grid;grid-template-columns:repeat(2,minmax(112px,1fr));gap:6px;min-width:250px}.mes-review-actions button{min-height:34px;border-radius:8px;font-size:12px;font-weight:850}.measure-inputs{display:grid;grid-template-columns:repeat(4,minmax(52px,1fr));gap:5px}.inspection-execution-bar{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(360px,1.7fr) minmax(220px,1fr);gap:10px;align-items:stretch;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px}.inspection-execution-bar.compact{grid-template-columns:minmax(150px,.75fr) repeat(4,minmax(84px,.42fr)) minmax(300px,1.6fr);align-items:center;gap:8px;padding:8px 10px}.inspection-execution-bar.ready{border-color:#bbf7d0;background:#fbfefc}.inspection-execution-bar.needs-work{border-color:#fde68a;background:#fffdf4}.inspection-execution-bar.has-ng{border-color:#fecaca;background:snow}.inspection-execution-score,.inspection-next-action,.inspection-execution-metrics button,.inspection-execution-metrics div{border:1px solid var(--line);border-radius:8px;background:#ffffffb8;padding:9px 10px}.inspection-execution-score span,.inspection-next-action span,.inspection-execution-metrics span{display:block;color:var(--muted);font-size:12px;font-weight:800}.inspection-execution-score strong{display:block;margin-top:2px;font-size:22px}.progress-track{height:7px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin-top:6px}.progress-track i{display:block;height:100%;border-radius:inherit;background:#0f766e}.inspection-execution-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.inspection-execution-metrics button{text-align:left;cursor:pointer}.inspection-execution-bar.compact button,.inspection-execution-bar.compact>div{min-height:42px;border:1px solid var(--line);border-radius:8px;background:#ffffffb8;padding:7px 9px;text-align:left}.inspection-execution-bar.compact span{display:block;color:var(--muted);font-size:11px;font-weight:850}.inspection-execution-bar.compact strong{display:block;margin-top:2px;color:var(--ink);font-size:16px;line-height:1.2}.inspection-execution-bar.compact .compact-progress{display:grid;align-content:center}.inspection-execution-bar.compact .compact-progress strong{margin:0 0 4px;font-size:18px}.inspection-execution-bar.compact .compact-next strong{font-size:13px}.inspection-execution-metrics strong{display:block;margin-top:2px;font-size:19px}.inspection-next-action strong{display:block;margin-top:5px;font-size:14px;line-height:1.35}.report-settings-panel{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.report-settings-summary{min-height:56px;padding:10px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.report-settings-summary strong{display:block;color:var(--ink);font-size:14px;line-height:1.25;overflow-wrap:anywhere}.report-settings-summary span{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.35;overflow-wrap:anywhere}.report-settings-detail{border-top:1px solid var(--line);padding:12px 14px;display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,1fr);gap:12px}.printing-standard-panel{border:1px solid #bfdbfe;border-radius:8px;background:#f8fbff;padding:12px 14px;display:grid;gap:10px}.printing-standard-panel.fallback{border-color:#fde68a;background:#fffdf4}.printing-standard-compact{border:1px solid #bfdbfe;border-radius:8px;background:#f8fbff;overflow:hidden}.printing-standard-compact>summary{min-height:58px;padding:9px 12px;display:grid;grid-template-columns:minmax(210px,.8fr) minmax(260px,1.2fr) auto auto;align-items:center;gap:12px;list-style:none;cursor:pointer}.printing-standard-compact>summary::-webkit-details-marker{display:none}.printing-standard-compact summary div span{display:block;color:var(--blue);font-size:11px;font-weight:850}.printing-standard-compact summary div strong{display:block;margin-top:2px;color:var(--ink);font-size:14px}.printing-standard-compact summary p{color:#475569;font-size:12px;line-height:1.4}.printing-standard-picker{border-top:1px solid #dbeafe;padding:10px 12px;display:grid;grid-template-columns:minmax(280px,1fr) auto minmax(240px,1fr);align-items:center;gap:8px;background:#fff}.printing-standard-picker select,.printing-standard-picker button{min-height:36px}.printing-standard-picker button{border-radius:7px;border:1px solid var(--blue);padding:0 12px;font-weight:850}.printing-standard-picker span{color:var(--muted);font-size:12px}.printing-standard-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:12px;align-items:center}.printing-standard-head h3{margin:2px 0 4px;font-size:16px}.printing-standard-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.printing-standard-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.printing-standard-actions button{min-height:34px}.printing-standard-facts{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(100px,.55fr));gap:8px}.printing-standard-facts div{border:1px solid var(--line);border-radius:8px;background:#ffffffb8;padding:8px 10px}.printing-standard-facts span{display:block;color:var(--muted);font-size:11px;font-weight:850}.printing-standard-facts strong{display:block;margin-top:3px;color:var(--ink);font-size:13px;line-height:1.3}.inspection-quickbar{position:sticky;top:56px;z-index:4;margin:8px 0 10px;padding:7px;border:1px solid var(--line);border-radius:8px;background:#f8fafcf5;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.part-dimension-workbench{border-top:1px solid var(--line);padding:10px 12px;display:grid;gap:10px}.part-dimension-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.part-dimension-selection-bar{display:flex;align-items:center;gap:8px;color:#64748b;font-size:12px;font-weight:700}.part-dimension-selection-bar span{margin-right:auto}.part-dimension-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;min-height:72px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;cursor:pointer}.part-dimension-card.active{border-color:#93c5fd;box-shadow:0 0 0 2px #dbeafe}.part-dimension-card strong,.active-part-dimension-panel strong{display:block;color:var(--ink);font-size:13px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.part-dimension-card small,.active-part-dimension-panel small{display:block;margin-top:3px;color:var(--muted);font-size:12px}.part-dimension-card em{border-radius:999px;padding:3px 8px;background:#f1f5f9;color:#475569;font-size:12px;font-style:normal;font-weight:850;white-space:nowrap}.part-dimension-card.done em{background:#dcfce7;color:#15803d}.part-dimension-card.pending em{background:#fff7df;color:var(--amber)}.part-dimension-card.ng em{background:#fee2e2;color:var(--red)}.active-part-dimension-panel{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:9px 10px;display:flex;justify-content:space-between;align-items:center;gap:12px}.active-part-dimension-panel.compact{min-height:42px;padding:6px 8px}.active-part-dimension-panel.compact>div:first-child{min-width:0;display:flex;align-items:baseline;gap:8px}.active-part-dimension-panel.compact small{margin:0;white-space:nowrap}.dimension-title-actions{display:flex;align-items:center;gap:7px}.part-dimension-state-toggle{min-height:30px;border:1px solid var(--line);border-radius:7px;padding:2px;display:grid;grid-template-columns:repeat(2,auto);gap:2px;background:#f8fafc}.part-dimension-state-toggle button{min-height:24px;border:0;border-radius:5px;background:transparent;color:#475569;padding:0 8px;font-size:11px;font-weight:850}.part-dimension-state-toggle button:hover{background:#fff;color:var(--blue)}.inspection-quickbar .segmented{display:inline-grid;grid-template-columns:repeat(3,minmax(44px,1fr));gap:3px;padding:3px;border:1px solid var(--line);border-radius:7px;background:#fff}.inspection-quickbar button{min-height:30px;border:1px solid var(--line);border-radius:7px;padding:0 9px;font-size:12px;font-weight:850}.inspection-quickbar .segmented button{border-color:transparent;background:transparent;color:var(--muted);padding:0 8px}.inspection-quickbar .segmented button.active{background:#eef4ff;color:var(--blue);border-color:#bfdbfe}.bulk-measure-panel{margin:-2px 0 10px;padding:10px;border:1px solid #bfdbfe;border-radius:8px;background:#f8fbff;display:grid;grid-template-columns:minmax(220px,.9fr) minmax(320px,1.4fr);gap:10px;align-items:stretch}.bulk-measure-panel strong{display:block;font-size:13px;color:var(--ink)}.bulk-measure-panel p{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.45}.bulk-measure-panel code{font-size:11px;background:#e0f2fe;color:#075985;padding:1px 4px;border-radius:4px}.bulk-measure-panel textarea{min-height:82px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;resize:vertical}.bulk-measure-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px}.bulk-measure-actions span{color:var(--muted);font-size:12px}.bulk-measure-actions button{flex:0 0 auto}.result-select.ok{color:var(--green)}.result-select.ng{color:var(--red)}.result-select.pending{color:var(--amber)}.inspection-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.actions-row.compact{gap:6px;justify-content:flex-end}.actions-row.compact button{min-height:30px;padding:0 9px;font-size:12px}.report-evidence-panel,.unified-upload-panel{display:grid}.compact-upload-panel{grid-template-columns:170px minmax(0,1fr);align-items:center;padding:10px 12px}.unified-upload-label strong,.unified-upload-label span{display:block}.unified-upload-label strong{color:var(--ink);font-size:14px}.unified-upload-label span{margin-top:3px;color:var(--muted);font-size:11px}.compact-upload-panel .unified-upload-body{padding:0;grid-template-columns:minmax(240px,380px) auto 150px minmax(180px,1fr)}.unified-upload-body{padding:12px 14px;display:grid;grid-template-columns:minmax(260px,420px) auto minmax(240px,1fr);align-items:end;gap:10px}.unified-upload-body label:first-child{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:800}.unified-upload-body select{width:100%;min-height:36px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff;color:var(--ink);font-weight:750}.unified-upload-body>span{color:var(--muted);font-size:12px;line-height:1.45}.clipboard-upload-zone{min-height:44px;display:grid;place-content:center;gap:1px;padding:5px 10px;border:1px dashed #8ba7d9;border-radius:9px;background:#f5f9ff;color:#2457a6;text-align:center;cursor:text;outline:none}.clipboard-upload-zone span{color:#6d798c;font-size:10px}.clipboard-upload-zone:focus{border-style:solid;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24;background:#eff6ff}.clipboard-upload-zone.uploading{opacity:.65;pointer-events:none}.attachment-upload-progress{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:8px 10px}.attachment-upload-progress div{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.attachment-upload-progress strong,.attachment-upload-progress span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-upload-progress strong{color:var(--ink);font-size:12px}.attachment-upload-progress span{color:#2563eb;font-size:12px;font-weight:800}.attachment-upload-progress em{height:6px;overflow:hidden;border-radius:999px;background:#dbeafe}.attachment-upload-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#60a5fa);transition:width .18s ease}.attachment-file-list{padding:10px 14px;display:grid;gap:8px}.attachment-file-item{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(120px,auto) 72px;align-items:center;gap:10px;min-height:54px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 8px}.attachment-file-item.readonly{grid-template-columns:42px minmax(0,1fr) minmax(120px,auto)}.attachment-file-preview{width:42px;height:38px;min-height:38px;border:1px solid var(--line);border-radius:7px;background:#f8fafc;color:var(--muted);display:grid;place-items:center;overflow:hidden;padding:0;cursor:zoom-in}.attachment-file-preview img{width:100%;height:100%;object-fit:cover}.attachment-file-preview span{font-size:10px;font-weight:900}.attachment-file-main{min-width:0;display:grid;gap:3px}.attachment-file-main strong{overflow:hidden;color:var(--ink);font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.attachment-file-main span,.attachment-file-category,.attachment-file-empty{color:var(--muted);font-size:12px;font-weight:750}.attachment-file-main .attachment-file-note{color:#334155;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-file-category{overflow:hidden;border-radius:999px;background:#f1f5f9;padding:5px 8px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.attachment-file-empty{min-height:52px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:8px;background:#f8fafc}.report-evidence-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mobile-upload-dialog{width:min(740px,calc(100vw - 32px))}.mobile-upload-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;align-items:center}.mobile-upload-qr{width:240px;height:240px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px}.mobile-upload-link strong{display:block;margin-bottom:6px}.mobile-upload-link span{display:block;word-break:break-all;color:var(--muted);background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:12px}.qc-table-box,.functional-section,.visual-packaging-section{overflow-x:auto}.online-measure-table,.simple-check-table{table-layout:fixed;min-width:1040px}.online-measure-table th:nth-child(1),.online-measure-table td:nth-child(1){width:72px}.online-measure-table th:nth-last-child(1),.online-measure-table td:nth-last-child(1){width:72px}.online-measure-table th:nth-last-child(2),.online-measure-table td:nth-last-child(2){width:118px}.functional-check-table th:nth-child(1),.functional-check-table td:nth-child(1),.visual-check-table th:nth-child(1),.visual-check-table td:nth-child(1){width:48px}.functional-check-table th:nth-child(2),.functional-check-table td:nth-child(2){width:20%}.functional-check-table th:nth-child(3),.functional-check-table td:nth-child(3){width:25%}.functional-check-table th:nth-child(4),.functional-check-table td:nth-child(4){width:16%}.functional-check-table th:nth-child(5),.functional-check-table td:nth-child(5){width:15%}.functional-check-table th:nth-child(6),.functional-check-table td:nth-child(6),.visual-check-table th:nth-child(4),.visual-check-table td:nth-child(4){width:164px}.functional-check-table th:nth-child(7),.functional-check-table td:nth-child(7),.visual-check-table th:nth-child(6),.visual-check-table td:nth-child(6){width:48px}.visual-check-table th:nth-child(2),.visual-check-table td:nth-child(2){width:24%}.visual-check-table th:nth-child(3),.visual-check-table td:nth-child(3){width:36%}.visual-check-table th:nth-child(5),.visual-check-table td:nth-child(5){width:20%}.qc-cell-textarea{min-height:38px;height:auto;resize:vertical;line-height:1.35;font-size:13px;padding:6px 8px}.qc-cell-textarea.small{min-height:38px}.simple-check-table td,.online-measure-table td{vertical-align:top}.readonly-table td{padding-top:10px;padding-bottom:10px;vertical-align:middle}.qc-readonly-value{display:block;color:var(--ink);font-size:13px;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.qc-readonly-value.muted{color:var(--muted);font-weight:650}.qc-readonly-value.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.qc-result-badge{min-width:52px;min-height:28px;border-radius:999px;padding:4px 9px;display:inline-flex;align-items:center;justify-content:center;background:#f1f5f9;color:#475569;font-size:12px;font-weight:900}.qc-result-badge.ok{background:#dcfce7;color:#15803d}.qc-result-badge.ng{background:#fee2e2;color:#b91c1c}.qc-result-badge.pending{background:#fef3c7;color:#a16207}.simple-check-table th,.simple-check-table td{padding:6px 7px}.row-index-cell{color:var(--muted);font-weight:850;text-align:center}.qc-result-segmented{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.qc-result-segmented button{min-height:30px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);padding:0 4px;font-size:12px;font-weight:850}.qc-result-segmented button.active{background:#fff;border-color:#cbd5e1;color:var(--ink);box-shadow:0 1px 2px #0f172a14}.qc-result-segmented.ok button.active{border-color:#bbf7d0;background:#f0fdf4;color:var(--green)}.qc-result-segmented.ng button.active{border-color:#fecaca;background:#fff7f7;color:var(--red)}.qc-result-segmented.pending button.active{border-color:#fde68a;background:#fffbeb;color:var(--amber)}.qc-result-segmented.na button.active{border-color:#cbd5e1;background:#f1f5f9;color:#475569}.row-delete-btn{min-height:30px;border:1px solid #fecaca;border-radius:7px;background:#fff7f7;color:#b91c1c;padding:0 8px;font-size:12px;font-weight:850}.row-delete-btn:hover{background:#fee2e2}.row-delete-btn:disabled{cursor:not-allowed;opacity:.58}.icon-delete-btn{width:32px;min-width:32px;height:32px;min-height:32px;border:1px solid transparent;border-radius:7px;background:transparent;color:#94a3b8;padding:0;display:inline-grid;place-items:center;font-size:11px;font-weight:800}.simple-check-table tbody tr .icon-delete-btn,.online-measure-table tbody tr .icon-delete-btn{opacity:0}.simple-check-table tbody tr:hover .icon-delete-btn,.online-measure-table tbody tr:hover .icon-delete-btn,.icon-delete-btn:focus-visible{opacity:1}.icon-delete-btn:hover{border-color:#fecaca;background:#fff1f2;color:#b91c1c}@media(hover:none){.simple-check-table tbody tr .icon-delete-btn,.online-measure-table tbody tr .icon-delete-btn{opacity:1}}.inspection-edit-scope.printing .process-mode-panel{order:2}.inspection-edit-scope.printing .inspection-grid{order:3}.inspection-edit-scope.printing .visual-packaging-section{order:-1}.inspection-edit-scope.printing .dimensional-section{order:4}.inspection-edit-scope.printing .document-check-box{order:5}.quick-issue-panel{border:1px solid #f2c7c3;border-radius:8px;background:#fffefe;padding:12px;display:grid;gap:10px}.quick-issue-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.quick-issue-head h3{margin:2px 0 4px;font-size:15px}.quick-issue-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.quick-issue-panel.collapsed{padding:9px 12px;gap:0}.quick-issue-panel.collapsed .quick-issue-head .eyebrow{display:none}.quick-issue-panel.collapsed .quick-issue-head h3{margin:0 0 2px;font-size:14px}.quick-issue-panel.collapsed .quick-issue-head p{font-size:12px}.quick-issue-panel.collapsed .actions-row button{min-height:34px;font-size:12px}.quick-issue-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;border-top:1px solid #f4d2cf;padding-top:10px}.quick-issue-form label{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:800}.quick-issue-form .field-hint{color:#64748b;font-size:11px;font-weight:600;line-height:1.45}.quick-issue-form input,.quick-issue-form select{min-height:34px;height:34px;font-size:13px}.quick-issue-form textarea{min-height:66px;font-size:13px;line-height:1.45}.quick-issue-panel .actions-row{gap:6px;justify-content:flex-end}.quick-issue-panel button.danger,.quick-issue-actions button.danger{min-height:34px;padding:0 12px;border-radius:8px;background:#c0392b!important;border-color:#c0392b!important;font-size:13px;box-shadow:none}.quick-issue-panel button.ghost,.quick-issue-actions button.ghost{min-height:34px;padding:0 12px;border:1px solid #d5deea!important;border-radius:8px;background:#fff!important;color:#334155;font-size:13px;font-weight:750;box-shadow:none}.quick-issue-panel button.ghost:hover{border-color:#aebdd0!important;background:#f8fafc!important}.quick-issue-panel .ng-group-review{padding:9px 11px;border-radius:10px}.quick-issue-panel .ng-group-review button{min-height:30px;padding:5px 9px;border-radius:8px;font-size:12px}.quick-issue-panel .issue-choice-group,.quick-issue-panel .issue-strategy-group{padding:9px 10px;border-radius:10px}.quick-issue-panel .choice-chip{min-height:30px;padding:5px 9px;border-radius:8px;font-size:12px}.quick-issue-panel .choice-chip input,.quick-issue-panel .issue-strategy-options input{width:15px!important;height:15px!important;min-height:15px!important;flex:0 0 15px;accent-color:#2563eb}.quick-issue-panel .issue-strategy-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.quick-issue-panel .issue-strategy-options label{min-height:64px;padding:9px 10px;border-radius:9px;align-items:flex-start}.quick-issue-panel .issue-strategy-options strong{font-size:13px;color:#1e293b}.quick-issue-panel .issue-strategy-options small,.quick-issue-panel .issue-strategy-group p{font-size:12px;line-height:1.35}.quick-issue-form .wide,.quick-issue-form .checkbox-line,.quick-issue-actions{grid-column:1 / -1}.quick-issue-form .checkbox-line{display:flex;align-items:center;gap:8px;color:#7f1d1d}.quick-issue-form .checkbox-line input{width:16px;min-height:16px}.quick-issue-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:1280px){.quick-issue-panel .issue-strategy-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.document-summary-pills{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.document-checklist{padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.document-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;gap:10px}.inspection-edit-scope.editing .document-checklist{grid-template-columns:1fr;gap:7px}.inspection-edit-scope.editing .document-card{min-height:72px;padding:9px 10px;grid-template-columns:minmax(300px,.8fr) minmax(460px,1.2fr);align-items:center;gap:12px}.inspection-edit-scope.editing .document-card .document-action-row{grid-template-columns:minmax(150px,.7fr) 124px minmax(180px,1fr)}.document-card.ready{border-color:#bbf7d0;background:#fbfefc}.document-card.missing{border-color:#fed7aa;background:#fffaf4}.document-card.not-applicable{border-color:#e2e8f0;background:#f8fafc}.document-primary-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.document-title-block{min-width:0}.document-title-block strong{display:block;font-size:13px;line-height:1.35;color:var(--ink)}.document-title-block span{display:block;margin-top:2px;color:var(--muted);font-size:12px}.document-status-area{flex:0 0 auto;display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.document-badge{flex:0 0 auto;border-radius:999px;padding:3px 8px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:850}.document-badge.ready{background:#dcfce7;color:#15803d}.document-badge.missing{background:#ffedd5;color:#c2410c}.document-badge.required{background:#eff6ff;color:#1d4ed8}.document-action-row{display:grid;grid-template-columns:minmax(160px,.8fr) 132px minmax(0,1fr);align-items:start;gap:8px}.document-readonly-row{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(0,1.35fr);align-items:start;gap:10px;padding-top:2px}.document-readonly-row>div:first-child span{display:block;color:var(--muted);font-size:11px;font-weight:800}.document-readonly-row>div:first-child strong{display:block;margin-top:4px;color:var(--ink);font-size:13px;overflow-wrap:anywhere}.document-ref-field{display:grid;gap:3px;color:var(--muted);font-size:11px;font-weight:800}.document-ref-field input{width:100%;min-height:30px;border:1px solid var(--line);border-radius:7px;padding:0 8px;background:#fff;color:var(--ink);font-size:12px}.document-applicability-toggle{min-height:30px;border:1px solid var(--line);border-radius:8px;padding:2px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:#f8fafc;align-self:end}.document-applicability-toggle button{border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:12px;font-weight:850;cursor:pointer}.document-applicability-toggle button.active{background:#fff;color:var(--blue);box-shadow:0 0 0 1px #bfdbfe}.document-evidence-cell{display:flex;align-items:center;gap:6px;justify-content:flex-end;min-width:118px}.document-evidence-cell .upload-drawing-btn{min-height:28px;padding:0 8px;font-size:12px}.document-evidence-cell span,.document-evidence-cell a{font-size:12px;white-space:nowrap}.document-file-list{min-width:0;display:grid;gap:6px;align-self:stretch}.document-file-item{min-width:0;min-height:30px;border:1px solid var(--line);border-radius:7px;padding:6px 8px;display:flex;align-items:center;background:#fff}.document-file-item span{display:block;min-width:0;max-width:100%;color:var(--ink);font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-empty-file{min-height:30px;border:1px dashed var(--line);border-radius:7px;padding:6px 8px;color:var(--muted);font-size:12px;font-weight:750;background:#f8fafc}.document-preview-row{display:flex;align-items:center;gap:8px;min-height:24px;color:var(--muted);font-size:12px}.row-evidence-cell{min-width:150px}.evidence-preview-strip{display:flex;align-items:center;gap:4px}.evidence-preview-strip button,.evidence-preview-strip em{width:34px;height:28px;min-height:28px;border:1px solid var(--line);border-radius:6px;background:#f8fafc;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;font-size:10px;font-style:normal;text-decoration:none;padding:0;cursor:zoom-in}.evidence-preview-strip img{width:100%;height:100%;object-fit:cover;display:block}.evidence-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:20px}.evidence-lightbox-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172ab8}.evidence-lightbox-panel{position:relative;width:min(1120px,96vw);max-height:92vh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid rgba(226,232,240,.4);border-radius:8px;background:#fff;box-shadow:0 24px 80px #0f172a61;overflow:hidden}.evidence-lightbox-panel header,.evidence-lightbox-panel footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.evidence-lightbox-panel header strong{display:block;max-width:72vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evidence-lightbox-panel footer{justify-content:flex-start;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:0;color:var(--muted);font-size:12px}.evidence-lightbox-panel footer span,.evidence-lightbox-panel footer strong,.evidence-lightbox-panel footer a{border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#f8fafc;color:var(--muted);font-size:12px}.evidence-lightbox-panel footer a{color:var(--blue);text-decoration:none}.evidence-lightbox-body{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-height:360px;padding:12px;background:#0f172a}.evidence-lightbox-body.single{grid-template-columns:minmax(0,1fr)}.evidence-lightbox-stage{min-height:360px;max-height:calc(92vh - 128px);display:grid;place-items:center;overflow:auto}.evidence-lightbox-stage img{max-width:100%;max-height:calc(92vh - 148px);object-fit:contain;background:#fff}.nav-btn{min-width:64px;background:#fff!important}.icon-btn{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;display:grid;place-items:center}.file-preview-placeholder{min-width:min(520px,70vw);min-height:260px;display:grid;place-items:center;gap:10px;border:1px dashed #cbd5e1;border-radius:8px;background:#fff;color:var(--muted);padding:24px;text-align:center}.file-preview-placeholder a{color:var(--blue);font-weight:800}.report-preview{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr));gap:10px}.report-preview div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;display:grid;gap:4px}.report-lifecycle-panel.final .report-preview div{background:#fff}.report-lifecycle-panel.revision{border-color:#bfdbfe}.report-edit-completion{min-height:82px;display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:16px}.report-edit-completion h3{margin:2px 0 3px;padding:0;font-size:17px}.report-edit-completion p{color:var(--muted);font-size:12px}.report-completion-metrics{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.report-completion-metrics>span,.report-completion-metrics>strong{min-height:30px;border-radius:999px;padding:5px 9px;display:inline-flex;align-items:center;gap:4px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:800}.report-completion-metrics .ng{background:#fee2e2;color:#b91c1c}.report-completion-metrics .warn{background:#fef3c7;color:#a16207}.report-completion-metrics .good{background:#dcfce7;color:#15803d}.complete-report-btn{min-height:40px;border:1px solid var(--blue);border-radius:7px;padding:0 14px;font-weight:850;white-space:nowrap}.report-readonly-summary{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-readonly-summary div{min-height:74px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px;display:grid;align-content:start;gap:7px}.report-readonly-summary span{color:var(--muted);font-size:12px;font-weight:850}.report-readonly-summary strong{color:var(--ink);font-size:13px;line-height:1.5}.report-gate-alert{border-radius:8px;padding:10px 12px;display:grid;gap:4px;margin-top:10px}.report-gate-alert strong{font-size:13px}.report-gate-alert span{font-size:12px;line-height:1.45}.report-gate-alert.danger{background:#fff1f2!important;border:1px solid #fecdd3!important;color:#9f1239}.report-gate-alert.warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.report-gate-alert.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.report-revision-panel{margin-top:10px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:10px 12px;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);gap:12px}.report-revision-panel strong{display:block;color:#1d4ed8;font-size:13px;margin-bottom:4px}.report-revision-panel span,.report-revision-panel label{color:#475569;font-size:12px;font-weight:800;line-height:1.45}.report-revision-panel label{display:grid;gap:5px}.report-revision-panel textarea{min-height:58px;background:#fff}.report-revision-history{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.report-revision-history span{border:1px solid var(--line);border-radius:999px;background:#f8fafc;padding:5px 9px;color:var(--muted);font-size:12px;font-weight:800}.report-revision-history strong{color:var(--ink)}.report-final-actions{margin-top:12px;padding-top:12px;border-top:1px solid #e7edf5;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.report-action-button{min-height:36px;border:1px solid var(--line);border-radius:7px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff;color:#344054;font-size:13px;font-weight:800;line-height:1;text-decoration:none;white-space:nowrap;box-shadow:0 1px 2px #1018280a;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.report-action-button:hover{border-color:#aab7c8;background:#f8fafc;box-shadow:0 2px 5px #10182814;transform:translateY(-1px)}.report-action-button:focus-visible{outline:3px solid rgba(37,99,235,.2);outline-offset:2px}.report-action-button.primary-action{min-width:126px;border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 1px 3px #2563eb38}.report-action-button.primary-action:hover{border-color:#1d4ed8;background:#1d4ed8}.report-action-button.revise-action{margin-left:4px;border-color:transparent;background:transparent;color:#475467;box-shadow:none}.report-action-button.revise-action:hover{border-color:#d8e0eb;background:#f8fafc;box-shadow:none}.report-more-actions{position:relative}.report-more-actions summary{list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none}.report-more-actions summary::-webkit-details-marker{display:none}.report-more-actions[open] summary{border-color:#aab7c8;background:#f8fafc}.report-more-menu{position:absolute;z-index:20;left:0;bottom:calc(100% + 7px);min-width:156px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px #10182824;display:grid;gap:2px}.report-more-menu a,.report-more-menu button{min-height:34px;width:100%;border:0;border-radius:6px;padding:0 9px;display:flex;align-items:center;gap:8px;background:transparent;color:#344054;font-size:13px;font-weight:750;text-align:left;text-decoration:none;white-space:nowrap}.report-more-menu a:hover,.report-more-menu button:hover{background:#f1f5f9;color:var(--ink)}.qms-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;padding:24px;display:grid;place-items:center;background:#0f172a75;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.qms-modal{width:min(520px,100%);border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 24px 60px #0f172a33;padding:18px;display:grid;gap:14px}.report-settings-dialog{width:min(760px,100%)}.report-settings-context{border:1px solid var(--line);border-radius:7px;background:#f8fafc;padding:9px 10px}.report-settings-context span,.report-settings-context strong{display:block}.report-settings-context span{color:var(--muted);font-size:11px}.report-settings-context strong{margin-top:3px;color:var(--ink);font-size:13px}.report-edit-fields.modal-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.qms-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.qms-modal-head h3{margin-top:3px;font-size:18px}.qms-modal>p{color:var(--muted);font-size:13px;line-height:1.55}.report-revision-dialog label{display:grid;gap:6px;color:var(--ink);font-size:13px;font-weight:850}.report-revision-dialog label>span{color:var(--red);font-size:11px}.report-revision-dialog textarea{min-height:104px;resize:vertical}.qms-modal-actions{display:flex;justify-content:flex-end;gap:8px}.qms-modal-actions button{min-height:36px;border:1px solid var(--line);border-radius:7px;padding:0 13px;font-weight:850}.report-draft-actions{margin-top:12px;padding-top:12px;border-top:1px solid #e7edf5}.report-draft-actions button{min-height:36px;border-radius:7px;border:1px solid var(--blue);padding:0 12px;display:inline-flex;align-items:center;gap:7px;font-weight:800}.signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}button.danger{background:var(--red)!important;border:1px solid var(--red)!important;color:#fff;border-radius:8px;min-height:38px;padding:0 12px;font-weight:800}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}th{color:var(--muted);background:#f8fafc}@media(max-width:1100px){.content-grid,.inspection-grid,.gauge-layout,.document-template-layout,.recognition-body{grid-template-columns:1fr}.focus-grid,.inspection-focus-grid,.qc-summary-grid,.mes-part-summary,.attachment-grid,.gauge-stat-grid,.issue-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.unified-upload-body{grid-template-columns:1fr;align-items:stretch}}@media(max-width:760px){.app{grid-template-columns:52px minmax(0,1fr)}.workspace{padding:10px}.topbar,.detail-hero,.online-qc-head,.recognition-head,.recognition-actions,.row-between{align-items:stretch;flex-direction:column}.detail-hero{padding-left:14px;padding-top:62px}.order-grid,.order-search-bar,.inspection-focus-grid{grid-template-columns:1fr}.order-search-bar>span{white-space:normal}.issue-create-form,.workflow-timeline article{grid-template-columns:1fr}.issue-create-form .wide{grid-column:span 1}.order-facts,.kv-grid,.focus-grid,.qc-summary-grid,.qc-result-grid,.mes-part-summary,.qc-part-facts,.qc-note-grid,.attachment-grid,.signature-grid,.report-preview,.report-readonly-summary,.report-revision-panel,.gauge-stat-grid,.qc-part-card{grid-template-columns:1fr}.mes-part-table,.mes-file-list{overflow-x:auto}.mes-part-header,.mes-part-row-main{grid-template-columns:300px 58px 150px 110px 110px 96px 76px 82px;min-width:982px}.mes-part-detail{grid-template-columns:1fr;min-width:820px;padding-left:12px}.mes-file-row{grid-template-columns:260px 160px 80px 80px 120px;min-width:700px}.candidate-item{grid-template-columns:18px 32px minmax(0,1fr)}.qc-section-nav{align-items:stretch}.qc-revision-actions{position:sticky;right:0;background:#fff}.qms-modal-backdrop{padding:12px}.qms-modal{padding:14px}.report-final-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.report-action-button{width:100%}.report-action-button.primary-action{grid-column:1 / -1}.report-action-button.revise-action{margin-left:0}.report-more-actions{grid-column:1 / -1;width:100%}.report-more-menu{right:0;left:auto}}.empty,.error{margin:14px;padding:14px;border-radius:8px}.empty{background:#f8fafc;color:var(--muted)}.error{border:1px solid #ffc8c0;background:#fff6f3;color:var(--red)}.issue-link{display:block;margin-top:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;color:var(--muted);padding:8px;overflow-wrap:anywhere;font-size:12px}.public-confirmation{min-height:100vh;background:#f3f6f8;padding:24px;color:var(--ink)}.public-confirmation-panel{max-width:980px;margin:0 auto;display:grid;gap:14px}.public-confirmation-panel h1{font-size:26px}.public-issue-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.public-issue-summary div,.public-issue-card,.public-report-gate,.public-upload-panel,.public-decision-form,.public-current-status{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px}.public-report-gate{display:flex;align-items:center;justify-content:space-between;gap:12px}.public-report-gate strong{display:block;margin:2px 0;font-size:16px}.public-report-gate p{color:var(--muted);font-size:13px;line-height:1.45}.public-issue-summary span{display:block;color:var(--muted);font-size:12px;margin-bottom:3px}.public-issue-card{display:grid;gap:8px}.public-issue-card h2{font-size:14px}.public-issue-card p{color:var(--muted);line-height:1.6}.public-evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.public-evidence-grid button{display:grid;gap:5px;min-height:132px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;color:var(--ink);padding:8px;text-align:left;overflow:hidden}.public-evidence-grid img{width:100%;height:78px;border-radius:6px;object-fit:cover;background:#fff}.public-evidence-grid strong,.public-evidence-grid span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-evidence-grid span{color:var(--muted);font-size:12px}.public-evidence-item{position:relative;min-width:0}.public-evidence-item>button:first-child{width:100%}.public-evidence-item .public-evidence-delete{position:absolute;top:7px;right:7px;width:30px;min-width:30px;min-height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid #fecaca;border-radius:7px;background:#fffffff0;color:#dc2626;box-shadow:0 2px 8px #0f172a1f}.public-evidence-item .public-evidence-delete:hover{border-color:#fca5a5;background:#fff1f2;color:#b91c1c}.sales-feedback-card{display:grid;gap:8px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:10px;background:#f8fbff}.sales-feedback-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.sales-feedback-card strong{color:#1e3a8a}.sales-feedback-card span{padding:4px 8px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:12px;font-weight:750}.sales-feedback-card p{margin:0;color:#334155;line-height:1.6;white-space:pre-wrap}.sales-feedback-card small{color:#64748b}.issue-sales-feedback{margin:14px 16px 0}.public-decision-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.public-upload-panel{display:grid;grid-template-columns:minmax(0,1fr) 220px 150px auto;gap:10px;align-items:end}.public-upload-panel h2{font-size:15px;margin-bottom:4px}.public-upload-panel p{color:var(--muted);line-height:1.5;font-size:13px}.public-upload-panel .wide{display:grid;gap:5px;color:var(--muted);font-size:12px}.public-upload-panel input{min-height:36px}.paste-upload-target{min-height:52px;border:1px dashed #93c5fd;border-radius:8px;background:#eff6ff;padding:8px 10px;display:grid;align-content:center;gap:3px;outline:none}.paste-upload-target:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.paste-upload-target.uploading{opacity:.7}.paste-upload-target strong{font-size:13px}.paste-upload-target span{color:var(--muted);font-size:12px}.public-decision-form .wide{grid-column:1 / -1}.public-decision-form button{justify-self:start}.public-current-status{color:var(--muted)}.public-current-status strong{color:var(--ink)}.issue-decision-form{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.issue-decision-grid,.capa-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.issue-decision-grid .wide,.capa-grid .wide{grid-column:span 2}.capa-form{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.capa-link-box{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px 12px}.capa-link-box p{margin:4px 0 0;color:var(--muted);font-size:12px;word-break:break-all}.mini-link{margin-top:6px;padding:4px 8px;min-height:0;border-radius:6px;font-size:12px}.checkbox-line{display:flex;align-items:center;gap:8px;min-height:58px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:8px 10px;font-size:12px;font-weight:800}.checkbox-line input{width:auto}@media(max-width:1100px){.issue-decision-grid,.capa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.issue-decision-grid,.issue-decision-grid .wide,.capa-grid,.capa-grid .wide{grid-template-columns:1fr;grid-column:auto}.capa-link-box{grid-template-columns:1fr}}.file-upload-row{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.file-upload-row .upload-drawing-btn{min-width:100px;justify-content:center}.file-default-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px;border-bottom:1px solid var(--line);background:#f8fafc}.file-default-grid div{border:1px dashed var(--line);border-radius:8px;background:#fff;padding:8px}.file-default-grid strong,.file-default-grid span{display:block}.file-default-grid span{margin-top:4px;color:var(--muted);font-size:12px}.role-switcher{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px}.role-switcher strong{display:block;margin-top:3px;font-size:14px}.role-buttons{display:flex;gap:6px}.role-buttons button{display:grid;grid-template-columns:auto auto;gap:6px;align-items:center;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:0 10px;color:var(--ink)}.role-buttons button.active{border-color:#0f766e;background:#ecfdf5;color:#0f766e}.role-buttons span{min-width:22px;border-radius:999px;background:#fff;padding:2px 6px;font-size:12px;font-weight:800}.report-archive-page{display:grid;gap:12px}.report-approval-queue{margin-bottom:2px}.report-archive-head{align-items:start}.report-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.report-stat-grid div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px}.report-stat-grid span,.report-archive-table small{display:block;color:var(--muted);font-size:12px;line-height:1.45}.report-stat-grid strong{display:block;margin-top:3px;font-size:20px}.report-search-bar{grid-template-columns:minmax(130px,auto) minmax(260px,1fr) 120px 120px auto auto auto}.report-archive-table table{min-width:1180px}.report-archive-table td{vertical-align:top}.link-button{border:0;background:transparent;color:#0f766e;padding:0;font:inherit;font-weight:800;text-align:left;cursor:pointer}.link-button:hover{text-decoration:underline}.report-action-links{display:flex;gap:8px;align-items:center}.report-action-links a,.report-action-links span,.report-action-links button{border:1px solid var(--line);border-radius:8px;background:#f8fafc;color:var(--ink);padding:5px 8px;font-size:12px;font-weight:800;text-decoration:none}.report-action-links span{color:var(--muted)}.report-action-links button{border-color:#0f766e;background:#ecfeff;color:#115e59;cursor:pointer}.ghost-link{min-height:34px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 11px;font-size:13px;font-weight:800;text-decoration:none}.shipping-package-panel{overflow-x:auto}.shipping-package-table{min-width:940px}.shipping-package-table td{vertical-align:top}.release-workbench{padding:22px}.release-decision-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e3eaf4}.release-decision-head h3{margin:5px 0 4px;font-size:24px}.release-decision-head p{margin:0;color:#667085}.release-decision-badge{padding:8px 13px;border-radius:999px;font-size:13px;font-weight:750;white-space:nowrap}.release-decision-badge.hold{background:#fff0f0;color:#c53d35}.release-decision-badge.waiting{background:#fff7e6;color:#a65f00}.release-decision-badge.ready{background:#e8f8ef;color:#16784a}.release-gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.release-gate-card{display:flex;flex-direction:column;gap:14px;min-width:0;padding:18px;border:1px solid #dbe4f0;border-radius:14px;background:#fff}.release-gate-card.ready{border-color:#a9e1c3;background:#fbfffd}.release-gate-card.blocked{background:#fcfdff}.release-gate-title{display:flex;align-items:center;gap:10px}.release-gate-title>span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#eaf2ff;color:#2469d8;font-weight:800}.release-gate-title>div{display:grid;gap:2px}.release-gate-title strong{font-size:17px}.release-gate-title small{color:#7a8699}.release-gate-title em{margin-left:auto;color:#526075;font-style:normal;font-weight:750}.release-check-list{display:grid;gap:8px}.release-check-list>div{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border-radius:9px;background:#f6f8fb}.release-check-list>div>span{display:grid;gap:2px}.release-check-list small{color:#68758a;line-height:1.35}.release-check-list .passed svg{color:#1c9a62}.release-check-list .failed svg{color:#d28a19}.release-actor.compact{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin:0}.release-main-action{width:100%;justify-content:center}.hold-reason-form{display:grid;grid-template-columns:minmax(180px,.6fr) minmax(320px,1.4fr) auto;align-items:center;gap:14px;margin-top:16px;padding:14px;border:1px solid #efc4bd;border-radius:12px;background:#fff8f6}.hold-reason-form p{margin:3px 0 0;color:#7a645f;font-size:13px}.hold-reason-form textarea{min-height:64px;resize:vertical}.release-state-details{margin-top:14px;border-top:1px solid #e3eaf4;padding-top:12px}.release-state-details summary{cursor:pointer;color:#506079;font-weight:650}.release-state-details .focus-grid{margin-top:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.shipping-missing-summary{margin:14px 0;padding:12px 14px;border:1px solid #f0c77c;border-radius:10px;background:#fffaf0}.shipping-missing-summary p{margin:4px 0 0;color:#8b5d14}.package-unified-upload{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) auto;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;border:1px solid #dce5f1;border-radius:11px;background:#f8faff}.package-unified-upload>div{display:grid;gap:3px}.package-unified-upload span{color:#6d798c;font-size:13px}.package-show-all{margin-top:12px}@media(max-width:980px){.release-gate-grid,.hold-reason-form,.package-unified-upload{grid-template-columns:1fr}.release-state-details .focus-grid{grid-template-columns:1fr 1fr}}.auth-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,#eaf2ff,#f6f8fc 52%,#eef3f9)}.auth-gate>section{width:min(520px,100%);display:grid;justify-items:center;gap:15px;padding:42px;border:1px solid #dbe4f0;border-radius:20px;background:#fffffff5;box-shadow:0 18px 55px #21385b1f;text-align:center}.auth-gate h1{margin:0}.auth-gate p{margin:0;color:#69768a;line-height:1.65}.brand.large{width:58px;height:58px;font-size:20px}.auth-primary-link{display:inline-flex;justify-content:center;min-width:220px;padding:11px 18px;border-radius:9px;background:#2d67dc;color:#fff;font-weight:750;text-decoration:none}.auth-user-summary{padding:10px 14px;border-radius:9px;background:#f3f6fb;color:#33415a}.signed-in-user{display:grid;justify-items:end;gap:2px;padding-right:10px;border-right:1px solid #dce4ef}.signed-in-user strong{font-size:13px}.signed-in-user span{color:#718097;font-size:11px}.gauge-editor{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;gap:10px}.gauge-editor-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.gauge-editor-grid.single{grid-template-columns:repeat(2,minmax(0,1fr))}.gauge-editor-grid.single label.wide{grid-column:1 / -1}.gauge-editor-grid label{color:var(--muted);font-size:12px;font-weight:800;display:grid;gap:5px}.gauge-editor-grid label.wide{grid-column:span 3}.gauge-table td:last-child{width:72px}.inline-action{min-height:28px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 9px;color:var(--blue);font-size:12px;font-weight:850;cursor:pointer}.capa-queue-page{display:grid;gap:12px}.capa-search-bar{grid-template-columns:minmax(130px,auto) minmax(260px,1fr) 140px 140px 160px auto auto}.capa-table{overflow-x:auto}.capa-table table{min-width:1320px}.capa-table td{vertical-align:top}.capa-table small{display:block;color:var(--muted);font-size:12px;line-height:1.45}.mes-write-page{display:grid;gap:12px}.mes-write-search-bar{grid-template-columns:minmax(130px,auto) minmax(260px,1fr) 180px auto auto}.mes-write-table{overflow-x:auto}.mes-write-table table{min-width:1180px}.mes-write-table td{vertical-align:top}.mes-write-table small{display:block;color:var(--muted);font-size:12px;line-height:1.45}@media(max-width:980px){.overview-decision-band,.overview-order-strip{grid-template-columns:1fr}.overview-decision-cell,.overview-next-action,.overview-order-strip div{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}.overview-order-strip div:last-child{border-bottom:0}.overview-part-list article{grid-template-columns:44px minmax(0,1fr) auto}.overview-part-list article>span{display:none}.overview-gate-list{grid-template-columns:1fr}.overview-gate-list>button{grid-template-columns:64px minmax(120px,.6fr) minmax(0,1fr) 64px;border-right:0}.report-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-search-bar,.work-item-head,.work-item-card{grid-template-columns:1fr}.work-item-actions{flex-wrap:wrap}.document-checklist{grid-template-columns:1fr}.document-action-row{grid-template-columns:1fr;align-items:stretch}.inspection-edit-scope.editing .document-card,.inspection-edit-scope.editing .document-card .document-action-row,.printing-standard-compact>summary,.printing-standard-picker,.compact-upload-panel,.compact-upload-panel .unified-upload-body,.report-edit-completion{grid-template-columns:1fr}.report-completion-metrics{justify-content:flex-start}.report-edit-fields.modal-fields,.document-readonly-row{grid-template-columns:1fr}.document-evidence-cell{justify-content:flex-start}.inspection-execution-bar{grid-template-columns:1fr}.inspection-execution-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-file-item{grid-template-columns:42px minmax(0,1fr) 72px}.attachment-file-item.readonly{grid-template-columns:42px minmax(0,1fr)}.attachment-file-category{display:none}}.closed-loop-center{margin-top:14px;padding:14px;border:1px solid #dbe3ee;border-radius:14px;background:#f8fafc}.closed-loop-create{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end;margin:0}.closed-loop-create input,.closed-loop-create select{min-width:0;height:38px}.closed-loop-list{display:grid;gap:8px;margin:10px 0}.closed-loop-item{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.closed-loop-item strong,.closed-loop-item span{display:inline-block;margin-right:10px}.closed-loop-item span{color:#64748b;font-size:12px}.closed-loop-item p{margin:5px 0 0;color:#475569}.reinspection-entry{width:min(520px,100%);display:grid;gap:8px;padding:10px;border-radius:10px;background:#f8fafc}.reinspection-route-card{width:min(620px,100%);grid-template-columns:minmax(0,1fr) auto;align-items:center;background:#f5f9ff;border:1px solid #bfdbfe}.reinspection-route-card>div{display:grid;gap:4px}.reinspection-route-card>div span{color:#64748b;font-size:12px}.report-reinspection-section{display:grid;gap:12px}.online-reinspection-editor{display:grid;gap:14px;padding:16px;border:1px solid #93b4e8;border-radius:12px;background:#f8fbff;box-shadow:0 8px 24px #2563eb0f}.online-reinspection-head,.online-reinspection-submit{display:flex;align-items:center;justify-content:space-between;gap:16px}.online-reinspection-head>div{display:grid;gap:4px}.online-reinspection-head h4{font-size:17px}.online-reinspection-head p,.online-reinspection-submit span{color:#64748b;font-size:12px}.online-reinspection-table{overflow:hidden;border:1px solid #dbe5f2;border-radius:10px;background:#fff}.online-reinspection-row{display:grid;grid-template-columns:minmax(200px,1.2fr) 80px minmax(220px,1fr) 120px;gap:10px;align-items:center;min-height:52px;padding:8px 12px;border-bottom:1px solid #edf2f7}.online-reinspection-row:last-child{border-bottom:0}.online-reinspection-row.head{min-height:38px;background:#f8fafc;color:#64748b;font-size:11px;font-weight:750}.online-reinspection-row input,.online-reinspection-row select{width:100%;min-width:0;height:36px}.report-reinspection-history{display:grid;gap:8px}.report-reinspection-history>article{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.5fr);gap:16px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.report-reinspection-history>article>div:first-child{display:grid;gap:4px;align-content:start}.report-reinspection-history>article>div:first-child span,.report-reinspection-history>article small{color:#64748b;font-size:12px}.report-reinspection-items{display:grid;gap:5px}.report-reinspection-items>span{display:grid;grid-template-columns:minmax(150px,1fr) minmax(100px,.8fr) 58px;gap:8px;align-items:center;color:#475569;font-size:12px}.report-reinspection-items em{justify-self:end;font-style:normal;font-weight:750}.report-reinspection-items em.good{color:#047857}.report-reinspection-items em.danger{color:#dc2626}.reinspection-entry label{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(160px,1fr);gap:8px;align-items:center}.closed-loop-timeline{display:grid;gap:6px;padding:4px 14px 12px}.closed-loop-timeline>div{display:grid;grid-template-columns:130px minmax(190px,.9fr) minmax(90px,.45fr) minmax(220px,1.2fr);gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px solid #eef2f7}.closed-loop-timeline>div:last-child{border-bottom:0}.closed-loop-timeline .closed-loop-timeline-head{padding:7px 0;color:#94a3b8;font-size:11px;font-weight:700}.closed-loop-timeline time{color:#64748b;font-size:12px}.closed-loop-timeline span{font-weight:650}.closed-loop-timeline strong{color:#334155;font-size:12px}.closed-loop-timeline p{margin:0;color:#475569}.issue-compact-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.issue-compact-meta span{padding:5px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:12px}.issue-workflow{display:grid;gap:12px}.issue-workflow button.primary,.issue-workflow button.ghost,.closed-loop-center button.primary,.closed-loop-center button.ghost{min-height:36px;padding:0 14px;border:1px solid transparent;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#334155;font-size:13px;font-weight:750;line-height:1;white-space:nowrap;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.issue-workflow button.primary,.closed-loop-center button.primary{border-color:#2563eb!important;background:#2563eb!important;color:#fff}.issue-workflow button.primary:hover,.closed-loop-center button.primary:hover{border-color:#1d4ed8!important;background:#1d4ed8!important}.issue-workflow button.ghost,.closed-loop-center button.ghost{border-color:#d5deea!important;background:#fff!important;color:#334155}.issue-workflow button.ghost:hover,.closed-loop-center button.ghost:hover{border-color:#aebdd0!important;background:#f8fafc!important;color:#172033}.issue-workflow button.primary:focus-visible,.issue-workflow button.ghost:focus-visible,.closed-loop-center button.primary:focus-visible,.closed-loop-center button.ghost:focus-visible{outline:0;box-shadow:0 0 0 3px #2563eb29}.issue-workflow button:disabled,.closed-loop-center button:disabled{box-shadow:none;transform:none}.issue-workbench-head{padding:14px 16px}.issue-workbench-head .table-title-row{margin:0}.issue-status-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:12px;overflow:hidden;border:1px solid #e2e8f0;border-radius:10px;background:#e2e8f0}.issue-status-strip button{display:flex;align-items:baseline;justify-content:center;gap:7px;min-height:48px;padding:8px 12px;border:0;border-radius:0;background:#fff;color:#64748b}.issue-status-strip button:hover{background:#f5f9ff;color:#1d4ed8}.issue-status-strip strong{color:#172033;font-size:20px}.issue-status-strip span{font-size:12px;font-weight:650}.issue-list-filters{display:flex;gap:5px;margin-top:10px}.issue-list-filters button{min-height:30px;padding:5px 11px;border:1px solid transparent;border-radius:999px;background:transparent;color:#64748b;font-size:12px}.issue-list-filters button:hover,.issue-list-filters button.active{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.issue-compact-list{display:grid;gap:7px}.issue-list-row-shell{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:stretch;gap:8px;min-width:0}.issue-list-row-shell.selected .issue-list-row{border-color:#7aa7f5;background:#f7faff;box-shadow:0 0 0 2px #2563eb1a}.issue-list-row-shell.closed{opacity:.72}.issue-select-box{display:flex;align-items:center;justify-content:center;min-width:0;cursor:pointer}.issue-select-box input[type=checkbox]{width:18px;height:18px;margin:0;padding:0;accent-color:#2563eb;cursor:pointer}.issue-select-box input[type=checkbox]:disabled{cursor:not-allowed;opacity:.45}.issue-select-box:has(input:focus-visible){border-radius:8px;outline:3px solid rgba(37,99,235,.16);outline-offset:1px}.issue-list-row{width:100%;min-height:76px;display:grid;grid-template-columns:minmax(280px,1fr) minmax(440px,1.25fr);align-items:center;gap:18px;padding:11px 14px;border:1px solid #dce5f0;border-radius:11px;background:#fff;color:#172033;text-align:left;box-shadow:0 1px 2px #0f172a08}.issue-list-row:hover{border-color:#93b4e8;background:#f8fbff;box-shadow:0 6px 18px #2563eb12;transform:translateY(-1px)}.issue-list-row.closed{opacity:.68}.issue-list-row .issue-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0}.issue-list-row .issue-card-head>div{min-width:0;display:grid;gap:4px}.issue-list-row .issue-card-head strong,.issue-list-row .issue-card-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.issue-list-row .issue-card-head small{color:#64748b;font-size:12px}.issue-list-row .issue-card-head>em{padding:4px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:11px;font-style:normal}.issue-list-next{display:grid;grid-template-columns:minmax(80px,.65fr) 92px minmax(130px,1fr) auto;align-items:center;gap:10px;color:#64748b;font-size:12px}.issue-list-next span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.issue-list-next strong{color:#1e293b}.issue-list-next em{color:#2563eb;font-style:normal;font-weight:700;white-space:nowrap}.issue-detail-view{min-width:0}.issue-detail-command{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:minmax(260px,1fr) minmax(300px,1.15fr);align-items:center;gap:18px;padding:12px 16px;border:1px solid #cddcf0;border-radius:12px 12px 0 0;background:#fffffff5;box-shadow:0 8px 22px #0f172a12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.issue-detail-command>div{display:flex;align-items:center;gap:10px;min-width:0}.issue-detail-command>div:last-child{display:grid;grid-template-columns:auto minmax(100px,1fr);gap:2px 12px;padding-left:18px;border-left:1px solid #e2e8f0}.issue-detail-command>div:last-child span{grid-row:1 / 3;align-self:center;padding:5px 9px;border-radius:999px;background:#fff7ed;color:#c2410c;font-size:12px;font-weight:700}.issue-detail-command strong{color:#172033}.issue-detail-command small{color:#64748b;font-size:12px}.issue-detail-view>.issue-card.detail{padding:0;border:1px solid #dbe3ee;border-top:0;border-radius:0 0 12px 12px;background:#fff}.issue-detail-evidence{display:grid;grid-template-columns:minmax(150px,.6fr) auto minmax(0,1.8fr);align-items:center;gap:12px;padding:12px 14px;border-top:1px solid #e2e8f0;background:#fbfdff}.issue-detail-evidence:focus{outline:3px solid rgba(37,99,235,.14);outline-offset:-3px}.issue-detail-evidence.uploading{opacity:.72;pointer-events:none}.issue-detail-evidence>div:first-child{display:grid;gap:2px}.issue-detail-evidence>div:first-child strong{color:#172033;font-size:13px}.issue-detail-evidence>div:first-child small,.issue-evidence-empty{color:#64748b;font-size:12px}.issue-detail-evidence .evidence-preview-strip{flex:1;min-width:0}.issue-evidence-file-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;min-width:0}.issue-evidence-file,.issue-intake-file-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 8px;border:1px solid #dbe3ee;border-radius:8px;background:#fff}.issue-evidence-file>button:first-child,.issue-intake-file-item>button:first-child{width:34px;height:30px;min-height:30px;padding:0;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#64748b;overflow:hidden}.issue-evidence-file img,.issue-intake-file-item img{width:100%;height:100%;object-fit:cover;display:block}.issue-evidence-file span,.issue-intake-file-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#172033;font-size:12px;font-weight:650}.issue-evidence-file small,.issue-intake-file-item small{color:#64748b;font-size:11px;white-space:nowrap}.issue-fact-panel{border:1px solid #d8e2ef;border-radius:12px;overflow:hidden;background:#fff}.issue-fact-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;cursor:pointer;background:#f8fafc;list-style-position:inside}.issue-fact-panel>summary span{display:inline-grid;gap:2px;margin-left:4px}.issue-fact-panel>summary strong{font-size:16px;color:#172033}.issue-fact-panel>summary small,.issue-fact-panel>summary em{color:#64748b;font-size:12px;font-style:normal}.issue-fact-body{display:grid;gap:14px;padding:16px}.issue-fact-description{display:grid;grid-template-columns:105px minmax(0,1fr);gap:14px;padding-bottom:14px;border-bottom:1px solid #e7edf5}.issue-fact-description>span,.issue-fact-tags>span,.issue-fact-adjustment>span{color:#64748b;font-size:12px;font-weight:700}.issue-fact-description p{margin:0;color:#172033;font-size:15px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.issue-fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid #e7edf5;border-radius:10px;background:#e7edf5}.issue-fact-grid>div{min-height:72px;padding:11px 13px;background:#fff}.issue-fact-grid dt{margin-bottom:6px;color:#64748b;font-size:12px;font-weight:700}.issue-fact-grid dd{margin:0;color:#1e293b;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.issue-fact-grid dd small{display:block;color:#64748b;font-size:12px}.issue-fact-tags{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:center;gap:14px}.issue-fact-tags>div{display:flex;flex-wrap:wrap;gap:7px}.issue-fact-tags em{padding:4px 9px;border-radius:999px;background:#fff1f2;color:#be123c;font-size:12px;font-style:normal}.issue-linked-findings{border:1px solid #e7edf5;border-radius:9px;background:#fbfdff}.issue-linked-findings summary{padding:10px 12px;cursor:pointer;color:#334155;font-size:13px;font-weight:700}.issue-linked-findings p{margin:0;padding:8px 12px;border-top:1px solid #eef2f7;color:#475569;font-size:13px;white-space:pre-wrap}.issue-fact-adjustment{display:grid;grid-template-columns:105px 170px minmax(0,1fr);align-items:center;gap:14px;padding:11px 13px;border:1px solid #bfd2f4;border-radius:9px;background:#f5f9ff}.issue-fact-adjustment p{margin:0;color:#64748b;font-size:13px}@media(max-width:1050px){.issue-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.issue-fact-adjustment{grid-template-columns:100px 1fr}.issue-fact-adjustment p{grid-column:2}}.issue-secondary-panel{margin-top:12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.issue-secondary-panel>summary{padding:12px 14px;cursor:pointer;font-weight:650}.issue-secondary-panel>.capa-form{margin:0;border:0;border-top:1px solid #e2e8f0;border-radius:0}.closed-loop-timeline-panel{margin-top:12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.closed-loop-timeline-panel>summary{padding:11px 13px;cursor:pointer;color:#334155;font-size:13px;font-weight:700}.closed-loop-actor,.release-actor{display:grid;grid-template-columns:110px minmax(180px,320px);gap:8px;align-items:center;margin:10px 0;font-weight:650}.closed-loop-actor input,.release-actor input{height:38px}.closed-loop-create>label{display:grid;gap:5px;min-width:0}.closed-loop-create>label>span{color:#475569;font-size:12px;font-weight:700}.closed-loop-create>label>span small{color:#2563eb;font-size:11px;font-weight:700}.closed-loop-create>label>input,.closed-loop-create>label>select{width:100%}.closed-loop-create .assignee-combobox>small{color:#c2410c;font-size:11px}.closed-loop-no-recovery{display:grid;gap:5px;align-content:end;min-height:58px}.closed-loop-no-recovery span{color:#94a3b8;font-size:12px;font-weight:700}.closed-loop-no-recovery strong{display:grid;place-items:center;height:38px;border:1px dashed #d8e2ef;border-radius:8px;color:#94a3b8}.disposition-role-card{display:grid;gap:3px;align-content:end;min-height:58px;padding:5px 10px;border:1px solid #dbeafe;border-radius:9px;background:#f5f9ff}.disposition-role-card span,.disposition-role-card small{color:#64748b;font-size:11px}.disposition-role-card strong{color:#1e3a8a;font-size:13px}.internal-concession-check{grid-column:1 / -1;display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;padding:11px 13px;border:1px solid #f2c879;border-radius:9px;background:#fffbeb}.internal-concession-check input{width:auto!important;height:auto!important;margin-top:3px}.internal-concession-check>span{display:grid;gap:3px}.internal-concession-check small{color:#92400e;font-size:12px;font-weight:500}.quality-ledger-page,.quality-config-page{display:grid;gap:14px}.quality-ledger-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(120px,.8fr)) minmax(130px,.8fr) auto auto;gap:8px;align-items:center}.quality-ledger-filters input,.quality-ledger-filters select{min-width:0;height:38px}.ledger-summary{display:flex;align-items:baseline;gap:8px;padding:10px 13px;border-radius:10px;background:#f5f8fc;color:#64748b}.ledger-summary strong{color:#1d4ed8;font-size:22px}.quality-ledger-table{overflow:auto;border:1px solid #e2e8f0;border-radius:12px}.quality-ledger-table table{width:100%;min-width:1180px;border-collapse:collapse}.quality-ledger-table th,.quality-ledger-table td{padding:11px 12px;border-bottom:1px solid #edf1f6;text-align:left;vertical-align:top}.quality-ledger-table th{position:sticky;top:0;background:#f8fafc;color:#64748b;font-size:12px}.quality-ledger-table tbody tr{cursor:pointer}.quality-ledger-table tbody tr:hover{background:#f7faff}.quality-ledger-table td small{display:block;max-width:320px;margin-top:4px;color:#64748b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quality-ledger-table td.overdue{color:#dc2626;font-weight:700}.quality-config-add{display:grid;grid-template-columns:180px 1fr 1fr auto;gap:8px}.quality-config-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quality-config-groups>section{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.quality-config-groups h3{display:flex;justify-content:space-between;margin:0;padding:12px 14px;background:#f8fafc}.quality-config-groups h3 span{color:#2563eb}.quality-config-groups article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;border-top:1px solid #edf1f6}.quality-config-groups article>div{display:grid;gap:2px}.quality-config-groups article small{color:#64748b}.quality-config-groups article.disabled{opacity:.48}@media(max-width:1200px){.quality-ledger-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.quality-config-groups{grid-template-columns:1fr}}.issue-intake-backdrop{place-items:stretch end;padding:0}.issue-intake-drawer{width:min(720px,94vw);height:100vh;overflow:auto;padding:20px;display:grid;align-content:start;gap:16px;background:#fff;box-shadow:-20px 0 60px #0f172a38}.disposition-drawer{width:min(680px,94vw)}.disposition-drawer .closed-loop-create>label:nth-of-type(7){grid-column:1 / -1}.disposition-drawer .internal-concession-check,.disposition-drawer .closed-loop-validation,.disposition-drawer .qms-modal-actions,.disposition-drawer-actor{grid-column:1 / -1}.disposition-drawer-actor{display:flex;align-items:baseline;gap:5px;padding:10px 12px;border-radius:9px;background:#f8fafc;color:#64748b;font-size:12px}.disposition-drawer-actor strong{color:#172033;font-size:13px}.disposition-drawer-actor small{margin-left:auto}.issue-intake-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px}.issue-intake-mode button{display:grid;gap:4px;padding:13px;border:1px solid #dbe3ee;border-radius:10px;background:#fff;text-align:left}.issue-intake-mode button.active{border-color:#2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb}.issue-intake-mode small,.issue-intake-ng p,.issue-intake-file small{color:#64748b;font-size:12px}.issue-intake-ng{display:grid;gap:14px;padding:18px;border:1px solid #bfdbfe;border-radius:12px;background:#f5f9ff}.issue-intake-ng button{justify-self:start}.sales-route-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sales-route-preview div{border:1px solid #dbeafe;border-radius:8px;background:#fff;padding:9px 10px}.sales-route-preview span{display:block;color:#64748b;font-size:12px;margin-bottom:3px}.sales-route-preview strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.issue-intake-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.issue-intake-form>label{display:grid;gap:6px;color:#475569;font-size:12px;font-weight:700}.issue-intake-form input,.issue-intake-form select{width:100%}.issue-intake-form textarea{min-height:88px;resize:vertical}.issue-intake-form .wide{grid-column:1 / -1}.issue-intake-form .field-hint{display:block;color:#64748b;font-size:11px;font-weight:500;line-height:1.45}.issue-intake-file{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:12px;border:1px dashed #b9c8dc;border-radius:10px;background:#f8fafc}.issue-intake-file:focus{border-style:solid;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f;outline:0}.issue-intake-file.uploading{border-color:#2563eb;background:#eff6ff}.issue-intake-file-head{display:grid;gap:3px}.issue-intake-file-head strong{color:#172033}.issue-intake-file-list{grid-column:1 / -1;display:grid;gap:8px}@media(max-width:700px){.issue-intake-form,.issue-intake-mode{grid-template-columns:1fr}.issue-intake-form .wide{grid-column:auto}}.closed-loop-validation{grid-column:1 / -1;margin:0;padding:8px 10px;border-radius:8px;background:#fff7ed;color:#c2410c;font-size:12px}.disposition-drawer-message{border:1px solid #fed7aa;font-weight:700}.public-confirmation-page{min-height:100vh;padding:40px 20px;background:#f1f5f9}.public-confirmation-shell{width:min(760px,100%);margin:0 auto;padding:28px;border-radius:18px;background:#fff;box-shadow:0 18px 50px #0f172a14}.public-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.public-summary-grid div,.public-context-card{padding:12px;border:1px solid #e2e8f0;border-radius:10px}.public-summary-grid span,.public-summary-grid strong{display:block}.public-summary-grid span{color:#64748b;font-size:12px;margin-bottom:5px}.public-context-card{margin-bottom:16px;background:#f8fafc}.public-context-card h2{margin:8px 0 4px;font-size:14px}.public-context-card p{margin:4px 0;color:#475569}.public-decision-form{display:grid;gap:12px}.public-decision-form label{display:grid;gap:6px}@media(max-width:1200px){.issue-list-row{grid-template-columns:minmax(260px,1fr) minmax(360px,1fr)}}@media(max-width:900px){.closed-loop-create{grid-template-columns:1fr 1fr}.closed-loop-create>label:nth-of-type(n+3),.closed-loop-create>button{grid-column:1 / -1}.closed-loop-item{grid-template-columns:1fr}.online-reinspection-row{grid-template-columns:1fr 70px}.online-reinspection-row.head{display:none}.online-reinspection-row input,.online-reinspection-row select{grid-column:1 / -1}.report-reinspection-history>article{grid-template-columns:1fr}.issue-list-row,.issue-detail-command{grid-template-columns:1fr}.issue-list-next{grid-template-columns:1fr 90px minmax(110px,1fr) auto}.issue-detail-command>div:last-child{padding:10px 0 0;border-top:1px solid #e2e8f0;border-left:0}.public-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.issue-status-strip{grid-template-columns:repeat(2,1fr)}.issue-list-row{grid-template-columns:1fr}.issue-list-next{grid-template-columns:1fr 1fr}.issue-list-next strong{grid-column:1/-1}.disposition-drawer .closed-loop-create{grid-template-columns:1fr}.disposition-drawer .closed-loop-create>*{grid-column:1!important}}
