:root{--ink:#172331;--muted:#657383;--line:#dce4ec;--blue:#1769e0;--pale:#eef5ff;--green:#16825d;--red:#c64343;--gold:#f0a51a}*{box-sizing:border-box}body{margin:0;background:#f4f7fa;color:var(--ink);font-family:"Microsoft YaHei",Arial,sans-serif}header{height:86px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100% - 1320px)/2));position:sticky;top:0;z-index:3}header p{font-size:12px;color:var(--blue);margin:0 0 3px;letter-spacing:1px}h1{font-size:22px;margin:0}nav{display:flex;gap:8px}button{font:inherit;border:0;border-radius:8px;padding:10px 16px;cursor:pointer;background:#eef2f6;color:var(--ink)}nav button.active,.primary{background:var(--blue);color:#fff}.ghost{border:1px solid var(--line);background:#fff}main{max-width:1320px;margin:24px auto;padding:0 24px 50px}.page{display:none}.page.active{display:block}.hero{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.hero h2{margin:0 0 7px;font-size:25px}.hero p{margin:0;color:var(--muted)}label{display:flex;flex-direction:column;gap:7px;color:#4d5c6d;font-size:13px}input,select,textarea{font:inherit;border:1px solid #cfd9e3;border-radius:7px;background:white;padding:10px 11px;color:var(--ink)}textarea{min-height:74px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;margin:14px 0;box-shadow:0 3px 12px #22374d0a}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.panel-head>div:first-child{display:flex;align-items:center;gap:10px}.panel h3{margin:0}.step{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--pale);color:var(--blue);font-weight:bold}.imports{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.import-card{border:1px dashed #bcc9d5;border-radius:10px;padding:14px}.import-card h4{margin:0 0 12px}.file-btn{display:block;text-align:center;background:var(--pale);color:var(--blue);padding:10px;border-radius:7px;cursor:pointer}.file-btn input{display:none}.file-status{font-size:12px;color:var(--muted);margin:10px 0 0;min-height:32px}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.kpi{padding:13px;background:#f6f8fb;border-radius:9px}.kpi span{display:block;font-size:12px;color:var(--muted)}.kpi b{display:block;margin-top:6px;font-size:18px}.badge{padding:6px 10px;border-radius:20px;font-size:12px;background:#e8f7f1;color:var(--green)}.badge.bad{background:#fff0f0;color:var(--red)}.result{border:1px solid var(--line);border-radius:10px;margin:10px 0;overflow:hidden}.result-head{display:grid;grid-template-columns:1.2fr 1.4fr 1fr auto;gap:12px;align-items:center;padding:13px 15px;background:#f8fafc}.result-head h4{margin:0 0 4px}.result-head small{color:var(--muted)}.money{text-align:right}.money b{font-size:20px}.result-body{display:none;padding:16px}.result.open .result-body{display:block}.calc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.calc-item{border-left:3px solid #dbe7f4;padding:7px 10px}.calc-item span{font-size:12px;color:var(--muted);display:block}.calc-item b{display:block;margin-top:5px}.review-row{display:grid;grid-template-columns:180px 1fr auto;gap:12px;align-items:end;margin-top:16px}.thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.thumbs img{width:150px;height:90px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.status{font-size:12px;padding:5px 8px;border-radius:20px;background:#fff3da;color:#855a00}.status.done{background:#e6f7ef;color:var(--green)}.status.bad{background:#fff0f0;color:var(--red)}.client-list{margin-top:12px}.client-row{display:grid;grid-template-columns:1.1fr 1.4fr .7fr .7fr .7fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:13px 4px}.client-row small{color:var(--muted)}.search{width:320px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wide{grid-column:1/-1}dialog{border:0;border-radius:14px;width:min(720px,92vw);padding:0;box-shadow:0 20px 80px #10203044}dialog::backdrop{background:#14233388}dialog form{padding:22px}.dialog-head,.actions{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0 0 18px}.x{font-size:20px;padding:5px 10px}.actions{justify-content:flex-end;gap:10px;margin-top:20px}.hidden{display:none!important}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(30px);background:#172331;color:white;padding:12px 20px;border-radius:9px;opacity:0;transition:.2s;z-index:9}#toast.show{opacity:1;transform:translateX(-50%)}@media(max-width:900px){.imports,.kpis{grid-template-columns:repeat(2,1fr)}.result-head{grid-template-columns:1fr}.calc-grid{grid-template-columns:repeat(2,1fr)}.client-row{grid-template-columns:1fr 1fr}.review-row{grid-template-columns:1fr}}
.analysis-toolbar,.analysis-client-filters{display:flex;gap:10px;align-items:end}.analysis-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.analysis-kpis>div,.analysis-compare>div{padding:16px;border-radius:10px;background:#f6f8fb}.analysis-kpis span,.analysis-kpis small,.analysis-compare span,.analysis-compare small{display:block}.analysis-kpis span,.analysis-compare span{font-size:12px;color:var(--muted)}.analysis-kpis b{display:block;font-size:21px;margin:7px 0}.analysis-kpis small,.analysis-compare small{color:var(--muted);margin-top:6px}.analysis-sources{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.analysis-sources article{padding:18px;border:1px solid var(--line);border-radius:10px}.analysis-sources h3{margin:0 0 12px}.analysis-sources article>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.analysis-sources span{font-size:12px;color:var(--muted)}.analysis-sources b{display:block;color:var(--ink);font-size:17px;margin-top:5px}.analysis-compare{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.analysis-compare b{display:block;margin-top:8px}.analysis-change.up{color:var(--green)}.analysis-change.down{color:var(--red)}.analysis-no-compare{color:var(--muted)}.analysis-table{margin-top:14px;overflow-x:auto}.analysis-table-row,.analysis-client-row{display:grid;grid-template-columns:1.1fr .8fr 1fr 1fr 1fr;gap:12px;align-items:center;min-width:760px;padding:12px;border-bottom:1px solid var(--line)}.analysis-client-row{grid-template-columns:60px 1.3fr 1fr 1.2fr 1.2fr 1fr;min-width:900px}.analysis-table-head{background:var(--pale);border-radius:8px}.analysis-client-row small{display:block;color:var(--blue);margin-top:4px}.analysis-empty{text-align:center;color:var(--muted);padding:24px}@media(max-width:900px){.analysis-kpis{grid-template-columns:repeat(2,1fr)}.analysis-sources,.analysis-compare{grid-template-columns:1fr}.analysis-sources article>div{grid-template-columns:1fr}.analysis-toolbar,.analysis-client-filters{flex-wrap:wrap}}
.analysis-salesperson-row{display:grid;grid-template-columns:60px 1.3fr 1fr 1.2fr 1.2fr 1fr;gap:12px;align-items:center;min-width:900px;padding:12px;border-bottom:1px solid var(--line)}.analysis-salesperson-row small{display:block;color:var(--blue);margin-top:4px}
.analysis-salesperson-row.performance-columns{grid-template-columns:60px 1.2fr .8fr 1.15fr 1.15fr 1fr 1fr 1fr;min-width:1160px}
.software-notice{display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:var(--pale);border-radius:9px;color:var(--muted)}.software-notice b{color:var(--ink)}.software-list{margin-top:14px}.software-release{display:grid;grid-template-columns:180px 1fr auto;gap:20px;align-items:center;padding:18px 4px;border-bottom:1px solid var(--line)}.software-release:last-child{border-bottom:0}.software-version h3{margin:9px 0 4px;font-size:22px}.software-version small,.software-detail span,.software-detail small{display:block;color:var(--muted);margin-top:6px}.software-detail code{display:block;margin-top:9px;padding:8px;background:#f6f8fb;border-radius:6px;font-size:12px;word-break:break-all}.software-download{text-decoration:none;white-space:nowrap;padding:11px 16px;border-radius:8px}@media(max-width:900px){.software-release{grid-template-columns:1fr}.software-download{text-align:center}}
