/* My data page styles — single owner.
 * Loaded after desktop-shell.css. Safe balanced extract.
 */


body.route-profile #desktop-my-data .profile-page-shell { padding-bottom:88px; }
body.route-profile #desktop-my-data .profile-page-head { min-height:82px; padding-bottom:28px; }
body.route-profile #desktop-my-data .profile-person { display:flex; align-items:center; min-width:0; }
body.route-profile #desktop-my-data .profile-person-avatar { flex:0 0 auto; }
body.route-profile #desktop-my-data .profile-person > div { min-width:0; }
body.route-profile #desktop-my-data .profile-person h1 { overflow-wrap:anywhere; }
body.route-profile #desktop-my-data .profile-person-avatar { width:62px; height:62px; border-radius:18px; box-shadow:inset 0 0 0 1px rgba(53,214,197,.15); }
body.route-profile #desktop-my-data .profile-person h1 { font-size:28px; letter-spacing:-.035em; }
body.route-profile #desktop-my-data .pixel-cat-settings-card { position:relative; overflow:hidden; margin:22px 0 26px; padding:18px 20px 15px; border-color:#41616a; border-radius:18px; background:linear-gradient(118deg,#1d2a30 0%,#172126 58%,#141b20 100%); }
body.route-profile #desktop-my-data .pixel-cat-settings-card::after { content:""; position:absolute; width:220px; height:220px; right:-86px; top:-112px; border-radius:50%; border:1px solid rgba(82,224,207,.16); box-shadow:0 0 0 32px rgba(82,224,207,.022),0 0 0 64px rgba(82,224,207,.014); pointer-events:none; }
body.route-profile #desktop-my-data .pixel-cat-settings-copy,body.route-profile #desktop-my-data .pixel-cat-care,body.route-profile #desktop-my-data .pixel-cat-choices,body.route-profile #desktop-my-data .pixel-cat-switch { position:relative; z-index:1; }
body.route-profile #desktop-my-data .pixel-cat-choices { padding-top:11px; }
body.route-profile #desktop-my-data .profile-dashboard-panel { display:grid; grid-template-columns:minmax(0,1.38fr) minmax(300px,.62fr); gap:0; margin:0; border:1px solid #3f5860; border-radius:18px; overflow:hidden; background:#172126; box-shadow:0 14px 34px rgba(0,0,0,.18); }
html body.route-profile #desktop-my-data .profile-dashboard-panel.profile-ai-quota-panel { grid-template-columns:minmax(0,1fr) !important; margin:24px 0 !important; min-height:158px; }
body.route-profile #desktop-my-data .profile-dashboard-main { min-height:255px; padding:28px 30px 24px; background:radial-gradient(circle at 3% 0%,rgba(69,224,207,.13),transparent 38%),linear-gradient(135deg,#1e2b31,#162025 68%); }
body.route-profile #desktop-my-data .profile-dashboard-heading { display:flex; align-items:center; gap:10px; }
body.route-profile #desktop-my-data .profile-dashboard-heading b { padding:4px 7px; border:1px solid rgba(76,218,198,.25); border-radius:99px; color:#8fe8dc; font-size:10px; font-weight:600; }
body.route-profile #desktop-my-data .profile-dashboard-main h2 { margin:14px 0 7px; color:#f1f5f4; font-size:27px; letter-spacing:-.045em; }
body.route-profile #desktop-my-data .profile-dashboard-main p { max-width:600px; margin:0; color:#aab9b8; font-size:12px; }
body.route-profile #desktop-my-data .profile-dashboard-actions { display:flex; align-items:center; gap:9px; margin-top:19px; }
body.route-profile #desktop-my-data .profile-dashboard-actions a { display:inline-flex; align-items:center; gap:6px; min-height:32px; padding:0 11px; border:1px solid #405158; border-radius:7px; color:#c4d1d0; font-size:11px; font-weight:650; text-decoration:none; transition:.18s ease; }
body.route-profile #desktop-my-data .profile-dashboard-actions a:hover { border-color:#4edbca; color:#76eadc; background:rgba(53,214,197,.08); }
body.route-profile #desktop-my-data .profile-dashboard-actions .primary { border-color:#45d5c4; background:#35cabc; color:#072321; box-shadow:0 7px 18px rgba(37,196,178,.16); }
body.route-profile #desktop-my-data .profile-dashboard-actions .primary:hover { background:#52dfcf; color:#06201e; }
body.route-profile #desktop-my-data .profile-dashboard-stats { gap:0; margin-top:25px; }
body.route-profile #desktop-my-data .profile-dashboard-stats a { min-width:92px; padding:0 20px 0 0; border:0; background:transparent; }
body.route-profile #desktop-my-data .profile-dashboard-stats a + a { padding-left:20px; border-left:1px solid rgba(163,191,185,.16); }
body.route-profile #desktop-my-data .profile-dashboard-stats strong { color:#ecf5f3; font-size:20px; }
body.route-profile #desktop-my-data .profile-dashboard-stats span { color:#849894; }
body.route-profile #desktop-my-data .profile-dashboard-viz { display:flex; min-height:255px; padding:27px 24px 21px; flex-direction:column; border:0; border-left:1px solid #3f5860; border-radius:0; background:linear-gradient(160deg,#223037,#182126); }
body.route-profile #desktop-my-data .profile-viz-head { display:flex; flex-direction:column; gap:6px; }
body.route-profile #desktop-my-data .profile-viz-head strong { color:#e9f0ee; font-size:17px; }
body.route-profile #desktop-my-data .profile-viz-bars { display:flex; flex:1; align-items:end; justify-content:space-between; gap:8px; min-height:118px; margin-top:4px; }
body.route-profile #desktop-my-data .profile-dashboard-viz button { display:grid; min-width:0; height:118px; flex:1; grid-template-rows:1fr auto auto; border:0; background:transparent; }
body.route-profile #desktop-my-data .profile-dashboard-viz i { width:100%; max-width:27px; justify-self:center; border-radius:5px 5px 2px 2px; background:linear-gradient(180deg,#58e5d5,#218d85); }
body.route-profile #desktop-my-data .profile-dashboard-viz strong { margin-top:7px; color:#e5efed; font-size:12px; }
body.route-profile #desktop-my-data .profile-dashboard-viz span { margin-top:3px; color:#96a8a7; font-size:9px; }
body.route-profile #desktop-my-data .profile-viz-link { display:flex; align-items:center; gap:5px; margin-top:12px; padding-top:13px; border-top:1px solid rgba(163,191,185,.14); color:#55d9ca; font-size:11px; font-weight:650; text-decoration:none; }
body.route-profile #desktop-my-data .profile-archive { display:grid; grid-template-columns:260px minmax(0,1fr); column-gap:34px; margin-top:32px; padding:0; }
body.route-profile #desktop-my-data .profile-archive > .profile-section-head { grid-column:1; display:block; padding:2px 0; }
body.route-profile #desktop-my-data .profile-archive > .profile-section-head h2 { font-size:24px; letter-spacing:-.03em; }
body.route-profile #desktop-my-data .profile-archive > .profile-section-head p { line-height:1.7; }
body.route-profile #desktop-my-data .profile-archive > .profile-section-head > button { margin-top:17px; }
body.route-profile #desktop-my-data .profile-archive-summary { grid-column:2; grid-row:1; margin:0; border:1px solid #3d535b; border-radius:12px; overflow:hidden; background:#182228; }
body.route-profile #desktop-my-data .profile-archive-summary > button { min-height:76px; padding:13px 16px; }
body.route-profile #desktop-my-data .profile-archive-tabs { grid-column:2; margin-top:14px; }
body.route-profile #desktop-my-data .profile-archive-sync { grid-column:2; }
body.route-profile #desktop-my-data .profile-archive-list { grid-column:2; max-height:350px; }
body.route-profile #desktop-my-data .profile-knowledge { margin-top:34px; padding-top:27px; }
body.route-profile #desktop-my-data .profile-knowledge .library-grid article { min-height:96px; border-color:#3b5159; border-radius:11px; background:#182228; }
@media (max-width:900px) { body.route-profile #desktop-my-data .profile-dashboard-panel { grid-template-columns:1fr; } body.route-profile #desktop-my-data .profile-dashboard-viz { min-height:210px; border-top:1px solid #2b3d3c; border-left:0; } body.route-profile #desktop-my-data .profile-archive { grid-template-columns:1fr; gap:18px; } body.route-profile #desktop-my-data .profile-archive > .profile-section-head,body.route-profile #desktop-my-data .profile-archive-summary,body.route-profile #desktop-my-data .profile-archive-tabs,body.route-profile #desktop-my-data .profile-archive-sync,body.route-profile #desktop-my-data .profile-archive-list { grid-column:1; grid-row:auto; } }
@media (max-width:620px) { body.route-profile #desktop-my-data .profile-dashboard-main { padding:23px 18px; } body.route-profile #desktop-my-data .profile-dashboard-main h2 { font-size:23px; } body.route-profile #desktop-my-data .profile-dashboard-actions { flex-wrap:wrap; } body.route-profile #desktop-my-data .profile-dashboard-stats a { min-width:0; padding-right:12px; } body.route-profile #desktop-my-data .profile-dashboard-stats a + a { padding-left:12px; } }
body.route-profile #desktop-my-data {
  --profile-panel:#111318;
  --profile-panel-2:#151820;
  --profile-line:#2b313a;
  --profile-text:#eef1f4;
  --profile-muted:#8d98a5;
  --profile-accent:#25c7b7;
  background:#090a0d;
  color:var(--profile-text);
}
body.desktop-light.route-profile #desktop-my-data {
  --profile-panel:#fff;
  --profile-panel-2:#f3f7f8;
  --profile-line:#d8e1e9;
  --profile-text:#26313b;
  --profile-muted:#6b7785;
  --profile-accent:#168f84;
  background:#f7f9fb;
}
@media (min-width:981px) {
  html body.route-profile #desktop-my-data .profile-dashboard-panel { display:grid !important; grid-template-columns:minmax(0,1.38fr) minmax(300px,.62fr) !important; margin:0 !important; border:1px solid #3f5860 !important; border-radius:18px !important; overflow:hidden !important; background:#172126 !important; }
  html body.route-profile #desktop-my-data .profile-dashboard-main { min-height:255px !important; padding:28px 30px 24px !important; background:radial-gradient(circle at 3% 0%,rgba(69,224,207,.13),transparent 38%),linear-gradient(135deg,#1e2b31,#162025 68%) !important; }
  html body.route-profile #desktop-my-data .profile-dashboard-viz { display:flex !important; min-height:255px !important; padding:27px 24px 21px !important; flex-direction:column !important; border:0 !important; border-left:1px solid #3f5860 !important; border-radius:0 !important; background:linear-gradient(160deg,#223037,#182126) !important; }
  html body.route-profile #desktop-my-data .profile-archive { display:grid !important; grid-template-columns:260px minmax(0,1fr) !important; column-gap:34px !important; margin-top:32px !important; padding:0 !important; }
  html body.route-profile #desktop-my-data .profile-archive > .profile-section-head { grid-column:1 !important; display:block !important; padding:2px 0 !important; }
  html body.route-profile #desktop-my-data .profile-archive-summary { grid-column:2 !important; grid-row:1 !important; margin:0 !important; border:1px solid #2a3435 !important; border-radius:12px !important; overflow:hidden !important; }
  html body.route-profile #desktop-my-data .profile-archive-tabs,html body.route-profile #desktop-my-data .profile-archive-sync,html body.route-profile #desktop-my-data .profile-archive-list { grid-column:2 !important; }
}
@media (min-width:981px) {
  html body.route-profile #desktop-my-data .profile-page-head.profile-home-hero { position:relative; display:grid !important; grid-template-columns:minmax(0,1fr) minmax(270px,.62fr) auto !important; align-items:center !important; min-height:178px !important; margin-bottom:24px !important; padding:28px 30px !important; border:1px solid #3d5861 !important; border-radius:20px !important; overflow:hidden; background:radial-gradient(circle at 92% 3%,rgba(60,218,197,.16),transparent 31%),radial-gradient(circle at 6% 100%,rgba(53,214,197,.10),transparent 30%),linear-gradient(120deg,#1d2b31,#141d22 66%) !important; }
  html body.route-profile #desktop-my-data .profile-home-hero::before { content:""; position:absolute; width:320px; height:320px; right:-138px; bottom:-205px; border:1px solid rgba(86,224,205,.16); border-radius:50%; box-shadow:0 0 0 30px rgba(86,224,205,.035),0 0 0 60px rgba(86,224,205,.018); pointer-events:none; }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-person,html body.route-profile #desktop-my-data .profile-home-hero .profile-home-note,html body.route-profile #desktop-my-data .profile-home-hero .profile-head-actions { position:relative; z-index:1; }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-person { gap:18px; }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-person-avatar { position:relative; width:78px !important; height:78px !important; border:1px solid #3f8580 !important; border-radius:25px !important; background:linear-gradient(145deg,#19312f,#132022) !important; color:#75ecde !important; box-shadow:inset 0 0 0 5px rgba(45,173,159,.06),0 13px 26px rgba(0,0,0,.2); }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-person-avatar { display:grid; place-items:center; width:70px !important; height:70px !important; border-radius:22px !important; background:linear-gradient(145deg,#19312f,#132022) !important; }
  html body.route-profile #desktop-my-data .profile-brand-mark { position:relative; display:block; width:29px; height:31px; border-left:4px solid #74eadc; border-bottom:4px solid #74eadc; border-radius:0 0 0 11px; transform:skewY(-10deg); }
  html body.route-profile #desktop-my-data .profile-brand-mark::before { content:""; position:absolute; width:15px; height:4px; right:-1px; top:7px; border-radius:3px; background:#74eadc; transform:rotate(-25deg); transform-origin:left center; }
  html body.route-profile #desktop-my-data .profile-brand-mark::after { content:""; position:absolute; width:7px; height:7px; right:-5px; top:1px; border:2px solid #74eadc; border-radius:50%; background:#153a35; box-shadow:0 0 0 4px rgba(116,234,220,.08); }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-person h1 { margin-top:7px !important; font-size:30px !important; letter-spacing:-.045em !important; }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-person p { color:#9eafad !important; }
  html body.route-profile #desktop-my-data .profile-home-note { display:flex; max-width:275px; padding-left:28px; flex-direction:column; border-left:1px solid rgba(167,193,196,.18); }
  html body.route-profile #desktop-my-data .profile-home-note > span { color:#55daca; font-size:10px; font-weight:750; letter-spacing:.14em; }
  html body.route-profile #desktop-my-data .profile-home-note strong { margin-top:9px; color:#dff4f0; font-size:16px; font-weight:650; line-height:1.55; letter-spacing:-.02em; }
  html body.route-profile #desktop-my-data .profile-home-note small { margin-top:9px; color:#9aabaa; font-size:10px; line-height:1.6; }
  html body.route-profile #desktop-my-data .profile-home-hero .profile-head-actions { align-self:start; }
}
@media (max-width:980px) { body.route-profile #desktop-my-data .profile-home-hero { background:linear-gradient(135deg,#152123,#101619) !important; } .profile-home-note { display:none; } .profile-person-avatar > i { display:none; } }
html body.route-profile #desktop-my-data.profile-library-focused .profile-archive {
  display:none !important;
}

