/* Shared spacing and bounded controls for reading, selection and research. */
:root{--p2e-radius-control:8px;--p2e-radius-panel:12px;--p2e-control-height:40px;--p2e-space-1:4px;--p2e-space-2:8px;--p2e-space-3:12px;--p2e-space-4:16px;--p2e-space-6:24px}
/* Shared short-form surfaces use the same type, spacing and focus treatment. */
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker){color:var(--ink);background:var(--p2e-surface,#fff);border-color:var(--line);border-radius:var(--p2e-radius-panel);font-size:14px;line-height:1.6}
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){border-radius:var(--p2e-radius-control);color:var(--ink);font-size:14px;max-width:100%}
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) :is(button,select,input:not([type=checkbox]):not([type=radio]):not([type=file])){min-height:var(--p2e-control-height)}
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) :is(button,select,a,input,textarea):focus-visible{outline:2px solid var(--p2e-focus,var(--green));outline-offset:3px}
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) :is(.pc-muted,.pc-notice,.th-notice,small){color:var(--muted);line-height:1.6}
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) :is([role=alert],.pc-error){overflow-wrap:anywhere}
:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) footer{gap:var(--p2e-space-2)}
@media(max-width:680px){:root{--p2e-control-height:44px}:is(.pc-form-dialog,.th-form,.shell-dialog,.document-picker) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}}
.document-picker{width:min(680px,calc(100vw - 24px));max-height:90dvh;overflow:auto}
.document-picker .picker-filters{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.document-picker .picker-filters label{min-width:0}
.document-picker input[type=search],.document-picker select{min-height:44px;font-size:14px;padding:8px}
.document-picker [data-loading]{font-size:13px;color:var(--muted);margin:8px 0}.document-picker [data-list]{max-height:38dvh;overflow:auto;overscroll-behavior:contain}
.document-picker [data-list][aria-busy=true]{opacity:.6;pointer-events:none}.document-picker [data-list]>label,.document-picker [data-reader-list]>button{display:flex;align-items:center;gap:12px;padding:12px 8px;margin:0;border-bottom:1px solid var(--line);min-height:56px;width:100%;text-align:left}
.document-picker [data-list] input{width:18px;height:18px;flex:none}.document-picker [data-list] span{min-width:0;overflow-wrap:anywhere}.document-picker small{display:block;color:var(--muted)}
.document-picker [data-selection]{padding:8px 0;border-block:1px solid var(--line);font-size:13px}.document-picker [data-selection]>summary{cursor:pointer;min-height:32px;line-height:32px}.document-picker [data-selected]{display:flex;flex-wrap:wrap;gap:6px;max-height:160px;overflow:auto}.document-picker [data-selected] button{max-width:100%;overflow-wrap:anywhere;text-align:left}
.picker-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:12px;font-size:13px}.document-picker footer{position:sticky;bottom:-20px;padding:12px 0 0;background:var(--panel);flex-wrap:wrap}
.document-picker button{min-height:40px}.document-picker :focus-visible,#assistantSplitResizer:focus-visible{outline:2px solid var(--green);outline-offset:2px}
#assistantSplitResizer{display:none;touch-action:none;cursor:col-resize;background:var(--paper);position:relative;z-index:16}
#assistantSplitResizer::after{content:'';position:absolute;left:calc(50% - 1px);top:calc(50% - 20px);height:40px;width:2px;border-radius:2px;background:#8eaa9c}
#assistantSplitResizer:hover,#assistantSplitResizer:focus{background:#d5e6dd}.panel-resizing iframe{pointer-events:none}
.reading-presets{display:flex;gap:6px;flex-wrap:wrap;padding:8px;border-top:1px solid var(--line)}.reading-presets>small{width:100%;color:var(--muted)}.reading-presets>button{min-height:40px;font-size:12px}.reading-presets>button[aria-pressed=true]{background:var(--p2e-soft);color:var(--green)}
#assistantSplitResizer::before{content:'';position:absolute;inset:0 -6px}
@media(pointer:coarse){#assistantSplitResizer::before{inset:0 -16px}}
@media(min-width:1000px){
 .app-shell.shell-assistant-active[data-assistant-layout=split],.app-shell.reading-ai-active{grid-template-columns:var(--p2e-rail) minmax(320px,var(--reading-fr,1fr)) 12px minmax(360px,var(--conversation-fr,1fr))!important}
 .app-shell.shell-assistant-active[data-assistant-layout=split]>#assistantControls{grid-column:2/5}
 .app-shell.shell-assistant-active[data-assistant-layout=split]>.ai-panel,.app-shell.reading-ai-active>.ai-panel{grid-column:4}
 .app-shell.shell-assistant-active[data-assistant-layout=split]>#assistantSplitResizer,.app-shell.reading-ai-active>#assistantSplitResizer{display:block;grid-column:3;grid-row:2}
 .app-shell.reading-ai-active>#assistantSplitResizer{grid-row:1}
}
#readingFocusBar{display:none}.reading-immerse{display:inline-flex;align-items:center;gap:5px;min-height:36px;white-space:nowrap;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--green);padding:6px 9px;cursor:pointer;font-size:12px}
#readingScopeNotice{display:none;font-size:12px;gap:8px;align-items:center;justify-content:space-between;padding:6px 12px;background:#f3f7f4;border-bottom:1px solid var(--line)}#readingScopeNotice[hidden]{display:none!important}#readingScopeNotice button{background:transparent;border:0;color:var(--green);font-size:12px;min-height:32px;cursor:pointer}
.shell-assistant-active[data-assistant-layout=split] #readingScopeNotice{display:flex}
.reader-compact .writing-toolbar{overflow:visible;position:relative;flex-wrap:nowrap;padding:6px 10px;min-height:44px;z-index:19}
.reader-compact #shellWritingToolsToggle{display:inline-flex;align-items:center;min-height:36px}
.reader-compact #shellWritingToolsBody{display:none}.reader-compact .shell-tools-open #shellWritingToolsBody,.reading-immersive .shell-tools-open #shellWritingToolsBody{width:auto;display:flex;position:absolute;inset:100% 8px auto;max-height:55dvh;overflow:auto;flex-wrap:wrap;padding:12px;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px #12372c24;z-index:30}
.reader-compact #shellWritingToolsClose{display:block;margin-left:auto;width:100%;text-align:right;min-height:40px}.reader-compact .writing-actions{flex-wrap:wrap}.reader-compact .word-toolbar{flex-wrap:wrap}
.reader-compact #editor,.reader-compact #markdownPreview,.reader-compact .word-editor-content{padding:20px!important;max-width:100%;font-size:16px}.reader-compact .word-editor-host{padding:8px!important}
.app-shell.reading-immersive{position:fixed!important;inset:0!important;z-index:65;height:100dvh!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;background:var(--panel)}
.app-shell.reading-immersive>:not(.workspace-panel){display:none!important}.app-shell.reading-immersive>.workspace-panel{display:flex!important;grid-column:1!important;grid-row:1!important;width:100%!important;height:100%;min-width:0}
.reading-mobile-exit{display:none!important}
/* Keep the existing panes alive; only the surrounding navigation disappears. */
@media(min-width:1000px){
 .app-shell.reading-immersive.reading-immersive-discussion{grid-template-columns:minmax(320px,var(--reading-fr,1fr)) 12px minmax(360px,var(--conversation-fr,1fr))!important;grid-template-rows:auto minmax(0,1fr)!important}
 .app-shell.reading-immersive.reading-immersive-discussion>.workspace-panel{grid-column:1!important;grid-row:1/3!important}
 .app-shell.reading-immersive.reading-immersive-discussion>.ai-panel{display:flex!important;position:static!important;grid-column:3!important;grid-row:1/3!important;width:100%!important;height:100%!important;max-height:none!important;min-width:0;min-height:0;inset:auto!important;transform:none!important;box-shadow:none!important}
 .app-shell.reading-immersive.reading-immersive-discussion>#assistantSplitResizer{display:block!important;grid-column:2!important;grid-row:1/3!important}
 .app-shell.reading-immersive.reading-immersive-discussion>#assistantControls{display:flex!important;grid-column:3!important;grid-row:1!important}
 .app-shell.reading-immersive.reading-immersive-discussion.shell-assistant-active>.ai-panel{grid-row:2!important}
}
@media(max-width:999px){
 .app-shell.reading-immersive.reading-immersive-discussion{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr)!important}
 .app-shell.reading-immersive.reading-immersive-discussion>.reading-ai-mobile-tabs{display:flex!important;grid-column:1!important;grid-row:1!important;gap:6px;padding:6px 10px;background:var(--panel);border-bottom:1px solid var(--line)}
 .app-shell.reading-immersive.reading-immersive-discussion>.reading-ai-mobile-tabs .reading-mobile-exit{display:flex!important;flex:0 0 auto;padding:6px 12px;min-height:44px}
 .app-shell.reading-immersive.reading-immersive-discussion>.workspace-panel,.app-shell.reading-immersive.reading-immersive-discussion>.ai-panel{display:flex!important;position:static!important;grid-column:1!important;grid-row:2!important;width:100%!important;height:100%!important;max-height:none!important;min-height:0;min-width:0;inset:auto!important;transform:none!important;box-shadow:none!important}
 .app-shell.reading-immersive.reading-immersive-discussion[data-assistant-pane=chat]>.workspace-panel,.app-shell.reading-immersive.reading-immersive-discussion[data-assistant-pane=paper]>.ai-panel{display:none!important}
}
.reading-immersive #shellDocumentTools,.reading-immersive .workspace-header,.reading-immersive #assistantReaderToolbar,.reading-immersive #readingScopeNotice,.reading-immersive #documentStructureBar{display:none!important}
.reading-immersive #readingFocusBar{display:flex;align-items:center;gap:8px;padding:4px 12px;min-height:44px;border-bottom:1px solid var(--line);background:var(--panel)}#readingFocusBar>span{flex:1;min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:13px}#readingFocusBar>small{font-size:12px;color:var(--muted)}#readingFocusBar button{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex-shrink:0;min-height:36px;border:0;background:var(--paper);color:var(--green);border-radius:8px;padding:6px 12px;cursor:pointer}#readingFocusBar button[hidden]{display:none}
@media(max-width:480px){#readingFocusBar [data-ask-reading]{width:44px;padding:6px}#readingFocusBar [data-ask-reading]>span,#readingFocusBar kbd{display:none}#readingFocusBar>small{font-size:12px}}
.reading-immersive .writing-toolbar{position:relative;overflow:visible}.reading-immersive #shellWritingToolsToggle{display:inline-flex;min-height:36px}.reading-immersive #shellWritingToolsBody{display:none}.reading-immersive .shell-tools-open #shellWritingToolsBody{display:flex;flex-wrap:wrap}.reading-immersive #shellWritingToolsClose{display:block}
/* Component width, rather than viewport width, controls the composer. */
.assistant-composer{container-type:inline-size}
.ai-panel .assistant-composer .assistant-request-settings{display:grid;grid-template-columns:minmax(130px,1fr) auto auto 32px;gap:6px 10px;align-items:center}
.ai-panel .assistant-composer .assistant-model-row{max-width:none;min-width:0}.ai-panel .assistant-composer .assistant-mode-row>span,.ai-panel .assistant-composer .assistant-model-row>label{display:block}
.ai-panel .assistant-composer #assistantMode{width:80px;min-width:80px;padding:6px 24px 6px 8px;font-size:13px;height:36px}
.ai-panel .assistant-composer #modelSelect{font-size:13px;height:36px;min-height:36px;padding-right:24px}.ai-panel .assistant-composer #assistantSettingsHelp{min-width:32px;width:32px;min-height:36px}.assistant-settings-status{grid-column:1/-1}
@container(max-width:560px){.ai-panel .assistant-composer .assistant-request-settings{grid-template-columns:minmax(0,1fr) auto 44px;gap:2px 8px}.ai-panel .assistant-composer .assistant-model-row{grid-column:1/-1}.ai-panel .assistant-composer #assistantMode,.ai-panel .assistant-composer #modelSelect,.ai-panel .assistant-composer #assistantSettingsHelp{height:44px;min-height:44px}.ai-panel .assistant-composer #assistantSettingsHelp{min-width:44px;width:44px}.ai-panel .assistant-composer .assistant-search-toggle{min-height:44px}}
@media(max-width:680px){.document-picker .picker-filters{gap:0 8px}.document-picker button,.reading-immerse,#readingFocusBar button{min-height:44px}.reader-compact .shell-tools-open #shellWritingToolsBody{max-height:50dvh}.pc-form-dialog{padding:16px}.document-picker footer{bottom:-16px}.assistant-request-settings .assistant-search-toggle>span:first-child{font-size:12px!important}}

.issue-environment{display:flex;align-items:center;gap:8px}.issue-environment input{width:18px;height:18px}.issue-priority{font-size:11px;color:var(--muted)}.issue-acceptance,.issue-events,.issue-environment-details{font-size:13px;margin:10px 0;overflow-wrap:anywhere}.issue-events article{border-left:2px solid var(--line);padding:8px 12px;margin:8px 0}.issue-events small{display:block;color:var(--muted)}.issue-acceptance p,.issue-events p{white-space:pre-wrap}.issue-filters{grid-template-columns:1fr 1fr}.issue-filters>input{grid-column:1/-1}

.reading-immersive-active #companionFloating{display:none!important}

.reading-presets[hidden],.reading-presets>button[hidden]{display:none}

@media(max-width:680px){
 .ai-panel .assistant-composer .assistant-request-settings{row-gap:0}
 .ai-panel .assistant-composer .chat-form textarea{height:44px;min-height:44px}
}

.reader-compact #shellWritingToolsToggle,.reading-immersive #shellWritingToolsToggle,.reader-compact #shellWritingToolsClose,.reading-immersive #shellWritingToolsClose{gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--green);font:inherit;font-size:13px;cursor:pointer}
.reader-compact #shellWritingToolsToggle:hover,.reading-immersive #shellWritingToolsToggle:hover{border-color:var(--green);background:var(--paper)}
#shellWritingToolsToggle:focus-visible,#shellWritingToolsClose:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* Shared operation feedback and touch targets. */
.pc-empty-actions{justify-content:center}.pc-form-dialog[aria-busy=true] button[type=submit]{opacity:1;background:var(--green);color:white;cursor:progress}
.pc-form-dialog :focus-visible,.external-recovery :focus-visible{outline:2px solid var(--green);outline-offset:3px}
.external-recovery{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.external-recovery[hidden]{display:none}.external-recovery button{min-height:40px}
.research-tools-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;background:var(--panel);list-style:none}
.research-tools-toggle::-webkit-details-marker{display:none}.research-tools-toggle::after{content:'';width:7px;height:7px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 4px 4px 0}
details[open]>.research-tools-toggle::after{transform:rotate(225deg);margin-bottom:0}.research-tools-toggle:hover{background:var(--paper)}.research-tools-toggle:focus-visible{outline:2px solid var(--green);outline-offset:2px}
@media(max-width:680px){
 .pc-form-dialog button,.pc-form-dialog input:not([type=checkbox]):not([type=radio]),.pc-form-dialog select,.external-recovery button{min-height:44px}
 .pc-form-dialog header [data-close]{min-width:44px}.pc-form-dialog footer{gap:8px}.pc-form-dialog input:not([type=checkbox]):not([type=radio]),.pc-form-dialog select,.pc-form-dialog textarea{font-size:16px}
 .pc-form-dialog .pc-notice{overflow-wrap:anywhere}.research-tools-toggle{min-height:44px}
}

@media(max-width:680px){.th-form button,.th-form input:not([type=checkbox]):not([type=radio]),.th-form select{min-height:44px}.th-form input,.th-form select,.th-form textarea{font-size:16px}.th-form footer{flex-wrap:wrap}}
