:root{--bg: #101218;--surface: rgba(255, 255, 255, .045);--line: rgba(255, 255, 255, .1);--text: #f3f5f8;--muted: #9aa3b2;--red: #e23b3b;--font: "Onest", "Segoe UI", sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:#07080c;color:var(--text);font-family:var(--font);font-size:16px;line-height:1.45}button,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus{outline:none}:focus-visible{outline:2px solid #fff;outline-offset:3px}.app{min-height:100%;display:flex;justify-content:center;background:#07080c}.phone{width:min(100%,480px);height:var(--tg-viewport-stable-height, 100dvh);display:flex;flex-direction:column;background:linear-gradient(180deg,#1a1e28,#101218 280px)}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(14px + var(--tg-content-safe-area-inset-top, env(safe-area-inset-top, 0px))) 20px 8px}.brand{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:0;font-size:14px;font-weight:600;letter-spacing:.01em}.mark{width:8px;height:8px;border-radius:2px;background:var(--red)}.top-actions{display:flex;align-items:center;gap:8px}.care-head{display:flex;align-items:center;gap:12px;padding:0 20px 10px}.care-head.is-off .care-link span{color:var(--muted)}.care-link{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:0;background:transparent;padding:0;text-align:left}.care-link b{font-size:13px;font-weight:600}.care-link span{color:var(--muted);font-size:13px}.switch{position:relative;flex:none;width:46px;height:28px;border:1px solid var(--line);border-radius:14px;background:transparent;padding:0}.switch span{position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:9px;background:var(--muted)}.switch.is-on{background:#fff;border-color:#fff}.switch.is-on span{left:22px;background:#14161c}.points{border:1px solid var(--line);background:transparent;border-radius:999px;font-size:13px;padding:6px 10px}.main{flex:1;overflow:auto;padding:8px 20px 24px}.tabs{display:grid;grid-template-columns:repeat(6,1fr);background:#08090ceb;border-top:1px solid var(--line);padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--tg-content-safe-area-inset-bottom, 0px))}.home-links{display:flex;align-items:center;gap:8px;margin-bottom:14px}.invite{flex:1;min-height:40px;border:1px solid var(--line);border-radius:14px;background:transparent;padding:8px 12px;font-size:14px;font-weight:600}.socials{display:flex;align-items:center;gap:8px}.socials a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);border-radius:14px;color:var(--muted);text-decoration:none}.socials svg{width:22px;height:22px}.tab{display:flex;flex-direction:column;align-items:center;gap:4px;border:0;background:transparent;color:var(--muted);font-size:10px;padding:10px 1px 12px}.tab.is-active{color:var(--text)}.history-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.plus{flex:none;width:40px;height:40px;border:1px solid var(--line);border-radius:14px;background:transparent;font-size:26px;line-height:1}.screen h1{margin:0;font-size:34px;font-weight:600;letter-spacing:-.04em;line-height:1}.eyebrow{margin:0;color:var(--muted);font-size:13px}.lede{margin:8px 0 0;color:var(--muted)}.plate{display:inline-block;margin-top:8px;border:1px solid var(--line);border-radius:7px;padding:3px 7px;font-size:12px;letter-spacing:.06em}.hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px;align-items:center}.hero h1{font-size:22px;line-height:1.05}.hero-car{border:0;background:transparent;padding:0;display:block;text-align:left}button.status{border:0;background:transparent;padding:0;text-align:left}.drum-label{margin:22px 0 0;color:var(--muted);font-size:13px}.odo{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px}.odo-reels{position:relative;display:flex;gap:2px}.odo-reels:before{content:"";position:absolute;left:0;right:0;top:40px;height:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);pointer-events:none}.reel{width:34px;height:120px;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;-webkit-mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent);mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent)}.reel::-webkit-scrollbar{display:none}.reel-pad{height:40px}.reel span{height:40px;display:grid;place-items:center;scroll-snap-align:center;font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}.odo-unit{color:var(--muted);font-size:14px}.bumps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.bumps button{border:1px solid var(--line);background:transparent;border-radius:14px;padding:11px 4px;font-weight:600}.choice-stack{display:flex;flex-direction:column;gap:10px;margin-top:22px}.choice-stack .btn{margin-top:0}.model-chips{margin-top:14px}.car-art{width:100%;height:auto;display:block}.palette{margin-top:18px}.palette p{margin:0 0 8px;color:var(--muted);font-size:13px}.swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:2px}.swatch{border:0;background:transparent;padding:6px;border-radius:999px}.swatch span{display:block;width:100%;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff47}.swatch[aria-pressed=true] span{box-shadow:inset 0 0 0 1px #ffffff47,0 0 0 2px #101218,0 0 0 4px #fff}.status{display:flex;align-items:center;gap:8px;margin:16px 0 0;font-size:15px;font-weight:600}.status i{width:8px;height:8px;border-radius:50%;background:#d7dde6}.status-late i{background:var(--red)}.status-soon i{background:#e7b15a}.contact{display:grid;grid-template-columns:64px 64px 1fr;gap:8px;margin-top:12px}.contact a,.contact button{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:12px 8px;color:inherit;text-decoration:none;font-size:15px;font-weight:600;text-align:center}.contact svg{width:22px;height:22px}.contact a{background:var(--red);border-color:transparent;color:#fff}.contact-sto{flex-direction:column;gap:1px;line-height:1.1}.contact-sto span{color:#e7b15a;font-size:12px;font-weight:500}.chat-screen{min-height:100%;display:flex;flex-direction:column}.thread{display:flex;flex-direction:column;gap:8px;margin-top:8px}.bubble{max-width:88%;margin-left:auto;padding:10px 12px;border-radius:16px 16px 4px;background:#e23b3b29;border:1px solid rgba(226,59,59,.35)}.bubble p{margin:0}.bubble span{display:block;margin-top:4px;color:var(--muted);font-size:12px}.composer{display:flex;gap:8px;align-items:flex-end;margin-top:16px}.composer textarea{flex:1;resize:none;border-radius:14px;border:1px solid var(--line);background:var(--surface);padding:10px 12px}.composer button{border:0;border-radius:14px;background:var(--red);color:#fff;font-weight:600;padding:12px 14px}.composer button:disabled{opacity:.45}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.actions button{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:12px 6px;font-size:14px;font-weight:600}.next{margin-top:16px;padding:16px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}.next-overdue{border-color:#e23b3bb3}.next h2{margin:4px 0 0;font-size:22px;font-weight:600;letter-spacing:-.03em}.next p:last-of-type{margin:6px 0 0;color:var(--muted)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;margin-top:14px;border:0;border-radius:14px;background:var(--red);color:#fff;font-weight:600;font-size:16px;padding:14px 16px;text-align:center;text-decoration:none;touch-action:manipulation}.btn.is-pressed{animation:btn-press .34s ease}@keyframes btn-press{0%{transform:scale(1);filter:brightness(1)}35%{transform:scale(.94);filter:brightness(.78)}to{transform:scale(1);filter:brightness(1)}}@media(prefers-reduced-motion:reduce){.btn.is-pressed{animation:none}}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.main:has(.notify){display:flex}.notify{flex:1;display:flex;flex-direction:column;min-height:100%;padding-top:28px}.notify-car{margin:12px 0 36px}.notify-car .car-art{width:min(100%,300px);height:auto}.notify-actions{margin-top:auto;padding-bottom:8px}.notify-actions .btn:first-child{margin-top:0}.notify-car .plate{margin-left:8px}.notify h1{max-width:11ch}.facts{display:grid;grid-template-columns:1fr 1.2fr;gap:12px;margin-top:18px}.car-dots{display:flex;gap:8px;margin-top:12px}.car-dots button{width:28px;height:28px;border:1px solid var(--line);border-radius:14px;background:transparent;color:var(--muted);font-size:13px;font-weight:600}.car-dots button.is-on{background:#fff;color:#14161c;border-color:#fff}.car-pick{margin-top:14px}.facts b,.fact-btn b{display:block;font-size:14px;font-weight:600}.facts span,.fact-btn span{display:block;margin-top:2px;color:var(--muted);font-size:12px}.fact-btn{border:0;background:transparent;padding:0;text-align:left}.spec{margin:14px 0 0;color:var(--muted);font-size:13px}.car-list,.tickets,.jobs{list-style:none;margin:16px 0 0;padding:0}.car-row{width:100%;text-align:left;border:1px solid var(--line);border-radius:20px;background:var(--surface);padding:8px 14px 10px;margin-bottom:10px}.car-open{display:block;width:100%;border:0;background:transparent;padding:0;text-align:left}.car-setup{display:block;margin-top:8px;border:0;background:transparent;padding:4px 0 2px;color:var(--muted);font-size:13px;font-weight:600}.car-row.is-active{border-color:#ffffff73}.car-row .car-art{width:72%;margin-left:-6px}.car-row-top,.car-row-foot,.job-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.car-row-name{font-size:20px;font-weight:600;letter-spacing:-.03em}.car-row-meta,.car-row-foot{display:flex;margin-top:4px;color:var(--muted);font-size:13px}.total{display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 0;padding-bottom:10px;border-bottom:1px solid var(--line)}.total b{font-size:22px;font-weight:600;letter-spacing:-.03em}.ticket{display:grid;grid-template-columns:1fr auto;gap:2px 12px;width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left}.detail{margin:16px 0 0}.detail div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.detail dt{color:var(--muted)}.detail dd{margin:0;font-weight:600}.plain{margin:8px 0 0;padding-left:18px}.plain li+li{margin-top:4px}.cal{margin-top:16px}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.cal-head button{width:36px;height:36px;border:1px solid var(--line);border-radius:14px;background:transparent;font-size:20px}.cal-week,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-week{margin-top:10px;color:var(--muted);font-size:12px;text-align:center}.cal-grid{margin-top:6px}.cal-day{aspect-ratio:1;border:0;border-radius:14px;background:transparent;color:inherit;font-weight:600}.cal-day:disabled{color:#9aa3b259}.cal-day.is-on{background:var(--red);color:#fff}.ticket-date,.ticket-no{color:var(--muted);font-size:12px}.ticket-sum{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-weight:600}.ticket-km{color:var(--muted);font-size:12px;font-weight:500}.ticket-title{font-size:16px}.ticket-note{grid-column:1 / -1;color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.job-bar{width:3px;border-radius:99px;background:var(--line);flex:none}.job-overdue .job-bar,.job-soon .job-bar{background:var(--red)}.job-ok .job-bar{background:#d7dde6}.job-body{flex:1}.job-body h2{margin:0;font-size:16px;font-weight:600}.job-top span,.job-body p{color:var(--muted);font-size:13px}.job-body p{margin:4px 0 0}.text-btn{margin-top:8px;border:0;background:transparent;padding:0;font-weight:600;text-decoration:underline;text-underline-offset:3px}.choice{border:0;margin:18px 0 0;padding:0}.choice legend{padding:0;color:var(--muted);font-size:13px}.pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.pick-grid .chip{margin:0;text-align:center}.year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.year-grid button,.pick-list button{border:1px solid var(--line);border-radius:14px;background:transparent;padding:12px 10px;font-weight:600}.pick-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.pick-list button{text-align:left}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.chip{border:1px solid var(--line);background:transparent;border-radius:999px;padding:10px 14px;font-size:14px}.chip[aria-pressed=true]{background:#fff;color:#14161c;border-color:#fff}.book-picks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.book-pick{min-height:52px;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:10px 12px;font-size:15px;font-weight:600}.book-pick[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}.comment{display:block;margin-top:18px;color:var(--muted);font-size:13px}.comment input,.comment textarea{display:block;width:100%;margin-top:8px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:16px;padding:12px;font:inherit;font-size:16px}.comment textarea{resize:vertical}.confirm{margin-top:16px;padding:16px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}.confirm p{margin:0 0 8px}.confirm p:last-child{margin:0;color:var(--muted)}.saved-note,.empty{color:var(--muted);font-size:13px}.field-error{margin:8px 0 0;color:var(--red);font-size:13px}.back{position:sticky;top:0;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0 0 8px;padding:0;border:1px solid var(--line);border-radius:999px;background:#101218f0;color:var(--text);font-size:20px;line-height:1}.points-value{margin:8px 0 0;font-size:64px;font-weight:600;letter-spacing:-.05em;line-height:.9}.track{height:3px;margin-top:18px;border-radius:99px;background:var(--line);overflow:hidden}.track span{display:block;height:100%;background:var(--red)}.track-label{margin:8px 0 0;color:var(--muted);font-size:12px}.subhead{margin:24px 0 0;font-size:13px;font-weight:500;color:var(--muted)}.car-art path{transition:fill .16s ease}@media(prefers-reduced-motion:reduce){.car-art path{transition:none}}.notes{display:flex;flex-direction:column;gap:8px;padding:8px 20px 0}.note-card{padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.note-card b{display:block}.note-card p{margin:4px 0 0;color:var(--muted);font-size:14px}.note-card button{margin-top:8px;padding:0;border:0;background:transparent;color:#fff}.care-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.care-switch b{display:block;font-size:15px;font-weight:600}.care-switch>div span{display:block;margin-top:2px;color:var(--muted);font-size:13px}.care{margin-top:8px}.care h2{margin:0 0 4px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.care-btn{display:flex;width:100%;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left}.care-btn span{color:var(--muted)}.care-btn b{font-weight:600;text-align:right}.care-btn.tone-late b{color:var(--red)}.care-btn.tone-soon b{color:#e7b15a}.care-btn.tone-none b{color:var(--muted);font-weight:500}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0 8px;padding:0;list-style:none}.steps li{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:12px}.steps i{display:block;height:4px;background:var(--line)}.steps .is-done i,.steps .is-on i{background:var(--red)}.steps .is-on{color:var(--text);font-weight:600}.sto-now{margin:16px 0 6px;font-size:28px;line-height:1.1}.sto-sum{margin:18px 0 8px;font-size:22px}
