:root{--bg:#0f1420;--bg-elev:#171e2e;--bg-card:#1b2435;--border:#2a3550;--text:#e8edf6;--text-dim:#94a3b8;--accent:#38bdf8;--accent2:#818cf8;--good:#34d399;--warn:#fbbf24}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}.app{min-height:100vh}.help-link{color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;margin-top:18px;padding:4px;font-size:14px;text-decoration:underline;display:inline-block}.help-link:hover{color:#7dd3fc}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#05080eb8;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;width:100%;max-width:760px;max-height:calc(100vh - 80px);display:flex;box-shadow:0 24px 60px #00000080}.modal-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-head h3{margin:0;font-size:17px}.modal-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 8px;font-size:18px;line-height:1}.modal-close:hover{color:var(--text);background:#ffffff0f}.modal-body{padding:18px 20px 22px;overflow-y:auto}.modal-intro{color:var(--text-dim);margin:0 0 18px;font-size:14px}.modal-intro a{color:var(--accent);font-weight:600}.modal-foot{color:var(--text-dim);border-top:1px solid var(--border);margin:16px 0 0;padding-top:14px;font-size:13px}.step{margin-bottom:20px}.step-head{align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.step-num{background:var(--accent);color:#06121f;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:flex}.step-head h4{margin:2px 0 4px;font-size:15px}.step-head p{color:var(--text-dim);margin:0;font-size:13.5px;line-height:1.5}.step img{border:1px solid var(--border);border-radius:10px;width:100%;display:block}.header{border-bottom:1px solid var(--border);z-index:20;background:linear-gradient(90deg,#131a29,#1a2236);justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;position:sticky;top:0}.header h1{letter-spacing:.3px;margin:0;font-size:20px}.header h1 span{color:var(--accent)}.header .sub{color:var(--text-dim);margin-top:2px;font-size:13px}.header-actions{align-items:center;gap:10px;display:flex}.btn{background:var(--accent);color:#06283d;cursor:pointer;border:none;border-radius:8px;padding:9px 16px;font-size:13px;font-weight:600;transition:transform 80ms,filter .15s}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:progress;filter:none}.btn.ghost{color:var(--text);border:1px solid var(--border);background:0 0}.landing{text-align:center;max-width:1040px;margin:6vh auto;padding:0 20px 70px}.landing h2{margin-bottom:8px;font-size:30px}.landing p{color:var(--text-dim);line-height:1.6}.hero{max-width:720px;margin:0 auto}.hero-badge{color:var(--accent);letter-spacing:.3px;background:#38bdf81f;border:1px solid #38bdf84d;border-radius:999px;margin-bottom:14px;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-block}.section-h2{margin:0 0 6px;font-size:21px}.features{margin-top:66px}.feature-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));gap:16px;margin-top:26px;display:grid}.feature{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:18px;transition:border-color .15s,transform .15s}.feature:hover{border-color:#34507e;transform:translateY(-2px)}.feature-ico{font-size:24px}.feature h4{margin:10px 0 6px;font-size:15px}.feature p{color:var(--text-dim);margin:0;font-size:13px;line-height:1.5}.compare{margin-top:66px}.compare-intro{max-width:760px;color:var(--text-dim);margin:8px auto 0;line-height:1.6}.compare-table{border:1px solid var(--border);text-align:left;border-radius:14px;margin-top:26px;overflow:hidden}.ct-row{grid-template-columns:1.2fr 1.4fr 1.4fr;display:grid}.ct-row+.ct-row{border-top:1px solid var(--border)}.ct-row>div{padding:13px 16px;font-size:13.5px;line-height:1.4}.ct-head{background:var(--bg-elev);text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);font-size:12px;font-weight:700}.ct-head>div:last-child{color:var(--accent)}.ct-feat{font-weight:600}.ct-dcomex{color:var(--text-dim)}.ct-ours{color:var(--text);background:#38bdf80f}.compare-note{max-width:760px;color:var(--text-dim);margin:16px auto 0;font-size:13px}@media (width<=640px){.ct-row{grid-template-columns:1fr}.ct-row>div{padding:7px 14px}.ct-head{display:none}.ct-feat{padding-top:14px;font-weight:700}.ct-ours{background:#38bdf814;border-radius:8px;margin:0 8px 8px}}.dropzone{border:2px dashed var(--border);background:var(--bg-elev);cursor:pointer;border-radius:16px;margin-top:28px;padding:56px 24px;transition:border-color .15s,background .15s}.dropzone.drag{border-color:var(--accent);background:#1c2740}.dropzone .big{font-size:44px}.dropzone .hint{color:var(--text-dim);margin-top:8px;font-size:13px}.error-box{color:#ffb4bd;background:#3b1d22;border:1px solid #7f2a35;border-radius:10px;margin-top:18px;padding:12px 16px;font-size:14px}.filters{background:var(--bg-elev);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px;padding:16px 28px;display:flex}.filter{flex-direction:column;gap:4px;display:flex}.filter label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.filter select{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:8px;min-width:170px;max-width:240px;padding:7px 10px;font-size:13px}.content{padding:22px 28px 60px}.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px;display:grid}.kpis.compact{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}.sec-h{color:var(--text);border-bottom:1px solid var(--border);margin:26px 2px 12px;padding-bottom:8px;font-size:15px}.sec-h span{color:var(--text-dim);font-weight:500}.section{background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;overflow:hidden}.section.open{border-color:#34507e}.section-head{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:14px 18px;font-size:14px;display:flex}.section-head:hover{background:#ffffff08}.section .chev{color:var(--accent);flex:none;width:14px;font-size:13px}.section-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.section-sub{color:var(--text-dim);font-weight:400}.section-meta{color:var(--text-dim);flex:none;align-items:center;gap:14px;font-size:12px;display:flex}.section-meta .money{color:var(--text);font-size:13px;font-weight:700}.section-meta .pill{color:var(--accent);background:#38bdf824;border-radius:999px;padding:2px 9px;font-weight:600}.section-body{border-top:1px solid var(--border);padding:4px 18px 18px}@media (width<=760px){.section-meta{display:none}}.kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:16px 18px;position:relative;overflow:hidden}.kpi:before{content:"";background:var(--accent);width:4px;position:absolute;top:0;bottom:0;left:0}.kpi.k2:before{background:var(--accent2)}.kpi.k3:before{background:var(--good)}.kpi.k4:before{background:var(--warn)}.kpi .label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.kpi .value{margin-top:6px;font-size:24px;font-weight:700}.kpi .value.sm{font-size:19px}.grid{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;min-height:320px;padding:16px 18px 8px;display:flex}.card h3{margin:0 0 4px;font-size:14px;font-weight:600}.card .csub{color:var(--text-dim);margin-bottom:10px;font-size:12px}.card .chart-wrap{flex:1;min-height:240px}.col-12{grid-column:span 12}.col-8{grid-column:span 8}.col-6{grid-column:span 6}.col-4{grid-column:span 4}@media (width<=1100px){.col-8,.col-6,.col-4{grid-column:span 12}}.recharts-default-tooltip{border:1px solid var(--border)!important;background:#0d1320!important;border-radius:8px!important}.footer{text-align:center;color:var(--text-dim);padding:24px;font-size:12px}.table-wrap{flex:1;overflow:auto}table.summary{border-collapse:collapse;width:100%;font-size:13px}table.summary th,table.summary td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}table.summary th{color:var(--text-dim);background:var(--bg-card);font-weight:600;position:sticky;top:0}table.summary td.num{text-align:right;font-variant-numeric:tabular-nums}