/* Keep the pet module in the same charcoal-blue family instead of a second green surface. */
body.route-profile #desktop-my-data .pixel-cat-care { border-color:#3c5960; background:#18262a; }
body.route-profile #desktop-my-data .pixel-cat-care-avatar { background:#111b1f; }
body.route-profile #desktop-my-data .pixel-cat-care-status p,body.route-profile #desktop-my-data .pixel-cat-food-count span,body.route-profile #desktop-my-data .pixel-cat-food-count small { color:#a9bab9; }
body.route-profile #desktop-my-data .pixel-cat-care-status em { background:#264b4a; color:#a8eee4; }
body.route-profile #desktop-my-data .pixel-cat-choice { background:#1a252a; color:#c1d0cf; }
body.route-profile #desktop-my-data .pixel-cat-choice.is-selected { background:#203b3d; color:#9df0e5; }

/* Profile is a doorway, not a second archive/library page. */
body.route-profile #desktop-my-data.profile-home-overview .profile-archive-tabs,
body.route-profile #desktop-my-data.profile-home-overview .profile-archive-sync,
body.route-profile #desktop-my-data.profile-home-overview .profile-archive-list,
body.route-profile #desktop-my-data.profile-home-overview .profile-knowledge .library-grid,
body.route-profile #desktop-my-data.profile-home-overview .profile-knowledge .profile-library-primary,
body.route-profile #desktop-my-data.profile-home-overview .profile-knowledge .profile-library-actions > a:not(.profile-section-link) { display:none !important; }
body.route-profile #desktop-my-data.profile-home-overview .profile-archive { margin-bottom:0; }
body.route-profile #desktop-my-data.profile-home-overview .profile-knowledge { margin-top:24px; }

