*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:#e9e9ea;color:#222}#app{min-height:100vh;padding:18px}.window{max-width:1480px;margin:0 auto;background:#f4f4f4;border-radius:18px;overflow:hidden;border:1px solid #cfcfcf;box-shadow:0 8px 30px #00000014}.topbar{background:linear-gradient(#dbdbdb,#d1d1d1);height:72px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#4a4a4a;border-bottom:1px solid #bfbfbf}.toolbar{display:flex;gap:20px;align-items:center;padding:16px 24px;background:#dadada;border-bottom:1px solid #bfbfbf}.add-btn{width:72px;height:72px;border:none;border-radius:10px;background:#1499eb;color:#fff;font-size:42px;cursor:pointer}.input-group{flex:1;display:flex;gap:12px}.input-group input{flex:1;height:46px;border:1px solid #bbb;border-radius:8px;padding:0 14px;font-size:16px;background:#fff}.input-group button,.actions button{height:46px;border:1px solid #b8b8b8;background:#f7f7f7;border-radius:8px;padding:0 18px;cursor:pointer;font-size:15px}.actions .primary{background:#1499eb;color:#fff;border-color:#1499eb}.panel{background:#f6f6f6;padding:14px 12px 0}.tabs,.bottom-tabs{display:flex;gap:16px;align-items:center}.tab,.btab{border:none;background:#ececec;padding:8px 16px;font-size:14px;cursor:pointer;border-bottom:3px solid transparent}.tab.active,.btab.active{border-bottom-color:#17a2f3;background:#f8f8f8}.table{margin-top:14px;border:1px solid #cfcfcf;background:#fff;min-height:320px}.thead,.row{display:grid;grid-template-columns:2.8fr .8fr .8fr .8fr .7fr;align-items:center}.thead{background:#fafafa;border-bottom:1px solid #d8d8d8;font-size:15px;font-weight:600}.thead>div,.row>div{padding:14px 12px;border-right:1px solid #ececec}.thead>div:last-child,.row>div:last-child{border-right:none}.row{min-height:78px;font-size:16px;border:1px solid #6bc2ff;background:#fff}.bottom-panel{margin:12px;border:1px solid #cfcfcf;background:#fff}.bottom-tabs{padding:12px 16px 0;border-bottom:1px solid #ddd;background:#efefef}.settings{padding:12px 16px;border-bottom:1px solid #e6e6e6}.info-grid{display:grid;grid-template-columns:1fr 140px 180px;gap:18px}.info-grid>div{display:flex;align-items:center;gap:10px}.info-grid label{color:#555;min-width:52px}.info-grid input{width:84px;height:34px;border:1px solid #bbb;border-radius:6px;padding:0 8px}.progress-grid-wrap{padding:10px 12px 14px;background:#fff}.progress-grid{display:grid;grid-template-columns:repeat(40,1fr);gap:4px}.grid-cell{width:100%;aspect-ratio:1 / 1;border:1px solid #ccecff;background:#fff}.grid-cell.done{background:#18a3ff;border-color:#18a3ff}.grid-cell.active{box-shadow:0 0 0 1px #0c6fb8 inset}.actions{padding:0 16px 16px;display:flex;gap:12px}.footer{height:60px;border-top:1px solid #cfcfcf;background:#f7f7f7;display:flex;align-items:center;justify-content:space-between;padding:0 22px;font-size:16px}@media (max-width: 980px){.thead,.row{grid-template-columns:1.6fr .8fr .8fr}.thead>div:nth-child(4),.thead>div:nth-child(5),.row>div:nth-child(4),.row>div:nth-child(5){display:none}.info-grid{grid-template-columns:1fr}.progress-grid{grid-template-columns:repeat(24,1fr)}.toolbar{flex-direction:column;align-items:stretch}.add-btn{width:100%;height:52px}}
