:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#1d252f;background:#eef2f5}body{margin:0}button,textarea,input{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.sidebar{background:#f8fafc;border-right:1px solid #d7dee7;padding:24px}.sidebar h1{font-size:22px;line-height:1.35;margin:0 0 24px}.sidebar nav{display:grid;gap:8px}.nav-button{border:1px solid transparent;background:transparent;color:#304052;text-align:left;border-radius:8px;padding:11px 12px;cursor:pointer}.nav-button.active,.nav-button:hover{background:#e7eef6;border-color:#c8d5e5}.workspace{padding:28px}.ai-settings{max-width:960px;border:1px solid #d7dee7;border-radius:8px;background:#fff;padding:16px;margin-bottom:16px;display:grid;gap:8px}.ai-settings label{display:grid;gap:6px}.ai-settings input{border:1px solid #cbd5e1;border-radius:8px;padding:10px}.ai-settings p{margin:0}.ai-settings button{justify-self:start}.workspace-header{max-width:960px;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:center}.eyebrow{color:#607083;margin:0 0 4px}.workspace h2{font-size:28px;margin:0 0 20px}.workspace-visual{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:8px;border:1px solid #d7dee7}.empty-state{max-width:960px;border:1px solid #d7dee7;border-radius:8px;background:#fff;padding:20px}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #d7dee7}.workspace-header{grid-template-columns:1fr}.workspace-visual{max-width:360px}.ledger-item-header,.ledger-columns{display:grid;grid-template-columns:1fr}.ledger-badge{justify-self:start;white-space:normal}}.panel{max-width:960px;border:1px solid #d7dee7;border-radius:8px;background:#fff;padding:18px;margin-bottom:16px}.panel h3{margin:0 0 10px;font-size:18px}.panel h4{margin:14px 0 8px;font-size:15px}.section-heading-row,.action-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.section-heading-row h3{margin:0}.secondary-button,.icon-button{border:1px solid #cbd5e1;background:#f8fafc;color:#304052;border-radius:8px;cursor:pointer}.secondary-button{padding:8px 10px}.icon-button{width:30px;height:30px;line-height:1}.source-list{display:grid;gap:8px;padding-left:0;list-style:none}.source-list li{display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid #d7dee7;border-radius:8px;background:#f8fafc;padding:8px 10px}.chat-messages{display:grid;gap:10px;margin:8px 0 12px}.chat-message{border:1px solid #d7dee7;border-radius:8px;background:#f8fafc;padding:10px}.chat-message.user{background:#eef5fc}.chat-message.pending{color:#647386}.chat-speaker{display:block;margin-bottom:4px}.chat-answer{display:grid;gap:6px}.chat-answer p,.chat-answer ul,.chat-answer ol,.chat-message p{margin:0}.chat-answer h4{margin:2px 0 0}.action-card{display:grid;gap:10px}.action-card p{margin:0}.action-card-sections{display:grid;gap:12px}.action-card-section{border-top:1px solid #d7dee7;padding-top:10px}.action-card-items{display:grid;gap:8px;list-style:none;padding-left:0}.action-card-items li{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;gap:8px;align-items:center}.action-card-items li.completed span{color:#647386;text-decoration:line-through}.check-button{width:28px;height:28px;border:1px solid #9fb2c8;border-radius:50%;background:#fff;color:#2f6f4e;cursor:pointer}.action-card-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}.action-card-add input,.action-card-items input{border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px}.ledger-panel{display:grid;gap:14px}.ledger-section-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.ledger-section-heading h3,.ledger-section-heading p{margin:0}.ledger-list{display:grid;gap:10px}.ledger-item{border:1px solid #d7dee7;border-radius:8px;padding:12px;background:#f8fafc}.ledger-item h4{margin:2px 0 0}.ledger-item p,.ledger-item ul{margin:6px 0 0}.ledger-item-header{display:flex;gap:12px;justify-content:space-between;align-items:start}.ledger-meta{color:#647386;font-size:13px}.ledger-badge{border:1px solid #c8d5e5;border-radius:999px;padding:4px 8px;background:#eef5fc;color:#304052;font-size:12px;white-space:nowrap}.ledger-next{border-left:3px solid #7aa0c7;padding-left:10px;color:#304052}.ledger-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ledger-columns strong{display:block;margin-top:8px}.ledger-list.compact{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.muted{color:#647386}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.catalog-card{display:grid;gap:8px;text-align:left;border:1px solid #d7dee7;border-radius:8px;background:#fff;padding:12px;cursor:pointer}.catalog-card:hover,.catalog-card.active{border-color:#8fb1d8;background:#f6f9fd}.catalog-card span{color:#647386;font-size:14px;line-height:1.5}.material-maintenance{display:grid;gap:10px}.material-maintenance p{margin:0}.material-maintenance label{display:grid;gap:6px}.material-maintenance input{border:1px solid #cbd5e1;border-radius:8px;padding:10px}.maintenance-actions{display:flex;flex-wrap:wrap;gap:10px}textarea{width:100%;min-height:130px;resize:vertical;box-sizing:border-box;margin:10px 0;border:1px solid #cbd5e1;border-radius:8px;padding:10px}.fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.status-field{border:1px solid #d7dee7;border-radius:8px;padding:12px;display:grid;gap:6px}.status-field span,.status-field em{color:#647386;font-style:normal;font-size:13px}.status-field.pending,.status-field.tentative{background:#fff8e7}.status-field.conflict,.panel.warning{background:#fff1f2}.diff-card{border-top:1px solid #d7dee7;padding-top:12px;margin-top:12px}pre{white-space:pre-wrap;background:#f6f8fb;border:1px solid #d7dee7;border-radius:8px;padding:10px}.source-references ul{display:grid;gap:10px;list-style:none;padding-left:0}.source-reference-row{display:flex;gap:10px;justify-content:space-between;align-items:center;border:1px solid #d7dee7;border-radius:8px;background:#f8fafc;padding:10px}.source-reference-actions{display:flex;flex-wrap:wrap;gap:8px}.source-reference-reason{color:#5f6b7a;font-size:.92rem;margin:-4px 0 8px}.work-plan-table-wrap{overflow-x:auto}.work-plan-table{border-collapse:collapse;min-width:960px;width:100%}.work-plan-table th,.work-plan-table td{border-bottom:1px solid #d7dee7;padding:8px;text-align:left;vertical-align:top}.work-plan-table input,.work-plan-table select{min-width:120px}.work-plan-messages{display:grid;gap:10px;margin-top:16px}
