/* Photos › Leak review (claude-opus-5-5, 2026-10-14): one job at a time, one pin per problem, every photo of that pin. */
.lr .lr-mut{color:var(--ink-3);font-size:12px}
.lr .sp{flex:1}
.lr-err{padding:10px 12px;border-radius:var(--r-card);background:var(--danger-soft);color:var(--ink)}
.lr-sum{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;font-size:13px;color:var(--ink-2)}
.lr-sum b{color:var(--ink);font-size:15px}
.lr-h-addr{color:var(--ink-3);font-weight:500}
.lr-prog{display:flex;align-items:center;gap:10px;min-width:260px}
.lr-prog-n{font-size:13px;color:var(--ink-2);white-space:nowrap}
.lr-bar{flex:1;min-width:90px;height:8px;border-radius:4px;background:var(--neutral-soft);overflow:hidden}
.lr-bar i{display:block;height:100%;background:var(--ok)}
.lr-how{font-size:13px;color:var(--ink-2)}.lr-how summary{cursor:pointer;color:var(--brand)}.lr-how p{margin:6px 0 0;max-width:900px}
/* kinds */
.k-leak{--k:#e5332a}.k-check{--k:#e39b10}.k-ns{--k:#7d8792}.k-model{--k:#2f6fd6}.k-miss{--k:#9b2fd6}
.lr-chip{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:var(--r-pill);font-size:11px;font-weight:600;color:#fff;background:var(--k,#888);vertical-align:2px;white-space:nowrap}
/* list of jobs */
.lr-jobs{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);overflow:hidden}
.lr-job{display:grid;grid-template-columns:130px minmax(160px,1.2fr) minmax(170px,1.3fr) minmax(150px,1.2fr) 110px;gap:10px;align-items:center;padding:10px 14px;border-top:1px solid var(--border-2);font-size:13px}
.lr-job:first-child{border-top:0}
.lr-job.ready{background:var(--surface)}
.lr-job:not(.ready){color:var(--ink-2)}
.lr-job-c{display:flex;flex-direction:column;min-width:0}.lr-job-c b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lr-job-s.t-ok{color:var(--ok);font-weight:600}.lr-job-s.t-warn{color:var(--warn);font-weight:600}.lr-job-s.t-brand{color:var(--brand);font-weight:600}.lr-job-s.t-mut{color:var(--ink-3)}
.lr-job-b{text-align:right}
@media (max-width:820px){.lr-job{grid-template-columns:1fr auto;grid-template-areas:"c b" "d d" "s s" "n n"}.lr-job-c{grid-area:c}.lr-job-b{grid-area:b}.lr-job-d{grid-area:d}.lr-job-s{grid-area:s}.lr-job-n{grid-area:n}}
/* one job */
.lr-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;align-items:start}
.lr-left{position:sticky;top:12px}
@media (max-width:1100px){.lr-main{grid-template-columns:1fr}.lr-left{position:static}}
.lr-3d{border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--surface)}
.lr-3d-stage{position:relative;height:min(62vh,600px);min-height:300px;background:#e8edf2;touch-action:none;user-select:none;overflow:hidden}
@media (max-width:1100px){.lr-3d-stage{height:min(46vh,420px)}}
.lr-3d-stage canvas{display:block;width:100%;height:100%}
.lr-3d-labs{position:absolute;inset:0;pointer-events:none}
.lr-b{position:absolute;left:0;top:0;margin:-11px 0 0 -11px;min-width:22px;height:22px;padding:0 5px;border-radius:11px;border:2px solid #fff;background:var(--k,#888);color:#fff;font:600 11px/18px var(--font-ui);pointer-events:auto;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.35);white-space:nowrap}
.lr-b.done{opacity:.55}
.lr-b.on{z-index:3;opacity:1;outline:2px solid #111;outline-offset:1px}
.lr-bt{display:inline-block;margin-left:6px;padding-left:6px;border-left:1px solid rgba(255,255,255,.6);font-weight:500}
.lr-3d-msg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--ink-2);font-size:13px}
.lr-3d-foot{display:flex;flex-wrap:wrap;gap:4px 12px;padding:6px 10px;font-size:11px;color:var(--ink-3);border-top:1px solid var(--line)}
.lr-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.lr-tab{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font:inherit;font-size:12px;font-weight:500;cursor:pointer}
.lr-tab.on{background:var(--brand);border-color:var(--brand);color:var(--ink-inv)}
.lr-cnt{min-width:18px;padding:0 6px;border-radius:var(--r-pill);background:var(--neutral-soft);color:var(--ink-2);font-size:11px;text-align:center}
.lr-tab.on .lr-cnt{background:color-mix(in srgb,var(--ink-inv) 25%,transparent);color:var(--ink-inv)}
.lr-right{display:flex;flex-direction:column;gap:12px;min-width:0}
.lr-card{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);padding:12px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow);scroll-margin:80px}
.lr-card.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-ring)}
.lr-card.done{background:var(--surface-2)}
.lr-card.busy{opacity:.6}
.lr-ch{display:flex;gap:10px;align-items:flex-start}
.lr-n{flex:0 0 auto;min-width:30px;height:30px;padding:0 6px;border-radius:15px;border:0;background:var(--k,#888);color:#fff;font-weight:700;font-size:13px;cursor:pointer}
.lr-tt{min-width:0;display:flex;flex-direction:column;gap:3px;font-size:13px}
.lr-t1 b{font-size:15px}
.lr-src{margin-left:8px;color:var(--ink-3);font-size:11px}
.lr-words{color:var(--ink);font-style:italic}
.lr-meta{color:var(--ink-2);font-size:12px}.lr-meta a{color:var(--brand)}
.lr-also{color:var(--ink-3);font-size:12px}
.lr-maybe{padding:4px 8px;border-radius:6px;background:var(--warn-soft);font-size:12px}
.lr-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}
.lr-ph{flex:0 0 auto;width:min(260px,72vw);scroll-snap-align:start}
.lr-cap{font-size:11px;color:var(--ink-3);margin-top:3px}
/* the picture: pin + short line + label */
.lr-pic{position:relative;line-height:0;border-radius:6px;overflow:hidden;background:var(--bg-sunken)}
.lr-pic.click{cursor:zoom-in}
.lr-pic img{display:block;width:100%;height:auto}
.lr-pic.none{display:flex;align-items:center;justify-content:center;height:160px;color:var(--ink-3);font-size:12px;line-height:1.3}
.lr-pic-bad{display:flex;align-items:center;justify-content:center;height:180px;padding:10px;color:var(--ink-3);font-size:12px;line-height:1.3;text-align:center}
.lr-lead{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lr-lead .u{stroke:rgba(0,0,0,.7);stroke-width:4}
.lr-lead .c{stroke:#fff;stroke-width:2}
.lr-pin{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--k,#e5332a);border:2px solid #fff;box-shadow:0 0 0 1.5px rgba(0,0,0,.65);pointer-events:none}
.lr-pin.approx{background:transparent;border:2px dashed #fff;box-shadow:0 0 0 1.5px var(--k,#e5332a),0 0 0 3px rgba(0,0,0,.5)}
.lr-pic.big .lr-pin{width:18px;height:18px;margin:-9px 0 0 -9px}
.lr-lab{position:absolute;max-width:70%;padding:3px 7px;border-radius:5px;background:rgba(255,255,255,.95);border-left:4px solid var(--k,#e5332a);color:#111;font:600 11px/1.3 var(--font-ui);white-space:normal;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.35)}
.lr-lab b{margin-right:5px}
.lr-lab i{font-weight:400;color:#555}
.lr-pic.big .lr-lab{font-size:14px;max-width:46%}
/* verdicts */
.lr-acts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lr .btn.sm{height:28px;padding:0 10px;font-size:12px}
.lr .btn.lr-ok{border-color:var(--ok);color:var(--ok)}.lr .btn.lr-ok:hover{background:var(--ok-soft)}
.lr .btn.lr-no{border-color:var(--danger);color:var(--danger)}.lr .btn.lr-no:hover{background:var(--danger-soft)}
.lr-verdict{padding:3px 10px;border-radius:var(--r-pill);font-size:12px;font-weight:700;color:#fff;background:var(--neutral)}
.lr-verdict.v-right{background:var(--ok)}.lr-verdict.v-wrong{background:var(--danger)}.lr-verdict.v-fix{background:var(--warn)}.lr-verdict.v-same{background:var(--info)}
.lr-note{font-size:12px;color:var(--ink-2);font-style:italic}
.lr-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:10px;border-radius:6px;background:var(--bg-sunken)}
.lr-form-b{display:flex;gap:6px;align-items:end;flex-wrap:wrap}
.lr-in{min-width:200px;flex:1;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);color:var(--ink);font:inherit}
.lr-missed,.lr-done{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);padding:12px;display:flex;flex-direction:column;gap:8px}
.lr-missed h3{margin:0;font-size:15px}
.lr-miss{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;padding:4px 0;border-top:1px solid var(--border-2)}
.lr-miss .btn{margin-left:auto}
.lr-miss-add{display:flex;gap:6px;flex-wrap:wrap}
/* the big photo */
.lr-view{position:fixed;inset:0;z-index:9999;background:rgba(10,14,18,.92);display:flex;align-items:center;justify-content:center;padding:10px}
.lr-view-in{display:flex;flex-direction:column;gap:8px;max-width:min(1500px,98vw);max-height:98vh;width:100%}
.lr-view-top,.lr-view-bot{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;color:#fff;font-size:13px}
.lr-view-top .lr-mut,.lr-view-bot .lr-mut{color:#c9d1d9}
.lr-view-pic{position:relative;align-self:center;max-width:100%}
.lr-view-pic .lr-pic{max-height:84vh}
.lr-view-pic .lr-pic img{max-height:84vh;width:auto;max-width:100%}
.lr-view-pic.placing{cursor:crosshair}
.lr-view .btn{background:#fff;color:#111;border-color:#fff}.lr-view .btn:disabled{opacity:.5}
.lr-view .btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}
