/* 业务原因：四套母版共用 K3 的紧凑尺寸、字体及表格边框，不保留旧首页的卡片样式；高亮与表头统一为蓝色。 */
/* 业务原因：统一 K3 的 Arial 12px、紧凑表格、左菜单和原生按钮，蓝色区分 ZCH，不再使用独立卡片风格。 */
:root{--blue:#2e6f9e;--blue-light:#dfedf8;--line:#ccc;--ink:#222;--muted:#666}
*{box-sizing:border-box}body{font-family:Arial,Helvetica,sans-serif;font-size:12px;color:var(--ink);background:white;margin:8px}a,a:visited{color:rgb(0,114,198);text-decoration:none}a:hover{text-decoration:underline}img{border:0}input,select,textarea,button{font:12px Arial,Helvetica,sans-serif}input[type=text],input[type=month],input[type=date],input[type=number],select,textarea{border:1px solid #aaa;padding:3px;max-width:100%;background:white}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:1px}input:disabled,select:disabled,textarea:disabled{background:#eee}button,input[type=submit],.btn{display:inline-block;border:1px solid #999;border-radius:2px;padding:4px 12px;background:#eee;color:#222;cursor:pointer;line-height:1.5}.btn:hover,button:hover,input[type=submit]:hover{background:#dfeaf2;text-decoration:none}.btn-primary{border-color:#52758f;background:#e1edf6}.btn:disabled,input:disabled{cursor:default;color:#777}h1{font:bold 16px Arial,sans-serif;margin:8px 0 15px}h2{font-size:13px;margin:10px 0}h3{font-size:14px}.title{font-weight:bold;font-size:13px}
.oa-layout{border-collapse:collapse;width:auto;min-width:1250px;border:1px solid var(--line)}.oa-layout>tbody>tr>td{border:1px solid var(--line);padding:4px;vertical-align:top}.oa-layout .oa-logo{width:170px;text-align:center;vertical-align:middle}.oa-logo img{display:block;margin:auto}.oa-layout .oa-header{height:94px;min-width:1000px;background:var(--blue);color:white;padding:4px;vertical-align:middle}.oa-header a,.oa-header a:visited{color:white}.oa-layout .oa-board{width:200px;min-width:200px;padding:4px 8px}.oa-menu{width:170px;min-width:170px}.oa-menu ul{list-style:none;padding-left:10px;margin:10px}.oa-menu li{margin:0;list-style:none}.oa-menu .title{margin:12px 0 2px}.oa-menu .title:first-child{margin-top:2px}.oa-menu li>a{display:block;padding:1px 2px;line-height:14px}.oa-menu li.active>a{background:var(--blue);color:white}.oa-menu li>a:hover{background:var(--blue-light);color:#215779;text-decoration:none}.oa-layout .oa-content{padding:4px;min-width:1000px}main{width:100%}.board{background:#efefef;border-radius:2px;padding:5px;margin:10px 0}.board a{color:#b32020}.eyebrow{color:#666;font-size:11px;margin:6px 0}.lead{margin:5px 0 15px;line-height:1.7;color:#555;max-width:1050px}.hint{font-size:11px;color:#666;line-height:1.6}.notice{display:block;color:#a52b23;border:1px solid #d9b5ac;background:#fff8f4;padding:8px;margin:8px 0;white-space:pre-line}.notice:empty{display:none}.notice.success{border-color:#a9c3d5;background:#f1f8ff;color:#285c83}.panel{padding:0 0 12px;margin:0 0 15px;border:0;border-bottom:1px solid #ccc;background:white}.panel-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px 18px;max-width:1100px}.field label{display:block;font-size:12px;margin-bottom:4px;font-weight:normal}.field input:not([type=checkbox]),.field select,.field textarea{width:100%;max-width:340px;min-height:26px}.field textarea{max-width:800px;min-height:65px}.field-wide{grid-column:span 2}.field-check{display:flex;gap:6px;align-items:center}.field-check label{margin:0}.required{color:#b22}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}.search-row{display:flex;gap:8px;margin:8px 0}.search-input{width:270px}.table-wrap{overflow:auto;max-width:100%}.data-table,.tableizer-table{border-collapse:collapse;font-family:Arial,Helvetica,sans-serif;font-size:12px;border:1px solid #ccc}.data-table{width:100%}.data-table th,.data-table td,.tableizer-table th,.tableizer-table td{border:1px solid #ccc;padding:4px}.data-table th,.tableizer-table th{background:#455560;color:white;font-weight:bold;text-align:left;white-space:nowrap}.data-table td{vertical-align:top}.data-table tr:nth-child(even) td{background:#f7f7f7}.data-table tr:hover td{background:#edf5fc}.data-table .selected td{background:#dfedf8}.data-table tfoot td{font-weight:bold;background:#eee}.empty{padding:15px;color:#777}.details-list{display:grid;grid-template-columns:150px 1fr;gap:5px;max-width:1050px}.details-list dt{font-weight:bold}.details-list dd{margin:0;overflow-wrap:anywhere}.metric-grid{display:flex;gap:20px;margin:10px 0}.metric{padding:4px}.metric strong{display:block;font-size:18px}.metric span{color:#666}.upload{border:1px solid #ccc;padding:12px}code{background:#f0f0f0;padding:1px 4px;overflow-wrap:anywhere}pre{border:1px solid #ccc;background:#f7f7f7;padding:8px;overflow:auto;font-size:11px}.line-input{width:100%;min-width:80px}.line-description{min-width:200px}.status{font-weight:bold}.approval-actions{background:#f0f6fc;border:1px solid #abc6db;padding:10px;margin:12px 0}.balance-summary{padding:8px;border:1px solid #ccc;margin:10px 0}.num{text-align:right;white-space:nowrap}
/* 业务原因：所有 ZCH 模块母版对齐 K3Tool 的外层表格框线与单元格间距，同时保留蓝色表头和当前菜单。 */
table.oa-layout.tableizer-table{border-collapse:separate;border-spacing:2px}
/* 业务原因：MIS 保留 K3 的预算白底、实际灰底并列格式，蓝色仅用于本站母版及导航。 */
.mis-table{border-collapse:collapse;min-width:100%;font-size:12px;font-variant-numeric:tabular-nums}.mis-table caption{text-align:left;padding:0 0 8px;font-weight:bold}.mis-table th,.mis-table td{border:1px solid #ccc;white-space:nowrap;padding:4px 8px}.mis-table thead th{text-align:center;background:#455560;color:white}.mis-table tbody th{text-align:left;font-weight:normal;min-width:160px;position:sticky;left:0;background:white;z-index:1}.mis-table td{text-align:right;min-width:120px}.mis-table .mis-budget{background:white;color:#222}.mis-table .mis-actual{background:#e2e2e2;color:#222}.mis-table .mis-total{border-left:2px solid #8799a6}.mis-table .mis-key th,.mis-table .mis-key td{font-weight:bold;border-top:2px solid #8799a6}.mis-table .mis-section th,.mis-table .mis-section td{font-weight:bold;background:#f2f2f2;padding-top:14px}.mis-table .mis-negative{color:#a22}.mis-entry{border-top:1px solid #ccc;margin:15px 0;padding-top:12px}.mis-report .panel-header>span{color:#666}
@media print{@page{size:landscape;margin:10mm}.oa-logo,.oa-header,.oa-menu,.oa-board,.mis-controls,.actions,.approval-actions,.no-print,.eyebrow,main>.lead,main>.notice{display:none!important}.oa-layout{min-width:0;width:100%;border:0}.oa-layout>tbody>tr>td.oa-content{border:0;padding:0;min-width:0}.table-wrap{overflow:visible}.mis-report{border:0}.mis-table{font-size:8px;width:100%;min-width:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.mis-table th,.mis-table td{min-width:0;padding:3px}.mis-table tbody th{position:static;min-width:100px}.mis-table thead{display:table-header-group}.mis-table tr{break-inside:avoid}.hint{font-size:9px}}

/* 业务原因：原母版与价格页的固定最小宽度会撑出平板视口；以实际可用宽度布局，保留桌面 K3 框线及蓝色主题。 */
@media screen{
    table.oa-layout.tableizer-table{width:100%;min-width:0;table-layout:fixed}
    .oa-layout .oa-header,.oa-layout .oa-content{min-width:0;overflow-wrap:anywhere}
    .oa-layout main,.oa-layout .panel,.oa-layout .form-grid,.oa-layout .field{min-width:0;max-width:100%}
    .oa-content table.price-workspace,.oa-content table.formal-workspace{width:100%;min-width:0}
    .oa-content .table-wrap,.oa-content .price-grid{width:100%;min-width:0;max-width:100%}
    .oa-content .tableizer-table{width:100%;table-layout:fixed;overflow-wrap:anywhere}
    .oa-content .tableizer-table td{white-space:normal}
    .oa-layout .oa-nav-toggle,.oa-layout .workspace-jumps{display:none}
}
/* 业务原因：平板按用户要求保留电脑端左菜单、中央正文和右消息板，只让各栏随屏幕收缩，不能把菜单移到顶部。 */
@media screen and (max-width:1280px){
    body{margin:6px}
    table.oa-layout.tableizer-table{display:grid;grid-template-columns:minmax(88px,12%) minmax(0,1fr) minmax(96px,14%);grid-template-areas:"logo header board" "menu content board";gap:2px;border-spacing:0}
    .oa-layout>tbody,.oa-layout>tbody>tr{display:contents}
    .oa-layout .oa-logo{grid-area:logo;width:auto;min-width:0;display:flex;align-items:center;justify-content:center}
    .oa-layout .oa-logo img{max-width:100%;height:auto}
    .oa-layout .oa-header{grid-area:header;height:auto;min-height:94px;min-width:0;padding:8px}
    .oa-layout .oa-menu{grid-area:menu;width:auto;min-width:0}
    .oa-layout .oa-content{grid-area:content;width:auto;min-width:0;padding:8px}
    .oa-layout .oa-board{grid-area:board;width:auto;min-width:0;padding:4px;overflow-wrap:anywhere}
    .oa-menu ul{margin:8px 0;padding:0 4px}
    .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .field-wide{grid-column:1 / -1}
    .search-row,.panel-header,.price-tabs{flex-wrap:wrap}
    .oa-content .price-bar label{white-space:normal;min-width:0}
    .oa-content select,.oa-content input,.oa-content textarea{max-width:100%}
    .oa-content .data-table{table-layout:fixed;width:100%}
    .oa-content .price-grid .data-table{table-layout:fixed;width:100%;min-width:0}
    .oa-layout .oa-content .price-grid .data-table th,.oa-layout .oa-content .price-grid .data-table td{white-space:normal;overflow-wrap:anywhere}
    .oa-content .data-table th,.oa-content .data-table td{overflow-wrap:anywhere}
    .oa-content .data-table th,.oa-layout .formal-source .data-table td{white-space:normal}
    .oa-content .data-table .line-input,.oa-content .data-table .line-description{min-width:0;width:100%}
}
@media screen and (max-width:1280px){
    .oa-content table.price-workspace{height:auto;min-height:0}
    .oa-content .price-filter input.price-code{max-width:100%;box-sizing:border-box;flex:0 1 110px}
    .oa-content .price-workspace input[type=text]{max-width:100%;min-width:0;box-sizing:border-box}
    .workspace-jumps a{padding:8px;border:1px solid #999;background:var(--blue-light);color:#215779}
}
/* 业务原因：平板全宽草稿清单优先保证金额完整一行显示，不能将最后一位小数挤到下一行。 */
@media screen and (min-width:641px) and (max-width:1280px){
    .oa-content .selection-prices th{font-size:11px}
    /* 业务原因：两表统一只保留三项参考价格，按新的七列结构分配宽度，避免旧列序号挤占金额空间。 */
    .oa-content .selection-prices th:first-child{width:6%}
    .oa-content .selection-prices th:nth-child(2){width:20%}
    .oa-content .selection-prices th:nth-child(3){width:26%}
    .oa-content .selection-prices th:nth-child(n+4):nth-child(-n+6){width:14%}
    .oa-content .selection-prices th:nth-child(7){width:6%}
}
/* 业务原因：折叠菜单仅用于手机；平板必须保留电脑端左侧导航。 */
@media screen and (max-width:640px){
    table.oa-layout.tableizer-table{grid-template-columns:96px minmax(0,1fr);grid-template-areas:"logo header" "menu menu" "content content" "board board"}
    .oa-logo img{max-width:88px;width:100%;height:auto}
    .oa-layout .oa-header{min-height:80px;line-height:1.5}
    .oa-layout .oa-nav-toggle{display:block;width:100%;min-height:40px;text-align:left;border:0;background:var(--blue);color:#fff}
    .oa-menu nav[hidden]{display:none}
    .oa-menu ul{display:flex;flex-wrap:wrap;gap:4px;padding:0;margin:6px 0}
    .oa-menu .title{flex-basis:100%;margin:4px 0}
    .oa-menu li>a{padding:9px 12px;min-height:38px;line-height:20px;border:1px solid #ccc}
    .oa-content button,.oa-content input[type=submit],.oa-content .btn,.oa-content select{min-height:38px}
    .oa-content .data-table th{white-space:normal;overflow-wrap:anywhere}
    .oa-content .form-grid{gap:10px}
    .oa-content table.formal-workspace{display:block;height:auto;min-height:0}
    .oa-content table.formal-workspace>tbody,.oa-content table.formal-workspace>tbody>tr{display:block;width:100%}
    .oa-content table.formal-workspace>tbody>tr>td{display:block;width:100%;min-width:0;padding:8px;scroll-margin-top:10px}
    .oa-layout .workspace-jumps{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
}
/* 业务原因：手机上金额表不适合继续压成十余列；保留原表单控件和勾选事件，每条记录按列名纵向显示，表头全选仍可操作。 */
@media screen and (max-width:640px){
    body{margin:4px;font-size:14px}
    .oa-layout .oa-content{padding:6px}
    .oa-content .form-grid{grid-template-columns:minmax(0,1fr)}
    .oa-content .field-wide{grid-column:1}
    .oa-layout .oa-content input[type=text],.oa-layout .oa-content input[type=number],.oa-layout .oa-content input[type=date],.oa-layout .oa-content input[type=month],.oa-layout .oa-content select,.oa-layout .oa-content textarea{font-size:16px;min-height:40px}
    .oa-content button,.oa-content input[type=submit],.oa-content .btn{min-height:42px;max-width:100%}
    .oa-content .actions,.oa-content .search-row,.oa-content .price-bar{gap:6px;flex-wrap:wrap}
    .oa-content .details-list{grid-template-columns:minmax(0,1fr);gap:4px}
    .oa-content .details-list dt{margin-top:8px}
    .oa-layout .data-table.zch-responsive-table{display:block;width:100%;min-width:0;table-layout:auto;border:0;font-size:14px}
    .zch-responsive-table>thead,.zch-responsive-table>tbody,.zch-responsive-table>tfoot{display:block;width:100%}
    .zch-responsive-table>thead>tr,.zch-responsive-table>tbody>tr,.zch-responsive-table>tfoot>tr{display:block;width:100%;margin-bottom:10px;border:1px solid #bbb}
    .oa-layout .zch-responsive-table .zch-table-heading{display:none}
    .oa-layout .zch-responsive-table .zch-table-heading.zch-has-selection{display:block;border:0;margin-bottom:6px}
    .oa-layout .zch-responsive-table .zch-table-heading>th{display:none}
    .oa-layout .zch-responsive-table .zch-table-heading>th.zch-selection-heading{display:block;width:100%!important;padding:8px;white-space:normal}
    .oa-layout .zch-responsive-table tr>td[data-label]{display:grid;grid-template-columns:minmax(85px,35%) minmax(0,1fr);gap:8px;width:100%!important;min-width:0!important;padding:8px!important;border:0;border-bottom:1px solid #ddd;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}
    .zch-responsive-table td[data-label]::before{content:attr(data-label);font-weight:bold;color:#215779}
    .oa-layout .zch-responsive-table td[data-label]>*{min-width:0;max-width:100%;grid-column:2}
    .oa-layout .zch-responsive-table td input:not([type=checkbox]),.oa-layout .zch-responsive-table td select,.oa-layout .zch-responsive-table td textarea{width:100%!important;min-width:0!important}
    .oa-layout .zch-responsive-table input[type=checkbox]{width:19px;height:19px}
    .oa-layout .zch-responsive-table .zch-table-wide-row>td{display:block;width:100%;white-space:normal;padding:8px}
    .oa-layout .zch-responsive-table .zch-table-wide-row table{width:auto;max-width:100%}
    /* 业务原因：Explorer 手机端仍保留两张表，不转逐条记录；缩小单元格间距并让工具栏按区域换行。 */
    .oa-content table.price-workspace>tbody>tr>td{padding:3px}
    .oa-content .price-workspace .data-table{font-size:9px}
    .oa-content .price-workspace .data-table th,.oa-content .price-workspace .data-table td{padding:1px}
    .oa-content .price-workspace input[type=submit]{font-size:10px;padding:4px;min-height:32px}
    .oa-content .price-workspace .data-table input[type=checkbox]{width:10px;height:10px;min-width:10px}
    .oa-content .price-workspace .axc-prices th:first-child{width:15%}
    .oa-content .price-workspace .axc-prices th:nth-child(2){width:20%}
    .oa-content .price-workspace .axc-prices th:nth-child(3){width:32%}
    .oa-content .price-workspace .selection-prices th:first-child{width:8%}
    .oa-content .price-workspace .selection-prices th:nth-child(2){width:20%}
    .oa-content .price-workspace .selection-prices th:nth-child(3){width:30%}
    .oa-content .price-workspace .selection-prices th:nth-child(n+4):nth-child(-n+6){width:12%}
}
/* 业务原因：移动端菜单和区块跳转只辅助屏幕操作，打印时不加入原报表内容。 */
@media print{.oa-nav-toggle,.workspace-jumps{display:none!important}}