/* Standalone archive pages: one section = one page */
body.route-archive #desktop-my-data.profile-archive-focused .profile-knowledge,
body.route-archive #desktop-my-data.profile-archive-focused .profile-account-row,
body.route-archive #desktop-my-data.profile-archive-focused #pixel-cat-profile-slot { display:none !important; }
body.route-archive #desktop-my-data.profile-archive-focused .profile-archive-list {
  max-height: none !important;
  min-height: 52vh !important;
}
body.route-archive #desktop-my-data .profile-archive-jump {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid #292930;
}
body.route-archive #desktop-my-data .profile-archive-jump a {
  padding: 8px 12px;
  border: 1px solid #303038;
  border-radius: 6px;
  color: #b0adb6;
  font-size: 12px;
  font-weight: 650;
  text-decoration: none;
}
body.route-archive #desktop-my-data .profile-archive-jump a.active {
  border-color: #2f8f84;
  background: #152826;
  color: #35d6c5;
}
body.desktop-light.route-archive #desktop-my-data .profile-archive-jump { border-color: #d6dee6; }
body.desktop-light.route-archive #desktop-my-data .profile-archive-jump a { border-color: #d0d9e0; color: #51606a; }
body.desktop-light.route-archive #desktop-my-data .profile-archive-jump a.active { border-color: #178f83; background: #e8f7f4; color: #178f83; }

