:root { --bg-body:#f6f7f8; --text-dark:#202529; --text-muted:#59646c; --border:#dce1e5; --accent:#117f9d; --accent-hover:#08667f; --card-bg:#f1f3f4; --slack:#43525b; }
.client-discussion { margin-top:10px; border-top:1px solid var(--border); padding-top:8px; }
.client-discussion summary { cursor:pointer; color:var(--accent); font-size:13px; font-weight:600; }
.client-discussion .client-comment { border-left:2px solid var(--border); padding:6px 10px; margin:10px 0; }
.client-comment-meta { display:flex; flex-wrap:wrap; gap:4px 10px; font-size:12px; color:var(--text-muted); }
.client-comment-meta time { margin-left:auto; }
.client-comment p { margin:5px 0; white-space:pre-wrap; overflow-wrap:anywhere; font-weight:400; }
.col-comment .add-client-comment { margin-top:8px; }
.client-comment-form textarea { box-sizing:border-box; width:100%; }
#appearance-settings { padding:16px 0; margin-bottom:16px; border-bottom:1px solid var(--border); }
#appearance-settings h3 { font-size:16px; margin:0 0 12px; }
#appearance-settings label { display:block; font-size:13px; margin-bottom:8px; }
#appearance-mode { width:280px; max-width:100%; min-height:42px; }
#appearance-message { color:var(--text-muted); font-size:13px; margin:8px 0 0; }
#appearance-message:empty { display:none; }
.history-status-tabs { flex-wrap:wrap; }
.verification-status { display:flex; align-items:center; gap:5px; margin-top:6px; font-size:12px; }
.verification-status svg { width:14px; height:14px; flex-shrink:0; }
.verification-status.is-complete { color:#246b49; }
.verification-status.is-progress { color:#825e1b; }
#report-inserts { position:relative; margin:28px 0 24px; padding:16px 18px; background:#e8edef; border-block:1px solid #c3ced3; border-left:3px solid #718d98; }
#report-inserts>.inserts-toolbar { position:absolute; top:16px; right:18px; margin:0; justify-content:flex-end; }
#inserts-disclosure>.inserts-heading { margin-right:510px; min-height:40px; box-sizing:border-box; }
#insert-message:empty { display:none; }
.inserts-heading { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:10px 0; cursor:pointer; list-style:none; }
.inserts-heading::-webkit-details-marker { display:none; }
.inserts-heading:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.inserts-heading>svg { width:18px; height:18px; flex-shrink:0; }
#inserts-disclosure[open]>.inserts-heading>svg { transform:rotate(90deg); }
.inserts-title { font-size:18px; font-weight:600; }
#insert-count { font-size:13px; color:#59646c; }
.inserts-toolbar { margin:10px 0 14px; }
.insert-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.insert-actions .btn { font-size:13px; min-height:40px; }
.inserts-table { width:100%; font-size:14px; }
.inserts-table td { vertical-align:top; overflow-wrap:anywhere; }
.insert-end,.inserts-table small { display:block; margin-top:6px; color:#59646c; font-size:12px; }
#insert-copy { position:relative; }
.insert-dialog { width:720px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); overflow:auto; border:1px solid #bdcbd4; border-radius:8px; padding:24px; color:#202529; }
.insert-dialog::backdrop { background:#16222b77; }
.insert-dialog h2 { font-size:20px; margin:0 0 20px; }
.insert-dialog label { display:block; font-size:13px; }
.insert-dialog input,.insert-dialog textarea { box-sizing:border-box; width:100%; min-width:0; margin:6px 0 14px; }
#insert-paste { font-family:monospace; font-size:13px; min-height:180px; white-space:pre; }
.insert-fields { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; }
#insert-message,#insert-import-error,#insert-edit-error { color:#a32626; font-size:13px; overflow-wrap:anywhere; }
@media(max-width:1000px) {
    #report-inserts>.inserts-toolbar { position:static; margin:0 0 12px; }
    #inserts-disclosure>.inserts-heading { margin-right:0; }
}
@media(max-width:760px) {
    .insert-fields { grid-template-columns:minmax(0,1fr); }
    .inserts-table tr { grid-template-columns:minmax(0,1fr) auto; }
    .inserts-table td:nth-child(3),.inserts-table td:nth-child(4) { grid-column:1/-1; }
}
.control-select { width:100%; min-width:0; font-size:12px; min-height:36px; padding:5px; }
.technical-summary { display:flex; flex-wrap:wrap; gap:12px 24px; border-block:1px solid #d3dce2; padding:12px 0; margin:0 0 20px; }
.technical-summary div { min-width:85px; max-width:100%; }
.version-date-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; min-width:0; }
.video-fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.version-date-fields .field,.video-fields .field { min-width:0; }
.video-fields .field { display:flex; flex-direction:column; justify-content:flex-end; }
.version-date-fields input,.video-fields input { width:100%; min-width:0; box-sizing:border-box; }
@media(max-width:760px) { .video-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:380px) { .video-fields { grid-template-columns:minmax(0,1fr); } }
.technical-summary dt { font-size:11px; color:#59646c; margin-bottom:4px; }
.technical-summary dd { font-size:13px; color:#25343d; margin:0; overflow-wrap:anywhere; }
.technical-summary .technical-remark-counts { margin-left:auto; flex-shrink:0; padding-left:16px; border-left:1px solid var(--border); }
.technical-summary .technical-remark-counts dd { display:flex; align-items:center; gap:7px; font-size:12px; line-height:1.6; }
.technical-remark-counts strong { min-width:3ch; text-align:center; font-variant-numeric:tabular-nums; border-radius:4px; }
.technical-remark-counts [data-status="pending"] strong { background:#e5f3e9; color:#25654d; }
.technical-remark-counts [data-status="new"] strong { background:#e7f1fa; color:#245f87; }
:root[data-theme="dark"] .technical-remark-counts [data-status="pending"] strong { background:#213e31; color:#a0e1b5; }
:root[data-theme="dark"] .technical-remark-counts [data-status="new"] strong { background:#253e52; color:#a3d9ff; }
@media(max-width:760px) {
    .technical-summary .technical-remark-counts { margin-left:0; padding:8px 0 0; border-left:0; border-top:1px solid var(--border); grid-column:1/-1; }
}
.save-recovery,#history-pagination { display:flex; gap:8px; align-items:center; margin:10px 0; }
.history-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.history-toolbar #history-search { flex:1 1 320px; min-width:0; }
#view-history #history-pagination { justify-content:flex-end; min-height:44px; margin:0; flex:0 0 auto; }
#view-history #history-pagination button { width:44px; height:44px; padding:8px; flex:0 0 44px; }
#history-pagination>span { min-width:8ch; text-align:center; font-variant-numeric:tabular-nums; }
.secondary-actions { position:relative; }
.secondary-actions summary { padding:10px 14px; border:1px solid #bac5cc; border-radius:6px; cursor:pointer; font-size:14px; background:#fff; }
.secondary-action-list { position:absolute; bottom:calc(100% + 8px); right:0; width:260px; z-index:20; background:#fff; border:1px solid #bac5cc; border-radius:6px; padding:8px; box-shadow:0 6px 20px #0002; }
.secondary-action-list .btn { width:100%; justify-content:flex-start; margin:3px 0; background:#fff !important; color:#303d45 !important; border-color:transparent; font-size:13px; }
.users-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; margin:12px 0; }
.users-filters input,.users-filters select { width:100%; min-width:0; }
:focus-visible { outline:3px solid #117f9d; outline-offset:3px; }
#notion-picker #notion-manual-profile { display:inline-block; width:18px; height:18px; margin:0 8px 0 0; vertical-align:middle; }
body:has(.modal-overlay[style*="flex"]) .actions-footer { visibility:hidden; }
@media(max-width:760px) {
    .header #logout-btn span,.header #tab-history span { display:none; }
    .header #new-sheet-btn { width:auto !important; flex:1; margin:0 !important; }
    .header .user-badge { flex-basis:100% !important; }
    .header-actions-group { gap:6px; }
    #record-kind { display:none; }
    .secondary-actions { flex:1; }
    .secondary-actions summary { min-height:42px; }
    .secondary-action-list { max-width:calc(100vw - 40px); }
}
* { letter-spacing:0 !important; }
#notion-panel { padding:12px 16px 16px; margin-bottom:24px; background:#edf2f5; border-top:1px solid #ced9e0; border-bottom:1px solid #ced9e0; }
.notion-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#notion-panel summary { cursor:pointer; font-size:15px; font-weight:600; padding:8px 0; color:#263e49; }
.notion-heading { margin:4px 0 12px; }
#notion-refresh { padding:8px; width:36px; height:36px; flex-shrink:0; }
#notion-status { margin:0; }
#notion-status,#notion-profile-info,#notion-source-label { font-size:13px; color:var(--text-muted); overflow-wrap:anywhere; }
#notion-profile-info:empty,#notion-source-label:empty { display:none; }
#notion-picker label { display:block; min-width:0; font-size:12px; }
#notion-picker input,#notion-picker select { display:block; box-sizing:border-box; width:100%; min-width:0; height:42px; margin:6px 0 12px; padding:8px 10px; font-size:14px; background:#fff; border-color:#b5c4ce; }
.notion-search-row { position:relative; }
#notion-search-status { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#notion-picker #notion-programme { display:none; }
#notion-results { position:absolute; top:100%; left:0; right:0; z-index:5; max-height:240px; overflow:auto; background:var(--bg-card, #fff); color:var(--text-dark); border:1px solid var(--border-dark); border-radius:6px; box-shadow:0 6px 16px #0002; }
#notion-results[hidden] { display:none; }
#notion-results [role="option"],#notion-results p { padding:10px 12px; margin:0; font-size:14px; overflow-wrap:anywhere; }
#notion-results [role="option"] { cursor:pointer; }
#notion-results [role="option"]:hover,#notion-results [aria-selected="true"] { background:var(--bg-hover, #e7f1f5); }
:root[data-theme="dark"] #notion-results { background:#252a2d; }
:root[data-theme="dark"] #notion-results [role="option"]:hover,:root[data-theme="dark"] #notion-results [aria-selected="true"] { background:#364b54; }
.notion-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
@media(max-width:760px) { .notion-choices,.notion-search-row { grid-template-columns:minmax(0,1fr); gap:0; } }
.remark-origin { display:block; margin-top:5px; font-size:12px; color:#59646c; font-weight:500; }
#edit-report-params { margin:0; flex-shrink:0; }
.record-title-row { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; }
.record-title-row .record-title { margin:0; min-width:0; }
.public-view .record-heading { display:none; }
.public-view .record-title-row { align-items:baseline; }
.public-view .record-title-row .record-title { flex:1 1 240px; }
.public-view #record-kind { display:block; margin-left:auto; white-space:nowrap; font-size:20px; font-weight:700; line-height:1.3; color:#11738a; }
.public-view #sync-feedback { margin:16px 0 0; padding:10px 0; }
.version-controls { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; margin:0 0 24px; }
.version-controls label { display:grid; grid-template-columns:auto minmax(0,1fr); width:340px; max-width:100%; align-items:center; gap:10px; font-size:13px; color:#59646c; }
#record-version-select { width:100%; min-width:0; min-height:40px; }
#public-version-notice { padding:12px 16px; margin:12px 0; background:#fff0dc; border-left:4px solid #b66b0a; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
#public-version-notice[hidden] { display:none; }
#public-version-notice span { flex:1 1 220px; }
#record-version-state { display:flex; align-items:center; gap:7px; font-size:13px; color:#6b5732; }
#record-version-state:empty { display:none; }
#delete-version-btn { margin-left:auto; }
.version-count { display:block; margin-top:5px; font-size:12px; color:#59646c; }
@media (max-width:760px) {
    .version-controls label { width:100%; }
    #delete-version-btn { margin-left:0; }
}
.remark-author { display:inline-block; margin-top:3px; font-size:12px; color:#59646c; }
.audio-pair-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.audio-pair-grid label { display:flex; align-items:center; gap:8px; }
.audio-pair-grid input[type=checkbox] { width:16px; height:16px; margin:0; accent-color:#168fa9; }
.audio-pair-grid input:disabled { background:#f1f3f4; color:#6b747a; }
#record-tcout { color:#59646c; font-size:13px; margin:0; white-space:nowrap; font-variant-numeric:tabular-nums; }
#record-tcout.tc-out-changed { display:flex; flex-wrap:wrap; gap:4px 10px; white-space:normal; color:#805214; font-weight:600; }
.tc-out-comparison { font-weight:500; }
@media screen { :root[data-theme="dark"] #record-tcout.tc-out-changed { color:#ffce85; } }
@media(max-width:760px) { .audio-pair-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
#remarks-table .col-seen { width:145px; overflow-wrap:anywhere; }
.public-view #remarks-table .col-seen { display:none; }
#copy-btn,#copy-share-link-btn,#export-avid-btn { position:relative; }
.copy-confirmation { position:absolute; inset:0; display:grid; place-items:center; background:#059669; color:white; border:1px solid #047857; border-radius:inherit; pointer-events:none; }
#client-add-remark { margin:0 0 12px; }
#client-return-management { width: min(560px, calc(100% - 32px)); max-height:90dvh; overflow:auto; border:1px solid #cbd5dc; border-radius:8px; padding:24px; }
#client-return-management::backdrop { background:rgba(24,32,38,.4); }
#client-return-management label { display:block; }
#client-return-management textarea { display:block; width:100%; min-height:88px; margin:8px 0 16px; }
#client-return-management .btn-group { display:flex; flex-wrap:wrap; gap:8px; }
#client-remark-dialog { width:100%; margin:0 0 16px; padding:0; }
#client-remark-dialog form { display:grid; grid-template-columns:125px minmax(0,1fr) 405px; gap:0; align-items:end; }
#client-remark-dialog label,#client-remark-dialog .btn-group { padding:0 10px; min-width:0; }
#client-remark-error { grid-column:1/-1; margin:0; }
#client-remark-dialog .btn-group { grid-column:3; grid-row:1; }
.client-comment { border-left:2px solid #1a97b5; padding-left:8px; white-space:pre-wrap; font-size:13px; }
.client-comment-form textarea { display:block; width:100%; margin:8px 0; }
.client-comment-form button { margin:4px 4px 0 0; }
@media(max-width:760px) { #client-remark-dialog form { grid-template-columns:minmax(0,1fr); } #client-remark-dialog .btn-group { grid-column:1; grid-row:auto; } }
#client-remark-dialog label { display:block; margin:0; }
#client-remark-dialog input { display:block; width:100%; min-height:44px; margin-top:5px; }
#client-remark-tc { padding-inline:6px; font-size:13px; font-variant-numeric:tabular-nums; }
.public-view #markers-list .add-client-comment { margin-left:auto; white-space:nowrap; }
@media(max-width:760px) {
    #client-remark-dialog form { row-gap:12px; }
    .public-view #markers-list .action-btns { display:grid; grid-template-columns:minmax(0,1fr) auto; }
    .public-view #markers-list .status-select { min-width:0; width:100%; }
    .public-view #markers-list .add-client-comment { flex:0 0 auto; }
    .public-view #markers-list .add-client-comment { padding:8px; }
}
@media(max-width:360px) {
    .public-view #markers-list .action-btns { grid-template-columns:minmax(0,1fr); }
}
#client-remark-error { color:#b42318; }
#markers-list td { padding:9px 10px; }
#markers-list .col-tc { width:125px; }
#markers-list .col-action { width:370px; }
#markers-list .action-btns { flex-wrap:nowrap; }
#markers-list .status-select { width:270px; }
#markers-list .remark-text { line-height:1.4; }
#remarks-table { table-layout:fixed; }
#remarks-table th.col-tc { width:125px; }
#remarks-table th.col-action { width:465px; }
#remarks-table th.col-comment { width:auto; }
#pad-form .field.full-width { display:none; }
.public-view #prepare-mail { display:none; }
#markers-list tr[data-status="pending"],#markers-list tr[data-status="pending"]>td { background:#e5f3e9; }
#markers-list tr[data-status="nocorr"],#markers-list tr[data-status="nocorr"]>td { background:#fde8e8; }
#markers-list tr[data-status="new"],#markers-list tr[data-status="new"]>td { background:#e7f1fa; }
#markers-list tr.remark-hidden { background:#eceeef; }
.audio-outside { color:#b42318 !important; border-color:#b42318 !important; }
.audio-message { font-size:12px; margin-top:4px; color:#59646c; }
.audio-settings { border-top:1px solid var(--border); padding:18px 0; }
.audio-settings h3 { font-size:16px; }
.audio-settings label { display:block; margin:10px 0; }
.audio-settings input { width:110px; margin-left:10px; }
#prepare-mail-dialog { border:1px solid var(--border); border-radius:8px; width:600px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); padding:24px; overflow:auto; color:var(--text-dark); }
#prepare-mail-dialog::backdrop { background:rgba(20,27,31,.55); }
#slack-dialog { border:1px solid var(--border); border-radius:8px; width:640px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); padding:24px; overflow:auto; color:var(--text-dark); }
#slack-dialog::backdrop { background:rgba(20,27,31,.55); }
#slack-dialog h2 { font-size:20px; }
#slack-preview { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; font-size:14px; line-height:1.5; max-height:50dvh; overflow:auto; border-block:1px solid var(--border); padding:16px 0; }
#slack-error { color:#b42318; }
#prepare-mail-dialog label { display:block; margin:12px 0; }
#prepare-mail-dialog input,#prepare-mail-dialog textarea { display:block; width:100%; margin-top:5px; }
#prepare-mail-dialog h2 { font-size:20px; }
@media(max-width:760px) {
    .record-title-row { flex-wrap:wrap; }
    #markers-list td { padding:0; }
    #markers-list .action-btns { flex-wrap:wrap; }
    #markers-list tr { padding:12px; gap:8px; }
    #markers-list .status-select { flex:1 1 100%; }
}
.audit-panel { margin-top:24px; border-top:1px solid var(--border); padding-top:16px; }
.audit-panel h3 { font-size:16px; }
#audit-list { max-height:400px; overflow:auto; }
.audit-event { padding:12px 0; border-bottom:1px solid var(--border); font-size:12px; overflow-wrap:anywhere; }
.audit-event pre { white-space:pre-wrap; font-size:11px; }
[hidden] { display:none !important; }
body { display:block; padding:0; }
.container { max-width:1280px; margin:auto; padding:0 32px 48px; background:transparent; border-radius:0; box-shadow:none; }
.header { margin:0 -32px 36px; padding:12px 32px; background:#e8eaec; color:#30383d; gap:12px 24px; border:0; border-bottom:1px solid #d2d7da; }
.header-brand { gap:16px; flex-shrink:0; }
.logo-hw { width:140px; height:70px; object-fit:contain; border-radius:0; background:transparent; padding:0; }
.header h1 { font-size:18px; font-weight:650; color:#30383d; }
.header-actions-group { flex:1; justify-content:flex-end; gap:8px; }
.header .nav-tab,.header .btn-secondary,.settings-gear-btn { background:transparent; border:1px solid #b9c1c6; color:#37434a; border-radius:6px; }
.header .nav-tab.active { background:#fff; color:#30383d; border-color:#b9c1c6; }
.header .user-badge { background:transparent; color:#515c64; padding:4px; border:0; font-size:12px; }
#active-sheet-indicator { display:none !important; }
.header #new-sheet-btn { order:5; background:#158fae; color:white; }
.header #tab-history { order:-2; }
.header #tab-generator { order:-1; }
.view-section { min-width:0; }
.section-header-row { margin:0 0 24px; align-items:center; gap:16px; }
.section-title { font-size:24px; font-weight:650; padding:0; border:0; color:var(--text-dark); text-transform:none; }
.muted { color:var(--text-muted); font-size:14px; margin:8px 0 0; }
.btn,.nav-tab,.settings-gear-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:9px 14px; border-radius:6px; font-size:14px; font-weight:600; line-height:1.3; cursor:pointer; white-space:normal; }
button { transition:background-color .15s,border-color .15s; }
button:disabled,select:disabled { cursor:default; opacity:.65; }
button:hover { transform:none !important; }
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible { outline:3px solid #117f9d; outline-offset:3px; }
svg.lucide { width:18px; height:18px; flex-shrink:0; stroke-width:1.8; }
.btn-secondary { background:white; color:#36444d; border:1px solid #cdd5da; }
.btn-success { background:#187657; }
input,select,textarea { border-radius:6px !important; min-width:0; max-width:100%; font-size:15px; }
#history-search { max-width:520px; background:white; min-height:44px; }
.nav-tab { background:transparent; border:1px solid transparent; color:#4c5961; }
.nav-tab.active { background:#e4f1f4; color:#08667f; border-color:#9ecbd6; }
.table-container { border-radius:0; box-shadow:none; overflow-x:auto; background:#fff; border:1px solid var(--border); margin-bottom:20px; }
table { width:100%; min-width:0; border-collapse:collapse; }
td:not(:last-child),th:not(:last-child) { border-right:0; }
td { border-top:0; }
th { background:#eef1f3; color:#4b5860; font-size:12px; text-transform:none; padding:13px 16px; white-space:normal; }
td { padding:18px 16px; border-bottom:1px solid #e7ebee; vertical-align:middle; }
tbody tr:last-child td { border-bottom:0; }
.history-table-el tr { cursor:pointer; }
.history-table-el tr:hover { background:#f1f8f9; }
@media screen {
    html:has(body:not(.public-view)) { scrollbar-gutter:stable; }
}
@media screen and (min-width:761px) {
    #view-history .history-folder-view table { table-layout:fixed; }
    #view-history .history-folder-view th:nth-child(2) { width:160px; }
    #view-history .history-folder-view th:nth-child(3) { width:210px; }
    #view-history .history-folder-view th:nth-child(4) { width:144px; }
    #view-history .history-folder-view td { overflow-wrap:anywhere; }
}
#view-history .history-folder-view td:last-child:not([colspan]) { white-space:nowrap; }
#view-history .history-folder-view td:last-child .btn { width:44px; min-width:44px; height:44px; padding:8px; margin:0; }
#view-history .history-folder-view td:last-child .btn+.btn { margin-left:6px; }
@media screen and (max-width:760px) {
    .history-toolbar { flex-direction:column; align-items:stretch; gap:12px; }
    .history-toolbar #history-search { flex:0 0 auto; max-width:none; }
}
.record-open { background:none; border:0; color:#202529; text-align:left; padding:0; font-size:16px; font-weight:650; overflow-wrap:anywhere; cursor:pointer; }
.record-open:hover { color:#08667f; text-decoration:underline; }
.record-meta { display:block; margin-top:6px; font-size:12px; color:#5c6871; }
.remark-count { font-weight:650; margin-right:10px; }
.awaiting,.resolved { display:inline-block; font-size:12px; padding:4px 7px; border-radius:4px; }
.awaiting { color:#865b10; background:#fff2d4; }
.resolved { color:#25654d; background:#e8f4ee; }
.record-date { color:#59646c; font-size:13px; }
.empty-state { text-align:center; padding:52px 20px; color:#59646c; }
.record-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
#record-kind { font-size:13px; color:#59646c; }
.record-title { font-size:26px; font-weight:650; line-height:1.3; overflow-wrap:anywhere; margin-bottom:24px; }
#pad-form { padding:0 0 26px; margin-bottom:24px; border-bottom:1px solid var(--border); }
.form-grid { background:transparent; border:0; padding:0; gap:16px; grid-template-columns:180px minmax(0,1fr); }
.field label { color:#4b5860; font-size:13px; font-weight:600; }
.field input { min-height:44px; background:#fff; }
#add-marker-btn { width:auto !important; }
.col-tc { width:144px; }
th.col-action,td.col-action { width:290px; }
.action-btns { flex-wrap:wrap; gap:6px !important; justify-content:flex-start !important; }
.action-btns button { display:inline-flex; justify-content:center; align-items:center; gap:4px; padding:7px; min-width:34px; min-height:34px; border-radius:4px; }
.status-select { width:160px; min-height:36px; font-size:12px; background:#fff; color:#36444d; border:1px solid #cdd5da; }
.status-select[data-status="pending"] { background:#e5f3e9; color:#25654d; }
.status-select[data-status="new"] { background:#e5f2f6; color:#116783; }
.status-select[data-status="nocorr"] { background:#fde8e8; color:#a32626; }
.tc-display { border:1px solid #d2dbe0; color:#345563; background:#f1f5f7; border-radius:4px; padding:7px; font-size:13px; font-variant-numeric:tabular-nums; cursor:pointer; }
.remark-text { line-height:1.6; overflow-wrap:anywhere; }
.remark-hidden { background:#f0f1f2; }
.remark-hidden .remark-text { color:#65717a; }
.visibility-label { display:inline-block; margin-top:8px; font-size:12px; color:#65717a; }
.actions-footer { align-items:flex-start; gap:14px; margin-top:22px; }
.btn-group { gap:8px; flex-wrap:wrap; }
#open-verif-modal-btn { background:#435862 !important; }
#copy-btn { background:#43525b; }
.auth-card { border-radius:8px; width:420px; max-width:100%; padding:28px; max-height:calc(100dvh - 32px); overflow:auto; }
.auth-brand { background:#e7ecef; margin:-28px -28px 28px; padding:10px 28px; text-align:center; }
.auth-brand img { object-fit:contain; }
#auth-overlay { background:var(--bg-body); backdrop-filter:none; padding:24px; }
#auth-overlay .auth-card { width:400px; padding:32px; background:var(--panel-bg,#fff); border:1px solid var(--border); box-shadow:0 8px 30px #182b3910; }
#auth-overlay .auth-brand { background:transparent !important; margin:0 0 18px; padding:0; }
#auth-overlay .auth-brand img { display:block; width:184px; max-width:100%; height:92px; margin-inline:auto; }
#auth-overlay .login-title { font-size:24px; line-height:1.25; font-weight:650; letter-spacing:0; margin:0 0 28px; }
#auth-overlay #auth-form { gap:18px !important; }
#auth-overlay label { font-size:14px; font-weight:600; text-transform:none; color:var(--text-muted); letter-spacing:0; }
#auth-overlay input { height:48px; font-size:16px; padding:12px; border-radius:6px; width:100%; box-sizing:border-box; }
#auth-overlay :is(#auth-message,#recovery-message,#auth-intro):empty { display:none; }
#auth-overlay #auth-submit-btn { min-height:48px; background:#187657; font-size:15px; font-weight:600; border-radius:6px; margin-top:6px; }
#auth-overlay #forgot-password-btn { display:block; width:auto !important; margin:20px auto 0 !important; padding:10px 4px; border:0; background:transparent !important; color:var(--accent) !important; box-shadow:none; font-size:14px; min-height:44px; }
#auth-overlay .password-control { position:relative; }
#auth-overlay #auth-password { padding-right:48px; }
#auth-overlay .password-toggle { position:absolute; right:2px; top:2px; display:grid; place-items:center; width:44px; height:44px; background:transparent !important; border:0; color:var(--text-muted) !important; cursor:pointer; border-radius:4px; }
#auth-overlay .password-toggle svg { width:20px; height:20px; }
.modal-overlay { padding:16px; overflow:auto; background:rgba(20,27,31,.55); }
.modal-content { border-radius:8px !important; max-height:calc(100dvh - 32px); overflow:auto; margin:auto; }
#settings-users-panel { border:0 !important; border-top:1px solid var(--border) !important; border-radius:0 !important; background:transparent !important; padding:20px 0 0 !important; }
#settings-modal .modal-content>div[style*="background"] { background:transparent !important; border:0 !important; border-bottom:1px solid var(--border) !important; border-radius:0 !important; padding:16px 0 !important; }
#settings-users-list { max-height:none !important; overflow:visible !important; gap:12px !important; }
.user-create-grid,.user-settings-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.user-create-grid { padding:16px; margin-bottom:12px; background:#edf2f5; border-block:1px solid #ced9e0; align-items:end; }
.user-create-grid label,.user-settings-fields label { display:block; min-width:0; font-size:12px; color:var(--text-muted); }
.user-create-grid input,.user-create-grid select,.user-settings-fields input,.user-settings-fields select { box-sizing:border-box; width:100%; min-width:0; height:40px; margin-top:6px; font-size:14px; padding:8px; }
.user-create-grid #add-user-btn { grid-column:2; justify-self:end; }
.user-settings-row { padding:14px; border:1px solid var(--border); border-radius:6px; background:#fff; }
.user-settings-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.user-settings-heading strong { overflow-wrap:anywhere; font-size:15px; }
.user-current-session { font-size:12px; color:var(--text-muted); }
.user-name-field { grid-column:1; grid-row:1; }
.user-role-field { grid-column:2; grid-row:1; }
.user-email-field { grid-column:1/-1; }
.user-inline-control { display:flex; align-items:end; gap:8px; min-width:0; }
.user-icon-button { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; flex:0 0 40px; padding:8px !important; }
.user-settings-actions { display:flex; justify-content:flex-end; margin-left:auto; }
.user-settings-heading { flex-wrap:wrap; }
.audit-panel>summary { cursor:pointer; font-size:18px; font-weight:650; padding:12px 0; }
#trash-list,#audit-list { max-height:360px; overflow-y:auto; }
.audit-panel>.btn-group { display:flex; flex-wrap:wrap; gap:8px; }
.trash-entry { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.trash-entry-info { min-width:0; overflow-wrap:anywhere; }
.trash-entry>.btn { flex-shrink:0; }
.user-settings-actions .btn { font-size:13px; padding:8px 12px; }
.user-settings-status { margin:10px 0 0; font-size:13px; overflow-wrap:anywhere; }
.user-settings-status:empty { display:none; }
@media(max-width:480px) {
    .user-create-grid,.user-settings-fields { grid-template-columns:minmax(0,1fr); }
    .user-name-field,.user-role-field,.user-create-grid #add-user-btn { grid-column:1; grid-row:auto; }
}
#share-link-input { min-width:0; }
#sync-feedback { max-width:1216px; margin:0 auto 20px; padding:10px 20px; font-size:13px; color:#25654d; overflow-wrap:anywhere; }
#sync-feedback:empty { display:none; }
#sync-feedback.error { color:#a32626; background:#fff0f0; border-left:3px solid #b73737; }
#sync-feedback.transient { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); z-index:1000; width:max-content; max-width:calc(100% - 32px); margin:0; padding:12px 18px; border:1px solid var(--border); border-radius:6px; background:var(--panel-bg,#fff); box-shadow:0 4px 18px #0002; pointer-events:none; }
#settings-modal .modal-content { width:1040px; max-width:calc(100vw - 48px) !important; }
#settings-modal .modal-content>div:first-child { gap:16px; align-items:center; }
#settings-modal #close-settings-modal { flex-shrink:0; min-height:44px; }
#settings-modal .audio-settings label { display:grid; grid-template-columns:minmax(0,240px) 110px; align-items:center; gap:12px; }
#settings-modal .audio-settings input { margin-left:0; }
@media(min-width:1000px) {
    #settings-modal .user-settings-fields { grid-template-columns:minmax(150px,1fr) minmax(160px,1fr) minmax(260px,2fr); }
    #settings-modal .user-email-field { grid-column:3; grid-row:1; }
}
@media(max-width:760px) {
    #settings-modal .modal-content { max-width:calc(100vw - 24px) !important; }
    #settings-modal :is(input,select,textarea) { font-size:16px; }
    #settings-modal :is(.btn,.user-icon-button) { min-height:44px; }
    #settings-modal .audio-settings label { grid-template-columns:minmax(0,1fr) 110px; }
    #sync-feedback.transient { margin:0; bottom:max(16px,env(safe-area-inset-bottom)); }
}
.public-view .header-actions-group,.public-view #back-home,.public-view #pad-form,.public-view #view-history,.public-view #open-settings-btn { display:none !important; }
.public-view #clear-btn,.public-view #open-verif-modal-btn,.public-view #share-client-btn { display:none !important; }
.public-view .container { max-width:1280px; }
.cannot-verify #pad-form { display:none; }
.pdf-logo { background:transparent; border-radius:0; object-fit:contain; }
@media (max-width:760px) {
    .container { padding:0 16px 24px; }
    .header { margin:0 -16px 24px; padding:10px 16px 16px; }
    .header-brand { width:100%; gap:14px; }
    .logo-hw { width:108px; height:54px; }
    .header h1 { font-size:17px; }
    .header-actions-group { width:100%; justify-content:flex-start; }
    .header #new-sheet-btn { width:100%; order:6; margin-top:4px; }
    .header .user-badge { flex:1; }
    .header #logout-btn { font-size:12px; padding:8px !important; }
    .header .nav-tab { padding:8px 10px; font-size:12px; }
    .section-title { font-size:22px; }
    .section-header-row { gap:12px; }
    .section-header-row .btn span { display:none; }
    .record-title { font-size:23px; }
    .form-grid { grid-template-columns:1fr; }
    .table-container { overflow:visible; }
    .table-container table,.table-container tbody { display:block; }
    .table-container thead { display:none; }
    .table-container tr { display:grid; grid-template-columns:minmax(0,1fr) auto; padding:16px; gap:12px; border-bottom:1px solid var(--border); }
    .table-container td { display:block; padding:0; border:0; width:auto !important; }
    .history-table-el td:first-child { grid-column:1 / -1; }
    .history-table-el td:nth-child(3) { grid-column:1; grid-row:3; }
    .history-table-el td:last-child { grid-column:2; grid-row:2 / 4; align-self:center; }
    #markers-list tr { grid-template-columns:minmax(0,1fr); }
    .col-comment,.col-action,.col-tc,.col-seen { grid-column:1; }
    #markers-list .col-seen::before { content:'Contrôle'; display:block; margin-bottom:4px; font-size:12px; color:#59646c; }
    .col-comment { font-size:15px; }
    .action-btns { gap:8px !important; }
    .action-btns button,.status-select { min-height:42px; }
    .action-btns button { min-width:42px; }
    .actions-footer,.btn-group { width:100%; }
    .btn-group .btn { flex:1 1 140px; }
    .modal-content { width:100%; padding:20px !important; }
    .modal-content form .form-grid { grid-template-columns:1fr !important; }
    #verif-form>div[style*="grid-template-columns"] { grid-template-columns:1fr !important; }
    #share-modal .modal-content>div { flex-wrap:wrap; }
    #sync-feedback { margin:0 16px 20px; }
}
@media (prefers-reduced-motion:reduce) { * { transition:none !important; animation:none !important; scroll-behavior:auto !important; } }

/* The export clone must fit the 194 mm printable A4 width, at every viewport. */
#print-report-container .pdf-page { min-width:0; max-width:100%; }
#print-report-container .pdf-footer { display:none; }
#print-report-container table { width:100%; min-width:0; display:table; table-layout:fixed; }
#print-report-container th,#print-report-container td { overflow-wrap:anywhere; white-space:normal; }
#print-report-container .pdf-document-title { font-size:24px; line-height:1.2; text-transform:none; }
#print-report-container .pdf-title-row>div:first-child { min-width:0; }
#print-report-container .pdf-date-box { flex:0 0 112px; min-width:0; }
#print-report-container .pdf-topbar { background:#e7ecef; }
#print-report-container .pdf-topbar::after { display:none; }
#print-report-container .pdf-logo { background:transparent; border-radius:0; }
#print-report-container .pdf-company-info { color:#37434a; font-size:12px; padding-right:0; }
#print-report-container .pdf-company-name { color:#37434a; }
#print-report-container .pdf-remarks { page-break-inside:auto; }
#print-report-container .pdf-marker-table th:first-child { width:21%; }
#print-report-container .pdf-marker-table tr { break-inside:avoid; page-break-inside:avoid; }
#print-report-container .pdf-meta-label,
#print-report-container .pdf-grid-table th,
#print-report-container .pdf-marker-table th {
    background:#dfe7ed;
    color:#33434f;
    border:1px solid #c7d2db;
}
#print-report-container .pdf-meta-value,
#print-report-container .pdf-grid-table td { background:#f7f9fa; color:#303d47; }
#print-report-container .pdf-audio-card,
#print-report-container .pdf-loudness-box { background:#f0f4f6; border-color:#d2dce3; }
#print-report-container .pdf-section-heading { color:#3d505e; }
#print-report-container .pdf-section-heading::before { background:#819aaa; }
#print-report-container .pdf-marker-table tbody tr:nth-child(even) td { background:#f2f5f7; }

/* Shared verification workspaces; printed exports keep their own layout. */
@media screen {
    .client-workspace .container>.header { background:transparent !important; margin-bottom:22px; }
    .client-workspace #record-kind { color:var(--accent); }
    .client-workspace #remarks-table .col-seen { display:none !important; }
    .client-workspace #view-generator #publish-slack { background:#187657 !important; color:#fff !important; border-color:#187657; }
    .client-workspace #view-generator #publish-slack:hover { background:#126044 !important; }
    .client-workspace #client-add-remark { margin-top:8px; }
    #retry-client-mail { margin-bottom:16px; }
}
@media screen and (max-width:760px) {
    .client-workspace #record-kind { margin-left:0; font-size:18px; }
    .client-workspace #publish-slack { grid-column:1/-1; }
    .client-workspace #markers-list .action-btns { display:flex; flex-wrap:wrap; }
    .client-workspace .client-comment-form textarea { font-size:16px; }
}
@media screen {
    body:not(.public-view) .container>.header { background:transparent !important; margin-bottom:22px; }
    body:not(.public-view) :is(.header,#view-history) :is(.btn,.nav-tab,.settings-gear-btn) {
        min-height:38px; padding:9px 12px; font-size:13px; border-radius:6px;
    }
    body:not(.public-view) :is(.header,#view-history) .btn-secondary {
        background:var(--panel-bg,#fff); color:var(--text-dark); border-color:var(--border);
    }
    body:not(.public-view) :is(.header,#view-history) :is(.btn-secondary,.nav-tab,.settings-gear-btn):hover {
        background:var(--card-bg,#edf1f3); border-color:var(--border-dark,#bac5cc);
    }
    body:not(.public-view) :is(.header,#view-history) :is(button,summary):active:not(:disabled) { filter:brightness(.92); }
    body:not(.public-view) :is(.header,#view-history) button { touch-action:manipulation; }
    body:not(.public-view) #tab-history { display:none; }
}
@media screen and (max-width:760px) {
    body:not(.public-view) :is(.header,#view-history) :is(.btn,.nav-tab,.settings-gear-btn) { min-height:44px; }
    body:not(.public-view) .header #tab-history span { display:inline; }
    :is(.internal-workspace,.client-workspace) #view-generator #add-marker-btn { width:44px !important; height:44px; }
    :is(.internal-workspace,.client-workspace) #markers-list .action-btns button { min-width:44px; min-height:44px; }
}
@media screen {
    :is(.internal-workspace,.client-workspace) { --workspace-surface:#fff; --workspace-band:#edf1f3; --workspace-line:#d6dfe3; }
    :is(.internal-workspace,.client-workspace):has(#view-generator.active-view) .header { background:transparent; margin-bottom:22px; }
    :is(.internal-workspace,.client-workspace) #view-generator .record-heading { display:none; }
    .record-title-navigation { display:flex; align-items:center; gap:16px; min-width:0; flex:1; }
    .record-title-navigation #back-home { flex-shrink:0; width:44px; height:44px; }
    .record-title-navigation #back-home span { display:none; }
    .internal-workspace #record-kind { display:none; }
    :is(.internal-workspace,.client-workspace) #back-home { border-color:transparent; background:transparent; padding:10px; color:var(--text-muted); }
    :is(.internal-workspace,.client-workspace) .record-title-row { margin-bottom:12px; }
    :is(.internal-workspace,.client-workspace) .record-title { font-size:26px; line-height:1.25; }
    :is(.internal-workspace,.client-workspace) .version-controls { gap:10px 20px; margin-bottom:16px; }
    :is(.internal-workspace,.client-workspace) .version-controls label { width:260px; }
    :is(.internal-workspace,.client-workspace) #record-version-select { min-height:38px; font-size:13px; padding:8px; }
    :is(.internal-workspace,.client-workspace) #record-version-state { padding:7px 10px; border-radius:4px; background:var(--workspace-band); color:var(--text-muted); }
    :is(.internal-workspace,.client-workspace) #record-version-state[data-state="progress"] { background:#e1f1f4; color:#126377; }
    :is(.internal-workspace,.client-workspace) #record-version-state[data-state="complete"] { background:#e5f3e9; color:#25654d; }
    :is(.internal-workspace,.client-workspace) #record-tcout { margin-left:auto; }
    :is(.internal-workspace,.client-workspace) .technical-summary { gap:12px 28px; border-color:var(--workspace-line); padding:14px 0; margin-bottom:0; }
    :is(.internal-workspace,.client-workspace) .technical-summary dt { text-transform:none; font-size:12px; }
    :is(.internal-workspace,.client-workspace) .technical-summary dd { font-weight:550; font-variant-numeric:tabular-nums; }
    :is(.internal-workspace,.client-workspace) #view-generator .btn { min-height:38px; padding:9px 12px; font-size:13px; border-radius:6px; transition:background-color .15s,border-color .15s; }
    :is(.internal-workspace,.client-workspace) #view-generator .btn:hover { transform:none; }
    :is(.internal-workspace,.client-workspace) #view-generator .btn-secondary,
    :is(.internal-workspace,.client-workspace) #view-generator .remarks-tools .btn { background:var(--workspace-surface); border:1px solid var(--workspace-line); color:var(--text-dark); }
    :is(.internal-workspace,.client-workspace) #view-generator .btn-secondary:hover,
    :is(.internal-workspace,.client-workspace) .remarks-tools .btn:hover { background:var(--workspace-band); }
    :is(.internal-workspace,.client-workspace) #publish-slack-finish { background:#187657; color:white; }
    :is(.internal-workspace,.client-workspace) #publish-slack-finish:hover { background:#126044; }
    :is(.internal-workspace,.client-workspace) .actions-footer { margin:24px 0 0; padding:16px 0; border-top:1px solid var(--workspace-line); }
    :is(.internal-workspace,.client-workspace) .actions-footer .btn-group { align-items:center; }
    :is(.internal-workspace,.client-workspace) .actions-footer .verifier-actions { width:100%; }
    :is(.internal-workspace,.client-workspace) #publish-slack-finish { margin-left:0; }
    :is(.internal-workspace,.client-workspace) .secondary-actions summary { min-height:38px; padding:9px 12px; font-size:13px; border-color:var(--workspace-line); }
    :is(.internal-workspace,.client-workspace) .secondary-action-list { top:auto; bottom:calc(100% + 8px); width:290px; }
    :is(.internal-workspace,.client-workspace) #view-generator>.section-header-row { flex-wrap:wrap; justify-content:flex-start; gap:10px; margin:0; padding:14px 0; }
    :is(.internal-workspace,.client-workspace) #view-generator .section-title { text-transform:none; color:var(--text-dark); font-size:19px; font-weight:650; }
    :is(.internal-workspace,.client-workspace) #counter { font-size:12px !important; color:var(--text-muted); }
    :is(.internal-workspace,.client-workspace) .remarks-tools { display:flex; flex-wrap:wrap; gap:8px; margin-left:auto; }
    :is(.internal-workspace,.client-workspace) #pad-form { padding:12px 0 16px; margin:0; border:0; }
    :is(.internal-workspace,.client-workspace) #pad-form .form-grid { grid-template-columns:140px minmax(0,1fr) 40px; align-items:end; gap:10px; margin-bottom:0; }
    :is(.internal-workspace,.client-workspace) #pad-form .full-width:last-child { grid-column:3; }
    :is(.internal-workspace,.client-workspace) #pad-form .field label { font-size:12px; text-transform:none; margin-bottom:6px; }
    :is(.internal-workspace,.client-workspace) #pad-form input { min-height:40px; padding:10px; font-size:14px; border-color:var(--workspace-line); }
    :is(.internal-workspace,.client-workspace) #add-marker-btn { width:40px !important; height:40px; padding:10px !important; }
    :is(.internal-workspace,.client-workspace) #add-marker-btn span { display:none; }
    :is(.internal-workspace,.client-workspace) #view-generator .table-container { border:0; border-block:1px solid var(--workspace-line); border-radius:0; margin-bottom:0; background:var(--workspace-surface); }
    :is(.internal-workspace,.client-workspace) #view-generator th { background:var(--workspace-band); color:var(--text-muted); font-size:12px; font-weight:600; text-transform:none; padding:12px 10px; }
    :is(.internal-workspace,.client-workspace) #view-generator td { border-color:var(--workspace-line); font-size:13px; }
    :is(.internal-workspace,.client-workspace) #view-generator td:not(:last-child),
    :is(.internal-workspace,.client-workspace) #view-generator th:not(:last-child) { border-right:0; }
    :is(.internal-workspace,.client-workspace) #remarks-table .col-tc { width:128px; }
    :is(.internal-workspace,.client-workspace) #remarks-table .col-action { width:370px; text-align:left; white-space:normal; }
    :is(.internal-workspace,.client-workspace) #remarks-table .col-seen { width:145px; }
    :is(.internal-workspace,.client-workspace) #markers-list .status-select { width:190px; min-width:0; flex:1 1 150px; font-size:12px; }
    :is(.internal-workspace,.client-workspace) #markers-list .action-btns { flex-wrap:wrap; }
    :is(.internal-workspace,.client-workspace) #markers-list .remark-text { font-weight:500; line-height:1.5; }
    :is(.internal-workspace,.client-workspace) #markers-list .status-select:disabled { opacity:1; color:var(--text-dark); }
    :is(.internal-workspace,.client-workspace) #report-inserts { background:var(--workspace-band); border:0; border-block:1px solid var(--workspace-line); margin:24px 0 0; padding:12px 16px 16px; }
    :is(.internal-workspace,.client-workspace) #report-inserts>.inserts-toolbar { top:12px; right:16px; }
    :is(.internal-workspace,.client-workspace) #inserts-disclosure>.inserts-heading { margin-right:500px; }
    :is(.internal-workspace,.client-workspace) .inserts-title { font-size:17px; }
    :is(.internal-workspace,.client-workspace) #view-generator .control-select { font-size:12px; }
    :is(.internal-workspace,.client-workspace) #view-generator #markers-list tr[data-status="pending"] { background:#e5f3e9; }
    :is(.internal-workspace,.client-workspace) #view-generator #markers-list tr[data-status="nocorr"] { background:#fde8e8; }
    :is(.internal-workspace,.client-workspace) #view-generator #markers-list tr[data-status="new"] { background:#e7f1fa; }
    :is(.internal-workspace,.client-workspace) #view-generator :is(input,select,button,summary):focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) { --workspace-surface:#24272b; --workspace-band:#303439; --workspace-line:#454b52; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) #record-version-state[data-state="progress"] { background:#23434b; color:#a3e8f4; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) #record-version-state[data-state="complete"] { background:#213e31; color:#a0e1b5; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) .remarks-tools .btn { background:var(--workspace-surface); color:var(--text-dark); }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) #view-generator #markers-list tr[data-status="pending"] { background:#213e31; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) #view-generator #markers-list tr[data-status="nocorr"] { background:#492c30; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) #view-generator #markers-list tr[data-status="new"] { background:#253e52; }
}
@media screen and (max-width:1100px) {
    :is(.internal-workspace,.client-workspace) #remarks-table .col-action { width:275px; }
    :is(.internal-workspace,.client-workspace) #markers-list .status-select { flex-basis:100%; }
    :is(.internal-workspace,.client-workspace) #inserts-disclosure>.inserts-heading { margin-right:0; }
    :is(.internal-workspace,.client-workspace) #report-inserts>.inserts-toolbar { position:static; margin:0 0 8px; justify-content:flex-start; }
}
@media screen and (max-width:760px) {
    :is(.internal-workspace,.client-workspace):has(#view-generator.active-view) .header .user-badge { flex-basis:auto !important; flex:1 !important; min-width:70px; }
    :is(.internal-workspace,.client-workspace):has(#view-generator.active-view) .header #new-sheet-btn { flex:0 0 40px; width:40px !important; padding:8px; }
    :is(.internal-workspace,.client-workspace):has(#view-generator.active-view) .header #new-sheet-btn span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
    :is(.internal-workspace,.client-workspace) .record-title { font-size:23px; }
    .record-title-navigation { gap:10px; }
    .record-title-navigation #back-home { width:44px; height:44px; padding:10px; }
    .record-title-navigation #back-home span { display:none; }
    :is(.internal-workspace,.client-workspace) #edit-report-params { max-width:100%; }
    :is(.internal-workspace,.client-workspace) .version-controls label { width:100%; }
    :is(.internal-workspace,.client-workspace) #record-tcout { margin-left:0; white-space:normal; }
    :is(.internal-workspace,.client-workspace) .technical-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
    :is(.internal-workspace,.client-workspace) .actions-footer .btn-group { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    :is(.internal-workspace,.client-workspace) #publish-slack-finish { grid-column:1/-1; margin-left:0; }
    :is(.internal-workspace,.client-workspace) .secondary-actions summary { min-height:44px; }
    :is(.internal-workspace,.client-workspace) #view-generator .btn { min-height:44px; }
    :is(.internal-workspace,.client-workspace) #view-generator .section-header-row .btn span { display:inline; }
    :is(.internal-workspace,.client-workspace) .remarks-tools { margin:0 0 0 auto; width:auto; }
    :is(.internal-workspace,.client-workspace) .remarks-tools .btn { flex:1 1 140px; }
    :is(.internal-workspace,.client-workspace) #pad-form .form-grid { grid-template-columns:minmax(0,1fr) 44px; }
    :is(.internal-workspace,.client-workspace) #pad-form .field:has(#tc) { grid-column:1/-1; }
    :is(.internal-workspace,.client-workspace) #pad-form .full-width:last-child { grid-column:2; }
    :is(.internal-workspace,.client-workspace) #pad-form input { min-height:44px; }
    :is(.internal-workspace,.client-workspace) #add-marker-btn { width:44px !important; height:44px; }
    :is(.internal-workspace,.client-workspace) #remarks-table .col-action,:is(.internal-workspace,.client-workspace) #remarks-table .col-seen { width:auto; }
    :is(.internal-workspace,.client-workspace) #markers-list td { padding:0; }
    :is(.internal-workspace,.client-workspace) #markers-list tr { padding:16px; gap:10px; }
    :is(.internal-workspace,.client-workspace) #markers-list .control-select { min-height:44px; }
    :is(.internal-workspace,.client-workspace) #report-inserts { padding:12px; }
    :is(.internal-workspace,.client-workspace) #report-inserts>.inserts-toolbar .btn { flex:1 1 240px; }
}

/* Screen-only theme: exported documents keep their own light palette. */
@media screen {
    :root[data-theme="dark"] {
        color-scheme:dark;
        --bg-body:#1b1d20; --panel-bg:#24272b; --card-bg:#2b2e33;
        --text-dark:#edf0f2; --text-muted:#b5bec5; --border:#454b52; --border-dark:#626c75;
        --accent:#65c8df; --accent-hover:#95dced; --danger:#ff9696; --danger-bg:#492c30;
    }
    :root[data-theme="dark"] :is(.modal-content,.auth-card,dialog,.table-container,.user-settings-row,.secondary-action-list) {
        background:#24272b; color:var(--text-dark); border-color:var(--border);
    }
    :root[data-theme="dark"] :is(input,select,textarea):not(#print-report-container *) {
        background:#202327 !important; color:#edf0f2; border-color:#626c75;
    }
    :root[data-theme="dark"] input::placeholder,:root[data-theme="dark"] textarea::placeholder { color:#a9b2bb; opacity:1; }
    :root[data-theme="dark"] :is(.header,.auth-brand,#notion-panel,.user-create-grid,#report-inserts) { background:#303439; border-color:#515b64; color:var(--text-dark); }
    :root[data-theme="dark"] :is(.header h1,.header .user-badge,.record-open,.technical-summary dd,#notion-panel summary,.field label,.nav-tab,.header .nav-tab,.settings-gear-btn) { color:var(--text-dark); }
    :root[data-theme="dark"] :is(.btn-secondary,.secondary-actions summary,.secondary-action-list .btn) { background:#30363c !important; color:#edf0f2 !important; border-color:#626c75; }
    :root[data-theme="dark"] .btn-secondary:hover { background:#414950 !important; }
    :root[data-theme="dark"] .btn:not(.btn-secondary):not(.btn-success):not(.btn-slack) { background-color:#11738a; color:#fff; }
    :root[data-theme="dark"] :is(.nav-tab.active,.header .nav-tab.active) { background:#23434b; color:#a3e8f4; border-color:#538b96; }
    :root[data-theme="dark"] th:not(#print-report-container *) { background:#32373d; color:#d9e0e5; }
    :root[data-theme="dark"] td:not(#print-report-container *) { border-color:#454b52; }
    :root[data-theme="dark"] tbody tr:not(#print-report-container *) { background:#24272b; }
    :root[data-theme="dark"] tbody tr:nth-child(even):not(#print-report-container *) { background:#292d32; }
    :root[data-theme="dark"] .history-table-el tr:hover { background:#344047; }
    :root[data-theme="dark"] #markers-list tr[data-status="pending"],:root[data-theme="dark"] #markers-list tr[data-status="pending"]>td { background:#213e31; }
    :root[data-theme="dark"] #markers-list tr[data-status="nocorr"],:root[data-theme="dark"] #markers-list tr[data-status="nocorr"]>td { background:#492c30; }
    :root[data-theme="dark"] #markers-list tr[data-status="new"],:root[data-theme="dark"] #markers-list tr[data-status="new"]>td { background:#253e52; }
    :root[data-theme="dark"] .status-select[data-status="pending"] { color:#a0e1b5; }
    :root[data-theme="dark"] .status-select[data-status="nocorr"] { color:#ffb6b6; }
    :root[data-theme="dark"] .status-select[data-status="new"] { color:#a3d9ff; }
    :root[data-theme="dark"] :is(.remark-origin,.remark-author,.record-meta,.record-date,.version-count,.version-controls label,#record-tcout,#record-kind,#insert-count,.insert-end,.inserts-table small,.technical-summary dt,.audio-message,.empty-state,.visibility-label,.remark-hidden .remark-text) { color:var(--text-muted); }
    :root[data-theme="dark"] .tc-display { background:#30434b; color:#c0e5ef; border-color:#637c85; }
    :root[data-theme="dark"] :is(.verification-status.is-complete,#sync-feedback,.resolved) { color:#a0e1b5; }
    :root[data-theme="dark"] .resolved { background:#213e31; }
    :root[data-theme="dark"] :is(.verification-status.is-progress,#record-version-state) { color:#f2cf94; }
    :root[data-theme="dark"] :is(.awaiting,#public-version-notice,#share-warning-text) { background:#493920 !important; color:#ffce85 !important; }
    :root[data-theme="dark"] :is(.audio-outside,#slack-error,#insert-message,#insert-import-error,#insert-edit-error,#client-remark-error) { color:#ff9696 !important; }
    :root[data-theme="dark"] #sync-feedback.error { background:#492c30; color:#ffb6b6; }
    :root[data-theme="dark"] :is(#settings-codecs-list>div,#settings-remarques-list>div) { background:#303439 !important; }
    :root[data-theme="dark"] .logo-hw,:root[data-theme="dark"] .auth-brand img { filter:brightness(0) invert(1); }
    :root[data-theme="dark"] #markers-list .col-seen::before { color:var(--text-muted); }
    :root[data-theme="dark"] #print-report-container { color-scheme:light; --text-dark:#202529; --text-muted:#59646c; }
}

/* Shared mobile reading layout, scoped away from printed reports. */
@media screen {
    :is(.internal-workspace,.client-workspace) :is(button,summary) { touch-action:manipulation; }
    :is(.internal-workspace,.client-workspace) :is(button,summary):active:not(:disabled) { filter:brightness(.92); }
    :is(.internal-workspace,.client-workspace) :is(.secondary-action-list,.mobile-menu-items) { max-height:60dvh; overflow-y:auto; overscroll-behavior:contain; }
    :is(.internal-workspace,.client-workspace) .secondary-actions[open]>.secondary-action-list,
    :is(.internal-workspace,.client-workspace) details[open]>.mobile-menu-items { animation:workspace-menu-in 120ms ease-out; }
    :is(.internal-workspace,.client-workspace) :is(dialog,.modal-content) { overscroll-behavior:contain; scroll-padding-block:20px; }
    :is(.internal-workspace,.client-workspace) :is(input,textarea,select) { scroll-margin-block:24px; }
    :is(.internal-workspace,.client-workspace) button[aria-busy="true"] { cursor:progress; opacity:.8; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) :focus-visible { outline-color:#95dced; }
}
@keyframes workspace-menu-in { from { opacity:0; } to { opacity:1; } }
@media screen and (prefers-reduced-transparency:reduce) {
    :is(.internal-workspace,.client-workspace) .modal-overlay { backdrop-filter:none; background:var(--bg-body); }
    :is(.internal-workspace,.client-workspace) dialog::backdrop { backdrop-filter:none; background:var(--bg-body); }
}
@media screen and (max-width:760px) {
    :is(.internal-workspace,.client-workspace) :is(.modal-content,dialog) { max-height:calc(100dvh - 24px); padding:16px !important; }
    :is(.internal-workspace,.client-workspace) :is(.modal-content,dialog) :is(input:not([type="checkbox"]):not([type="hidden"]),select,textarea),
    :is(.internal-workspace,.client-workspace) #pad-form :is(input,textarea) { font-size:16px; min-height:44px; }
    :is(.internal-workspace,.client-workspace) :is(.modal-content,dialog) .btn { min-height:44px; white-space:normal; }
    :is(.internal-workspace,.client-workspace) #edit-marker-form>div:last-child { flex-wrap:wrap; }
    :is(.internal-workspace,.client-workspace) .mobile-technical { border-block:1px solid var(--workspace-line); }
    :is(.internal-workspace,.client-workspace) .mobile-technical>summary { min-height:44px; padding:12px 0; font-size:13px; font-weight:600; cursor:pointer; }
    :is(.internal-workspace,.client-workspace) .mobile-technical .technical-summary { border:0; padding-top:4px; }
    :is(.internal-workspace,.client-workspace) .version-controls { gap:8px; margin-bottom:12px; }
    :is(.internal-workspace,.client-workspace) .actions-footer { margin-bottom:18px; padding:12px 0; }
    :is(.internal-workspace,.client-workspace) #view-generator>.section-header-row { gap:6px; align-items:center; }
    :is(.internal-workspace,.client-workspace) #view-generator .section-title { font-size:18px; }
    :is(.internal-workspace,.client-workspace) .mobile-copy-menu,:is(.internal-workspace,.client-workspace) .mobile-remark-menu { position:relative; }
    :is(.internal-workspace,.client-workspace) :is(.mobile-copy-menu,.mobile-remark-menu)>summary { display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:8px 10px; border:1px solid var(--workspace-line); border-radius:6px; background:var(--workspace-surface); color:var(--text-dark); cursor:pointer; list-style:none; font-size:13px; }
    :is(.internal-workspace,.client-workspace) :is(.mobile-copy-menu,.mobile-remark-menu)>summary::-webkit-details-marker { display:none; }
    :is(.internal-workspace,.client-workspace) .mobile-remark-menu>summary { width:44px; padding:8px; }
    :is(.internal-workspace,.client-workspace) .mobile-menu-items { position:absolute; right:0; top:calc(100% + 6px); z-index:20; width:240px; max-width:calc(100vw - 48px); padding:6px; border:1px solid var(--workspace-line); border-radius:6px; box-shadow:0 5px 18px #0002; background:var(--workspace-surface); }
    :is(.internal-workspace,.client-workspace) #view-generator .mobile-menu-items button { display:flex; align-items:center; gap:8px; width:100%; margin:0; min-height:44px; padding:10px; text-align:left; border:0; background:transparent; color:var(--text-dark); font-size:13px; white-space:normal; }
    :is(.internal-workspace,.client-workspace) #view-generator .mobile-menu-items button:hover { background:var(--workspace-band); }
    :is(.internal-workspace,.client-workspace) #markers-list tr { border-left:4px solid var(--workspace-line); padding:14px 12px; gap:8px; }
    :is(.internal-workspace,.client-workspace) #markers-list tr>td { background:transparent !important; }
    :is(.internal-workspace,.client-workspace) #markers-list tr[data-status="pending"] { border-left-color:#187657; }
    :is(.internal-workspace,.client-workspace) #markers-list tr[data-status="nocorr"] { border-left-color:#c54141; }
    :is(.internal-workspace,.client-workspace) #markers-list tr[data-status="new"] { border-left-color:#2385bf; }
    :is(.internal-workspace,.client-workspace) #markers-list .remark-text { font-size:16px; line-height:1.5; font-weight:500; }
    :is(.internal-workspace,.client-workspace) #markers-list .remark-origin { display:block; font-size:12px; line-height:1.45; margin-top:4px; }
    :is(.internal-workspace,.client-workspace) #markers-list .action-btns { flex-wrap:nowrap; align-items:center; }
    :is(.internal-workspace,.client-workspace) #markers-list .status-select { flex:1 1 auto; width:100%; font-size:13px; }
    :is(.internal-workspace,.client-workspace) #markers-list .status-select[hidden] { display:none; }
    :is(.internal-workspace,.client-workspace) #markers-list .thread-marker { margin-left:auto; }
    :is(.internal-workspace,.client-workspace) .mobile-decision { font-size:12px; line-height:1.4; padding:5px 8px; border-radius:4px; color:var(--text-muted); background:var(--workspace-band); }
    :is(.internal-workspace,.client-workspace) .mobile-decision[data-status="pending"] { background:#e5f3e9; color:#25654d; }
    :is(.internal-workspace,.client-workspace) .mobile-decision[data-status="nocorr"] { background:#fde8e8; color:#a32626; }
    :is(.internal-workspace,.client-workspace) .mobile-decision[data-status="new"] { background:#e7f1fa; color:#245f87; }
    :is(.internal-workspace,.client-workspace) #markers-list .col-seen { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:8px; }
    :is(.internal-workspace,.client-workspace) #markers-list .col-seen::before { margin:0; }
    :is(.internal-workspace,.client-workspace) #markers-list .control-select { width:100%; min-width:0; font-size:13px; }
    :is(.internal-workspace,.client-workspace) #markers-list .remark-author { margin:0; max-width:64px; overflow-wrap:anywhere; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) .mobile-decision[data-status="pending"] { background:#213e31; color:#a0e1b5; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) .mobile-decision[data-status="nocorr"] { background:#492c30; color:#ffb6b6; }
    :root[data-theme="dark"] :is(.internal-workspace,.client-workspace) .mobile-decision[data-status="new"] { background:#253e52; color:#a3d9ff; }
}
