[hidden]{display:none!important}
:root{font-family:Inter,system-ui,sans-serif;color:#1c2430;background:#f5f7fa}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #c8d0da;background:#fff;border-radius:7px;padding:7px 10px;cursor:pointer}button:hover{background:#f0f3f6}.primary{background:#243b53;color:#fff;border-color:#243b53}.primary:hover{background:#334e68}input,select,textarea{border:1px solid #c8d0da;border-radius:7px;padding:8px;background:#fff}.auth-screen{min-height:100vh;display:grid;place-items:center;background:#eef2f6}.auth-card{width:min(430px,92vw);background:#fff;border:1px solid #dfe3e8;border-radius:14px;padding:28px;box-shadow:0 18px 50px #0001}.auth-card input,.auth-card .primary{width:100%;margin:6px 0}.auth-card h1{font-size:22px}.error{color:#a61b1b;font-size:13px;margin-top:8px}header{height:72px;background:#fff;border-bottom:1px solid #dfe3e8;display:flex;align-items:center;justify-content:space-between;padding:10px 20px}h1{font-size:20px;margin:0}.subtitle{font-size:12px;color:#687386}.identity{display:flex;gap:8px;align-items:center;font-size:13px}.toolbar{height:48px;background:#fff;border-bottom:1px solid #dfe3e8;display:flex;align-items:center;gap:8px;padding:8px 20px}.live{margin-left:auto;font-size:12px;color:#8a1c1c}.live.on{color:#357a38}main{display:grid;grid-template-columns:245px minmax(440px,1fr) 390px;height:calc(100vh - 120px)}aside,.center{overflow:auto}.left,.right{background:#fff;padding:14px}.left{border-right:1px solid #dfe3e8}.right{border-left:1px solid #dfe3e8}.center{padding:22px}.left h3,.right h3{margin:6px 0 10px;font-size:14px}.upload{display:inline-block;margin:8px 0;font-size:12px;border:1px dashed #aeb7c2;padding:7px;border-radius:7px;cursor:pointer}.upload input{display:none}.item{padding:8px;border-radius:7px;margin:3px 0;cursor:pointer;font-size:13px}.item:hover,.item.active{background:#edf2f7}.empty{height:100%;display:grid;place-items:center;color:#7b8794;text-align:center}.dochead{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #dfe3e8;margin-bottom:12px}.dochead h2{font-size:19px;margin-bottom:3px}.legend{font-size:11px;color:#7b8794}.dochead>span{font-size:12px;color:#687386;padding-bottom:14px}.reader-wrap{display:flex;gap:8px}.reader-wrap #transcriptText{flex:1}.reader-wrap #codingStripes{width:14px;position:relative;background:#eef2f6;border-radius:6px}#transcriptText{white-space:pre-wrap;line-height:1.8;background:#fff;border:1px solid #dfe3e8;border-radius:10px;padding:22px;min-height:320px;user-select:text}.coded{border-radius:2px;background:transparent;box-shadow:none}.coded.multi{background:transparent}.search-hit{outline:2px solid #334e68;outline-offset:2px}.stripe{position:absolute;left:2px;right:2px;border-radius:3px;min-height:4px;background:#64748b}.coding{background:#fff;border:1px solid #e1e5ea;border-radius:8px;padding:9px;margin:8px 0}.coding .meta{font-size:12px;color:#657181}.excerpt{font-family:Georgia,serif;margin:4px 0}.inline{display:flex;gap:5px}.inline input{min-width:0;flex:1}.tabs{display:flex;margin-bottom:12px}.tab{flex:1;border-radius:0}.tab.active{font-weight:700;background:#edf2f7}.code-row{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:start;padding:7px 4px;border-bottom:1px solid #eef1f4;font-size:13px}.code-main{min-width:0}.code-name{font-weight:600;cursor:pointer}.code-name:hover{text-decoration:underline}.tree-children{margin-left:18px;border-left:1px solid #dfe3e8;padding-left:7px}.tree-toggle{width:22px;padding:2px;border:0;background:transparent}.code-def{font-size:11px;color:#657181;margin-top:2px}.count{font-size:11px;color:#7b8794}.category{border:1px solid #dfe3e8;border-radius:8px;margin:10px 0;overflow:hidden}.category-head{padding:9px;background:#f7f9fb;font-weight:600;display:flex;justify-content:space-between;gap:7px;align-items:center}.category-body{padding:8px;min-height:45px}.category.dragover{outline:2px dashed #486581}.chip,.drag-code{display:inline-flex;align-items:center;border:1px solid #ccd4dd;border-radius:999px;padding:5px 8px;margin:3px;font-size:12px;background:#fff;cursor:grab}.chip button{border:0;padding:0 0 0 6px}.hint{font-size:12px;color:#687386}.memo{padding:7px;border-bottom:1px solid #eee;font-size:12px;cursor:pointer}.memo:hover{background:#f7f9fb}.memo b{display:block}.member{font-size:12px;padding:5px 0}.member .role{color:#657181}.small{font-size:11px;color:#657181}.editlink{font-size:11px;color:#486581;cursor:pointer}.merge-check{margin-top:4px}.relationship{font-size:12px;padding:5px 0}.rel-maker{display:grid;grid-template-columns:1fr;gap:5px}.axial-pool{border:1px dashed #b8c2cc;border-radius:8px;padding:7px;margin:8px 0;min-height:45px}.relationship-graph{border:1px solid #dfe3e8;border-radius:8px;min-height:250px;overflow:auto;background:#fafbfc}.relationship-graph svg{display:block;width:100%;min-width:340px}.graph-node{cursor:pointer}.query-table{width:100%;border-collapse:collapse;font-size:12px}.query-table th,.query-table td{text-align:left;border-bottom:1px solid #e5e9ee;padding:7px}.query-table th{position:sticky;top:0;background:#fff}.search-result{border-bottom:1px solid #e5e9ee;padding:9px 0;cursor:pointer}.search-result:hover{background:#f7f9fb}.search-result mark{background:#fde68a}.result-pane{max-height:55vh;overflow:auto}.badge{display:inline-block;background:#edf2f7;border-radius:999px;padding:2px 6px;font-size:10px;margin-left:4px}dialog{width:min(760px,94vw);border:0;border-radius:12px;box-shadow:0 18px 60px #0004}dialog input,dialog textarea,dialog select{width:100%;margin:5px 0}dialog textarea{min-height:150px}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}#toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#1f2933;color:white;border-radius:8px;padding:9px 13px;display:none;font-size:13px;z-index:99}hr{border:0;border-top:1px solid #e5e9ee;margin:18px 0}@media(max-width:1050px){main{grid-template-columns:210px 1fr}.right{position:fixed;right:0;top:120px;bottom:0;width:380px;box-shadow:-5px 0 20px #0001;z-index:5}}
.color-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:1px;border:1px solid #0002}.coded{box-shadow:none;border-bottom:2px solid transparent}.reader-wrap #codingStripes{width:18px;flex:0 0 18px}.stripe{right:auto;width:3px;min-height:5px}.graph-node{cursor:move;touch-action:none}.graph-node:active rect{stroke-width:2}.graph-help{padding:6px 8px;border-bottom:1px solid #e5e9ee;background:#fff}.matrix-wrap{overflow:auto;max-width:100%;max-height:52vh}.query-table.matrix th:first-child,.query-table.matrix td:first-child{position:sticky;left:0;background:#fff;z-index:2;min-width:150px}.matrix-cell{text-align:center!important;min-width:68px}.matrix-cell.has{font-weight:700;background:#edf2f7}.export-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.export-grid button{text-align:left;padding:12px}input[type=color]{height:42px;padding:4px}
.doc-tools{display:flex;gap:6px;padding-bottom:9px}.team-row,.attr-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #e5e9ee}.attr-row span{flex:1;margin-left:10px}.audit-row,.annotation{padding:9px;border-bottom:1px solid #e5e9ee}.annotation{background:#fffdf6;border:1px solid #efe4b8;border-radius:8px;margin:8px 0}.annotation .meta{font-size:12px;color:#657181}.toolbar{overflow-x:auto}.toolbar button{white-space:nowrap}code{user-select:all}

.auth-status{color:#486581;font-size:13px;margin-top:8px;min-height:18px}.auth-card button:disabled{opacity:.6;cursor:wait}

/* ---- Version 5.4 transcript-centered usability ---- */
:root{--left-pane:245px;--right-pane:390px}
#workspace{display:grid;grid-template-columns:var(--left-pane) 6px minmax(620px,1fr) 6px var(--right-pane);height:calc(100vh - 120px);min-width:0}
#workspace>.left,#workspace>.right,#workspace>.center{min-width:0}
.pane-resizer{background:linear-gradient(90deg,transparent 2px,#d7dee7 2px,#d7dee7 4px,transparent 4px);cursor:col-resize;position:relative;z-index:8}
.pane-resizer:hover,.resizing .pane-resizer{background:#cbd5e1}
body.resizing{cursor:col-resize;user-select:none}
.center{padding:0;overflow:hidden;background:#e9edf2}
#reader{height:100%;display:flex;flex-direction:column;min-height:0}
.dochead{flex:0 0 auto;position:relative;z-index:7;background:#fff;margin:0;padding:12px 18px;border-bottom:1px solid #dfe3e8;align-items:center;gap:14px;box-shadow:0 1px 4px #0000000a}
.doc-title-block{min-width:240px}.doc-title-block h2{margin:0 0 3px}.dochead-actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.dochead-actions #selectionStatus{font-size:12px;color:#687386}.doc-tools{padding:0;display:flex;gap:6px;flex-wrap:wrap}
.selection-bar{flex:0 0 auto;display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,260px) auto auto auto auto;gap:7px;align-items:center;background:#edf5ff;border-bottom:1px solid #bfd2e6;padding:8px 14px;z-index:6}.selection-preview{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selection-bar select{min-width:0}.selection-bar button{white-space:nowrap}
.reader-scroll{flex:1;min-height:0;overflow:auto;padding:28px 24px 60px;scrollbar-gutter:stable}.transcript-page-wrap{max-width:8.5in;margin:0 auto;position:relative;align-items:stretch}.reader-wrap #codingStripes{flex:0 0 22px;width:22px;margin-right:5px;background:#dfe6ee;border-radius:8px}.reader-wrap #transcriptText{flex:1;min-width:0}
#transcriptText{max-width:8.5in;width:100%;margin:0;background:#fff;padding:.8in 1in;min-height:11in;border:1px solid #cbd3dc;border-radius:3px;box-shadow:0 5px 20px #1f293314;line-height:1.62;font-family:Calibri,Arial,sans-serif;font-size:12pt;color:#111827}
#transcriptText::selection,#transcriptText *::selection{background:#9cc9ff;color:#0f172a}
.coded{border-radius:2px;border-bottom:3px solid transparent;box-decoration-break:clone;-webkit-box-decoration-break:clone;cursor:pointer}.coded:hover{filter:saturate(1.15);outline:1px solid #64748b55}.annotated{position:relative;text-decoration:underline dotted #7c3aed 2px;text-underline-offset:3px;cursor:pointer}.annotated::after{content:"✎";font-size:10px;color:#6d28d9;vertical-align:super;margin-left:1px}.coded.annotated::after{content:"✎"}.stripe{width:3px;border-radius:4px;opacity:.95}
.code-actions{display:flex;align-items:center;gap:7px;margin-top:4px}.apply-code-btn{padding:3px 7px;font-size:11px;background:#f8fafc}.apply-code-btn:not(:disabled){border-color:#8ba8c2;color:#243b53}.apply-code-btn:disabled{opacity:.4;cursor:not-allowed}.count{display:inline-block;padding:1px 5px;background:#eef2f6;border-radius:999px;margin-left:3px}
.memo-context,.passage-context{background:#f7f9fb;border:1px solid #e2e8f0;border-radius:8px;padding:10px;margin:8px 0}.memo-context blockquote,.passage-context blockquote{margin:8px 0 0;padding:8px 12px;border-left:3px solid #94a3b8;background:#fff;font-family:Georgia,serif;white-space:pre-wrap}.detail-card{border:1px solid #e0e6ed;border-radius:8px;padding:10px;margin:8px 0}.annotation-card{background:#fffdf6;border-color:#e9dfae}.detail-actions{display:flex;gap:6px;margin-top:7px}.attached-memo{background:#f2f6fa;border-left:3px solid #64748b;padding:7px 9px;margin-top:6px;font-size:12px}.short-textarea{min-height:70px!important}
.warning-box{border:1px solid #f0b8b8;background:#fff5f5;color:#7f1d1d;border-radius:8px;padding:10px;margin:8px 0}.danger-zone{border-top:1px solid #efcaca;margin-top:18px;padding-top:10px}.danger{background:#b42318!important;color:#fff!important;border-color:#b42318!important}.danger:hover{background:#912018!important}
#modalSave:not(.danger){background:#243b53;color:#fff;border-color:#243b53}.summary-tabs{padding:8px;background:#f7f9fb;border-radius:7px;margin-bottom:8px}
#workspace.focus-mode{grid-template-columns:0 0 minmax(620px,1fr) 0 0}#workspace.focus-mode>.left,#workspace.focus-mode>.right,#workspace.focus-mode>.pane-resizer{overflow:hidden;padding:0;border:0;visibility:hidden}
@media(max-width:1250px){#workspace{--left-pane:210px;--right-pane:330px;grid-template-columns:var(--left-pane) 5px minmax(520px,1fr) 5px var(--right-pane)}#transcriptText{padding:.55in .65in}.selection-bar{grid-template-columns:1fr minmax(160px,220px) auto auto}.selection-bar #selectionAnnotateBtn,.selection-bar #selectionCancelBtn{display:none}}
@media(max-width:950px){#workspace{display:flex;position:relative}.left{width:210px;flex:0 0 210px}.center{flex:1}.right{position:fixed;right:0;top:120px;bottom:0;width:340px;z-index:12}.pane-resizer{display:none}.reader-scroll{padding:16px 10px}.dochead{align-items:flex-start}.dochead-actions{align-items:flex-end}.selection-bar{display:flex;flex-wrap:wrap}.selection-preview{width:100%}}

/* ---- Version 5.6 usability corrections ---- */
:root{--left-pane:220px;--right-pane:340px}
#workspace{grid-template-columns:var(--left-pane) 10px minmax(680px,1fr) 10px var(--right-pane)}
.pane-resizer{width:10px;background:linear-gradient(90deg,transparent 30%,#9aa8b7 30%,#9aa8b7 70%,transparent 70%);opacity:.55}.pane-resizer:hover,.resizing .pane-resizer{opacity:1;background:linear-gradient(90deg,transparent 20%,#64748b 20%,#64748b 80%,transparent 80%)}
.danger-soft{border-color:#d7a4a4;color:#8a1c1c;background:#fff7f7}.danger-soft:hover{background:#feecec}
.codebook-toolbar{position:sticky;top:0;z-index:22;background:#fff;padding-bottom:8px;display:grid;gap:7px}.add-code-main{width:100%;font-weight:700;font-size:15px;padding:12px}.codebook-toolbar input{width:100%}
.code-selection-panel{position:sticky;top:89px;z-index:20;background:#f4f8fc;border:1px solid #cbd9e7;border-radius:10px;padding:10px;margin-bottom:10px;box-shadow:0 2px 8px #1f29330d}.code-selection-title{font-weight:700;margin-bottom:4px}.code-selection-panel select{width:100%;margin:8px 0}.code-selection-actions{display:grid;grid-template-columns:1fr;gap:6px}.code-selection-actions button{width:100%}.code-selection-panel.ready{background:#edf7ff;border-color:#76a7cf}.code-selection-panel.ready #codeSelectionHint{color:#243b53;font-weight:600}
#transcriptText{padding:.78in .82in;line-height:1.55}.coded{box-shadow:inset 0 -3px 0 #47556944}.coded.has-coding-memo{outline:1px dashed #475569;outline-offset:1px}.coded.has-coding-memo::before{content:"▣";font-size:9px;color:#334155;vertical-align:super;margin-right:1px}
.transcript-notes-panel{margin-top:14px;border-top:1px solid #dfe3e8;padding-top:10px}.annotation-quick-list{display:grid;gap:5px;margin-top:7px}.annotation-jump{text-align:left;display:block;width:100%;padding:7px;background:#fffdf6;border-color:#e6dbab}.annotation-jump span,.annotation-jump small{display:block}.annotation-jump small{color:#657181;margin-top:3px;font-family:Georgia,serif}.quick-excerpt{max-height:120px;overflow:auto;background:#f7f9fb;padding:8px;border-radius:6px}
@media(max-width:1250px){#workspace{grid-template-columns:200px 8px minmax(560px,1fr) 8px 310px}.pane-resizer{width:8px}.code-selection-panel{top:0}}


/* ---- Version 6.0 verified UI ---- */
.brandline{display:flex;align-items:center;gap:9px}.build-badge{font-size:11px;font-weight:800;letter-spacing:.03em;background:#173f5f;color:#fff;border-radius:999px;padding:3px 8px}.center{overflow:hidden!important}.center>#reader{height:100%!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.dochead{position:sticky!important;top:0!important;z-index:50!important;flex:0 0 auto!important;background:#fff!important}.reader-scroll{overflow-y:auto!important;overflow-x:auto!important;min-height:0!important;flex:1 1 auto!important}.right{overflow-y:auto!important}.codebook-toolbar{position:sticky!important;top:0!important;z-index:60!important;background:#fff!important;padding-top:2px!important}.add-code-main{display:block!important;width:100%!important;min-height:48px!important;font-size:17px!important;font-weight:800!important;background:#243b53!important;color:white!important;border:2px solid #243b53!important;margin:0 0 9px!important}.add-code-main::before{content:"＋ ";font-weight:900}.code-selection-panel{position:sticky!important;top:65px!important;z-index:55!important}.doc-tools button{min-height:40px}.selection-bar{position:sticky!important;top:0!important;z-index:49!important}

/* v7.1 production usability fixes */
#transcriptText,
#transcriptText span {
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 100%;
}
#transcriptText { overflow-x: hidden; }
.colour-editor{display:grid;grid-template-columns:84px 130px 44px;gap:8px;align-items:center;margin:6px 0}
.colour-editor input[type="color"]{width:84px;height:42px;padding:3px;cursor:pointer}
#mColorHex{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.colour-preview{width:40px;height:40px;border-radius:7px;border:1px solid #c8d0da;display:inline-block}
.colour-palette{display:flex;gap:7px;flex-wrap:wrap;margin:5px 0 10px}
.colour-swatch{width:30px;height:30px;border-radius:7px;padding:0;border:2px solid #fff;box-shadow:0 0 0 1px #aeb7c2}
.colour-swatch:hover{transform:scale(1.08)}