/* Each archive category is a standalone page. Keep only its own actions here,
   rather than repeating a tab strip that suggests in-place switching. */
body.route-archive #desktop-my-data .profile-archive-page-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
body.route-archive #desktop-my-data .profile-archive-page-actions a,
body.route-archive #desktop-my-data .profile-archive-page-actions button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:0 12px;
  border:1px solid #327b72;
  border-radius:4px;
  background:transparent;
  color:#35d6c5;
  font-family:inherit;
  font-size:11px;
  font-weight:600;
  line-height:1;
  text-decoration:none;
  cursor:pointer;
}
body.route-archive #desktop-my-data .profile-archive-page-actions button {
  border-color:#303038;
  color:#aaa6b1;
}
body.route-archive #desktop-my-data .profile-archive-page-actions a:hover {
  border-color:#35d6c5;
  background:rgba(53,214,197,.06);
}
@media (max-width:620px) {
  body.route-archive #desktop-my-data .profile-archive-page-actions { justify-content:flex-start; }
}

/* The cat is a deliberate square dashboard entry; its richer controls live in Cat Room. */
body.route-profile #desktop-my-data .pixel-cat-settings-card { display:grid; grid-template-columns:118px minmax(0,1fr) auto; align-items:center; gap:18px; min-height:126px; padding:16px 18px; }
body.route-profile #desktop-my-data .pixel-cat-settings-copy { display:contents; }
body.route-profile #desktop-my-data .pixel-cat-settings-icon { display:grid; width:96px; height:96px; place-items:center; border:1px solid rgba(92,228,211,.36); border-radius:16px; background:linear-gradient(145deg,#13252a,#0c151a); }
body.route-profile #desktop-my-data .pixel-cat-settings-icon [data-pixel-cat-art] { position:relative; z-index:1; display:grid !important; grid-template-columns:repeat(var(--pixel-columns,24),1fr); grid-template-rows:repeat(var(--pixel-rows,20),1fr); width:76px; height:70px; }
body.route-profile #desktop-my-data .pixel-cat-settings-icon [data-pixel-cat-art] > .pixel-cell { display:block !important; min-width:0; min-height:0; }
body.route-profile #desktop-my-data .pixel-cat-settings-copy > div { min-width:0; }
body.route-profile #desktop-my-data .pixel-cat-settings-copy > div > span { display:block; margin-top:6px; color:#9eafad; font-size:11px; }
body.route-profile #desktop-my-data .pixel-cat-progress-note { display:inline-flex; margin-top:9px; padding:4px 7px; border:1px solid rgba(92,228,211,.18); border-radius:3px; color:#9cc9c2; background:rgba(51,128,118,.12); font-size:10px; line-height:1.3; }
body.route-profile #desktop-my-data .pixel-cat-care { display:flex; grid-column:2 / 4; align-items:center; gap:12px; min-width:0; padding:0; border:0; background:transparent; }
body.route-profile #desktop-my-data .pixel-cat-care-avatar,
body.route-profile #desktop-my-data .pixel-cat-choices { display:none; }
body.route-profile #desktop-my-data .pixel-cat-care-status { flex:1; min-width:0; }
body.route-profile #desktop-my-data .pixel-cat-food-count { min-width:150px; }
body.route-profile #desktop-my-data .pixel-cat-care button { min-height:34px; white-space:nowrap; }
body.route-profile #desktop-my-data .pixel-cat-switch { grid-column:3; grid-row:1; }
@media (max-width:720px) { body.route-profile #desktop-my-data .pixel-cat-settings-card { grid-template-columns:88px minmax(0,1fr); } body.route-profile #desktop-my-data .pixel-cat-settings-icon { width:80px; height:80px; } body.route-profile #desktop-my-data .pixel-cat-care { grid-column:1 / -1; flex-wrap:wrap; } body.route-profile #desktop-my-data .pixel-cat-switch { grid-column:2; grid-row:1; justify-self:end; } }

/* Growth points: visible at a glance without competing with the profile name. */
body.route-profile #desktop-my-data .profile-name-row { display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
body.route-profile #desktop-my-data .profile-name-row h1 { margin:0; }
body.route-profile #desktop-my-data .profile-level-badge { display:inline-flex; align-items:center; gap:5px; min-height:24px; padding:0 8px; border:1px solid rgba(91,231,212,.32); border-radius:999px; background:rgba(40,182,164,.11); color:#a9f7eb; font-size:10px; font-weight:700; letter-spacing:.01em; text-decoration:none; }
body.route-profile #desktop-my-data .profile-level-badge i { display:grid; width:15px; height:15px; place-items:center; border-radius:50%; background:#43dcca; color:#06241f; font-size:10px; font-style:normal; }
body.route-profile #desktop-my-data .profile-level-badge b { margin-left:2px; color:#e7fffa; font-size:10px; font-variant-numeric:tabular-nums; }
body.route-profile #desktop-my-data .profile-level-badge:hover { border-color:#76f7e4; background:rgba(48,208,188,.2); }
body.route-profile #desktop-my-data .profile-level-badge.is-max { border-color:rgba(255,199,81,.58); background:rgba(255,191,79,.12); color:#ffe0a0; }
body.route-profile #desktop-my-data .profile-level-badge.is-max i { background:#ffbf4f; color:#5a3700; box-shadow:0 0 12px rgba(255,191,79,.36); }
body.route-profile #desktop-my-data .profile-points-pill { display:inline-flex; align-items:center; gap:7px; min-height:38px; padding:0 11px; border:1px solid rgba(91,231,212,.34); border-radius:10px; background:linear-gradient(135deg,rgba(37,196,178,.16),rgba(75,144,235,.12)); color:#dffefa; font-size:11px; font-weight:700; text-decoration:none; }
body.route-profile #desktop-my-data .profile-points-pill i { display:grid; width:20px; height:20px; place-items:center; border-radius:7px; background:#53e1ce; color:#06251f; font-size:13px; font-style:normal; }
body.route-profile #desktop-my-data .profile-points-pill b { margin-left:3px; color:#78eee0; font-size:10px; font-weight:650; }
body.route-profile #desktop-my-data .profile-points-pill:hover { border-color:#74f7e4; transform:translateY(-1px); }
@media (max-width:620px) { body.route-profile #desktop-my-data .profile-level-badge b { display:none; } body.route-profile #desktop-my-data .profile-points-pill span { display:none; } body.route-profile #desktop-my-data .profile-points-pill { min-width:38px; padding:0 8px; } body.route-profile #desktop-my-data .profile-points-pill b { display:none; } }

/* Header actions must retain a stable icon/text layout at every width. */
body.route-profile #desktop-my-data .profile-head-actions {
  align-items:center;
  flex-wrap:nowrap;
}

body.route-profile #desktop-my-data .profile-beta-badge {
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:22px;
  padding:0 7px;
  border:1px solid rgba(255,194,87,.48);
  border-radius:4px;
  background:rgba(255,190,70,.12);
  color:#f4ca75;
  font-size:10px;
  font-style:normal;
  font-weight:700;
  white-space:nowrap;
}
body.route-profile #desktop-my-data .profile-beta-badge span { font:800 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.07em; }
body.route-profile #desktop-my-data .profile-beta-tools { margin-top:24px; padding:22px; border:1px solid #33494c; border-radius:10px; background:#121a1e; }
body.route-profile #desktop-my-data .profile-beta-tools > header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
body.route-profile #desktop-my-data .profile-beta-tools header span { display:block; color:#62d9c9; font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; }
body.route-profile #desktop-my-data .profile-beta-tools h2 { margin:8px 0 0; color:#edf7f5; font-size:18px; }
body.route-profile #desktop-my-data .profile-beta-tools header p { margin:7px 0 0; color:#95a9a8; font-size:12px; }
body.route-profile #desktop-my-data .profile-beta-tools > header > b { max-width:230px; padding:7px 9px; border:1px solid #365758; border-radius:4px; background:#162526; color:#a9d8d1; font-size:10px; font-weight:600; line-height:1.45; text-align:right; }
body.route-profile #desktop-my-data .profile-beta-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1.2fr); gap:14px; }
body.route-profile #desktop-my-data .profile-invite-card,body.route-profile #desktop-my-data .profile-feedback-card { min-width:0; padding:17px; border:1px solid #2f4547; border-radius:7px; background:#0e1518; }
body.route-profile #desktop-my-data .profile-invite-card > span,body.route-profile #desktop-my-data .profile-feedback-card > span { display:block; color:#6f8788; font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.1em; }
body.route-profile #desktop-my-data .profile-invite-card strong { display:block; margin-top:10px; color:#e6f3f0; font-size:16px; }
body.route-profile #desktop-my-data .profile-invite-card p { min-height:20px; margin:9px 0 15px; color:#79e4d6; font:700 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; word-break:break-all; }
body.route-profile #desktop-my-data .profile-invite-card button,body.route-profile #desktop-my-data .profile-feedback-card footer button { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:0 11px; border:1px solid #37b6a7; border-radius:4px; background:#1c7168; color:#f0fffd; font:700 11px/1 inherit; cursor:pointer; }
body.route-profile #desktop-my-data .profile-invite-card button:disabled { border-color:#354143; background:#242d2e; color:#7f8c8b; cursor:default; }
body.route-profile #desktop-my-data .profile-invite-card small { display:block; margin-top:10px; color:#879997; font-size:10px; line-height:1.5; }
body.route-profile #desktop-my-data .profile-invite-redeem-card { display:flex; flex-direction:column; }
body.route-profile #desktop-my-data .profile-invite-redeem-card label { display:block; margin-top:10px; color:#9badab; font-size:10px; }
body.route-profile #desktop-my-data .profile-invite-redeem-card input { display:block; box-sizing:border-box; width:100%; height:34px; margin-top:7px; padding:0 8px; border:1px solid #34484a; border-radius:4px; background:#151e21; color:#e4efed; font:700 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }
body.route-profile #desktop-my-data .profile-invite-redeem-card footer { display:flex; align-items:center; justify-content:space-between; gap:9px; margin-top:10px; }
body.route-profile #desktop-my-data .profile-invite-redeem-card output { min-width:0; color:#8fa8a5; font-size:10px; line-height:1.4; }
body.route-profile #desktop-my-data .profile-invite-redeem-card button { flex:0 0 auto; }
body.route-profile #desktop-my-data .profile-feedback-card { display:grid; grid-template-columns:132px minmax(0,1fr); column-gap:12px; }
body.route-profile #desktop-my-data .profile-feedback-card > span { grid-column:1 / -1; margin-bottom:10px; }
body.route-profile #desktop-my-data .profile-feedback-card label { color:#9badab; font-size:10px; }
body.route-profile #desktop-my-data .profile-feedback-card select { display:block; width:100%; height:34px; margin-top:7px; padding:0 7px; border:1px solid #34484a; border-radius:4px; background:#151e21; color:#d9e8e5; font:inherit; font-size:11px; }
body.route-profile #desktop-my-data .profile-feedback-card textarea { width:100%; min-height:70px; padding:9px; border:1px solid #34484a; border-radius:4px; resize:vertical; background:#151e21; color:#e4efed; font:inherit; font-size:11px; line-height:1.55; }
body.route-profile #desktop-my-data .profile-feedback-card footer { grid-column:2; display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:8px; }
body.route-profile #desktop-my-data .profile-feedback-card output { min-width:0; color:#8fa8a5; font-size:10px; line-height:1.4; }
body.desktop-light.route-profile #desktop-my-data .profile-beta-tools { border-color:#cfdee0; background:#fdfefe; }
body.desktop-light.route-profile #desktop-my-data .profile-beta-tools h2 { color:#253434; }
body.desktop-light.route-profile #desktop-my-data .profile-beta-tools header p,body.desktop-light.route-profile #desktop-my-data .profile-invite-card small { color:#647876; }
body.desktop-light.route-profile #desktop-my-data .profile-beta-tools > header > b { border-color:#c7dfdc; background:#eefaf8; color:#2d756d; }
body.desktop-light.route-profile #desktop-my-data .profile-invite-card,body.desktop-light.route-profile #desktop-my-data .profile-feedback-card { border-color:#d6e4e4; background:#f8fbfb; }
body.desktop-light.route-profile #desktop-my-data .profile-invite-card strong { color:#263937; }
body.desktop-light.route-profile #desktop-my-data .profile-invite-redeem-card input,body.desktop-light.route-profile #desktop-my-data .profile-feedback-card select,body.desktop-light.route-profile #desktop-my-data .profile-feedback-card textarea { border-color:#cfdddd; background:#fff; color:#293937; }
@media (max-width:980px) { body.route-profile #desktop-my-data .profile-beta-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } body.route-profile #desktop-my-data .profile-feedback-card { grid-column:1 / -1; } }
@media (max-width:720px) { body.route-profile #desktop-my-data .profile-beta-tools { padding:17px; } body.route-profile #desktop-my-data .profile-beta-tools > header { display:block; } body.route-profile #desktop-my-data .profile-beta-tools > header > b { display:inline-block; max-width:none; margin-top:12px; text-align:left; } body.route-profile #desktop-my-data .profile-beta-grid { grid-template-columns:1fr; } body.route-profile #desktop-my-data .profile-feedback-card { grid-column:auto; grid-template-columns:1fr; } body.route-profile #desktop-my-data .profile-feedback-card footer { grid-column:1; } }
body.route-profile #desktop-my-data .profile-points-pill {
  flex:0 0 auto;
  min-width:154px;
  justify-content:flex-start;
  white-space:nowrap;
  line-height:1;
}
body.route-profile #desktop-my-data .profile-points-pill i {
  flex:0 0 20px;
  margin:0;
  background:#53e1ce;
  background-color:#53e1ce;
}
body.route-profile #desktop-my-data .profile-points-pill span,
body.route-profile #desktop-my-data .profile-points-pill b {
  display:block;
  flex:0 0 auto;
  white-space:nowrap;
}
body.route-profile #desktop-my-data .profile-settings-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  gap:7px;
  min-width:78px;
  white-space:nowrap;
  line-height:1 !important;
}
body.route-profile #desktop-my-data .profile-settings-button i {
  display:grid;
  width:17px;
  height:17px;
  place-items:center;
  color:#8deee1;
  font-size:17px;
}
body.route-profile #desktop-my-data .profile-settings-button span {
  display:block;
  white-space:nowrap;
}
body.route-profile #desktop-my-data .profile-version-preview { display:grid; gap:4px; min-width:154px; padding:7px 9px; border:1px solid rgba(77,205,188,.42); border-radius:5px; background:rgba(22,86,80,.18); color:#d8f4ef; }
body.route-profile #desktop-my-data .profile-version-preview > span { color:#83cfc4; font-size:9px; font-weight:800; letter-spacing:.06em; }
body.route-profile #desktop-my-data .profile-version-preview select { width:100%; min-height:27px; border:1px solid rgba(93,211,193,.36); border-radius:3px; background:#142725; color:#ecfaf7; font:600 11px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; cursor:pointer; }
body.route-profile #desktop-my-data .profile-preview-empty { margin:30px 0 20px; color:#aeb9c3; font-size:13px; line-height:1.7; }
@media (max-width:720px) {
  body.route-profile #desktop-my-data .profile-head-actions { width:auto !important; }
  body.route-profile #desktop-my-data .profile-points-pill { min-width:42px; padding:0 10px !important; }
  body.route-profile #desktop-my-data .profile-points-pill span,
  body.route-profile #desktop-my-data .profile-points-pill b,
  body.route-profile #desktop-my-data .profile-settings-button span { display:none; }
  body.route-profile #desktop-my-data .profile-settings-button { min-width:42px; padding:0 !important; }
  body.route-profile #desktop-my-data .profile-version-preview { min-width:132px; }
}

