:root{--red:#9f1723;--red-dark:#78111a;--red-soft:#fff1f2;--ink:#202124;--muted:#6b7280;--line:#e7e8eb;--panel:#fff;--bg:#f5f6f8;--blue:#245e9c;--amber:#a15c00;--green:#25704a;--shadow:0 16px 50px rgba(22,29,37,.12);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:var(--ink);background:var(--bg);font-size:16px}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#fff 0,#f5f6f8 210px)}button,input,select,textarea{font:inherit}.topbar{min-height:116px;padding:25px max(28px,calc((100vw - 1440px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;color:#fff;background:linear-gradient(115deg,#73111a 0,#a91827 58%,#c12c36 100%);box-shadow:0 8px 30px rgba(113,17,27,.18)}h1,h2,p{margin:0}.topbar h1{font-size:1.75rem;letter-spacing:.02em}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;opacity:.72;margin-bottom:5px}.top-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{min-height:42px;border:1px solid transparent;border-radius:9px;padding:0 16px;font-weight:700;cursor:pointer;transition:.18s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--red);color:#fff;box-shadow:0 6px 14px rgba(159,23,35,.2)}.topbar .btn.primary{background:#fff;color:var(--red);box-shadow:none}.btn.secondary{background:#fff;color:#3d424a;border-color:#d9dce1}.topbar .btn.secondary{background:rgba(255,255,255,.11);color:#fff;border-color:rgba(255,255,255,.35)}.btn.ghost{background:transparent;color:#565d66;border-color:#dfe1e5}.file-label input{display:none}.shell{width:min(1440px,calc(100% - 36px));margin:26px auto 54px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric{min-height:118px;border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:20px 22px;box-shadow:0 5px 20px rgba(28,35,44,.045);position:relative;overflow:hidden}.metric:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#4f5660}.metric.red:after{background:var(--red)}.metric.blue:after{background:var(--blue)}.metric.amber:after{background:var(--amber)}.metric span{display:block;color:var(--muted);font-size:.9rem}.metric strong{display:block;font-size:2.1rem;line-height:1.1;margin:9px 0 4px;font-variant-numeric:tabular-nums}.metric small{color:#8b9199}.workspace{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 7px 26px rgba(23,30,38,.055);overflow:hidden}.view-tabs{display:flex;gap:4px;padding:12px 16px 0;border-bottom:1px solid var(--line)}.view-tab{border:0;border-bottom:3px solid transparent;background:transparent;color:#69707a;padding:10px 15px 11px;font-weight:750;cursor:pointer}.view-tab span{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;margin-left:5px;border-radius:99px;background:#eef0f3;color:#646b74;font-size:.76rem}.view-tab.active{color:var(--red);border-bottom-color:var(--red)}.view-tab.active span{background:var(--red-soft);color:var(--red)}.toolbar{padding:16px;display:grid;grid-template-columns:minmax(280px,1fr) 150px 150px 150px auto auto;gap:10px;border-bottom:1px solid var(--line);align-items:center}.search-wrap{height:43px;border:1px solid #d8dbe0;border-radius:9px;display:flex;align-items:center;padding:0 13px;gap:9px;background:#fff}.search-wrap:focus-within{outline:3px solid rgba(159,23,35,.12);border-color:var(--red)}.search-wrap span{font-size:1.25rem;color:#6d737b}.search-wrap input{border:0;outline:0;width:100%;min-width:0}.toolbar select,.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #d8dbe0;border-radius:9px;background:#fff;color:var(--ink)}.toolbar select{height:43px;padding:0 34px 0 11px}.active-hint{min-height:0;padding:0 18px;color:var(--muted);font-size:.88rem}.active-hint:not(:empty){padding-top:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:1160px}th{height:48px;padding:0 14px;background:#f8f9fa;color:#5b6169;font-size:.82rem;text-align:left;white-space:nowrap;border-bottom:1px solid var(--line)}td{padding:14px;border-bottom:1px solid #eceef0;vertical-align:top;font-size:.9rem}tbody tr:hover{background:#fffafb}.date-main{display:block;font-weight:700;white-space:nowrap}.date-sub{color:var(--muted);font-size:.79rem}.tracking{font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap}.tag,.status{display:inline-flex;align-items:center;min-height:28px;border-radius:99px;padding:4px 9px;font-size:.78rem;font-weight:700;white-space:nowrap}.tag{return:initial}.tag-return{background:#fff0f1;color:#9b1823}.tag-address{background:#eef5ff;color:#245e9c}.tag-both{background:#f5f0ff;color:#6c3e9c}.status{background:#f0f1f3;color:#535a63}.status-done{background:#eaf7f0;color:var(--green)}.status-processing{background:#fff5e7;color:#8c5400}.status-risk{background:#fff0f1;color:#9b1823}.archive-status{background:#f0edff;color:#6040a0}.info-primary{font-weight:650;max-width:260px}.info-secondary,.note-preview{color:var(--muted);font-size:.82rem;margin-top:4px;max-width:270px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.row-actions{display:flex;flex-wrap:wrap;gap:5px;min-width:165px}.icon-action{border:1px solid #dfe1e5;background:#fff;border-radius:7px;padding:6px 8px;cursor:pointer;color:#4f5660}.icon-action:hover{border-color:#b8bcc3;color:var(--red)}.archive-action{border-color:#d7b9bd;color:var(--red);background:#fff8f8}.restore-action{border-color:#a9cbb9;color:var(--green);background:#f4fbf7}.empty{padding:64px 20px;text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:7px}.empty strong{color:#43484f}.pager{min-height:60px;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.86rem}.pager>div{display:flex;align-items:center;gap:12px}.page-btn{border:1px solid #dfe1e5;background:#fff;border-radius:7px;padding:7px 11px;cursor:pointer}.page-btn:disabled{opacity:.38;cursor:not-allowed}dialog{width:min(820px,calc(100% - 28px));max-height:calc(100vh - 40px);border:0;border-radius:14px;padding:0;box-shadow:var(--shadow);overflow:auto}dialog::backdrop{background:rgba(20,24,30,.48);backdrop-filter:blur(2px)}#recordForm,.detail-dialog,.archive-dialog{padding:24px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.dialog-head h2{font-size:1.35rem}.icon-btn{width:38px;height:38px;border-radius:9px;border:1px solid #dfe1e5;background:#fff;font-size:1.5rem;cursor:pointer;line-height:1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{display:flex;flex-direction:column;gap:6px}.form-grid label>span{font-size:.86rem;font-weight:700}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select{height:43px;padding:0 11px}.form-grid textarea{padding:10px 11px;resize:vertical;line-height:1.55}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:3px solid rgba(159,23,35,.11);border-color:var(--red)}.form-grid small{color:var(--muted)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.form-warning{margin-top:14px;padding:10px 12px;border-radius:8px;background:#fff4e7;color:#8a5000;font-size:.86rem}.archive-dialog{width:min(560px,calc(100% - 28px))}.archive-tip{color:var(--muted);line-height:1.6;margin-bottom:16px}.archive-tip strong{color:var(--ink)}.archive-options{display:grid;gap:9px}.archive-options label{display:flex;align-items:center;gap:12px;border:1px solid #dfe1e5;border-radius:10px;padding:13px 14px;cursor:pointer}.archive-options label:has(input:checked){border-color:var(--red);background:var(--red-soft);box-shadow:0 0 0 2px rgba(159,23,35,.08)}.archive-options input{accent-color:var(--red);width:18px;height:18px}.archive-options span{display:flex;flex-direction:column;gap:3px}.archive-options small{color:var(--muted);font-size:.8rem}.detail-dialog{width:min(900px,calc(100% - 28px))}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.detail-item{background:#f7f8fa;border-radius:9px;padding:13px}.detail-item span{display:block;color:var(--muted);font-size:.8rem;margin-bottom:5px}.detail-item strong{font-size:.93rem;line-height:1.55;word-break:break-word}.detail-block{margin-top:16px}.detail-block h3{font-size:.95rem;margin:0 0 8px}.message-box{white-space:pre-wrap;word-break:break-word;background:#f7f8fa;border:1px solid #e7e9ec;border-radius:9px;padding:14px;line-height:1.7;font-size:.88rem;max-height:280px;overflow:auto}#toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);background:#24272b;color:#fff;padding:11px 17px;border-radius:9px;opacity:0;pointer-events:none;transition:.22s;box-shadow:0 8px 25px rgba(0,0,0,.22);z-index:10}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1100px){.summary-grid{grid-template-columns:repeat(2,1fr)}.toolbar{grid-template-columns:1fr 1fr 1fr}.search-wrap{grid-column:1/-1}.toolbar .btn{width:100%}}
@media(max-width:700px){.topbar{align-items:flex-start;flex-direction:column;padding:22px 18px}.top-actions{width:100%}.top-actions .btn{flex:1;min-width:120px}.shell{width:calc(100% - 20px);margin-top:14px}.summary-grid{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:16px;min-height:104px}.metric strong{font-size:1.7rem}.toolbar{grid-template-columns:1fr 1fr;padding:12px}.search-wrap{grid-column:1/-1}.toolbar select{width:100%}.pager{align-items:flex-start;gap:12px;flex-direction:column}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}#recordForm,.detail-dialog{padding:18px}.detail-grid{grid-template-columns:1fr}}
.inline-status{min-width:150px;height:38px;border:1px solid #d8dbe0;border-radius:8px;padding:0 30px 0 9px;background:#fff;color:#333;font-weight:700;font-size:.82rem}.inline-status:focus{outline:3px solid rgba(159,23,35,.11);border-color:var(--red)}.inline-status.unset{color:#8a9098;font-weight:600}.archive-cell{min-width:82px}.archive-cell .archive-action{min-width:66px;font-weight:700}.archived-mark{display:flex;flex-direction:column;gap:3px;color:var(--green);font-weight:700;font-size:.82rem}.archived-mark small{color:var(--muted);font-weight:400;white-space:nowrap}
.confirm-dialog{width:min(500px,calc(100% - 28px));padding:24px}.confirm-message{color:#565d66;line-height:1.7}.confirm-dialog .dialog-actions{margin-top:24px}
.status-heading{min-width:185px}.status-heading label{display:block;margin-bottom:5px}.status-heading select{width:100%;height:32px;border:1px solid #d8dbe0;border-radius:7px;background:#fff;color:#4e555e;padding:0 28px 0 8px;font-size:.78rem;font-weight:650}.status-heading select:focus{outline:3px solid rgba(159,23,35,.11);border-color:var(--red)}
.cloud-status{min-height:42px;display:inline-flex;align-items:center;border-radius:9px;padding:0 13px;font-size:.82rem;font-weight:750;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;white-space:nowrap}.cloud-status::before{content:"";width:8px;height:8px;border-radius:50%;margin-right:7px;background:#b7f0ce;box-shadow:0 0 0 3px rgba(183,240,206,.15)}.cloud-status.syncing::before{background:#ffd58a}.cloud-status.error::before{background:#ffb3b8}
