:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#f7f7fb;background:#1d1c23;font-synthesis:none;--panel:#27262e;--line:#46444f;--input:#35343d;--muted:#aaa7b3;--pink:#ff4fa3;--green:#32d399}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 15% -20%,#342538 0,transparent 35%),#1d1c23;min-height:100vh}.app-shell{width:min(1380px,calc(100% - 36px));margin:0 auto;padding:22px 0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.brand{display:inline-block;color:#ff82bd;font-size:10px;letter-spacing:2px;font-weight:800;margin-bottom:6px}.page-head h1{font-size:27px;letter-spacing:-.8px;margin:0 0 4px}.page-head p{color:#c3c0ca;font-size:12px;margin:0}.counter{border:1px solid var(--line);border-radius:20px;padding:9px 14px;color:#c6c3cd;font-size:11px;white-space:nowrap}.counter span{color:var(--pink);margin-right:6px}.counter strong{color:white}.layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}form{display:grid;gap:20px}.panel{background:linear-gradient(145deg,#292830,#25242b);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 16px 45px #0002}.panel h2{font-size:15px;margin:0 0 22px}.panel h2 span{color:var(--pink);margin-right:8px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px 18px}.fields .full{grid-column:1/-1}label{font-size:11px;font-weight:700;color:#f1eff5}.info{border:1px solid #66636e;background:transparent;color:#bcb9c4;border-radius:50%;width:15px;height:15px;padding:0;font-size:9px;vertical-align:middle;cursor:help}input,select{width:100%;height:42px;margin-top:8px;border:1px solid #5a5762;border-radius:11px;background:#35343d;color:#fff;padding:0 13px;font:inherit;font-size:12px;outline:none}input:focus,select:focus{border-color:#ff68ae;box-shadow:0 0 0 3px #ff4fa315}input::placeholder{color:#aaa6b0}.split{display:grid;grid-template-columns:1fr 1fr;gap:8px}.split span{position:relative}.split em{position:absolute;right:12px;bottom:13px;color:#a7a4ae;font-size:9px;font-style:normal}.preset-line{display:grid;grid-template-columns:1fr repeat(3,53px);gap:7px}.preset-line button{height:42px;margin-top:8px;border:1px solid #56535f;border-radius:20px;background:transparent;color:#ddd9e2;font-size:10px}.preset-line button.active{border-color:var(--pink);color:white;background:#ff4fa315}.summary{position:sticky;top:18px}.summary>p{font-size:11px;color:#aaa6b2;margin:0}.summary>strong{display:block;font-size:34px;letter-spacing:-1.5px;margin:5px 0 22px}.breakdown{display:grid;gap:13px;padding-bottom:19px;border-bottom:1px solid #4d4a55}.breakdown div{display:grid;grid-template-columns:25px 1fr auto;align-items:center;font-size:11px}.breakdown i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#4b2640;color:#ff79b7;font-style:normal}.breakdown div:nth-child(2) i{background:#4c4628;color:#ffe35c}.breakdown div:nth-child(3) i{background:#284356;color:#75c8f2}.breakdown div:nth-child(4) i{background:#403452;color:#c1a3ef}.breakdown div:nth-child(5) i{background:#205044;color:#5ed8b4}.breakdown div:nth-child(6) i{background:#554328;color:#ffc16f}.breakdown div:nth-child(7) i{background:#245052;color:#6bd6d9}.breakdown span,.totals span{color:#b8b5bf}.totals{display:grid;gap:12px;padding:20px 0}.totals div{display:flex;justify-content:space-between;gap:15px;font-size:11px}.totals .highlight b{color:var(--pink);font-size:19px}.totals div:last-child b{color:var(--green)}.summary small{display:block;color:#a6a3ad;font-size:9px}.negative{color:#ff6c6c!important}footer{color:#77747e;font-size:10px;text-align:center;padding:26px 0 5px}@media(max-width:900px){.layout{grid-template-columns:1fr}.summary{position:static;order:-1}.page-head{align-items:flex-start;flex-direction:column}.summary>strong{font-size:30px}}@media(max-width:600px){.app-shell{width:min(100% - 22px,1380px);padding-top:14px}.fields{grid-template-columns:1fr}.fields .full{grid-column:auto}.panel{padding:17px;border-radius:15px}.page-head h1{font-size:23px}.preset-line{grid-template-columns:1fr repeat(3,46px)}input,select{height:46px}}