/* Pet controls: keep the companion identity on the left, then balance the
   status, inventory, and actions as separate functional groups. */
@media (min-width:961px) {
  body.route-profile #desktop-my-data .pixel-cat-settings-card {
    min-height:142px;
    grid-template-columns:118px minmax(0,1fr) auto;
    gap:10px 22px;
    padding:18px 22px;
  }

  body.route-profile #desktop-my-data .pixel-cat-care {
    display:flex;
    grid-column:2 / -1;
    grid-row:2;
    align-items:center;
    gap:12px;
    min-height:0;
    padding:0;
  }

  body.route-profile #desktop-my-data .pixel-cat-care-status {
    align-self:center;
  }

  body.route-profile #desktop-my-data .pixel-cat-care-status > div { gap:9px; }
  body.route-profile #desktop-my-data .pixel-cat-care-status p { max-width:480px; margin-top:8px; }

  body.route-profile #desktop-my-data .pixel-cat-food-count,
  body.route-profile #desktop-my-data .pixel-cat-care button { display:none; }
}

body.route-profile #desktop-my-data .profile-feature-note { display:inline-flex; margin-top:10px; padding:5px 8px; border-left:2px solid #48cfc0; color:#8ca5a2; background:rgba(72,207,192,.06); font-size:11px; line-height:1.4; }

