/* Modified by BitCube, 2026-10-22: shared page geometry, readable controls and contextual outputs. */
/* Page canvases use the window; constrain reading surfaces inside them, not the whole app. */
.view {width:100%;max-width:none;margin-inline:0;min-width:0;}
.view .page-head {margin-bottom:20px;}
.view .page-head h1 {font-size:25px;margin-bottom:8px;}
.view .page-head .sub {max-width:95ch;line-height:1.8;}
.task-workspace {display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:22px;align-items:start;}
.task-controls,.task-output,.task-tab-bodies,.task-tab-panel {min-width:0;}
.task-controls,.task-output {display:flex;flex-direction:column;gap:18px;}
.task-card,.task-workspace .panel,.task-tab-panel>.panel {min-width:0;margin:0;padding:22px;background:var(--panel);border:1px solid var(--border);border-radius:9px;box-shadow:none;}
.task-card h2,.task-fold summary,.task-tab-panel h2 {font-size:15px;font-weight:600;line-height:1.6;}
.task-card>h2,.task-result-heading {margin:0 0 16px;}
.task-card .panel-head {gap:10px;align-items:flex-start;flex-wrap:wrap;margin-bottom:16px;}
.task-card .panel-head h2 {margin:0;}
.task-card .panel-head .muted {font-size:11px;line-height:1.7;}
.task-card .panel {margin-top:18px;padding:18px 0 0;background:transparent;border:0;border-top:1px solid var(--border);border-radius:0;}
.task-card .form-row,.task-card .btn-row {gap:12px;flex-wrap:wrap;align-items:flex-end;}
.task-card .form-row>label,.task-card .btn-row>label {display:flex;flex-direction:column;align-items:stretch;gap:7px;flex:1 1 145px;min-width:0;font-size:12px;color:var(--text-2);line-height:1.6;}
.task-card label input:not([type=checkbox]):not([type=range]),.task-card label select,.task-card label textarea {width:100%;min-width:0;box-sizing:border-box;}
.task-card .check {display:flex;flex-direction:row;align-items:center;gap:8px;}
.task-controls>.form-row.task-card {display:grid;grid-template-columns:1fr;gap:14px;}
.task-controls>.form-row.task-card h2 {margin:0;}
.task-controls .form-row>label,.task-controls .btn-row>label {flex-basis:100%;}
.task-controls .btn-row .btn {flex:1 1 auto;}
.task-controls .dropzone {padding:24px 12px;margin:0 0 18px;}
.task-controls .dropzone .dz-icon {font-size:26px;}
.task-controls .dropzone .dz-title {font-size:13px;line-height:1.8;}
.task-controls .dropzone .dz-sub {font-size:11px;line-height:1.8;}
.task-controls .outline-list {max-height:260px;overflow-y:auto;overscroll-behavior-y:auto;}
.task-controls .outline-item .ot-kp {display:none;}
.task-controls .outline-item {padding:9px;gap:7px;}
.task-controls .outline-item .ot-title {font-size:12px;line-height:1.6;}
.task-controls .outline-item .code {min-width:20px;}
.task-controls .precheck-item {grid-template-columns:minmax(0,1fr);gap:6px;}
.task-controls .pi-basis {font-size:11px;}
.task-controls .pseg {width:max-content;max-width:100%;}
.task-controls .slider-list {max-height:460px;overflow:auto;}
.task-controls .proj-select-row label {display:flex;flex-direction:column;align-items:stretch;min-width:0;}
.task-controls .proj-select {min-width:0;}
.task-project-duplicate {display:none;}
.task-fold {background:var(--panel);border:1px solid var(--border);border-radius:9px;min-width:0;}
.task-fold>summary {list-style-position:inside;cursor:pointer;padding:18px 20px;color:var(--text-2);}
.task-fold[open]>summary {border-bottom:1px solid var(--border);color:var(--text);}
.task-fold>.task-card {border:0;border-radius:0;background:transparent;}
.task-result {min-height:230px;}
.task-result>#e-report-wrap {padding:0;border:0;}
.task-result>#e-report-wrap>.panel-head {display:none;}
.task-empty {text-align:center;padding:38px 20px;color:var(--muted);}
.task-empty[hidden] {display:none;}
.task-empty-mark {display:grid;place-items:center;width:45px;height:45px;background:var(--panel-2);border:1px solid var(--border);border-radius:12px;margin:0 auto 14px;font-size:24px;color:var(--accent-500);}
.task-empty h3 {font-size:15px;font-weight:500;color:var(--text-2);margin:0 0 10px;}
.task-empty p {font-size:12px;line-height:1.9;max-width:42em;margin:0 auto;}
.task-result-tabs>.task-section-nav {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;}
.task-section-nav button,.task-section-nav a {font:inherit;font-size:13px;cursor:pointer;border:1px solid var(--border);background:var(--panel);color:var(--muted);padding:9px 14px;border-radius:6px;text-decoration:none;line-height:1.6;}
.task-section-nav [aria-selected=true] {color:var(--accent-500);border-color:var(--accent-500);background:var(--brand-soft);font-weight:600;}
.task-tab-panel[hidden] {display:none;}
.task-tab-panel {display:flex;flex-direction:column;gap:18px;}
.task-section-workspace {display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:start;}
.task-section-workspace>.task-section-nav {margin:0;padding:16px;display:flex;flex-direction:column;align-items:stretch;gap:8px;border:1px solid var(--border);border-radius:9px;background:var(--panel);position:sticky;top:calc(var(--topbar-h) + 16px);}
.task-section-workspace .resource-index-label {font-size:11px;padding:0 6px 8px;}
.task-section-workspace .resource-index a {font-size:13px;min-height:38px;border-color:transparent;}
.task-section-workspace .resource-index a[aria-selected=true] {background:var(--brand-soft);color:var(--accent-500);border-color:var(--border);}
.task-tab-panel .form-row,.task-tab-panel .btn-row {max-width:100%;}
.task-tools-right {grid-template-columns:minmax(0,1fr) minmax(300px,370px);}
.task-tools-right>.task-controls {grid-column:2;grid-row:1;}
.task-tools-right>.task-output {grid-column:1;grid-row:1;}
.task-notice {padding:12px 18px!important;border:1px solid var(--border)!important;border-radius:7px;background:var(--panel-2);margin-bottom:18px!important;}
.task-notice .panel-head {display:none;}
.task-notice p {margin:0;font-size:12px;}
#quote-online[hidden],#submit-online[hidden] {display:none;}
.task-service-empty p {font-size:13px;line-height:1.9;color:var(--muted);max-width:50em;}
.task-controls .ar-row {padding:12px 0;gap:7px;align-items:flex-start;}
.task-controls .ar-row>span:first-child {flex-basis:100%;line-height:1.7;}
.task-controls .ar-row .mini-btn {margin-left:auto;}
#view-writer .task-controls .form-row:last-of-type {display:flex;}
#view-writer .task-controls .form-row:last-of-type>label {flex-basis:140px;}
#view-writer #w-result {min-height:220px;max-height:none;}
#view-writer .task-controls>section:nth-last-child(1) {position:relative;}
#view-writer .task-controls>section:nth-last-child(1) .btn-row {position:sticky;bottom:12px;}
#view-knowledge .kb-layout {grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:22px;align-items:start;}
#view-knowledge .kb-left .panel {min-height:0;}
#view-knowledge .kb-results {max-height:650px;}
#view-knowledge .panel-head #knowledge-new {margin-left:auto;font-size:12px;}
.task-editor {position:fixed;inset:0 0 0 auto;width:min(620px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;box-sizing:border-box;padding:0;border:0;border-left:1px solid var(--border);background:var(--panel);color:var(--text);box-shadow:-16px 0 48px #0003;}
.task-editor::backdrop {background:#0e141966;}
#knowledge-editor .panel {background:var(--panel);padding:24px;margin:0;border:0;border-radius:0;}
#knowledge-editor .panel-head {display:flex;align-items:center;gap:12px;position:sticky;top:0;background:var(--panel);z-index:1;padding-bottom:16px;border-bottom:1px solid var(--border);}
.task-editor-close {border:0;background:transparent;color:var(--muted);font-size:28px;line-height:1;cursor:pointer;margin-left:auto;}
.task-editor .form-col label {display:flex;flex-direction:column;gap:7px;font-size:13px;}
.task-editor .form-col label.check {flex-direction:row;align-items:center;}
.task-editor .form-col {gap:18px;}
.task-editor .form-col textarea {min-height:160px;}
.task-editor-actions {display:flex;justify-content:flex-end;gap:10px;padding-top:18px;}
/* Shared project context stays compact; full workflow remains available on every page. */
.journey-page-bar {padding:12px 16px;margin-bottom:20px;background:var(--panel);border-color:var(--border);}
.journey-context {gap:10px;padding-bottom:10px;border-color:var(--border);}
.journey-page-action {gap:8px;margin-top:8px;}
.journey-page-action p {font-size:12px;}
.journey-steps.compact {margin-top:8px;}
.journey-steps.compact .journey-step {padding:8px;}
.journey-project-todos {margin-top:8px;}
/* Use shared colors in both themes, including the workflow dashboard. */
.journey-panel,#view-dashboard .workspace-grid,.journey-page-bar,.journey-resource-grid button,.journey-dialog {background:var(--panel);color:var(--text);border-color:var(--border);}
.journey-next,.journey-step.current {background:var(--brand-soft);}
.journey-next p,.journey-dialog p,.journey-dialog label {color:var(--text-2);}
.journey-step-icon,.journey-step.done .journey-step-icon,.journey-step.current .journey-step-icon {background:var(--panel-2);}
.journey-step.done,.journey-step.current,.journey-text,.journey-stage-badge {color:var(--accent-500);}
.journey-todo {color:var(--text);border-color:var(--border);}
.journey-stage-badge,.journey-dialog-reason {background:var(--panel-2);border-color:var(--border);}
.journey-resource-grid button {border-color:var(--border);}
.journey-resource-grid button:hover {background:var(--panel-2);}
@media(min-width:1400px){
 .project-workspace{grid-template-columns:clamp(280px,15vw,360px) minmax(0,1fr);}
 .project-open .pc-name{font-size:14px;}
 .task-tab-panel .form-row>label{max-width:560px;}
 .journey-steps.compact .journey-step b{font-size:14px;}
 .journey-steps.compact .journey-step em{font-size:12px;}
 .journey-steps.compact .journey-step-icon{width:32px;height:32px;}
 .journey-context label,.journey-context select{font-size:13px;}
 .task-card .form-row>label,.task-card .btn-row>label{font-size:13px;}
 .task-controls .outline-item .ot-title{font-size:14px;}
 .task-controls .outline-item .ot-kp{font-size:12px;}
 .task-controls .dropzone .dz-title{font-size:14px;}
 .task-controls .dropzone .dz-sub{font-size:12px;}
}
@media(min-width:1900px){.task-workspace{grid-template-columns:410px minmax(0,1fr);gap:26px;}.task-tools-right{grid-template-columns:minmax(0,1fr) 380px;}}
@media(max-width:1100px){.task-workspace{grid-template-columns:330px minmax(0,1fr);gap:16px;}.task-tools-right{grid-template-columns:minmax(0,1fr) 310px;}.task-card,.task-workspace .panel{padding:18px;}.task-section-workspace{grid-template-columns:160px minmax(0,1fr);gap:16px;}#view-knowledge .kb-layout{grid-template-columns:minmax(0,1fr) 310px;}#view-knowledge .kb-right{display:block;}}
@media(max-width:850px){.task-workspace,.task-tools-right{grid-template-columns:minmax(0,1fr);}.task-tools-right>.task-controls,.task-tools-right>.task-output{grid-column:auto;grid-row:auto;}.task-tools-right>.task-output{order:-1;}.task-controls .outline-list{max-height:220px;}#view-knowledge .kb-layout{grid-template-columns:minmax(0,1fr);}#view-knowledge .kb-results{max-height:540px;}.task-section-workspace{grid-template-columns:minmax(0,1fr);}.task-section-workspace>.task-section-nav{position:static;flex-direction:row;flex-wrap:nowrap;overflow:auto;padding:8px;}.task-section-nav a{flex-shrink:0;}.task-section-workspace .resource-index-label{display:none;}}
@media(max-width:560px){.view .page-head h1{font-size:22px;}.task-card,.task-workspace .panel,.task-tab-panel>.panel{padding:16px;}.task-card .form-row>label,.task-card .btn-row>label{flex-basis:100%;width:100%;}.task-card .btn-row>.btn{flex-grow:1;}.task-section-nav button,.task-section-nav a{font-size:12px;padding:8px 10px;}.task-fold>summary{padding:15px 16px;font-size:13px;}.task-empty{padding:28px 8px;}.task-editor .form-col textarea{min-height:130px;}.task-result{min-height:200px;}#knowledge-editor .panel{padding:18px;}.journey-context label{font-size:11px;}#view-knowledge .kb-results{max-height:440px;}}
@media print{.task-workspace,.task-tools-right{display:block;}.task-section-nav,.task-editor{display:none;}.task-tab-panel[hidden]{display:block;}.task-fold>*{display:block;}}
.task-controls .precheck-item {display:grid;grid-template-columns:minmax(0,1fr);align-items:start;}
.task-controls .pi-basis {max-width:100%;white-space:normal;overflow:visible;}
.task-controls .precheck-list {max-height:340px;overflow-y:auto;overscroll-behavior-y:auto;}
.task-controls .outline-item .ot-kp {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;}
#view-eval .task-controls>.form-row.task-card {grid-template-columns:repeat(2,minmax(0,1fr));}
#view-eval .task-controls>.form-row.task-card h2 {grid-column:1/-1;}
#view-eval .task-controls>.form-row.task-card label {min-width:0;}
#view-bidding .task-controls .btn-row>label {flex-basis:140px;}
.task-editor {overflow-y:auto;}
.kb-metric-details {margin-top:14px;border-top:1px solid var(--border);padding-top:12px;font-size:12px;line-height:1.9;color:var(--muted);}
.kb-metric-details summary {cursor:pointer;color:var(--text-2);font-weight:500;}
.kb-metric-details>div,.kb-metric-details>p {margin:10px 0;}
#w-outline [role=checkbox]:focus-visible {outline:2px solid var(--accent-500);outline-offset:2px;}
@media(max-width:560px){
 #sub-overview .ar-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:14px 0;}
 #sub-overview .ar-row>span{min-width:0;max-width:100%;}
 #sub-overview .ar-row>span:nth-child(n+3){grid-column:1/-1;}
 #sub-overview .ar-row>.sub{margin:0;line-height:1.8;}
}

/* Primary actions stay reachable while working through long input columns. */
.task-primary-actions{position:sticky;top:calc(var(--topbar-h,64px) + 12px);z-index:4;box-shadow:0 4px 18px #0000000a;}
.task-primary-actions h2{margin-bottom:12px;}
.task-primary-actions .sub{margin:12px 0 0;line-height:1.7;}
.task-primary-actions .btn-row{display:flex;}
@media(max-width:850px){.task-primary-actions{top:calc(var(--topbar-h,64px) + 6px);}}
