:root{color-scheme:light;--ink:#142746;--muted:#687a92;--blue:#1764f5;--border:#dfe7f3;--surface:#f3f6fc;--nav:#08182f;--paper:#fff;font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink)}a{color:var(--blue);text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #90baff;outline-offset:3px}.app-shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(165deg,#0c2345,#06152c);color:#a7bddc;display:flex;flex-direction:column;padding:28px 18px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;align-items:center;gap:12px;color:white;font-size:22px;font-weight:700;padding:0 12px}.brand-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(140deg,#4c9dff,#1255ed);box-shadow:0 5px 25px #1764f53d;font-size:22px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#7796c1;margin-top:4px}.side-caption{padding:32px 14px 14px;font-size:11px;letter-spacing:2px;color:#6c88ae}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{color:#a9bfdf;padding:12px 15px;border-radius:8px;display:flex;justify-content:space-between;font-size:13px}.sidebar nav a:hover{background:#ffffff0b;color:white}.sidebar nav a.active{background:linear-gradient(100deg,#1b67f2,#1848bb);color:white;box-shadow:0 5px 15px #0002}.sidebar nav a span{color:inherit;opacity:.75}.nav-divider{height:1px;background:#234164;margin:12px}.side-bottom{margin-top:auto;padding:30px 12px 0;font-size:11px;color:#9ab3d3}.side-bottom small{display:block;color:#7691b6;font-size:10px;line-height:1.8;margin-top:10px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#63b1ff;margin-right:8px}.app-body{min-width:0}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fff;border-bottom:1px solid var(--border);gap:16px}.breadcrumb{font-size:12px;color:#8a98ad;white-space:nowrap}.breadcrumb span{margin:0 14px;color:#b6c3d4}.breadcrumb strong{color:#465c7c;font-weight:500}.top-actions{display:flex;align-items:center;gap:12px;font-size:12px}main{max-width:1580px;margin:auto;padding:32px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{color:#7690b1;font-size:10px;letter-spacing:2px;margin:0 0 9px}h1{font-size:26px;margin:0 0 10px;letter-spacing:.4px}h2{font-size:17px;margin:0 0 15px}h3{font-size:14px;margin:0 0 10px}p{font-size:13px;line-height:1.85;margin:10px 0;color:#526885}.page-heading p:last-child{color:var(--muted);margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #cfddf2;background:#fff;border-radius:8px;padding:10px 15px;color:#365d92;white-space:normal;font-size:12px;min-height:38px}.button.primary{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 4px 10px #1764f51a}.button.subtle{border-color:transparent;background:#f1f5fd;color:#4d6b93}.button.on-dark{background:#ffffff10;color:#c7dcff;border-color:#ffffff30}.button:hover{filter:brightness(.98)}.button.danger{color:#b54444;background:#fff1f0;border-color:#f3cece}.notice{padding:13px 17px;border:1px solid #dce8ff;border-radius:9px;background:#eaf2ff;color:#456792;font-size:12px;line-height:1.8;margin-bottom:23px}.notice.warning{border-color:#efdeb4;background:#fff9ec;color:#806331}.notice.error{border-color:#edc9c9;background:#fff1f1;color:#a74646}.panel{background:var(--paper);border:1px solid var(--border);border-radius:13px;padding:24px;margin-bottom:22px;box-shadow:0 3px 15px #12396504}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.panel-heading h2{margin:0}.hero{display:grid;grid-template-columns:1.4fr .6fr;align-items:center;background:radial-gradient(ellipse at 85% 20%,#347ce078,transparent 55%),linear-gradient(120deg,#102f61,#0b2050);border-radius:15px;color:white;padding:34px 40px;margin-bottom:24px;position:relative;overflow:hidden}.hero-label{font-size:11px;color:#9cc4ff;letter-spacing:2px}.hero h2{color:#fff;font-size:29px;line-height:1.6;margin:14px 0 8px}.hero p{color:#a7c4e8;margin-bottom:23px}.hero-diagram{display:grid;justify-items:center;gap:9px;transform:rotate(-3deg);padding-left:20px}.hero-diagram div{border:1px solid #ffffff30;border-radius:10px;color:#bbd6fc;padding:13px 25px;font-size:12px;background:#ffffff07}.hero-diagram .hero-highlight{background:#ffffff16;color:white;box-shadow:0 12px 35px #0002}.hero-diagram span{color:#6ba3ed}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0 4px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.stats article{background:#fff;border:1px solid var(--border);border-radius:12px;padding:21px;min-width:0}.stats article>span{font-size:12px;color:#6b7c94}.stats strong{display:block;font-size:28px;margin:14px 0 10px;color:#1b3e76;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stats small{display:block;font-size:10px;color:#8b9ab0;line-height:1.7}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.module{display:flex;flex-direction:column;align-items:flex-start}.module-number{font-size:10px;letter-spacing:1px;color:#86a1c5;margin-bottom:17px}.module p{margin:0 0 20px;flex:1}.module a{display:block;border-top:1px solid #edf2f9;width:100%;padding-top:18px;font-size:12px;margin-top:20px}.pill{font-size:10px;border-radius:5px;padding:5px 8px;display:inline-block;line-height:1.6}.pill.success{background:#eaf6f0;color:#34775e}.pill.warning{background:#fff4dc;color:#926c26}.pill.neutral{background:#edf3fc;color:#59749b}.pill.bad{background:#fff0ee;color:#a6483b}.workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.workflow a{font-size:12px;color:#5c7290}.workflow b{display:block;color:#6a9bf0;font-size:18px;margin-bottom:10px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.two-column{display:grid;grid-template-columns:1.3fr 1fr;gap:22px;align-items:start}label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#48617f;margin-bottom:16px}input,select,textarea{border:1px solid #d8e2f0;border-radius:7px;padding:10px 11px;background:#fff;color:#243f64;min-width:0;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:#4387f8;box-shadow:0 0 0 3px #1764f515}textarea{resize:vertical;line-height:1.8}.checkbox{display:flex;flex-direction:row;align-items:flex-start;line-height:1.8;gap:9px}.checkbox input{width:16px;min-width:16px;height:16px;padding:0;margin:2px 0 0;accent-color:var(--blue)}.form-action{display:flex;align-items:center}.muted{color:#7c8da5;font-size:11px;line-height:1.85}.empty{color:#8798ae;font-size:12px;line-height:1.8;padding:18px 0}details{padding:13px 0}summary{cursor:pointer;color:#4e73a6;font-size:12px;margin-bottom:14px}.record-list{display:flex;flex-direction:column;gap:12px}.record{border:1px solid #e3ebf7;border-radius:9px;padding:18px;background:#fcfdff}.record .record-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.record h3{font-size:14px;overflow-wrap:anywhere}.record p{margin:8px 0;font-size:12px}.record .actions{margin-top:12px}.record .button{padding:6px 10px;min-height:31px;font-size:11px}.condition{display:grid;grid-template-columns:1.1fr .85fr 1.1fr .5fr auto;gap:10px;align-items:center;background:#f6f9fe;border:1px solid #e4ecf8;border-radius:9px;padding:12px;margin:10px 0}.condition input,.condition select{margin:0}.condition .button{min-height:38px}.quote{background:#f0f6ff;border:1px solid #dceaff;border-radius:10px;padding:17px;margin:15px 0}.quote span,.quote small{display:block;font-size:11px;color:#7189a8}.quote strong{display:block;font-size:23px;color:#245fba;margin:10px 0}.module-option{padding:18px;background:#f5f8fe;border:1px solid var(--border);border-radius:8px}.file-choice{font-size:12px;margin:0;max-width:250px}.file-choice input{padding:6px}.history-row{font-size:11px;line-height:1.9;border-top:1px solid #e6edf8;padding:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.explanation{display:grid;gap:8px;font-size:12px;line-height:1.9}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #e5ecf7;padding:12px;vertical-align:top;overflow-wrap:anywhere}.locale-label{display:flex;justify-content:space-between;align-items:center;gap:12px}footer{text-align:center;font-size:10px;color:#96a4b8;padding:18px 25px 30px}[hidden]{display:none!important}
@media(max-width:1150px){.app-shell{grid-template-columns:205px minmax(0,1fr)}main{padding:24px}.topbar{padding:0 24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid{grid-template-columns:1fr}.module{margin-bottom:0}.module-grid{margin-bottom:22px}.hero{padding:30px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.two-column{grid-template-columns:1fr}.condition{grid-template-columns:1fr 1fr}.condition .button{grid-column:2}.panel{padding:20px}}
@media(max-width:720px){.app-shell{display:block}.sidebar{position:static;height:auto;padding:18px}.brand{padding:0}.side-caption,.side-bottom,.nav-divider{display:none}.sidebar nav{flex-direction:row;overflow:auto;gap:5px;margin-top:18px}.sidebar nav a{white-space:nowrap;padding:9px 12px;font-size:12px}.sidebar nav a span{display:none}.topbar{height:auto;min-height:62px;padding:13px 18px;flex-wrap:wrap}.top-actions{flex-wrap:wrap}.top-actions>.pill{display:none}main{padding:20px 15px}.page-heading{align-items:flex-start;flex-direction:column}h1{font-size:23px}.hero{grid-template-columns:1fr;padding:25px}.hero h2{font-size:25px}.hero-diagram{display:none}.stats{gap:10px}.stats article{padding:15px}.stats strong{font-size:24px}.workflow{grid-template-columns:1fr 1fr;gap:22px}.form-grid{grid-template-columns:1fr}.panel-heading{align-items:flex-start;flex-wrap:wrap}.record .record-top{align-items:flex-start}.condition{grid-template-columns:1fr}.condition .button{grid-column:auto}.button{min-height:42px}.module-grid{gap:12px}.panel{padding:18px}.two-column{gap:0}.stats small{font-size:11px}.muted{font-size:12px}}
