:root{--bg:#f5f7f2;--surface:#fff;--ink:#14231c;--ink-soft:#14231c9e;--line:#14231c1f;--bike:#2f5dff;--bench:#ff5a36;--rows:#ffc93c;--pb:#b4ff39;--display:"Archivo Black", system-ui, sans-serif;--body:"Inter", system-ui, sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:16px/1.4 var(--body);-webkit-font-smoothing:antialiased;margin:0}main{max-width:560px;margin:0 auto;padding:0 16px 40px}button{font:inherit;color:inherit;cursor:pointer}.muted{color:var(--ink-soft);margin:4px 0 0}.pad{padding:24px 0}.error{color:#b3261e;font-weight:600}.strip{white-space:nowrap;border-bottom:2px solid var(--ink);align-items:center;gap:8px;margin:0 -16px;padding:14px 16px;font-size:15px;display:flex;overflow:hidden}.strip b{font-family:var(--display);font-size:18px;font-weight:400}.strip .dot{color:var(--ink-soft)}.strip-pb{text-overflow:ellipsis;overflow:hidden}.strip.flash{animation:1.4s ease-out pb-flash}@keyframes pb-flash{0%{background:var(--pb);transform:scale(1)}15%{background:var(--pb);transform:scale(1.03)}45%{background:var(--pb);transform:scale(1)}to{background:0 0}}@media (prefers-reduced-motion:reduce){.strip.flash{background:var(--pb);animation:none}}.badge{background:var(--pb);color:var(--ink);font:400 12px/1 var(--display);vertical-align:2px;border-radius:3px;padding:4px 6px;display:inline-block}.cards{flex-direction:column;gap:16px;margin-top:20px;display:flex}.card{background:var(--surface);border-left:10px solid var(--accent);border-radius:4px;padding:16px 16px 14px}.bike{--accent:var(--bike);--on-accent:#fff}.bench{--accent:var(--bench);--on-accent:var(--ink)}.rows{--accent:var(--rows);--on-accent:var(--ink)}.card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}h2{font:400 24px/1.1 var(--display);margin:0}.log{background:var(--accent);color:var(--on-accent);border:0;border-radius:4px;min-height:44px;padding:10px 16px;font-size:15px;font-weight:700}.hero{font:400 56px/1 var(--display);letter-spacing:-.01em;margin:10px 0 0}.hero small{font:600 18px var(--body);color:var(--ink-soft);margin-left:6px}.hero .scheme{margin-left:16px;font-size:28px}.meta{color:var(--ink-soft);margin:6px 0 0;font-size:14px}.stats{color:var(--ink-soft);flex-wrap:wrap;gap:6px 18px;margin-top:12px;font-size:14px;display:flex}.stat b{font:400 22px var(--display);color:var(--ink)}.bests{border-top:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-top:14px;padding-top:12px;font-size:14px;display:flex}.bests-label{font-weight:700}.best em{color:var(--ink-soft);font-style:normal}.best b{font-family:var(--display);font-weight:400}.pb-line{margin:12px 0 0;font-size:14px;font-weight:600}.pb-line .badge{margin-right:4px}.sheet{background:var(--bg);z-index:10;position:fixed;inset:0;overflow-y:auto}.sheet-body{border-top:10px solid var(--accent);max-width:560px;min-height:100%;margin:0 auto;padding:16px 16px 32px}.sheet-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.text-btn{color:var(--ink-soft);background:0 0;border:0;padding:10px 0 10px 12px;font-weight:600}.fields{grid-template-columns:1fr 1fr;gap:14px 12px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;font-size:14px;font-weight:600;display:flex}.field.wide{grid-column:1/-1}.field em{color:var(--ink-soft);font-style:normal;font-weight:400}.field input{width:100%;min-width:0;font:400 22px var(--display);color:var(--ink);background:var(--surface);border:2px solid var(--line);appearance:none;border-radius:4px;min-height:52px;padding:10px 12px}.field input[type=text],.field input[type=date]{font:500 17px var(--body)}.field input:focus{border-color:var(--accent);outline:none}.toggle{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;display:grid}.toggle-opt{border:2px solid var(--line);background:var(--surface);min-height:52px;font:400 20px var(--display);border-radius:4px}.toggle-opt.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.submit{background:var(--accent);width:100%;min-height:56px;color:var(--on-accent);font:400 20px var(--display);border:0;border-radius:4px;margin-top:24px}.submit:disabled{opacity:.6}.login{padding-top:22vh}.login h1{font:400 56px/1 var(--display);margin:0}.login-btn{background:var(--ink);width:100%;min-height:56px;color:var(--bg);font:400 18px var(--display);border:0;border-radius:4px;margin-top:28px}.login-btn:disabled{opacity:.6}.signout{margin:28px auto 0;padding:10px;display:block}