/* Public beta: a compact action area rather than three unrelated dark cards. */
body.route-profile #desktop-my-data .profile-beta-tools { position:relative; margin-top:24px; padding:25px; border:1px solid #345157; border-radius:18px; overflow:hidden; background:radial-gradient(circle at 92% 0%,rgba(67,208,190,.11),transparent 29%),linear-gradient(125deg,#142125,#10171a); }
body.route-profile #desktop-my-data .profile-beta-tools::after { content:""; position:absolute; width:250px; height:250px; right:-145px; bottom:-180px; border:1px solid rgba(96,224,211,.16); border-radius:50%; box-shadow:0 0 0 30px rgba(96,224,211,.025); pointer-events:none; }
body.route-profile #desktop-my-data .profile-beta-tools > header { position:relative; z-index:1; align-items:center; margin-bottom:20px; }
body.route-profile #desktop-my-data .profile-beta-tools h2 { font-size:21px; letter-spacing:-.035em; }
body.route-profile #desktop-my-data .profile-beta-tools > header > b { max-width:252px; padding:8px 11px; border-color:#3b706d; border-radius:999px; background:rgba(36,105,98,.22); color:#b1e5de; text-align:center; }
body.route-profile #desktop-my-data .profile-beta-grid { position:relative; z-index:1; gap:12px; }
body.route-profile #desktop-my-data .profile-invite-card,body.route-profile #desktop-my-data .profile-feedback-card { padding:18px; border-color:rgba(82,124,126,.52); border-radius:12px; background:rgba(8,15,17,.57); }
body.route-profile #desktop-my-data .profile-beta-card-head { display:flex; align-items:center; justify-content:space-between; }
body.route-profile #desktop-my-data .profile-beta-card-head span { display:block; color:#789594; font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.11em; }
body.route-profile #desktop-my-data .profile-beta-card-head i { display:grid; width:27px; height:27px; place-items:center; border:1px solid rgba(98,213,197,.24); border-radius:8px; color:#73dfd0; background:rgba(64,193,177,.09); font-size:14px; }
body.route-profile #desktop-my-data .profile-invite-card strong,body.route-profile #desktop-my-data .profile-feedback-card strong { margin-top:13px; font-size:16px; letter-spacing:-.025em; }
body.route-profile #desktop-my-data .profile-invite-card button,body.route-profile #desktop-my-data .profile-feedback-card footer button { min-height:36px; border-radius:7px; transition:.18s ease; }
body.route-profile #desktop-my-data .profile-invite-card button:hover,body.route-profile #desktop-my-data .profile-feedback-card footer button:hover { border-color:#70eadb; background:#229487; transform:translateY(-1px); }
body.route-profile #desktop-my-data .profile-invite-redeem-card { display:flex; flex-direction:column; }
body.route-profile #desktop-my-data .profile-beta-field { display:block; margin-top:13px; color:#9badab; font-size:10px; }
body.route-profile #desktop-my-data .profile-beta-field > span { display:block; margin-bottom:7px; }
body.route-profile #desktop-my-data .profile-invite-redeem-card input { width:100%; height:36px; padding:0 10px; border:1px solid #34484a; border-radius:7px; background:#151e21; color:#e4efed; font:inherit; font-size:11px; }
body.route-profile #desktop-my-data .profile-invite-redeem-card footer { display:flex; align-items:center; justify-content:space-between; gap:9px; margin-top:12px; }
body.route-profile #desktop-my-data .profile-invite-redeem-card output { color:#8fa8a5; font-size:10px; line-height:1.4; }
body.route-profile #desktop-my-data .profile-feedback-card { display:flex; flex-direction:column; }
body.route-profile #desktop-my-data .profile-feedback-fields { display:grid; grid-template-columns:126px minmax(0,1fr); gap:11px; margin-top:13px; }
body.route-profile #desktop-my-data .profile-feedback-card footer { margin-top:10px; }
@media (max-width:720px) { body.route-profile #desktop-my-data .profile-beta-tools { padding:18px; } body.route-profile #desktop-my-data .profile-beta-tools > header > b { text-align:left; } body.route-profile #desktop-my-data .profile-feedback-fields { grid-template-columns:1fr; } }

/* Avatar upload is available directly from the personal workspace header. */
html body.route-profile #desktop-my-data .profile-avatar-upload { overflow:hidden; cursor:pointer; }
html body.route-profile #desktop-my-data .profile-avatar-upload input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
html body.route-profile #desktop-my-data .profile-avatar-upload::after { content:'更换'; position:absolute; inset:0; display:grid; place-items:center; border-radius:inherit; background:rgba(7,20,22,.68); color:#e7fffb; font-size:11px; font-weight:800; letter-spacing:.08em; opacity:0; transition:opacity .16s ease; }
html body.route-profile #desktop-my-data .profile-avatar-upload:hover::after,html body.route-profile #desktop-my-data .profile-avatar-upload:focus-within::after,html body.route-profile #desktop-my-data .profile-avatar-upload.is-uploading::after { opacity:1; }
html body.route-profile #desktop-my-data .profile-avatar-upload.is-uploading::after { content:'上传中'; cursor:wait; }
html body.route-profile #desktop-my-data .profile-membership-badge { display:inline-flex; align-items:center; gap:5px; max-width:min(100%,360px); min-height:26px; padding:0 10px; border:1px solid #2f9d8f; border-radius:4px; color:#8ef3e4; background:linear-gradient(135deg,rgba(38,163,148,.22),rgba(20,90,82,.18)); font-size:10px; font-style:normal; font-weight:850; letter-spacing:.04em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
html body.route-profile #desktop-my-data .profile-membership-badge.is-pro { border-color:#2f9d8f; color:#8ef3e4; background:linear-gradient(135deg,rgba(38,163,148,.22),rgba(20,90,82,.18)); }
html body.route-profile #desktop-my-data .profile-membership-badge.is-ultra { border-color:#c9a24a; color:#f6d78a; background:linear-gradient(135deg,rgba(189,132,35,.24),rgba(90,62,16,.18)); }
html body.route-profile #desktop-my-data .profile-membership-badge[hidden] { display:none !important; }
html body.route-profile #desktop-my-data .profile-membership-remain { margin:8px 0 0; color:#8ef3e4; font-size:13px; font-weight:700; letter-spacing:.02em; }
html body.route-profile #desktop-my-data .profile-membership-remain[hidden] { display:none !important; }
body.desktop-light.route-profile #desktop-my-data .profile-membership-remain { color:#14685f; }
html body.desktop-light.route-profile #desktop-my-data .profile-membership-badge,
html body.desktop-light.route-profile #desktop-my-data .profile-membership-badge.is-pro {
  border-color:rgba(15,154,140,.42);
  color:#0b6f65;
  background:linear-gradient(135deg,rgba(15,154,140,.16),rgba(15,154,140,.08));
}
html body.desktop-light.route-profile #desktop-my-data .profile-membership-badge.is-ultra {
  border-color:rgba(180,130,40,.42);
  color:#7a5610;
  background:linear-gradient(135deg,rgba(255,220,140,.55),rgba(255,236,180,.35));
}
html body.desktop-light.route-profile #desktop-my-data .profile-beta-badge {
  border-color:rgba(180,130,40,.4);
  background:rgba(255,236,180,.55);
  color:#7a5610;
}
html body.desktop-light.route-profile #desktop-my-data .profile-level-badge {
  border-color:rgba(15,154,140,.34);
  background:rgba(15,154,140,.1);
  color:#0d6d63;
}
html body.desktop-light.route-profile #desktop-my-data .profile-level-badge b { color:#145f57; }
html body.desktop-light.route-profile #desktop-my-data .profile-points-pill {
  border-color:rgba(15,154,140,.34);
  background:linear-gradient(135deg,rgba(15,154,140,.12),rgba(15,154,140,.06));
  color:#145f57;
}
html body.desktop-light.route-profile #desktop-my-data .profile-points-pill b { color:#178278; }

