:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f6f3;--surface:#fff;--surface-sunken:#eeede9;--border:#dedcd5;--text:#1a1815;--text-secondary:#56524a;--text-muted:#726e64;--action:#305178;--action-hover:#294260;--accent:#c17e1e;--success:#2e7d52}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);letter-spacing:0;font-family:IBM Plex Sans,Segoe UI,Arial,sans-serif}button,input,textarea,select{font:inherit}a{color:inherit}.shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:#fff;padding:24px 18px}.brand{align-items:center;gap:10px;margin-bottom:34px;font-family:Figtree,Segoe UI,Arial,sans-serif;font-size:21px;font-weight:700;display:flex}.brandMark{background:var(--accent);border-radius:999px;width:13px;height:13px;display:inline-block}.nav{gap:6px;display:grid}.navItem{color:var(--text-secondary);border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:0 12px;text-decoration:none;display:flex}.navItem.active{color:var(--action);background:#eff3f8;font-weight:600}.content{padding:32px}.topbar{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.topbarActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.eyebrow,.summaryLabel,.meta{color:var(--text-muted);margin:0;font-size:13px;font-weight:600}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-family:Figtree,Segoe UI,Arial,sans-serif;font-size:32px;line-height:40px}h2{margin-bottom:0;font-family:Figtree,Segoe UI,Arial,sans-serif;font-size:21px;line-height:30px}h3{margin-bottom:4px;font-size:16px;line-height:24px}.primaryButton{background:var(--action);color:#fff;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.primaryButton:hover{background:var(--action-hover)}.secondaryButton{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.secondaryButton:hover{background:var(--surface-sunken)}.environmentBadge{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:inline-flex}.environmentBadge-local{border-color:#b9c7d8}.environmentBadge-staging{border-color:#dfbf84}.environmentBadge-production{border-color:#b8d9c4}.environmentDot{background:var(--action);border-radius:999px;flex:none;width:9px;height:9px}.environmentBadge-staging .environmentDot{background:var(--accent)}.environmentBadge-production .environmentDot{background:var(--success)}.environmentText{gap:1px;min-width:0;display:grid}.environmentText strong{font-size:12px;line-height:16px}.environmentText small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:11px;font-weight:600;line-height:14px;overflow:hidden}.notice{color:#4e2f0b;background:#fcf5e9;border:1px solid #f0cd8c;border-radius:10px;margin-bottom:20px;padding:12px 14px;font-weight:600}.formError{color:#7b2020;background:#fbebeb;border:1px solid #e7b9b9;border-radius:8px;margin:0;padding:10px 12px;font-weight:600}.formSuccess{color:#234735;background:#f0f7f2;border:1px solid #b8d9c4;border-radius:8px;margin:0;padding:10px 12px;font-weight:600}.loginShell{justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.loginPanel{background:var(--surface);border:1px solid var(--border);border-radius:10px;width:100%;max-width:430px;padding:28px}.loginBrand{margin-bottom:16px}.loginPanel .environmentBadge{margin-bottom:24px}.loginHeader{align-items:center;gap:12px;margin-bottom:22px;display:flex}.loginHeader svg{color:var(--action)}.loginForm{gap:14px;display:grid}.formLink{color:var(--action);font-size:14px;font-weight:600;text-decoration:none}.formLink:hover{color:var(--action-hover)}.summaryGrid,.formGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.summaryBox,.panel,.formPanel{background:var(--surface);border:1px solid var(--border);border-radius:10px}.summaryBox{align-items:center;gap:14px;padding:16px;display:flex}.summaryBox strong{font-size:22px;line-height:28px;display:block}.summaryIcon{color:var(--action);background:#eff3f8;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.summaryIcon.success{color:var(--success);background:#e8f2ec}.formPanel{align-content:start;gap:12px;padding:16px;display:grid}.formPanel label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.formPanel input,.formPanel select,.formPanel textarea,.reportEditFields input,.reportEditFields select,.reportEditFields textarea,.uploadForm input,.uploadForm select{border:1px solid var(--border);color:var(--text);letter-spacing:0;background:#fff;border-radius:6px;width:100%;min-height:44px;padding:0 10px}.uploadForm input[type=file]{align-items:center;padding:9px 10px;display:flex}.formPanel textarea,.reportEditFields textarea{resize:vertical;padding:10px}.formPanel input:focus,.formPanel select:focus,.formPanel textarea:focus,.reportEditFields input:focus,.reportEditFields select:focus,.reportEditFields textarea:focus,.uploadForm input:focus,.uploadForm select:focus{border-color:var(--action);outline:3px solid #30517833}.panel{overflow:hidden}.panelHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.panelTitle{align-items:center;gap:10px;display:flex}.panelTitle svg{color:var(--action)}.meta{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,Consolas,monospace}.reportList{display:grid}.emptyState{color:var(--text-muted);padding:18px}.emptyState.compact{padding:8px 0 0}.snapshotPanel,.mediaPanel{margin-top:20px}.snapshotList{display:grid}.snapshotRow{grid-template-columns:minmax(0,1fr) auto minmax(220px,.8fr);align-items:start;gap:16px;padding:18px;display:grid}.snapshotRow+.snapshotRow{border-top:1px solid var(--border)}.snapshotRow p{color:var(--text-secondary);margin-bottom:0}.snapshotFiles{gap:8px;display:grid}.archiveReportForm{margin-top:14px;display:flex}.archiveReportForm .secondaryButton{width:100%}.snapshotFile{grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;gap:8px;display:grid}.snapshotLink{border:1px solid var(--border);border-radius:8px;gap:3px;padding:10px;text-decoration:none;display:grid}.snapshotLink:hover{background:var(--surface-sunken)}.iconButton{background:var(--surface);border:1px solid var(--border);color:var(--action);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:44px;height:100%;min-height:44px;display:inline-flex}.iconButton:hover{background:#eff3f8}.approvalLinkList{border-top:1px solid var(--border);gap:6px;margin-top:4px;padding-top:8px;display:grid}.approvalLinkRow{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:10px;display:flex}.approvalLinkRow div{gap:2px;min-width:0;display:grid}.approvalLinkRow strong{color:var(--text);overflow-wrap:anywhere;font-size:13px}.teamPanel,.settingsPanel,.activityPanel{margin-bottom:20px}.inlineNotice{border-width:0 0 1px;border-radius:0;margin-bottom:0}.teamLayout{grid-template-columns:minmax(0,1fr) 360px;gap:0;display:grid}.teamList{display:grid}.teamRow{grid-template-columns:minmax(0,1fr) auto minmax(120px,auto) minmax(150px,auto);align-items:center;gap:14px;min-height:74px;padding:14px 18px;display:grid}.teamRow+.teamRow{border-top:1px solid var(--border)}.teamRow p{color:var(--text-secondary);overflow-wrap:anywhere;min-width:0;margin-bottom:0}.teamRole{color:var(--action);background:#eff3f8;border:1px solid #d7e0eb;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:700}.teamRoleForm{justify-items:end;gap:6px;display:grid}.teamRoleAction{border:1px solid var(--border);color:var(--action);cursor:pointer;letter-spacing:0;white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:142px;min-height:38px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.teamRoleAction:hover:not(:disabled){background:var(--surface-sunken)}.teamRoleAction:disabled{color:var(--text-muted);cursor:not-allowed}.teamRoleFeedback{text-align:right;font-size:12px;font-weight:700}.teamRoleFeedback.success{color:#234735}.teamRoleFeedback.error{color:#7b2020}.teamCreateForm{border-left:1px solid var(--border);gap:12px;padding:18px;display:grid}.teamCreateForm label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.teamCreateForm input,.teamCreateForm textarea{border:1px solid var(--border);color:var(--text);letter-spacing:0;background:#fff;border-radius:6px;width:100%;min-height:44px;padding:0 10px}.teamCreateForm textarea{resize:vertical;padding:10px}.teamCreateForm input:focus,.teamCreateForm textarea:focus{border-color:var(--action);outline:3px solid #30517833}.settingsForm{gap:16px;padding:18px;display:grid}.settingsSummary{grid-template-columns:44px repeat(5,minmax(0,1fr));align-items:center;gap:12px;display:grid}.settingsSummary>div{align-content:center;min-height:58px}.settingsFields{grid-template-columns:repeat(3,minmax(150px,1fr)) minmax(170px,auto);align-items:end;gap:12px;display:grid}.settingsFields label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.settingsFields input[type=number]{border:1px solid var(--border);color:var(--text);letter-spacing:0;background:#fff;border-radius:6px;width:100%;min-height:44px;padding:0 10px}.settingsFields input[type=number]:focus{border-color:var(--action);outline:3px solid #30517833}.settingsCheckbox{background:var(--surface-sunken);border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:8px;align-items:center;gap:9px;min-height:44px;padding:0 12px;display:inline-flex}.settingsCheckbox input{accent-color:var(--action);width:16px;height:16px}.settingsPolicyList{color:var(--text-secondary);flex-wrap:wrap;gap:8px;font-size:12px;font-weight:700;display:flex}.settingsPolicyList span{background:#eff3f8;border:1px solid #d7e0eb;border-radius:999px;min-height:28px;padding:6px 9px}.activityList{display:grid}.activityRow{grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:12px;padding:16px 18px;display:grid}.activityRow+.activityRow{border-top:1px solid var(--border)}.activityMain{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;min-width:0;display:grid}.activityMain h3{margin-bottom:3px}.activityMain p{color:var(--text-secondary);margin-bottom:0}.activityPayload{align-content:start;gap:8px;margin:0;display:grid}.activityPayload div{gap:3px;min-width:0;display:grid}.activityPayload dt{color:var(--text-muted);font-size:12px;font-weight:700}.activityPayload dd{overflow-wrap:anywhere;min-width:0;margin:0;font-family:IBM Plex Mono,Consolas,monospace;font-size:12px}.approvalLinkAction{gap:8px;display:grid}.createdApprovalLink,.inlineError{border:1px solid var(--border);border-radius:8px;grid-column:1/-1;gap:4px;padding:8px;font-size:12px;display:grid}.createdApprovalLink{color:#234735;background:#f7faf5}.createdApprovalLink a{color:var(--action);overflow-wrap:anywhere;font-family:IBM Plex Mono,Consolas,monospace}.inlineError{color:#7b241b;background:#fff4f2}.mediaList{display:grid}.mediaReport{gap:14px;padding:18px;display:grid}.mediaReport+.mediaReport{border-top:1px solid var(--border)}.mediaReportHeader{justify-content:space-between;align-items:center;gap:16px;display:flex}.mediaReportHeader p{color:var(--text-secondary);margin-bottom:0}.uploadForm{grid-template-columns:minmax(180px,1.3fr) 140px minmax(140px,1fr) minmax(160px,1fr) auto;align-items:end;gap:12px;display:grid}.uploadForm label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.photoGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.photoTile{border:1px solid var(--border);border-radius:8px;margin:0;overflow:hidden}.photoTile img{aspect-ratio:4/3;background:var(--surface-sunken);object-fit:cover;width:100%;display:block}.photoTile figcaption{gap:2px;padding:10px;display:grid}.photoTile span{color:var(--text-muted);overflow-wrap:anywhere;min-width:0;font-size:13px}.reportRow{grid-template-columns:minmax(0,1fr) auto auto 44px;align-items:center;gap:16px;min-height:76px;padding:14px 18px;display:grid}.reportRow+.reportRow{border-top:1px solid var(--border)}.reportRow p{color:var(--text-secondary);margin-bottom:0}.photoCount,.status{border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:6px 10px;font-size:13px;font-weight:600}.status{background:var(--surface-sunken);color:var(--text)}.reportDetailGrid{grid-template-columns:minmax(0,1fr) 360px;gap:20px;margin-bottom:20px;display:grid}.reportEditPanel{align-self:start}.reportEditForm{gap:14px;padding:18px;display:grid}.reportEditFields{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.reportEditFields label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.reportEditFields:disabled{opacity:.78}.wideField{grid-column:1/-1}.lockedNotice{color:#4e2f0b;background:#fcf5e9;border-bottom:1px solid #f0cd8c;align-items:center;gap:10px;padding:12px 18px;font-weight:600;display:flex}.lockedNotice.inline{border-bottom:1px solid var(--border)}.reportEvidenceRail{align-self:start;overflow:hidden}.reportEvidenceRail .panelHeader svg{color:var(--action)}.evidenceSummary{gap:0;margin:0;display:grid}.evidenceSummary div{border-bottom:1px solid var(--border);gap:4px;padding:13px 18px;display:grid}.evidenceSummary dt{color:var(--text-muted);font-size:12px;font-weight:700}.evidenceSummary dd{overflow-wrap:anywhere;min-width:0;margin:0}.latestSnapshotBox{align-items:flex-start;gap:10px;padding:16px 18px;display:flex}.latestSnapshotBox svg{color:var(--action);flex:none}.latestSnapshotBox div{gap:4px;min-width:0;display:grid}.latestSnapshotBox span{color:var(--text-muted);overflow-wrap:anywhere;font-family:IBM Plex Mono,Consolas,monospace;font-size:12px}.latestSnapshotBox.muted svg{color:var(--text-muted)}.detailSection{margin-top:20px}.detailUploadForm{border-bottom:1px solid var(--border);padding:18px}.detailPhotoGrid{padding:18px}.snapshotCreateForm{border-bottom:1px solid var(--border);gap:12px;padding:18px;display:grid}.snapshotWarning{color:#4e2f0b;background:#fcf5e9;border:1px solid #f0cd8c;border-radius:8px;margin:0;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.45}.snapshotWarning.compact{max-width:440px;margin-top:6px}.detailSnapshotRow{grid-template-columns:minmax(0,1fr) minmax(180px,.6fr) 44px}.detailSnapshotRow .approvalLinkList{grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.detailSnapshotRow .approvalLinkRow{border:1px solid var(--border);border-radius:8px;padding:8px 10px}@media (max-width:820px){.shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--border);border-right:0;padding:16px}.brand{margin-bottom:14px}.nav{grid-template-columns:repeat(3,minmax(0,1fr))}.content{padding:20px 16px}.topbar{flex-direction:column;align-items:flex-start;gap:16px}.topbarActions{justify-content:flex-start;width:100%}.environmentText small{max-width:150px}.summaryGrid,.formGrid,.reportRow,.reportDetailGrid,.reportEditFields,.teamLayout,.teamRow{grid-template-columns:1fr}.teamRoleForm{justify-items:stretch}.teamRoleAction{width:100%}.teamCreateForm{border-left:0;border-top:1px solid var(--border)}.settingsSummary,.settingsFields{grid-template-columns:1fr}.settingsCheckbox{white-space:normal;justify-content:flex-start}.activityRow,.activityMain,.snapshotRow{grid-template-columns:1fr}.snapshotFile{grid-template-columns:minmax(0,1fr) 44px}.mediaReportHeader{flex-direction:column;align-items:flex-start}.uploadForm{grid-template-columns:1fr}}.publicShell{max-width:1120px;margin:0 auto;padding:32px}.publicHeader{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.publicGrid{grid-template-columns:minmax(0,1fr) 320px;gap:16px;display:grid}.publicPanel{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px}.singlePublicPanel{max-width:520px;margin:12vh auto 0}.protocolPanel{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:18px;display:grid}.protocolPanel .detailGrid{grid-column:1/-1}.protocolIcon{color:var(--action);background:#eff3f8;border-radius:8px;justify-content:center;align-items:center;width:54px;height:54px;display:flex}.detailGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;display:grid}.detailGrid div{border-top:1px solid var(--border);min-width:0;padding-top:10px}.detailGrid dt{color:var(--text-muted);margin-bottom:4px;font-size:12px;font-weight:700}.detailGrid dd{overflow-wrap:anywhere;min-width:0;margin:0}.evidencePanel{align-content:start;gap:14px;display:grid}.evidenceItem{color:var(--text-secondary);align-items:flex-start;gap:10px;display:flex}.evidenceItem svg{color:var(--action);flex:none}.successEvidence svg{color:var(--success)}.publicDetails{gap:18px;margin-top:16px;display:grid}.publicDetails p{color:var(--text-secondary);margin-bottom:0}.privacyPage{max-width:1040px}.privacyHeader{align-items:flex-start}.privacyHeader p{color:var(--text-secondary);max-width:720px;margin:8px 0 0}.privacyGrid{grid-template-columns:minmax(0,1fr) 340px}.privacyLeadPanel{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:18px;display:grid}.privacyLeadPanel p:last-child,.privacySection p{color:var(--text-secondary);margin-bottom:0}.privacyStatusPanel{align-content:start;gap:14px;display:grid}.privacyStack{gap:16px;margin-top:16px;display:grid}.privacySection{gap:12px;display:grid}.privacySection h2{margin-bottom:0}.privacyList{color:var(--text-secondary);gap:8px;margin:0;padding-left:20px;display:grid}.privacyList li{padding-left:4px}.privacyCallout{background:#fcf5e9;border-color:#f0cd8c}.publicNoticePanel{max-width:560px;margin:10vh auto 0}.publicNoticePanel p:last-child{color:var(--text-secondary);margin-bottom:0}.approvalDecisionPanel,.submittedPanel{margin-top:16px}.decisionPanelHeader,.signatureFieldHeader{justify-content:space-between;align-items:center;gap:16px;display:flex}.decisionPanelHeader{margin-bottom:18px}.decisionPanelHeader svg{color:var(--action)}.sectionTitle{align-items:center;gap:10px;display:flex}.sectionTitle svg{color:var(--action)}.approvalForm{gap:16px;display:grid}.compactPublicForm{margin-top:18px}.approvalForm label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:600;display:grid}.approvalForm input,.approvalForm textarea{border:1px solid var(--border);color:var(--text);letter-spacing:0;background:#fff;border-radius:6px;width:100%;min-height:44px;padding:0 10px}.approvalForm textarea{resize:vertical;padding:10px}.approvalForm input:focus,.approvalForm textarea:focus,.signatureCanvas:focus{border-color:var(--action);outline:3px solid #30517833}.approvalFormGrid,.codeRow{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.codeRow{grid-template-columns:minmax(0,1fr) auto;align-items:end}.devCodeNotice{color:#4e2f0b;background:#fcf5e9;border:1px solid #f0cd8c;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.successNotice{color:#234735;background:#f0f7f2;border-color:#b8d9c4;align-items:center;gap:10px;display:flex}.devCodeNotice strong{font-family:IBM Plex Mono,Consolas,monospace;font-size:18px}.decisionOptions{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.decisionOptions legend{color:var(--text-secondary);grid-column:1/-1;margin-bottom:2px;padding:0;font-size:13px;font-weight:700}.decisionOptions label{border:1px solid var(--border);color:var(--text);border-radius:8px;align-items:center;gap:8px;min-height:46px;padding:0 12px;display:flex}.decisionOptions input,.checkboxRow input{accent-color:var(--action);width:auto;min-height:auto}.checkboxRow{align-items:flex-start;display:flex!important}.checkboxRow span{color:var(--text)}.privacyNotice{color:var(--text-secondary);margin-bottom:0;font-size:13px;line-height:20px}.privacyNotice a{color:var(--action);font-weight:600}.signatureField{gap:8px;display:grid}.signatureFieldHeader span{color:var(--text-secondary);font-size:13px;font-weight:700}.signatureCanvas{border:1px solid var(--border);touch-action:none;background:#fff;border-radius:8px;width:100%;height:180px;display:block}.submittedPanel{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:16px;display:grid}.submittedIcon{color:var(--success);background:#e8f2ec;border-radius:8px;justify-content:center;align-items:center;width:54px;height:54px;display:flex}.submittedPanel .detailGrid{margin-top:14px}.submittedPanel p:last-child{color:var(--text-secondary);margin:14px 0 0}@media (max-width:820px){.publicShell{padding:20px 16px}.publicHeader{flex-direction:column;align-items:flex-start}.publicGrid,.privacyGrid,.privacyLeadPanel,.detailGrid,.approvalFormGrid,.codeRow,.decisionOptions,.submittedPanel{grid-template-columns:1fr}}@media (min-width:821px) and (max-width:1100px){.formGrid,.uploadForm{grid-template-columns:repeat(2,minmax(0,1fr))}}
