html{background:#f5f7fb}body{margin:0}button,select,textarea,input{font-family:inherit}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #2563eb}:root{--bg:#f5f7fb;--panel:#fff;--panel-muted:#f8fafc;--line:#dce3ed;--line-strong:#b8c5d6;--text:#111827;--muted:#5f6b7a;--subtle:#8a96a8;--accent:#2563eb;--accent-soft:#eaf1ff;--cyan:#06b6d4;--amber:#f59e0b;--danger:#ef4444;--success:#16a34a;--warning:#f59e0b;--guide-outer:#06b6d4d1;--guide-inner:#f59e0bdb;--shadow:0 14px 40px #1f293714;--radius:8px;color:var(--text);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:1180px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}#root{min-height:100vh}.workbench{background:var(--bg);grid-template-rows:64px minmax(0,1fr);min-height:100vh;display:grid}.topbar{background:var(--panel);border-bottom:1px solid var(--line);grid-template-columns:280px 1fr 280px;align-items:center;gap:20px;padding:0 18px;display:grid}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{background:#fff;border:2px solid #111827;border-radius:8px;place-items:center;width:34px;height:34px;font-weight:800;display:grid;overflow:hidden}.brand-mark.has-image{border-color:var(--line-strong)}.brand-mark img{object-fit:contain;width:100%;height:100%;padding:3px}.brand strong,.brand span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.brand strong{font-size:15px}.brand span,.section-heading p,.drawer-header p{color:var(--muted);font-size:12px}.workspace-tabs{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);justify-self:center;display:inline-flex;overflow:hidden}.workspace-tabs button,.side-toggle button{border:0;border-right:1px solid var(--line);height:40px;color:var(--muted);background:0 0;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;display:inline-flex}.workspace-tabs button:last-child,.side-toggle button:last-child{border-right:0}.workspace-tabs button.is-active,.side-toggle button.is-active{color:var(--accent);background:var(--accent-soft)}.workspace-tabs button.is-active{box-shadow:inset 0 -2px 0 var(--accent)}.top-actions,.report-actions,.camera-actions,.capture-toolbar{align-items:center;display:flex}.top-actions{justify-content:flex-end;gap:8px}.icon-button,.icon-text-button,.control-button,.primary-button,.text-button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:34px;font-size:12px;display:inline-flex}.icon-button.is-selected{background:var(--accent-soft);color:var(--accent);border-color:#a9c2ff}.icon-button{width:36px;padding:0}.icon-text-button,.control-button,.primary-button,.text-button{padding:0 12px}.primary-button{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:700}.primary-button:disabled{cursor:not-allowed;border-color:var(--line);color:var(--subtle);background:#eef2f7}.primary-button.wide{width:100%;height:42px}.text-button{color:var(--accent);background:0 0;border:0;padding:0}.workspace-layout{grid-template-columns:minmax(820px,1fr) 380px;min-height:0;display:grid}.workspace-layout.is-full-width{grid-template-columns:minmax(0,1fr)}.right-rail{background:var(--panel);border-left:1px solid var(--line);min-height:0;padding:14px;overflow:auto}.utilitybar{border-bottom:1px solid var(--line);background:var(--panel);grid-template-columns:minmax(260px,.9fr) minmax(380px,1.35fr) minmax(250px,.85fr) auto;align-items:center;gap:0;min-width:0;min-height:72px;padding:6px 14px;display:grid}.utility-section{border-right:1px solid var(--line);align-items:center;gap:8px;min-width:0;min-height:56px;padding:0 10px;display:flex}.utility-section:first-child{padding-left:0}.utility-section:last-child{border-right:0;padding-right:0}.utility-label,.session-picker>span{color:var(--muted);flex:none;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.compact-action{white-space:nowrap;min-height:34px;padding:0 10px;font-size:11px;font-weight:800}.new-file-button{flex:none;align-self:end}.session-picker{flex:190px;gap:3px;min-width:0;display:grid}.session-picker select{border:1px solid var(--line);width:100%;min-width:0;height:34px;color:var(--text);background:var(--panel-muted);border-radius:6px;padding:0 10px;font-size:12px;font-weight:800}.top-image-strip{align-items:center;gap:6px;min-width:0;display:flex;overflow-x:auto}.top-image-tile{border:1px solid var(--line);background:var(--panel);text-align:left;border-radius:6px;flex:none;align-items:center;gap:7px;min-width:104px;min-height:44px;padding:3px 6px;display:flex}.top-image-tile.is-active{border-color:var(--accent);background:#f6f9ff}.top-image-copy{gap:1px;min-width:0;display:grid}.top-image-copy b,.top-image-copy small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.top-image-copy b{font-size:12px}.top-image-copy small{color:var(--muted);font-size:10px}.utility-upload-button{border:1px dashed var(--line-strong);min-width:110px;min-height:36px;color:var(--muted);background:#fbfdff;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:800;display:inline-flex}.save-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.save-status,.resume-status{border:1px solid var(--line);background:var(--panel);border-radius:6px;align-items:center;gap:8px;min-width:0;min-height:42px;padding:5px 8px;display:flex}.save-status{color:#137a36;background:#effcf4;border-color:#bbe7cb}.save-status.is-saving{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.save-status.is-error{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.save-status.is-idle{border-color:var(--line);color:var(--muted);background:var(--panel-muted)}.save-status.is-saved{color:#137a36;background:#effcf4;border-color:#bbe7cb}.resume-status{color:#1d4ed8;background:#f3f7ff;border-color:#bfd1ff}.save-status div,.resume-status div{min-width:0}.save-status strong,.save-status span,.resume-status strong,.resume-status span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.save-status strong,.resume-status strong{font-size:11px}.save-status span,.resume-status span{font-size:10px}.draft-tools{justify-content:flex-end;align-items:center;gap:6px;display:flex;position:relative}.utility-error{text-overflow:ellipsis;white-space:nowrap;position:absolute;bottom:-18px;left:8px;right:8px;overflow:hidden}.workbench-toast{z-index:60;border:1px solid var(--line);max-width:320px;color:var(--text);background:var(--panel);border-radius:6px;padding:9px 12px;font-size:12px;font-weight:800;position:fixed;top:84px;right:18px;box-shadow:0 18px 48px #0f172a2e}.workbench-toast.is-success{color:#137a36;background:#effcf4;border-color:#a7e1bd}.workbench-toast.is-info{color:#1d4ed8;background:#eff6ff;border-color:#b9cffd}.workbench-toast.is-error{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.setup-workspace{grid-template-columns:minmax(300px,.92fr) minmax(520px,1.55fr) minmax(330px,1fr);align-items:start;gap:14px;min-height:100%;display:grid}.setup-column{gap:14px;min-width:0;display:grid}.setup-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);align-content:start;gap:14px;min-width:0;padding:14px;display:grid;box-shadow:0 1px #11182708}.setup-panel-heading{border-bottom:1px solid var(--line);min-width:0;color:var(--accent);align-items:center;gap:9px;padding-bottom:10px;display:flex}.setup-panel-heading h2{color:var(--text);margin:0;font-size:14px}.setup-file-actions,.setup-draft-actions,.setup-status-row,.setup-image-actions,.setup-split-fields{gap:8px;display:grid}.setup-file-actions,.setup-status-row,.setup-image-actions,.setup-split-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-draft-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.setup-draft-actions .control-button,.setup-file-actions .control-button,.setup-image-actions .control-button,.setup-save-button,.setup-start-button{width:100%;min-height:38px;font-weight:800}.setup-file-button{position:relative}.setup-file-button input{display:none}.setup-file-button.primary-outline{color:var(--accent);background:#f8fbff;border-color:#8eb0ff}.setup-save-status{min-height:48px}.setup-inline-error{margin:0}.setup-field{gap:6px;min-width:0;display:grid}.setup-field>span{color:var(--muted);font-size:11px;font-weight:850}.setup-field input,.setup-field select,.setup-field textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);background:var(--panel-muted);border-radius:6px;outline:none;padding:0 10px;font-size:12px;font-weight:750}.setup-field input,.setup-field select{height:36px}.setup-field textarea{resize:vertical;min-height:76px;padding:9px 10px;line-height:1.45}.setup-field input:focus,.setup-field select:focus,.setup-field textarea:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.setup-image-intake{align-self:start;min-height:0}.setup-image-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.setup-image-card{border:1px solid var(--line);background:#fbfdff;border-radius:7px;gap:13px;min-width:0;padding:12px;display:grid}.setup-image-card.is-captured{background:#f8fbff;border-color:#bdd7ff}.setup-image-head{justify-content:space-between;align-items:start;gap:10px;min-width:0;display:flex}.setup-image-head div{min-width:0}.setup-image-head span,.setup-image-head strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.setup-image-head span{color:var(--muted);font-size:12px;font-weight:800}.setup-image-head strong{color:var(--text);margin-top:3px;font-size:13px}.status-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 9px;font-size:10px;font-weight:900;display:inline-flex}.status-pill.is-complete{color:#15803d;background:#dcfce7}.status-pill.is-warning{color:#a16207;background:#fef3c7}.setup-card-preview{border:1px solid var(--line);background:linear-gradient(#94a3b814 1px, transparent 1px), linear-gradient(90deg, #94a3b814 1px, transparent 1px), var(--panel);background-size:28px 28px;border-radius:7px;place-items:center;width:100%;min-height:338px;padding:18px;display:grid}.setup-card-preview img{object-fit:contain;border-radius:9px;max-width:100%;max-height:300px;display:block;box-shadow:0 18px 34px #0f172a38}.setup-card-preview span{aspect-ratio:63/88;color:#f8fafc;border:8px solid #111827;border-radius:12px;place-items:center;width:190px;font-size:18px;font-weight:900;display:grid;box-shadow:0 18px 34px #0f172a33}.setup-card-preview.is-front span{background:radial-gradient(circle at 52% 38%,#ffffffd6 0 10%,#0000 11%),radial-gradient(circle at 42% 46%,#2dd4bf7a,#0000 25%),linear-gradient(135deg,#152033,#7c5f93 54%,#172033)}.setup-card-preview.is-back span{background:radial-gradient(circle,#0000 0 25%,#d6a33a 26% 28%,#0000 29%),repeating-radial-gradient(circle,#c78f2d 0 2px,#0000 2px 22px),radial-gradient(circle,#0f172a 0 42%,#060914 100%)}.setup-image-checks,.setup-checklist{gap:8px;display:grid}.setup-image-checks span{color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:750;display:flex}.setup-image-checks span:before{content:"";border:1px solid var(--line-strong);background:var(--panel);border-radius:50%;width:13px;height:13px;display:block}.setup-image-checks span.is-ready{color:#15803d}.setup-image-checks span.is-ready:before{background:radial-gradient(circle,#16a34a 0 32%,#0000 34%),#dcfce7;border-color:#86efac}.setup-check-row{border-bottom:1px solid var(--line);color:#9a3412;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:36px;display:grid}.setup-check-row:last-child{border-bottom:0}.setup-check-row.is-ready{color:#15803d}.setup-check-row span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;overflow:hidden}.setup-check-row strong{text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:11px;font-weight:900;overflow:hidden}.setup-start-button{min-height:44px}.main-workspace{flex-direction:column;gap:10px;min-width:0;min-height:0;padding:14px;display:flex;overflow:auto}.inspector-section,.canvas-panel,.microscope-drawer,.surface-photo-panel,.report-workspace,.report-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 1px #11182708}.inspector-section{margin-bottom:14px;padding:12px}.section-heading,.drawer-header,.report-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}h1,h2,p{margin:0}h1{font-size:24px;line-height:1.1}h2{font-size:13px;line-height:1.2}.side-toggle{border:1px solid var(--line);background:var(--panel);border-radius:6px;display:inline-flex;overflow:hidden}.utility-upload-button input,.file-action-button input{display:none}.mini-card{color:#f8fafc;border:1px solid #2c3440;border-radius:6px;place-items:center;width:36px;height:50px;font-size:11px;font-weight:800;display:grid;overflow:hidden}.mini-card img{object-fit:cover;width:100%;height:100%}.mini-card-front{background:radial-gradient(circle at 50% 30%,#ffffff6b,#0000 21%),linear-gradient(140deg,#182235,#6d5d92 44%,#101827)}.mini-card-back{background:repeating-radial-gradient(circle,#d4a23a 0 2px,#0000 2px 16px),radial-gradient(circle,#0d1425 0 28%,#151f34 29% 100%)}.inline-error{color:#b91c1c;font-size:11px;line-height:1.35}.canvas-panel{flex:1 0 auto;min-height:540px;padding:12px}.surface-toolbar{align-items:center;gap:8px;min-height:42px;margin-bottom:10px;display:flex}.measurement-control-panel{gap:10px;margin-top:10px;display:grid}.measurement-summary-grid{grid-template-columns:repeat(5,minmax(118px,1fr));gap:8px;display:grid}.measurement-control-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.34fr);align-items:start;gap:10px;display:grid}.measurement-section{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;min-width:0;padding:10px}.measurement-section-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.measurement-section-heading h2{font-size:12px}.measurement-section-heading span{color:var(--muted);font-size:11px;font-weight:800}.guide-direction-grid{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;display:grid}.guide-direction-group{border:1px solid var(--line);background:var(--panel);border-radius:6px;gap:7px;padding:8px;display:grid}.guide-direction-title{border-bottom:1px solid var(--line);align-items:center;gap:7px;padding-bottom:6px;display:flex}.guide-direction-title span{width:22px;height:22px;color:var(--accent);background:var(--accent-soft);border:1px solid #b9cffd;border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid}.guide-direction-title strong{font-size:12px}.guide-value-field,.calibration-grid label{gap:4px;display:grid}.guide-value-field>span,.calibration-grid label>span{color:var(--muted);justify-content:space-between;align-items:center;gap:6px;font-size:11px;display:flex}.guide-value-field>span small{color:var(--accent);font-size:10px;font-weight:800}.unit-input{position:relative}.unit-input input{border:1px solid var(--line);width:100%;height:32px;color:var(--text);background:var(--panel);border-radius:6px;padding:0 46px 0 7px;font-size:12px;font-weight:700}.unit-input em{color:var(--muted);pointer-events:none;font-size:10px;font-style:normal;font-weight:800;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.guide-value-field .unit-input input{padding-right:24px}.calibration-panel{grid-column:2}.calibration-grid{gap:8px;display:grid}.field-chip{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:2px;min-width:0;padding:7px 10px;display:grid}.field-chip span,.surface-toolbar label span,.capture-toolbar label span{color:var(--muted);font-size:11px}.field-chip strong{font-size:13px}.measurement-capture-summary{gap:9px;display:grid}.measurement-capture-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.measurement-capture-card{border:1px solid var(--line);background:var(--panel);border-radius:7px;align-content:start;gap:9px;min-width:0;padding:10px;display:grid}.measurement-capture-card.has-capture{background:#f8fbff;border-color:#bfdbfe}.measurement-capture-card-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.measurement-capture-card-head div{gap:2px;min-width:0;display:grid}.measurement-capture-card-head span,.measurement-capture-meta span{color:var(--muted);font-size:10px;font-weight:900}.measurement-capture-card-head strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.15;overflow:hidden}.measurement-capture-card-head svg{color:var(--accent);flex:none}.measurement-capture-card:not(.has-capture) .measurement-capture-card-head svg{color:var(--muted)}.measurement-capture-preview{border:1px solid var(--line);background:#111827;border-radius:7px;place-items:center;min-width:0;height:340px;display:grid;overflow:hidden}.measurement-capture-preview img{object-fit:contain;width:100%;height:100%;display:block}.measurement-capture-preview.is-empty{color:var(--muted);background-color:#f8fafc;background-image:linear-gradient(#0f172a14 1px,#0000 1px),linear-gradient(90deg,#0f172a14 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.measurement-capture-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.measurement-capture-meta div{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:2px;min-width:0;padding:7px;display:grid}.measurement-capture-meta strong{min-width:0;color:var(--text);overflow-wrap:anywhere;font-size:11px;line-height:1.15}.angle-stepper{border:1px solid var(--line);background:var(--panel);border-radius:6px;grid-template-columns:34px 88px 34px 62px 34px;align-items:center;height:40px;display:grid;overflow:hidden}.angle-stepper button{width:34px;height:100%;color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.angle-stepper input{border:0;border-left:1px solid var(--line);width:88px;height:100%;color:var(--text);background:var(--panel);text-align:center;font-size:12px;font-weight:800}.angle-stepper select{border:0;border-right:1px solid var(--line);width:62px;height:100%;color:var(--text);background:var(--panel);text-align:center;font-size:10px;font-weight:800}.angle-unit{border-inline:1px solid var(--line);height:100%;color:var(--muted);place-items:center;font-size:10px;font-weight:800;display:grid}.background-selector{align-self:stretch;gap:4px;min-width:132px;display:grid}.background-selector>span{color:var(--muted);font-size:11px}.background-selector>div{border:1px solid var(--line);background:var(--panel);border-radius:6px;align-items:center;gap:6px;height:34px;padding:0 8px;display:flex}.background-swatch{border:2px solid #cbd5e1;border-radius:50%;width:22px;height:22px;box-shadow:inset 0 0 0 1px #ffffff80}.background-swatch.is-active{border-color:var(--accent);box-shadow:0 0 0 2px #2563eb2e,inset 0 0 0 1px #ffffff8c}.swatch-black{background:#030712}.swatch-white{background:#fff}.swatch-navy{background:#111827}.swatch-green{background:#052e16}.surface-toolbar label,.surface-marker-tools,.capture-toolbar label{gap:4px;display:grid}.surface-marker-tools>span,.surface-marker-opacity>span{color:var(--muted);font-size:11px}.surface-marker-swatches{border:1px solid var(--line);background:var(--panel);border-radius:6px;align-items:center;gap:5px;min-height:34px;padding:0 7px;display:flex}.surface-marker-swatch{background:var(--surface-marker-color);border:2px solid #cbd5e1;border-radius:50%;width:22px;height:22px;box-shadow:inset 0 0 0 1px #ffffff80}.surface-marker-swatch.is-active{border-color:var(--accent);box-shadow:0 0 0 2px #2563eb33,inset 0 0 0 1px #ffffff8c}.surface-marker-opacity{grid-template-columns:minmax(96px,160px) 38px;align-items:center;gap:4px 8px;display:grid}.surface-marker-opacity span{grid-column:1/-1}.surface-marker-opacity input{width:100%;accent-color:var(--surface-marker-color)}.surface-marker-opacity strong{color:var(--text);text-align:right;font-size:11px}.surface-toolbar select,.capture-toolbar input,.grade-row select{border:1px solid var(--line);min-width:92px;height:34px;color:var(--text);background:var(--panel);border-radius:6px;padding:0 9px;font-size:12px}.switch-row{grid-auto-flow:column;align-items:center;gap:8px;display:flex!important}.switch-row input{width:34px;height:18px;accent-color:var(--accent)}.measure-stage,.surface-stage{border:1px solid var(--line);border-radius:var(--radius);background:#111827;place-items:center;min-height:465px;display:grid;position:relative;overflow:hidden}.measure-stage:before,.surface-stage:before{content:"";background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0}.stage-bg-black{background:#030712}.measure-stage{min-height:540px}.measure-stage:fullscreen{border:0;border-radius:0;width:100vw;height:100vh;min-height:100vh}.stage-bg-white{background:#fff}.stage-bg-navy{background:linear-gradient(#1d242f,#111827),radial-gradient(circle at 35% 20%,#ffffff1f,#0000 30%)}.stage-bg-green{background:#052e16}.stage-bg-white:before{background-image:linear-gradient(#0f172a14 1px,#0000 1px),linear-gradient(90deg,#0f172a14 1px,#0000 1px)}.stage-bg-black:before,.stage-bg-green:before,.stage-bg-navy:before{background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px)}.ruler{opacity:.55;background:repeating-linear-gradient(90deg,#ffffff47 0 1px,#0000 1px 24px);position:absolute}.ruler-top{height:22px;top:0;left:54px;right:0}.ruler-left{transform-origin:50%;width:22px;top:0;bottom:0;left:0;transform:rotate(90deg)}.stage-side-toggle{z-index:8;position:absolute;top:14px;left:14px;box-shadow:0 8px 22px #0f172a1f}.stage-side-toggle button{min-width:72px;height:34px;padding:0 14px;font-size:12px;font-weight:800}.card-measure,.surface-card-frame{transform-origin:50%;touch-action:none;width:330px;height:462px;position:relative}.card-measure{z-index:4;cursor:grab}.card-measure.is-quarter-turned-image .card-visual-layer{inset:66px -66px}.card-measure.is-panning,.card-measure.is-panning .card-visual-layer,.card-measure.is-panning .generic-card{cursor:grabbing}.card-visual-layer{z-index:1;transform-origin:50%;position:absolute;inset:0}.generic-card{border:8px solid #171b22;border-radius:8px;position:absolute;inset:0;overflow:hidden;box-shadow:0 20px 50px #00000059}.generic-card-front{background:linear-gradient(145deg,#1e293b,#7c5f93 42%,#152033)}.empty-card-placeholder{color:#475569;text-align:center;background-color:#f8fafc;background-image:linear-gradient(90deg,#94a3b82e 1px,#0000 1px),linear-gradient(#94a3b82e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-style:dashed;border-color:#94a3b8;align-content:center;place-items:center;gap:10px;display:grid;box-shadow:0 18px 42px #0f172a29}.empty-card-placeholder strong{color:#111827;font-size:24px;font-weight:900}.empty-card-placeholder span{color:#64748b;font-size:15px;font-weight:800}.uploaded-card-shell{background:#0f172a}.uploaded-card-image{object-fit:contain;background:#0f172a;width:100%;height:100%;display:block}.generic-card-back{background:radial-gradient(circle,#0000 0 26%,#d6a33a 27% 29%,#0000 30%),repeating-radial-gradient(circle,#c78f2d 0 2px,#0000 2px 21px),radial-gradient(circle,#0f172a 0 40%,#060914 100%);place-items:center;display:grid}.card-back-mark{color:#f8fafc;border:2px solid #eab308;border-radius:50%;place-items:center;width:96px;height:96px;font-size:28px;font-weight:900;display:grid}.card-title,.card-text,.card-stats{color:#1f2937;background:#ffffffbd;border:1px solid #f59e0bcc;position:absolute;left:24px;right:24px}.card-title{color:#fef3c7;text-transform:uppercase;background:#1e293bd6;padding:7px 10px;font-size:20px;font-weight:800;top:20px}.card-art{background:radial-gradient(circle at 48% 34%,#ffffffe6 0 16%,#0000 17%),radial-gradient(circle at 45% 48%,#2dd4bf73,#0000 34%),linear-gradient(135deg,#111827,#5b4f83);border:3px solid #d6a33a;height:190px;position:absolute;top:84px;left:36px;right:36px;overflow:hidden}.moon{opacity:.92;background:#f8fafc;border-radius:50%;width:72px;height:72px;position:absolute;top:26px;left:86px}.mage{clip-path:polygon(48% 0,62% 25%,90% 48%,66% 54%,88% 100%,12% 100%,32% 54%,4% 48%,36% 25%);background:linear-gradient(#e2e8f0,#1e293b);width:60px;height:130px;position:absolute;bottom:0;left:110px}.card-text{min-height:92px;padding:10px;font-size:12px;line-height:1.35;top:292px}.card-stats{text-align:center;padding:4px 8px;font-weight:800;bottom:18px;left:84px;right:84px}.outer-guide,.inner-guide,.measure-label{pointer-events:none;position:absolute}.outer-guide,.inner-guide{z-index:2}.outer-guide{color:var(--guide-outer)}.inner-guide{color:var(--guide-inner)}.guide-box-line{opacity:.85;background:currentColor;display:block;position:absolute}.guide-box-top,.guide-box-bottom{height:1px;transform:scaleY(var(--guide-label-scale,1));left:0;right:0}.guide-box-top{transform-origin:top;top:0}.guide-box-bottom{transform-origin:bottom;bottom:0}.guide-box-left,.guide-box-right{width:1px;transform:scaleX(var(--guide-label-scale,1));top:0;bottom:0}.guide-box-left{transform-origin:0;left:0}.guide-box-right{transform-origin:100%;right:0}.guide-line{z-index:4;color:var(--guide-outer);opacity:.9;background:0 0;border:0;border-radius:0;padding:0;position:absolute}.guide-line.is-selected{z-index:6}.guide-line.vertical{top:var(--guide-vertical-extension-offset,-34px);bottom:var(--guide-vertical-extension-offset,-34px);width:var(--guide-hit-size,14px);margin-left:var(--guide-hit-offset,-7px);cursor:ew-resize}.guide-line.horizontal{left:var(--guide-horizontal-extension-offset,-42px);right:var(--guide-horizontal-extension-offset,-42px);height:var(--guide-hit-size,14px);margin-top:var(--guide-hit-offset,-7px);cursor:ns-resize}.guide-line:before{content:"";pointer-events:none;display:block;position:absolute}.guide-line.vertical:before{width:1px;transform:translateX(-50%) scaleX(var(--guide-label-scale,1));transform-origin:50%;background:currentColor;top:0;bottom:0;left:50%}.guide-line.horizontal:before{height:1px;transform:translateY(-50%) scaleY(var(--guide-label-scale,1));transform-origin:50%;background:currentColor;top:50%;left:0;right:0}.guide-line.inner-line{color:var(--guide-inner)}.guide-line:hover,.guide-line:focus-visible,.guide-line:hover:before,.guide-line:focus-visible:before,.guide-line.is-selected:before{opacity:1}.guide-line.is-selected:before{box-shadow:none}.measure-label{z-index:5;color:#e0faff;min-width:90px;transform:scale(var(--guide-label-scale,1));background:#082f49b8;border:1px solid #06b6d4b8;grid-template-columns:auto 1fr;gap:1px 5px;padding:4px 7px;font-size:10px;font-weight:800;line-height:1.15;display:grid}.measure-label b{color:#cffafe;grid-row:span 2;font-size:11px}.measure-label strong,.measure-label small{white-space:nowrap;display:block}.measure-label strong{color:#f8fafc;font-size:10px}.measure-label small{color:#bae6fd;font-size:9px}.label-left{transform-origin:100%;top:242px}.label-right{transform-origin:0;top:242px}.label-top{transform-origin:bottom;left:116px}.label-bottom{transform-origin:top;left:112px}.canvas-controls,.floating-controls{z-index:12;align-items:center;gap:6px;display:flex;position:absolute}.canvas-controls{bottom:16px;left:18px}.canvas-controls .angle-stepper{grid-template-columns:34px 78px 30px 58px 34px;height:34px}.canvas-controls .angle-stepper input{width:78px}.canvas-controls .angle-stepper select{width:58px}.canvas-controls .background-selector{align-self:center;align-items:center;min-width:auto;display:flex}.canvas-controls .background-selector>span{display:none}.canvas-controls .background-selector>div{height:34px;padding:0 7px}.canvas-controls .background-swatch{width:21px;height:21px}.measure-capture-button{white-space:nowrap;min-width:98px}.guide-fine-toolbar{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;align-items:center;gap:6px;min-width:0;margin-top:10px;padding:8px;display:flex;position:relative;overflow-x:auto}.guide-fine-label{height:34px;color:var(--muted);white-space:nowrap;background:#ffffffeb;border:1px solid #b8c5d6d9;border-radius:6px;flex:none;align-items:center;padding:0 9px;font-size:11px;font-weight:800;display:inline-flex;box-shadow:0 8px 22px #0f172a1f}.guide-fine-toolbar select{border:1px solid var(--line);height:34px;color:var(--text);background:var(--panel);border-radius:6px;flex:0 0 116px;padding:0 8px;font-size:12px;font-weight:800;box-shadow:0 8px 22px #0f172a1f}.guide-fine-readout{color:#dff8ff;background:#082f49c7;border:1px solid #06b6d4b3;border-radius:6px;flex:none;grid-template-columns:auto auto auto;align-items:center;gap:5px;min-width:156px;height:34px;padding:0 9px;display:grid;box-shadow:0 8px 22px #0f172a2e}.guide-fine-readout span,.guide-fine-readout small{color:#bae6fd;white-space:nowrap;font-size:10px;font-weight:800}.guide-fine-readout strong{color:#fff;white-space:nowrap;font-size:12px;line-height:1}.guide-fine-nudges{flex:none;align-items:center;gap:5px;display:flex}.guide-fine-nudges button{border:1px solid var(--line);min-width:58px;height:34px;color:var(--text);white-space:nowrap;background:#fffffff0;border-radius:6px;font-size:11px;font-weight:800;box-shadow:0 8px 22px #0f172a1f}.guide-fine-nudges button:hover,.guide-fine-toolbar select:hover{border-color:#a9c2ff}.zoom-input{border:1px solid var(--line);background:var(--panel);border-radius:6px;align-items:center;width:68px;height:34px;display:inline-flex;position:relative}.zoom-input input{width:100%;height:100%;color:var(--text);text-align:right;background:0 0;border:0;padding:0 21px 0 8px;font-size:12px;font-weight:800}.zoom-input span{color:var(--muted);pointer-events:none;font-size:11px;font-weight:800;position:absolute;right:8px}.floating-controls{bottom:16px;right:18px}.detection-status{z-index:3;color:#e0faff;background:#082f49d1;border:1px solid #0ea5e96b;border-radius:6px;max-width:280px;padding:7px 10px;font-size:11px;font-weight:800;position:absolute;top:14px;right:14px}.surface-stage{min-height:540px}.surface-board{z-index:1;grid-template-rows:24px 604px;grid-template-columns:34px 432px;align-items:stretch;display:grid;position:relative}.column-labels{color:#334155;text-align:center;grid-column:2;grid-template-columns:repeat(12,1fr);align-items:center;font-size:10px;font-weight:700;display:grid}.row-labels{color:#334155;text-align:right;grid-row:2;grid-template-rows:repeat(24,1fr);align-items:center;padding-right:6px;font-size:10px;font-weight:700;display:grid}.surface-card-frame{grid-area:2/2;width:432px;height:604px}.surface-grid{--surface-grid-opacity:.6;--surface-marker-color:var(--danger);--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff;--surface-marker-opacity:.7;border:1px solid rgb(6 182 212/var(--surface-grid-opacity));background-image:linear-gradient(rgb(6 182 212/var(--surface-grid-opacity)) 1px, transparent 1px), linear-gradient(90deg, rgb(6 182 212/var(--surface-grid-opacity)) 1px, transparent 1px);background-size:8.33333% 4.16667%;grid-template-rows:repeat(24,1fr);grid-template-columns:repeat(12,1fr);display:grid;position:absolute;inset:0}.marker-red{--surface-marker-color:#ef4444;--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff}.marker-amber{--surface-marker-color:#f59e0b;--surface-marker-rgb:245, 158, 11;--surface-marker-contrast:#111827}.marker-cyan{--surface-marker-color:#06b6d4;--surface-marker-rgb:6, 182, 212;--surface-marker-contrast:#06202a}.marker-lime{--surface-marker-color:#84cc16;--surface-marker-rgb:132, 204, 22;--surface-marker-contrast:#102008}.marker-white{--surface-marker-color:#fff;--surface-marker-rgb:255, 255, 255;--surface-marker-contrast:#111827}.marker-black{--surface-marker-color:#111827;--surface-marker-rgb:17, 24, 39;--surface-marker-contrast:#fff}.surface-cell{background:0 0;border:0;min-width:0;min-height:0;padding:0;position:relative}.surface-cell:hover{outline-offset:-2px;outline:2px solid #2563ebbf}.surface-cell.is-selected{background:rgba(var(--surface-marker-rgb), calc(var(--surface-marker-opacity) * .34));outline:2px solid rgba(var(--surface-marker-rgb), var(--surface-marker-opacity));outline-offset:-2px}.surface-cell.is-selected span{width:20px;height:20px;color:var(--surface-marker-contrast);background:rgba(var(--surface-marker-rgb), var(--surface-marker-opacity));border:1px solid #ffffffc2;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid;position:absolute;top:-8px;right:-8px;box-shadow:0 1px 5px #0f172a3d}.grid-footnote{color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex;position:absolute;bottom:9px;left:16px;right:16px}.inspector-section h2,.report-card h2{font-size:14px}.grade-summary{border:1px solid var(--line);background:linear-gradient(135deg,#fff,#f6f9ff);border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:10px;padding:10px 12px;display:flex}.grade-summary span,.grade-summary small{color:var(--muted);font-size:12px;display:block}.grade-summary strong{color:var(--text);font-size:34px;line-height:1;display:block}.grade-summary small{color:var(--success);font-weight:800}.grade-summary svg{color:var(--accent)}.category-grade-summary{align-items:stretch;gap:10px}.category-grade-control{min-width:98px;color:var(--accent);grid-template-columns:auto minmax(72px,1fr);align-items:center;gap:7px;display:grid}.category-grade-control select{width:100%;min-width:0}.single-grade-comment{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:7px;padding:10px;display:grid}.single-grade-comment span{color:var(--text);align-items:center;gap:7px;font-size:12px;font-weight:900;display:inline-flex}.single-grade-comment textarea{resize:none;border:1px solid var(--line);width:100%;min-height:136px;color:var(--text);background:var(--panel);border-radius:6px;outline:none;padding:9px;font-size:12px;line-height:1.4}.single-grade-comment textarea:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.single-grade-comment small{color:var(--muted);font-size:10px;font-weight:800}.single-grade-comment small.is-ready{color:var(--success)}.comment-suggestion-panel{border-top:1px solid var(--line);gap:6px;padding-top:8px;display:grid}.comment-suggestion-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.comment-suggestion-head span{color:var(--accent);align-items:center;gap:6px;font-size:10px;font-weight:900;display:inline-flex}.comment-suggestion-head svg{color:var(--accent)}.comment-suggestion-panel p{color:var(--muted);margin:0;font-size:11px;font-weight:700;line-height:1.45}.mini-apply-button{min-height:26px;color:var(--accent);background:var(--accent-soft);border:1px solid #b9cffd;border-radius:6px;padding:0 10px;font-size:10px;font-weight:900}.mini-apply-button:disabled{cursor:default;border-color:var(--line);color:var(--success);background:#ecfdf3}.grade-list{gap:6px;margin-bottom:0;display:grid}.grade-row{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;grid-template-columns:minmax(0,1fr) 76px 38px;align-items:center;gap:8px;min-height:48px;padding:7px 8px;font-size:13px;display:grid}.grade-row.has-comment{background:#fbfdff;border-color:#b9cffd}.grade-row-label{gap:2px;min-width:0;display:grid}.grade-row-label label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:800;line-height:1.1;overflow:hidden}.grade-row-label small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.25;overflow:hidden}.grade-row.has-comment .grade-row-label small{color:#1d4ed8}.grade-row select{width:100%;min-width:0}.comment-toggle{border:1px solid var(--line);width:38px;height:34px;color:var(--text);background:var(--panel);border-radius:6px;place-items:center;display:grid;position:relative}.comment-toggle:hover{color:var(--accent);background:var(--accent-soft);border-color:#b9cffd}.comment-toggle.is-commented{color:#1d4ed8;background:#eff6ff;border-color:#a9c2ff}.comment-check{color:#fff;background:var(--success);border-radius:50%;width:14px;height:14px;padding:2px;position:absolute;bottom:5px;right:5px}.comment-dialog-backdrop{z-index:50;background:#0f172a61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.comment-dialog{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(520px,100vw - 32px);padding:14px;box-shadow:0 24px 70px #0f172a33}.new-file-dialog{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(440px,100vw - 32px);padding:14px;box-shadow:0 24px 70px #0f172a33}.settings-dialog{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(760px,100vw - 32px);max-height:min(760px,100vh - 32px);padding:14px;overflow:auto;box-shadow:0 24px 70px #0f172a33}.comment-dialog-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.comment-dialog-header span{color:var(--muted);font-size:11px;font-weight:700;display:block}.comment-dialog-header h2{color:var(--text);margin-top:2px;font-size:18px}.comment-dialog textarea{resize:none;border:1px solid var(--line);width:100%;min-height:170px;color:var(--text);background:#fbfdff;border-radius:6px;outline:none;padding:12px;font-size:13px;line-height:1.45}.comment-dialog textarea:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.new-file-field{gap:6px;display:grid}.new-file-field span{color:var(--muted);font-size:11px;font-weight:800}.new-file-field input{border:1px solid var(--line);width:100%;height:38px;color:var(--text);background:#fbfdff;border-radius:6px;outline:none;padding:0 11px;font-size:13px;font-weight:700}.new-file-field input:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.settings-category-tabs{border:1px solid var(--line);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px;display:grid;overflow:hidden}.settings-category-tabs button{border:0;border-right:1px solid var(--line);min-height:36px;color:var(--muted);background:var(--panel);font-size:12px;font-weight:900}.settings-category-tabs button:last-child{border-right:0}.settings-category-tabs button.is-active{color:var(--accent);background:var(--accent-soft)}.suggestion-settings-list{gap:8px;display:grid}.suggestion-settings-row{grid-template-columns:58px minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.suggestion-settings-row span{border:1px solid var(--line);color:var(--text);background:var(--panel-muted);border-radius:6px;place-items:center;font-size:12px;font-weight:900;display:grid}.suggestion-settings-row textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:58px;color:var(--text);background:#fbfdff;border-radius:6px;outline:none;padding:9px;font-size:12px;line-height:1.45}.suggestion-settings-row textarea:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.comment-dialog-meta,.comment-dialog-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.comment-dialog-meta{color:var(--muted);margin-top:8px;font-size:11px}.comment-dialog-meta strong{color:var(--success)}.comment-dialog-actions{justify-content:flex-end;margin-top:14px}.settings-center-backdrop{z-index:60;background:#0f172a6b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.settings-center{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-rows:64px minmax(0,1fr);width:min(1480px,100vw - 36px);height:min(860px,100vh - 36px);display:grid;overflow:hidden;box-shadow:0 28px 80px #0f172a3d}.settings-center-header{border-bottom:1px solid var(--line);background:#fbfdff;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.settings-title-lockup,.settings-header-actions{align-items:center;gap:10px;min-width:0;display:flex}.settings-brand-mark{flex:none;width:36px;height:36px;font-size:13px}.settings-title-lockup div{min-width:0}.settings-title-lockup span:not(.brand-mark){color:var(--muted);font-size:11px;font-weight:800;display:block}.settings-title-lockup h2{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;font-size:18px;overflow:hidden}.settings-center-layout{grid-template-columns:260px minmax(0,1fr);min-height:0;display:grid}.settings-sidebar{border-right:1px solid var(--line);background:var(--panel-muted);align-content:start;gap:6px;min-height:0;padding:12px;display:grid;overflow:auto}.settings-sidebar button{width:100%;min-height:50px;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:8px;display:grid}.settings-sidebar button.is-active{color:var(--accent);background:#fff;border-color:#b9ccff;box-shadow:0 8px 22px #2563eb14}.settings-sidebar span{gap:1px;min-width:0;display:grid}.settings-sidebar strong,.settings-sidebar small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-sidebar strong{color:inherit;font-size:12px;font-weight:900}.settings-sidebar small{color:var(--muted);font-size:10px;font-weight:700}.settings-main{background:#f7f9fd;min-height:0;padding:14px;overflow:auto}.settings-section-header{border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px;display:flex}.settings-section-header span{color:var(--accent);align-items:center;gap:7px;font-size:11px;font-weight:900;display:inline-flex}.settings-section-header h2{color:var(--text);margin:2px 0 0;font-size:16px}.settings-section-header small{color:var(--success);font-size:11px;font-weight:900}.settings-section-grid{gap:12px;display:grid}.settings-section-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;min-width:0;padding:12px;display:grid;box-shadow:0 10px 26px #1f29370a}.settings-card-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.settings-card-heading h3{color:var(--text);align-items:center;gap:7px;margin:0;font-size:15px;display:inline-flex}.settings-card-heading p,.settings-empty-note{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}.settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.settings-logo-uploader{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.settings-logo-preview{border:1px solid var(--line-strong);width:96px;height:96px;color:var(--text);background:#fff;border-radius:8px;place-items:center;font-size:22px;font-weight:900;display:grid;overflow:hidden}.settings-logo-preview img{object-fit:contain;width:100%;height:100%;padding:8px}.settings-logo-uploader strong{color:var(--text);font-size:14px;display:block}.settings-logo-uploader p,.settings-logo-uploader em{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.4;display:block}.settings-logo-uploader em{color:#b91c1c;font-style:normal;font-weight:800}.settings-logo-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.settings-weight-grid,.settings-toggle-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.settings-field{gap:5px;min-width:0;display:grid}.settings-field>span,.settings-tag-editor-head,.settings-toggle{color:var(--muted);font-size:11px;font-weight:900}.settings-field input,.settings-field select,.settings-field textarea,.settings-inline-row input,.settings-inline-row select,.settings-add-row input{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);background:#fbfdff;border-radius:6px;outline:none;font-size:12px;font-weight:750}.settings-field input,.settings-field select,.settings-inline-row input,.settings-inline-row select,.settings-add-row input{height:36px;padding:0 9px}.settings-field textarea{resize:vertical;min-height:64px;padding:9px;line-height:1.45}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus,.settings-inline-row input:focus,.settings-inline-row select:focus,.settings-add-row input:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.settings-number-field{border:1px solid var(--line);background:#fbfdff;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.settings-number-field input{box-shadow:none;border:0}.settings-number-field em{color:var(--muted);padding-right:9px;font-size:11px;font-style:normal;font-weight:900}.settings-toggle,.mini-toggle{border:1px solid var(--line);background:#fbfdff;border-radius:6px;align-items:center;gap:8px;min-height:34px;padding:0 10px;display:inline-flex}.settings-toggle input,.mini-toggle input{accent-color:var(--accent)}.settings-list-table,.settings-customer-grid,.settings-user-grid,.settings-role-grid,.settings-audit-list{gap:8px;display:grid}.settings-inline-row{grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:8px;display:grid}.settings-inline-row.four{grid-template-columns:170px minmax(0,1fr) 100px 90px}.settings-inline-row.five{grid-template-columns:170px minmax(0,1.2fr) 90px 120px 120px}.settings-inline-row.compact-two{grid-template-columns:110px minmax(0,1fr)}.settings-category-tabs.compact-tabs{margin-bottom:0}.settings-tag-editor{gap:9px;display:grid}.settings-tag-editor-head{justify-content:space-between;align-items:center;display:flex}.settings-tag-pills{flex-wrap:wrap;gap:6px;display:flex}.settings-tag-pills button{min-height:28px;color:var(--accent);background:var(--accent-soft);border:1px solid #c9d8ff;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:11px;font-weight:900;display:inline-flex}.settings-add-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.settings-customer-grid,.settings-user-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-customer-card,.settings-user-card{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;gap:8px;min-width:0;padding:10px;display:grid}.settings-sync-status{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;gap:3px;padding:10px;display:grid}.settings-sync-status strong{font-size:12px}.settings-sync-status span{color:#475569;font-size:11px;line-height:1.4}.settings-role-row,.settings-audit-row{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;gap:3px;padding:9px 10px;display:grid}.settings-role-row strong,.settings-audit-row strong{color:var(--text);font-size:12px}.settings-role-row span,.settings-audit-row span,.settings-audit-row p{color:var(--muted);margin:0;font-size:11px;line-height:1.4}.settings-backup-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.attention-pill,.ready-pill{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.attention-pill{color:#9a3412;background:#ffedd5}.ready-pill{color:#166534;background:#dcfce7}.microscope-drawer{flex:none;padding:12px}.drawer-header{margin-bottom:10px}.storage-meter{color:var(--muted);grid-template-columns:auto 140px auto;align-items:center;gap:8px;font-size:11px;display:grid}.storage-meter div{background:#e2e8f0;border-radius:999px;height:7px;overflow:hidden}.storage-meter i{background:var(--accent);width:24%;height:100%;display:block}.microscope-body{grid-template-columns:230px minmax(0,1fr);gap:14px;display:grid}.microscope-camera-drawer .microscope-body{display:block}.camera-panel{z-index:1;align-content:start;gap:8px;min-width:0;display:grid;position:relative}.selected-cell-card{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;gap:4px;padding:9px 10px;display:grid}.selected-cell-card span{color:var(--muted);font-size:11px;font-weight:800}.selected-cell-card strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.1;overflow:hidden}.camera-source-row{grid-template-columns:minmax(0,1fr) 36px;align-items:end;gap:7px;display:grid}.camera-source-row label{gap:4px;min-width:0;display:grid}.camera-source-row span{color:var(--muted);font-size:11px;font-weight:800}.camera-source-row select{border:1px solid var(--line);width:100%;height:34px;color:var(--text);background:var(--panel-muted);border-radius:6px;padding:0 8px;font-size:12px;font-weight:800}.camera-preview{border:1px solid var(--line-strong);background:#111827;border-radius:6px;height:154px;position:relative;overflow:hidden}.camera-filter-live-badge{z-index:2;color:#e0f2fe;letter-spacing:0;background:#082f49c7;border:1px solid #ffffff47;border-radius:5px;padding:3px 6px;font-size:9px;font-style:normal;font-weight:900;position:absolute;top:7px;right:7px}.camera-preview video,.camera-preview img{object-fit:cover;width:100%;height:100%}.synthetic-micrograph,.defect-texture{background:linear-gradient(65deg,#0000 45%,#ffffffb3 47%,#0000 49%),radial-gradient(circle at 68% 24%,#ffffff6b,#0000 9%),radial-gradient(circle at 20% 78%,#fff3,#0000 11%),repeating-linear-gradient(18deg,#1f2937 0 6px,#303843 6px 12px);width:100%;height:100%;display:block}.synthetic-micrograph span,.synthetic-micrograph b{border:1px solid var(--danger);display:block;position:absolute}.synthetic-micrograph span{width:44px;height:44px;top:54px;left:74px}.synthetic-micrograph b{height:80px;top:38px;left:96px}.camera-actions{gap:8px;margin-top:0}.camera-capture-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.camera-capture-controls .control-button{width:100%;min-width:0;padding:0 8px}.camera-filter-panel{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:7px;padding:8px;display:grid}.camera-filter-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.camera-filter-header span{color:var(--text);align-items:center;gap:5px;font-size:11px;font-weight:900;display:inline-flex}.camera-filter-header strong{color:var(--accent);font-size:10px;font-weight:900}.camera-filter-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.camera-filter-presets button{border:1px solid var(--line);min-width:0;min-height:28px;color:var(--muted);background:var(--panel);border-radius:5px;padding:0 5px;font-size:9px;font-weight:900}.camera-filter-presets button.is-active{color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 -2px 0 var(--accent);border-color:#8fb0ff}.camera-filter-sliders{gap:6px;display:grid}.camera-filter-sliders label{grid-template-columns:48px minmax(0,1fr) 40px;align-items:center;gap:6px;display:grid}.camera-filter-sliders span,.camera-filter-sliders strong{color:var(--muted);font-size:9px;font-weight:900}.camera-filter-sliders strong{text-align:right}.camera-filter-sliders input{min-width:0;accent-color:var(--accent)}.camera-status{color:var(--success);margin-top:0;font-size:11px;font-weight:800}.camera-status.is-connected{color:var(--accent)}.camera-device-status{color:var(--muted);margin:-4px 0 0;font-size:10px;line-height:1.25}.capture-list{z-index:0;min-width:0;position:relative;overflow:hidden}.capture-toolbar{justify-content:space-between;gap:12px;margin-bottom:10px}.capture-toolbar input{width:160px}.capture-toolbar .control-button{min-height:34px}.file-action-button.compact{width:auto;min-height:34px;padding:0 11px}.photo-strip{grid-template-rows:repeat(2,214px);grid-auto-columns:134px;grid-auto-flow:column;gap:10px;padding-bottom:8px;display:grid;overflow-x:auto}.defect-thumb{align-content:start;gap:5px;min-width:0;display:grid;position:relative}.thumb-image{border:1px solid var(--line);background:#111827;border-radius:6px;height:78px;position:relative;overflow:hidden}.thumb-image img{object-fit:cover;width:100%;height:100%}.thumb-image b{color:#fff;background:var(--danger);border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid;position:absolute;top:5px;left:5px}.thumb-filter-badge{color:#e0f2fe;background:#082f49c7;border:1px solid #ffffff47;border-radius:5px;padding:2px 5px;font-size:8px;font-style:normal;font-weight:900;position:absolute;bottom:5px;right:5px}.defect-thumb strong,.defect-thumb p{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:11px;display:block;overflow:hidden}.defect-thumb p{color:var(--muted)}.defect-meta-row{color:var(--muted);justify-content:space-between;align-items:center;gap:6px;font-size:10px;display:flex}.defect-meta-row select{border:1px solid var(--line);width:58px;height:24px;color:var(--text);background:var(--panel);border-radius:5px;font-size:10px;font-weight:700}.defect-thumb textarea{resize:none;border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:var(--panel);border-radius:5px;padding:5px 6px;font-size:10px;line-height:1.25}.thumb-delete-button{color:#991b1b;background:#ffffffe6;border:1px solid #0f172a24;border-radius:5px;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:4px;right:4px}.drawer-footer{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.surface-photo-panel{gap:12px;padding:12px;display:grid}.surface-photo-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.surface-photo-panel-header h2{font-size:18px;line-height:1.1}.surface-photo-panel-header p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.35}.surface-photo-panel-header>span{color:var(--accent);background:var(--accent-soft);border-radius:999px;flex:none;padding:5px 9px;font-size:12px;font-weight:900}.surface-photo-grid{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:12px;display:grid}.surface-defect-card{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;grid-template-columns:164px minmax(0,1fr);align-items:stretch;gap:10px;min-width:0;padding:10px 38px 10px 10px;display:grid;position:relative}.surface-defect-card .thumb-image{height:132px}.surface-defect-card-body{align-content:start;gap:8px;min-width:0;display:grid}.surface-defect-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.surface-defect-title-row strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:1.1;overflow:hidden}.surface-defect-card textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:94px;color:var(--text);background:var(--panel);border-radius:6px;padding:8px 9px;font-size:13px;line-height:1.35}.surface-photo-empty{border:1px dashed var(--line-strong);min-height:96px;color:var(--muted);background:var(--panel-muted);border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.surface-right-rail{align-content:start;gap:12px;display:grid}.surface-right-rail .inspector-section{margin-bottom:0}.surface-right-rail .microscope-drawer{padding:10px}.surface-right-rail .drawer-header{align-items:start;gap:8px;display:grid}.surface-right-rail .drawer-header p{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.3}.surface-right-rail .storage-meter{grid-template-columns:auto minmax(80px,1fr) auto}.surface-right-rail .microscope-body{grid-template-columns:1fr;gap:12px}.surface-right-rail .camera-preview{height:184px}.surface-right-rail .camera-actions{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:7px;display:grid}.surface-right-rail .camera-actions .control-button,.surface-right-rail .camera-actions .primary-button{width:100%;min-width:0;padding:0 8px}.surface-right-rail .capture-list{overflow:visible}.surface-right-rail .capture-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.surface-right-rail .capture-toolbar label:first-child{grid-column:1/-1}.surface-right-rail .capture-toolbar input{width:100%;min-width:0}.surface-right-rail .capture-toolbar .control-button{width:100%;min-width:0;padding:0 9px}.surface-right-rail .photo-strip{grid-template-rows:none;grid-template-columns:1fr;grid-auto-columns:auto;grid-auto-flow:row;max-height:560px;padding:0 4px 4px 0;overflow:hidden auto}.surface-right-rail .defect-thumb{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;grid-template-columns:92px minmax(0,1fr);align-items:start;gap:5px 8px;min-height:112px;padding:7px 32px 7px 7px}.surface-right-rail .thumb-image{grid-row:1/4;height:96px}.surface-right-rail .defect-thumb strong,.surface-right-rail .defect-thumb p{margin-top:0}.surface-right-rail .defect-meta-row{min-width:0}.surface-right-rail .defect-thumb textarea{background:var(--panel);grid-column:2;min-height:48px}.surface-right-rail .drawer-footer{flex-wrap:wrap;gap:6px;margin-top:8px}.report-workspace{align-content:start;gap:14px;min-height:760px;padding:18px;display:grid}.report-header{align-items:flex-start;margin-bottom:0}.report-header p{color:var(--muted);margin-top:5px;font-size:13px}.report-actions{flex-wrap:wrap;justify-content:flex-end}.primary-button:disabled,.control-button:disabled{cursor:not-allowed;opacity:.52}.report-grid{grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);align-items:start;gap:12px;display:grid}.report-card{min-width:0;padding:14px}.report-card h2{align-items:center;gap:8px;margin-bottom:12px;display:flex}.report-card.certificate{color:#fff;background:linear-gradient(135deg,#0f172a,#25304a);grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:start;gap:18px;display:grid}.certificate-main>span,.certificate-main>small,.certificate-main>em,.certificate-brand-lockup span,.certificate-meta span,.certificate-qr span{color:#b7c3d7;display:block}.certificate-brand-lockup{align-items:center;gap:8px;min-width:0;margin-bottom:4px;display:flex}.certificate-logo-mark{color:#111827;background:#fff;border:1px solid #ffffff47;border-radius:7px;flex:none;place-items:center;width:38px;height:38px;font-size:11px;font-weight:900;display:grid;overflow:hidden}.certificate-logo-mark img{object-fit:contain;width:100%;height:100%;padding:3px}.certificate strong{font-size:54px;line-height:1;display:block}.certificate-main>em{text-transform:uppercase;margin-top:6px;font-size:11px;font-style:normal;font-weight:800}.certificate-meta{gap:7px;margin-top:14px;display:grid}.certificate-meta div{border-top:1px solid #ffffff24;gap:2px;padding-top:7px;display:grid}.certificate-meta b{color:#fff;overflow-wrap:anywhere;font-size:12px;line-height:1.25}.certificate-qr{color:#111827;background:#fff;border-radius:6px;justify-items:center;gap:7px;padding:9px;display:grid}.certificate-qr svg{display:block}.certificate-qr span{color:var(--muted);font-size:10px;font-weight:800}.final-review-card{background:#fffaf3;border-color:#fed7aa;align-content:start;gap:12px;min-width:0;display:grid}.final-review-card.ready{background:#f0fdf4;border-color:#bbf7d0}.final-review-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.final-review-heading p{color:var(--muted);margin-top:3px;font-size:12px}.final-review-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.report-checklist{border:1px solid var(--line);background:var(--panel);border-radius:8px;display:grid;overflow:hidden}.review-check-row{border:0;border-bottom:1px solid var(--line);width:100%;min-height:42px;color:var(--muted);background:var(--panel);text-align:left;grid-template-columns:22px 1fr auto 18px;align-items:center;gap:9px;padding:0 10px;font-size:12px;display:grid}.review-check-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.review-check-row:last-child{border-bottom:0}.review-check-row:disabled{cursor:default;opacity:1}.review-check-row strong{color:var(--success);font-size:11px}.review-check-row.needs-attention{color:#9a3412;background:#fff7ed}.review-check-row.needs-attention:not(:disabled):hover{background:#ffedd5}.review-check-row.needs-attention strong{color:var(--danger)}.required-fixes{gap:8px;min-width:0;display:grid}.required-fixes h3{color:var(--text);margin:0;font-size:12px}.issue-list{gap:7px;max-height:312px;display:grid;overflow:auto}.issue-row{color:#9a3412;text-align:left;background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;grid-template-columns:20px 1fr;align-items:start;gap:8px;padding:8px;display:grid}.issue-row span{min-width:0}.issue-row:hover{background:#ffedd5}.issue-row strong,.issue-row small{display:block}.issue-row strong{font-size:12px}.issue-row small{color:#9a3412;overflow-wrap:anywhere;margin-top:2px;font-size:11px;line-height:1.25}.ready-review-message{color:var(--success);background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;align-items:center;gap:8px;padding:10px;font-size:12px;font-weight:700;display:flex}.metric-list,.metric-list div{gap:8px;display:grid}.metric-list{margin:0}.metric-list div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;padding:8px 0}.metric-list dt{color:var(--muted);font-size:12px}.metric-list dd{margin:0;font-size:12px;font-weight:800}.report-images-card,.setup-summary-card,.category-report-card,.score-breakdown,.measurements-report,.corners-edges-report,.surface-report,.evidence-report{grid-column:span 2}.report-image-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.report-image-tile{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;grid-template-columns:108px minmax(0,1fr);align-items:center;gap:10px;padding:8px;display:grid}.report-image-preview,.report-image-placeholder{border:1px solid var(--line);background:#eef2f7;border-radius:6px;place-items:center;height:130px;display:grid;overflow:hidden}.report-image-preview img{object-fit:contain;background:#111827;width:100%;height:100%}.report-image-placeholder.is-back{color:#f8fafc;background:radial-gradient(circle,#0000 0 22%,#d89b18 23% 24%,#0000 25% 36%,#d89b18 37% 38%,#0000 39%),#0f172a}.report-image-tile strong,.report-image-tile span,.report-image-tile small{text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.report-image-tile strong{font-size:16px}.report-image-tile span{color:var(--success);margin-top:4px;font-size:12px;font-weight:800}.report-image-tile small{color:var(--muted);white-space:nowrap;margin-top:6px;font-size:11px}.setup-summary-card{align-content:start;gap:10px;display:grid}.setup-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.setup-summary-grid div{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:4px;min-width:0;padding:9px;display:grid}.setup-summary-grid .wide{grid-column:span 2}.setup-summary-grid span{color:var(--muted);font-size:11px;font-weight:800}.setup-summary-grid strong{min-width:0;color:var(--text);overflow-wrap:anywhere;font-size:13px;line-height:1.3}.category-report-card{align-content:start;gap:12px;display:grid}.category-report-heading{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 124px;align-items:start;gap:14px;padding-bottom:12px;display:grid}.category-report-heading h2{margin-bottom:4px}.category-report-heading>div:first-child>span{color:var(--muted);font-size:12px;line-height:1.35;display:block}.category-report-score{border:1px solid var(--line);background:linear-gradient(135deg,#fff,#f6f9ff);border-radius:7px;justify-items:end;gap:2px;padding:9px 10px;display:grid}.category-report-score span{color:var(--muted);font-size:10px;font-weight:800}.category-report-score strong{color:var(--text);font-size:32px;line-height:1}.category-report-score small{color:var(--success);font-size:11px;font-weight:900}.category-comment-box{background:#f8fbff;border:1px solid #bfdbfe;border-radius:7px;gap:7px;padding:10px;display:grid}.category-comment-box.missing{background:#fff7ed;border-color:#fed7aa}.category-comment-box strong{color:var(--text);align-items:center;gap:7px;font-size:12px;display:flex}.category-comment-box p,.surface-report-summary{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.4}.category-comment-box.missing p{color:#b91c1c;font-weight:800}.category-report-body{gap:12px;display:grid}.report-stat-grid.category-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:0}.category-detail-block{gap:8px;min-width:0;padding-top:2px;display:grid}.category-detail-block h3{color:var(--text);align-items:center;gap:7px;margin:0;font-size:12px;display:flex}.score-breakdown-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.score-report-row{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;align-content:start;gap:8px;min-height:138px;padding:10px;display:grid}.score-report-row.missing{background:#fff7ed;border-color:#fed7aa}.score-report-head{grid-template-columns:1fr auto;align-items:baseline;gap:2px 8px;display:grid}.score-report-head span{color:var(--muted);font-size:12px;font-weight:800}.score-report-head strong{grid-row:span 2;font-size:30px;line-height:1}.score-report-head em{color:var(--success);font-size:11px;font-style:normal;font-weight:900}.score-report-row p,.surface-report p,.report-photo-caption p{color:var(--muted);font-size:12px;line-height:1.35}.score-report-row.missing p{color:#b91c1c;font-weight:800}.report-stat-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.report-stat-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.report-stat-grid div{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:4px;padding:9px;display:grid}.report-stat-grid span{color:var(--muted);font-size:11px;font-weight:800}.report-stat-grid strong{font-size:14px;line-height:1.15}.report-table{border-collapse:collapse;width:100%;margin-top:12px;font-size:12px}.report-table th,.report-table td{border:1px solid var(--line);vertical-align:top;text-align:left;padding:7px 8px}.report-table th{color:var(--muted);background:var(--panel-muted);font-size:11px}.report-table .numeric{text-align:right;white-space:nowrap}.corner-edge-table-wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.corner-edge-table-wrap h3,.surface-side-report h3{color:var(--text);justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 8px;font-size:12px;display:flex}.corner-edge-detail-table td:last-child{min-width:140px}.report-severity{text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-width:72px;padding:3px 8px;font-size:10px;font-weight:900;display:inline-flex}.surface-report-map{--surface-marker-color:#ef4444;--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff;--surface-marker-opacity:.7;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.surface-side-report{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;padding:10px}.surface-side-report h3 small{color:var(--muted);font-size:11px;font-weight:800}.surface-card-map{aspect-ratio:63/88;border:1px solid var(--line);background:#111827;border-radius:6px;width:min(210px,100%);margin-bottom:10px;position:relative;overflow:hidden}.surface-card-map-image,.surface-card-map-placeholder{place-items:center;display:grid;position:absolute;inset:0}.surface-card-map-image img{object-fit:cover;width:100%;height:100%}.surface-card-map-placeholder{color:#f8fafc;background:radial-gradient(circle at 52% 38%,#ffffffd6 0 10%,#0000 11%),radial-gradient(circle at 42% 46%,#2dd4bf7a,#0000 25%),linear-gradient(135deg,#152033,#7c5f93 54%,#172033);font-size:12px;font-weight:900}.surface-card-map-placeholder.is-back{background:radial-gradient(circle,#0000 0 25%,#d6a33a 26% 28%,#0000 29%),repeating-radial-gradient(circle,#c78f2d 0 2px,#0000 2px 22px),radial-gradient(circle,#0f172a 0 42%,#060914 100%)}.surface-card-map-grid{--surface-marker-color:#ef4444;--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff;--surface-marker-opacity:.7;grid-template-rows:repeat(24,1fr);grid-template-columns:repeat(12,1fr);display:grid;position:absolute;inset:0}.surface-card-map-grid span{color:#0000;border-bottom:1px solid #06b6d47a;border-right:1px solid #06b6d47a;place-items:center;font-size:7px;font-weight:900;display:grid}.surface-card-map-grid span:nth-child(12n){border-right:0}.surface-card-map-grid span:nth-last-child(-n+12){border-bottom:0}.surface-card-map-grid span.is-selected{border:1px solid rgba(var(--surface-marker-rgb), var(--surface-marker-opacity));color:var(--surface-marker-contrast);background:rgba(var(--surface-marker-rgb), calc(var(--surface-marker-opacity) * .64))}.surface-card-map-grid.marker-red{--surface-marker-color:#ef4444;--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff}.surface-card-map-grid.marker-amber{--surface-marker-color:#f59e0b;--surface-marker-rgb:245, 158, 11;--surface-marker-contrast:#111827}.surface-card-map-grid.marker-cyan{--surface-marker-color:#06b6d4;--surface-marker-rgb:6, 182, 212;--surface-marker-contrast:#06202a}.surface-card-map-grid.marker-lime{--surface-marker-color:#84cc16;--surface-marker-rgb:132, 204, 22;--surface-marker-contrast:#102008}.surface-card-map-grid.marker-white{--surface-marker-color:#fff;--surface-marker-rgb:255, 255, 255;--surface-marker-contrast:#111827}.surface-card-map-grid.marker-black{--surface-marker-color:#111827;--surface-marker-rgb:17, 24, 39;--surface-marker-contrast:#fff}.surface-cell-list{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;display:grid}.surface-cell-list span{border:1px solid rgba(var(--surface-marker-rgb), var(--surface-marker-opacity));min-height:46px;color:var(--surface-marker-contrast);background:rgba(var(--surface-marker-rgb), calc(var(--surface-marker-opacity) * .78));border-radius:6px;grid-template-columns:22px 1fr;align-items:center;gap:2px 6px;padding:6px;display:grid}.surface-cell-list strong{width:22px;height:22px;color:var(--surface-marker-contrast);background:#0003;border-radius:50%;grid-row:span 2;place-items:center;font-size:11px;line-height:1;display:grid}.surface-cell-list small,.surface-cell-list em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.surface-cell-list small{color:var(--surface-marker-contrast);opacity:.86;font-size:9px}.surface-cell-list em{opacity:.78;font-size:9px;font-style:normal;font-weight:800}.surface-report-map.marker-red{--surface-marker-color:#ef4444;--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff}.surface-report-map.marker-amber{--surface-marker-color:#f59e0b;--surface-marker-rgb:245, 158, 11;--surface-marker-contrast:#111827}.surface-report-map.marker-cyan{--surface-marker-color:#06b6d4;--surface-marker-rgb:6, 182, 212;--surface-marker-contrast:#06202a}.surface-report-map.marker-lime{--surface-marker-color:#84cc16;--surface-marker-rgb:132, 204, 22;--surface-marker-contrast:#102008}.surface-report-map.marker-white{--surface-marker-color:#fff;--surface-marker-rgb:255, 255, 255;--surface-marker-contrast:#111827}.surface-report-map.marker-black{--surface-marker-color:#111827;--surface-marker-rgb:17, 24, 39;--surface-marker-contrast:#fff}.report-photo-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.report-photo{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;grid-template-columns:92px minmax(0,1fr);min-height:116px;display:grid;position:relative;overflow:hidden}.report-photo-preview{background:#111827;min-height:116px;position:relative}.report-photo-preview img,.report-photo-preview .defect-texture{object-fit:cover;width:100%;height:100%}.report-photo-preview b{color:#fff;background:var(--danger);border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;font-weight:900;display:grid;position:absolute;top:6px;left:6px}.report-filter-badge{color:#e0f2fe;background:#082f49d1;border:1px solid #ffffff47;border-radius:5px;padding:2px 6px;font-size:8px;font-style:normal;font-weight:900;position:absolute;bottom:6px;right:6px}.report-photo-caption{align-content:start;gap:4px;min-width:0;padding:8px;display:grid}.report-photo-caption strong,.report-photo-caption span{display:block}.report-photo-caption strong{font-size:12px}.report-photo-caption span{color:var(--muted);overflow-wrap:anywhere;font-size:10px;font-weight:800}.report-photo-caption small{color:var(--accent);font-size:10px;font-weight:900}.empty-report-note{color:var(--muted);margin:0;font-size:12px;font-weight:800}.report-cockpit{gap:12px;min-height:780px;padding:12px}.control-button.compact,.primary-button.compact{border-radius:6px;min-height:34px;padding-inline:10px;font-size:12px}.report-cockpit-hero{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:108px 112px minmax(330px,.95fr) minmax(240px,.78fr) 148px auto;align-items:stretch;gap:10px;min-width:0;padding:10px;display:grid;box-shadow:0 1px #11182708}.report-hero-image-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0;display:grid}.report-hero-image{align-content:start;gap:5px;min-width:0;display:grid}.report-summary-image{border:1px solid var(--line);background:#101827;border-radius:6px;place-items:center;height:70px;display:grid;overflow:hidden}.report-summary-image img{object-fit:contain;width:100%;height:100%}.report-hero-image .report-image-placeholder{height:70px}.report-hero-image span{color:var(--muted);text-align:center;font-size:10px;font-weight:900}.report-final-score{background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #bfdbfe;border-radius:7px;align-content:center;justify-items:center;gap:1px;display:grid}.report-brand-lockup{justify-content:center;align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.report-logo-mark{border:1px solid var(--line-strong);width:28px;height:28px;color:var(--text);background:#fff;border-radius:6px;flex:none;place-items:center;font-size:9px;font-weight:900;display:grid;overflow:hidden}.report-logo-mark img{object-fit:contain;width:100%;height:100%;padding:3px}.report-final-score span,.report-final-score em,.report-final-score small,.report-status-block span,.report-identity-grid span,.report-subgrade-strip span,.report-side-heading span,.report-panel-header span,.report-visibility-grid span{color:var(--muted);font-size:10px;font-weight:900}.report-final-score strong{color:var(--text);font-size:38px;line-height:1}.report-final-score small{color:var(--success)}.report-final-score em{min-width:0;color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.report-subgrade-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.report-subgrade-strip button{border:1px solid var(--line);min-width:0;color:var(--text);background:var(--panel-muted);text-align:left;border-radius:7px;align-content:center;justify-items:start;gap:3px;padding:8px;display:grid}.report-subgrade-strip button:hover,.report-detail-tabs button:hover{border-color:var(--accent);background:#eff6ff}.report-subgrade-strip strong{font-size:20px;line-height:1}.report-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.report-identity-grid div,.report-status-block,.report-quick-cert,.report-visibility-summary{min-width:0}.report-identity-grid div{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;gap:3px;padding:7px 8px;display:grid}.report-identity-grid strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.2;overflow:hidden}.report-status-block{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:7px;align-items:center;gap:8px;padding:9px;display:flex}.report-status-block.is-ready{color:var(--success);background:#f0fdf4;border-color:#bbf7d0}.report-status-block div{gap:2px;min-width:0;display:grid}.report-status-block strong{font-size:14px;line-height:1.05}.report-cockpit-actions,.report-quick-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.report-cockpit-actions{flex-wrap:wrap}.report-cockpit-layout{grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:12px;min-width:0;display:grid}.report-right-panel{align-content:start;gap:10px;max-height:calc(100vh - 96px);display:grid;position:sticky;top:82px;overflow:auto}.report-right-panel>.report-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 1px #11182708}.report-side-heading{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.report-side-heading strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.2;overflow:hidden}.report-center-stage{gap:10px;min-width:0;display:grid}.report-detail-tabs{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:7px;padding:7px;display:flex;overflow-x:auto}.report-detail-tabs button{border:1px solid var(--line);min-height:34px;color:var(--muted);background:var(--panel-muted);border-radius:6px;flex:none;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.report-detail-tabs button.is-active{border-color:var(--accent);color:var(--accent);background:#eff6ff}.report-tab-panels,.report-tab-panel,.report-evidence-sections,.report-certificate-grid{gap:10px;min-width:0;display:grid}.report-tab-panel.is-hidden{display:none}.report-panel-header{border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;padding:12px;display:flex}.report-panel-header div{min-width:0}.report-panel-header h2{color:var(--text);margin:3px 0 4px;font-size:20px;line-height:1.15}.report-panel-header p{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.report-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.report-overview-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-content:start;gap:10px;min-width:0;padding:12px;display:grid}.report-overview-card.is-attention{background:#fffaf3;border-color:#fed7aa}.report-overview-card.is-good{border-color:#bbf7d0}.report-overview-card-head{grid-template-columns:minmax(0,1fr) 78px;align-items:start;gap:10px;display:grid}.report-overview-card h3{color:var(--text);align-items:center;gap:7px;margin:0 0 4px;font-size:15px;display:flex}.report-overview-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.report-overview-grade{justify-items:end;gap:2px;display:grid}.report-overview-grade strong{color:var(--text);font-size:28px;line-height:1}.report-overview-grade span{color:var(--success);font-size:10px;font-weight:900}.report-overview-card-body dl,.report-visibility-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;display:grid}.report-overview-card-body div,.report-visibility-grid div{border:1px solid var(--line);background:var(--panel-muted);border-radius:6px;gap:3px;min-width:0;padding:7px;display:grid}.report-overview-card-body dt{color:var(--muted);font-size:10px;font-weight:900}.report-overview-card-body dd,.report-visibility-grid strong{color:var(--text);margin:0;font-size:12px;font-weight:900;line-height:1.15}.report-cockpit .category-report-card,.report-cockpit .report-images-card,.report-cockpit .setup-summary-card,.report-cockpit .surface-report,.report-cockpit .evidence-report-card{grid-column:auto}.report-cockpit .report-card{border-radius:8px}.report-cockpit .report-card.certificate{min-height:100%}.report-certificate-grid{grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);align-items:start}.report-certificate-grid .setup-summary-card{grid-column:1/-1}.evidence-report-card,.report-quick-cert,.report-visibility-summary{gap:10px;display:grid}.report-quick-qr{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;justify-items:center;gap:7px;padding:10px;display:grid}.report-quick-qr svg{display:block}.report-quick-qr span{color:var(--muted);font-size:10px;font-weight:900}.report-quick-actions .control-button{flex:1 1 0}.report-visibility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-right-panel .required-fixes{padding:12px}.report-right-panel .issue-list{max-height:284px}@media (width<=1500px){.report-cockpit-hero{grid-template-columns:108px 112px minmax(300px,1fr) minmax(220px,.78fr)}.report-status-block,.report-cockpit-actions{grid-column:span 2}}@media (width<=900px){.report-cockpit-hero,.report-cockpit-layout,.report-right-panel,.report-overview-grid,.report-certificate-grid{grid-template-columns:1fr}.report-right-panel{max-height:none;position:static;overflow:visible}.report-status-block,.report-cockpit-actions{grid-column:auto}}.report-cockpit{min-height:760px;box-shadow:none;background:0 0;border:0;grid-template-rows:auto 1fr;grid-template-columns:260px minmax(0,1fr) 320px;align-items:start;gap:10px;padding:0;display:grid}.report-review-navigator,.report-cockpit-hero,.report-center-stage,.report-right-panel>.report-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;box-shadow:0 1px #11182708}.report-review-navigator{grid-area:1/1/span 2;align-content:start;align-self:start;max-height:calc(100vh - 96px);display:grid;position:relative;top:0;overflow:auto}.report-navigator-head,.report-navigator-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.report-navigator-head{border-bottom:1px solid var(--line);min-height:44px;padding:0 12px}.report-navigator-head strong,.report-navigator-title strong,.report-side-heading h2{color:var(--text);font-size:13px;line-height:1.15}.report-navigator-section{border-bottom:1px solid var(--line);gap:8px;padding:12px;display:grid}.report-navigator-title span,.report-side-heading small{color:var(--success);background:#dcfce7;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:900}.report-navigator-title span.is-attention{color:#9a3412;background:#ffedd5}.report-navigator-title span.is-ready{color:var(--success);background:#dcfce7}.report-checklist-list{gap:6px;display:grid}.report-checklist-row{min-width:0;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:15px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 0;display:grid}.report-checklist-row>span,.report-navigator-issue-row>span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:11px;font-weight:700;display:flex;overflow:hidden}.report-checklist-row.is-complete>svg{color:var(--success)}.report-checklist-row.is-attention,.report-checklist-row.is-attention>svg{color:#b45309}.micro-button,.issue-row em{border:1px solid var(--line);color:var(--muted);background:var(--panel-muted);border-radius:5px;padding:3px 7px;font-size:10px;font-style:normal;font-weight:900}.micro-button:hover,.issue-row:hover em{border-color:var(--accent);color:var(--accent);background:#eff6ff}.report-navigator-issue-list{max-height:min(42vh,520px);padding-right:2px}.report-navigator-issue-row{grid-template-columns:15px minmax(0,1fr) auto;gap:6px;padding:7px}.report-navigator-issue-row strong{font-size:11px}.report-navigator-issue-row small{font-size:10px;line-height:1.25}.report-navigator-issue-row em{align-self:center;padding:2px 6px;font-size:10px}.report-attention-empty{color:var(--success);align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.report-cockpit.is-navigator-collapsed{grid-template-columns:56px minmax(0,1fr) 320px}.report-cockpit.is-navigator-collapsed .report-navigator-head{justify-content:center;padding:0}.report-cockpit.is-navigator-collapsed .report-navigator-head strong,.report-cockpit.is-navigator-collapsed .report-navigator-section{display:none}.report-cockpit-hero{grid-area:1/2/auto/4;grid-template-columns:minmax(170px,.58fr) 126px minmax(260px,1fr) minmax(220px,.82fr) minmax(150px,.58fr) minmax(190px,.68fr);align-items:stretch;gap:10px;min-width:0;padding:10px;display:grid}.report-hero-card-lockup{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:8px;min-width:0;display:grid}.report-mini-preview{border:1px solid var(--line);background:#0f172a;border-radius:6px;place-items:center;min-width:0;display:grid;position:relative;overflow:hidden}.report-mini-preview img{object-fit:contain;width:100%;height:100%}.report-mini-preview.is-placeholder{color:var(--muted);background:var(--panel-muted)}.report-mini-preview.is-primary{width:72px;height:96px}.report-hero-side-status{gap:6px;min-width:0;display:grid}.report-hero-side-status span{border:1px solid var(--line);min-width:0;color:var(--muted);background:var(--panel-muted);border-radius:6px;gap:1px;padding:6px 7px;font-size:10px;font-weight:900;display:grid}.report-hero-side-status b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.report-hero-side-status .is-captured b{color:var(--success)}.report-hero-side-status .is-missing b{color:var(--danger)}.report-center-stage{box-shadow:none;background:0 0;border:0;grid-area:2/2;padding:0}.report-right-panel{grid-area:2/3;top:82px}.report-side-heading h2{align-items:center;gap:7px;margin:0;display:flex}.report-certificate-preview-card,.report-export-options,.report-customer-visibility{gap:10px;padding:12px;display:grid}.report-accordion{padding:0}.report-accordion summary{min-height:46px;color:var(--text);cursor:pointer;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:9px;padding:0 12px;list-style:none;display:grid}.report-accordion summary::-webkit-details-marker{display:none}.report-accordion summary>span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:900;display:flex;overflow:hidden}.report-accordion summary>em{color:var(--accent);white-space:nowrap;background:#eff6ff;border-radius:999px;padding:2px 8px;font-size:10px;font-style:normal;font-weight:900}.accordion-chevron{color:var(--muted);justify-self:end;transition:transform .16s}.report-accordion[open] .accordion-chevron{transform:rotate(180deg)}.report-accordion-body{border-top:1px solid var(--line);gap:10px;padding:0 12px 12px;display:grid}.report-accordion-body>label:first-child{margin-top:10px}.mini-certificate{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.mini-cert-brand,.mini-cert-body{gap:8px;display:grid}.mini-cert-brand{border-bottom:1px solid var(--line);grid-template-columns:28px minmax(0,1fr);align-items:center;padding:8px 10px}.mini-cert-brand strong,.mini-cert-meta b{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.15;overflow:hidden}.mini-cert-body{grid-template-columns:54px minmax(0,1fr) auto;align-items:center;padding:10px}.mini-cert-grade strong{color:var(--text);font-size:34px;line-height:.95;display:block}.mini-cert-grade span,.mini-cert-meta span,.mini-cert-meta small{color:var(--muted);font-size:10px;font-weight:900;display:block}.mini-certificate footer{color:#fff;background:var(--accent);text-align:center;padding:7px 10px;font-size:10px;font-weight:900}.report-export-options label,.report-customer-visibility label{color:var(--text);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.report-export-options input,.report-customer-visibility input{width:14px;height:14px;accent-color:var(--accent)}.report-customer-visibility .report-visibility-grid{margin-top:2px}.issue-row{grid-template-columns:20px minmax(0,1fr) auto}.report-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-overview-card{min-height:292px}.report-overview-card-body{grid-template-columns:minmax(150px,180px) minmax(0,1fr);align-items:start;gap:12px;display:grid}.report-overview-card-body dl{grid-template-columns:1fr}.report-overview-grade em{color:#b45309;background:#fef3c7;border-radius:999px;justify-self:end;padding:2px 7px;font-size:10px;font-style:normal;font-weight:900}.report-overview-card.is-good .report-overview-grade em{color:var(--success);background:#dcfce7}.overview-measure-preview,.overview-edge-preview,.overview-corner-preview,.overview-surface-preview{min-width:0}.overview-measure-preview{border:1px solid var(--line);background-color:#f8fafc;background-image:linear-gradient(#0ea5e91c 1px,#0000 1px),linear-gradient(90deg,#0ea5e91c 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:18px 18px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:6px;place-items:center;height:168px;display:grid;position:relative;overflow:hidden}.overview-measure-preview .report-mini-preview{width:82px;height:126px}.overview-measure-preview.has-measurement-snapshot{background:#111827;padding:0}.overview-measure-snapshot{object-fit:cover;width:100%;height:100%;display:block}.measure-guide{color:var(--accent);pointer-events:none;border-color:currentColor;position:absolute}.guide-left,.guide-right,.guide-center-y{border-left:1px solid;top:20px;bottom:20px}.guide-top,.guide-bottom,.guide-center-x{border-top:1px solid;left:18px;right:18px}.guide-left{left:48px}.guide-right{right:48px}.guide-top{color:#ef4444;top:34px}.guide-bottom{color:#ef4444;bottom:34px}.guide-center-x{color:#2563eb;top:50%}.guide-center-y{color:#2563eb;left:50%}.overview-edge-preview{align-content:start;gap:6px;display:grid}.edge-mini-strip{border:1px solid var(--line);background-color:#f8fafc;background-image:linear-gradient(#94a3b826 1px,#0000 1px),linear-gradient(90deg,#94a3b826 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:15px 15px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:4px;height:28px;display:block;overflow:hidden}.edge-mini-strip img{object-fit:cover;width:100%;height:100%}.edge-mini-strip.is-top img{object-position:center top}.edge-mini-strip.is-right img{object-position:right center}.edge-mini-strip.is-bottom img{object-position:center bottom}.edge-mini-strip.is-left img{object-position:left center}.overview-corner-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.corner-mini-crop{border:1px solid var(--line);background:#f8fafc;border-radius:5px;height:70px;display:block;position:relative;overflow:hidden}.corner-mini-crop img{object-fit:cover;width:100%;height:100%}.corner-mini-crop.is-top-left img{object-position:left top}.corner-mini-crop.is-top-right img{object-position:right top}.corner-mini-crop.is-bottom-left img{object-position:left bottom}.corner-mini-crop.is-bottom-right img{object-position:right bottom}.corner-mini-crop b{color:#fff;background:#0f172ab8;border-radius:4px;place-items:center;width:24px;height:20px;font-size:10px;font-weight:900;display:grid;position:absolute;top:5px;left:5px}.overview-surface-preview .surface-card-map{width:154px;margin-bottom:0}.overview-surface-preview .surface-card-map-grid span{font-size:5px}.measurement-report-snapshot-block{break-inside:avoid;page-break-inside:avoid}.measurement-report-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.measurement-report-snapshot-card{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;align-content:start;gap:8px;min-width:0;padding:9px;display:grid}.measurement-report-snapshot-card.has-capture{background:#f8fbff;border-color:#bfdbfe}.measurement-report-snapshot-head{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.measurement-report-snapshot-head div{gap:2px;min-width:0;display:grid}.measurement-report-snapshot-head span,.measurement-report-snapshot-head small,.measurement-report-snapshot-meta dt{color:var(--muted);font-size:10px;font-weight:900}.measurement-report-snapshot-head strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.15;overflow:hidden}.measurement-report-snapshot-head small{text-align:right;flex:none;max-width:128px}.measurement-report-snapshot-preview{border:1px solid var(--line);min-width:0;height:360px;color:var(--muted);background:#111827;border-radius:6px;place-items:center;display:grid;overflow:hidden}.measurement-report-snapshot-preview img{object-fit:contain;width:100%;height:100%;display:block}.measurement-report-snapshot-preview.is-empty{background-color:#f8fafc;background-image:linear-gradient(#0f172a14 1px,#0000 1px),linear-gradient(90deg,#0f172a14 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:22px 22px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.measurement-report-snapshot-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;display:grid}.measurement-report-snapshot-meta div{border:1px solid var(--line);background:var(--panel);border-radius:6px;gap:2px;min-width:0;padding:7px;display:grid}.measurement-report-snapshot-meta dd{color:var(--text);white-space:nowrap;margin:0;font-size:12px;font-weight:900;line-height:1.15}@media (width<=1540px){.report-cockpit{grid-template-columns:230px minmax(0,1fr) 300px}.report-cockpit-hero{grid-template-columns:minmax(160px,.7fr) 116px minmax(240px,1fr) minmax(210px,1fr)}.report-status-block,.report-cockpit-actions{grid-column:span 2}}@media (width<=1180px){.report-cockpit{grid-template-columns:1fr}.report-review-navigator,.report-cockpit-hero,.report-center-stage,.report-right-panel{grid-area:auto;max-height:none;position:static;overflow:visible}.report-cockpit-hero,.report-overview-grid,.measurement-capture-grid,.measurement-report-snapshot-grid,.report-overview-card-body,.report-cockpit.is-navigator-collapsed{grid-template-columns:1fr}}.corner-edge-workspace{gap:10px;min-height:760px;display:grid}.ce-toolbar,.ce-region-area,.ce-inspector{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 1px #11182708}.ce-toolbar{align-items:center;gap:10px;min-height:52px;padding:8px;display:flex}.ce-side-toggle{flex:none}.ce-side-toggle button{min-width:76px;height:34px;font-size:12px;font-weight:800}.ce-page-pill{border:1px solid var(--line);height:34px;color:var(--accent);background:var(--accent-soft);border-radius:6px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.ce-page-pill strong{color:var(--accent)}.ce-page-pill span{color:var(--muted);font-size:11px}.ce-zoom-control{color:var(--muted);grid-template-columns:auto minmax(160px,260px) 48px;align-items:center;gap:8px;margin-left:auto;font-size:11px;font-weight:800;display:grid}.ce-zoom-control input{accent-color:var(--accent)}.ce-zoom-control strong{color:var(--text);text-align:right}.ce-layout{grid-template-columns:minmax(0,1fr) 342px;align-items:start;gap:10px;display:grid}.ce-region-area{min-width:0;padding:14px}.ce-area-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.ce-area-heading h1{font-size:20px}.ce-area-heading p{color:var(--muted);margin-top:4px;font-size:12px}.ce-side-summary{color:var(--muted);flex:none;justify-items:end;gap:2px;font-size:11px;display:grid}.ce-side-summary strong{color:var(--text);font-size:13px}.ce-region-grid{gap:10px;display:grid}.ce-region-grid.is-edges,.ce-region-grid.is-corners{grid-template-columns:repeat(4,minmax(170px,1fr))}.ce-region-tile{border:1px solid var(--line);min-width:0;color:var(--text);background:var(--panel-muted);text-align:left;cursor:default;border-radius:7px;align-content:start;gap:8px;padding:9px;display:grid}.ce-region-grid.is-edges .ce-region-tile,.ce-region-grid.is-corners .ce-region-tile{grid-template-rows:auto auto auto}.ce-region-tile:hover,.ce-region-tile.is-selected{background:#fbfdff;border-color:#9bbcff}.ce-region-tile.is-selected{box-shadow:0 0 0 2px #2563eb21}.ce-region-select-button{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:8px;padding:0;display:grid}.ce-region-select-button:focus-visible{outline-offset:3px;outline:2px solid #8fb0ff}.ce-region-title,.ce-region-meta{align-items:center;gap:7px;min-width:0;display:flex}.ce-photo-count{color:#1d4ed8;white-space:nowrap;background:#dbeafe;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;padding:3px 7px;font-size:10px;font-style:normal;font-weight:900;display:inline-flex}.ce-region-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.ce-region-title em{text-transform:capitalize;border-radius:999px;margin-left:auto;padding:3px 7px;font-size:10px;font-style:normal;font-weight:900}.ce-region-meta{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:5px;font-size:11px}.ce-region-meta small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ce-card-crop{background-color:#fff;background-image:linear-gradient(#0f172a0f 1px,#0000 1px),linear-gradient(90deg,#0f172a0f 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:26px 26px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #cbd5e1;border-radius:6px;position:relative;overflow:hidden}.ce-card-crop.is-edge-crop{aspect-ratio:3/4;width:100%;height:auto;min-height:0}.ce-card-crop.is-edge-crop:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#0f172a0a,#0000 41%,#2563eb12 49.4% 50.6%,#0000 59%,#0f172a0a);position:absolute;inset:0}.ce-card-crop.is-corner-crop{aspect-ratio:1}.ce-card-crop.is-edge-crop .ce-card-proxy{overflow:visible;transform:none}.ce-card-crop.is-edge-crop .ce-card-proxy img,.ce-card-crop.is-edge-crop .ce-placeholder-card{box-shadow:none;border-width:0;border-radius:0}.ce-card-crop.is-edge-crop .ce-card-proxy img{object-fit:fill;background:#0f172a;position:absolute}.ce-card-crop.is-edge-crop .ce-card-proxy img:not(.ce-edge-source-image){inset:0}.ce-edge-source-image,.ce-edge-strip-svg{z-index:2;pointer-events:none;border:0;border-radius:0;width:100%;height:100%;display:block;position:absolute;inset:0}.ce-edge-strip-svg{overflow:hidden}.ce-edge-source-image{object-fit:contain;object-position:center}.ce-card-proxy{width:210px;height:294px;transform:scale(var(--ce-crop-zoom,2.5));transform-origin:50%;position:absolute}.ce-card-proxy img,.ce-placeholder-card{object-fit:cover;border:7px solid #111827;border-radius:8px;width:100%;height:100%;box-shadow:0 18px 38px #0f172a3d}.ce-placeholder-card{place-items:center;display:grid;position:relative;overflow:hidden}.ce-placeholder-card.is-front{background:radial-gradient(circle at 52% 38%,#ffffffd6 0 10%,#0000 11%),radial-gradient(circle at 42% 46%,#2dd4bf7a,#0000 25%),linear-gradient(135deg,#152033,#7c5f93 54%,#172033)}.ce-placeholder-card.is-back{background:radial-gradient(circle,#0000 0 25%,#d6a33a 26% 28%,#0000 29%),repeating-radial-gradient(circle,#c78f2d 0 2px,#0000 2px 22px),radial-gradient(circle,#0f172a 0 42%,#060914 100%)}.ce-placeholder-card span,.ce-placeholder-card strong,.ce-placeholder-card em{color:#fef3c7;text-align:center;position:absolute}.ce-placeholder-card span{color:#f8fafc;font-size:10px;font-weight:900;top:20px;left:18px}.ce-placeholder-card strong{font-size:17px;font-weight:900;line-height:1.05;top:42px;left:18px;right:18px}.ce-placeholder-card em{color:#e2e8f0;font-size:11px;font-style:normal;font-weight:800;bottom:28px;left:24px;right:24px}.ce-placeholder-card.is-back strong{color:#fff;border:2px solid #eab308;border-radius:50%;place-items:center;width:74px;height:74px;font-size:24px;display:grid;top:auto;left:50%;right:auto;transform:translate(-50%)}.edge-top .ce-card-proxy{transform-origin:0 0}.edge-bottom .ce-card-proxy{transform-origin:0 100%}.edge-left .ce-card-proxy{transform-origin:0 0}.edge-right .ce-card-proxy{transform-origin:100% 0}.corner-top-left .ce-card-proxy{transform-origin:0 0;top:22px;left:22px}.corner-top-right .ce-card-proxy{transform-origin:100% 0;top:22px;right:22px}.corner-bottom-left .ce-card-proxy{transform-origin:0 100%;bottom:22px;left:22px}.corner-bottom-right .ce-card-proxy{transform-origin:100% 100%;bottom:22px;right:22px}.ce-inspector{gap:10px;padding:12px;display:grid;position:sticky;top:10px}.ce-score-card,.ce-evidence-card,.ce-comment-card,.ce-check-summary{border:1px solid var(--line);background:var(--panel-muted);border-radius:7px;padding:10px}.ce-score-card{gap:8px;display:grid}.ce-score-card>span,.ce-note-field>span{color:var(--muted);font-size:11px;font-weight:800}.ce-score-card div{grid-template-columns:1fr 86px;align-items:center;gap:10px;display:grid}.ce-score-card strong{font-size:34px;line-height:1}.ce-score-card select{border:1px solid var(--line);height:34px;color:var(--text);background:var(--panel);border-radius:6px;padding:0 8px;font-size:12px;font-weight:800}.ce-score-card small{color:var(--success);font-size:12px;font-weight:900}.ce-evidence-card,.ce-comment-card{gap:10px;display:grid}.ce-selected-head{grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;display:grid}.ce-selected-head div{text-align:center;min-width:0}.ce-selected-head span,.ce-comment-card div{color:var(--muted);font-size:11px;font-weight:800}.ce-selected-head strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.ce-compact-review-row{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:6px;display:grid}.ce-severity-select,.ce-tag-dropdown summary{border:1px solid var(--line);background:var(--panel);border-radius:6px;min-width:0;min-height:38px;padding:5px 8px}.ce-severity-select{gap:2px;display:grid}.ce-severity-select span,.ce-tag-dropdown summary span{color:var(--muted);font-size:9px;font-weight:900;line-height:1}.ce-severity-select select{width:100%;min-width:0;color:inherit;background:0 0;border:0;outline:none;padding:0;font-size:11px;font-weight:900}.ce-tag-dropdown{min-width:0;position:relative}.ce-tag-dropdown summary{cursor:pointer;gap:2px;list-style:none;display:grid}.ce-tag-dropdown summary::-webkit-details-marker{display:none}.ce-tag-dropdown summary strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;overflow:hidden}.ce-tag-dropdown[open] summary{border-color:#9bbcff;box-shadow:0 0 0 3px #2563eb1a}.ce-tag-menu{z-index:12;border:1px solid var(--line);background:var(--panel);border-radius:6px;gap:4px;width:190px;max-height:190px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0;overflow:auto;box-shadow:0 14px 30px #0f172a24}.ce-tag-menu label{border:1px solid var(--line);min-height:28px;color:var(--muted);background:var(--panel-muted);border-radius:5px;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:6px;padding:0 7px;font-size:10px;font-weight:900;display:grid}.ce-tag-menu label.is-active{color:var(--accent);background:var(--accent-soft);border-color:#9bbcff}.ce-tag-menu input{width:12px;height:12px;accent-color:var(--accent)}.ce-tag-menu span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ce-note-field{gap:6px;display:grid}.ce-note-field textarea,.ce-comment-card textarea{resize:none;border:1px solid var(--line);width:100%;color:var(--text);background:var(--panel);border-radius:6px;outline:none;padding:9px;font-size:12px;line-height:1.4}.ce-note-field textarea:focus,.ce-comment-card textarea:focus{border-color:#a9c2ff;box-shadow:0 0 0 3px #2563eb1f}.ce-region-review-panel{border-top:1px solid var(--line);gap:7px;min-width:0;padding-top:8px;display:grid}.ce-region-review-panel .ce-note-field{gap:4px}.ce-region-review-panel .ce-note-field textarea{min-height:58px;padding:7px;font-size:11px}.ce-region-photo-panel{border-top:1px solid var(--line);gap:6px;min-width:0;padding-top:8px;display:grid}.ce-add-photo-button{min-height:30px;color:var(--accent);background:#f8fbff;border:1px dashed #9bbcff;border-radius:6px;justify-content:center;align-items:center;gap:6px;font-size:10px;font-weight:900;display:inline-flex}.ce-add-photo-button:hover,.ce-add-photo-button:focus-visible{background:var(--accent-soft);border-style:solid}.ce-add-photo-button.is-pending{color:#065f46;background:#d1fae5;border-style:solid;box-shadow:inset 0 0 0 1px #7dd3fc}.ce-region-photo-panel>small{color:var(--muted);font-size:10px;font-weight:800}.ce-region-evidence-list{gap:8px;min-width:0;display:grid}.ce-region-evidence-thumb{border:1px solid var(--line);background:#ffffffc7;border-radius:7px;padding:6px}.ce-region-evidence-thumb .thumb-image{height:74px}.ce-region-evidence-meta{grid-template-columns:minmax(0,1fr) 58px;align-items:start;gap:7px;min-width:0;display:grid}.ce-region-evidence-meta div,.ce-region-evidence-meta label{min-width:0}.ce-region-evidence-meta strong,.ce-region-evidence-meta span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.ce-region-evidence-meta strong{color:var(--text);margin-top:0;font-size:11px;line-height:1.2}.ce-region-evidence-meta span{color:var(--muted);font-size:10px;font-weight:700;line-height:1.2}.ce-region-evidence-meta select{border:1px solid var(--line);width:58px;height:25px;color:var(--text);background:var(--panel);border-radius:5px;font-size:10px;font-weight:800}.ce-region-evidence-thumb textarea{min-height:48px}.ce-evidence-inline{border-top:1px solid var(--line);gap:9px;min-width:0;padding-top:10px;display:grid}.ce-evidence-head,.ce-evidence-target,.ce-evidence-actions{align-items:center;gap:8px;display:flex}.ce-evidence-head{justify-content:space-between}.ce-evidence-head span{color:var(--text);align-items:center;gap:6px;font-size:12px;font-weight:900;display:inline-flex}.ce-evidence-head strong{color:var(--accent);font-size:11px}.ce-evidence-target{border:1px solid var(--line);background:var(--panel);border-radius:6px;justify-content:space-between;min-width:0;padding:7px 8px}.ce-evidence-target span,.ce-evidence-target strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ce-evidence-target span{color:var(--muted);font-size:10px;font-weight:800}.ce-evidence-target strong{color:var(--text);font-size:11px}.ce-evidence-camera{gap:8px;min-width:0;display:grid}.ce-evidence-camera .camera-preview{height:118px}.ce-evidence-camera .camera-actions,.ce-evidence-actions{flex-wrap:wrap}.ce-evidence-camera .camera-actions .control-button,.ce-evidence-camera .camera-actions .primary-button,.ce-evidence-actions .control-button{min-height:32px;padding:0 9px;font-size:11px}.ce-comment-card div{color:var(--text);align-items:center;gap:7px;display:flex}.ce-check-summary{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.ce-check-summary div{gap:3px;min-width:0;display:grid}.ce-check-summary span{color:var(--muted);font-size:10px;font-weight:800}.ce-check-summary strong{font-size:17px}.severity-unchecked{color:#64748b!important;background:#eef2f7!important}.severity-ok{color:#15803d!important;background:#dcfce7!important}.severity-minor{color:#1d4ed8!important;background:#dbeafe!important}.severity-moderate{color:#a16207!important;background:#fef3c7!important}.severity-major{color:#b91c1c!important;background:#fee2e2!important}@media (width<=1300px){body{min-width:1024px}.workspace-layout{grid-template-columns:minmax(620px,1fr) 340px}.utilitybar{grid-template-columns:minmax(240px,1fr) minmax(320px,1.2fr)}.save-tools,.draft-tools{min-height:58px}.surface-board{transform:scale(.88)}.surface-stage{min-height:500px}.microscope-body{grid-template-columns:200px minmax(0,1fr)}}@media print{@page{size:A4;margin:10mm 10mm 16mm}:root{color:#111827;background:#fff}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{background:#fff;min-width:0}.workbench{background:#fff;min-height:0;display:block}.topbar,.utilitybar,.right-rail,.report-review-navigator,.report-right-panel,.report-detail-tabs,.report-cockpit-actions,.report-quick-actions,.report-actions{display:none!important}.workspace-layout,.workspace-layout.is-full-width,.main-workspace{min-height:0;padding:0;display:block;overflow:visible}.report-workspace{min-height:0;box-shadow:none;background:#fff;border:0;border-radius:0;padding:0;display:block}body:has(.report-workspace):after{content:"Grading card software by Hispeed Racing Team";z-index:10;color:#64748b;text-align:center;letter-spacing:0;font-size:8px;font-weight:800;line-height:1;display:block;position:fixed;bottom:5mm;left:10mm;right:10mm}.report-header{border-bottom:1px solid #d1d5db;margin-bottom:10px;padding-bottom:8px}.report-header h1{font-size:20px}.report-header p{font-size:10px}.report-grid{display:block}.report-cockpit-hero{grid-template-columns:86px 132px minmax(0,1fr) minmax(0,1fr);margin-bottom:8px;padding:8px}.report-status-block,.report-cockpit-actions{grid-column:auto}.report-cockpit-layout,.report-center-stage,.report-tab-panels,.report-evidence-sections,.report-certificate-grid{display:block}.report-cockpit.without-print-certificate [data-report-panel=certificate],.report-cockpit.without-print-evidence [data-report-panel=evidence],.report-cockpit.without-print-evidence .report-evidence-block,.report-cockpit.without-print-surface-map .surface-report-map,.report-cockpit.without-print-surface-map .surface-report-summary,.report-cockpit.without-print-internal-notes .report-internal-note{display:none!important}.report-tab-panel,.report-tab-panel.is-hidden{break-inside:auto;page-break-inside:auto;margin-bottom:8px;display:block!important}.report-tab-panel+.report-tab-panel{break-before:page;page-break-before:always}.report-tab-panel>*+*,.report-evidence-sections>*+*,.report-certificate-grid>*+*{margin-top:8px}.report-panel-header{break-after:avoid;page-break-after:avoid;margin-bottom:0;padding:8px}.report-panel-header .control-button{display:none!important}.report-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none;border-color:#d1d5db;border-radius:6px;margin-bottom:8px;padding:10px}.category-report-card,.evidence-report-card{break-inside:auto;page-break-inside:auto}.report-cockpit-hero,.report-overview-card,.report-brand-lockup,.category-report-heading,.category-comment-box,.category-detail-block,.measurement-report-snapshot-card,.report-stat-grid,.report-table,.report-image-tile,.surface-side-report,.certificate-main,.certificate-brand-lockup,.certificate-qr{break-inside:avoid;page-break-inside:avoid}.report-card>h2,.category-detail-block h3{break-after:avoid;page-break-after:avoid}.report-card h2{margin-bottom:7px;font-size:12px}.report-card.certificate{grid-template-columns:1fr auto;margin-bottom:10px}.certificate strong{font-size:44px}.report-logo-mark{width:24px;height:24px}.certificate-logo-mark{width:34px;height:34px}.certificate-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.final-review-layout,.report-image-grid,.category-report-heading,.surface-report-map{grid-template-columns:repeat(2,minmax(0,1fr))}.category-report-card{gap:8px}.category-report-heading{align-items:center;gap:10px;padding-bottom:8px}.category-report-heading>div:first-child>span,.category-comment-box p,.surface-report-summary{font-size:9px}.category-report-score{justify-items:end;padding:7px 8px}.category-report-score strong{font-size:24px}.category-comment-box{padding:8px}.category-report-body{gap:8px}.review-check-row{min-height:34px;padding:0 8px;font-size:10px}.issue-list{max-height:none;overflow:visible}.report-image-tile{grid-template-columns:76px minmax(0,1fr)}.report-image-preview,.report-image-placeholder{height:92px}.score-report-row{min-height:100px;padding:8px}.score-report-head strong{font-size:22px}.report-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-stat-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.measurement-report-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.measurement-report-snapshot-preview{height:190px}.measurement-report-snapshot-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.report-table{font-size:9px}.report-table tr{break-inside:avoid;page-break-inside:avoid}.report-table th,.report-table td{padding:4px 5px}.report-severity{min-width:54px;padding:2px 5px;font-size:8px}.surface-cell-list{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}.surface-card-map{width:118px}.surface-card-map-grid span{font-size:5px}.surface-cell-list span{min-height:38px;padding:4px}.report-photo-grid{break-inside:auto;page-break-inside:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.report-photo{break-inside:avoid;page-break-inside:avoid;grid-template-columns:72px minmax(0,1fr);min-height:88px}.report-photo-preview{min-height:88px}.report-photo-preview img,.report-photo-preview .defect-texture{display:block}.report-photo-caption{padding:6px}.score-report-row p,.surface-report p,.report-photo-caption p{font-size:9px}}.pdf-report-document{display:none}@media print{@page{size:A4;margin:0}html,body,#root{background:#fff;width:210mm;min-width:0;margin:0}body:has(.pdf-report-document):after{content:none;display:none}.workbench,.workspace-layout,.workspace-layout.is-full-width,.main-workspace{background:#fff;min-height:0;padding:0;display:block;overflow:visible}.report-workspace{display:none!important}.pdf-report-document{color:#111827;letter-spacing:0;background:#fff;width:210mm;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:block!important}.pdf-report-document *{box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}.pdf-page{break-after:auto;page-break-after:auto;background:#fff;width:210mm;min-height:286mm;padding:10mm 12mm 15mm;position:relative}.pdf-page+.pdf-page{break-before:page;page-break-before:always}.pdf-page-body{align-content:start;gap:5mm;display:grid}.pdf-page-footer{color:#64748b;text-align:center;border-top:.2mm solid #d8e0ea;padding-top:2mm;font-size:7.5pt;font-weight:800;line-height:1.2;position:absolute;bottom:5mm;left:12mm;right:12mm}.pdf-cover-header,.pdf-section-title,.pdf-cover-summary,.pdf-two-column,.pdf-block,.pdf-comment-card,.pdf-measurement-image,.pdf-surface-map,.pdf-evidence-card,.pdf-certificate-card,.pdf-card-image,.pdf-table tr{break-inside:avoid;page-break-inside:avoid}.pdf-cover-header{border-bottom:.3mm solid #cbd5e1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8mm;padding-bottom:5mm;display:grid}.pdf-brand-lockup{align-items:center;gap:3.5mm;min-width:0;display:flex}.pdf-brand-lockup strong,.pdf-document-meta strong,.pdf-field strong,.pdf-comment-card strong,.pdf-evidence-copy strong,.pdf-certificate-card header strong{overflow-wrap:anywhere}.pdf-brand-lockup strong{color:#0f172a;font-size:15pt;line-height:1.05;display:block}.pdf-brand-lockup span:not(.pdf-logo-mark),.pdf-document-meta span,.pdf-document-meta small,.pdf-section-title span,.pdf-field span,.pdf-card-image figcaption,.pdf-measurement-image figcaption span,.pdf-evidence-copy small{color:#64748b;font-size:8pt;font-weight:800;line-height:1.25}.pdf-logo-mark{color:#111827;background:#fff;border:.35mm solid #111827;border-radius:2mm;flex:none;place-items:center;width:13mm;height:13mm;font-size:8pt;font-weight:900;line-height:1;display:grid;overflow:hidden}.pdf-logo-mark img{object-fit:contain;width:100%;height:100%;padding:1mm;display:block}.pdf-document-meta{text-align:right;justify-items:end;gap:1mm;min-width:42mm;display:grid}.pdf-document-meta strong{color:#2563eb;font-size:10pt}.pdf-cover-summary{grid-template-columns:58mm 32mm minmax(0,1fr);align-items:stretch;gap:5mm;display:grid}.pdf-cover-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:3mm;display:grid}.pdf-card-image,.pdf-measurement-image,.pdf-surface-map{gap:1.8mm;min-width:0;margin:0;display:grid}.pdf-card-image>div,.pdf-measurement-image>div,.pdf-surface-map-card,.pdf-evidence-image{background:#111827;border:.25mm solid #cbd5e1;border-radius:1.8mm;place-items:center;display:grid;overflow:hidden}.pdf-card-image>div{height:68mm}.pdf-card-image img,.pdf-measurement-image img,.pdf-surface-map-card img,.pdf-evidence-image img{object-fit:contain;width:100%;height:100%;display:block}.pdf-card-image span,.pdf-measurement-image span,.pdf-surface-map-card span,.pdf-evidence-image span{color:#e2e8f0;text-align:center;font-size:8pt;font-weight:900}.pdf-card-image figcaption{color:#111827;text-align:center}.pdf-final-grade-block{background:#f8fbff;border:.35mm solid #bfdbfe;border-radius:2mm;align-content:center;place-items:center;gap:1mm;display:grid}.pdf-final-grade-block span{color:#64748b;font-size:8pt;font-weight:900}.pdf-final-grade-block strong{color:#111827;font-size:34pt;line-height:.95}.pdf-final-grade-block em,.pdf-grade-line span,.pdf-subgrade-table td:last-child{color:#16a34a;font-style:normal;font-weight:900}.pdf-card-fields,.pdf-field-grid,.pdf-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.3mm;min-width:0;display:grid}.pdf-field-grid.compact{grid-template-columns:1fr}.pdf-stat-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.pdf-field{background:#f8fafc;border:.25mm solid #d8e0ea;border-radius:1.6mm;gap:.8mm;min-width:0;padding:2mm;display:grid}.pdf-field.is-wide{grid-column:1/-1}.pdf-field strong{color:#111827;font-size:9.2pt;line-height:1.18}.pdf-two-column{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:4mm;display:grid}.pdf-block{background:#fff;border:.25mm solid #d8e0ea;border-radius:2mm;gap:2.7mm;min-width:0;padding:3.5mm;display:grid}.pdf-block h3,.pdf-comment-summary h3,.pdf-grade-line h3{color:#111827;margin:0;font-size:11pt;line-height:1.15}.pdf-table{border-collapse:collapse;color:#111827;width:100%;font-size:8pt;line-height:1.25}.pdf-table th,.pdf-table td{vertical-align:top;text-align:left;border:.2mm solid #d8e0ea;padding:1.8mm 2mm}.pdf-table th{color:#475569;background:#f1f5f9;font-weight:900}.pdf-subgrade-table td:nth-child(2){color:#111827;text-align:right;width:16mm;font-size:12pt;font-weight:900}.pdf-comment-summary{gap:2.8mm;min-width:0;display:grid}.pdf-comment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3mm;display:grid}.pdf-comment-card{background:#f8fafc;border:.25mm solid #d8e0ea;border-radius:2mm;gap:2mm;min-width:0;padding:3mm;display:grid}.pdf-comment-card div{justify-content:space-between;align-items:baseline;gap:3mm;display:flex}.pdf-comment-card strong{color:#111827;font-size:10pt}.pdf-comment-card span{color:#2563eb;white-space:nowrap;font-size:8pt;font-weight:900}.pdf-paragraph,.pdf-comment-card p,.pdf-draft-note span,.pdf-certificate-card p,.pdf-certificate-card small{color:#475569;overflow-wrap:anywhere;margin:0;font-size:9pt;line-height:1.38}.pdf-draft-note{color:#9a3412;background:#fff7ed;border:.3mm solid #fed7aa;border-radius:2mm;justify-content:space-between;align-items:center;gap:4mm;padding:3mm;display:flex}.pdf-draft-note strong{font-size:10pt}.pdf-section-title{border-bottom:.3mm solid #cbd5e1;gap:1mm;padding-bottom:4mm;display:grid}.pdf-section-title h2{color:#111827;margin:0;font-size:20pt;line-height:1.05}.pdf-measurement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4mm;display:grid}.pdf-measurement-image>div{height:78mm}.pdf-measurement-image figcaption{justify-content:space-between;align-items:baseline;gap:3mm;display:flex}.pdf-measurement-image figcaption strong{color:#111827;font-size:9pt}.pdf-grade-line{grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:2.5mm;display:grid}.pdf-grade-line strong{color:#111827;font-size:19pt;line-height:1}.pdf-grade-line span{white-space:nowrap;font-size:8pt}.pdf-severity{text-transform:uppercase;white-space:nowrap;border-radius:20mm;justify-content:center;align-items:center;min-width:18mm;padding:.8mm 1.8mm;font-size:6.8pt;font-weight:900;display:inline-flex}.pdf-inspection-table th:first-child,.pdf-inspection-table td:first-child{width:15mm}.pdf-inspection-table th:nth-child(2),.pdf-inspection-table td:nth-child(2){width:28mm}.pdf-inspection-table th:nth-child(3),.pdf-inspection-table td:nth-child(3){width:24mm}.pdf-inspection-table th:nth-child(4),.pdf-inspection-table td:nth-child(4){width:35mm}.pdf-surface-map-grid-wrap{break-inside:avoid;page-break-inside:avoid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4mm;display:grid}.pdf-surface-map{justify-items:center}.pdf-surface-map-card,.pdf-surface-map-grid{grid-area:1/1}.pdf-surface-map-card{aspect-ratio:63/88;width:63mm;position:relative}.pdf-surface-map-card.has-image img{object-fit:cover}.pdf-surface-map-grid{z-index:2;aspect-ratio:63/88;grid-template-rows:repeat(24,1fr);grid-template-columns:repeat(12,1fr);width:63mm;display:grid;position:relative}.pdf-surface-map-grid span{color:#0000;border-bottom:.2mm solid #06b6d46b;border-right:.2mm solid #06b6d46b;place-items:center;font-size:5pt;font-weight:900;display:grid}.pdf-surface-map-grid span:nth-child(12n){border-right:0}.pdf-surface-map-grid span:nth-last-child(-n+12){border-bottom:0}.pdf-surface-map-grid span.is-selected{border:.35mm solid rgba(var(--surface-marker-rgb), var(--surface-marker-opacity));color:var(--surface-marker-contrast);background:rgba(var(--surface-marker-rgb), calc(var(--surface-marker-opacity) * .72))}.pdf-surface-map-grid.marker-red{--surface-marker-rgb:239, 68, 68;--surface-marker-contrast:#fff}.pdf-surface-map-grid.marker-amber{--surface-marker-rgb:245, 158, 11;--surface-marker-contrast:#111827}.pdf-surface-map-grid.marker-cyan{--surface-marker-rgb:6, 182, 212;--surface-marker-contrast:#06202a}.pdf-surface-map-grid.marker-lime{--surface-marker-rgb:132, 204, 22;--surface-marker-contrast:#102008}.pdf-surface-map-grid.marker-white{--surface-marker-rgb:255, 255, 255;--surface-marker-contrast:#111827}.pdf-surface-map-grid.marker-black{--surface-marker-rgb:17, 24, 39;--surface-marker-contrast:#fff}.pdf-cell-chip-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:2mm;display:grid}.pdf-cell-chip-grid span{background:#f8fafc;border:.25mm solid #d8e0ea;border-radius:1.6mm;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.5mm 1.8mm;min-width:0;padding:1.8mm;display:grid}.pdf-cell-chip-grid b{color:#fff;background:#2563eb;border-radius:50%;grid-row:span 2;place-items:center;width:5.5mm;height:5.5mm;font-size:7pt;line-height:1;display:grid}.pdf-cell-chip-grid strong,.pdf-cell-chip-grid em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pdf-cell-chip-grid strong{color:#111827;font-size:8pt}.pdf-cell-chip-grid em{color:#64748b;font-size:7pt;font-style:normal;font-weight:800}.pdf-evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3.2mm;display:grid}.pdf-evidence-card{background:#f8fafc;border:.25mm solid #d8e0ea;border-radius:2mm;grid-template-columns:28mm minmax(0,1fr);min-width:0;min-height:34mm;display:grid;overflow:hidden}.pdf-evidence-image{border:0;border-radius:0;min-height:34mm;position:relative}.pdf-evidence-image img{object-fit:cover}.pdf-evidence-image b{color:#fff;background:#ef4444;border-radius:50%;place-items:center;width:6mm;height:6mm;font-size:7pt;font-weight:900;line-height:1;display:grid;position:absolute;top:1.5mm;left:1.5mm}.pdf-evidence-copy{align-content:start;gap:1.2mm;min-width:0;padding:2.3mm;display:grid}.pdf-evidence-copy strong{color:#111827;font-size:8.5pt;line-height:1.18}.pdf-evidence-copy p{color:#475569;overflow-wrap:anywhere;margin:0;font-size:7.8pt;line-height:1.3}.pdf-certificate-layout{gap:5mm;display:grid}.pdf-certificate-card{background:#fff;border:.35mm solid #cbd5e1;border-radius:2.5mm;overflow:hidden}.pdf-certificate-card header{border-bottom:.25mm solid #d8e0ea;align-items:center;gap:3mm;padding:4mm 5mm;display:flex}.pdf-certificate-card header .pdf-logo-mark{width:10mm;height:10mm}.pdf-certificate-card header strong{color:#111827;font-size:12pt}.pdf-certificate-body{grid-template-columns:38mm minmax(0,1fr) 34mm;align-items:center;gap:5mm;padding:6mm 5mm;display:grid}.pdf-certificate-body>div:first-child span,.pdf-certificate-body em{color:#64748b;font-size:8pt;font-style:normal;font-weight:900;display:block}.pdf-certificate-body>div:first-child strong{color:#111827;font-size:34pt;line-height:.95;display:block}.pdf-certificate-body h3{color:#111827;overflow-wrap:anywhere;margin:0 0 1.5mm;font-size:15pt;line-height:1.1}.pdf-certificate-body small{margin-top:.8mm;display:block}.pdf-certificate-body svg{width:32mm;height:32mm;display:block}.pdf-certificate-card>footer{color:#fff;text-align:center;background:#2563eb;padding:3mm 5mm;font-size:9pt;font-weight:900}}
