@font-face{font-family:Vela Sans;src:url(/rocketwash/fonts/VelaSans-Regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Vela Sans;src:url(/rocketwash/fonts/VelaSans-Medium.woff)format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Vela Sans;src:url(/rocketwash/fonts/VelaSans-SemiBold.woff)format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Vela Sans;src:url(/rocketwash/fonts/VelaSans-Bold.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--app-bg:#f7f6fc;--ink:#16161a;--ink-2:#5c5966;--ink-3:#8a8797;--ink-muted:#a9a3bd;--lav:#896bfa;--lav-dark:#6d4ef0;--lav-light:#b9addf;--lav-fill:#896bfa24;--lav-row:#f1efff99;--lav-row-soft:#f1efff8c;--lav-hover:#896bfa0a;--glass-strong:#ffffffed;--ok-ink:#1e7a46;--ok-bg:#ddf3e6;--err-ink:#c0392b;--err-bg:#fdeaea;--warn-ink:#8a5a12;--warn-bg:#fdf5e7;--warn-line:#f0d9ab;--banner:linear-gradient(115deg, #f1efff 0%, #e0d9fc 100%)}*{box-sizing:border-box}body{background:var(--app-bg);color:var(--ink);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0;font-family:Vela Sans,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}.shell{min-height:100vh;display:flex}.canvas{flex:1;min-width:0;position:relative;overflow:hidden}.canvas__wave{pointer-events:none;max-width:none;position:absolute}.canvas__wave--showcase{opacity:.45;width:600px;top:-180px;right:-160px}.canvas__wave--inner{opacity:.42;width:580px;top:-195px;right:-150px}.content{flex-direction:column;gap:16px;padding:22px 26px 30px;display:flex;position:relative}.content--tight{gap:14px}.columns{align-items:start;gap:16px;min-width:0;display:grid}.columns--296{grid-template-columns:1fr 296px}.columns--300{grid-template-columns:1fr 300px}.columns--320{grid-template-columns:1fr 320px}.col-main{flex-direction:column;gap:8px;min-width:0;display:flex}.col-main--gap10{gap:10px}.col-side{flex-direction:column;gap:12px;display:flex}.sidebar{background:var(--glass-strong);-webkit-backdrop-filter:blur(20px);border-right:1px solid #896bfa24;flex-direction:column;flex:none;gap:20px;width:240px;padding:22px 14px;display:flex}.sidebar__logo{width:auto;height:26px;margin:0 10px;display:block}.sidebar__who{flex-direction:column;gap:2px;margin:0 10px;display:flex}.sidebar__role{color:var(--lav-dark);font-size:12.5px;font-weight:500}.sidebar__name{letter-spacing:-.01em;font-size:19px;font-weight:700}.sidebar__since{color:var(--ink-3);font-size:12px}.nav{flex-direction:column;gap:2px;display:flex}.nav__item{color:var(--ink-2);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:999px;align-items:center;gap:11px;width:100%;padding:9.5px 13px;font-family:inherit;font-size:14px;text-decoration:none;display:flex}.nav__item:hover{background:var(--lav-hover)}.nav__item--active{background:var(--lav-fill);color:var(--lav-dark);font-weight:600}.nav__marker{background:var(--lav-light);flex:none;width:8px;height:8px}.nav__item--active .nav__marker{background:var(--lav-dark)}.nav__marker--square{border-radius:2px}.nav__marker--round{border-radius:999px}.sidebar__foot{border-top:1px solid #eceafc;margin-top:auto;padding-top:14px}.sidebar__foot .nav__item{padding:0 13px}.panel{-webkit-backdrop-filter:blur(20px);background:#ffffffb8;border:1px solid #ffffffd9;border-radius:22px;flex-direction:column;gap:12px;padding:18px 20px;display:flex;box-shadow:0 6px 20px #896bfa14}.panel--gap10{gap:10px}.panel--gap8{gap:8px}.panel--plain{gap:0;padding:18px 20px}.panel--table{background:#ffffff9e;border:1px solid #fffc;border-radius:24px;gap:0;padding:0;overflow:hidden;box-shadow:0 8px 28px #896bfa1a}.pagehead{-webkit-backdrop-filter:blur(16px);background:#ffffff73;border:1px solid #ffffffb3;border-radius:999px;align-items:center;gap:14px;padding:10px 12px 10px 24px;display:flex;box-shadow:0 4px 24px #896bfa1f}.pagehead--back{padding-left:20px}.pagehead__title{font-size:15px;font-weight:700}.pagehead__note{color:var(--ink-3);font-size:12.5px}.pagehead__formula{margin-left:auto;font-size:13.5px;font-weight:600}.pagehead__right{align-items:center;gap:8px;margin-left:auto;display:flex}.picker{cursor:pointer;color:var(--ink);background:#ffffffe6;border:1px solid #896bfa33;border-radius:999px;align-items:center;gap:8px;padding:7px 16px;font-family:inherit;display:flex}.picker__name{font-size:15px;font-weight:700}.picker__caret{color:var(--ink-3);font-size:11px}.picker__menu{z-index:20;background:#fff;border:1px solid #896bfa33;border-radius:16px;flex-direction:column;min-width:260px;margin-top:6px;padding:6px;display:flex;position:absolute;box-shadow:0 8px 28px #896bfa2e}.picker__option{text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 12px;font-family:inherit;font-size:13.5px}.picker__option:hover{background:var(--lav-row)}.picker__wrap{position:relative}.banner{background:var(--banner);border-radius:26px;padding:22px 24px;position:relative;overflow:hidden}.banner__wave{opacity:.6;pointer-events:none;width:280px;max-width:none;position:absolute;bottom:-90px;right:-70px}.banner__inner{flex-direction:column;gap:16px;display:flex;position:relative}.banner__inner--gap14{gap:14px}.banner__head{flex-direction:column;gap:3px;display:flex}.banner__label{color:var(--ink-2);font-size:12.5px}.banner__sum{font-size:34px;font-weight:700;line-height:1.05}.banner__big{font-size:26px;font-weight:700;line-height:1.1}.banner__note{color:var(--ink-3);font-size:12px}.banner__grid{flex-wrap:wrap;gap:26px;display:flex}.banner__grid--24{gap:24px}.metric{flex-direction:column;gap:2px;display:flex}.metric--tight{gap:1px}.metric__label{color:var(--ink-2);font-size:11.5px}.metric__value{font-size:19px;font-weight:700}.metric__value--20{font-size:20px}.metric__value--cancelled{color:var(--err-ink)}.rowcard{-webkit-backdrop-filter:blur(20px);text-align:left;width:100%;color:inherit;cursor:pointer;background:#ffffffb8;border:1px solid #ffffffd9;border-radius:18px;grid-template-columns:1.3fr .8fr .7fr .9fr .9fr;align-items:center;gap:14px;padding:14px 20px;font-family:inherit;display:grid;box-shadow:0 6px 20px #896bfa14}.rowcard:hover{background:#ffffffe6}.rowcard--dead,.rowcard--dead:hover{box-shadow:none;color:var(--ink-muted);cursor:default;background:#ffffff73;border:1px solid #896bfa1f}.rowcard__id{flex-direction:column;gap:2px;display:flex}.rowcard__id--dead{gap:3px}.rowcard__name{font-size:14.5px;font-weight:600}.rowcard__since{color:var(--ink-3);font-size:11.5px}.cell{text-align:right;flex-direction:column;gap:2px;display:flex}.cell__label{color:var(--ink-3);font-size:11px}.cell__value{font-size:16px;font-weight:600}.cell__value--cancelled{color:var(--err-ink)}.cell__value--money{color:var(--lav-dark);font-size:17px;font-weight:700}.rowcard--dead .cell__value,.rowcard--dead .cell__value--cancelled,.rowcard--dead .cell__value--money{color:inherit;font-weight:400}.thead{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);grid-template-columns:1.5fr 1fr .9fr 1fr 1fr;gap:14px;padding:15px 24px;font-size:11.5px;font-weight:600;display:grid}.trow{border-top:1px solid #896bfa0f;grid-template-columns:.5fr 1.4fr .9fr .45fr 1fr .95fr .85fr .75fr .45fr;align-items:center;gap:14px;padding:11px 22px;font-size:13.5px;display:grid}.trow--head{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);border-top:0;padding-top:9px;padding-bottom:9px;font-size:11px;font-weight:600}.group{background:var(--lav-row);width:100%;color:var(--ink);cursor:pointer;text-align:left;border:0;align-items:center;gap:12px;padding:14px 22px;font-family:inherit;font-size:14px;display:flex}.group__name{font-weight:700}.group__count{color:var(--ink-2);margin-left:auto;font-size:13px}.group__caret{color:var(--lav-dark);font-size:11px}.daycard{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:#fff9;border:1px solid #ffffffd9;border-radius:18px;align-items:center;gap:12px;padding:14px 22px;font-family:inherit;font-size:14px;display:flex;box-shadow:0 6px 20px #896bfa0f}.daycard__caret{color:var(--ink-3);font-size:11px}.daycard__name{font-weight:600}.phone{color:var(--ink-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.right{text-align:right}.muted{color:var(--ink-muted)}.strong{font-weight:600}.mrow{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-top:1px solid #896bfa1a;grid-template-columns:1.5fr 1fr .9fr 1fr 1fr;align-items:center;gap:14px;padding:14px 24px;font-family:inherit;font-size:14px;display:grid}.mrow--open{background:var(--lav-row-soft);border-top-color:#896bfa24}.mrow__name{align-items:center;gap:10px;display:flex}.mrow__caret{color:var(--ink-3);font-size:11px}.mrow--open .mrow__caret{color:var(--lav-dark)}.subrow{color:var(--ink-2);border-top:1px solid #896bfa0d;grid-template-columns:1.5fr 1fr .9fr 1fr 1fr;align-items:center;gap:14px;padding:10px 24px 10px 48px;font-size:13px;display:grid}.subrow__sum{color:var(--ink);font-weight:600}.badge{white-space:nowrap;border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:600;display:inline-block}.badge--ok{color:var(--ok-ink);background:var(--ok-bg)}.badge--err{color:var(--err-ink);background:var(--err-bg)}.badge--warn{color:var(--warn-ink);background:var(--warn-bg);border:1px solid var(--warn-line)}.badge--crm{color:var(--lav-dark);background:#896bfa1f;font-size:11px}.badge--dead{color:var(--warn-ink);background:var(--warn-bg);border:1px solid var(--warn-line);align-self:flex-start;padding:2px 8px;font-size:10.5px}.phase{align-items:center;gap:10px;padding:0 4px;display:flex}.phase__tag{letter-spacing:.04em;text-transform:uppercase;color:var(--lav-dark);background:#896bfa1f;border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:700}.phase__note{color:var(--ink-3);font-size:12.5px}.chip{color:var(--ink-2);cursor:pointer;background:0 0;border:1px solid #896bfa2e;border-radius:999px;padding:7px 14px;font-family:inherit;font-size:12.5px}.chip--on{background:var(--lav);border-color:var(--lav);color:#fff;font-weight:600}.chip--pick{color:var(--lav-dark)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips__month{color:var(--ink);background:#fffc;border:1px solid #896bfa2e;border-radius:12px;margin-top:4px;padding:6px 12px;font-family:inherit;font-size:12.5px}.segmented{background:#ffffffb3;border:1px solid #896bfa2e;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.segmented button{color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 16px;font-family:inherit;font-size:12.5px}.segmented button[aria-pressed=true]{background:var(--lav);color:#fff;font-weight:600}.section-title{font-size:13px;font-weight:700}.kv{justify-content:space-between;gap:12px;font-size:13px;display:flex}.kv__k{color:var(--ink-2)}.kv__v{font-weight:600}.kv__v--cancelled{color:var(--err-ink)}.kv--total{align-items:baseline}.divider{background:#896bfa38;height:1px}.bar{background:var(--lav-fill);border-radius:999px;height:8px;overflow:hidden}.bar__fill{background:linear-gradient(135deg,#a18bff,#7857f5);border-radius:999px;height:100%}.hint{color:var(--ink-2);font-size:12.5px;line-height:1.6}.hint--small{color:var(--ink-3);font-size:11.5px;line-height:1.55}.hint--tall{line-height:1.65}.hint p{margin:0}.hint p+p{margin-top:8px}.linkback{color:var(--lav-dark);font-size:12.5px;text-decoration:none}.linkback:hover{text-decoration:underline}.state{text-align:center;color:var(--ink-3);padding:40px 24px;font-size:13.5px}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login__card{-webkit-backdrop-filter:blur(20px);background:#ffffffb8;border:1px solid #ffffffd9;border-radius:24px;width:100%;max-width:380px;padding:28px;box-shadow:0 8px 28px #896bfa1a}.login__title{letter-spacing:-.01em;margin:0 0 4px;font-size:19px;font-weight:700}.login__sub{color:var(--ink-3);margin:0 0 20px;font-size:12.5px}.field{margin-bottom:14px;display:block}.field__label{color:var(--ink-2);margin-bottom:6px;font-size:12px;display:block}.field input{width:100%;color:var(--ink);background:#fffc;border:1px solid #896bfa2e;border-radius:12px;padding:10px 14px;font-family:inherit;font-size:14px}.field input:focus{outline:2px solid var(--lav);outline-offset:1px}.field__withbtn{position:relative}.field__withbtn input{padding-right:92px}.field__peek{color:var(--lav-dark);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:6px 10px;font-family:inherit;font-size:12.5px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.field__peek:hover{background:#896bfa1a}.field__peek:focus-visible{outline:2px solid var(--lav);outline-offset:1px}.btn{background:var(--lav);color:#fff;cursor:pointer;border:0;border-radius:999px;width:100%;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:600}.btn:disabled{opacity:.6;cursor:default}.error{color:var(--err-ink);background:var(--err-bg);border-radius:12px;margin-bottom:14px;padding:9px 12px;font-size:12.5px}.btn--compact{width:auto;padding:7px 14px;font-size:13px;text-decoration:none;display:inline-block}.mrow__actions{justify-content:flex-end;padding:0 24px 12px;display:flex}.statement{flex-direction:column;gap:14px;display:flex}.statement__bar{justify-content:space-between;align-items:center;gap:12px;display:flex}.paper{background:#fff;border:1px solid #896bfa29;border-radius:18px;flex-direction:column;gap:18px;max-width:760px;padding:26px 28px;display:flex}.paper__head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.paper__title{color:var(--ink-1);font-size:19px;font-weight:700}.paper__sub{color:var(--ink-2);margin-top:4px;font-size:13px}.paper__stamp{text-transform:uppercase;letter-spacing:.04em;color:#31a862;background:#31a8621f;border-radius:999px;flex:none;padding:5px 12px;font-size:11.5px;font-weight:600}.paper__stamp--draft{color:#9a7212;background:#f6c66a2e}.paper__warn{color:var(--ink-2);background:#f6c66a24;border-radius:12px;margin:0;padding:10px 14px;font-size:13px}.paper__table{border-collapse:collapse;width:100%;font-size:13.5px}.paper__table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);border-bottom:1px solid #896bfa29;padding:0 0 8px;font-size:11.5px;font-weight:600}.paper__table td{border-bottom:1px solid #896bfa12;padding:9px 0}.paper__table tfoot td{border-top:2px solid #896bfa29;border-bottom:0;padding-top:11px;font-weight:700}.paper__table th.right,.paper__table td.right{text-align:right}.paper__none{color:var(--ink-3);padding:16px 0}.paper__how{background:#896bfa0d;border-radius:14px;flex-direction:column;gap:8px;padding:16px 18px;display:flex}.paper__how-title{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);font-size:11.5px;font-weight:600}.paper__foot{color:var(--ink-3);flex-direction:column;gap:6px;font-size:12px;line-height:1.5;display:flex}.paper__foot p{margin:0}@media print{.sidebar,.statement__bar,.canvas__wave{display:none!important}.shell,.canvas,.content{padding:0;display:block;overflow:visible}body{background:#fff}.paper{border:0;border-radius:0;max-width:none;padding:0}}@media (max-width:767px){.shell{display:block}.sidebar{border-bottom:1px solid #896bfa24;border-right:none;flex-flow:wrap;align-items:center;gap:10px 16px;width:auto;padding:12px 14px}.sidebar__logo,.sidebar__who{margin:0}.sidebar__who{flex:auto}.sidebar__since{display:none}.nav{flex-flow:wrap;gap:6px;width:100%}.sidebar__foot{margin:0}.columns,.columns--296,.columns--300,.columns--320{grid-template-columns:1fr}.content{padding:16px 14px 24px}.canvas__wave,.thead,.trow--head{display:none}.rowcard,.trow,.subrow,.mrow{grid-template-columns:1fr 1fr;gap:8px 12px;padding:12px 14px}.rowcard__id,.mrow__name{grid-column:1/-1}.subrow{padding-left:14px}.paper{border-radius:14px;padding:18px 14px}.paper__head{flex-direction:column;gap:10px}.paper__table{display:block;overflow-x:auto}.paper__sides{grid-template-columns:1fr;gap:14px}.mrow__actions{justify-content:stretch;padding:0 14px 12px}.mrow__actions .btn--compact{text-align:center;width:100%}.right{text-align:left}}.paper__sides{border-top:1px solid #896bfa1f;grid-template-columns:1fr 1fr;gap:18px;padding-top:4px;display:grid}.paper__side-title{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin-bottom:6px;font-size:11.5px;font-weight:600}.paper__side-line{color:var(--ink-2);font-size:12.5px;line-height:1.55}.paper__side-gap{color:#9a4b3f;margin-top:6px;font-size:12px;line-height:1.5}.monthbreak{align-items:center;gap:12px;margin:10px 2px 2px;display:flex}.monthbreak__line{background:#896bfa2e;flex:1;height:1px}.monthbreak__label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);white-space:nowrap;font-size:11.5px;font-weight:600}
