/* Original sidebar/content organization, with a quieter neutral palette. */
body{margin:0;background:#fafafa;color:#242424;font-family:system-ui,"Microsoft YaHei",sans-serif}.convergence-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}.convergence-shell .sidebar{position:sticky;top:0;height:100vh;box-sizing:border-box;width:auto;background:#f5f5f5;color:#333333;border-right:1px solid #e6e6e6;display:flex;flex-direction:column;padding:24px 16px}.convergence-shell .brand{display:flex;gap:12px;align-items:center}.convergence-shell .brand small{display:block;color:#777777}.convergence-shell .brand-mark{background:#343434;color:white;border-radius:12px;padding:12px}.convergence-shell .sidebar nav{display:flex;flex-direction:column;gap:8px;margin-top:28px}.convergence-shell .sidebar a{color:#333333;padding:12px;border-radius:8px;text-decoration:none}.convergence-shell .sidebar a.active{background:#e9e9e9;color:#242424}.client-project-name small,.client-project-name b{display:block;padding:5px}.convergence-shell .sidebar-foot{margin-top:auto;display:flex;flex-wrap:wrap;gap:4px;align-items:center}.convergence-shell .main{margin:0;min-width:0;width:auto}.convergence-shell .topbar{background:white;padding:24px 32px;border-bottom:1px solid #e8e8e8}.convergence-shell .content{padding:24px 32px}.mobile-project-nav{display:none}.runtime-tools{display:flex;gap:18px;margin:0 0 14px}.runtime-tools a{color:#333333}.profile-text{white-space:pre-wrap}.business-table{table-layout:fixed;width:max-content;min-width:100%}.business-table th,.business-table td{box-sizing:border-box;min-width:90px;padding:9px 12px}.business-table thead th{position:sticky;top:0;z-index:2;background:#f5f5f5}.business-table thead tr:nth-child(2) th{top:42px}.business-table .column-resizer{position:absolute;right:0;top:0;width:7px;height:100%;cursor:col-resize;touch-action:none}.table-scroll{max-height:72vh;overflow:auto}.table-expanded{position:fixed;inset:12px;z-index:1000;overflow:auto}.table-expanded .table-scroll{max-height:82vh}.convergence-shell .v2-business{max-width:none}.chat-app .message-body{user-select:text;-webkit-user-select:text}@media(max-width:760px){.convergence-shell{display:block}.convergence-shell .sidebar{height:auto;position:static;padding:12px}.convergence-shell .sidebar nav{display:none}.convergence-shell .sidebar-foot{display:none}.convergence-shell .content{padding:14px}.convergence-shell .topbar{padding:14px}.business-head h1{font-size:23px}.mobile-project-nav{display:flex}.business-nav a{padding:8px 12px}.table-expanded{inset:0}}
.convergence-shell .client-project-name b{color:#333333}.convergence-shell .client-project-name small,.convergence-shell .sidebar-foot{color:#666666}.convergence-shell .sidebar nav a:hover{background:#e9e9e9;color:#242424}.convergence-shell .content{max-width:none}

/* Shared neutral application palette, native text selection preserved. */
.v2-business{--v2-blue:#292929;--v2-soft:#f5f5f5;--v2-line:#e4e4e4;color:#242424}
.v2-business .btn.primary,.v2-business .range-tabs .active{background:#292929;border-color:#292929;color:#fff}
.v2-business .panel{box-shadow:none;border:1px solid #e4e4e4;border-radius:12px}
.v2-business .business-table thead th,.v2-business .business-table th.date-col,.v2-business .business-table tbody th{background:#f7f7f7;color:#333}
.v2-business .business-table th,.v2-business .business-table td{border-color:#e5e5e5}
.v2-business .section-title{border-color:#333}
.v2-business .message.customer{background:#f0f0f0;border-color:#e5e5e5;color:#242424}
.v2-business .message.ai,.v2-business .message.kaishu{background:#fff;border-color:#e5e5e5;color:#242424}
.v2-business .message-body,.v2-business .data-confirm-card{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}
.table-input-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.sample-entry input{width:100%;min-width:76px;box-sizing:border-box;padding:9px;border:1px solid #ddd;border-radius:5px;font:inherit;background:#fff}
.sample-entry th input{min-width:148px;display:block;margin-bottom:4px}
.sample-entry button{border:0;background:transparent;color:#666;cursor:pointer;font:inherit}
#table-confirmations{margin:20px 0}

/* Runtime worksheet: one scroll surface, stable date and compact provenance. */
.v2-business .table-scroll{overflow:auto;max-height:70vh;overscroll-behavior:contain;scrollbar-gutter:stable}
.v2-business .business-table .date-col{position:sticky;left:0;z-index:3;background:#f7f7f7;width:170px}
.v2-business .business-table thead .date-col{z-index:5}
.v2-business .business-table .operation-col{white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;min-width:240px}
.v2-business .business-table tbody td{vertical-align:top}
.v2-business .business-table textarea{box-sizing:border-box;width:100%;min-height:90px;resize:vertical}
.v2-business .carry-label{display:block;color:#68572c;font-size:11px}
.v2-business .business-table .source-dot{font-size:10px}
.v2-business .business-table .inline-edit{font-size:11px}
/* Spreadsheet-style widths, compact cards and shared entry screens. */
.v2-business .runtime-grid{min-width:0!important;table-layout:fixed}
.v2-business .runtime-grid th,.v2-business .runtime-grid td{min-width:0!important;max-width:none;padding:6px;overflow-wrap:anywhere;overflow:hidden}
.v2-business .runtime-grid .date-col,.v2-business .runtime-grid .operation-col{width:auto;min-width:0!important}
.v2-business .runtime-grid thead tr:nth-child(2) th{top:var(--group-header-height,42px)}
.v2-business .runtime-grid .column-resizer{width:9px;z-index:8}
.runtime-grid .column-title,.runtime-grid [data-edit-url]{cursor:text}
.runtime-grid [data-edit-url]:focus,.runtime-grid [data-edit-url]:hover,.runtime-grid .column-title[role=button]:hover{outline:1px solid #7b9daf;background:#eef5f9}
.runtime-grid .grid-edit-input{width:100%;min-width:0;box-sizing:border-box;font:inherit;border:1px solid #337d98;padding:3px}
.runtime-grid .grid-edit-tools{display:flex;flex-wrap:wrap;gap:3px;font-size:11px}.grid-edit-tools button{font:inherit;cursor:pointer;padding:2px}
.runtime-grid .calculation-error{font-size:11px;color:#84602d}.runtime-grid .operation-preview{display:block;max-height:3em;overflow:hidden;line-height:1.5}
.runtime-grid .source-dot{display:block;line-height:1.3}.runtime-grid [hidden]{display:none!important}
.compact-card{padding:12px!important}.compact-card .confirm-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.compact-card h3{margin:0!important;font-size:16px}
.compact-card .card-status{margin:0;color:#666;font-size:12px}.compact-card .confirm-summary p{margin:7px 0;line-height:1.65}.compact-card .confirm-summary strong{font-weight:500}
.compact-card details{margin:6px 0}.compact-card summary{cursor:pointer;color:#4b6470;font-size:13px}.compact-card .confirm-conflicts{background:#fff4e4;border:1px solid #e6c28b;padding:9px;border-radius:6px}.compact-card .confirm-conflicts p{margin:5px 0}
.compact-card .confirm-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}.compact-card .confirm-item{padding:8px;margin:0!important}.compact-card .confirm-item form{display:flex;gap:5px;align-items:center;margin:5px 0}.compact-card .confirm-item input{min-width:0;width:100px}.compact-card .runtime-actions{gap:7px;flex-wrap:wrap;margin-top:10px}.compact-card .runtime-actions .btn{padding:7px 10px}.compact-card .conflict-replace{border-color:#a8772b;color:#79531c}
.entry-page{background:#fafafa;color:#242424}.entry-page a{color:#345968;text-decoration:none}.entry-brand{font-size:22px;font-weight:700}.entry-login{max-width:360px;margin:10vh auto;padding:32px;background:white;border:1px solid #e4e4e4;border-radius:14px}.entry-login h1{font-size:24px;margin:24px 0 8px}.entry-page .muted{color:#777;line-height:1.6}.entry-login label{display:block;margin-top:18px}.entry-login input{display:block;box-sizing:border-box;width:100%;padding:12px;font:inherit;border:1px solid #ccc;border-radius:7px;margin-top:7px}.entry-login button{margin:24px 0 15px;width:100%;padding:12px;font:inherit;border:0;border-radius:7px;background:#292929;color:white;cursor:pointer}.entry-login small{color:#777}.entry-error{color:#a33}.entry-projects{max-width:1100px;margin:0 auto;padding:32px}.entry-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.entry-top nav{display:flex;gap:16px;align-items:center}.entry-top h1{font-size:25px}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:28px}.project-tile{display:block;padding:22px;background:white;border:1px solid #ddd;border-radius:12px}.project-tile:hover{border-color:#7894a0}.project-tile h2{color:#242424;margin:0;font-size:20px}.project-tile p,.project-tile small{color:#777}.project-tile b{display:block;margin-top:20px;font-size:14px}@media(max-width:600px){.entry-login{margin:7vh 14px}.entry-projects{padding:20px 14px}.entry-top{align-items:flex-start}.entry-top nav{flex-wrap:wrap;justify-content:flex-end;font-size:13px}}
.runtime-grid .column-title,.runtime-grid .cell-value,.runtime-grid th small,.runtime-grid .source-dot,.runtime-grid .carry-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.runtime-grid .date-col,.runtime-grid .operation-col summary{white-space:nowrap;text-overflow:ellipsis}
