:root{--ink:#14252c;--muted:#66757b;--line:#dfe6e5;--paper:#f6f8f7;--card:#fff;--accent:#0e514d;--accent2:#dbeceb;--danger:#9b3d34;--ok:#22644e;--shadow:0 16px 40px rgba(14,40,44,.08)}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}button,input{font:inherit}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:34px;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:2px solid var(--accent);border-radius:10px;color:var(--accent);font-size:24px}.main-nav{display:flex;gap:8px;margin:auto}.main-nav a{padding:12px 18px;border-radius:12px;color:#36464c}.main-nav a.active,.main-nav a:hover{background:#eef3f2;color:var(--accent)}.admin-link{font-size:14px;color:var(--muted)}.app-layout{display:grid;grid-template-columns:370px 1fr;min-height:620px}.planner-panel{background:#fff;border-right:1px solid var(--line);padding:34px;position:relative;z-index:2}.planner-panel h1{font-size:36px;line-height:1.05;margin:10px 0 14px;letter-spacing:-.03em}.muted{color:var(--muted);line-height:1.6}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--accent)}.field{border:1px solid var(--line);border-radius:14px;padding:13px 15px;margin-top:12px;background:#fbfcfc}.field span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.field strong{font-size:16px}.mode-row{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0}.pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 13px;cursor:pointer}.pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.foundation-card{margin-top:28px;padding:20px;border-radius:18px;background:linear-gradient(145deg,#0c4744,#15373a);color:#fff;display:flex;flex-direction:column;gap:8px}.foundation-card span{color:#d6e7e6}.foundation-card small{color:#9ec2bf}.map-stage{position:relative;min-width:0}.map-stage #map{position:absolute;inset:0}.map-badge{position:absolute;left:28px;bottom:28px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.7);border-radius:16px;padding:13px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column}.map-badge span{font-size:12px;color:var(--muted);margin-top:2px}.home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:26px 28px}.home-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.home-grid article>span{font-size:12px;color:var(--accent);font-weight:800}.home-grid h2{margin:10px 0 6px}.home-grid p{margin:0;color:var(--muted)}.site-footer{display:flex;justify-content:space-between;padding:22px 28px;color:var(--muted);font-size:13px}.installer-body,.admin-body{min-height:100vh;background:radial-gradient(circle at top left,#e8f0ef 0,transparent 38%),var(--paper)}.installer-shell,.login-shell{max-width:820px;margin:0 auto;padding:48px 24px}.brand-lockup{display:flex;gap:12px;align-items:center;margin-bottom:34px}.brand-lockup>div:last-child{display:flex;flex-direction:column}.brand-lockup small{color:var(--muted);margin-top:3px}.install-card,.login-card,.admin-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.install-card h1,.login-card h1{font-size:32px;margin:10px 0}.checks{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.check{padding:8px 10px;border-radius:999px;background:#eef2f1;font-size:12px}.check.ok{color:var(--ok)}.check.bad{color:var(--danger)}.install-form,.login-card{display:flex;flex-direction:column;gap:14px}.install-form label,.login-card label{font-size:13px;font-weight:700}.install-form input,.login-card input,.update-form input[type=file]{width:100%;margin-top:7px;border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:#fff}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:700}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.large{padding:14px 18px}.install-actions{display:flex;gap:10px;margin-top:20px}.alert{border-radius:12px;padding:12px 14px;margin:14px 0}.alert.error{background:#faece9;color:var(--danger)}.alert.ok{background:#e8f3ed;color:var(--ok)}.login-shell{max-width:500px}.admin-shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.admin-side{background:#13292c;color:#e8f2f1;padding:24px;display:flex;flex-direction:column;gap:12px}.admin-side .brand{color:#fff;margin-bottom:4px}.admin-side>small{font-size:10px;letter-spacing:.16em;color:#8fb2af}.admin-side nav{display:flex;flex-direction:column;gap:5px;margin-top:28px}.admin-side nav a{padding:11px 12px;border-radius:10px;color:#bdd1cf}.admin-side nav a.active,.admin-side nav a:hover{background:#214043;color:#fff}.admin-side-footer{margin-top:auto;display:flex;justify-content:space-between;font-size:12px;color:#91aaa8}.admin-main{padding:34px;min-width:0}.admin-main>header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.admin-main h1{margin:7px 0 0;font-size:30px}.admin-user{font-size:13px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.stats>div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column}.stats span{font-size:12px;color:var(--muted)}.stats strong{font-size:27px;margin-top:8px}.admin-card{margin-bottom:16px}.card-heading{display:flex;justify-content:space-between;align-items:center}.admin-card h2{margin:7px 0 14px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.module-grid article{border:1px solid var(--line);border-radius:14px;padding:16px}.module-grid article>span{font-size:10px;color:var(--muted);letter-spacing:.08em}.module-grid h3{margin:7px 0 18px}.module-grid article>div{display:flex;justify-content:space-between;align-items:center}.status{font-style:normal;font-size:11px;padding:5px 8px;border-radius:999px;background:#eef2f1}.status.enabled{background:#e7f4ed;color:var(--ok)}.status.shell{color:#65757b}.update-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.update-form input[type=file]{max-width:520px}.table>div{display:grid;grid-template-columns:1fr 120px 170px;gap:10px;border-top:1px solid var(--line);padding:12px 0;align-items:center}.table small{color:var(--muted)}@media(max-width:900px){.topbar{height:auto;padding:14px 18px;flex-wrap:wrap}.main-nav{order:3;width:100%;justify-content:space-between}.main-nav a{padding:9px}.admin-link{margin-left:auto}.app-layout{grid-template-columns:1fr;min-height:auto}.planner-panel{border-right:0;border-bottom:1px solid var(--line);padding:24px}.planner-panel h1{font-size:30px}.map-stage{height:520px}.home-grid{grid-template-columns:1fr;padding:18px}.admin-shell{grid-template-columns:1fr}.admin-side{position:relative}.admin-side nav{flex-direction:row;flex-wrap:wrap;margin-top:8px}.admin-side-footer{margin-top:10px}.admin-main{padding:22px}.stats,.module-grid{grid-template-columns:1fr}.grid.two{grid-template-columns:1fr}.table>div{grid-template-columns:1fr}.site-footer{padding:18px;flex-direction:column;gap:5px}}@media(max-width:520px){.main-nav a{font-size:13px}.admin-link{display:none}.map-stage{height:430px}.planner-panel h1{font-size:27px}.installer-shell,.login-shell{padding:24px 14px}.install-card,.login-card,.admin-card{padding:20px}.install-actions{flex-direction:column}}
.route-form{position:relative}.route-field{display:block}.route-field input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-weight:750;font-size:16px;padding:0}.swap-btn{position:absolute;right:10px;top:58px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--accent);cursor:pointer;z-index:1}.mode-row .pill small{font-size:9px;opacity:.72}.route-submit{width:100%;margin-top:2px}.route-status{margin:14px 0 0;padding:10px 12px;border-radius:12px;background:#eef2f1;color:var(--muted);font-size:12px}.route-status.ok{background:#e7f4ed;color:var(--ok)}.route-status.error{background:#faece9;color:var(--danger)}.route-status.loading{background:#eef5f4;color:var(--accent)}.route-result{margin-top:12px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px}.route-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.route-result-head>div:first-child{display:flex;flex-direction:column}.route-result-head>div:first-child strong{font-size:30px;line-height:1;margin-top:8px}.route-result-head small{color:var(--muted);margin-top:5px}.route-metric{text-align:right;display:flex;flex-direction:column}.route-metric span{font-size:11px;color:var(--muted)}.route-metric strong{font-size:19px;margin-top:5px}.route-note{font-size:12px;margin:14px 0}.route-places{display:flex;gap:8px;align-items:center;font-size:12px;border-top:1px solid var(--line);padding-top:12px}.route-places span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-places i{font-style:normal;color:var(--accent)}.foundation-card.compact{margin-top:14px;padding:16px}.route-submit:disabled{opacity:.65;cursor:wait}@media(max-width:900px){.route-result-head>div:first-child strong{font-size:27px}}

/* V0.3 Discover & Route Studio */
.discover-section{padding:34px 28px 38px;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.discover-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.discover-head h2{font-size:32px;letter-spacing:-.03em;margin:7px 0 6px}.discover-head p{margin:0;color:var(--muted)}
.discover-categories{display:flex;gap:8px;overflow:auto;padding:4px 0 12px;scrollbar-width:thin}.discover-chip{flex:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;cursor:pointer;color:#32444a}.discover-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.discover-chip:hover{border-color:#b9cbca}
.discover-status{min-height:22px;font-size:12px;color:var(--muted);margin:2px 0 10px}.discover-status.loading{color:var(--accent)}.discover-status.ok{color:var(--ok)}.discover-status.error{color:var(--danger)}
.discover-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.discover-card{min-width:0;border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.discover-card:hover,.discover-card:focus-visible{transform:translateY(-2px);border-color:#bacbc9;box-shadow:var(--shadow);outline:none}.discover-cover{height:132px;background:linear-gradient(145deg,#d8e8e5,#eef3ef);background-size:cover;background-position:center;display:flex;align-items:flex-start;justify-content:space-between;padding:12px}.discover-cover span,.discover-cover em{background:rgba(255,255,255,.9);backdrop-filter:blur(8px);padding:6px 8px;border-radius:999px;font-size:10px;font-style:normal;font-weight:800;color:var(--ink)}.discover-cover em{background:#143f3c;color:#fff}.discover-card-body{padding:15px}.discover-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.discover-tags span{font-size:9px;letter-spacing:.05em;text-transform:uppercase;background:#eef3f2;color:var(--accent);padding:5px 7px;border-radius:999px;font-weight:800}.discover-card h3{margin:0 0 7px;font-size:18px;letter-spacing:-.02em}.discover-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;min-height:38px}.discover-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:13px;padding-top:11px;font-size:11px;color:var(--muted)}.discover-meta strong{color:var(--ink);font-size:12px}.discover-empty{grid-column:1/-1;border:1px dashed #cfdcda;border-radius:18px;padding:28px;background:#fbfcfc}.discover-empty h3{margin:8px 0 6px}.discover-empty p{margin:0;color:var(--muted)}
.empty-state{border:1px dashed #cfdcda;border-radius:16px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:#fbfcfc}.empty-state span{color:var(--muted);font-size:13px}.empty-state .btn{margin-top:6px}
.route-admin-list{display:flex;flex-direction:column;gap:10px;margin-top:18px}.route-admin-list>article{border:1px solid var(--line);border-radius:16px;padding:16px}.route-admin-main{display:flex;justify-content:space-between;gap:18px}.route-admin-title{min-width:0}.route-admin-title .status{margin-right:5px}.route-admin-title h3{margin:8px 0 4px}.route-admin-title p{margin:0;color:var(--muted);font-size:12px}.route-admin-metrics{text-align:right;display:flex;flex-direction:column;flex:none}.route-admin-metrics strong{font-size:18px}.route-admin-metrics span{font-size:11px;color:var(--muted);margin-top:3px}.route-admin-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.route-admin-tags span{font-size:10px;padding:5px 7px;border-radius:999px;background:#eef3f2;color:var(--accent)}.route-admin-actions{display:flex;gap:8px;margin-top:13px}.route-admin-actions form{margin:0}.btn.danger{color:var(--danger);border-color:#eed2cd;background:#fff}.btn.danger:hover{background:#faece9}
.category-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.category-admin-grid article{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:5px}.category-admin-grid span{font-size:12px;color:var(--muted);line-height:1.4}
.route-studio-form{display:flex;flex-direction:column;gap:14px}.route-studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.route-studio-grid .admin-card{margin:0}.install-form textarea,.install-form select,.route-studio-form textarea,.route-studio-form select{width:100%;margin-top:7px;border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit}.route-studio-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border:1px solid var(--line);background:#fbfcfc;border-radius:14px;padding:12px}.route-studio-summary strong,.route-studio-summary span{text-align:center}.route-studio-summary span{font-size:12px;color:var(--muted)}.compact-note{font-size:12px;margin:0}.category-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.category-check{border:1px solid var(--line);border-radius:13px;padding:10px;display:flex;gap:9px;align-items:flex-start;cursor:pointer}.category-check input{margin-top:3px}.category-check span{display:flex;flex-direction:column;gap:3px}.category-check small{color:var(--muted);font-weight:400;line-height:1.35}.studio-selects{margin-top:14px}.studio-selects label{font-size:13px;font-weight:700}.form-check-row{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:13px;font-weight:700}.studio-actions{display:flex;justify-content:space-between;gap:10px;align-items:center}.studio-actions .btn.primary{min-width:240px}
@media(max-width:1100px){.discover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-studio-grid{grid-template-columns:1fr}.category-admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.discover-section{padding:24px 18px}.discover-head{align-items:flex-start;flex-direction:column}.discover-head h2{font-size:27px}.discover-grid{grid-template-columns:1fr}.discover-cover{height:160px}.category-admin-grid,.category-check-grid{grid-template-columns:1fr}.route-admin-main{flex-direction:column}.route-admin-metrics{text-align:left}.studio-actions{flex-direction:column-reverse;align-items:stretch}.studio-actions .btn.primary{min-width:0}.route-studio-summary{grid-template-columns:1fr}.discover-categories{margin-right:-18px;padding-right:18px}}

/* V0.4 Garage */
.top-actions{display:flex;align-items:center;gap:10px}.account-link{font-size:13px;color:var(--ink);text-decoration:none;padding:9px 11px;border-radius:999px;border:1px solid var(--line);background:#fff;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.garage-section{padding:38px 28px 44px;background:linear-gradient(180deg,#f8faf9 0%,#f2f6f5 100%);border-bottom:1px solid var(--line)}.garage-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.garage-section-head h2{font-size:34px;letter-spacing:-.035em;margin:7px 0 6px}.garage-section-head p{margin:0;color:var(--muted);max-width:720px}.garage-alert{max-width:820px;margin:0 0 16px}
.garage-locked,.garage-empty{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:20px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:22px;padding:26px}.garage-locked-visual,.garage-bike-stage{min-width:0;background:radial-gradient(circle at 50% 30%,#fff,#edf3f1);border-radius:18px;padding:12px;overflow:hidden}.garage-locked img,.garage-bike-stage img{display:block;width:100%;height:auto;max-height:360px}.garage-locked h3,.garage-empty h3{font-size:28px;letter-spacing:-.03em;margin:8px 0}.garage-locked p{color:var(--muted);line-height:1.65}
.garage-bike-form{display:flex;flex-direction:column;gap:12px}.garage-bike-form label{font-size:12px;font-weight:750;color:var(--ink)}.garage-bike-form input,.garage-bike-form select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:#fff;color:var(--ink);font:inherit}.garage-bike-form.compact{margin-top:14px}.garage-edit{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.garage-edit summary{cursor:pointer;font-weight:800;font-size:12px;color:var(--accent)}
.garage-dashboard{display:grid;grid-template-columns:260px minmax(0,1fr) 320px;gap:14px}.garage-identity,.garage-main-card,.garage-equipment,.garage-readiness,.garage-future{border:1px solid var(--line);background:#fff;border-radius:20px}.garage-identity{padding:20px;min-width:0}.garage-identity h3{font-size:22px;line-height:1.15;margin:8px 0 3px;letter-spacing:-.025em}.garage-nickname{margin:0 0 12px;color:var(--muted);font-style:italic}.garage-badges{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.garage-badges span{font-size:10px;background:#eef3f2;color:var(--accent);padding:6px 8px;border-radius:999px;font-weight:800}.garage-spec-list{margin:16px 0 0}.garage-spec-list>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:11px 0}.garage-spec-list dt{font-size:11px;color:var(--muted)}.garage-spec-list dd{margin:0;font-size:12px;font-weight:800;text-align:right}
.garage-main-card{padding:14px;min-width:0}.garage-loadouts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.garage-loadouts button{border:1px solid var(--line);background:#f8faf9;border-radius:13px;padding:11px 9px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--ink)}.garage-loadouts button.active{background:var(--accent);border-color:var(--accent);color:#fff}.garage-loadouts small{font-size:9px;opacity:.76}.garage-bike-hero{position:relative;min-height:330px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,#fff 0%,#f3f7f6 70%,#edf2f1 100%);border-radius:17px;margin-top:10px;overflow:hidden}.garage-bike-hero img{width:min(92%,760px);height:auto;display:block}.garage-hero-caption{position:absolute;left:18px;bottom:17px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.75);border-radius:12px;padding:9px 11px;display:flex;flex-direction:column}.garage-hero-caption span{font-size:8px;letter-spacing:.12em;color:var(--muted);font-weight:900}.garage-hero-caption strong{font-size:12px;margin-top:2px}.garage-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:14px;margin-top:10px;overflow:hidden}.garage-metrics>div{padding:11px;border-right:1px solid var(--line);text-align:center}.garage-metrics>div:last-child{border-right:0}.garage-metrics span{display:block;font-size:9px;color:var(--muted)}.garage-metrics strong{display:block;font-size:12px;margin-top:3px}
.garage-equipment{padding:18px;min-width:0}.garage-panel-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.garage-panel-title h3{margin:5px 0 0}.garage-panel-title>small{font-size:9px;color:var(--muted)}.garage-equipment-list{display:flex;flex-direction:column}.garage-equipment-row{border:0;border-top:1px solid var(--line);background:transparent;padding:10px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left;color:var(--ink)}.garage-equipment-row:first-child{border-top:0}.garage-equipment-row:disabled{opacity:.55;cursor:wait}.garage-equipment-row>span{display:flex;flex-direction:column;min-width:0}.garage-equipment-row strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.garage-equipment-row small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:2px}.equipment-status{font-style:normal;font-size:9px;border-radius:999px;padding:5px 7px;flex:none;font-weight:850}.equipment-status.have{background:#e7f4ed;color:var(--ok)}.equipment-status.missing{background:#faece9;color:var(--danger)}.equipment-status.optional{background:#eef2f1;color:#65757b}
.garage-readiness{grid-column:1 / span 2;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:20px;align-items:center}.readiness-score{display:flex;align-items:center;gap:16px}.readiness-score h3{margin:5px 0 4px}.readiness-score p{margin:0;color:var(--muted);font-size:12px}.readiness-ring{--score:0;flex:none;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--score)*1%),#e3e9e7 0);position:relative}.readiness-ring::after{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}.readiness-ring span{position:relative;z-index:1;font-size:17px;font-weight:900}.readiness-missing>strong{font-size:12px}.readiness-missing>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.readiness-missing span{font-size:10px;border:1px solid var(--line);border-radius:999px;padding:6px 8px}.readiness-missing b{font-size:8px;color:var(--danger);margin-left:4px}.ready-all{background:#e7f4ed!important;color:var(--ok);border-color:#cce4d7!important}.garage-future{padding:18px}.garage-future h3{margin:7px 0}.garage-future p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.garage-admin-models{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.garage-admin-models article{border:1px solid var(--line);border-radius:13px;padding:12px;display:flex;flex-direction:column}.garage-admin-models span{font-size:10px;color:var(--muted);margin-top:4px}.garage-equipment-admin{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.garage-equipment-admin span{font-size:10px;border:1px solid var(--line);border-radius:999px;padding:6px 8px}
.account-body{background:#f5f8f7;min-height:100vh}.account-topbar{position:relative}.account-shell{max-width:980px;margin:0 auto;padding:54px 20px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.account-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px}.account-card h1,.account-card h2{letter-spacing:-.03em}.account-card h1{font-size:32px}.account-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}
@media(max-width:1180px){.garage-dashboard{grid-template-columns:240px minmax(0,1fr)}.garage-equipment{grid-column:1/-1}.garage-equipment-list{display:grid;grid-template-columns:repeat(2,1fr);column-gap:18px}.garage-readiness{grid-column:1/-1}.garage-future{grid-column:1/-1}}
@media(max-width:820px){.garage-section{padding:26px 18px 34px}.garage-section-head{align-items:flex-start;flex-direction:column}.garage-section-head h2{font-size:29px}.garage-locked,.garage-empty{grid-template-columns:1fr;padding:18px}.garage-dashboard{grid-template-columns:1fr}.garage-identity,.garage-main-card,.garage-equipment,.garage-readiness,.garage-future{grid-column:auto}.garage-main-card{order:-1}.garage-bike-hero{min-height:240px}.garage-readiness{grid-template-columns:1fr}.account-grid{grid-template-columns:1fr}.top-actions{margin-left:auto}.account-link{max-width:130px}.garage-admin-models{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.garage-loadouts{grid-template-columns:repeat(2,1fr)}.garage-metrics{grid-template-columns:repeat(2,1fr)}.garage-metrics>div:nth-child(2){border-right:0}.garage-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.garage-equipment-list{grid-template-columns:1fr}.garage-admin-models{grid-template-columns:1fr}.garage-bike-hero{min-height:200px}.readiness-score{align-items:flex-start}.readiness-ring{width:76px;height:76px}.account-shell{padding:30px 14px}}

/* BTBR V0.4.1 — Garage catalog cascade & factory data */
.garage-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.garage-catalog-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}
.garage-catalog-form select:disabled{opacity:.58;cursor:not-allowed;background:#f3f6f5}
.factory-spec-preview{margin:14px 0;padding:14px 16px;border:1px solid #dbe5e2;border-radius:16px;background:linear-gradient(180deg,#f8fbfa,#f3f8f6)}
.factory-spec-preview.compact{padding:12px;margin:12px 0}
.factory-spec-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.factory-spec-head strong{font-size:14px;text-align:right}
.factory-spec-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.factory-spec-grid>div{padding:9px 10px;border:1px solid #e2e9e7;border-radius:12px;background:#fff;min-width:0}
.factory-spec-grid span{display:block;color:#72827f;font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.factory-spec-grid strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.factory-spec-preview>small{display:block;margin-top:10px;color:#6f7d7a;line-height:1.45}
.garage-manual-entry{margin:12px 0;border-top:1px solid #e0e8e6;padding-top:10px}
.garage-manual-entry summary{cursor:pointer;color:#315c58;font-weight:700;font-size:13px}
.garage-manual-entry[open] summary{margin-bottom:10px}
.garage-catalog-status{min-height:18px;font-size:12px;color:#70807d;margin:8px 0}
.garage-catalog-status.ok{color:#176f5f}
.garage-catalog-status.error{color:#a43f35}
.garage-catalog-status.loading{color:#566b67}
.garage-runtime-fields input[readonly]{background:#f3f6f5;color:#52615f}
@media(max-width:780px){.garage-catalog-grid,.garage-catalog-grid.compact{grid-template-columns:1fr}.factory-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.factory-spec-grid>div:last-child{grid-column:1/-1}}
/* V0.4.2 — Garage family / variant cascade */
.garage-catalog-grid.five{grid-template-columns:1.05fr .95fr 1.2fr 1.35fr .75fr}
.garage-catalog-grid label>small{font-size:10px;color:#7b8987;font-weight:500;margin-left:4px}
.factory-spec-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1180px){.garage-catalog-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-catalog-grid.five label:last-child{grid-column:1/-1}}
@media(max-width:780px){.garage-catalog-grid.five{grid-template-columns:1fr}.garage-catalog-grid.five label:last-child{grid-column:auto}.factory-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* BTBR V0.4.3 — Garage Workspace */
.garage-page-body{background:#f5f8f7}.garage-page-shell{max-width:1660px;margin:0 auto;padding:34px 28px 48px}.garage-page-shell .garage-section{padding:0;border:0;background:transparent}.garage-page-shell .garage-section-head{margin-bottom:22px}.garage-page-shell .garage-dashboard{grid-template-columns:290px minmax(520px,1fr) 330px}.garage-page-shell .garage-identity{align-self:stretch}.garage-page-shell .garage-main-card{min-height:100%}.garage-page-shell .garage-future{grid-column:3}.garage-page-shell .garage-readiness{grid-column:1 / span 2}.garage-page-shell .garage-edit-link{display:flex;justify-content:center;margin-top:16px;text-decoration:none}.garage-settings-card{grid-column:1/-1;border:1px solid var(--line);background:#fff;border-radius:20px;padding:22px;margin-top:14px}.garage-settings-card>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:850;color:var(--ink)}.garage-settings-card>summary::-webkit-details-marker{display:none}.garage-settings-card>summary span{display:flex;flex-direction:column;gap:3px}.garage-settings-card>summary small{font-weight:500;color:var(--muted)}.garage-settings-card[open]>summary{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}.garage-editor-form{max-width:none}.garage-catalog-primary{display:grid;grid-template-columns:1fr 1.35fr 1.45fr .7fr;gap:12px;margin:14px 0 8px}.garage-filter-row{display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr);gap:12px;align-items:end;margin-bottom:8px}.garage-filter-row .garage-catalog-status{margin:0;padding:10px 12px;border:1px dashed var(--line);border-radius:12px;min-height:42px;display:flex;align-items:center}.garage-filter-row .garage-catalog-status.ok{background:#eff8f4;border-color:#cce5d9}.garage-filter-row .garage-catalog-status.error{background:#fff3f1;border-color:#ecd3cf}.garage-filter-row label,.garage-catalog-primary label{min-width:0}.garage-filter-row select,.garage-catalog-primary select,.garage-catalog-primary input{min-width:0}.garage-catalog-form label{white-space:normal}.garage-catalog-form label>small{display:inline}.garage-page-shell .garage-empty{grid-template-columns:minmax(380px,1fr) minmax(560px,1fr)}
.admin-model-editor{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:18px}.admin-model-editor .brand-create{align-self:start}.garage-admin-models article{position:relative;padding-right:84px}.garage-admin-models article .model-edit-action{position:absolute;right:10px;top:10px;text-decoration:none;font-size:10px;font-weight:800;border:1px solid var(--line);border-radius:8px;padding:6px 8px;color:var(--accent);background:#fff}.garage-admin-models article.is-editing{border-color:var(--accent);box-shadow:0 0 0 2px rgba(13,81,77,.08)}.garage-editor-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.garage-editor-title h3{margin:0}.garage-editor-title .btn{flex:none}
@media(max-width:1280px){.garage-page-shell .garage-dashboard{grid-template-columns:270px minmax(0,1fr)}.garage-page-shell .garage-equipment{grid-column:1/-1}.garage-page-shell .garage-readiness{grid-column:1/-1}.garage-page-shell .garage-future{grid-column:1/-1}.garage-catalog-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-model-editor{grid-template-columns:1fr}}
@media(max-width:820px){.garage-page-shell{padding:24px 16px 38px}.garage-page-shell .garage-dashboard{grid-template-columns:1fr}.garage-page-shell .garage-empty{grid-template-columns:1fr}.garage-catalog-primary{grid-template-columns:1fr}.garage-filter-row{grid-template-columns:1fr}.garage-settings-card{padding:16px}}
