:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f4ef;--surface:#fbfcf9;--surface-2:#e8ebe4;--surface-3:#dde2da;--ink:#151a17;--muted:#697169;--line:#d7dcd4;--accent:#c8ff3d;--accent-ink:#172000;--accent-soft:#e8ffc0;--danger:#b63838;--danger-soft:#ffe8e5;--success:#2f7045;--shadow:0 18px 55px #1f282014;--radius-lg:24px;--radius-md:16px;--radius-sm:11px;--sidebar:244px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#090b0a;--surface:#111512;--surface-2:#181d19;--surface-3:#222922;--ink:#f1f5ef;--muted:#99a39a;--line:#2a312b;--accent:#c9ff46;--accent-ink:#111700;--accent-soft:#273512;--danger:#ff8585;--danger-soft:#351c1c;--success:#75d493;--shadow:0 22px 70px #0000004d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#090b0a;--surface:#111512;--surface-2:#181d19;--surface-3:#222922;--ink:#f1f5ef;--muted:#99a39a;--line:#2a312b;--accent:#c9ff46;--accent-ink:#111700;--accent-soft:#273512;--danger:#ff8585;--danger-soft:#351c1c;--success:#75d493;--shadow:0 22px 70px #0000004d}}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{background:radial-gradient(circle at 85% -10%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 31rem), var(--bg);min-height:100vh;color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.055em;max-width:780px;margin-bottom:12px;font-size:clamp(2.15rem,4vw,4.5rem);font-weight:560;line-height:.98}h2{letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(1.35rem,2vw,2rem)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-frame{grid-template-columns:var(--sidebar) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{z-index:20;width:var(--sidebar);border-right:1px solid var(--line);background:color-mix(in srgb, var(--surface) 90%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-direction:column;gap:42px;height:100vh;padding:28px 22px;display:flex;position:fixed}.brand{letter-spacing:-.035em;align-items:center;gap:11px;font-size:1.06rem;font-weight:760;display:inline-flex}.brand-mark{background:var(--accent);width:38px;height:38px;color:var(--accent-ink);border-radius:13px;place-items:center;display:inline-grid;transform:rotate(-4deg)}.side-nav{flex-direction:column;flex:1;gap:8px;display:flex}.nav-link{color:var(--muted);border-radius:13px;align-items:center;gap:13px;padding:12px 14px;font-size:.94rem;font-weight:620;transition:all .15s;display:flex}.nav-link:hover{background:var(--surface-2);color:var(--ink)}.nav-link.active{background:var(--accent);color:var(--accent-ink)}.sidebar-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:18px;display:flex}.icon-button{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;display:inline-grid}.text-button,.text-link{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:.86rem;font-weight:650}.text-link:hover,.text-button:hover{color:var(--ink)}.main-content{grid-column:2;min-width:0}.page{width:min(1240px,100%);min-height:100vh;margin:0 auto;padding:54px clamp(28px,5vw,76px) 80px}.narrow-page{width:min(980px,100%)}.page-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px;display:flex}.page-header p{max-width:610px;color:var(--muted);margin-bottom:0;font-size:1.01rem;line-height:1.6}.eyebrow{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px;font-size:.7rem;font-weight:780;display:block}.button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:10px 17px;font-size:.9rem;font-weight:720;transition:transform .15s,box-shadow .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 25px #00000017}.button:disabled{cursor:not-allowed;opacity:.55}.button.primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.button.danger{border-color:color-mix(in srgb, var(--danger) 35%, var(--line));color:var(--danger)}.button.wide{width:100%}.metric-grid{grid-template-columns:1.45fr repeat(3,1fr);gap:14px;display:grid}.metric-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:195px;box-shadow:var(--shadow);flex-direction:column;justify-content:flex-end;padding:24px;display:flex;position:relative;overflow:hidden}.metric-card:after{border:1px solid var(--line);content:"";border-radius:50%;width:130px;height:130px;position:absolute;top:-50px;right:-50px}.hero-metric{background:var(--ink);color:var(--bg)}.hero-metric:after{border-color:color-mix(in srgb, var(--bg) 18%, transparent)}.metric-icon{background:var(--accent);width:42px;height:42px;color:var(--accent-ink);border-radius:50%;place-items:center;display:grid;position:absolute;top:22px;left:22px}.metric-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:.75rem;font-weight:720}.hero-metric .metric-label{color:color-mix(in srgb, var(--bg) 65%, transparent)}.metric-card strong{letter-spacing:-.06em;font-size:clamp(2rem,3.4vw,3.65rem);font-weight:570;line-height:.94}.metric-unit,.metric-note{color:var(--muted);margin-top:8px;font-size:.76rem}.section-block{margin-top:52px}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:18px;display:flex}.section-heading h2,.section-heading .eyebrow{margin-bottom:0}.section-heading .eyebrow{margin-bottom:7px}.trip-list{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.trip-row{border-bottom:1px solid var(--line);grid-template-columns:62px minmax(180px,1fr) 110px 100px;align-items:center;gap:20px;min-height:86px;padding:15px 24px;transition:background .14s;display:grid}.compact .trip-row{grid-template-columns:44px minmax(180px,1fr) 110px 100px}.trip-row:last-child{border-bottom:0}.trip-row:hover{background:var(--surface-2)}.trip-date{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.trip-date strong{color:var(--ink);font-size:1.25rem}.trip-date small{text-transform:uppercase}.trip-route-mark{background:var(--accent-soft);width:38px;height:38px;color:var(--ink);border-radius:12px;place-items:center;display:grid}.trip-route{flex-direction:column;gap:5px;min-width:0;display:flex}.trip-route strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trip-route small,.trip-distance{color:var(--muted);font-size:.78rem}.trip-distance{text-align:right}.status{width:fit-content;color:var(--muted);align-items:center;gap:7px;font-size:.72rem;font-weight:720;display:inline-flex}.status:before{background:var(--muted);content:"";border-radius:50%;width:7px;height:7px}.status.completed:before{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.empty-state{min-height:280px;color:var(--muted);text-align:center;align-content:center;place-items:center;padding:40px;display:grid}.empty-state h3{color:var(--ink);margin:15px 0 6px}.empty-state p{margin:0}.filters{gap:12px;margin-bottom:18px;display:flex}.filters .search-field{flex:1}label{color:var(--muted);flex-direction:column;gap:8px;font-size:.75rem;font-weight:680;display:flex;position:relative}input,select,textarea{border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--ink);outline:none;transition:border-color .14s,box-shadow .14s}input,select{border-radius:var(--radius-sm);min-height:45px;padding:10px 13px}textarea{resize:vertical;border-radius:var(--radius-sm);min-height:115px;padding:12px 13px}input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb, var(--accent) 65%, var(--ink));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.form-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);padding:clamp(22px,4vw,40px)}fieldset.form-card{border:1px solid var(--line);min-width:0}fieldset.form-card:disabled{opacity:1}fieldset.form-card:disabled input,fieldset.form-card:disabled select,fieldset.form-card:disabled textarea{color:var(--ink);opacity:.72}.editor-section{margin:0 0 18px}.full-field{grid-column:1/-1}.advanced-fields{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.advanced-fields summary{color:var(--muted);cursor:pointer;margin-bottom:18px;font-size:.8rem;font-weight:700}.with-action{align-items:center}.with-action>div{flex:1}.stop-stack{gap:14px;display:grid}.charge-stop{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);padding:20px}.charge-stop header{align-items:center;gap:12px;margin-bottom:21px;display:flex}.charge-stop h3{flex:1;margin:0;font-size:1rem}.stop-number{background:var(--accent);width:35px;height:35px;color:var(--accent-ink);border-radius:12px;place-items:center;display:grid}.danger-text{color:var(--danger)}.empty-stop{border:1px dashed var(--line);border-radius:var(--radius-md);min-height:110px;color:var(--muted);justify-content:center;align-items:center;gap:12px;font-size:.85rem;display:flex}.summary-strip{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin:22px 0;display:grid;overflow:hidden}.summary-strip>div{background:var(--surface);flex-direction:column;gap:7px;min-width:0;padding:18px;display:flex}.summary-strip span{color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:700}.summary-strip strong{font-size:1rem}.sticky-actions{z-index:10;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 91%, transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;gap:10px;padding:12px;display:flex;position:sticky;bottom:18px}.action-spacer{flex:1}.notice.success{color:var(--success)}.loading-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:280px;color:var(--muted);padding:40px}.form-section-heading{align-items:flex-start;gap:17px;margin-bottom:28px;display:flex}.form-section-heading>span{background:var(--accent);width:34px;height:34px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-size:.72rem;font-weight:800;display:grid}.form-section-heading h2{margin-bottom:4px}.form-section-heading p{color:var(--muted);margin-bottom:0;font-size:.85rem}.field-grid{gap:18px;display:grid}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.unit-suffix{z-index:1;color:var(--muted);pointer-events:none;font-size:.7rem;position:absolute;bottom:14px;right:12px}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:30px;padding-top:24px;display:flex}.form-error,.notice.error{color:var(--danger)}.form-success{color:var(--success)}.notice{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);margin:0 0 20px;padding:13px 16px}.notice.error{border-color:color-mix(in srgb, var(--danger) 35%, var(--line));background:var(--danger-soft)}.page-emblem{background:var(--accent);width:66px;height:66px;color:var(--accent-ink);border-radius:22px;flex:none;place-items:center;display:grid;transform:rotate(4deg)}.login-page{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid}.login-theme{z-index:3;position:fixed;top:22px;right:22px}.login-panel{color:#f5f7f2;background:#111512;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(30px,5vw,70px);display:flex;position:relative;overflow:hidden}.login-panel:before{content:"";border:1px solid #ffffff1a;border-radius:50%;width:620px;height:620px;position:absolute;bottom:-220px;right:-260px;box-shadow:0 0 0 90px #ffffff05,0 0 0 180px #ffffff05}.login-brand{z-index:1;position:relative}.login-copy{z-index:1;max-width:670px;position:relative}.login-copy h1{margin-bottom:25px;font-size:clamp(3rem,6vw,6.8rem);font-weight:480}.login-copy p{color:#aab2aa;max-width:530px;font-size:1.08rem;line-height:1.65}.route-art{z-index:1;grid-template-columns:12px 1fr 58px .55fr 12px;align-items:center;height:70px;display:grid;position:relative}.route-line{background:repeating-linear-gradient(90deg,#738073 0 8px,#0000 8px 16px);height:1px}.route-dot{background:var(--accent);border:3px solid #111512;border-radius:50%;outline:1px solid #788078;width:12px;height:12px}.route-bolt{background:var(--accent);width:58px;height:58px;color:var(--accent-ink);border-radius:20px;place-items:center;display:grid;transform:rotate(7deg)}.login-form-wrap{background:var(--bg);place-items:center;padding:clamp(26px,6vw,90px);display:grid}.auth-card{border:1px solid var(--line);background:var(--surface);width:min(420px,100%);box-shadow:var(--shadow);border-radius:28px;padding:clamp(26px,4vw,44px)}.auth-card h2{margin-bottom:9px;font-size:2rem}.auth-card label{margin-top:20px}.auth-card .button{margin-top:26px}.muted{color:var(--muted);line-height:1.55}.mobile-nav,.mobile-actions{display:none}@media (max-width:1080px){.metric-grid{grid-template-columns:repeat(2,1fr)}.login-page{grid-template-columns:1fr 1fr}}@media (max-width:760px){:root{--sidebar:0px}.app-frame{display:block}.sidebar{display:none}.main-content{grid-column:auto}.page{padding:76px 18px 110px}.page-header{flex-direction:column;align-items:flex-start;margin-bottom:30px}.page-header .button{width:100%}.metric-grid{grid-template-columns:1fr 1fr}.metric-card{min-height:160px;padding:19px}.hero-metric{grid-column:1/-1}.trip-row,.compact .trip-row{grid-template-columns:46px minmax(0,1fr) auto;gap:12px;padding:14px}.trip-row .trip-distance{display:none}.trip-row .status{font-size:0}.trip-row .status:before{width:9px;height:9px}.field-grid.two,.field-grid.three{grid-template-columns:1fr}.full-field{grid-column:auto}.summary-strip{grid-template-columns:1fr 1fr}.sticky-actions{border-radius:22px;flex-wrap:wrap;bottom:84px}.sticky-actions .button{flex:1}.sticky-actions .danger{flex:none}.with-action{flex-wrap:wrap;align-items:flex-start}.with-action .button{width:100%;margin-left:51px}.filters{flex-direction:column}.mobile-actions{z-index:31;top:max(12px, env(safe-area-inset-top));border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 91%, transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:999px;gap:8px;padding:6px;display:flex;position:fixed;right:12px}.mobile-nav{z-index:30;right:12px;bottom:max(12px, env(safe-area-inset-bottom));border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 91%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;grid-template-columns:repeat(3,1fr) 52px;align-items:center;padding:7px;display:grid;position:fixed;left:12px;box-shadow:0 13px 45px #0000002e}.mobile-link{min-height:48px;color:var(--muted);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.62rem;font-weight:680;display:flex}.mobile-link.active{color:var(--ink)}.mobile-create{background:var(--accent);width:46px;height:46px;color:var(--accent-ink);border-radius:15px;place-items:center;display:grid}.login-page{display:block}.login-panel{min-height:44vh;padding:26px 22px 32px}.login-copy{margin-top:58px}.login-copy h1{margin-bottom:15px;font-size:3rem}.login-copy p{font-size:.91rem}.route-art{display:none}.login-form-wrap{min-height:56vh;padding:26px 18px 44px}.login-theme{top:18px;right:18px}}
