/* Responsive overrides only; base.css is the desktop visual system. */
.xf .primary-action-row{display:flex;align-items:center;gap:9px;width:100%;margin-top:16px}
.xf .primary-action-row>.btn{flex:1 1 300px;width:auto;min-width:0;margin:0;height:52px}
.xf .session-broom{width:52px;height:52px;padding:0;display:grid;place-items:center;flex:0 0 52px;border:1px solid #ffdba4;border-radius:12px;background:#fff7e9;color:#ed941d;cursor:pointer;transition:background .15s,box-shadow .15s}
.xf .session-broom:disabled{color:#a7aebb;border-color:#e5e8ee;background:#f7f8fa;cursor:not-allowed}
.xf .feed time{min-width:92px}
html,body {height:auto;min-height:100%;overflow:auto}
.app-shell {height:auto;min-height:100vh;min-width:0;overflow:visible}
.topbar {grid-template-columns:auto 1fr auto;position:sticky;top:0;z-index:90}
.main {overflow:visible;padding:0 clamp(16px,5vw,100px) 30px;min-height:0}
.page {height:auto}
.web-notice {font-size:14px;min-height:22px;color:var(--muted);overflow-wrap:anywhere}.web-notice.error {color:var(--red)}
.web-check {display:flex;align-items:flex-start;gap:8px;line-height:1.6;text-align:left;font-size:13px;margin:8px 0}.web-check input {flex:0 0 auto;margin-top:5px}
.web-tasks {padding:16px 0;border-bottom:1px solid var(--line)}.current-task-line {min-height:22px}.current-task-text {margin:0;font-size:14px;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.logs-area {min-height:320px}.logs-area .log {height:300px;overflow:auto;overflow-wrap:anywhere;white-space:pre-wrap}.log p {margin:5px 0;line-height:1.6}.log a {color:var(--blue);overflow-wrap:anywhere}.log .failed,.log .needsReview,.log .stopped,.log .testCompleted {color:var(--red)}
.web-code {display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:12px 0}.web-code input {max-width:160px}.field-hint {line-height:1.7}
dialog {max-height:90dvh;overflow:auto}dialog .field {margin-bottom:12px}#sendCode {align-self:center}button:disabled {opacity:.5;cursor:not-allowed}.summary {white-space:normal}.actions {flex-wrap:wrap}
.accounts-dialog {width:min(1040px,calc(100vw - 40px))}.account-table {overflow:hidden}.account-manage {white-space:nowrap}
@media(min-width:901px){.product-panel,.account-panel {display:grid;grid-template-rows:42px 96px 68px;row-gap:14px;align-content:start}.product-panel>.toolbar,.product-panel>.grid3,.product-panel>.product-location,.account-panel>.right-head,.account-panel>.account-field {margin-bottom:0}.product-panel>.toolbar,.account-panel>.right-head {height:42px}.product-panel>.grid3,.product-panel>.product-location,.account-panel>.account-extra {align-self:start}}
@media(max-width:900px){.topbar {grid-template-columns:1fr auto;height:auto;min-height:64px;padding:10px 16px;gap:6px}.nav {grid-column:1/-1;grid-row:2;min-height:36px;justify-content:flex-start}.brand small {display:none}.topbar-right {gap:8px}.purchase-config {grid-template-columns:1fr;gap:20px}.divider {display:none}.summary,.actions {grid-column:1}.right-head h2 {font-size:20px}.bottom.logs-area {display:grid;grid-template-columns:1fr;height:auto;overflow:visible}.logs-area .col {min-height:160px;border-right:0;border-bottom:1px solid var(--line)}.logs-area .log {height:200px}.toolbar {flex-wrap:wrap}.topbar .connection {max-width:120px;font-size:11px}.main {padding:0 16px 24px}}
@media(max-width:430px){.brand strong {font-size:15px}.brand-mark {display:none}.grid3 {gap:8px}.field {font-size:12px}.product-location {grid-template-columns:1fr}.account-extra {grid-template-columns:1fr}.topbar-right .btn {padding:0 10px}.actions .center {width:100%;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.task-item {width:100%}.web-notice {font-size:13px}}
@media(max-width:600px){.accounts-head {align-items:flex-start;gap:10px}.accounts-head-actions {flex-shrink:0}.account-table {overflow-x:auto}.account-th,.account-row {min-width:760px}.checkout-mode {display:none}}

@media(max-width:430px){.product-panel>.grid3 {grid-template-columns:1fr 1fr}.product-panel>.grid3>.field:first-child {grid-column:1/-1}.brand {min-width:0}.topbar-right {min-width:0}.topbar-right #memberBtn {max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

#events {white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}
@media(max-width:900px){.topbar {position:relative;grid-template-columns:1fr}.brand {grid-row:1}.topbar-right {grid-row:2;grid-column:1;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px}.topbar-right>a,.topbar-right>button {white-space:nowrap;flex-shrink:0}.nav {grid-row:3;grid-column:1}.web-check>span {flex:1;min-width:0}.topbar-right #memberBtn {max-width:170px}.topbar-right .connection {max-width:none}}

@media(max-width:900px){.topbar {flex:0 0 auto}}
@media(max-width:430px){.topbar-right #memberBtn {max-width:130px}.topbar-right {gap:8px}}

/* ===== 小旋风网页版 v2（仅作用于首页 body.xf；后台和说明页沿用上方旧样式） ===== */
body.xf { --ink:#1d2433; --ink-2:#4b5468; --muted:#8a92a6; --faint:#c2c8d4; --line:#e9edf3; --tint:#f5f7fa;
  --blue:#2f6ff5; --blue-h:#2563eb; --blue-soft:rgba(47,111,245,.09); --green:#1fae6c; --green-soft:rgba(31,174,108,.11);
  --amber:#e8960c; --amber-soft:rgba(232,150,12,.12); --red:#e5484d;
  margin:0; background:#fff; color:var(--ink); min-height:100vh;
  font:14px/1.5 -apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue","Microsoft YaHei",sans-serif; -webkit-font-smoothing:antialiased; }
body.xf * { box-sizing:border-box; }
body.xf button, body.xf input { font:inherit; color:inherit; }
body.xf [hidden] { display:none !important; }
.xf .num { font-variant-numeric:tabular-nums; }

.xf .xhead { height:56px; max-width:1200px; margin:0 auto; padding:0 20px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; }
.xf .logo { display:flex; align-items:center; gap:9px; font-weight:800; font-size:18px; letter-spacing:1px; color:var(--ink); text-decoration:none; }
.xf .logo i { width:28px; height:28px; border-radius:50%; background:radial-gradient(circle at 32% 28%,#fff 0 12%,#bcd3ff 34%,#4f86f7 78%,#2f6ff5 100%); }
.xf .logo small { font-size:12px; font-weight:500; color:var(--muted); letter-spacing:0; }
.xf .mainnav { height:100%; display:flex; gap:32px; }
.xf .mainnav a { position:relative; display:flex; align-items:center; color:var(--muted); text-decoration:none; font-weight:650; }
.xf .mainnav a.on { color:var(--ink); }
.xf .mainnav a.on::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px; border-radius:3px; background:var(--blue); }
.xf .hr { justify-self:end; display:flex; align-items:center; gap:14px; font-size:13px; }
.xf .link { border:0; background:none; color:var(--muted); cursor:pointer; padding:4px 0; }
.xf .link:hover { color:var(--blue); }
.xf .online { display:inline-flex; align-items:center; gap:6px; color:var(--green); font-size:12px; }
.xf .online i { width:7px; height:7px; border-radius:50%; background:currentColor; }
.xf .online.off { color:var(--muted); }
.xf .days { background:var(--tint); border:0; border-radius:999px; padding:5px 12px; font:inherit; color:inherit; cursor:pointer; }
.xf .days b { color:var(--blue); }
.xf .days.off b { color:var(--red); }
.xf .me { position:relative; }
.xf .av { width:32px; height:32px; border-radius:50%; display:grid; place-items:center; background:var(--blue); color:#fff; font-weight:700; font-size:13px; border:0; cursor:pointer; }
.xf .menu { position:absolute; right:0; top:40px; z-index:40; min-width:200px; padding:6px; border-radius:14px; background:#fff; box-shadow:0 12px 40px rgba(20,30,60,.16); }
.xf .menu-mail { padding:8px 10px; font-size:12px; color:var(--muted); border-bottom:1px solid var(--line); margin-bottom:4px; overflow:hidden; text-overflow:ellipsis; }
.xf .menu button { width:100%; text-align:left; border:0; background:none; padding:9px 10px; border-radius:10px; cursor:pointer; }
.xf .menu button:hover { background:var(--tint); }

.xf .toast { position:fixed; left:50%; top:66px; transform:translateX(-50%); z-index:80; max-width:min(560px,calc(100vw - 32px)); padding:10px 16px; border-radius:12px; background:#1d2433; color:#fff; font-size:13px; box-shadow:0 10px 30px rgba(20,30,60,.2); }
.xf .toast.error { background:var(--red); }

.xf .card { background:#fff; border:1px solid var(--line); border-radius:20px; box-shadow:0 1px 2px rgba(20,30,60,.03),0 6px 22px rgba(20,30,60,.04); }

/* 手机图 */
.xf .ph { display:block; width:100%; height:100%; background:center/contain no-repeat; }
.xf .ph svg { width:100%; height:100%; display:block; }

/* ---- 落地页 ---- */
.xf .landing { max-width:1200px; margin:0 auto; padding:0 20px 20px; min-height:calc(100vh - 56px); display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:center; }
.xf .intro { display:flex; gap:28px; align-items:center; }
.xf .shots { position:relative; width:300px; height:300px; flex:none; }
.xf .shots .ph { position:absolute; width:190px; height:230px; animation:xfbob 6s ease-in-out infinite; }
.xf .shots .ph:nth-child(1) { left:0; top:30px; z-index:3; }
.xf .shots .ph:nth-child(2) { left:60px; top:0; z-index:2; animation-delay:-2s; }
.xf .shots .ph:nth-child(3) { left:115px; top:50px; width:165px; height:200px; z-index:1; animation-delay:-4s; }
@keyframes xfbob { 50% { transform:translateY(-6px); } }
.xf .purchase-unavailable{max-width:520px;margin:64px auto;padding:28px;text-align:center}
.xf .purchase-unavailable p{color:#7b8494;line-height:1.8}
.xf .purchase-unavailable a{display:inline-block;margin-top:18px;color:#326df5}
.xf .landing h1 { margin:0; font-size:40px; line-height:1.2; letter-spacing:-.5px; }
.xf .landing h1 em { font-style:normal; color:var(--blue); }
.xf .lead { margin:12px 0 18px; font-size:15px; color:var(--ink-2); }
.xf .points { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.xf .points li { display:flex; gap:10px; align-items:flex-start; }
.xf .points b { display:block; }
.xf .points span { color:var(--muted); font-size:13px; }
.xf .ico { width:30px; height:30px; flex:none; border-radius:9px; background:var(--blue-soft); color:var(--blue); display:grid; place-items:center; }
.xf .login-card { background:#fff; border:1px solid var(--line); border-radius:20px; box-shadow:0 1px 2px rgba(20,30,60,.03),0 10px 30px rgba(20,30,60,.06); padding:26px 28px; max-width:420px; width:100%; justify-self:end; }
.xf .tabs { display:flex; gap:4px; padding:4px; background:var(--tint); border-radius:12px; }
.xf .tabs button { flex:1; height:36px; border:0; border-radius:9px; background:none; cursor:pointer; font-weight:600; color:var(--muted); }
.xf .tabs button.on { background:#fff; color:var(--ink); box-shadow:0 1px 3px rgba(20,30,60,.08); }
.xf .tabpane h2 { margin:20px 0 4px; font-size:22px; }
.xf .desc { margin:0 0 6px; color:var(--muted); font-size:13px; }
.xf .fld { display:block; margin-top:12px; }
.xf .fld > span:first-child { display:block; font-size:13px; color:var(--ink-2); margin-bottom:6px; }
.xf .fld input, .xf .inp { display:block; width:100%; height:44px; padding:0 12px; border:1px solid var(--line); border-radius:12px; background:#fff; font-size:15px; outline:none; }
.xf .fld input:focus { border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-soft); }
.xf .row { display:flex; gap:8px; }
.xf .ghost { flex:none; height:44px; padding:0 14px; border:0; border-radius:12px; background:var(--tint); color:var(--blue); font-weight:600; cursor:pointer; white-space:nowrap; }
.xf .ghost:disabled { color:var(--muted); cursor:default; }
.xf .msg { min-height:18px; margin:10px 0 0; font-size:12px; color:var(--red); }
.xf .msg.ok { color:var(--green); }
.xf .foot { margin-top:14px; font-size:12px; color:var(--muted); text-align:center; }
.xf .foot a, .xf .agree a { color:var(--blue); text-decoration:none; }
.xf .agree { display:flex; gap:8px; align-items:flex-start; margin-top:14px; font-size:12px; color:var(--muted); }
.xf .agree input { margin-top:2px; flex:none; }

/* ---- 按钮 ---- */
.xf .btn { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; height:46px; margin-top:16px; border:0; border-radius:12px; background:var(--blue); color:#fff; font-size:16px; font-weight:700; cursor:pointer; }
.xf .btn:hover { background:var(--blue-h); }
.xf .btn:disabled { opacity:.5; cursor:not-allowed; }
.xf .btn.stop { background:#f1f3f7; color:var(--red); }
.xf .btn.stop:hover { background:#e9ecf2; }
.xf .btn.green { background:var(--green); }
.xf .btn.green:hover { background:#1a9a5f; }

/* ---- 抢购页 ---- */
.xf .app { max-width:1200px; margin:0 auto; padding:4px 20px 20px; display:grid; grid-template-columns:1fr 1fr; gap:16px; height:calc(100vh - 56px); min-height:600px; }
.xf .left { display:flex; flex-direction:column; padding:18px 22px; text-align:center; min-height:0; }
.xf .ltop { display:flex; justify-content:space-between; align-items:center; min-height:26px; }
.xf .ltop-r { font-size:12px; color:var(--muted); }
.xf .executor-update-notice { grid-column:1/-1; align-self:start; display:flex; align-items:flex-start; gap:8px; min-width:0; padding:4px 0 0; color:#c7353b; text-align:left; font-size:13px; line-height:1.7; }
.xf .executor-update-notice svg { flex:none; margin-top:2px; }
.xf .executor-update-notice span { min-width:0; white-space:pre-wrap; overflow-wrap:anywhere; }
@media(min-width:901px){.xf .app:has(>.executor-update-notice:not([hidden])) { grid-template-rows:auto minmax(0,1fr); }}
.xf .tag { display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:600; padding:4px 10px; border-radius:999px; background:var(--tint); color:var(--muted); }
.xf .tag i { width:7px; height:7px; border-radius:50%; background:currentColor; }
.xf .tag.blue { background:var(--blue-soft); color:var(--blue); }
.xf .tag.green { background:var(--green-soft); color:var(--green); }
.xf .tag.amber { background:var(--amber-soft); color:var(--amber); }
.xf .tag.red { background:rgba(229,72,77,.1); color:var(--red); }
.xf .tag.blue i, .xf .tag.amber i { animation:xfblink 1.4s infinite; }
@keyframes xfblink { 50% { opacity:.25; } }
.xf .stage { flex:1; min-height:0; display:flex; flex-direction:column; justify-content:center; align-items:center; width:100%; }
.xf .phone { height:clamp(110px,25vh,250px); width:clamp(90px,20vh,200px); }
.xf .phone .ph { animation:xfbob 5s ease-in-out infinite; }
.xf .pname { margin-top:10px; font-size:20px; font-weight:800; letter-spacing:-.2px; }
.xf .pspec { font-size:13px; color:var(--ink-2); display:flex; align-items:center; justify-content:center; gap:6px; }
.xf .cdot { width:10px; height:10px; border-radius:50%; box-shadow:inset 0 0 0 1px rgba(0,0,0,.15); flex:none; }
.xf .head { margin-top:12px; font-size:24px; font-weight:800; letter-spacing:-.3px; }
.xf .head .wd { display:inline-flex; gap:4px; margin-left:6px; vertical-align:middle; }
.xf .head .wd i { width:6px; height:6px; border-radius:50%; background:var(--blue); animation:xfwd 1.4s infinite; }
.xf .head .wd i:nth-child(2) { animation-delay:.2s; } .xf .head .wd i:nth-child(3) { animation-delay:.4s; }
@keyframes xfwd { 0%,80%,100% { opacity:.2; transform:translateY(0); } 40% { opacity:1; transform:translateY(-4px); } }
.xf .sub { color:var(--muted); font-size:13px; max-width:420px; }
.xf .stats { display:flex; justify-content:center; gap:8px; margin-top:12px; }
.xf .st { min-width:104px; padding:7px 12px; border-radius:14px; background:var(--tint); }
.xf .st .k { font-size:11px; color:var(--muted); }
.xf .st .v { font-size:19px; font-weight:800; }
.xf .st .v small { font-size:11px; color:var(--muted); font-weight:500; margin-left:2px; }
.xf .st.g .v { color:var(--green); }
.xf #act { width:100%; max-width:361px; }
.xf .note { margin-top:6px; font-size:12px; color:var(--muted); }
.xf .note a, .xf .textlink { color:var(--blue); background:none; border:0; cursor:pointer; font-size:12px; text-decoration:none; padding:0; }
.xf .textlink.red { color:var(--red); }
.xf .tgl { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:10px; font-size:12px; color:var(--ink-2); }
.xf .sw { width:38px; height:22px; border-radius:999px; border:0; background:#d5dae4; position:relative; cursor:pointer; padding:0; flex:none; }
.xf .sw::after { content:""; position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:#fff; transition:left .2s; }
.xf .sw.on { background:#13b5a6; } .xf .sw.on::after { left:19px; }
.xf .consent { display:flex; gap:6px; align-items:flex-start; justify-content:center; margin-top:8px; font-size:11px; color:var(--muted); text-align:left; }
.xf .consent input { margin-top:2px; flex:none; }
.xf .consent a { color:var(--blue); text-decoration:none; }
.xf .code { margin-top:12px; text-align:left; }
.xf .code b { font-size:13px; }
.xf .boxes { display:grid; grid-template-columns:repeat(6,1fr); gap:6px; margin-top:6px; }
.xf .boxes input { width:100%; height:44px; border:1px solid var(--line); border-radius:10px; text-align:center; font:700 20px ui-monospace,Menlo,monospace; outline:none; }
.xf .boxes input:focus { border-color:var(--blue); }

.xf .right { display:flex; flex-direction:column; gap:12px; min-height:0; }
.xf .sec { padding:14px 18px; }
.xf .sh { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.xf .sh h3 { margin:0; font-size:15px; }
.xf .sh span { font-size:12px; color:var(--muted); }
.xf .mini-link { border:0; background:none; color:var(--blue); font-size:12px; cursor:pointer; padding:0; }
.xf .run-tools { display:flex; align-items:center; gap:12px; }
.xf .kv { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.xf .kv div { background:var(--tint); border-radius:12px; padding:7px 10px; min-width:0; }
.xf .kv span { display:block; font-size:11px; color:var(--muted); }
.xf .kv b { display:block; font-size:13px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.xf .steps { display:grid; grid-template-columns:repeat(6,1fr); gap:5px; list-style:none; margin:0; padding:0; }
.xf .steps li { font-size:12px; color:var(--faint); text-align:center; }
.xf .steps li i { display:block; height:6px; border-radius:999px; background:#e6eaf1; margin-bottom:6px; }
.xf .steps li.done i { background:var(--blue); }
.xf .steps li.now i { background:var(--blue); animation:xfblink 1.2s infinite; }
.xf .steps li.fin i { background:var(--green); }
.xf .steps li.bad i { background:var(--faint); }
.xf .steps li.done, .xf .steps li.now, .xf .steps li.fin { color:var(--ink); font-weight:600; }
.xf .shops { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.xf .shop { background:var(--tint); border-radius:10px; padding:6px 9px; font-size:13px; text-align:left; min-width:0; }
.xf .shop b { display:block; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.xf .shop em { font-style:normal; font-size:11px; color:var(--muted); }
.xf .shop.hit { background:var(--green-soft); }
.xf .shop.hit em { color:var(--green); font-weight:700; }
.xf .feedsec { flex:1; min-height:0; display:flex; flex-direction:column; }
.xf .feed { list-style:none; margin:0; padding:0; overflow:auto; flex:1; min-height:60px; }
.xf .feed li { display:flex; gap:10px; padding:7px 0; font-size:13px; }
.xf .feed li + li { border-top:1px solid var(--line); }
.xf .feed time { color:var(--faint); font-size:12px; min-width:58px; font-variant-numeric:tabular-nums; flex:none; }
.xf .feed .d { width:7px; height:7px; border-radius:50%; background:var(--faint); margin-top:7px; flex:none; }
.xf .feed .ok .d { background:var(--green); } .xf .feed .act .d { background:var(--blue); } .xf .feed .warn .d { background:var(--amber); } .xf .feed .bad .d { background:var(--red); }
.xf .feed .empty { color:var(--muted); }
.xf .orders { padding:12px 18px; font-size:14px; }
.xf .orders-head { display:flex; justify-content:space-between; align-items:center; cursor:pointer; }
.xf .orders-head b span { font-weight:400; color:var(--muted); }
.xf .orders-head .r { color:var(--blue); font-size:13px; }
.xf .ord { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-top:8px; padding:8px 10px; border-radius:10px; background:var(--tint); font-size:12px; }
.xf .ord[data-view] { cursor:pointer; }
.xf .ord.on { box-shadow:inset 0 0 0 1px var(--blue); background:var(--blue-soft); }
.xf .ord small { display:block; color:var(--muted); }
.xf .ord a { color:var(--blue); text-decoration:none; white-space:nowrap; }
.xf .orders-empty { padding:14px 2px 4px; color:var(--muted); font-size:12px; }

.xf .picker { overflow:auto; flex:1; }
.xf .lbl { font-size:12px; color:var(--muted); margin:10px 0 6px; }
.xf .lbl:first-of-type { margin-top:0; }
.xf .opts { display:flex; flex-wrap:wrap; gap:6px; }
.xf .opt { border:1px solid var(--line); background:#fff; border-radius:10px; padding:6px 12px; cursor:pointer; font-size:13px; display:inline-flex; align-items:center; gap:6px; }
.xf .opt .sw-dot { width:12px; height:12px; border-radius:50%; box-shadow:inset 0 0 0 1px rgba(0,0,0,.15); }
.xf .opt.on { border-color:var(--blue); background:var(--blue-soft); color:var(--blue); font-weight:700; }
.xf .opt:disabled { opacity:.5; cursor:not-allowed; }
.xf .info { display:grid; grid-template-columns:1fr; gap:8px; }
.xf .ic-card { display:flex; gap:12px; align-items:center; text-align:left; padding:10px 14px; border:1px solid var(--line); border-radius:14px; background:#fff; cursor:pointer; min-width:0; width:100%; }
.xf .ic-card:hover { border-color:rgba(47,111,245,.4); }
.xf .ic-card.warn { border-color:rgba(232,150,12,.5); background:#fffaf0; }
.xf .ic-ico { width:34px; height:34px; flex:none; border-radius:10px; display:grid; place-items:center; background:var(--blue-soft); color:var(--blue); }
.xf .ic-main { flex:1; min-width:0; display:grid; grid-template-columns:76px 1fr; column-gap:12px; align-items:center; }
.xf .ic-k { grid-row:1 / 3; font-size:13px; color:var(--muted); }
.xf .ic-main b, .xf .ic-s { grid-column:2; min-width:0; }
.xf .ic-main b { font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.xf .ic-s { font-size:11px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.xf .ic-go { flex:none; font-size:12px; color:var(--blue); }

/* ---- 弹窗 ---- */
.xf .mask { position:fixed; inset:0; z-index:60; display:flex; align-items:center; justify-content:center; padding:16px; background:rgba(20,25,40,.35); }
.xf .sheet { width:100%; max-width:460px; max-height:calc(100vh - 32px); overflow:auto; padding:26px; border-radius:20px; background:#fff; box-shadow:0 20px 60px rgba(20,30,60,.2); }
.xf .sheet h3 { margin:0 0 8px; font-size:22px; }
.xf .sheet > p { margin:0; color:var(--muted); }
.xf .result-mark { width:52px; height:52px; margin:0 auto 14px; border-radius:50%; display:grid; place-items:center; background:var(--blue-soft); color:var(--blue); font-size:24px; font-weight:800; }
.xf .result-mark.ok { background:var(--green-soft); color:var(--green); }
.xf .result-mark.bad { background:rgba(229,72,77,.1); color:var(--red); }
.xf .result-sheet { text-align:center; }
.xf .result-sheet .result-detail { margin-top:7px; line-height:1.65; }
.xf .result-sheet .result-meta { margin-top:16px; padding:10px 12px; border-radius:12px; background:var(--tint); color:var(--ink-2); font-size:13px; }
.xf .result-sheet .btns { justify-content:center; }
.xf .result-pay { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.xf .btns { display:flex; justify-content:flex-end; align-items:center; gap:10px; margin-top:22px; }
.xf .fb { height:42px; padding:0 22px; border:0; border-radius:12px; font-size:15px; font-weight:700; cursor:pointer; background:#f0f2f6; }
.xf a.fb { display:inline-flex; align-items:center; justify-content:center; text-align:center; text-decoration:none; }
.xf .fb.primary { background:var(--blue); color:#fff; }
.xf .fb.red { background:var(--red); color:#fff; }
.xf .fb.textred { background:none; color:var(--red); font-weight:500; padding:0 6px; margin-right:auto; }
.xf .fb:disabled { opacity:.5; cursor:not-allowed; }
.xf .pays { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:14px; }
.xf .pay { display:flex; align-items:center; justify-content:center; gap:8px; height:44px; border:1px solid var(--line); border-radius:12px; background:#fff; cursor:pointer; font-size:14px; font-weight:600; }
.xf .pay i { width:22px; height:22px; border-radius:6px; display:grid; place-items:center; color:#fff; font-style:normal; font-size:12px; font-weight:800; }
.xf .pay.on { border-color:var(--blue); background:var(--blue-soft); color:var(--blue); }
.xf .instal { margin-top:10px; padding:10px; border-radius:12px; background:var(--tint); }
.xf .instal .lbl:first-child { margin-top:0; }
.xf .acc { display:flex; align-items:center; gap:10px; padding:12px; border:1px solid var(--line); border-radius:12px; margin-top:8px; cursor:pointer; }
.xf .acc.on { border-color:var(--blue); background:var(--blue-soft); }
.xf .acc .rd { width:18px; height:18px; border-radius:50%; border:2px solid var(--faint); flex:none; }
.xf .acc.on .rd { border:5px solid var(--blue); }
.xf .acc .am { flex:1; min-width:0; }
.xf .acc .am b { display:block; font-size:14px; overflow:hidden; text-overflow:ellipsis; }
.xf .acc .am span { font-size:12px; color:var(--muted); }
.xf .acc .ops { display:flex; gap:10px; flex:none; }
.xf .acc .ops button { border:0; background:none; color:var(--blue); font-size:12px; cursor:pointer; padding:0; }
.xf .acc .ops button.del { color:var(--red); }
.xf .addacc { margin-top:8px; width:100%; height:42px; border:1px dashed var(--faint); border-radius:12px; background:#fff; color:var(--blue); font-weight:600; cursor:pointer; }
.xf .g2 { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.xf .tip { margin-top:10px; font-size:12px; color:var(--muted); display:flex; gap:6px; align-items:center; }
.xf .ok-dot { width:6px; height:6px; border-radius:50%; background:var(--green); flex:none; display:inline-block; }
.xf .line { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:10px 0; border-top:1px solid var(--line); font-size:13px; }
.xf .logbox { margin-top:12px; max-height:55vh; overflow:auto; font-size:12px; line-height:1.7; color:var(--ink-2); white-space:pre-wrap; overflow-wrap:anywhere; background:var(--tint); border-radius:12px; padding:10px 12px; }

@media (max-height:760px) and (min-width:901px) {
  .xf .phone { height:clamp(90px,20vh,160px); }
  .xf .head { font-size:21px; margin-top:8px; }
  .xf .pname { font-size:18px; margin-top:6px; }
  .xf .feed li { padding:5px 0; }
  .xf .sec { padding:11px 16px; }
  .xf .lbl { margin:7px 0 4px; }
  .xf .opt { padding:4px 10px; }
  .xf .info { grid-template-columns:repeat(3,1fr); gap:6px; }
  .xf .ic-card { padding:8px 10px; gap:8px; }
  .xf .ic-ico, .xf .ic-go { display:none; }
  .xf .ic-main { grid-template-columns:1fr; }
  .xf .ic-k { grid-row:auto; font-size:11px; }
  .xf .ic-main b, .xf .ic-s { grid-column:1; }
  .xf .lbl-gap { margin-top:10px; }
}
@media (max-width:1080px) and (min-width:901px) { .xf .shots { display:none; } }
@media (max-width:900px) {
  .xf .xhead { padding:0 14px; }
  .xf .online span, .xf #notifyBtn { display:none; }
  .xf .landing { grid-template-columns:1fr; min-height:0; gap:20px; padding:8px 16px 32px; }
  .xf .intro { flex-direction:column; gap:6px; text-align:center; }
  .xf .shots { width:230px; height:200px; }
  .xf .shots .ph { width:140px !important; height:170px !important; }
  .xf .shots .ph:nth-child(2) { left:50px; } .xf .shots .ph:nth-child(3) { left:95px; top:30px; }
  .xf .landing h1 { font-size:28px; } .xf .lead { margin:8px 0 0; }
  .xf .points { display:none; }
  .xf .login-card { justify-self:stretch; max-width:none; padding:20px; }
  .xf .app { grid-template-columns:1fr; height:auto; min-height:0; padding:4px 14px 24px; }
  .xf .phone { height:200px; width:160px; }
  .xf .st { min-width:0; flex:1; }
  .xf .shops { grid-template-columns:1fr 1fr; }
  .xf .feed { max-height:300px; }
  .xf .kv { grid-template-columns:1fr 1fr; }
  .xf .ic-main { grid-template-columns:1fr; }
  .xf .ic-k { grid-row:auto; font-size:11px; }
  .xf .ic-main b, .xf .ic-s { grid-column:1; }
  .xf .pays { grid-template-columns:1fr; }
  .xf .sheet { padding:20px; }
}
.xf .lbl-gap { margin-top:16px; }
.xf .lbl-row { display:flex; justify-content:space-between; align-items:center; }
.xf .fld input.code-inp { text-transform:uppercase; letter-spacing:1px; }
.xf .pay i.wx { background:#1aad19; } .xf .pay i.ali { background:#1677ff; } .xf .pay i.fq { background:var(--amber); }
.xf .ord-list { max-height:180px; overflow:auto; }
.xf .ord .ops { display:flex; gap:10px; align-items:center; flex:none; }
.xf .ord .ops button { border:0; background:none; color:var(--muted); font-size:12px; cursor:pointer; padding:0; }
.xf .ord .ops button:hover { color:var(--red); }
.xf .opt.more { color:var(--blue); border-style:dashed; }
.xf .sheet .opts { margin-top:4px; }
.xf .fld .hint { display:block; margin-top:4px; font-size:11px; color:var(--muted); }
.xf .consent.need { color:var(--red); }
.xf .sub.res { color:var(--ink-2); }
.xf a.btn { text-decoration:none; }

/* 机型图片（WebP，内嵌以符合 CSP img-src data:） */
.xf .ph-pro-burgundy{background-image:url('./product-pro-burgundy.webp?v=20261018-login-ui-2')}
.xf .ph-pro-blue{background-image:url('./product-pro-blue.webp?v=20261018-login-ui-2')}
.xf .ph-pro-silver{background-image:url('./product-pro-silver.webp?v=20261018-login-ui-2')}
.xf .ph-pro-black{background-image:url('./product-pro-black.webp?v=20261018-login-ui-2')}
.xf .ph-fold-white{background-image:url('./product-fold-white.webp?v=20261018-login-ui-2')}
.xf .ph-fold-blue{background-image:url('./product-fold-blue.webp?v=20261018-login-ui-2')}

/* Bark 图文教程（通知设置弹窗内） */
.xf .bg { margin-top:18px; border-top:1px solid #e9edf3; padding-top:14px; }
.xf .bg summary { cursor:pointer; color:#2f6ff5; font-weight:600; font-size:14px; list-style:none; }
.xf .bg summary::-webkit-details-marker { display:none; }
.xf .bg summary::before { content:"▸ "; }
.xf .bg[open] summary::before { content:"▾ "; }
.xf .bg-list { list-style:none; margin:12px 0 0; padding:0; display:flex; flex-direction:column; gap:16px; }
.xf .bg-head { display:flex; align-items:center; gap:8px; font-size:15px; }
.xf .bg-n { width:22px; height:22px; border-radius:50%; background:#2f6ff5; color:#fff; display:inline-grid; place-items:center; font-size:12px; flex:none; }
.xf .bg-step p { margin:6px 0 8px; color:#4b5563; font-size:13px; line-height:1.6; }
.xf .bg-img { display:block; width:100%; max-width:360px; border-radius:12px; border:1px solid #e9edf3; }
.xf .bg-ai { margin-top:16px; padding:14px; border-radius:14px; background:#f5f7fa; }
.xf .bg-ai p { margin:6px 0 10px; color:#4b5563; font-size:13px; line-height:1.6; }
.xf .result-stay { margin-top:12px; border:0; background:none; color:var(--muted); cursor:pointer; font-size:12px; }
.xf .result-stay:hover { color:var(--blue); }
.xf .opt.disabled { opacity:.48; cursor:not-allowed; background:#f4f6f9; }
.xf .opt.disabled small { margin-left:6px; font-size:10px; font-weight:600; }
.xf .promo-mini { display:inline-flex; align-items:center; min-height:26px; padding:0 9px; border:1px solid #f0d7a0; border-radius:999px; background:#fff9ec; color:#a46700; font-size:11px; font-weight:700; text-decoration:none; white-space:nowrap; }
.xf .result-log { width:100%; margin-top:10px; border-color:#d8e2f5; color:var(--blue); background:#f7faff; }
.xf .shop.selected { box-shadow:inset 0 0 0 1px #9bbcff; }
.xf .ord .ops .ord-log, .xf .ord .ops .ord-log:hover { color:var(--blue); font-weight:700; padding:6px 2px; }
.xf .ord-ended { display:inline-block; margin:3px 4px; padding:2px 7px; border-radius:5px; background:var(--blue); color:#fff; font-weight:700; }
.xf .ord-ended.success { background:#16864f; }
.xf .ord-ended.review { background:#a76500; }
.xf .ord-ended.failed { background:#bb3340; }
.xf .ord .ops .ord-pay { padding:5px 8px; border-radius:6px; background:#e8f6ee; color:#147a47; font-weight:700; white-space:nowrap; }
@media (max-width:900px) {
  .xf .xhead { height:auto; min-height:56px; grid-template-columns:1fr auto; padding-top:8px; }
  .xf .mainnav { grid-column:1/-1; grid-row:2; height:40px; justify-content:center; gap:30px; }
  .xf .logo small { display:none; }
  .xf .hr { grid-column:2; grid-row:1; }
}

/* ===== 消息提醒（待核查订单）与加速配件入口 ===== */
.xf .cs-wrap { position:relative; }
.xf .cs { position:relative; width:32px; height:32px; border-radius:50%; border:0; cursor:pointer; display:grid; place-items:center; background:linear-gradient(145deg,#eaf2ff,#d6e6ff); box-shadow:0 0 0 1px rgba(47,111,245,.18); }
.xf .cs:hover { box-shadow:0 0 0 2px rgba(47,111,245,.35); }
.xf .cs-badge { position:absolute; top:-6px; right:-9px; min-width:14px; height:15px; padding:0 3px; border-radius:8px; background:var(--red); color:#fff; font-size:10px; font-weight:700; line-height:15px; text-align:center; border:2px solid #fff; box-sizing:content-box; }
.xf .cs-panel { position:absolute; right:-44px; top:42px; z-index:45; width:340px; border-radius:16px; background:#fff; box-shadow:0 16px 44px rgba(20,30,60,.18),0 0 0 1px var(--line); overflow:hidden; text-align:left; }
.xf .cs-h { display:flex; align-items:center; gap:8px; padding:13px 16px 11px; border-bottom:1px solid var(--line); }
.xf .cs-h b { font-size:15px; }
.xf .cs-h span { margin-left:auto; color:var(--muted); font-size:12px; }
.xf .cs-list { max-height:min(60vh,420px); overflow:auto; }
.xf .cs-empty { padding:28px 16px; text-align:center; color:var(--muted); font-size:13px; }
.xf .cs-msg { display:flex; gap:11px; padding:14px 16px; border-bottom:1px solid var(--line); }
.xf .cs-msg.unread { background:#fffaf4; }
.xf .cs-av { flex:none; position:relative; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(145deg,#eaf2ff,#d6e6ff); }
.xf .cs-msg.unread .cs-av::after { content:""; position:absolute; top:0; right:0; width:9px; height:9px; border-radius:50%; background:var(--red); border:2px solid #fff; }
.xf .cs-b { flex:1; min-width:0; }
.xf .cs-t { display:flex; align-items:center; gap:6px; }
.xf .cs-t b { font-size:13px; }
.xf .cs-tag { background:#fff1e6; color:#c2410c; font-size:11px; border-radius:6px; padding:1px 7px; font-weight:650; }
.xf .cs-t time { margin-left:auto; color:var(--muted); font-size:11px; white-space:nowrap; }
.xf .cs-b p { margin:6px 0 0; color:var(--ink-2); font-size:12.5px; line-height:1.6; }
.xf .cs-meta { margin-top:8px; background:var(--tint); border-radius:9px; padding:7px 10px; color:var(--muted); font-size:12px; line-height:1.7; }
.xf .cs-meta em { font-style:normal; color:var(--ink); }
.xf .cs-acts { display:flex; gap:8px; margin-top:10px; }
.xf .cs-acts a, .xf .cs-acts button { flex:1; text-align:center; border-radius:9px; padding:7px 0; font-size:12.5px; font-weight:650; border:0; cursor:pointer; text-decoration:none; }
.xf .cs-go { background:var(--blue); color:#fff; }
.xf .cs-go:hover { background:var(--blue-h); }
.xf .cs-read { background:var(--tint); color:var(--ink-2); }
.xf .cs-done { color:var(--muted); font-size:12px; margin-top:8px; }
.xf .cs-f { padding:10px 16px; color:var(--muted); font-size:11.5px; display:flex; gap:6px; align-items:center; }
.xf .cs-f::before { content:"✓"; color:var(--green); font-weight:800; }
.xf .left { position:relative; }
.xf .ltop { padding-right:92px; }
.xf .accel { position:absolute; top:12px; right:12px; z-index:2; width:80px; padding:8px 6px 7px; border-radius:14px; display:flex; flex-direction:column; align-items:center; gap:5px; text-decoration:none; color:var(--ink); background:rgba(255,255,255,.94); border:1px solid var(--line); box-shadow:0 4px 14px rgba(20,30,60,.07); transition:transform .15s,box-shadow .15s; }
.xf .accel:hover { transform:translateY(-1px); box-shadow:0 8px 20px rgba(20,30,60,.12); }
.xf .accel-tag { background:var(--blue); color:#fff; font-size:10px; font-weight:700; border-radius:6px; padding:1px 7px; white-space:nowrap; }
.xf .accel-ico { width:44px; height:44px; border-radius:11px; display:grid; place-items:center; background:linear-gradient(145deg,#eef4ff,#dbe8ff); }
.xf .accel-nm { font-size:11.5px; white-space:nowrap; }
@media (max-width:900px) {
  .xf .cs-panel { position:fixed; top:100px; left:12px; right:12px; width:auto; }
  .xf .accel { width:68px; top:10px; right:10px; padding:6px 4px; gap:3px; }
  .xf .accel-ico { width:34px; height:34px; border-radius:9px; }
  .xf .accel-ico svg { width:20px; height:20px; }
  .xf .accel-nm { font-size:10.5px; }
  .xf .ltop { padding-right:78px; }
}

.xf .logo img{width:29px;height:29px;object-fit:contain;flex:none}
.xf .accel[hidden]{display:none}

.xf .session-broom:hover:not(:disabled){background:#ffeed0;box-shadow:0 3px 12px #ee9c1920}
.xf .session-broom:focus-visible{outline:3px solid #ffc979;outline-offset:3px}
.xf .steps li.test i{background:#6b8dd6}.xf .steps li.warn i{background:#e7aa3c}
.xf .steps li.test,.xf .steps li.warn{color:var(--ink);font-weight:600}
.xf .feed .config{color:#63718a}.xf .result-mark.test{background:#eef3ff;color:#5f80c5}

.xf .result-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:10px;margin-top:22px}
.xf .result-actions>.fb{display:flex;justify-content:center;align-items:center;min-width:0;width:100%;height:46px;margin:0;padding:0 10px;font-size:14px}
.xf .result-payment{margin-top:18px}.xf .result-payment>.fb{width:100%}

.xf .login-purchase-steps{margin-top:12px;text-align:left}.xf .apple-login-step{padding-bottom:18px;border-bottom:1px solid var(--line)}.xf .apple-purchase-step{padding-top:18px}.xf .purchase-step-title{display:flex;align-items:center;gap:10px;font-size:14px}.xf .step-number{width:26px;height:26px;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:700}.xf .apple-login-status{margin-left:auto;font-size:12px;color:var(--muted)}.xf .apple-login-status.ready{color:var(--green)}.xf .apple-login-account{display:flex;justify-content:space-between;gap:10px;margin:10px 0 0 36px;color:var(--ink-2);font-size:12px;overflow-wrap:anywhere}.xf .login-action-row{margin-top:12px}.xf .apple-purchase-step>.btn{margin-top:12px}.xf .apple-purchase-step .tgl{justify-content:flex-start;margin-left:36px}.xf .account-config-mirror{display:none!important}.xf .login-code{margin-top:12px}.xf .login-purchase-steps .consent{font-size:11px}.xf .head:empty{display:none}.xf .left .phone{height:clamp(100px,20vh,200px);width:clamp(80px,16vh,160px)}

.xf .apple-login-error{margin-top:10px;padding:10px;border-radius:8px;background:#fff4f1;color:#bf3e34;font-size:12px;line-height:1.6}
.xf .ltop .tag{white-space:nowrap;flex-shrink:0}



.xf #picker{flex:0 0 auto}

/* Keep the test switch aligned with the login status, and notes with the account. */
.xf .apple-purchase-step .purchase-test-mode{margin:0 0 0 auto;justify-content:flex-end;flex:none}


.xf .activity-heading{display:flex;align-items:baseline;gap:8px 14px;flex:1;min-width:0;flex-wrap:wrap}
.xf .activity-heading h3{flex-shrink:0}
.xf .run-counts{color:var(--muted);font-size:12px;font-weight:400;line-height:1.5}
.xf .feedsec .sh{align-items:flex-start;gap:12px}
@media(max-width:600px){.xf .activity-heading{gap:4px 10px}.xf .run-counts{font-size:11px}}

/* A: challenge-only verification, with stable controls and feedback geometry. */
.xf .is-verifying .apple-login-account{margin-left:0;align-items:center;min-height:34px}
.xf .is-verifying .apple-login-account>span{min-width:0;overflow-wrap:anywhere}
.xf .verification-account-tools{display:flex;align-items:center;gap:12px;flex:none}
.xf .verification-account-tools .session-broom{width:30px;height:30px;flex-basis:30px;border-radius:9px}
.xf .verification-account-tools .session-broom svg{width:17px;height:17px}
.xf .login-verification{margin-top:14px;padding-top:16px;border-top:1px solid var(--line);text-align:left}
.xf .verification-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;min-height:26px}
.xf .verification-countdown{display:inline-flex;align-items:center;justify-content:center;min-width:70px;height:26px;padding:0 8px;border-radius:8px;background:var(--tint);color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.xf .login-verification .login-code{margin-top:10px}
.xf .login-verification .boxes{margin-top:0;gap:8px}
.xf .login-verification .boxes input{height:48px;background:#fff;box-shadow:none;opacity:1;color:var(--ink)}
.xf .login-verification .boxes input:disabled{background:var(--tint);color:var(--muted)}
.xf .verification-help{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:18px}
.xf .login-verification>.btn{margin-top:12px;height:46px}
.xf .verification-sms{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--tint)}
.xf .verification-sms-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;min-height:20px}
.xf .verification-sms-heading b{font-weight:600}
.xf .verification-sms-heading .textlink{font-size:11px;white-space:nowrap}
.xf .verification-sms-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px;margin-top:10px}
.xf .verification-sms-row select{appearance:none;width:100%;min-width:0;height:38px;padding:0 25px 0 10px;border:1px solid var(--line);border-radius:9px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%23808a9b' stroke-width='1.5'/%3E%3C/svg%3E") right 9px center/12px 8px no-repeat;color:var(--ink-2);font-size:12px;text-overflow:ellipsis}
.xf .sms-send-button{height:38px;padding:0 8px;border:1px solid #c9d9ff;border-radius:9px;background:#fff;color:var(--blue);font-size:12px;white-space:nowrap;cursor:pointer}
.xf .verification-sms-row select:disabled,.xf .sms-send-button:disabled,.xf .verification-sms .textlink:disabled{color:var(--muted);cursor:default}
.xf .verification-feedback{height:60px;overflow:auto;margin:8px 0 0;color:var(--muted);font-size:12px;line-height:20px;overflow-wrap:anywhere}
.xf .verification-feedback.error{color:var(--red)}
.xf .verification-cancel{display:block;margin:0 auto;font-size:12px}
.xf .sub:empty{display:none}

.xf .orders-models{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 10px}
.xf .orders-models button{border:1px solid #e0e7f0;border-radius:7px;background:#fff;color:#52627b;padding:6px 11px;cursor:pointer;font:inherit;font-size:12px}
.xf .orders-models button[aria-pressed="true"]{background:#eaf3ff;border-color:#9fbef4;color:#2467dc}

/* Action requests stay inside ordinary logs; no additional banner or panel. */
.xf .feed .needs-action>span,.xf .logbox .needs-action{color:var(--red);font-weight:600}
.xf .logbox .logline{display:block}
.xf .logbox .log-action-dot{font-style:normal;font-size:9px}

/* Ordinary usage comes from the task domain ledger, beside the operator notice. */
.xf .purchase-overview{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px 24px;min-width:0;padding-top:8px;flex-wrap:wrap}
.xf .purchase-overview>.executor-update-notice{flex:1;padding-top:0}
.xf .purchase-usage{min-width:0;max-width:100%;margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:9px;color:#65728b;font-size:14px;line-height:1.5}
.xf .purchase-usage-stats{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.xf .purchase-usage-stats>span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.xf .purchase-usage-stats b{font-size:16px;font-weight:650;color:#293449;font-variant-numeric:tabular-nums}
.xf .purchase-usage-stats .purchase-usage-success b{color:#316bff}
.xf .purchase-usage-divider{width:1px;height:15px;background:#dce3ef;flex:none}
.xf .purchase-usage-stats span>i{width:7px;height:7px;border-radius:50%;background:#316bff;flex:none}
.xf .purchase-usage-stats .running>i{background:#0aa59e}
.xf .purchase-usage-stats .problem>i{background:#e5484d}
.xf .purchase-usage-hint{flex:none;width:100%;min-width:0;margin:0;color:#7a8598;font-size:13px;line-height:1.6;text-align:left;overflow-wrap:anywhere}
@media(min-width:901px){.xf .app:has(>.purchase-overview){grid-template-rows:auto minmax(0,1fr)}}
@media(max-width:1100px){.xf .purchase-overview{flex-direction:column;gap:12px}.xf .purchase-usage{margin-left:0;align-items:flex-start}.xf .purchase-usage-stats{justify-content:flex-start}.xf .purchase-usage-hint{text-align:left}}
@media(max-width:400px){.xf .purchase-usage-stats{column-gap:10px;row-gap:8px}.xf .purchase-usage-stats>.purchase-usage-divider:nth-of-type(2){display:none}}

.xf .purchase-usage-counts{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.xf .purchase-usage-counts>span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
@media(max-width:400px){.xf .purchase-usage-counts{flex-basis:100%}}
