:root{--bg:#f4f6fa;--card:#fff;--ink:#132036;--muted:#64748b;--stroke:#e5eaf1;--navy:#172a4b;--accent:#2763e6;--accent-light:#eaf1ff;--green:#157f57;--green-bg:#e8f7ef;--amber:#9a640d;--amber-bg:#fff3d9;--red:#bb3a3a;--red-bg:#feebeb;--radius:17px;--shadow:0 7px 26px rgba(24,44,77,.045)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #6a9bff;outline-offset:2px}
.shell{max-width:1460px;margin:0 auto;padding:32px 32px 54px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;color:#5a78ac;text-transform:uppercase}.top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.top h1{font-size:30px;line-height:1.2;letter-spacing:-.6px;margin:6px 0 9px;font-weight:780}.sub{color:var(--muted);font-size:13px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.btn{border:1px solid #dce4f0;background:white;color:#284164;border-radius:9px;padding:9px 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:650;white-space:nowrap;transition:.14s}.btn:hover{background:#f6f9ff;border-color:#a8bfef}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn.primary:hover{background:#29456f}.btn.sm{padding:7px 10px}.btn.danger{color:#aa4141}.btn.ghost{border:none;background:transparent;color:#6880a2}.btn.ghost:hover{background:#eff3fa}.save-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3ba47c;margin-right:5px}
.hero{background:linear-gradient(113deg,#142c52 0%,#234477 77%,#2d5591 100%);color:white;border-radius:var(--radius);padding:24px 27px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;box-shadow:var(--shadow);margin-bottom:16px}.hero .small{font-size:11px;letter-spacing:1.3px;color:#a9c3e9;font-weight:700}.hero .big{font-size:24px;font-weight:730;margin:8px 0 4px}.hero .info{font-size:12px;color:#d2e0f4}.hero-right{min-width:245px;max-width:400px;flex:1}.hero-right label{display:block;color:#c1d5ee;font-size:11px;font-weight:700;margin-bottom:6px}.hero-right input{width:100%;background:rgba(255,255,255,.11);color:white;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:9px 10px}.hero-right input::placeholder{color:#d2dbea}.hero-date{display:flex;align-items:center;gap:12px;margin-top:7px}.hero-date input{max-width:170px}
.meta{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.25fr;gap:12px;margin-bottom:17px}.field{background:white;border:1px solid var(--stroke);padding:13px 16px;border-radius:12px;box-shadow:var(--shadow)}.field label{display:block;color:#8190a8;font-size:11px;letter-spacing:.4px;font-weight:700;margin-bottom:5px}.field input{width:100%;border:0;padding:1px 0;color:var(--ink);font-weight:650;outline:none;background:none}.field input::placeholder{color:#aab7c7;font-weight:400}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:23px}.stat{background:var(--card);border:1px solid var(--stroke);padding:17px 19px;border-radius:12px;box-shadow:var(--shadow)}.stat .lab{color:#75849a;font-size:12px;font-weight:600}.stat .val{font-size:28px;font-weight:760;line-height:1.2;margin-top:5px;letter-spacing:-.4px}.stat .foot{font-size:11px;color:#98a4b6;margin-top:4px}.stat:nth-child(2) .val{color:var(--green)}.stat:nth-child(3) .val{color:var(--amber)}.stat:nth-child(4) .val{color:var(--red)}
.section{background:var(--card);border:1px solid var(--stroke);border-radius:var(--radius);box-shadow:var(--shadow);margin:17px 0;overflow:hidden}.sec-head{padding:19px 23px 17px;display:flex;align-items:center;justify-content:space-between;gap:16px}.sec-title{display:flex;align-items:center;gap:11px}.number{background:#eaf0fa;color:#365788;font-size:11px;font-weight:800;width:28px;height:28px;border-radius:8px;display:inline-grid;place-items:center}.sec-head h2{font-size:17px;letter-spacing:-.2px;margin:0}.sec-desc{color:#8996a8;font-size:12px;margin-top:3px}.sec-tools{display:flex;align-items:center;gap:8px}.count{font-size:11px;color:#8594a7;margin-right:4px}.table-wrap{width:100%;overflow-x:auto;border-top:1px solid var(--stroke)}table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}th{background:#f9fafc;text-transform:none;color:#8190a6;font-size:11px;font-weight:740;letter-spacing:.25px;padding:12px 12px;border-bottom:1px solid var(--stroke)}td{border-bottom:1px solid #edf0f5;padding:11px 12px;vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcff}th:first-child,td:first-child{padding-left:23px}th:last-child,td:last-child{padding-right:20px}.row-num{font-size:12px;color:#98a5b5;font-variant-numeric:tabular-nums}.cell-input,.cell-textarea,.cell-select{background:transparent;border:1px solid transparent;border-radius:7px;padding:5px 6px;color:var(--ink);width:100%;outline:0;transition:.12s}.cell-input:hover,.cell-textarea:hover,.cell-select:hover{border-color:#dfe8f7;background:#f9fbff}.cell-input:focus,.cell-textarea:focus,.cell-select:focus{border-color:#8ab0f7;background:#fff}.cell-textarea{resize:vertical;min-height:35px;line-height:1.45;display:block}.task-name{font-weight:640}.date{font-size:12px;font-variant-numeric:tabular-nums;min-width:120px}.person{min-width:85px}.note{color:#586a83;font-size:12px}.cell-select{font-size:11px;font-weight:750;cursor:pointer;border:1px solid transparent;min-width:100px;appearance:none;background-repeat:no-repeat;background-position:right 7px center;background-size:10px;padding-right:18px}.cell-select.done{color:var(--green);background-color:var(--green-bg)}.cell-select.going{color:var(--amber);background-color:var(--amber-bg)}.cell-select.blocked{color:var(--red);background-color:var(--red-bg)}.status-box{display:flex;align-items:center;min-height:31px}.remove{border:0;background:transparent;color:#b0baca;font-size:17px;border-radius:7px;padding:3px 8px}.remove:hover{background:#feebeb;color:#c53d3d}.empty{padding:23px!important;color:#9aa8bc;text-align:center;font-size:12px}
.delay-section{border-color:#f0dcd6}.delay-section .number{background:#fff0eb;color:#bd6251}.delay-section .sec-head{background:linear-gradient(100deg,#fff,#fffafa)}.days{color:var(--red);font-weight:730}.reason{color:#a63a3a}.muted{color:#6d7e93}.bottom{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:19px}.note-card{background:white;border:1px solid var(--stroke);border-radius:var(--radius);padding:19px 23px;box-shadow:var(--shadow)}.note-card h3{font-size:15px;margin:0 0 5px}.note-card p{margin:0 0 10px;color:#8d9aae;font-size:12px}.note-card textarea{resize:vertical;width:100%;border:1px solid #e9edf5;background:#fafbfd;border-radius:9px;min-height:102px;padding:12px 13px;line-height:1.85;color:#30415e}.footer{display:flex;justify-content:space-between;gap:15px;font-size:11px;color:#a2aebe;margin-top:18px;padding:0 3px}.footer strong{color:#6c809f}.print-only{display:none}
@media(max-width:900px){.shell{padding:22px 15px 36px}.top{flex-direction:column}.actions{justify-content:flex-start}.meta,.stats{grid-template-columns:repeat(2,1fr)}.hero{align-items:flex-start;flex-direction:column}.hero-right{width:100%;max-width:none}.bottom{grid-template-columns:1fr}table{min-width:860px}table.delay-table{min-width:1110px}}
@media(max-width:500px){.meta,.stats{grid-template-columns:1fr 1fr;gap:8px}.top h1{font-size:25px}.stat{padding:14px}.stat .val{font-size:25px}.field{padding:11px}.hero{padding:20px}.sec-head{padding:15px;align-items:flex-start;flex-direction:column}.sec-tools{width:100%;justify-content:space-between}}
@media print{ @page{size:A4 landscape;margin:12mm}body{background:#fff;font-size:11px;color:#162338}.shell{max-width:unset;padding:0}.top{margin-bottom:10px}.top h1{font-size:21px}.actions,.sec-tools .btn,.remove,.footer .hint{display:none!important}.hero{padding:12px 16px;margin-bottom:10px;background:#223d65!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.hero .big{font-size:17px}.hero-date input,.hero-right input{padding:3px}.meta{margin-bottom:9px;gap:6px}.field{padding:8px 10px}.stats{gap:6px;margin-bottom:10px}.stat{padding:9px 12px}.stat .val{font-size:22px}.section{margin:10px 0;border-radius:8px;box-shadow:none;break-inside:avoid}.sec-head{padding:9px 13px}.sec-head h2{font-size:14px}.sec-desc{font-size:10px}.table-wrap{overflow:visible}table,table.delay-table{min-width:0}th{padding:6px 7px;font-size:9px}td{padding:5px 7px}th:first-child,td:first-child{padding-left:12px}th:last-child,td:last-child{padding-right:12px}.cell-input,.cell-textarea,.cell-select{padding:2px 3px;font-size:10px;overflow:visible}.cell-textarea{resize:none;min-height:27px}.note-card{box-shadow:none;padding:12px}.note-card textarea{font-size:10px;min-height:70px}.footer{font-size:9px}input,textarea,select{color:#162338!important}.cell-select{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
