/* Entry is an app surface, separate from the approved vehicle composition. */
#entryFlow.entry-flow{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#17191b;color:#f7f7f8;overflow:auto;overscroll-behavior:contain;font:400 16px/1.6 'Chakra Petch','Noto Sans Thai',sans-serif;color-scheme:dark;--ink:#f7f7f8;--paper:#17191b;--muted:#c4c8ce}
#entryFlow::backdrop{background:#17191b}
#entryFlow *{box-sizing:border-box;min-width:0}
#entryFlow button,#entryFlow input{font:inherit}
#entryFlow button{cursor:pointer;color:inherit;touch-action:manipulation}
#entryFlow button:disabled{opacity:.45;cursor:default}
#entryFlow :focus-visible{outline:2px solid currentColor;outline-offset:4px}
#entryFlow .entry-heading:focus{outline:none}
#entryFlow .entry-top{position:sticky;inset:0 0 auto;z-index:3;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:76px;padding:12px 20px;background:#17191b;border-bottom:1px solid #3e4145}
.entry-wordmark{font:400 16px/1.5 'Michroma',sans-serif;letter-spacing:5px}
.entry-top-controls{display:flex;justify-content:flex-end;align-items:center;gap:6px}
#entryFlow .entry-icon,#entryFlow .entry-language{display:grid;place-items:center;width:44px;height:44px;border:1px solid #5b5f64;background:transparent;border-radius:50%;padding:0;line-height:1}
#entryFlow .entry-language{font-size:14px;border:0}
.entry-content{max-width:1180px;margin:0 auto;padding:24px 20px 40px}
.entry-heading{font:500 clamp(32px,8vw,48px)/1.3 'Chakra Petch',sans-serif;letter-spacing:-.04em;white-space:pre-line;margin:12px 0}
.entry-description{font-size:16px;line-height:1.7;white-space:pre-line;margin:0 0 20px;color:#c7cbd0}
.entry-step,.entry-kicker{font-size:13px;letter-spacing:1px;color:#c4c8ce}
.entry-note{font-size:14px;line-height:1.65;color:#c4c8ce;margin:16px 0}
#entryFlow[data-page=login] .entry-content{padding:0;display:grid;gap:0}
.entry-intro{position:relative;padding:28px 24px 12px;background:#fff;color:#1a1c1e;border-radius:0 0 28px 28px;overflow:hidden}
.entry-intro .entry-kicker{color:#51555b}
.entry-intro .entry-description{color:#53585e;font-size:15px;margin-bottom:0}
.entry-intro .entry-heading{font-size:clamp(34px,10vw,50px)}
.entry-art{margin:4px 0 0;position:relative}
.entry-art img{display:block;width:100%;height:150px;object-fit:contain;mix-blend-mode:multiply}
.entry-art figcaption{font-size:12px;text-align:right;color:#585c62}
.entry-signin{padding:28px 24px 36px}
.entry-signin h2{font-size:23px;font-weight:500;margin:8px 0 20px}
.entry-providers{display:grid;gap:10px}
#entryFlow .entry-provider{width:100%;min-height:56px;display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:12px;text-align:left;border:1px solid #5b5f64;border-radius:16px;background:#25282c;padding:12px 16px;font-size:16px}
#entryFlow .entry-provider[data-provider=google]{background:#fff;color:#202124;border-color:#747775}
.entry-provider-mark{font-family:Arial,sans-serif;font-weight:600;font-size:24px;text-align:center}
.entry-provider-arrow{font-size:21px}
#entryFlow .entry-instagram small{font-size:12px;font-weight:400}
.entry-status{padding:16px;border-left:2px solid #fff;background:#272a2e;font-size:15px;line-height:1.7}
#entryFlow .entry-primary,#entryFlow .entry-secondary{display:flex;justify-content:center;align-items:center;gap:10px;min-height:56px;width:100%;border-radius:999px;padding:14px 22px;font-size:17px;font-weight:500;border:1px solid #f7f7f8;background:#f7f7f8;color:#17191b}
#entryFlow .entry-secondary{background:transparent;color:#f7f7f8;border-color:#686d75}
.entry-sharing{margin-top:24px;border-top:1px solid #464b52;padding-top:12px}
.entry-sharing summary{min-height:48px;padding:10px 0;font-size:15px;cursor:pointer}
.entry-page-head{margin:8px 0 24px}
.entry-rides{display:grid;gap:12px}
#entryFlow .entry-ride{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:center;width:100%;min-height:152px;text-align:left;background:#24272b;border:1px solid #565b62;border-radius:20px;padding:16px}
#entryFlow .entry-ride[aria-pressed=true]{border:2px solid #fff;padding:15px;background:#30343a}
.entry-ride-media{display:grid;place-items:center;background:#fff;border-radius:10px;overflow:hidden;height:96px}
.entry-ride-media img{width:100%;height:100%;object-fit:contain}
.entry-no-photo{font-size:32px;color:#222}
.entry-ride-text{display:grid;gap:4px;padding-right:16px}
.entry-ride-text strong{font-size:20px;line-height:1.3;font-weight:500;overflow-wrap:anywhere}
.entry-ride-text>small{font-size:13px;color:#c8ccd3}
.entry-ride-text>span{font-size:14px;line-height:1.5;color:#c8ccd3}
.entry-selected{display:none;position:absolute;top:12px;right:14px}
[aria-pressed=true]>.entry-selected{display:block}
.entry-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;padding:0 0 env(safe-area-inset-bottom,0px)}
.entry-actions>button{flex:1 1 180px}
#entryFlow label{display:block;font-size:15px;margin:0 0 8px;color:#e1e4e8}
#entryFlow input{width:100%;min-height:56px;font-size:18px;background:#24272b;color:#fff;border:1px solid #747982;border-radius:14px;padding:12px 16px;scroll-margin:100px 0}
.entry-brands{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
#entryFlow .entry-brand{min-height:48px;border:1px solid #696e75;border-radius:99px;padding:8px 18px;background:transparent}
#entryFlow .entry-brand[aria-pressed=true]{color:#17191b;background:#fff;border-color:#fff}
.entry-models{display:grid;gap:12px}
#entryFlow .entry-model{position:relative;display:grid;gap:7px;text-align:left;border:1px solid #686d75;border-radius:18px;background:#24272b;padding:20px 40px 20px 18px}
#entryFlow .entry-model[aria-pressed=true]{background:#353a40;box-shadow:inset 0 0 0 1px white;border-color:#fff}
.entry-model>strong{font-size:23px;line-height:1.4;font-weight:500}
.entry-model>small,.entry-model>span{font-size:14px;color:#cbd0d6}
.entry-model-check{position:absolute;right:16px;top:18px}
#entryFlow .entry-manual{display:grid;gap:4px;width:100%;text-align:left;padding:20px 0;margin-top:16px;background:transparent;border:0;border-top:1px solid #575b62}
.entry-manual strong{font-weight:500;font-size:18px}
.entry-manual span{font-size:14px;color:#c7cbd1}
.entry-ready-name{display:block;font-size:clamp(32px,7vw,60px);font-weight:500;line-height:1.3;padding:32px 0 40px}
.entry-ready-actions{display:grid;gap:12px;max-width:480px}
.entry-shutter{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:#181a1c;color:#fff;pointer-events:none;text-align:center;padding:24px}
.entry-shutter strong{font:500 clamp(30px,8vw,64px)/1.3 'Chakra Petch',sans-serif}
.entry-shutter p{font:400 16px/1.6 'Chakra Petch',sans-serif;color:#c4c8ce}
.entry-setup-note{font-size:15px;line-height:1.65;padding:0 0 16px;border-bottom:1px solid #666}
.entry-optional-photo{border-top:1px solid #bbb;margin-top:16px}
.entry-optional-photo>summary{min-height:48px;padding:12px 0;font-size:15px;cursor:pointer}
#companionSheet[data-entry-setup=true] .giant-sheet-title{font-size:32px;line-height:1.35;margin:14px 0}
#companionSheet[data-entry-setup=true] .field label,#companionSheet[data-entry-setup=true] .vehicle-editor-form>label{font-size:14px}
#companionSheet[data-entry-setup=true] .reference-specs a,#companionSheet[data-entry-setup=true] .reference-specs dl,#companionSheet[data-entry-setup=true] .vehicle-reference .desc{font-size:13px;line-height:1.6}
/* Readable contextual forms and home-flow labels; hero typography stays approved. */
.identity-editor input,.identity-editor select,.identity-editor textarea{font-size:16px!important;min-height:48px}
.identity-editor label,.identity-editor summary,.identity-editor .desc,.identity-editor .reference-found,.identity-editor .vehicle-current-reading{font-size:14px;line-height:1.65}
.identity-editor .vehicle-editor-extras{margin-top:18px}
.identity-editor .vehicle-editor-extras>summary{min-height:48px;padding:12px 0}
#edgeAccount .desc,#edgeAccount .edge-note{font-size:14px;line-height:1.65}
#edgeAccount .edge-account-row{font-size:16px;min-height:52px}
#entryAccountLink{background:#fff;color:#181a1c;border-radius:14px;padding:14px 18px;margin:12px 0 24px}
@media(max-width:899px){
 .entry-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:8px;padding:20px 24px}
 .entry-intro .entry-kicker{grid-column:1/-1;font-size:13px}
 .entry-intro .entry-heading{grid-column:1;grid-row:2;font-size:32px;line-height:1.3;align-self:center;margin:12px 0}
 .entry-intro .entry-description{grid-column:1/-1;grid-row:3;line-height:1.6;font-size:15px}
 .entry-art{grid-column:2;grid-row:2;align-self:center;margin:0}
 .entry-art img{height:116px}
 .entry-art figcaption{font-size:13px}
 .entry-signin{padding:22px 24px 30px}
 .entry-signin h2{font-size:22px;margin:6px 0 16px}
}
@media(min-width:900px){
 #entryFlow .entry-top{padding:16px 40px}
 .entry-content{padding:32px 40px 56px}
 #entryFlow[data-page=login] .entry-content{grid-template-columns:1.05fr 1fr;min-height:calc(100dvh - 88px);max-width:none}
 .entry-intro{padding:clamp(40px,5vw,84px);border-radius:0 32px 32px 0;display:flex;flex-direction:column;justify-content:center}
 .entry-intro .entry-heading{font-size:clamp(44px,5vw,76px)}
 .entry-intro .entry-description{font-size:18px}
 .entry-art img{height:250px;max-height:32vh}
 .entry-signin{padding:48px clamp(32px,5vw,90px);align-self:center;width:100%;max-width:700px;justify-self:center}
 .entry-signin h2{font-size:30px}
 .entry-rides{grid-template-columns:repeat(3,minmax(0,1fr))}
 #entryFlow .entry-ride{grid-template-columns:1fr;align-content:start;padding:22px;gap:20px}
 #entryFlow .entry-ride[aria-pressed=true]{padding:21px}
 .entry-ride-media{height:180px}
 .entry-ride-text strong{font-size:26px}
 .entry-actions{max-width:600px;margin-left:auto}
 .entry-models{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:360px){
 #entryFlow .entry-top{padding-inline:14px}
 .entry-content{padding-inline:16px}
 .entry-intro,.entry-signin{padding-inline:20px}
 #entryFlow .entry-provider{padding:12px;gap:8px;font-size:15px;grid-template-columns:24px 1fr auto}
 #entryFlow .entry-instagram{grid-template-columns:24px 1fr}
 #entryFlow .entry-instagram small{grid-column:2;font-size:13px}
 #entryFlow .entry-ride{grid-template-columns:74px 1fr;padding:14px;gap:12px}
 #entryFlow .entry-ride[aria-pressed=true]{padding:13px}
 .entry-ride-media{height:86px}
}
