/* Original engineering-dashboard layout. No external UI framework. */
:root{--paper:#f1f3f7;--white:#fff;--ink:#18283d;--muted:#64748b;--line:#dfe5ed;--blue:#206bc4;--blue-dark:#1857a2;--tint:#edf4fc;--green:#206bc4;--green-dark:#1857a2;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;--radius:8px;--shadow:0 2px 4px rgba(24,40,61,.025)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}[hidden]{display:none!important}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure,dl,dd{margin:0}h1,h2,h3{line-height:1.35}h2{font-size:18px}h3{font-size:14px}a{color:var(--blue);text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,.table-scroll:focus-visible{outline:3px solid #9fc6f3;outline-offset:3px}img{display:block;max-width:100%;object-fit:cover}fieldset{margin:0;padding:0;border:0;min-width:0}legend{padding:0}::selection{background:#d8e9fc}.wrap{width:min(100%,1320px);padding:0 28px;margin:auto}.card,.summary-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.sample-strip{background:#e7ecf3;border-bottom:1px solid var(--line);font-size:11px;color:#50647d;padding:7px 0}.strip-inner{display:flex;justify-content:space-between;gap:16px}.micro{font-size:10px;letter-spacing:.05em}.app-header{background:#fff;border-top:3px solid var(--blue);border-bottom:1px solid var(--line)}.header-inner,.header{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:76px}.header{padding:18px 0;border-bottom:1px solid var(--line)}.brand-lockup{display:flex;align-items:center;gap:12px;min-width:0}.brand-symbol{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:6px;background:var(--blue);color:#fff;font-size:21px;font-weight:750}.brand,.brand-name{font-size:17px;font-weight:700;letter-spacing:.035em}.brand-en{font-size:9px;color:var(--muted);letter-spacing:.11em;margin-top:3px}.header-badge{display:inline-flex;align-items:center;flex-shrink:0;min-height:29px;padding:4px 10px;background:var(--tint);border:1px solid #d5e5f8;border-radius:5px;color:var(--blue-dark);font-size:11px;font-weight:600}.client-link{display:flex;align-items:center;gap:9px;min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:5px;background:var(--white);font-size:12px;font-weight:600}.report-masthead,.title-block{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:26px 0 22px}.page-kicker{font-size:10px;font-weight:700;color:var(--blue);letter-spacing:.08em;margin-bottom:7px}.project-name,.title-block h1{font-size:29px;font-weight:720;overflow-wrap:anywhere}.mast-sub,.title-sub{color:var(--muted);font-size:12px;margin-top:7px}.mast-date{font-size:11px;color:var(--muted);text-align:right;white-space:pre-line;flex-shrink:0}.progress-grid{display:grid;grid-template-columns:1.12fr 1.08fr .9fr;gap:16px;margin-bottom:22px;align-items:stretch}.summary-card{padding:19px 20px 18px;border-top:3px solid var(--blue)}.summary-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.eyebrow{font-size:11px;line-height:1.5;color:var(--muted);font-weight:650}.card-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:4px;background:var(--tint);color:var(--blue);font-size:10px;font-weight:700;flex-shrink:0}.current-progress h2{font-size:24px;font-weight:700;overflow-wrap:anywhere}.current-progress h2.pending-progress{font-size:22px}.progress-meta{color:var(--blue);font-size:11px;margin-top:9px}.progress-note{font-size:12px;color:var(--muted);line-height:1.65;margin-top:9px;overflow-wrap:anywhere}.next-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.next-item{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px}.next-number{display:grid;place-items:center;width:20px;height:20px;background:var(--tint);border-radius:4px;color:var(--blue);font-size:9px;font-weight:700;margin-top:1px}.next-item h3{font-size:13px;font-weight:650}.next-item p{font-size:11px;color:var(--muted);line-height:1.6;margin-top:3px;white-space:pre-wrap;overflow-wrap:anywhere}.completion-date{font-size:31px;line-height:1.25;font-weight:750;color:var(--blue-dark);font-variant-numeric:tabular-nums}.completion-detail{font-size:11px;color:var(--muted);margin-top:10px;overflow-wrap:anywhere}.completion-footnote{border-top:1px solid var(--line);margin-top:16px;padding-top:10px;font-size:10px;color:var(--muted)}.section-heading,.module-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.section-heading h2,.module-heading h2{font-size:17px;font-weight:700}.section-heading p{font-size:11px;color:var(--muted);margin-top:4px}.count-badge{display:inline-block;flex-shrink:0;border:1px solid var(--line);background:#f7f9fc;border-radius:4px;padding:4px 8px;font-size:10px;color:var(--muted)}.schedule-section{margin-bottom:22px;overflow:hidden}.table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-table,.baseline-table{border-collapse:collapse;width:100%;min-width:750px;font-size:12px;text-align:left;font-variant-numeric:tabular-nums}.schedule-table th,.baseline-table th{background:#f6f8fb;color:#617189;font-size:11px;font-weight:650;padding:12px 20px;border-bottom:1px solid var(--line);white-space:nowrap}.schedule-table td,.baseline-table td{padding:14px 20px;border-bottom:1px solid #e8ecf2;vertical-align:middle}.schedule-table tbody tr:last-child td,.baseline-table tbody tr:last-child td{border-bottom:0}.schedule-table tbody tr:hover,.baseline-table tbody tr:hover{background:#fafbfd}.schedule-table th:first-child{width:27%}.schedule-node h3{font-size:12px;font-weight:650;display:inline;overflow-wrap:anywhere}.schedule-cell dt{display:none}.schedule-cell dd{white-space:nowrap;line-height:1.6}.schedule-original{color:var(--muted)}.schedule-adjusted{color:var(--blue-dark);font-weight:600}.actual-detail{display:block;font-size:10px;color:var(--muted);margin-top:2px}.fixed-label{display:inline-block;max-width:100%;border:1px solid var(--line);border-radius:3px;padding:1px 5px;margin-left:7px;color:var(--muted);font-size:9px;white-space:normal;overflow-wrap:anywhere}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:4px;border:1px solid transparent;font-size:10px;font-weight:600;white-space:nowrap}.status-badge:before{content:"";width:5px;height:5px;flex-shrink:0;border-radius:50%;background:currentColor}.status-done{background:#e9f6ee;border-color:#d2eadc;color:#27824c}.status-active{background:#eaf2fc;border-color:#d2e4fa;color:#206bc4}.status-pending{background:#f0f3f7;border-color:#e0e6ee;color:#6b7a8e}.schedule-note{padding:12px 20px;font-size:10px;color:var(--muted);border-top:1px solid var(--line);background:#fafbfd}.table-empty{padding:35px 20px!important;color:var(--muted);text-align:center}.feed-error,.error-banner{margin:14px 20px;padding:10px 12px;background:#fff4f1;border:1px solid #f0d5ce;border-radius:5px;color:#a94638;font-size:12px;overflow-wrap:anywhere}.secondary-details{overflow:hidden}.details-body{padding:0 20px}.feed-entry{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;padding:23px 0;border-bottom:1px solid var(--line)}.feed-entry:last-child{border-bottom:0}.entry-meta{border-right:1px solid var(--line);padding-right:15px}.entry-date{font-size:12px;font-weight:650;display:block;color:var(--ink)}.entry-date-kind{font-size:10px;color:var(--muted);margin-top:4px}.entry-source{display:inline-block;margin-top:9px;font-size:9px;padding:2px 5px;border:1px solid #d7e6fa;border-radius:3px;color:var(--blue)}.entry-title{font-size:15px;font-weight:700}.entry-copy,.entry-next,.entry-completed{font-size:12px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;color:#586b82}.entry-next{background:var(--tint);border-left:2px solid var(--blue);border-radius:0 4px 4px 0;padding:8px 11px;color:var(--blue-dark)}.entry-completed{color:#4c7860}.feed-empty{font-size:12px;color:var(--muted);padding:28px 0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.photo-grid.single{grid-template-columns:1fr;max-width:560px}.photo-grid>button{position:relative;padding:0;background:#e8edf3;border:1px solid var(--line);border-radius:5px;overflow:hidden;text-align:left}.photo-grid img{width:100%;aspect-ratio:1.55;transition:transform .2s}.photo-grid>button:hover img{transform:scale(1.025)}.photo-label,.expand-icon{position:absolute;bottom:7px;padding:3px 6px;background:#fffffff0;border-radius:3px;font-size:9px;color:var(--blue-dark)}.photo-label{left:7px}.expand-icon{right:7px;font-size:13px}.site-footer,.footer{display:flex;justify-content:space-between;gap:22px;margin-top:26px;padding:21px 0 26px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.footer-brand{font-size:13px;font-weight:650;color:var(--ink);margin-bottom:4px}.footer-right{text-align:right}.selector-dashboard .wrap{max-width:1100px}.selector-intro{padding:35px 0 24px}.selector-intro h1{font-size:30px;font-weight:730}.selector-intro>p:last-child{font-size:13px;color:var(--muted);margin-top:9px}.workflow-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.workflow-strip span{display:flex;align-items:center;gap:10px;background:#e8edf4;padding:11px 14px;border:1px solid #dce4ee;border-radius:5px;font-size:12px;font-weight:600;color:#566980}.workflow-strip b{display:grid;place-items:center;width:23px;height:23px;background:#fff;border:1px solid #dbe3ed;border-radius:4px;font-size:11px;color:var(--blue)}.versions{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:24px}.version{padding:25px;display:flex;flex-direction:column}.version-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.version-icon{display:grid;place-items:center;width:38px;height:38px;background:var(--tint);border:1px solid #dbe7f7;border-radius:6px;font-size:19px;font-weight:700;color:var(--blue)}.version h2{font-size:24px;font-weight:700}.version-description{font-size:12px;color:var(--muted);line-height:1.9;margin-top:11px}.version-features{list-style:none;padding:0;margin:17px 0 21px;font-size:12px;display:grid;gap:7px;color:#4f637a}.version-features li:before{content:"✓";font-weight:700;color:var(--blue);margin-right:8px}.version-links{display:flex;flex-direction:column;gap:10px;margin-top:auto}.version-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:43px;padding:9px 13px;border:1px solid #ccd8e6;border-radius:5px;font-size:12px;font-weight:600;color:var(--blue)}.version-links a.primary{background:var(--blue);border-color:var(--blue);color:#fff}.version-links a:hover{filter:brightness(.97)}.local-notice{padding:12px 15px;background:#eaf1fa;border:1px solid #d7e3f3;border-left:3px solid var(--blue);border-radius:5px;font-size:11px;color:#5b6e84;line-height:1.8}.local-notice strong{font-weight:650;color:var(--blue-dark)}.local-notice p{margin-top:4px}.template-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;padding:12px 0;font-size:11px}.template-nav a{display:flex;align-items:center;min-height:30px;text-decoration:underline;text-underline-offset:3px}.template-nav span{margin-left:auto;color:var(--muted);font-size:10px}.plan-toolbar{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:15px 18px;margin-bottom:18px;box-shadow:var(--shadow)}.plan-manager-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.plan-picker{display:grid;grid-template-columns:auto auto minmax(200px,420px);align-items:center;gap:15px;flex:1;min-width:0}.plan-picker h2{font-size:14px;white-space:nowrap}.plan-picker label{font-size:11px;color:var(--muted);white-space:nowrap}.plan-current-label{font-size:10px;color:var(--muted);margin-top:9px}.new-plan-button{min-height:40px;padding:8px 13px;background:var(--blue);color:#fff;border-radius:5px;font-size:12px;font-weight:600;flex-shrink:0}.workspace-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}.workspace-tabs button{display:flex;align-items:center;gap:12px;text-align:left;min-height:77px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:6px;color:var(--ink)}.workspace-tabs button[aria-selected=true]{border-color:#94bce9;background:#edf4fc;box-shadow:inset 0 -3px 0 var(--blue)}.workspace-tabs strong{display:block;font-size:14px;font-weight:700}.workspace-tabs small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.step-number{display:grid;place-items:center;width:31px;height:31px;flex-shrink:0;border-radius:5px;background:#edf1f7;border:1px solid #dce4ee;color:#657890;font-size:13px;font-weight:750}.workspace-tabs button[aria-selected=true] .step-number{background:var(--blue);border-color:var(--blue);color:#fff}.module-panel{margin-bottom:20px;overflow:hidden}.module-heading .page-kicker{margin-bottom:4px;font-size:9px}.module-note{color:var(--muted);font-size:11px;line-height:1.75;padding:15px 20px}.module-empty,.notice{margin:18px 20px;padding:20px;background:#f6f8fb;border:1px dashed #d5dfe9;border-radius:5px;color:var(--muted);font-size:12px}.baseline-table{min-width:610px}.baseline-table td:first-child{width:70px;color:var(--muted)}.draft-workspace{padding:20px}.draft-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:15px;border-bottom:1px solid var(--line)}.draft-intro h3{font-size:16px;font-weight:700}.draft-intro p{font-size:11px;color:var(--muted);margin-top:6px}.text-button{padding:6px 0;background:none;color:var(--blue);font-size:11px;min-height:30px;text-decoration:underline;text-underline-offset:3px}.draft-top-fields{display:grid;grid-template-columns:1fr 180px;gap:18px;padding-top:20px}.field{display:block;margin-bottom:18px;min-width:0}.field-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:650;margin-bottom:7px}.field-label small{font-size:10px;color:var(--muted);font-weight:400}.field-help,.node-inline-note,.node-list-help,.upload-help,.save-note,.list-note{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:7px;overflow-wrap:anywhere}input[type=date],input[type=text],input[type=number],textarea,select{display:block;width:100%;min-width:0;min-height:41px;border:1px solid #ced8e5;border-radius:5px;background:#fff;padding:9px 11px;font-size:13px;color:var(--ink);appearance:auto}/* Native date controls must fit their grid cell, including Safari intrinsic sizing. */
input[type=date]{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}
.draft-row-fields>.field,.node-date-row>.field,.form-row>.field{min-width:0;max-width:100%}
textarea{resize:vertical;min-height:105px;line-height:1.7}input::placeholder,textarea::placeholder{color:#91a0b3;font-size:11px}input[type=checkbox],input[type=radio]{accent-color:var(--blue)}.draft-row{background:#f9fbfd;border:1px solid var(--line);border-radius:6px;padding:15px;margin:0 0 13px}.draft-row-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-bottom:12px;margin-bottom:13px;border-bottom:1px solid var(--line);font-size:11px;font-weight:700;color:var(--blue-dark)}.draft-row-controls{display:flex;gap:6px}.draft-row-controls button{font-size:10px;padding:4px 9px;min-height:30px;background:#fff;border:1px solid #d6dfeb;border-radius:4px;color:var(--muted)}.draft-row-fields{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) repeat(2,minmax(0,1fr));gap:13px;min-width:0}.draft-row-fields .field{margin-bottom:12px}.draft-row-fields .field-label{font-size:11px}.process-picker{margin-top:8px;max-width:100%}.draft-text-wrap{grid-column:3/5}.draft-row-relations{display:flex;gap:20px;align-items:flex-start;margin-top:4px}.draft-predecessors{flex:1;min-width:0}.draft-predecessors summary{font-size:11px;cursor:pointer;color:var(--muted)}.draft-predecessors .predecessor-list{margin-top:9px;grid-template-columns:repeat(3,1fr)}.draft-add-button,.draft-save,.draft-button,.preview-cancel{background:#fff;color:var(--blue-dark);border:1px solid #bccde1;border-radius:5px;min-height:40px;padding:9px 14px;font-size:12px;font-weight:600}.draft-reason{margin-top:20px}.draft-actions,.form-actions{display:flex;gap:11px;justify-content:flex-end;align-items:center;border-top:1px solid var(--line);padding-top:17px;margin-top:19px}.draft-freeze,.publish-button,.preview-confirm{background:var(--blue);color:#fff;border-radius:5px;min-height:41px;padding:10px 16px;font-size:12px;font-weight:600}.draft-error,.draft-status,.schedule-message,.save-error,.preview-error{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;color:#b14d3e;margin-top:13px}.draft-status,.schedule-message{color:var(--blue-dark)}.schedule-message.error{color:#b14d3e}.draft-error:empty,.draft-status:empty,.schedule-message:empty,.save-error:empty,.preview-error:empty{display:none}.draft-empty{padding:24px;font-size:12px;color:var(--muted)}.node-workspace{padding:20px}.schedule-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:17px;border-bottom:1px solid var(--line)}.schedule-topline h2{font-size:16px}.schedule-topline p{font-size:11px;color:var(--muted);margin-top:5px}.schedule-year-form{display:flex;gap:10px;align-items:flex-end;flex-shrink:0}.schedule-year-form label{font-size:11px}.schedule-year-form input{margin-top:5px;width:130px}.schedule-year-form button{min-height:41px;border:1px solid #ccd8e6;border-radius:5px;background:var(--tint);padding:8px 12px;color:var(--blue-dark);font-size:11px}.year-confirmed{font-size:11px;color:var(--blue-dark);text-align:right}.year-confirmed small{display:block;font-size:10px;color:var(--muted)}.node-year-note,.editor-lock-note,.protected-note{font-size:11px;color:#9a7137;line-height:1.8;margin-top:10px;padding:9px 12px;background:#fff8eb;border:1px solid #f0e0c0;border-radius:5px}.schedule-layout{display:grid;grid-template-columns:275px minmax(0,1fr);gap:22px;margin-top:20px}.node-overview{border:1px solid var(--line);border-radius:6px;background:#f8fafc;overflow:hidden;align-self:start}.node-list-title{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;background:#eff3f8;border-bottom:1px solid var(--line);font-size:12px;font-weight:650}.node-list-title small{font-size:10px;font-weight:400;color:var(--muted)}.node-row{display:block;width:100%;min-width:0;text-align:left;padding:12px 13px;background:none;border-bottom:1px solid var(--line);border-left:3px solid transparent}.node-row.selected{border-left-color:var(--blue);background:var(--tint)}.node-row-name{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;min-width:0;font-size:12px;font-weight:600}.node-row-name>span{min-width:0;max-width:100%;overflow-wrap:anywhere}.node-row-mark{max-width:100%;font-size:9px;background:#e3edf9;border-radius:3px;padding:2px 5px;white-space:normal;overflow-wrap:anywhere;color:var(--blue-dark);font-weight:500}.node-row-plan{display:block;overflow-wrap:anywhere;font-size:12px;font-weight:600;color:var(--blue-dark);margin-top:5px;font-variant-numeric:tabular-nums}.node-row-original{display:block;overflow-wrap:anywhere;font-size:10px;color:var(--muted);margin-top:3px}.node-list-help{padding:12px 13px;margin:0}.node-editor{padding:18px;border:1px solid var(--line);border-radius:6px;min-width:0}.node-editor>.field{margin-bottom:13px}.node-context{background:#f7f9fc;border:1px solid var(--line);border-radius:5px;padding:12px 14px;margin-bottom:17px}.node-context dl{display:grid;grid-template-columns:125px minmax(0,1fr);gap:6px 13px;font-size:12px}.node-context dt{font-size:11px;color:var(--muted)}.node-context dd{overflow-wrap:anywhere}.node-context .protected-note{font-size:10px}.node-tabs{display:flex;gap:0;margin-bottom:19px;border-bottom:1px solid var(--line)}.node-tabs button{flex:1;min-width:0;padding:10px 5px;border-bottom:2px solid transparent;background:none;font-size:12px;color:var(--muted);white-space:normal;overflow-wrap:anywhere}.node-tabs button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue);background:#f4f8fd;font-weight:650}.node-section-label{display:block;font-size:12px;font-weight:650;margin-bottom:8px}.node-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;min-width:0}.node-inline-note{margin:0 0 17px}.scope-modes{display:flex;gap:20px;flex-wrap:wrap;margin:10px 0 12px}.check-label{display:flex;align-items:flex-start;gap:8px;font-size:11px;cursor:pointer;min-width:0}.check-label input{flex-shrink:0;width:15px;height:15px;margin:3px 0 0}.check-label span{min-width:0;max-width:100%;line-height:1.65;overflow-wrap:anywhere}.check-label small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.scope-list,.predecessor-list{display:grid;grid-template-columns:1fr 1fr;gap:9px 16px;border:1px solid var(--line);border-radius:5px;padding:13px;margin:10px 0;background:#fafbfd}.scope-list .check-label,.predecessor-list .check-label{min-height:30px}.dependency-description{background:#f6f8fb;border:1px solid var(--line);padding:12px;border-radius:5px;font-size:11px;color:var(--muted);margin-top:10px}.node-fixed{padding:4px 0 18px}.node-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.node-actions p{font-size:10px;color:var(--muted)}.node-actions button{background:var(--blue);color:#fff;border-radius:5px;min-height:41px;padding:10px 15px;font-size:12px;font-weight:600;flex-shrink:0}.schedule-details{margin:0 20px 17px;border:1px solid var(--line);border-radius:5px;background:#fafbfd;padding:12px 15px}.schedule-details summary{font-size:12px;font-weight:600;cursor:pointer;color:var(--blue-dark)}.schedule-details>p,.schedule-details>ul{font-size:11px;color:var(--muted);line-height:1.85;margin-top:10px}.schedule-details>ul{padding-left:17px}.schedule-history{list-style:none;padding:0;margin:15px 0}.schedule-history li{padding:12px 0;border-bottom:1px solid var(--line)}.history-top{display:flex;justify-content:space-between;gap:15px;font-size:12px;font-weight:600}.history-time{font-size:10px;color:var(--muted);white-space:nowrap;font-weight:400}.history-reason,.history-changes{font-size:11px;margin-top:5px;white-space:pre-wrap;overflow-wrap:anywhere}.history-changes{color:var(--muted)}.undo-form{display:flex;align-items:flex-end;gap:12px;margin-top:17px}.undo-form .field{flex:1;margin:0}.undo-form button{background:#fff;border:1px solid #ccd8e6;border-radius:5px;min-height:40px;padding:9px 13px;color:var(--blue-dark);font-size:11px;flex-shrink:0}.report-workspace>.module-note{padding-bottom:0}.workspace{display:grid;grid-template-columns:290px minmax(0,1fr);gap:22px;padding:20px;align-items:start}.records-panel,.editor-panel{min-width:0;border:1px solid var(--line);border-radius:6px;padding:17px;background:#fff}.records-panel{background:#f9fbfd}.panel-heading,.editor-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.panel-heading h2,.editor-heading h2{font-size:15px}.new-button{min-height:34px;background:#fff;border:1px solid #ccd8e6;border-radius:4px;padding:6px 9px;color:var(--blue);font-size:10px;flex-shrink:0}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:5px}.tab{flex:1;background:none;padding:9px 4px;color:var(--muted);border-bottom:2px solid transparent;font-size:11px;white-space:nowrap}.tab span{margin-left:3px;font-size:9px}.tab[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.record-row{padding:12px 0;border-bottom:1px solid var(--line)}.record-row.selected{background:var(--tint);margin:0 -9px;padding:12px 9px;border-radius:4px}.record-open{width:100%;display:block;background:none;padding:0;text-align:left}.record-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:11px}.record-date{color:var(--muted);font-variant-numeric:tabular-nums}.status-label{font-size:9px;background:#e8edf3;color:#667890;padding:2px 5px;border-radius:3px}.status-label.published{color:#27824c;background:#e5f3eb}.record-name{font-size:12px;font-weight:650;margin-top:7px}.record-preview{font-size:10px;color:var(--muted);margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.record-actions{display:flex;align-items:center;gap:14px;margin-top:6px}.record-photo-count{font-size:9px;color:var(--muted);margin-left:auto}.empty-state{padding:23px 0;color:var(--muted);font-size:11px}.empty-state p+p{font-size:10px;margin-top:5px}.editor-status{font-size:9px;padding:3px 6px;background:#f0f3f7;border-radius:4px;color:var(--muted);white-space:nowrap}.editor-change-note{font-size:11px;color:#9a7137;padding:10px;background:#fff8eb;border-radius:4px;margin-bottom:15px}.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;min-width:0}.upload-label{position:relative;display:flex;justify-content:center;align-items:center;gap:10px;min-height:87px;padding:20px;border:1px dashed #9db9da;border-radius:5px;background:var(--tint);color:var(--blue-dark);font-size:12px;cursor:pointer}.upload-label svg{width:23px;height:23px;flex-shrink:0}.upload-label input{position:absolute;width:1px;height:1px;opacity:0;left:50%;top:50%}.upload-label:focus-within{outline:3px solid #9fc6f3;outline-offset:3px}.upload-status{font-size:11px;color:var(--blue-dark);margin-top:9px;white-space:pre-wrap;overflow-wrap:anywhere}.upload-status.error{color:#b14d3e}.draft-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.draft-thumb{min-width:0;position:relative}.draft-thumb img{width:100%;aspect-ratio:1.2;border-radius:4px;border:1px solid var(--line)}.draft-caption{font-size:9px;color:var(--muted);margin-top:5px;line-height:1.6;overflow-wrap:anywhere}.draft-caption b{color:var(--blue-dark);font-weight:500}.draft-remove{position:absolute;top:5px;right:5px;width:28px;height:28px;border-radius:4px;background:#fffffff0;box-shadow:0 1px 6px #0002;color:#a54b3e;font-size:19px;line-height:1}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:60;padding:12px 18px;max-width:min(90vw,560px);border-radius:6px;background:#193b64;color:#fff;font-size:12px;line-height:1.7;text-align:center;box-shadow:0 8px 30px #102b4b2a}.schedule-dialog{border:1px solid #cbd8e7;border-radius:8px;background:#fff;color:var(--ink);padding:0;width:min(740px,calc(100vw - 32px));max-height:88dvh;overflow:auto;box-shadow:0 25px 80px #1529403d}.schedule-dialog::backdrop,.lightbox::backdrop{background:#132842a8}.preview-header{padding:19px 22px;border-bottom:1px solid var(--line);background:#f6f9fd}.preview-header h2{font-size:20px}.preview-header p{font-size:11px;color:var(--muted);margin-top:6px}.preview-content{padding:18px 22px}.preview-reason{font-size:12px;white-space:pre-wrap;padding-bottom:14px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.preview-summary{font-size:11px;color:var(--muted);margin:13px 0}.preview-node{padding:14px 0;border-bottom:1px solid var(--line)}.preview-node h3{font-size:13px;font-weight:650;margin-bottom:8px}.preview-node h3 small{font-size:10px;font-weight:400;color:var(--muted);margin-left:8px}.preview-dates{display:grid;grid-template-columns:1fr 24px 1fr;gap:9px;align-items:center;font-size:12px;font-variant-numeric:tabular-nums}.preview-dates small{display:block;font-size:10px;color:var(--muted);margin-bottom:4px}.preview-arrow{color:var(--blue);text-align:center}.preview-after{color:var(--blue-dark)}.preview-skip{font-size:11px;color:var(--muted);padding:10px 0;border-bottom:1px solid var(--line)}.preview-skip strong{font-weight:600;color:var(--ink)}.preview-detail-list{display:grid;grid-template-columns:115px 1fr;gap:8px 14px;font-size:12px;margin-top:15px}.preview-detail-list dt{font-size:11px;color:var(--muted)}.preview-detail-list dd{white-space:pre-wrap;overflow-wrap:anywhere}.preview-warning{margin:14px 0;padding:11px 13px;border-left:3px solid #d6a349;border-radius:4px;background:#fff7e7;color:#987038}.preview-warning h3{font-size:12px;font-weight:650;margin-bottom:5px}.preview-warning p{font-size:11px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.preview-footer{display:flex;justify-content:flex-end;gap:11px;padding:15px 22px;border-top:1px solid var(--line);background:#fff;position:sticky;bottom:0}.lightbox{padding:0;border:0;border-radius:7px;width:min(1060px,calc(100vw - 20px));max-height:95dvh;overflow:auto;background:#172538;color:#fff;box-shadow:0 25px 90px #0005}.lightbox-head{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;border-bottom:1px solid #ffffff24;font-size:12px;color:#d2deee}.icon-button{display:grid;place-items:center;background:none;padding:7px;width:36px;height:36px;color:inherit}.icon-button svg{width:20px;height:20px}.lightbox-media{position:relative;min-height:160px}.lightbox img{width:100%;height:auto;max-height:72dvh;object-fit:contain;background:#101c2c}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:52px;background:#112336aa;color:#fff;font-size:26px}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox-arrow:disabled{opacity:.2}.lightbox-caption{display:flex;gap:18px;justify-content:space-between;padding:14px 17px 18px;font-size:11px;color:#d1dfef}.lightbox-caption p{white-space:pre-wrap;overflow-wrap:anywhere}.lightbox-counter{white-space:nowrap;flex-shrink:0}body:has(dialog[open]){overflow:hidden}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.wrap{padding:0 22px}.plan-picker{grid-template-columns:auto minmax(160px,1fr);gap:12px}.plan-picker label{display:none}.schedule-layout,.workspace{grid-template-columns:240px minmax(0,1fr);gap:16px}.node-editor,.records-panel,.editor-panel{padding:15px}.draft-row-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-text-wrap{grid-column:1/3}.draft-predecessors .predecessor-list{grid-template-columns:1fr 1fr}.progress-grid{gap:12px}.summary-card{padding:17px}.current-progress h2,.current-progress h2.pending-progress{font-size:20px}.draft-photos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.wrap{padding:0 16px}.header-inner,.header{min-height:67px}.brand,.brand-name{font-size:15px}.brand-symbol{width:32px;height:32px;font-size:18px}.brand-en{font-size:8px}.header-badge{font-size:10px;padding:3px 7px}.report-masthead,.title-block{padding:23px 0 19px;gap:13px;align-items:flex-start}.project-name,.title-block h1{font-size:24px}.mast-date{font-size:10px;max-width:120px}.mast-sub,.title-sub{font-size:11px}.progress-grid{grid-template-columns:1fr;gap:12px;margin-bottom:18px}.summary-card{padding:17px 18px}.summary-card-top{margin-bottom:12px}.current-progress h2,.current-progress h2.pending-progress{font-size:23px}.completion-date{font-size:28px}.completion-footnote{margin-top:12px}.section-heading,.module-heading{padding:16px;gap:10px}.section-heading h2,.module-heading h2{font-size:15px}.section-heading p{font-size:10px}.count-badge{font-size:9px;padding:3px 6px;max-width:145px;white-space:normal;text-align:right}.schedule-table th,.baseline-table th{padding:11px 16px}.schedule-table td,.baseline-table td{padding:13px 16px}.schedule-note{padding:11px 16px}.details-body{padding:0 16px}.feed-entry{grid-template-columns:1fr;gap:13px;padding:19px 0}.entry-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-right:0;padding:0}.entry-date{font-size:11px}.entry-date-kind{margin:0;font-size:9px}.entry-source{margin:0 0 0 auto;font-size:8px}.entry-title{font-size:14px}.entry-copy,.entry-next,.entry-completed{font-size:11px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.site-footer,.footer{display:block;font-size:9px;padding:19px 0 25px}.site-footer p+p{margin-top:5px}.footer-right{text-align:left;margin-top:12px}.selector-intro{padding:28px 0 20px}.selector-intro h1{font-size:25px}.selector-intro>p:last-child{font-size:12px}.workflow-strip{gap:7px;margin-bottom:19px}.workflow-strip span{font-size:10px;padding:9px 8px;gap:6px}.workflow-strip b{width:19px;height:19px;font-size:9px;flex-shrink:0}.versions{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.version{padding:22px}.version h2{font-size:23px}.version-links a{min-height:44px}.local-notice{font-size:10px;padding:10px 12px}.micro{display:none}.client-link{font-size:10px;padding:7px 10px;min-height:37px}.title-block>.header-badge{margin-top:2px}.template-nav{gap:5px 17px;font-size:10px}.template-nav span{width:100%;margin:0;font-size:9px}.plan-toolbar{padding:14px;margin-bottom:15px}.plan-manager-head{align-items:stretch;gap:9px}.plan-picker{display:block}.plan-picker h2{font-size:12px;margin-bottom:7px}.plan-picker select{font-size:11px;min-height:40px;padding:8px}.new-plan-button{align-self:flex-end;font-size:10px;padding:8px 10px;min-height:40px}.plan-current-label{font-size:9px;overflow-wrap:anywhere}.workspace-tabs{gap:7px;margin-bottom:15px}.workspace-tabs button{display:block;min-height:88px;padding:10px 9px}.workspace-tabs strong{font-size:11px;white-space:nowrap}.workspace-tabs small{font-size:8px;line-height:1.5}.step-number{width:22px;height:22px;font-size:10px;margin-bottom:6px}.module-heading .page-kicker{font-size:8px}.module-note{padding:13px 16px;font-size:10px}.module-empty,.notice{margin:15px 16px;font-size:11px;padding:16px}.draft-workspace,.node-workspace,.workspace{padding:16px}.draft-intro{display:block}.draft-intro h3{font-size:15px}.draft-intro p{font-size:10px}.draft-intro button{margin-top:8px;font-size:10px}.draft-top-fields{grid-template-columns:1fr 112px;gap:12px;padding-top:17px}.field-label{font-size:11px}.field-label small{font-size:9px}.field{margin-bottom:16px}input[type=date],input[type=text],input[type=number],textarea,select{font-size:16px;min-height:44px;padding:9px 10px}.draft-row{padding:12px}.draft-row-head{font-size:10px;gap:10px}.draft-row-controls{gap:4px}.draft-row-controls button{font-size:9px;padding:4px 7px;min-height:31px}.draft-row-fields{gap:10px}.draft-row-fields .field-label{font-size:10px}.draft-row-relations{display:block}.draft-predecessors{margin-top:12px}.draft-actions,.form-actions{gap:9px}.draft-actions button,.form-actions button{flex:1;font-size:11px;padding:10px 8px;min-height:44px}.draft-add-button{min-height:44px;font-size:11px}.schedule-topline{display:block}.schedule-topline h2{font-size:15px}.schedule-topline p{font-size:10px}.year-confirmed{text-align:left;margin-top:12px;font-size:10px}.year-confirmed small{font-size:9px}.schedule-year-form{margin-top:14px}.schedule-year-form input{width:140px}.schedule-year-form button{min-height:44px}.schedule-layout{display:flex;flex-direction:column;gap:17px}.node-overview{width:100%;order:2}.node-editor{order:1;width:100%;padding:14px}.node-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.node-row{padding:11px 12px;min-height:94px}.node-row:nth-child(odd){border-right:1px solid var(--line)}.node-row-name{font-size:10px;display:block}.node-row-mark{display:inline-block;margin-top:4px;font-size:8px}.node-row-plan{font-size:11px}.node-row-original{font-size:9px}.node-list-title{font-size:11px}.node-context{padding:11px}.node-context dl{grid-template-columns:91px minmax(0,1fr);gap:6px 9px;font-size:11px}.node-context dt{font-size:10px}.node-context .protected-note{font-size:9px;padding:8px}.node-tabs button{font-size:11px;padding:11px 4px}.node-date-row{gap:11px}.node-section-label{font-size:11px}.check-label{font-size:10px}.check-label small{font-size:9px}.scope-list,.predecessor-list{padding:10px;gap:9px 11px}.scope-modes{gap:13px}.node-actions{display:block;margin-top:16px}.node-actions p{font-size:10px;margin-bottom:11px}.node-actions button{width:100%;min-height:44px;font-size:11px}.schedule-details{margin:0 16px 15px;padding:12px}.schedule-details summary{font-size:11px}.schedule-details>p,.schedule-details>ul{font-size:10px}.history-top{display:block;font-size:11px}.history-time{display:block;margin-top:4px}.history-reason,.history-changes{font-size:10px}.undo-form{display:block}.undo-form button{width:100%;margin-top:12px;min-height:44px}.workspace{display:flex;flex-direction:column;gap:17px}.records-panel,.editor-panel{width:100%;padding:15px}.editor-panel{order:1}.records-panel{order:2}.form-row{gap:12px}.panel-heading h2,.editor-heading h2{font-size:14px}.editor-status{font-size:8px;white-space:normal;max-width:120px;text-align:right}.upload-label{font-size:11px;min-height:82px;padding:17px}.draft-photos{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.schedule-dialog{width:calc(100vw - 22px);max-height:90dvh}.preview-header{padding:17px}.preview-header h2{font-size:18px}.preview-header p{font-size:10px}.preview-content{padding:16px 17px}.preview-footer{padding:13px 17px;gap:9px}.preview-footer button{flex:1;min-height:44px;font-size:11px;padding:10px 8px}.preview-dates{font-size:11px;grid-template-columns:1fr 19px 1fr;gap:6px}.preview-node h3{font-size:12px}.preview-detail-list{grid-template-columns:83px 1fr;font-size:11px;gap:8px 10px}.preview-detail-list dt{font-size:10px}.lightbox-caption{font-size:10px;gap:12px}}
/* Common phone widths exceed 380px; keep paired date fields in full-width rows. */
@media(max-width:600px){.draft-row-fields,.node-date-row,.form-row{grid-template-columns:minmax(0,1fr);gap:0}.draft-text-wrap{grid-column:1}}

@media(max-width:380px){.wrap{padding:0 12px}.brand,.brand-name{font-size:14px}.header-badge{font-size:9px}.brand-lockup{gap:8px}.brand-en{font-size:7px}.report-masthead,.title-block{display:block}.mast-date{text-align:left;max-width:none;margin-top:10px;white-space:normal}.title-block>.header-badge{margin-top:10px}.workspace-tabs button{padding:9px 7px}.workspace-tabs small{font-size:7px}.new-plan-button{max-width:110px;font-size:9px}.form-row{grid-template-columns:minmax(0,1fr);gap:0}.draft-top-fields{grid-template-columns:1fr}.draft-row-fields{grid-template-columns:minmax(0,1fr)}.draft-text-wrap{grid-column:1}.scope-list,.predecessor-list,.draft-predecessors .predecessor-list{grid-template-columns:1fr}.node-date-row{grid-template-columns:minmax(0,1fr);gap:0}.draft-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-strip span{font-size:9px;padding:8px 6px;gap:4px}.workflow-strip b{width:17px;height:17px}.section-heading{align-items:flex-start}.count-badge{max-width:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Compact local account workflow preview. */
input[type=password]{width:100%;border:1px solid #cbd4e0;border-radius:5px;padding:10px 12px;background:#fff;color:var(--ink);font:inherit;font-size:13px;min-height:43px}input[type=password]:focus{outline:2px solid #93b8e0;outline-offset:1px}.login-wrap{width:min(520px,100%);margin:35px auto;padding:0 20px}.login-mode{font-size:11px;color:var(--muted);margin-bottom:10px}.login-notice{margin-bottom:18px}.login-notice p{margin-top:5px}.login-card{padding:26px}.login-card h1{font-size:25px;margin:0 0 7px}.login-sub{font-size:12px;color:var(--muted);margin-bottom:22px}.login-primary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;border-radius:5px;background:var(--blue);color:#fff;font-size:12px;font-weight:600;text-decoration:none}.login-primary:disabled{opacity:.45;cursor:not-allowed}.login-card .login-primary{width:100%;margin-top:8px}.login-foot{font-size:10px;color:var(--muted);text-align:center;padding:22px}.client-session-actions{display:flex;align-items:center;gap:14px}.client-session-actions[hidden]{display:none}.client-login-gate{width:min(520px,100%);margin:40px auto;padding:30px}.client-login-gate h1{font-size:24px}.client-login-gate p{font-size:12px;color:var(--muted);margin:10px 0 20px}.account-manager{margin-bottom:20px}.account-manager>summary{padding:16px 20px;font-size:13px;font-weight:650;cursor:pointer}.account-manager>summary span{font-size:11px;font-weight:400;color:var(--muted);margin-left:10px}.account-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:4px 20px 22px}.account-layout h3{font-size:14px;margin-bottom:14px}.account-layout .field-help{margin-bottom:15px}.account-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.account-details{display:grid;gap:4px;min-width:0}.account-details strong{font-size:12px;font-weight:650;overflow-wrap:anywhere}.account-details span,.account-empty{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.account-row button{font-size:11px;white-space:nowrap}.account-actions{display:flex;gap:10px;align-items:center}@media(max-width:760px){input[type=password]{font-size:16px;min-height:44px}.login-wrap{margin:24px auto;padding:0 16px}.login-card{padding:20px}.account-layout{grid-template-columns:1fr;gap:22px;padding:4px 16px 18px}.account-manager>summary{padding:15px 16px}.client-session-actions{gap:8px}.client-session-actions .header-badge{max-width:130px;overflow-wrap:anywhere}.client-login-gate{padding:22px}.client-session-actions button{font-size:11px;min-height:40px}}

.next-item h3{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.next-item p{color:var(--blue-dark);font-weight:600}.summary-card-top .eyebrow{overflow-wrap:anywhere}

/* Stage-associated inspection reports. New controls shrink and wrap on phones. */
.report-stage-row{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.report-phrases{min-width:0;max-width:100%;padding:12px;border:1px solid #cddded;border-radius:5px;background:#f5f9fe;margin:0 0 18px}
.phrase-heading{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center}.phrase-heading h3{font-size:12px}.phrase-heading span,.report-phrases>p{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.report-phrases>p{margin-top:5px}.phrase-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.phrase-buttons button{min-width:0;max-width:100%;min-height:36px;padding:7px 10px;border:1px solid #c9d9ec;border-radius:4px;background:#fff;font-size:11px;white-space:normal;overflow-wrap:anywhere}.phrase-status:empty{display:none}.report-phrases .phrase-status{color:var(--blue-dark)}
.stage-group{min-width:0;max-width:100%;border-bottom:1px solid var(--line)}.stage-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:62px;padding:16px 0;cursor:pointer;list-style:none}.stage-summary::-webkit-details-marker{display:none}.stage-group-name{font-size:14px;font-weight:650;min-width:0;overflow-wrap:anywhere}.stage-group-name::before{content:'＋';color:var(--blue);margin-right:8px}.stage-group[open] .stage-group-name::before{content:'－'}.stage-group-meta{font-size:10px;color:var(--muted);min-width:0;text-align:right;overflow-wrap:anywhere}.stage-group-body{min-width:0;padding:0 8px}.stage-group-body .feed-entry:last-child{border-bottom:0}
@media(max-width:760px){.new-button{min-height:44px;font-size:11px;white-space:normal}.phrase-buttons button{min-height:44px;flex:1 1 calc(50% - 8px)}.stage-summary{align-items:flex-start;flex-direction:column;gap:5px}.stage-group-meta{text-align:left;margin-left:24px}.stage-group-body{padding:0}.stage-group-name{font-size:13px}}
@media(max-width:600px){.report-stage-row{grid-template-columns:minmax(0,1fr);gap:0}}

/* Stage-aware helpers are optional; keep the main report freeform and touch-friendly. */
.report-phrases fieldset{margin:13px 0 0;padding:0;border:0;min-width:0}.quick-work-fieldset legend{font-size:11px;font-weight:600;margin-bottom:8px}.quick-work-fieldset legend small,.phrase-heading h3 small,.report-supplement summary small{font-weight:400;color:var(--muted);font-size:10px;margin-left:7px}.quick-work-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-work-item{display:flex;align-items:flex-start;gap:7px;min-width:0;min-height:36px;padding:8px 9px;background:#fff;border:1px solid #cddded;border-radius:4px;font-size:11px;cursor:pointer;overflow-wrap:anywhere}.quick-work-item input{flex-shrink:0;margin:2px 0 0;accent-color:var(--blue)}.quick-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px;min-width:0}.quick-fields .field{margin-bottom:10px;min-width:0}.quick-generate{min-height:40px;padding:8px 14px;background:var(--blue);color:#fff;border-radius:4px;font-size:12px}.phrase-details{border-top:1px solid #d5e2ef;margin-top:13px;padding-top:10px}.phrase-details summary,.report-supplement summary{font-size:11px;font-weight:600;cursor:pointer;min-height:32px;display:list-item;overflow-wrap:anywhere}.phrase-category-field{margin-top:12px;margin-bottom:8px}.phrase-details>p{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.phrase-buttons button{flex:1 1 calc(50% - 8px);text-align:left}.report-supplement{margin:0 0 18px;border:1px solid var(--line);border-radius:5px;padding:11px 12px;min-width:0}.report-supplement[open]>summary{margin-bottom:12px}.report-supplement .field:last-child{margin-bottom:0}
@media(max-width:760px){.quick-work-item{min-height:44px;align-items:center;padding:8px;font-size:11px}.quick-generate{width:100%;min-height:44px}.phrase-details summary,.report-supplement summary{min-height:36px}.quick-fields{grid-template-columns:minmax(0,1fr);gap:0}.quick-fields .field{margin-bottom:12px}.phrase-heading{align-items:flex-start}.phrase-heading span{max-width:100%}}
@media(max-width:380px){.quick-work-items{grid-template-columns:minmax(0,1fr)}.phrase-buttons button{flex-basis:100%}}

.phrase-category-toggle{max-width:100%;min-height:32px;padding:3px 0;background:transparent;text-align:left;border-radius:3px;font:inherit;font-size:10px;color:var(--blue-dark);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.phrase-category-toggle:focus-visible{outline:2px solid #93b8e0;outline-offset:3px}@media(max-width:760px){.phrase-category-toggle{min-height:44px}}

/* All-project entrance and one set of current schedule dates. */
.project-overview { margin: 22px 0 34px; }
.project-overview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.project-summary-card { display:flex; flex-direction:column; padding:22px; min-width:0; }
.project-summary-card h3 { font-size:20px; margin:0 0 18px; }
.project-summary-fields { display:grid; grid-template-columns:105px minmax(0,1fr); gap:9px 14px; margin:0 0 20px; font-size:14px; }
.project-summary-fields dt { color:#66758b; }
.project-summary-fields dd { margin:0; color:#26364e; overflow-wrap:anywhere; }
.project-open { margin-top:auto; border:1px solid #bad0ee; background:#eff5fc; color:#205aa6; padding:12px; border-radius:7px; font-weight:600; cursor:pointer; }
.project-back { margin:4px 0 18px; }
.node-list-entry { border-bottom:1px solid #e6ebf2; padding-bottom:8px; }
.node-list-entry .node-row { width:100%; border-bottom:0; }
.set-current-stage { margin:0 12px 4px; padding:6px 10px; border:1px solid #c5d7ee; border-radius:5px; background:#f5f8fd; color:#275f9f; cursor:pointer; font-size:12px; }
.set-current-stage:disabled { border-color:transparent; color:#67758b; background:#edf1f5; cursor:default; }
.project-empty { grid-column:1/-1; padding:24px; }
@media(max-width:700px) { .project-overview-grid { grid-template-columns:minmax(0,1fr); } .project-summary-card { padding:18px; } }
@media(max-width:600px) { .project-summary-fields { grid-template-columns:92px minmax(0,1fr); gap:9px; } }
.node-site-status { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 12px 8px; font-size:12px; color:#566980; }
.node-site-status select { width:130px; min-height:36px; padding:6px 8px; font-size:12px; }