/* Native personal-details form: establish a calm desktop reading rhythm while
   retaining the React form hierarchy and all of its original event handlers. */
@media (min-width:900px) {
  body.route-personal-profile #app .min-h-screen,
  body.route-settings #app .min-h-screen {
    width:min(980px,calc(100% - 48px)) !important;
    padding:24px 0 56px !important;
  }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col,
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px !important;
    padding:0 !important;
  }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > div,
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > div {
    min-width:0;
    margin:0 !important;
    padding:20px !important;
    border:1px solid rgba(76,111,116,.38) !important;
    border-radius:10px !important;
    background:linear-gradient(145deg,rgba(17,28,32,.98),rgba(12,19,23,.98)) !important;
    box-shadow:0 10px 25px rgba(0,0,0,.10) !important;
  }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(1),
  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(2),
  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(5),
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(1),
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(2),
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(5) { grid-column:1 / -1; }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(2) > .flex.flex-col,
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(2) > .flex.flex-col {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px !important;
  }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(1),
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > div:nth-child(1) {
    padding:18px 20px !important;
    border-color:rgba(71,199,184,.34) !important;
    background:linear-gradient(105deg,rgba(19,46,49,.98),rgba(13,26,31,.98)) !important;
  }

  body.route-personal-profile #app .min-h-screen :is(input,select,taro-input-core,taro-picker-core),
  body.route-settings #app .min-h-screen :is(input,select,taro-input-core,taro-picker-core) {
    min-height:48px !important;
    border-color:rgba(84,118,123,.36) !important;
    background:#0a1115 !important;
  }

  body.route-personal-profile #app .min-h-screen [style*="background: rgba(255, 255, 255"],
  body.route-settings #app .min-h-screen [style*="background: rgba(255, 255, 255"] {
    background:#0d1519 !important;
    border-color:rgba(84,118,123,.36) !important;
  }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > button,
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > button {
    grid-column:1 / -1;
    min-height:54px !important;
    margin-top:4px;
    border:1px solid rgba(122,237,220,.34) !important;
    border-radius:9px !important;
    background:linear-gradient(105deg,#35cfc0,#4ca8dc) !important;
    box-shadow:0 10px 24px rgba(41,190,178,.16) !important;
  }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > button > div,
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > button > div { padding:14px 0 !important; }

  body.route-personal-profile #app .min-h-screen > .px-4.pt-2.flex.flex-col > button:hover,
  body.route-settings #app .min-h-screen > .px-4.pt-2.flex.flex-col > button:hover { filter:brightness(1.07); transform:translateY(-1px); }
}
