@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";
:root{--bg:#f7f8fb;--panel:#fff;--panel-2:#fbfcff;--ink:#111827;--muted:#667085;--accent:#2563eb;--good:#07815c;--warn:#b54708;--danger:#b42318;--border:#e4e7ec;--shadow:0 10px 30px #10182812;--radius:18px}*{box-sizing:border-box}body{color:var(--ink);background:#f7f8fb;margin:0;font-family:Inter,Arial,sans-serif}a{color:inherit}h1,h2,h3{letter-spacing:-.03em;margin:0 0 8px}h1{font-size:clamp(32px,4vw,52px);line-height:1}h2{font-size:23px}p{line-height:1.55}.appShell{grid-template-columns:282px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--border);background:#ffffffe6;height:100vh;padding:22px;position:sticky;top:0;overflow:auto}.sidebar.platform{color:#fff;background:#0b1020;border-right:0}.brandBlock{align-items:center;gap:12px;margin-bottom:22px;display:flex}.brandBlock b,.brandBlock span{display:block}.brandBlock span{color:var(--muted);margin-top:3px;font-size:12px}.platform .brandBlock span{color:#aab4cf}.logoMark{color:#fff;background:#1d4ed8;border-radius:13px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.logoMark.dark{background:#334155}.navGroup{gap:4px;margin:0 0 16px;display:grid}.navGroup small{color:#98a2b3;text-transform:uppercase;letter-spacing:.12em;padding:0 12px 3px;font-size:10px;font-weight:800}nav{gap:6px;display:grid}nav a{color:#344054;border-radius:11px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:650;text-decoration:none;display:flex}.platform nav a{color:#dbe4ff}nav a:hover{color:#174ea6;background:#eef4ff}.platform nav a:hover{color:#fff;background:#ffffff1a}.content{min-width:0}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#ffffffd1;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex;position:sticky;top:0}.topbar h2{margin:0;font-size:18px}.platformTop{color:#fff;background:#0b1020f0;border:0}.eyebrow{text-transform:uppercase;color:var(--muted);letter-spacing:.12em;font-size:11px;font-weight:800}main{width:100%;max-width:none;padding:34px}.pageHeader{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.pageHeader p{color:var(--muted);max-width:760px;margin:8px 0 0}.headerActions,.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.grid{gap:18px;display:grid}.stats,.kpiRow{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;display:grid}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:0 1px 2px #10182808}.kpi{min-height:116px}.kpiLink{text-decoration:none}.softCard{background:var(--panel-2);border:1px solid var(--border);border-radius:16px;padding:16px}.metric{letter-spacing:-.04em;font-size:34px;font-weight:850}.muted{color:var(--muted)}.btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:12px;align-items:center;gap:8px;min-height:42px;padding:11px 16px;font-weight:750;text-decoration:none;display:inline-flex}.btn.secondary{color:#1d4ed8;background:#eef4ff}.btn.danger{background:var(--danger)}.btn.good{background:var(--good)}input,select,textarea{border:1px solid var(--border);width:100%;font:inherit;background:#fff;border-radius:12px;padding:12px 13px}label{color:#344054;font-size:13px;font-weight:700}.formgrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.tableWrap{border:1px solid var(--border);background:#fff;border-radius:16px;overflow:auto}.table{border-collapse:collapse;width:100%;min-width:760px}.table th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f8fafc;font-size:12px}.table th,.table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:14px}.status,.chip,.pill{color:#344054;background:#f2f4f7;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.status{color:#067647;background:#ecfdf3}.chip.blue{color:#1d4ed8;background:#eef4ff}.sections{flex-wrap:wrap;gap:8px;display:flex}.section{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:999px;padding:9px 13px}.section.active{color:#fff;background:#111827}.empty{text-align:center;border:1px dashed var(--border);background:#fff;border-radius:20px;padding:32px 20px}.emptyIcon{width:44px;height:44px;color:var(--accent);background:#eef4ff;border-radius:14px;place-items:center;margin:0 auto 10px;font-weight:900;display:grid}.drop{border:2px dashed var(--border);text-align:center;background:#fbfcff;border-radius:18px;margin:12px 0;padding:24px}pre{white-space:pre-wrap;color:#d7e1ff;background:#0b1020;border-radius:14px;max-height:420px;padding:16px;overflow:auto}.report-hero{color:#fff;border-radius:24px;margin-bottom:22px;padding:34px}.calendarGrid{background:var(--border);border:1px solid var(--border);border-radius:18px;grid-template-columns:repeat(7,minmax(120px,1fr));gap:1px;display:grid;overflow:hidden}.calendarDay{background:#fff;min-height:142px;padding:12px}.event{color:#1d4ed8;background:#eef4ff;border-left:3px solid #93c5fd;border-radius:10px;margin-top:8px;padding:8px;font-size:12px;font-weight:700}.split{grid-template-columns:1.2fr .8fr;gap:18px;display:grid}.hero{max-width:1180px;margin:auto;padding:64px 34px}.heroPanel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:30px;padding:44px}.galleryPane,.reviewPane{gap:18px;display:grid}.photoGrid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.photoCard{appearance:none;text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:18px;padding:0;overflow:hidden}.photoCard:hover,.photoCard.selected{border-color:#93c5fd;box-shadow:0 0 0 4px #dbeafe}.photoCard img{aspect-ratio:4/3;object-fit:cover;background:#eef2f7;width:100%}.photoMeta{color:var(--muted);gap:6px;padding:12px;font-size:12px;display:grid}.imageReviewFrame{touch-action:none;background:#0b1020;border-radius:20px;place-items:center;min-height:420px;display:grid;position:relative;overflow:hidden}.imageReviewFrame img{object-fit:contain;max-width:100%;max-height:72vh;display:block}.imageReviewFrame svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.sidePanel{gap:16px;max-height:calc(100vh - 120px);display:grid;position:sticky;top:96px;overflow:auto}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.tab{border:1px solid var(--border);background:#fff;border-radius:999px;padding:9px 13px;font-weight:700;text-decoration:none}.tab.active{color:#fff;background:#111827}.profileGrid{grid-template-columns:320px minmax(0,1fr);gap:18px;display:grid}.focusRing:focus,button:focus,a:focus,input:focus,select:focus,textarea:focus{outline-offset:2px;outline:3px solid #bfdbfe}@media (max-width:980px){.appShell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;position:relative}.sidebar nav{gap:14px;display:flex;overflow:auto}.navGroup{min-width:max-content}.topbar{height:auto;padding:18px;position:relative}.pageHeader{display:block}.split,.photoWorkspace,.profileGrid{grid-template-columns:1fr}main{padding:20px}.calendarGrid{grid-template-columns:1fr}.calendarDay{min-height:auto}.btn{min-height:46px}.card{padding:18px}.sidePanel{max-height:none;position:relative;top:auto}.imageReviewFrame{min-height:280px}.photoGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.photoWorkspace{grid-template-columns:minmax(320px,.9fr) minmax(520px,1.35fr);align-items:start;gap:18px;display:grid}.galleryPane,.reviewPane{min-width:0}.photoGrid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:14px;display:grid}.photoCard{border:1px solid var(--border);text-align:left;background:#fff;border-radius:16px;padding:10px;box-shadow:0 1px 2px #10182808}.photoCard.selected{border-color:#2563eb;box-shadow:0 0 0 3px #dbeafe}.photoThumb{aspect-ratio:4/3;cursor:pointer;background:#f2f4f7;border:0;border-radius:12px;width:100%;padding:0;display:block;overflow:hidden}.photoThumb img,.photoCard img{object-fit:cover;width:100%;height:100%;display:block}.photoMeta{color:#667085;gap:6px;margin-top:10px;font-size:12px;display:grid}.photoMeta b{color:#111827;font-size:13px}.selectedPhotoCard{padding:16px}.reviewCanvasShell{gap:12px;display:grid}.annotationToolbar{border:1px solid var(--border);background:#fbfcff;border-radius:16px;padding:12px}.annotationToolbar .formgrid{margin-top:10px}.imageReviewFrame{touch-action:none;background:#101828;border-radius:18px;place-items:center;min-height:440px;max-height:68vh;display:grid;position:relative;overflow:hidden}.zoomSurface{transform-origin:50%;max-width:100%;max-height:100%;transition:transform 80ms;position:relative}.zoomSurface img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:64vh;display:block}.zoomSurface svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.imageState{z-index:3;text-align:center;color:#fff;background:#101828b8;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.imageState.error{gap:14px}.brokenPhoto{text-align:center;color:#667085;place-items:center;height:100%;padding:14px;display:grid}.sidePanel{gap:14px;display:grid;position:sticky;top:94px}.manualFinding{margin-top:14px}.sections.compact{margin-top:12px}.sections.compact .section span{opacity:.75;margin-left:4px}.chip.danger{color:#b42318;background:#fef3f2}.chip.warn{color:#b54708;background:#fff7ed}.photoDetailsGrid{gap:8px;display:grid}@media (max-width:1180px){.photoWorkspace{grid-template-columns:1fr}.sidePanel{position:relative;top:auto}.imageReviewFrame{min-height:360px}.zoomSurface img{max-height:56vh}}@media (max-width:620px){.photoGrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.imageReviewFrame{min-height:300px;max-height:55vh}.annotationToolbar .formgrid{grid-template-columns:1fr}.selectedPhotoCard>.row{display:grid}.sidePanel .sections{flex-wrap:nowrap;overflow:auto}.sidePanel .section{white-space:nowrap}}
