/* MOEV Ambassador (/ambassador, /a/CODE, the /me card, the admin tab). Same tokens as styles.css. */
.amb{gap:16px}
.amb-top{display:flex;align-items:center;justify-content:space-between}
.amb-mega{font-size:clamp(64px,18vw,104px)}
.amb-lede{font-size:17px;color:#D8D3CC}
.amb-lede b{color:var(--amber);font-weight:600}
.amb-quiet{color:var(--dim);font-size:14px;text-align:center;text-decoration:underline;text-underline-offset:3px}
.amb-top .amb-quiet{text-align:right}
.amb-disc{text-align:center}
a.btn{display:block;text-align:center;text-decoration:none}
.amb-note{border-left:3px solid var(--amber);padding:10px 14px;background:var(--plate);border-radius:0 10px 10px 0;font-size:14px;color:#D8D3CC}

.amb-url{background:var(--ink);border:1px dashed var(--line);border-radius:10px;padding:14px;text-align:center;overflow-wrap:anywhere}
.amb-url code{font-family:var(--mono);font-size:17px;letter-spacing:.02em;color:var(--paper)}
.amb-qr{max-width:240px;width:100%;margin:4px auto 0}
.amb-save{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:8px}

.amb-boost{display:grid;gap:4px;padding:16px 18px;border-radius:14px;background:var(--amber);color:var(--ink)}
.amb-boost b{font-family:var(--display);font-weight:400;font-size:30px;letter-spacing:.04em;line-height:1}
.amb-boost span{font-size:14px;font-weight:600}

.amb-levelhead{display:flex;justify-content:space-between;align-items:baseline}
.amb-rate{font-family:var(--display);font-size:44px;color:var(--amber);line-height:1}
.amb-level h2 small{font-family:var(--mono);font-size:11px;letter-spacing:.15em;color:var(--dim);text-transform:uppercase;vertical-align:middle}
.amb-bar{height:8px;border-radius:8px;background:var(--line);overflow:hidden}
.amb-bar i{display:block;height:100%;background:var(--amber);border-radius:8px;min-width:4px;transition:width .5s ease}
.amb-levels{list-style:none;margin:4px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.amb-levels li{border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;gap:2px;text-align:center}
.amb-levels li.on{border-color:var(--amber)}
.amb-levels b{font-size:13px}
.amb-levels span{font-family:var(--display);font-size:26px;line-height:1}
.amb-levels small{font-size:11px;color:var(--dim)}

.amb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.amb-stat{background:var(--plate);border:1px solid var(--line);border-radius:12px;padding:12px 10px;display:grid;gap:2px;min-width:0}
.amb-stat b{font-family:var(--display);font-weight:400;font-size:28px;line-height:1;overflow-wrap:anywhere}
.amb-stat span{font-size:12px;color:var(--dim)}
.amb-stat small{font-size:10px;color:var(--dim);opacity:.8}

.amb-reward{display:grid;gap:8px;padding-top:6px}
.amb-rewardhead{display:flex;justify-content:space-between;font-size:15px}
.amb-rewardhead span{color:var(--dim);font-family:var(--mono);font-size:12px}
.amb-reward.granted .amb-rewardhead span,.amb-reward.fulfilled .amb-rewardhead span,.amb-reward.pending .amb-rewardhead span{color:var(--amber)}

.amb-boardhead{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center}
.amb-tabs{display:flex;gap:6px}
.amb-tabs button{border:1px solid var(--line);background:transparent;color:var(--dim);border-radius:16px;padding:6px 11px;font:500 12px var(--body);cursor:pointer}
.amb-tabs button.on{border-color:var(--amber);color:var(--amber)}
.amb-rank{list-style:none;margin:0;padding:0;display:grid}
.amb-rank li{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.amb-rank li:last-child{border-bottom:0}
.amb-rank li.me .amb-name{color:var(--amber)}
.amb-pos{font-family:var(--display);font-size:22px;color:var(--dim)}
.amb-rank li:nth-child(-n+3) .amb-pos{color:var(--amber)}
.amb-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.amb-name small{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--dim)}
.amb-n{font-size:12px;color:var(--dim)}
.amb-n b{color:var(--paper)}
.amb-city summary,.amb-how summary{cursor:pointer;color:var(--dim);font-size:14px}
.amb-city[open]{display:grid;gap:10px}
.amb-how ul{margin:10px 0;padding-left:18px;display:grid;gap:8px;color:#D8D3CC;font-size:14px;line-height:1.5}
.amb .check{display:flex;gap:10px;align-items:flex-start}
.amb .check input{width:auto}
.amb-foot{text-align:center}
.amb-foot a{color:var(--amber)}

.amb-mecard{display:grid;gap:4px;padding:16px 18px;border-radius:14px;border:1px solid var(--amber);background:linear-gradient(135deg,rgba(255,130,0,.14),transparent 60%);color:var(--paper);text-decoration:none;margin:6px 0 4px}
.amb-mecard b{font-family:var(--display);font-weight:400;font-size:28px;letter-spacing:.03em;line-height:1}
.amb-mego{font-size:14px;color:var(--amber);font-weight:600}
.amb-mego::after{content:' \2192'}

.amb-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);background:var(--paper);color:var(--ink);padding:12px 16px;border-radius:10px;font-weight:600;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:50;max-width:calc(100vw - 32px)}
.amb-toast.on{opacity:1;transform:translate(-50%,0)}

@media (max-width:380px){.amb-stats{grid-template-columns:repeat(2,1fr)}.amb-levels span{font-size:22px}}
@media (prefers-reduced-motion:reduce){.amb-bar i,.amb-toast{transition:none}}

.amb-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.amb-tags > span{flex-basis:100%}
.amb-tag{appearance:none;border:1px solid var(--line);background:transparent;color:var(--paper);border-radius:16px;padding:7px 11px;font:500 13px var(--body);cursor:pointer;min-height:34px}
.amb-tag:active{border-color:var(--amber);color:var(--amber)}
.amb-partner{border-color:var(--amber)}

/* charts: one measure each, single amber series, readout in the header */
.ach-grid{display:grid;gap:14px}
.ach{margin:0;display:grid;gap:6px;min-width:0}
.ach figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px}
.ach figcaption b{font-weight:600;color:var(--paper)}
.ach-read{font:500 12px var(--mono);color:var(--dim);font-variant-numeric:tabular-nums;text-align:right}
.ach-plot{position:relative;height:72px;border-bottom:1px solid var(--line)}
.ach-max{position:absolute;top:-2px;left:0;font:500 10px var(--mono);color:var(--dim);opacity:.7}
.ach-bars{position:absolute;inset:14px 0 0 0;display:flex;align-items:flex-end;gap:2px}
.ach-b{flex:1;height:100%;display:flex;align-items:flex-end;cursor:pointer;min-width:0}
.ach-b i{display:block;width:100%;background:var(--amber);border-radius:4px 4px 0 0;opacity:.85}
.ach-b:hover i,.ach-b.on i{opacity:1;box-shadow:0 0 0 1px var(--paper)}
.ach-x{display:flex;justify-content:space-between;font:500 10px var(--mono);color:var(--dim)}
@media (min-width:640px){.amb .ach-grid{grid-template-columns:1fr}.fd .ach-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.amb-fun{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.amb-fun li{display:grid;grid-template-columns:minmax(0,8.5em) 1fr auto 3.6em;gap:10px;align-items:center;font-size:14px}
.amb-funb{height:10px;background:var(--line);border-radius:5px;overflow:hidden}
.amb-funb i{display:block;height:100%;background:var(--amber);border-radius:0 5px 5px 0}
.amb-fun b{font-variant-numeric:tabular-nums}
.amb-fun small{color:var(--dim);font:500 11px var(--mono);text-align:right}
.amb-table{width:100%;border-collapse:collapse;font-size:14px}
.amb-table th{font:600 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);text-align:left;padding:0 4px 8px;border-bottom:1px solid var(--line)}
.amb-table td{padding:8px 4px;border-bottom:1px solid #1c1a18}
.amb-table .num{text-align:right;font-variant-numeric:tabular-nums}
.amb-timeline ol,.amb-payouts ol{list-style:none;margin:0;padding:0;display:grid;gap:0}
.amb-timeline li,.amb-payouts li{display:grid;grid-template-columns:5.5em auto 1fr;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid #1c1a18;font-size:14px}
.amb-timeline li:last-child,.amb-payouts li:last-child{border-bottom:0}
.amb-timeline b,.amb-payouts b{font-variant-numeric:tabular-nums}
.amb-timeline small,.amb-payouts small{color:var(--dim);text-align:right}

/* admin tab */
.ama{display:grid;gap:14px}
.ama-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.ama-totals div{background:var(--plate);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:2px}
.ama-totals b{font-family:var(--display);font-weight:400;font-size:26px}
.ama-totals span{font-size:12px;color:var(--dim)}
.ama h3{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--amber);text-transform:uppercase;margin:10px 0 0}
.ama-row{background:var(--plate);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:8px}
.ama-row p{font-size:14px}
.ama-row .muted{font-size:12px}
.ama-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ama-bar input,.ama-bar select{width:auto;padding:9px 10px;font-size:15px}
.ama-flag{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);border-radius:6px;padding:2px 6px;margin-left:6px;color:var(--dim)}
.ama-flag.warn{border-color:var(--amber);color:var(--amber)}
.ama-flag.bad{border-color:var(--red);color:var(--red)}
.ama-note{font-size:12px;color:var(--dim);line-height:1.5}

/* founder Ambassadors view (on top of founder.css) */
.ama.fd{padding-top:0}
.ama-sort{appearance:none;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;padding:0;white-space:nowrap}
.ama-sort.on{color:var(--amber)}
.ama-sort.on.desc::after{content:' \2193'}
.ama-sort.on.asc::after{content:' \2191'}
.ama-days{appearance:none;border:1px solid var(--line);background:transparent;color:var(--dim);border-radius:8px;padding:4px 8px;font:600 11px var(--mono);cursor:pointer}
.ama-days.on{border-color:var(--amber);color:var(--amber)}
.ama-r{cursor:pointer}
.ama-r:hover td,.ama-r.open td{background:#1a1816}
.ama-r:focus-visible{outline:2px solid var(--amber);outline-offset:-2px}
.ama-drillbox{border:1px solid var(--amber);border-radius:12px;padding:12px;display:grid;gap:10px;background:#1a1816;min-width:0}
.ama-drill .fd-q dd{text-align:right}
.ama-drill{display:grid;gap:10px;padding-top:6px}
.ama-drill h3{margin:6px 0 0}
.ama-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ama-pf label{display:grid;gap:6px}
.ama-pf input{padding:9px 10px;font-size:15px}
#pf-hits{display:grid;gap:6px}
@media (max-width:420px){.ama-grid2{grid-template-columns:1fr}}
.ama-drill{min-width:0}
.ama-drill .amb-table td:first-child{overflow-wrap:anywhere;word-break:break-word}
.ama-drill .amb-table{table-layout:fixed}
.ama-drill .amb-table th:first-child,.ama-drill .amb-table td:first-child{width:40%}
.ama-drill .fd-q div{gap:12px}
.ama-drill .fd-q dt{min-width:0}
.ama-drill p{overflow-wrap:anywhere}

/* Oct 25: calculator, perks, pace */
.amb-calc label { display: grid; grid-template-columns: 1fr auto; gap: 6px 12px; align-items: center; margin: 12px 0; font-size: 14px; }
.amb-calc label input { grid-column: 1 / -1; width: 100%; accent-color: var(--amber, #FF8A00); }
.amb-calc label b { grid-row: 1; grid-column: 2; font-variant-numeric: tabular-nums; }
.amb-calcout { display: grid; grid-template-columns: auto 1fr auto 1fr; gap: 4px 8px; align-items: baseline; margin: 14px 0 6px; }
.amb-calcout b { font-size: 26px; color: var(--amber, #FF8A00); font-variant-numeric: tabular-nums; }
.amb-calcout span { color: var(--muted, #9b948c); font-size: 13px; }
.amb-disclaim { border-top: 1px solid rgba(255,255,255,.08); padding-top: 10px; }
.amb-perks ol { list-style: none; padding: 0; margin: 10px 0; display: grid; gap: 10px; }
.amb-perks li { display: grid; gap: 2px; }
.amb-perks li b { color: var(--amber, #FF8A00); }
.amb-perks li span { font-size: 14px; }
.amb-pace { color: var(--amber, #FF8A00); }
.amb-levels { flex-wrap: wrap; }
.amb-teamrow{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;padding:12px 0;border-top:1px solid rgba(255,255,255,.08)}
.amb-teamrow small{display:block;color:var(--muted,#9b948c);font-size:12px}
.amb-teamrow span{grid-column:1;font-size:13px;color:var(--muted,#9b948c)}
.amb-teamrow button{grid-column:2;grid-row:1 / span 2}
.amb-teamrow.off{opacity:.55}
